From e834dedc3965620e392d953f91ea119591f41957 Mon Sep 17 00:00:00 2001 From: James Watson Date: Tue, 22 Aug 2017 14:26:07 +0100 Subject: [PATCH] update to 1.4.0 --- RELEASE.md | 4 +- driver/media-driver.jar | Bin 843343 -> 1080401 bytes driver/start-media-driver.bat | 4 +- .../BufferBuilderTests.cs | 20 +- .../ClientConductorTest.cs | 50 +- src/Adaptive.Aeron.Tests/DriverProxyTests.cs | 3 +- src/Adaptive.Aeron.Tests/ImageTest.cs | 41 +- .../LogBuffer/TermAppenderTest.cs | 28 +- src/Adaptive.Aeron.Tests/PublicationTest.cs | 10 +- src/Adaptive.Aeron.sln.DotSettings | 4 +- src/Adaptive.Aeron/Adaptive.Aeron.csproj | 11 +- src/Adaptive.Aeron/Aeron.cs | 221 +++++--- src/Adaptive.Aeron/BufferBuilder.cs | 14 +- src/Adaptive.Aeron/ChannelUri.cs | 310 +++++++++++ src/Adaptive.Aeron/ChannelUriStringBuilder.cs | 488 ++++++++++++++++++ src/Adaptive.Aeron/ClientConductor.cs | 355 +++++++------ src/Adaptive.Aeron/CncFileDescriptor.cs | 82 +-- .../Command/DestinationMessageFlyweight.cs | 22 + .../Command/ImageBuffersReadyFlyweight.cs | 135 ++--- .../PublicationBuffersReadyFlyweight.cs | 57 +- .../Command/RemoveMessageFlyweight.cs | 3 + .../Command/SubscriptionMessageFlyweight.cs | 2 + .../ControlledFragmentAssembler.cs | 19 +- ...tenerAdapter.cs => DriverEventsAdapter.cs} | 57 +- src/Adaptive.Aeron/DriverProxy.cs | 6 +- src/Adaptive.Aeron/EndOfStreamHandler.cs | 8 + .../ConductorServiceTimeoutException.cs | 2 +- .../Exceptions/DriverTimeoutException.cs | 2 +- src/Adaptive.Aeron/ExclusivePublication.cs | 192 +++++-- src/Adaptive.Aeron/FragmentAssembler.cs | 2 +- ...erListener.cs => IDriverEventsListener.cs} | 31 +- src/Adaptive.Aeron/Image.cs | 55 +- .../ImageControlledFragmentHandler.cs | 17 +- src/Adaptive.Aeron/ImageFragmentAssembler.cs | 2 +- src/Adaptive.Aeron/LogBuffer/BlockHandler.cs | 31 ++ ...andler.cs => ControlledFragmentHandler.cs} | 22 +- .../ControlledFragmentHandlerAction.cs | 2 - .../LogBuffer/ExclusiveTermAppender.cs | 90 ++-- .../LogBuffer/FragmentHandler.cs | 1 - .../LogBuffer/FrameDescriptor.cs | 32 +- src/Adaptive.Aeron/LogBuffer/HeaderWriter.cs | 1 - src/Adaptive.Aeron/LogBuffer/IBlockHandler.cs | 37 -- .../LogBuffer/LogBufferDescriptor.cs | 129 +++-- src/Adaptive.Aeron/LogBuffer/TermAppender.cs | 67 +-- src/Adaptive.Aeron/LogBuffer/TermReader.cs | 3 +- .../Protocol/DataHeaderFlyweight.cs | 14 +- .../Protocol/HeaderFlyweight.cs | 31 +- .../Protocol/RttMeasurementFlyweight.cs | 3 +- src/Adaptive.Aeron/Publication.cs | 119 ++++- src/Adaptive.Aeron/Subscription.cs | 52 +- .../Concurrent/CountersManagerTest.cs | 87 +++- src/Adaptive.Agrona/Adaptive.Agrona.csproj | 1 + .../Collections/IntObjConsumer.cs | 2 +- .../Concurrent/AgentInvoker.cs | 90 +++- src/Adaptive.Agrona/Concurrent/AgentRunner.cs | 114 ++-- .../Concurrent/AgentTerminationException.cs | 8 + .../Concurrent/CompositeAgent.cs | 67 ++- src/Adaptive.Agrona/Concurrent/IAgent.cs | 10 +- .../Concurrent/Status/AtomicCounter.cs | 6 +- .../Concurrent/Status/CountersManager.cs | 195 ++++++- .../Concurrent/Status/CountersReader.cs | 69 ++- .../Concurrent/Status/UnsafeBufferPosition.cs | 8 +- src/Adaptive.Agrona/ErrorHandler.cs | 3 + 63 files changed, 2606 insertions(+), 945 deletions(-) create mode 100644 src/Adaptive.Aeron/ChannelUri.cs create mode 100644 src/Adaptive.Aeron/ChannelUriStringBuilder.cs rename src/Adaptive.Aeron/{DriverListenerAdapter.cs => DriverEventsAdapter.cs} (74%) create mode 100644 src/Adaptive.Aeron/EndOfStreamHandler.cs rename src/Adaptive.Aeron/{IDriverListener.cs => IDriverEventsListener.cs} (68%) create mode 100644 src/Adaptive.Aeron/LogBuffer/BlockHandler.cs rename src/Adaptive.Aeron/LogBuffer/{IControlledFragmentHandler.cs => ControlledFragmentHandler.cs} (55%) delete mode 100644 src/Adaptive.Aeron/LogBuffer/IBlockHandler.cs create mode 100644 src/Adaptive.Agrona/Concurrent/AgentTerminationException.cs diff --git a/RELEASE.md b/RELEASE.md index 533ed191..9a0222b1 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,4 +1,4 @@ #### Port Aeron.NET has been ported against Java version: -- Agrona: v0.9.6 (b6904e5) -- Aeron: v1.3.0 (baa52e0) +- Agrona: v0.9.7 (e3408d6) +- Aeron: v1.4.0 (cc48906) diff --git a/driver/media-driver.jar b/driver/media-driver.jar index b87fceac58702677ce15a75addb9a0cd6f79b438..507fc74f27d53656d772d7c75ca452b9675f3728 100644 GIT binary patch delta 630001 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 t37ed(G#w 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
m8_wEgqxT{ zy$-WwXJ#Q|Hu20a&Sz$wePLiDu5)-}s)NTx#J#v^DdUUH48-uT>u1~cUu^htF5SGp zX;0@Gprau%yr^G858R;yGuykRTNCnToJ#909aM{>n?6qSz8vQP)6ZI_gCa~EpBvwqLS2kHM z4)=y5j~m6x@to@I)mJ7EiU{t2)G3$DBjAX<0U%UNcK1JZ||JAz95DF>sX!?{aly;i5O^nm%zy}^pNw(gS>TSO;vNZRcTo&+9 zO-NXT+TmHvd1ZhEi-h3`q|%w!iM%GCZf{-nUo8T8BJ<-771JTb1%f+fI45jE8`aFd z0@!Z71qqFh<1@kwQRs1HR@cg{e^vJR`>OeP1e*4deose3e7ulOGlp4YOM=ibGh4u6 zodBR^#o%YD77uBpz+Eom!|phv6v!Fr2u*Q0%D8AA6qmnc*4>C|KIcLehv*mjvWo;f zfrbs4dgvG)!+}ZGODr3*A`{9fm4RLU0ca0~8htW_TH_z>|JK;Mle@)ukl+*UY-PID z$;C06xQj-=G4$+-nnuq%`0!~%Xpv;m*FZxtW{#e~7@i!B^UFD9W%agH(A;nf^U+Gs zACp&s+poy0&VLLa8`7S$cGU~raRz#2Z3~KIWympmFp*JW(XTMZW<&1g8HYV70M^1? zF^X?-R&6MZp}+s;QmWg<-&8A>E9AMUB&r3!E}B?zFA2lm+t!2lyQI&SmquV$Y8u+u06?cnuJXPQTNRrr@qNKBE=8-f&D2!V&ka{(|E^)hA!~dd zZGI-BFdv4gZ3XP9HM&ny_YXWER%571Fyx$*V7EBeKUF8D?qbOO9Sb5eZmd{Gt8<|VX>rOjod+TX~u^cd2`vD`tL%# z&asiaZDx%OJz};}MK*4zi97t=<3&81qiB`qg}q`KjY3Xk5{)#{!n{wAwzpTJ9z=wo zYn~SU@AWTk*s3 z+T+(}*t=TPmCIEL?&)@?>xq{?)+d~`1+-m9OSPKHA=wczVq0uyUPtzrOINMe-C|Z5 z7JNqXz2?qQn)Z8>ZGY*5jVcr_fM#AQK5*-lhoujchEj&$l8icO;A?V(X*+3cTsBPGxHDOB>nOXoaQjLk`f5@ULk4*x{4ale6*onVJFQHS`RU6gU%FqsWIHb4fl zbM8At4=K>IKnJk{N4PyYFB+eP1wx{K>=B9+?ZG}5T>-Wme^M!!xJadngQX3dhnp26--=P4)VSHBWtnxE6TuF}y+o zN-4h5xK2V;m4x{%Nj~tS%q`{POrjQ<$B929dEWYllSSUY^+6fSR6SCi{R*ETd=lD! z;dBvh(|HRvL`()&)urCD>6ThDNekrQS1-P@)7Z|wocAN4S7+P!d|ZloYta3xLCi#a(8%5 z#@=$)gt)Hgwe_f9<4REfm^rapvLfE>w08V;(-9rJA&k8#e=P9xFG4BgwctIHK)&1+ zI4=N*SSE?5w7C^`$DIhmxFv9pa-m+e?a#s}pr;lkUmO*`Bs9+!&A_Q(mOcM#{~ibJ zd&K)H7rSiuZ4wvN?Lr8Lr@nAQQ$%OO#{BG@{Jabg<7d1Qgua1=lCBAvp(Xf_jvlPQ zqmyQ2rNwUoJI~rin=H1Q*{sJ)>elKfd|Lo2O`mZ3O;Cn_M34YVhu%I@toYNE-M7>! zwIv<3rM63H`<7>9KfrJE461@mN>On03FOhu7!3y;fE%2^WT1J*>3N)5e+(*?eflRA z0s2}5?ldA~eO-5?h|eKCZu6Hb`7`Y15Qz`-hqv62HqP2d z#wYcP8s{g@%EW2PtSA!$IX0IVGt0%K6@(aw}Q4LXpwZK6~Sl?r{mu@ea zoBUb6XUUgA<-35YtFt1{6HUBAeF2f^H#pyGXTC$&Ck%H!=~DaItj^x~%NfqBSt$MQ zdEwRSR>y3P$~lTJwN4+uETwkGC!xW@CFtV@3nI`XX#UW$D+fHL_X;WIFQovsdC`Uu z<#vBW_g=A(dxXQdZq4a{P~s;RFFbo>hF!gCNf3@yw#r^h2w0_)ChR#5M;77@-_0KI z27RXWl}$J>DjMMR(gD?2nSs5SHx19Gr3`zR%B&$OB0?YO94~VqTKw4+7b#HBX+S*T z0zIAG45}Dc{P9sx*g`f}5_Le!V`^e6i2If+zT6>mb$j=nEt6xDQWRX#i(3U9&o4~L zXV63}#+Zwc{3qm2~|4JYjO(b>;XE7c}`p1?1GVa@3r4x4Zzp0w28nx`IJN za?7*g(OP3A?C31>0g*6l(iNVntCk;!}1Xd0cY8{;rNRj6tqz^pPP}XOvA!ep!QJaW^d9@?J6APz|U5qx!Vh%R12zmr~(| zSU>01=?O;(WB5g_;oD#BS zY-bu8b2v_AMh@{dWd&83V>PHGxg&o2MoRF1%y_!_{x@g5f4BGl8t;%X|4YoP zq-#B^faNEbMj<eKU{%a8JiG{ zM7AJ2;}rrcz;_69Ey}}Z3xOhpWDG7ITkSKlBPoQrJS%14*F?3e+da{43X_6qF&ag0 zBWhcmCfDh06HrAi$6fAjV)GuZpk`3P7e$OEaalRoskLr$iVuH8y_+xnTmo6vTQU~~ z)D^+w$b;Ha zoNhMXrm5TquVhW`)pKX^*?wlEU*iMn=SlK^db;nOKhmx7xHT3BRHn|*oOrWfe7uc| zkdX?64b_Q&_b%2?qUyoU@j>?k$0XY^Lt>;#+B=5KtVRqx9RYN)c73xd`42czMbpkk zZlqZpO$z-e6R37b-q9?YU3pa++%I~skC(pTHFN)itX8il6FQx zZiadO7#z?|)lngVpk8R1UcU~A%|C86otU?h2SAFnvV4;^uv(c5@4{3 z`K>=d{&70?vETQ>7Qf)j*k3b(|J=Fw2j80Dzd_6Y$LaVlE@jd+5EKpY-E;?*$rN|! z=i%v}p95^NiS#+n!#hRNB??Mfv#xIp*kM>v!IK|UyUv#wtbf3cVqfp>GQal8GSl8a zZr?F~p^U)Y0`>RYw!B3NG`uHrbk}O>e=Iq+>CRrb;BAhk5+mAzN9O3P9)`3XIoUU9 z+_ylMHPE^xEn29Y*wp<7VDBgv7w>A{U% z=tl4Pc@{hve#Cnidv7)h?a1vk21BnA$2n>3qV}$?AGut6@A+0si@&kLN8)bFjiacY4ezU*<>6@P_8*s{cxRkf|Q-s z=_nAIrOM*Q$FU2|hoN!7_afv|WX?6tM@&@BcgcU*!iH9R!)M{pa^`E@;9qJCpxAUP zP~F_Ii+}`n1w=~%W|!~3kd#NdtnYRP%a?dHIk=hTkSsW@bsaJ*jxVVFi$#H?ze)v) zNdr<*TMS{x4si7;j4v)>R6(~(1y++D!{fBWBA|=y&W*oI-sFcpd(!;jqo1w+8cS z7=hFQ^FZ{6DA5HDTZ0HgE-0a5TOzwZXKeS8uBa3L?SG*Oq}F7u?Y|UCQ~!Y`0Mq)1 z%cr9##Q)ll{GX@wUy)4h6o9sm?q^n)Hp~DDhVsWDCIY#~X?a8xCQ!N-dU!zgwe_I9II zbFV~Ta&RaLJ6)Pf@qj*UoZLj69MesTvM7PYadHJf5K$$?-C1^Vd&R~2Ca3rKB{3K% z2Cr2rp$%z~ybTnMJK1(aZD_5NJFr+8x%cw5^zOm{4P*4Dk0%W}Kk_g;gM)34p*bijml4`*PnD zSuxwvqeCxQ>0+V7v@G&RZj}0g>;Frj3^Jx-L*4a{xJ)r0zE(BA!R!7^~1b8P6+4!OJ-`qMThBZeX zo0c$35>rjYOY1g%7DbQx@vyeyFS1snl=XqnAIKN$vYhT!h|%&|{N*8-M&ji#(av0% zuWq&iLADC!6F*N|*R*a$+eJbcys`!Gjc|FTzXQEhdV@zE3|B|**wX?M8kI{>is4X- z(^LC#gdoF2A@~(Vy0co8Sn43Wz(=u(8Vz&)`ui30Rr7?Dq>(tDEkVfr33T zF?evzJ^98&bL72n>mkgkkEC(kk`kKLwT|CT;S(@xm5s)>^Zip zlzc08Tg*P~=l_`xQSQEkVcRw^w}LCQht)2)|H6&#Uy{q_V=x=3}h~JF)S_WF$Z9PYIZtU2O)} zAB^~nQc;>^wa{X-DocmUn)rYp``C*&FFNKP`V6z?ra&#at>0m1=YK-L4>}^V2CrD# za<@NPaYA|g1oc>47Ewp7OH;p^XzJj-e0)bYjH-SIh^ja}+xy{##ugRn0Dt`#_!rul zO_Gd*f+8Xu-nUHNYN=is^oflgS&ej=rpCoZ?57I*=Qe+5rCZ~tjNbt9+FGvx=9)%NF9s_FUZ0P^1YYJxKbitY%}hzA;& z{oqe`)vvmsI0lk{2F^a~P>p@GJ)}!GRiTjv-fg)aV7xo%FHmm%v{GUUs8yjrqTzSN z{DVY&@lz;*j&i>Dgw1Fw`6vrv-fXgAaphPOrF^ns@^Z3aid?ecA`Qvdm`bwY5)sK* zRWv|en}6|lK&yuzYDpVzL2*vBmX^$o4t`zbAkRhv?)0w;iR;#|58i6Vq4vxeDZYa1 zvLz32-NT#^Mj{=T7;jM;$X)=!9+5!Ayd3Pu#3htao!jlcrUqJaIke0KMZ7M^zA9cD zf-@fa=FS;3hB-CaN{Tt8X;?*C%*(;VwTc7@eQC#U04d4=)!Ds0EgvCRJUutP&mS#H zjGD-0@iNA29WwF!P(M9j~ zVffZ!fa@{2&q2h-Am8n0dSu(Q4`v|#)+N~w_BWet^F{WyYT3?To~u#=rA*;TG*Xqj zssigY{^QYfdOfb*q8@1WR8oZbCuu71`X+RaW`7|mLF-pSB}gT&tlJ8zxzSA&L86-; z?2Glo>4>R}8E&6=ZqN!yVxN#Mm&wTvX)x~b0L;--c4<~(y2J{j&e>5Yx%wlwct(7# zzb6Uv4t68AvBj>ze6z%8D;jq#UA8ql#@c@I>E$m-m!d=DcTz>DabAwr$&Xs$<(`#kOtRX2-T}_CDvHv-dgo*R3(u zSXH%tRn;8zt#7{beV>ezD^HFN-W=j_s}#AL#M0&}`ViHTJEnPd$&IDq^(FBdwrWgU z#^@#`1^ob47;YH5hHmPL?sA$-*|G9lFJ3vb0>E5Jz#LlTSD!!Vjhj2{bRm3F&pZaJ z?vwl*QMUmq;A-XJSbhBN@xu+A6Y9PQhCa<$TT+Jx8L$|@u9F5+jwGg`rl}w4q^X*_ z#(8}t&~&~}{%v#T!V_mX8FIu}z#%ZktGiU&cs3bof~EI{paLNAnmv62x7sSsl}%A> zLU=>MYGy3lK+_X%Pt5LQr5)Evsx2y*Zuu)h=45%C@WANTKI6U?n$Up`QY ze}K>7B!7USeuISkPYUVv&maGfTOw5lbEkh*Z8aAXKdPvYS8gQj{1Ug>;R&IXR5BpR zQGVr`qds65AzgNAET3$8HQq=Y4Id$p-ys`SMQJW#CD z6kRv)>{P3*=xn$CRZ!hpYv0K}%{IGb%Qcd@__xuE!O<*OdHB%SQZUyZFzAkLG}m&s zdcw2Rhz?WfO~n#Ip24<7`J>QphfX=f@Os@JC`lyJ76znAN z`cPuT(!qUAw_2Tmkpx%`Sk|0es132jZdW`zyB|=PoIrztwm!~dim3-T11656!lWV% z)xg-)?rU6#QM4@3z#lN44*Jw*Kb2|`9NEY>^JVD_E2pD>GsgSjiY}o7=<1MGH0@+@^qX!K z%_ZGz9qPx@!r(_lPi4o4bB6q7LwFd8OscY{h1rm5HYkBi^w+BC0N32h9yED7ujTKu%tg#6xQ;Y(6zAdkRE(JL(t?M z2Z!)wSa;je{$COlU(@mi@fg)B{SFyq?Cn9}dlhpn=6O(6kvVu(@iWlsjT1uQA&Z7w zCEQ>4hcvF!-7M=q!-S~<*GdvmE51sgOL>9?^)R!@#_MfIVg&Jx2y5;r+M7Nb&@^4i zOyD+pVd@wlKX{-+RVQ(Ov`JInyUkeU&0wF;iOFA++n^TM0ODpC-ETcm%Gz7}8D|~6 zVQ=EjU6>+pp%V4l1#w~naeMIY6fY@?6`tF9^bVRhe-I)2sBWdz1d|ZLO>+e%V2>pl zsFd_4ucUC94Vkpcbw$IWi&~SZoJDJ|{xq~WkQiGSgCP?1-o!?tK7iJu4zaB9Dq)vy z{Mi&!aDA8H0^q3>ys&;Cq`>Eg7i1p79cK`&%#vQkOwAY>9!_Ao!WlC)fr_Km%xy6( z=v`Iqbu{TXJ8Nz|`$SQJcE&1|DRT;WL5FG8qtHUv{T1rmjx4PB7JoL+>PbgeW5X4P zjKxXRx1jYT80c8ku5iEGIIaE}P0_B_OnQ`{1=m?k3n20FgxSO*Aln-JmiXxIY08j& z$!o<$dJ(ga(Jeo_;9M>c3VlI|d<{l(9wYZe)UH^tWxNYQXWkw>eVo>!y)?!GV_l~^ z-v;A4Mthmqx-8q*a6@`=UEk@daa3bDT~kr+`>Gz{Xq-UYjgkH;{l>tH*z- zXTIBP3fK--OEMMKLh#?J6u9YwJ})7#?0(qoTViK5OEmCq)DAhOsjKNEsu`WJu8~NL zQ1=!NZnY{N@E>P$?3eRM!yS-6j(_WZ5d%fo&Udm$^PSadUYlT;iaajtMoZlY9M8$* zASTU5&vxyL-iw9A8_bSF@)lj5ge<6>z`~Ci1$64eSB=Z^1PLM53hk@9 z0{CvTrc2_0Z}I9 zdnplmAY|$)B7vey>`68jsI<|lqGXzMjnxN(22s4u5blSMNYb~RtXJwNWCc1rfkj{l zfFZ0KE?SiA+rw;mH4W#h#*9;rd-b^a(IaqZ(hr5wUGyvA#<|;Kvu()$c`x-rC-)Zi zaO@^!ooW%j;G@%PV=rI^eIXtF6-!T-8Qz>c@R~H9ubr1!oxvD zSD@|KYM03?`ySA@E0^baU2c-)+O_r!V0-<@EymR|2CmwFq{QCvJ1VAe2mdM>dEm1j zt5=})&!6Jw4oH_>UE<>9xP^oasla|F8B-s88VJ$msi8)5okF{ruXrAT+e>}8l_G6R z(=l!~aI2=JM)=gH+&gH`tNdEeX35evN|<*#dz||l*SYl&XGmhc9@&Ax?3$Q<02k-s zA0Y#sUI9=lwUdH(7^FA8m+CDFcxlTEK}>UBu}VK44T=~Z#bl_%_>-XNZrdVSWX2ic z7bdSgT;m6&B0dzlodd|9J7-G9YKIl4IL$Pu} z9A|b>jjsWnrro33Gtx?NW+p6(Y->u*jVCo3nbb0gu9F(4YIU2F>fb49fC0%k&PjdH z`&MiikJSw!&j1qTQ5&DITgC(Tt9)C(rP3d^vTwb`Kuy(c9OmC8FyAI=^kF7Q)AoR~ z0;goyChz-bf_(15)3Q1pck!+u?^?hmu>Ib`Y=%#F-z1n}V5DrSrhfysJxflOAY8*Y zJQ=B7<vJ+bUgoOgV)lVUMN{ReTS8MO3vY2=R38ha!0qO{&A z`|5$aGqV@+Qe?iOkJjh6h;1TBhvbeISG#h?8a@KeuRiAw54}jDIaDcb-*Hgzr@s+F zw>@VfL>8b3B9Uv+`ZE;!4>UZ?p}of_O7$WYJC8E5=BNy?e`m0_0bgN6-Kf*~$XaP+ zM81?_-!`L=a6}-*eRRdid)@GNa1Vy%EblubU$}o-X2KoN+_4vUBcg9#f z)J*~%7H`^OGMStK1t`7%Q_bj6UWaVj4Y^$MMD!JpWnuyGC(moi3>+0w)TLMyRa04NW+?SEG zhawx)P)O8daFx`~1E!0&iva_UwO?kpiZ!S-L_XaNkUA0WEW2A4#uiHFxE!F^Ja#J-+b+a{ab>k{mNm?JH6v<`6ddUK|7d3!>@_+-|FVKDV%oAvjA9v zZb1>AN$t;sOe4v|kw+!hY{j>#B?~Z4V@tzC*-ExWV!x`$k~qe4sY+8E{@qLBIe<;q-jQbG zEwAgS>F@9#JaLEOlGS&J6G9&djt_?HcH7sZvt7^J$Pp(pmZM3ix0`EB)6~Q|skc#p zEaxn?r}$8R6$i9R=KY+x>3bpaZr6e5$`o%P)2o|GTXRCTbGwmrXwodE1l<@#j;0J?mc*`$EdgbAK@4^rkt?tU`=$mxrQN&+;SJ%70@r)0B2$b;Mrk+H zz5>0zBN2sgx;Qi^NlPz>Tq9Zdy(3NCjrDwqPRtYSAjnmzy$; z-QzzCAzhqEW@5F%&4gQqc7~UxUz(^^sG=XpnJwBLs60^ji5QJ|QZB(fwz)1}d%(b) zfKoJ>rYOEev|0*HTjumrQTeE1=D94&jk%azLn$xgL$mZ3^l+D-7nSXma>$o+XaZu$ z`9+2`-nynk@xh%;l!{E$ndP2KMu&P+0UJ?XoVhfd;+irx|EK*qiO$|g&Oq@i?mu>L zs-{LP#$VI7MA-jRfJy!z8@PYuX8jLwE>c0>5``b}sB6;outj6z;VsfRy-UxJqDm{V9YE+jQ8qO%Ys~kc7C%L!M zJfg~{^xqtjt4}88QDIu#d8h?OVo;wunS*O9;;5Dty7c#3lTW${P)k1I`RswvSxSIR z@!g9pBvn^ngfw%sX}SdI9DiEcJb$>HW{43jlR($f7QT+rL=kOe&V~@+hpM)g-`bx* zOHeMHV6K3MaEJBZMLjrdP*LJV65$0}98UHyO)w8!?duQQ_g4p5;cZ=EZQLe(QtDQg z#q~H-(WHzUNbvzol2SNbUmEw&#PIl>noTK4JvgU~RN-BZ*dY@WNptQZhvAd5 z|M=|%hZ2RFzr?rcFHz&)#kc>8TuV-S|Bm=CGuZ!H1pmf{`;?vgjpN;9dv1Zr{{1@= z8fm!{TcIKu5h$Z+tb!&!ns{@jnnrAcJz{nO96% zj?JD4Wz8E8D%Kf`v#i!}80Sie`eIQrb$&h7cK~rPXhEeDMxj#A1QN-!fik;)iPNvK; zXT!`IArXw)JmP>h^u~cTW5!!kNKgYR`n;4@|;l*u!a!B!{ z3N?>$ZoP7SJRc@Qb#)vzaYeR@I^_zYfiLu1&AL#O^}sII7Hb95<0Mk; zSyu5Ta+OcdEknS!@8Cr*yoXutmz$1LH(Q?>Tra&;+0WE}XyOpd#W}2#&N)+A$D|_) z@#@#W&#vp84`VVX3Ns?UBPng#@|ZOME5^k%Kd0Ya2u*X;bm)$s7 zGHT4Nk97EPON;u;PKt(7jQI_DFJtracHmzzGc`$Gl$X*x=r1kcg zFwzqYnaF+Zj_&T!XTOUn7C9<4R?F{#D+_?_-?B^Fp*?E4vY$IWDBi)Kv)BP2s_(@) zCOJoXUYCFxlvnVF&6Ooby(=N^MRe@_f)qXB-VvjebDK4ZLPg9rIx4k`Nmw)L5gwGN z(^d11{1+YG1bn>4jmr8&ER_0w81SM@q)TPZDZx-DUdeo}q9PYNzQ-2~D6FC-bd`ye zZe^0t_H<{AK{Kzcv$$9ZCVQ{*vYeu|#f=DnzTbs{bO26=342XkvpS$%j_ z&^kOL+pMW64szAlmDJG!hc;oXbWhJCS`E%=uAld0m6(2Y55U=n-Z@jzC=r?y7q2uA z_yd5JNi9)hcV1s=Im;PQsi7|irQfsF+GYk*l7th-vs9F$W)x&;Q4_(Jjp(x78X1+X z35UU+sxbhuTP4pR)Q+{9CjfWZ!T{HXS`cX!%y-#$IVUvJjH-|EjIl;uT)4SU2(?0D z)iMv0M&g7KsRvHtgrR0J{(`v%4?Cg1uLWQ(6M-T#D`Ql|uw`wEVq=k!dfvFeg*>B8 z(4UCzs9rEOs(v@z{oSG0dKE1TfMNYi5 zJ5D#wT^dHezA;a{GHcS<(D}HSjZ#;5YBToGe4D3QY03>+c@sNZ#$=N0Ge-6l#r9#^0+{jrGPR=?3W})iH%tsjJs4Q?*o2V6V8y3 zq!0lk;TTmUTV3mZL9290ST=toCIOhUH7s8sQt_zbic_WL+za6rYaTx;;ble$w8JV; zV2X9AbpaF(IkU)5Y0o8#_)u z%|Fv$>s%VO)45H24qcRyFeXhMLPk+|JxLJdm&D5VE)T)XaHEiS5u52)AhBHe@IR2{ z2dFO?^e|R`)1)%WMA*UM{k6<)B`?ev=ST=YrQLrDMkqsSFu{%_=+ZlCdj23r!8<(4 zWpMNYiD22!daV!kIPqi*?hIIV9xU{Kkw=?%d_u!Zi17B1F-JX1fq1CdRHI(36&o|y z-E*tONo@Y5_Fk$8_eL3Nv^oH)nUujZz_&MtV(RfE&PuGVAop29K@X#mepK>#yJ&>A zS#({3xEW=tR^w2@0DjDYLp#J}KO&T`8k%L=Y~`Ht&R#p0fep(a`wl=nCg7E|K9_41 zRkR`}3U^{E?YepG72v1ufKX(~Vb(MQy1sX<;uw6T4Q1xlhOMw0zh6C^V>K+J7r_M0 z=&oTYcGw!%{&Bu^yOpR-cq#JK#jlvNsRYm*`BBC>Nr?8HImEvvF`)$+AvTc&p8)FvN=uZ-uqu0qGf}W;8 zX)k5vXX7UC2fWvkCKyD*sV>HGp8$SPip_p6!y}8Kh=S z*CWU^f>!#d3m2wl(=RJ-0U47peD_mx9f?J8w8xYuQ7=*J_bF=h+q4 ze*Js9t8sQVTb-}%PTU9f2T#D|4qu32l{kkPNqj3BB=e9`@coZB`T*JOuO`jyZXVmx zy@&Xw8OdklCqVw47>}Ztigl zPD+YmL6Tfk`)59?_qelSphJfK{?}P3JP@shp6sOR~bm%onA8X z1g8<1!_PfT#{O1Hr>jy(!eU(etUYO}y2isMg`V8mik0;9krQ>a!*#6NP&@{sDl00q znnrCe$NiYtL`0+KCq8Y0tESokFqtg`T<#|dfEC)yqhDO+qc*}C*)d#dTa0It?dYXQ z`j#UkC1>PZN&1m;-sQ%0uD3oGj6g}pVy7}ve?1%RVj*qU)z+u^7_QLLEMH%rO%yh2 zwe>^wk-vilO;QhI+NHjv@6t`8k5fx{9bu&{9h0+dRLAi@oU~prPchxY6jye%D6NN2 z0m~xIE;3-BcBBjzWHKc`wAns0#VNRn{RuE*`sy?*jyVE`CWTgCDIgcXOqPgIWRKtQ z70t?GJ==8=Q+uT*A$)#wl&^9LCx}wB0hQoO5qfUiC=Kz4qv2L6KaDUkS?$AE);{q# z_xCpfDptwBc|;P5iQJdr zIXBBkx5J#oHVN`{VbZ*KqE>ilMZ>*3i`3hfZ*NsJM{;%GK{Dq`ofBS0>kKyj4PUlD zW37XN=JoY|U-YK;^0HEPO zt4itc2d$cZ7_HVFOHneWgc6oqu>I?xzCn*aevj^-E50>IUH!Mha{Fx=b zId^8>zpJs^_`=P3b9*sUqPPipx8HLBFVGu=Xu`K&c`RJn;hY}aBq$=*S z7CnFsADk7lI-i7-xcT@Zd#hJrfHAkcjt>wUE8CDD>_R0#h(|A6{8LDgtR>`N%Xm(21GbeL__D*OOBx=4n4WaclQxC*&!{TDtAI z0>^nxloYoppi+T^MYX!i7*ekjQ`iBoNqGRdTLgP*zp=rQt#^rz3PUzP^$G-QUq@G? z;wF4*TlhYl4XCTgJ~vyXNVzy`dd&gaP#~w62i)qm?VXMjP%2461s|&~kW;H939K^K zc%jjd%LQ&7ZjLqFaXoRzv9Oc6ZnFb5 zG7@mv`OVR?dR*Oly1oPSlLCfVMo&jNAI;X;hM_o}Ls`E)UNdiuXumeUfMVIjk@e@D z3kvywXzCfF2YsbqtOufk+wn#1pqfTrr}wGx{z2$Hs9+0+8Q!7DIGjXaptaR=+6uVb zn>ahe8;rh&)ah9>8{;Z~zSK9tGaTQd(Y)q8?pD`$VDI3dd&dDpZ|9FM2OnRHetAwv zZF`0e*SZTXfWInvPu+ORLh6WDL%w-w|i_46;{*`NN(OiiV$tViy5bm^)gua$A<8 zJ+aR*%p8?>#LNSb6wH+gq&$RZ7L)Q0`-)>(@kw(0h@f>(Tl1RWKUsaea}M)kLQVWj zHg$VDl`3F+?b*^CVkmk&DfvWYvCI_OwfQ9e-o<^&^3GpX`go9jGUB$y-f{~fAn}qO z&vi<7Q^TuSuTge0C52=|2C`^J)bI><;&i2icCF1cC5;V0stq0P!lgUTNXmPnOan?` zKD!1MTi<$98P9i46l>!b&0<~z-d*S#Wpwttw&Of=dU)X`j&hZ{Ba3W)>@%UazbP&)PUa63GD+uM8^TX9!xt|(cfGtI0>Yy&Srs%FXGb+miCl4O-L{uEQScSNfaj`pu;@9AWPWA2^6j(oxxx7i0 zySM;Spg~a_nej76fEVO~ZiJ|2S>V9QPWWmL%Ngq1$?q)M!kq;p^4+AZQ700)It>%{ zU46i_Xoh=YP-h;YzsMjjAwO=F1*-NzpCu)IkO2P5pC5G1SwMxuy`$zqNIp(dpo?cU zYjL%G(Mx3vF`LvV7IdOB8J+lC0kiDri+IaIdS_^i2fqvGj`w-{ zD3-qlggsq8JRUL^i--7h{SR*6m4;w)I4=PH65@Eply<)bDT)OVjeq_+C`ODw*Cl}& zg|26`Y7%E@6+7!t2nw;bb8&vlrCgP{e)WOsR#ca~SoJKG*jY!C~#bBo0!bHtL`XO4p}IdD5s!VH zfa=$drn+CuYFl=}9#-#e=~QHg4ZG4WXTzUqWr*RL8+q?l=OmN5Y>}gML0fH*zxV?~ zb$?SqpiE9%K_Z~s09)w+@Q>z! zENY|r=9evDnc#o6zLE*dLH>Jg<=?`lXd))yzcZi)P8koTT({jpS~=|@3H1&N2pBAt z1Tm(j*Z1|QyM03-S#@C3o#f%WoVo?m^JUOCP!qFm`8it}?rv5yH;GxvgsAV8h(JN9 zo;}dmZn0owhVt?`%-tNIlw^f1;K{j$!a1l-)3PX!*TH@5drmXTLg3nU@`B2Ty`_T2 zg-_?=)g)0R1?2h-1Jw%*&HfGU<`OIV^RMs&LkJEyegKjH-TOah>$CNvdrH0=XTfAfezah_^IHev|OfMT2KOUMo z8{oS>?{Cn*iCzOLe&^c+DNis)R$B<0-jmR97k=H-noFfEwwpZv0u^Z+;^HC-gl+R6 zay*H{k|`G9_Okbo2`_9VEJQ;nv)3rwDK;0HO9En+*y&~%CjWj`fxzbmx#wbkmLryH zfzk+uC7f z6@sEp)Jl!<8$it;GP1|i2~XwOY)mV5fZ+PRb%VY8p@3ZcwiD>lnNR8s=k(=S+kV_h zRAA1L>9GMkNpAQ0fO*Q1m{w61{|07s6y{*DI4n|bi%*;wl{DlCWO!Ae%-tclFqc4s zHszO-n@FI%;`M=a3QNXcLc`~FB&czQkd$oAp|;baV_ktu?`ec#!oot_Dwl3UMoF|8 zg1kce-s}YUvDPQ=5X&I>XK|ZirA6vX@T0dLh#&w^FcMeB*`b(0q0u9xdd)LpV_rcu zSVwqce=$Hw zk5&pWq@D2 zyh{)XmDa08Rkfec4LDT@d1i!_N!X+5LN^_=4+2rlm$!~hS|RpkDrCtKF;(~W#mxj1nB;|wa%;miZoj{?+0wupU^kq@LFT zA2Ox6ZRDJQ72j^MFM^fK3DQz%UWm2cmRoOgyqHEe{G?Gftg+f@Rc@)b&QiO?-!TM? z^pipJ+Ce|@h8s&oV_Q&K$1=!vVb*bVVk)DclmaE~_8bt4SK7snjac81Hl{`9VCK>i z)mK=O6!LG0P7Dq^$h*@LaogX@%?slwB(ex)JY&-+X<8U*l7(X5i@M-vt&Un|~emn$c<@4S#VO8>p z?m?#sT%a)ruc}NVTj=)q8mBd1gAI`m;XojPo~3e&EHkzzyEqi}4B{xH7D&9?Ey0s@PYKE2{20e;0LE*l_GXJV8AK zSag)JOXde<)8BP>JapGRIGs1Wm_{7e#NIRdzL@ivRNGV2s7 znjDF(5?EF`e!E<9Ke85Zj$C6AbxkZQM!5N(vRP;B-{c{Pm>16D-EIq>`WYhQytl4T zHHIuDipEjNw$DYdBufLN5C9I!)V5G0Hv*yUa`r*3Z=V5aro{-g>Md48Td1S@ibknF z-KD~*=Lmz%$=Xv%kk6Di)|mYcE3`h+MPi6g5bBEeyd-}4Q0z4-dvRj!KIxs}zO8UQ z-Ck@@ZT4h425&S9UFLwga&#pVg;gPR;lFTL{|@?5{I5&@;lTO7bEb*$+P292s6ktT z6fn&+Au1KCbm55zYb-NdSO$XTLNhQ7Zamtg)vc4nb<>~5c`VnxZs*aASsRr=3b_LV z)2Xaz(@6lA(pyO0lRstVFsyYT7jA(iiEXU4 z%}M+qV*y?ft1R|q=KD~dKo|1O>%bGP%-kLS4lJ|$m;pi?#JF6!-dp#yOh(A^^(1r` zg7QhLKZ@GA5R9GLy^{&~X(=%d$<@dU+VCsQ!ENdV_St%1fZVmu9^!K8HXsa_%{z*L z{up4;V)-}7npYMaFB)EHqf6ix+91kMrx!YHfYzGg&BWii8s-|Zx$74RSka(!E79l( zs_1rly{3e?!kzFxVEXYZ;csIKy!ewKnlNw6Y9KoVnlvBqJd%kgs{53Ir_o(Iho&yX z)qSTlK8}b~Rs^*+d+@J#H61u;c#NGR-9*;Jf;0>de;j*9r4C>m78J|1MNB4RG0P48 z#{`U6!#eh1+!OhX)=eTjJ)+7!`u!DAhuG5<2b&S&!nh&UwJAn5esg#f$%QulYMj%G zefsf_lEdk!&OrQ9kS71Pg7p7Wa{mgJ`md79O#oZ}**{fkT_b$Z=OTR<6{IFl1jSl| zvARYfrRS8%P&eJ5{oggWQVE2dx2vf$of={S9Az@So<2U}f6L10m5X29>oq&DpF18i z+-Z1O54o`1Kx-??YE{|LH_egOM_on7_x=#afQZ;pcSI)i`)%QzGvTT4Lb_LUFR#*| zVyxDdvh!=Qnzya#-1RMmN$D_VuUmgu+QL8#_Jxt0+h92@&x$l!h}fkd&L2xKpIy}$ zpqQRD*mf1K%@ zB&A4M!}exJEVVD*U?h9pGaZv@bDVn|k~|B(9;DDa?~NCOx*ysh_DMcwa{e}=kux-a zjBydWkYjtQPN~{Ss5q(Z^8}~L7f%%QTCY>Y24){g9k2+uPQ3M_Ho32tEnthxMi0im zjHLHMA*wpyNEB2N_GASS zb{O%1ES{4}3=^6h)J_!g;D2JykY4{;b2i8RKasv_uIqo*+`l0f{`;@&|4mK;DxW&c ziJ*S4!XqI;=LX2-Bm}U_4f%#RNS|)cV~DL|tr}oKUi~1rWCzKYR&|iT&#|4ur=N?H zNj?5?m&?gx3M3wkx-P(ttRFhMId`RP`*_Xf`vd{lVakG<{5bGXD4V{o@A_#a*3@`t zuHKb@Qk!5lN?G3Yre+Q!u6|hU zyK)Ke>)X`5^53R<(zdk=W%?PYipTumpMLZq;UKCG3)XlfA3saqm(fjBaBzB>Bl&UA zFd~-x#J0U$wJsfyYrF?lx8;sLKrs1yNaz=`Arr*|8`W2gGo0-J$l0|CYtVFMKN<3_TGpkaJB4b{n+Tgw z%aVPwUrR3hWWc0c=v&KiXEhzHI<#v7mbyJ!-n#Z^O{*2!jw4+nvV-?l!p<5f- zkMxMLk9+DeWW*mk*wGL$U+Pga0K|Esn%UrgHdCo#7seF^daS9hscGiSp~kz}pVE}oy@==!*_4U5_9TM0 z&DIW$UDT2$obl@0Kpvtieh-RJ*)ggftW8*Z==aey7#QDe))g{yclAB8b`J1xY8y+$ zU8I)YbR32i{dj1Z!uOrAKpbtWNS-PH$guP^Xkcjm!zd_ZIrgKXb#*ud;uX1Sj#q>C;)Nj90^N(dE5 zh$%6a*TYdNTc2VakE0E@A+GWfp^yy*W^d!O?pHqEJU+iw_jBlD#u?TWL``%B`8Qje zZ5b5%E4hl-0Wp9Y*lZPMou(CeYTpU9&YrtzYgsS!o6xgia8M3EyQ@Uw>>8fessR@Z zM==S8CFoks0C7EWH%JWK`wJ~?fmm1$`C6t4=Y*nwJvv02X_eGxpCWQT z1R?Rk8R1{&haW;}!$hM$(R((|hdSy2-^2se0}LmJg|DQHuJo@e=`Kgy1q%9M7-5o$ zdmvF6+~KF_{D2C_?oC`pvL)ML!Q2;eU%vRuOsAd4ZQRwj_}wdnX=fz4%^o4U#U4Vf zS%}&1^u!4b0?Z)84PEhLH6<9J zg)}Yp;F{-q{~#3+Z6!R%RQ;W&C8NIRmJlW9RUIA%&Y50bqFh z@NYEtKS4yn2Qj!8fPnE6J7-*O$i#JbEb75a0EB;sXhGfIZo}>>e+L|MK3h`QE-2^2 zHR64F@OoNB)?QW|rW#1Qg}D7fD*cdOM?}HCX0xq&(9jrBOt9D_rAXaq@+pIQ1Pbur zds24U;-n#rKWO`Bzp@CP>s{arPfo8@3FIq2{Q*Rt_hDU|GdZkwmLVU+oR`Q3FkSB;_igOz5n-^twdKPY zz%N^Am_PLGu<~Ijx8{<`Dy41GO4iU?cQ9ICxYVTff}|V>v^`s-kMzqjoCZ4%WqR(; zLhRSEwP;(u0C4M3lEGFJJC1?6;_b6tAK7TiUys(b#w69$XF}E&&F(uG-dO%n`ZvX^cMJ&q$z$k@{464@Gvss zKusYe2FRPl*=f#>I$&&~C%Cz*XjJ@+xnFIOump6{9@%`JO}Bz_9cmxg&zcSBY>4{C zVG}b%IORW*V~*&0}1xnDXkbSeWxNm8*c?l|E0VfwK|fi5ZeP|NI7Z z_#4S>eNDp2(mi#Bf+!WYGP6XAE1pc!4S|ZD9579rq$P{Z&;SEll-H_a37v{H^s3eA z40Jibp>l?veAgiDhKakhth=<-tVyC_l}c(tjVQB=OEMuOyHqLm0pqS1HpOhN0Qr5@ zu#Vh{vwj24T@hjmr%vTQ`WtnqNr;#PAp`9oT>?@4uheVoAn}w9tA10ws@)Y`*>gsS zGr+;Aq%_ehPi1Lge%Eaa8Q|M0{2T<7Nk?9{+{Kye=)(1eK0q(CbA%$&ioK+zUJOg}_7==G0qf6|q7y zdB*a`slj*5$&?1OJ^Z=y&e`?Jav)&s)12Au@t+V5nKdE^j<0n7M&f_2#(4i};YCpS zcRKmkcIBIiomDcwHaITeA48V^xk~@@^aV`%$3;3v17lh@N27Bs>*zIB`NTw-p3<^J7s+0?rk7J^#O$8deeJi6a1GubZEW$q&=BiPoPe8 zzr>*WN)p^)R}ETvGD6-fZP#S5>VQM>Z59AOz5kv1Adp@Ps!bUyw&|F8m!H-uaq?(7t>JxaEclbAwlHX9yYw_h`ONtdcnWtS3lTMF!^<(;{l4&cOpkwTAeq!9rH z68V|3#*_j-qfTzy=r@qJZjKU_zU})#6N07i)pf5e^z5n_jY8rqNW!0{)sNN`W%QS@ zvXi0VRR3a@Q!wQ;?5wMMuIXC);CjZSu81Xt$`7;qZlQ}*B2buSTwl`3S_yNh5?>6b zCC2W(R@~0rX2VMa({l{TeMA&a3o`{M$!(6Axo!lpM_2H_rI4h-yP!=DWv--Uj&zL& zEmZ#rs@t}&hGtUS^tV|V;1ZxI`dXu6l|(bnQ500yQKLn*b;)+-?uwVi0sAY=r>2$( z$Bq^j@it9uN((Qk5GZilqPH_3K)F}b$vatiVa97z^fAEkf~e7aOkK!onX?CAZp`XG zi+)yVleYuS0}YJXWl3M_4kd7$oDV6$`Y8NOqveipWOLQ7Tbh1 z>(YMzUq4nos5^UBci|JAKo~32Zhd3 zAvw_CPG*w8*hJZJ@-ZqYtG8uKCVyJ&qaUJZWQ8F4QWUXZ0h^_GT~Ez#FFsll&zYr~ zG{|Y1`9r1GHdR7lM84lVViRaq?UsOIi|pQ&QBd@|2LjgA{c%%7aIPP}M(}=I_K)sU z0#ZCntguBR{VIRrL}5LVW)#R%n#hxMR?-Mlwd1x5f`(9&%k_)Yz$X)dgn;yDR?W~x zo80C6%7Q9J>thhnTp+w}1V%UA-fgFKlw`ZjkBAr!Dzg@t6Z_LGwt`D`PcBmY9OeNb zu@LWsbO(Ex19m5p>AjKwR6o3vw?{gbHnF`yqDrdIy--r9D3kOY;8a*t8Kt|2BQ)UR z8CmPvN=-~Ng!R>{9{3Mg3}_uF-DkPX*C%ATk0gIa5s@C6@Sh>y(GPWx<(<;2y^YZ? zLv-k0f%cTXAu6QWM&F2*vS*5%Y5cJfWAw^}{#^T6P}=|0tgR*q7@QfcZu@nf>E^bf z=qm;@Jps`=lKVRRv$ZT)rOSIZ5L%BI+{ak5W~K z1Co&WFr#iU6l8PxYMJZLtn$2d6@=p8fj86B#&BY8S;-q@in++aR))C)ko!p=IwO7+5I(UqXjR7b#($HY_matQk4I{qzt{7gFj z+J^2`6*V20M>yrc>RWkPZIQK7o4UDw@%QhyPDVeh7x&D&{yPY|pq zAx2kuuN;>EvTgiE!d}2{dPLVxsT$dnQ<#n^xep9lDH)%eGfEksjbxoj)a2&N9Cfos z0-p817KP$n@IJP^0^26Np7aJ=j`3clAD3-gCnIOQ8o9%WS-2+PjbZL;Z&`~P%v8fI zxNzH^NbB9PFbZJ?YN`~Me`PTLS^M5mnN{`hGX}L2w6V?Kd16gefXJoNXR~jNJKX@= zK&7jk8;*smtcLMTTdbbG4)ky`rkO+ue!+g~b;b44a%a8D2I$gJiF-oWN(&WUOAXQq zn7GwJ#IGc;U61MN9=6s8gW}Xx+tD3_Vpsk_=$Z@>nlqD>$)f%`ii%|}Pt9{qDd1hU zqIr?oT6@x!e4ePpmfY>Fm1fE@`7%nn;<2WFX$6K#jVMHa^TVE81LP(}fbDm9eTJ3Q zaVgKdgMZi<8OHg{s@K6XXoTt9Kq<7EjDV|;QNjxdP z4NVKMMxxN9RXg%u%06$Ew79LH>Lphjn}kbSdmf3$0UBDt)vSypx{!e_zbx1-E7HAj zi6P?UFD^cVVHKfjbZ9i{YJuQcQ8~IDXZ?zP=t{t6CS26tyij>XWp(YJ1BdmHC)8Th zXdxKW4*tVgSe7dEX2tCFZ0Q#SfYl3uL(61Buhezj8I?J68{_>BSlRndnQ!uKEQ3+Ur4l^?9~&|@LtN0%tplT8uTtgikkxxv!`9G^l!S6dw|Uc`w#?*oPpM$0QC zbR>hhlR+zL<&xfv3I&Ja>vTN{m7B+0H;-BasPk8bwKWE8Y3mm%aD|jkq1}X$^K&M; zzg8Uk)05P8tTc{-M|fxRZ_G{Un0N}Stm9xn0Yht)Et^h`cc2s?gYwjX4cYf6_eM50hY`3-73EYuTP&Unx8c8sjM-I_RRXpLxYD(= z>%r=TZJ}XBy((x-BZ3ojTo^3BVf)-ls9%~1=%}d{C5PR>GkkyTyB8?jlJ~zG3D5ub z19;{Ux>5@fOPUh_a6B(YSnp|kmwyasaCV5UQ$NNl?0fu+5ZLI;_RusWHSCI8#R@BZ zv}+xdtV-8NT$56>&d%aWF3^T{15H9UFA%0lSCzz7@5sE??BbY$l6E|O6CZWoeqmDQ z{Av#wQF$b>>cVUkYoG~O7gYg&I1`~906IJCJ*0KaQ~A5$kaa zkES{~;p_mqy+4Ge^jC91WSsPl1csTNnGLIMLd~FEe|D>xWl67s^hQCdz~enoZS28f zS6pR&7H+R?K+G<^*TM%?TX?8;@X~!iM@rc9shzPCwZxQPPD?a(3g>1G=q$Mw0_oU^ zYjBwdBBaWFYEbp?J$u<}Rm5ei${J!z1={g83gDgc4QXqW;BIbJPI>C{j%qneH}(U1 zeMGjquwoHgZ=bE+vUI&ar3Q6@&+m(EF1%UcpAfoKh@a|Zvx{T1mWeuAtmjtvdd|zE zK(e3}`-i_bn}basi2tBhWB6_8xqV-Wb-AMd9bd)d)BSTBV9X-RzqSIdcY$L<{Tsdd zXXX5_pJ~y-F%kY9|NRSU{inAvEC0!V^sl#cg8Gj7RyL+$|BO5l`pU)nN>7?9T4L17bDIOsFSQ>(bZ;L(Y<|}^zr{8 z@cxY#hCzl>IDwxsmdA8*ER&z!!3A8Q7V3aEHStclt9IVda`x!t+#9bLm_ zas3#mG@xXa9vYFdWEPUlw!gHt}S8fvu0(#zSf-xE`?)}~!jx$flcNKn;Xf4Eu=J=qXVb(e~8J;sJ zO|Bb5k3yU%=uauJM}s^TK{+~>?`X_?ath`g)}QsNS{D`V9$0t6jSjR*7{YB^cu`u;d9`k z#qq5E7FwnoYr2mOFyhRLc4H{86smJ*m0@NpN)u|Jc$dJeIHw4w;>RK!!+SY%u`d{DgBZ zabBasswt-0e3n&R+|mu%ZBe@-9efQcr=Y%`8^%k494-nIqcD!OX4G(t%sYo03K9b& z83bsehw%X!c(uOXP^&W>as!)rz3wsjKGAY`z3yj7Jq*jIEVV zS42-RlBc8Sw_qemvlpg|qOuof7(gLl0gWaWk{J%OuO+nH-&5L-S6~Lal3dz=1B&sJ z;Iw8ky+DEJ>SqUM#JU?p70u>j|} zDZBAcvk(lqoE>xFxq6qv&A#)V#ZH+_lqd(P(2!e7$rB0sp&TYW2ZUNtrXbbzIaRV3 zjg18d3=u zIQx8LGVDP>FE6#ar$`lkzDWESUyDjLYc@z1JF`FLP^zMI;0yd?S!m`lxR5g2Uw1n8G{h+xfL4`JzwkJ4m?1(&Ef9NH|dZ`w=8q zES3IRKu3nyE}*c!u*B5wR}CkN`fS-)mkP{|4)kw9xB3A}dzNmg$*Ow;V3>Sdtjq?f zWx`0kRtd!iS%qY)IZIZl3c4h1jpqUypWX9~@k?j3MpJQuNW@@NCQ|}MuZ0SJPSCOx zZ&2%cI3bg!ezzOpb|gX)(g zs*C&AS-)tK+AET7iUP*x=B;^&th_@Xjm)iki(VYs&)=J%uDO}o)!1HA=uOVXJR_ru z%Iw!X7{Wt49)&kj{&)eyT?ZC!eQJ&ZHPEaHEV~S_67$F(NHd3lB8Q* zg5ea;|0Q4rU1hglw}7o>`MW-%@*ZBx#=e3mICOC~_10^rNxB^1WH0SxttzbgeJc{_6_NU3X*s}t(JQUvl2-$} z=&0(`Hg#D{iaQT{cp@QgA328~X|i3@cwDORoH}*PyU~vfq9)0CL-DdiKMo^Hj0t|E z-PQA4WQ5$&TurpIYAbAKtd5x>YA`CQ>2 zxYrq@?DhfI>y7nzu0c*g#ORMv)6S8#tEZ7?)n`?;a`qV9_84ewKzvn8x91i9sJ&+WOPf^ zk8KJb7>donN%0Ep^VxR7TQPp3T}L=QU-QbH(KYC7o`YTd_m-}UN0~tz;9c_KbshLY z>bF~+EkkhcW@y_LSnf%?LIfNWVu2MBK(=1S=N^~q(<}MQwy~Tlm|y00O2NQclSh=N zFMC0NMW@)B73^1(OS3&}Gh1-l>!K*fUwnFLM1BdEVmB$uW`Sa)Cv-=~y!G^!1!&}f4esKIoe;!qF#a4Jzh7ExJ4mt8I z!xTFfFJCs-MaRf`0)8++^$q`r7yHlmC78@)aUlUJcD}e^UgL_DvwpJvKSS$Dwx^ay zGVF>#OQu+@?m8yuu86mKKb&CjO`)W32+i^_+3+6SwRrF4_c=^iO}{14$X^1KuO$U= zE>SPEa|ZCZ{N0<{gOi3;LU3<^^>UT*$B-|NDFe^!eB zHuSEd>4L0`vQZ?S1`9GXr66GmQ5r1+`;#UVB}NAnHzl86@Tc4eaSAEeu~fPg%)N@% z%T5?w=TRD6tLN2kZDwj?8lVrK#M{J}BWFf_{(KVC;o0puaCG@_^>u9X^X(b^XT&Ue z_<#}*2~}Wafl;2EifX*lZ#v2V4GRs{{ZO4$<-J^kd=^?3fj*4>%TX%(QbNmuIjxUQ z1$sdgy}3;oV5lHwe_?*hF;$oXrw0eyXmALKDzE}DDvai>ecbEWHxwZDgqUlS^7M~B`b$=3@61uP#)YOP~?54;{NYb z(PiP4B&#K1L~Y})^b|Kn_fu*poidCPwz_c|cC{K6*#cr|ZBK(s0z;77Z(K~s)I4<$dmhGJPEqp6yI z^58NtLsHyK*zwudT$*rn)jD7;3nTqJ-I%bfuz;0P;Sq`@W(?{*{`YCz@J-g+?w z<#EL76|B?Hg9ydEl3!zSIFdE3;(@Jxetp)GV(j>rXhW=A_GAxr>|X3QqheDVN**r| zxSLv9hDzl|vLQYFYb0Mluu=uJB6$`wf-EgHBadl%4U)~-;Le9Ky=s&}BiC@Pv~w29 zM#S#qHIE!~ZcuDRVNbJ6bB)3Yr%c5wZOt|Vag@BV9hd3CXm!^I6cK*j)2^Yx5lTen zRAapFc3Vr@77P1Vbw0Y0Rz;5e$o`WL5Hv4(9`b?xAq@5;x{$!3Jkv96KY%6 z4RT8E0>MAkGC{yPN4`OfI+yJ3^9uD_gbzLtO}jJr8Og|mxF>t7Uw9w=MR-@hVi)yT z-f%%0C8Bd>D2C3n(nyX{+}~X$qHzcE;i9Q5VCO7RhTIZ^Z`-6g&kfeic^GZS%Azd$ z#m+FYNB+7kb>hz~;ZSSA9V0{^*=Y%rdMMPNTF8 zH3Yjif0>E^2LsxHd;~G3RY$VA^%P#J3=j2V9ZS5AY}ESj<$JpP(xQ1t%FcQw|P+p?cUl7z^@M1}tVx<2v zyDZUg=iOAeUQ?{wL@#8Qb}>1z{d|K8e}b@uL;bC|!5)|yV|Pk1&uEC@`7u(b5GY57&jP_!1sHwC-Oc!1&R~F0>bmm<>g%_ zQ|Cn>@Z*CMq&gr7PE#R8%b$|o?FfEfEjbhGI~^m9u5b^kJh5^$8E>QzicJ_XI+iRm zec;Vce23Y??wsXgd}z9bXcINwt_yjEztzv5xGZ}Zc-R+Ym>#`opL$}(QpDkk(1w)y z^+IFVb~qy+__&$r-8)5pqCqpld9nt<{j#+&vTb&Zr?u=N^L)h`7{(fL ze1Ii5KnMm`pp6;)aO9=y&$IC;oQv#mnY^(ZkFL!E!!sQZO|k4Nib&}v$jGY%2DuIm z`cs29ituNG>d_kJ3#@uetd?LcA@vTDe!`MzzBvRlaA#%sa>qsMGcg>S&z5WU`Onyd zf8~$yi6hGCweU*hdD1(odrCb#)v#nih%z;@asy;p=&T%H>mC$~IXbpu_i)aBh`mjV zc=HVSJuAOj3M0ELda#HcuvFnv>7TjjpHTncU6O9@@ZevDRippO6@HV0|9?1K|EfYV zRA3#j=l?+$td`~ZV~`K`+e49zLWI~E{Pl3EjenyUajEstBAeAFR_;shY1e4%gKVR2 zOm=GGolhZ1ae*0qm$HK7>_yySb6W9!ybuA#s5&E+Vs5T`Ts&rYOtfsaoMwI8_C|dR zys8QG3rtuDuud^wr=`I-6lyg}5H87_P^xGp4|ZR#9y7nT5}eDhBUn76HN(m^y>oDH zElo?fn_I(_w{QJ1S8Zv%03tp`e|P&BhUlE5C}>2@m*DoM#LM-pcAX4KgKmVN4}S^_ zT@FEho;G+;0%)aTh`10qP;)VyU}Bu(X6lo2X%9(DOHeVFR~Da^7F{(63nBMl3 zv%|s-HH?4P1PILt2AZ>rvVbFlG5rKu^*7=<>Un@;|2P%-#>MQ&4l9xYy>QqEqiVEw z6n&7ZR<7(Mx;IjedKfVCM{RDOdL^C3rCl-Aj2<^nsa?%bo|P2xhHavCYY8s;`B!)w zi`C(d28ZZWSOnvU5qR1Z&E|!E`=ND5p+08~DP7Vi{2L$C&u$Z!BoCscolacfo_9z( zwKjgByIFG-$J6ueCVZZ* zEd$;A;(LwV8%C%o>ZZ|@Av!LDahb=B`9Z=YYS{Bx$=RMOz%lkb-UbS&(Aw2g0^s(W z#bT|RM%PX@44~>6)-(ywC$%qg!(zw#jcI@@k!%`*JE{!2{?gB|KwnBJCa6Pw7Rkge z8K_eRU8hy=icPu#zHg@zvvQyC9Zi2krjAhUFYoca`m&)%e#E2F+a4wEo0LI63k#Bn zpGy{YNZ|Xq-5RscZSyZ+Q^(MT@#QAUQ#-iM4uQ5s3wq0Y826;)$7sw$Qo-cdxR*{M zuWo?|ZAE*mI51v5kKUk=HkQr_Epp@&Iu zl$ElU?e=2P)N6q86rswkN}iL^iq<5fNrE$NkoB&mlzhZ@)4v_4A38j+lU~g;`tm0) zY2rra`hW+bOh2hFFECxmzL4TfO1WxL7}q0N28ydJh!8d}P5Q}W0@R|j(wJ7bxzpGi z>d>WeEH8MtD%1VYC14WaSy_IP_p)W#10X*+zIPKge2tjS!=FjIE9M>aVPp@@)g|Bg zF~qP_sh4!~Np=s!+gg&=m9IQEL90yqT2^UAkM%Jkir6^Cm0(OYsLNdP=sL$=l!a+# zc(LcI%2l_!FxJLCu$t1X$%KsaXpqG>t+sPQgPgFX1LrzdFA7gmMX>*c{D+`802U%^ z5*wF@tr?!lyCA}`dy5#FVu@d-8v)AYF8}voTuBTmzzI;TC&%bBa(1+t&y6Ub0R7x8 z!A3#-0z}LjVlGWdS+2ucJ~X<`X7}Uo_h-?PgrJf+(IE_BKE^$KKq1qd(mD%H3`N2_ z$9?_2W4PgFDFlc8=^rWbn`lv9iF&DArWP+~QNZ`k$p%*BOC_581~Fi2Cu}{>5}Z-m z4NyBkV-%QK*9YIU`^S52wvWdVn?0jBh7`~ibgNN`$}YPlud)fD^I+liq-hj8%I>@c z+i!@>zr0UVui5aO+(GY`^P2@VFab15TF1#4&#L5HUuxT5Rr9fVvQ`u==8yQWI)+e$ zQ|0cY*0BKj&#kCy?(UhE>$@@m`^^Y)t!rU#-ytBGs^G*^4Be0C(fMfE=a?jpOe;ds z*vt>Km&amoyZ)lw4OY~SVY?hRbhtXlnO1^lx^y>6jSqx*V#d@-{|PuBPxq6UB^CSAAAg4{>SEwP7lIfvpKk z_B-Iu7ln;7jqt*x>lG`?Bf`zAXus*JqN9Yr-6~4VXFVGV8-|y~P=;ZksDjQX~WSF2y82DThF7MDJVyDSD9&6%7}8(U&C#~|Fc5-e|d@iHz{xJf-H>UT_`@w3@#=q=~e8pqt9x(+t*!y~)uG^7@Qh8)%c#eI4A>#wbq=>q0&z2FJ6u)0OndZQN&=S<%c zkWk{WYO*w`^{K+TVN@p>shFCLu`^FbmUHRoNubw8pTdobh_+OiI{jJ25i45;3dej{ zy1v5ddtxDmK+DPrWfNwkWums!kuYO6nF5RGWWsa0{w$g)v4CF1{5+)#M(gN6>hH}d z<6h=;DmdS#B?S~e_OGM?LHRS$a&&F>u^)~SA_)(2tfIoDU{$hy%(owIEVLL%ZgI-rII7)KaRH z`w?!H=zTfdmuEoH$4o{oMfgD*jPpJ~I`D3bx_A6DuEkm~N}&7oXL>L3G4Wz)LEZKG z>dQBD|B5iUpG6dZ$!S|=>-TNvXZ2C=TjKI>Go4g}Z&UI55=LOXjlD;*T4S@oHT?N1{9apv&Z|JAvm{{vl8Z_2c330IifKHP^tegG zo&+OLkxbDs@6?K~V;yv!FsZ-g-#l)@E=!=v8bE??_`7j5Yx5Q1P zW**x?jWs)HeHm2ccKjWKWr}hT9-QoHx4OnJ4s#V9viH@%AN(rJcdcfD!@${w2Armj z6tRKQWjF76a)-*h~DqM9|&8PSWd%sHlyqUyF4_z z^FAUTx^5*0BO(=7gIstlzWz)_XFDQ$0U+uUJ@+-~tJq@zPMz=F&QZ>E{o2f1>cejX zG4@0*ir_rH1m*{hGIt6j`@^X| zy<{#x7~I`G+2S4=ZgcX&&D(LP4G#Kpnj|LJE#9vsn)Vwr^F*=oM7d`Q(}k3w>E#7O7t!Z!N*1u={E=c`x#YEISycXQ8-2Lu?!QMO8|)duoHErXd4%Acc8?II6#0pjDQqsY5X+z*RWVoXavVPyQ#3a!6B8tqss zWb%{d4^T6wQS~2E8b=@K|I|*R{?;j9!dw{PzYFvK?4D)$mLwGn3j04~x(xteZ0PuZ zrO++^6^m+PZfU}lq4|}rS=*2?QCzHxl4C>>Sb@I48RLafbga*#IW|pP@!8L}Wr`{! z^Z@oIzmw)H2ML25`^Yir;We?pc!^K;4bL#H8yGvX^VRY17qlTC?78_z$KSZ@*AJa` zs*R{GX&%ytn~KOn54js0)v|xPHD&P_MJ_3rs{dR?@))NTIR2TMM=*Hx_v{}nf2$jp zLZyTJ748bwqIna=zIMF9oUuiD3`SOHJ@Rwl5P!Xh%`4&AbthdcFT-QxF|UkUO_@jz85Sb} z3E7n=>hM;yKjOU4ZeN%@C>dXv zuHC-mjrMyWcFF^pQ6rgSfSI$1YRG|!V@5G+PL{a}2&`HU&WKt+r#?i~mH(9l#mN$( zRF1^0eO$?4ag4UmM}tVrfx6%bD|xB_nhP}3)X+xWSNtD^0LH&M{&Bt1Aa7qCf93zF z%%=zbQ})uoW1s)+JpEhCU(L-?X&(3E;tU!L4lKl(pl`zBZ3CpYN;3^*~iU6&K6ZmYBkeh4pP3`w>#Ph56cshKk|z>?nt^ zkn@TR?d?cs4p`r13YrSCT5EUGJoqC=s+-I=4Z5up+>6V_Sy1H|BllnV@Nz1!)*%JZ z02N83__NE&BXtl{ZdR0Ck4&`j0VJ^TYa>TlAz3&hsN*n(CT&?$gJJLhR$w1e%^4|( zhu*U@U1@bO4uX;g1L6nck{s365W)asIL&MsdP%NOG7QIh1!BRDh6>_i3~6LruHQ>E zsc7dLxs6?A`i>AGc9^qnDj_~B=qM5L@cBsL@vmK9C^Bdz2fNbbj^rqanbB-?RPs1o zs-w%!`a~o%SSbp0grKCZK_HH+UHX?|rbENhEt*pLMXg@ecVaJ-F2Z`}-}i`#^QF>x zGW12`j_YL-#RQsV?G=@oXHg}E?zzS1g)J)-D8!HHk-48OXz9X2RaWoH7vf2ZI(pUZ zJ9z1hw}gl8;|lloUMjt6tQ@PQCFciY?JH4%xkJb~T`fuNrQ0j0b$<+{kNqk%J2D9Db8$k4;2L1kox(&^_ z;%TmODONV%0%8|q3v_YGcXF|OO|(_yYLd)H8G32|-ZpAW;0_*{mV2>&L{bLk&KfHP z_njKfpKP|?GY#Eq%9J3~n=@g7sl5}>(t2ZdOxeni%0Lv2YJ3C_coAcQ(S1T~I&h4nm3Yl>lWPc7$k zb!1Y-nSD{YL7vPzTzehHxR=(P_G)0AhK*Jev$`AiSjrKhwTAOlM3g-ld_P7N)32X8 zT7FRpyB415+ra7Qy||!pMtklK@5T+;EzaR5vXTb6-aYCRneZZ3-xdkSereuzKjFLh zM{{)=w&Z!L3=8o>1J1f5gfk0PgIn;P6UCNmh~ok2+Rd8LacRxxQdRD1y$M;PK*bUx z&a%U@PA8y}>@e-tKvL)hhsdVWF6)K42F>}$vTUUWO!XAuw0Ip}g+^e3gHbchVz$~uED-Mvf68j)`Qu%1M?CVw!B3*_FdF15mo z>{l+rPN2QQ@j`*3$SF{8&#mI3sOFU038Y{e#!S$>-uW?LL=fe1jY=J-fsd}%UiM_$ zMK9;*23$VsMy7`DWxgyf2#hkn7Uw28=N``(w(Mr`)lK+YRnriKvX*G}!4b=A(7|Z; zajIZCTI1CD%c*nd1(Tw)SpLnp(E6DZv9teO&GE?gd{yU6peX;OZDy#^5Zg@|>)HFa z$LPJNh5LF~_%zQ3wORH7!qy97N3(EYPawV>I`AG#V?V)}(r=F}B@%v!i@&dVdcx#` zQC$ajoN0NwM^FpRg0Zybv&gVEwQb+egC0rp=)703!+j+^Wj$d&*TdC?VQ^o2c-v8l zkBSs(gMMAAsjopw#1!LhrW-+RBK0mioNQ!rKS4Lb6gAvYL}E+vUBU-egva9cTg{}B0+rm#9gB_!_cu8 z;<=C{u~L)-ch!P2TJHM-mNyGY*?o(;2~=P<3gz?*n$kmcPW+xlSmomu1skBMkwJ^9 zGkQo#LL5+)Z*$XJ0m~YmL!ibKn9#k#zzj)+W5~{;rnt%!$-=gF3gQnZgO8ed?c9+yA zHA&knWQ9;KrH=2ZDdL4FkJ=Xa3M`gCcmM?~=7Jrju3;T-^ztzJLlUdmi!&1nXEM2_ zQ2{o(t=@9@4r4fbv#^AT&uRG=d(kEzk=;IwhR#*?jD@`Q824nTZeVy__G7Ry!_zb9 zTyn~}JtlvfiPGy0_9jxM>M97U&K~KR7p5E z#@WtaNzPe=L$ADC0i&$3|zX4$CUK5t{rZBIUNM-Mv9GPUqoig~WH^Va?*&EXXNRED+f z_q8OA)nneqVuHpi>|OESJUHV@Z$VN`LDMnRe7M53tFlWLStxdB>`}Kei70FAxo5A` z-c78ADQYX~DUjg{aC&5(Q)-UdQj}3@CgVO~c07y<_|6+KS_;w|F?`W+sZU zSavJ-Aur*6v1d#cjQzB~^9t^XcSEPln9AAdyQy&CBJ`PQ3H-Ga)gJdAqVZ8q*na(q zyp3KIb#?Hm?hniv(+&B+Ui^^h+@$+f;iv$4X`5gOoe_Ti)h$vl@x4$7=m;8%f1sk71) zzt`5cb{AY2M#pvk2D}N+QU~2Llg%>GxuQf}+}-0281AxjM-nZB?Q>f)A>X`=Z)!^~ zh$@NrCjAMuUB-IulCNFe;^T}ob!KKCygrMB{Jgc;qKDj!21^MQWWOg>VolDnm`2AM zl;pxXgS<%tlGaWicEI0~RM-62zs0Injd%WZnG5Umw85#ea}x4>v)L;I>J6pNekDEw z%fsiyipW~mkcg^1<-7c|wu<0ZLk^d-jgUwvpkoo_p~zsT=n}IfaH9Hmz^ReR3<8P= zOAIJjL*ss+fuvLYS)#?V%~A99?p}@ju3u%=XS{==szo8w+h71+iEe3ErxwK3@6Jum zx|O};Ph`N9i7M^-yFPh+?twOerU3S`*puVha(>-^1?0-@1NI-%4Jjy;{`t%0J&N_; zrCSnj@c&}a{x8M#zrniyaA==f%*tVS%cQYdk6X>R%s;beH#W{Bz0(J+=wP%l-HkyB<=Io=6ZER$V#_bjS^H(s zmTpNHV6=Ky#m99ETs8UZkb09(>tZQjELuL0Z{!$dT_xNeCl1-uOaC4?Ryiu?x(CG= zKWrFi)p7mDe|+Cr33wKzp#UxjBnw4hVZ>PYEI3zl!Y#tQLB@-g2^@Dfba@qWLxfkd zE%axcz#`996M_tb<0x8e$YPw6(fTrI3zsSwPbo9U6Cf5sIl`B38EAYW2~In#PHfyp zo?S+M z?Op%=HNy%0s5{FY=~_}X5JRWINMf9-oo#@55qA}X#fU*0!CDK3H%M4nKGVYD?p&@Q zT}80|GtoA*TI39@wjNAl)9&KR^q6V_DBcCTX{&zf?f+mU@g>v_93#xUW!QpG6kk%@ zQEP&Ysk1{_tbQ!mqCY}Q;b(`C`D4zN=z6c*BV*Om=3FU|$-X`bjIa);{YGH>&T>@0 zk>4fMf+?T`1N`dBLwz6MpF;ik|0~!23;yj;HMhl9#r>=zQLoL-55?k=Cd9W}S4u=A zArTExRK%BP4>1Z_5*O1(sw!yc2x(VPEyK}*F2LC*pF%Th>G>I%$jnY4FD7_7BQQGe z*8_)Z(i|uY^z_}v27B9Bo!8Ky;2nWWonH02eE)d7-srr$9LyrljkweF<&1X}ifyRJ zimC65w^xcJo)PDWiMT6JR+c&P*lV-5SBWaMQg?{^75!Q5s1%w{?8L~(?2UoJ#sRLO z9g`iW4-rZ&Au$TcrVP7x8UcTQ&WRF+aDjpOL+l4GP;P~6DmKQ<)1};$*j?<*R8kpq z9_|rdXqV>z)KSZX_AKlI6DM5it=cv3$xx9_v9fkbBF z(wNQo!?1>mcp0enU}AOliG;zP5F}~U_l5zJUAA(|P)=y=VL>+Nx$tqfv771p`acxd zH}W*|)lKwsyoKVJz7PHfMCh96=k}&zMjNGhKp8rJVQ?6FeIAQivN-V!jOYU5u)&gN zVO_=A6hz3fKU@7&E1ei$L3?TZmv6dn%JP=@4YQYB%1~iCC>-3%)I!-4{S*+8j6i8D zU|>z(mU^>dHcLo-;qVkvPd{-HzcXTrvYK1dR%UDLdbbv3gRI29k&YXecG1uiw36nZ zFe=I*)NcZq{G5PqG9QCazdwtVEc%!{57~OVrbZv3zRLG9&HKXS@zG}+JX&1jps+zEx>0u&*I072UGjYsVG| z(YUY^R83S_WCSa5lu~qr)Hrex{*A|p!CK3CaePqGyBq|6@a!ni1Jo~~IMc(^2fHCJ zEWXhLxN9wpB@`T?g%Fv|9;|VtPnbiywe^tl{v>SZjE^55QP+Uw;|f`SRNdC~+qi{! z^(Uk|kPJQG9ZNzRPty0+o?ep$d06h*ycYH;it|FeGQ|b5f`!TAgjX3jQ`tU^{jzyt ztUw5&lfU9F@`~`91!8h3O+I%_Y?je4_$1+bz|Wc4AODTh$MxP+$8O0BZcnW$?^`m8 zX-vykrsXnL#x(x1yJ9bK_!e);z?!7Uc~GPkbS+|0gN>!e##EJKjZsyUCOs1@egdPL zufkPR7VgT^Hm8Awj@-1IKufmaUz0&K8jL8w_E6A4xaJ(90qpIToI^u+@iKJNz|U09 zAO4%%zJxuB@7q-aSGw~C#x2<-V1iz&kA1NI*D706O5MdUiy)P2<&WFS&f|W`XhIRd zG}9f&?PL=l0QPU!wJsYAPaG3@{#tibM-nCHY0ag#O4`9(vGc^1_Ob3^va4A`hY=dg<-G>7cJ^SkcBBlIIX4Ur*q*&!!;rU-E zdXpnsWcJ`4J(UI2HUAU!-uHNi#MhFE8%5kVrBr#u9Dclkm1+CivUARK$cyCpdy@nn z21Bq+5a1QholerqwHZ`IzmVA6KB~i>6;Dlf?9|M7=8-0rxoNl^VKzG zUIAxlsU@t}A6{`0r;0%STv2kNO+iDRFc=Rw>q8uvH|}>VE`WVN>6IUEmIlA)EyiV@ zY+5s0Oj!84nb#JRY4JAYI&h1U$90R*i}osj8|YQSE2}#`yGS>iQnZ$q@f}oSwTZ1R z@JG2*%ixI{nXs#c_PvVH(;UwNT6vd1R4S(R(t>qxEg=g`*o1w7h<@Dkg^0d7{1wer z_v5qgDoB`ml&u|6>h#lh)ou%SP}9}fzdT@lb!KCeInO*%gdV;g{l9xO0LNpWgERPJ zmcZlwCZprgtvd&`7pg5CkR4^U7c6Qo+{8|Kt78&8^KWhXok$M&2lg{u2KbEL8uu|WF7)sbworq7T(6v|z15rE$~|Uv zOGY=#KT_I)3jNg+ z!u;=I+DOH>C0)<@)rn21}H%a}r2ww{}?)h%a7ePDM!m+pcUz(h(}X1(X(Om-|&pyV+v zkBzq+t~pFTcREbGp8_xWbimXG7U3KU;}+l-Yi3(Dffg5-$E|gibF0VYh8~rM2@%et zHLD_ttcszG7c3}qW)v&aJ?-qU}E1Hw9dBM|Gr~@7SIGfch=JT zJM7z+jL~aN7)$PtdtQIUN!XRCxhok3n@IK>(6(i)8byaC2mrUmo$~lq9~{dJ>8rW@ zm<0Jeffn>H0&uWyV~P{YCbZYzjum_CaRtJ{ zh}gya4Gk}_!C*xy;%1p-ITs;aCi_S$GBl#;Sf99qc>y3o%i`?9^d#$jUv`hP9sKZ$ zD6KPDDRfEO762j^KYP}W&@Y@4t1DmgR^GrdQ9{~9E*^u8?DMdcEOZOSwxU^K;8l5a z@=Z_@4{>iep-x`_eh18~)0AQyUGTzr%SMS5WXahuN@Z=0X(mojRlqk*n`1R5y;cJ1 zxo2xgJcYC-Z(3FvDztkOu4;T}n~hP*4I;KZ`@I2No4^&t+_Ex7#$t`19rKK5+U`(1 zTyOZ-A@yY1AUht0#d4tK=dMINrscW;iA7rP*j1))(7e~6B(D4HSMm2WiG zk!X?#>|W~y8eXMDlmZD2`2!`S_pE;%K+Lj+W*kIr15UXTF$jt(HI>&{S}w5jQkScp zs&;31l<`4BfHlSV6VHYUcoS6CqUq`nwfI&1&L;~*IxqIYC zh?OMdpNoJzh+*-C>*5W6h~w*~5>H~vyoWC9PVmFN>dR(F{A@uvcpK&WNe`ELMj z9(i-06IYbgo0yN|>Un>DGuM!;2b>Ki?(zw6{vG*X0L(|$XmItA)o=w34ItWG{>Z}H z-Uen7PC+M2G|_>M)%!T5oUr<0Y7r#IHOs6J7HD;|q)ve2#RY{ADMj;cToW?#p5gZi zeH%9fx2RE|clDptHPA8JmlHEH&oSSwo=Ws@#0~j=9ymq$f3Wt>!IicNn0IX3wr$%s zI=1bc*tXp`)p zs9Y5q@m&KJRj~$xxKt;$aq*k+;m`(iq$<4?QDjVv6F^zaNN`m6a02mQP2`(NQQ$JY-l2gbjP6dC_LbIvI0VE?awB>&X}{*@~S{3BQn zPoFNbMM13u3i3@zD)9m)`nZT9K#8z2w$ZwUy)*S!2w)G=6M`%R=^XM#IpWI&UJ0g> zc**T!{xq4R|Mm~ed>}9YT4Bc^Qe#W-D$0$~QU}=|Z!1~FwfM6(BCa`VFiq;N@NpK% zgo^NvxfQe);nMw6=>7QIO^GD0s;?li-v%fITS{6eoG;Yu<&QMJ zFf;Q1#LV|tcQfxoG}yg{QY+^USZU^Ax*fcC;TtMopqy~*@GRKNA7)o_9-x@m&L#vg zVuL@FtFC|L$UaYsVW&q??KMR5!GM=A%_O+-+MSS#0vpic{fYj<%<-o_Id{gI@gfGc6Co*jN02;8=K(Q@j{!d)Qcwy}Z>UfJ z%3h(Dd zgZi3jj?NS>K3N!~UX7}83#AB^Uld6HKAENAdrU=mMIV-9*P1N zg$Y>+xNV|W53;Ii3W$<%SdhiFO3o+=Ko!I8Ikr&+sGivL$P_E6o#RKNMc=AU1)MZX5)~9fDG)*h{TrSESjpEDV?dD&id+5Da|i8`gdm` zQ6UbY-~)dT?w2vtCi_XYXf2C^rrRq}Q3`gcpLhiYkfhpEBU@MAK!PTgjSa>Nv*1u82+^q&9kn z(agL3y=2jlS9Q?IrA_qrboq?*omejdBB5F){&-F$PbFGvO&wYXd9{DDw(!n^tAqqA zk*;I{#aT>INj8q#@K%|87ugAj92I4_OfSM#pUNhwaI^?Usf!w{WMfwk%c9YjPaP{T zvzv_teCKk9!YfD4P)l)xJO{(82P0MO*esX)4m;t9cfW%gYwI55vxu%U}we@2JRF(-`x zkBupDR&wrRXtSf2G74;Yc)k=Vn`3f#wU=awp4uzx%5(;I_|K!%jT2tURu+<@(#hEz z+>}T+=zeL-P8#3T=o$^#*d0@EL%0x6CTKPol>DH^@mGK9uMrPq?9qP2to(645YapA z2XD*p$jy=(L>Z2yPv+$CAQ6m2Z-?^=&7-+?v{pojKY;DyhmZnkyUo5jo2;_lp|)U0b$v_PFya%O zbnd##W8T2q5A;hQ((wSd?PutP6RBtsx-@2I&{&D1<9ip0!!Ui)tb>Y;PtqSX00PDE za#WwIdYUVCrlZF(`S4P0Ny>wvWwvW214exL;pCpKZq>-~19-FMRP0;HSKDB8dD{A7 zm#MmywBb^96ot?Jtrp35^C!Fa;~zNblEI)m;}_zO8?%AoZDm#sH+hS=RpI)pp<4)- zhfZms)t5$ui#5koJG9T@aY<>@05RL-$+$v`Uf8!AD62I~Jm7czNenmEc4%}|gt=uk zPFxBLn$ihYgvRmpJgIc|6FzEv!^V5G9$9E|0?p!I^vr?WJs_NLnf^TC4^g;^2iV&E zGaa{J6w);_jV#MqEhlF^T?8)msDg&Vr!C;6=sE)BV}$#X^Rv;mJ%`9n0H$48lo!-* zaJtS}I$598jXgt~YtA3&6^&QBJO-&e1}4CEW7lQW9}r&I4SkUY)+cuUuzg3Zn_TFW zW3KNy>)K9^ybiLwy+=LMor~qi_?*TaSsv{s4VvKTAE(3SerGe)j9wbfcZ~Kq(RR*v zb)}{kghs(+Z=z=-JEkT%fX0RLr)zsYD(co+chNz&|*#i!q6EvjLU{!n4}Yh3T(X*b=@=G12&0E|j+k+~1{{(Rf> zNPU`S#Qa!4^oV}aHUAUG;Xh*8dvB&IO%IZ9MGCuf8V+C_etY*(x=kp(a1q#gg`tpo zze8tfEx^FFgTafG5uITBkO^pBd<&4?%p(0(^e(j^X(m>NQ-qPNJ+DH<9XJ#DnR+g|9b1Vu4PP2>^Y>Ti~@UK)IYllbQ=4wtl`2+o7{%M9LdFDUTUx?^m5tz=WAO zaKS0X?dLts?wX~1se10ae!lvt1{flkyh&esGECdiom&rQJZxi=l)TVs=G4~a0d8oa zThFehsd}Qg7%$Z(lzi(m9%nSFp)+$Mn4qZ+#B@u^&xW>80F<7)oAkg{Y~dwW5tSbK zrafjS{0^op5k}3kgJLAsfl%Hj?1j8<1Q*oFp91?$Na?)&M|(s>S=0aeM#ZL&diC=iW*H@icr2b@Oy_|-^j8CZ z-YH%3BrYR2hsYzjswQazq_v3&rle&BG9qQrg}tRi$>9rJ84y3$CB3bTzF!=Ez&n4I zX1?VCirN6#qp{*npA3oFQTreK0-S^)Z}XzNAEG+^oe8SpnSqKCZz{-}0EtcRcO{-> zFfz2A>5}4`(FLs=2iEgA%*#`59 zr5GLiWoR8F2A@-u*3modBi(w#vOz-mwPxJTF)*rEGeh5alAWomqO8$?$T{UErIon_ znA6cHa?8hAp40h7?{Ya(CXR$U1oJWkoxvyq6(vF6@AD~$EbyhJ zct0(WIavEKB-)~oYt2J!u=d7cZq#%Do=n~FgNcixY}1Z(EFgMxeox2Ytzxxa_%-XC zqC>^g;2iLWmh`RKv`uXYhAY%Z95d)X^%jBe_HYJD&OmPp)QoGkBFf80L2iEV@9Fg_`c8pp8wp!WC zMMDC)J99`EhR8LJ(BP(yk^o5jNlg1Zgv8SzE%?#CWHm zgx&eZ<)EFGACZ%p^$Eu%eNdmkd~PyUZ{K|D5N96u-i`-s#eN#KB+iuG#w0#cvP%TU zzw7iLosE97nz~oON=?q_2cK3hO1h%a83sE5#WCh?>ZCwUbZul?Jvmx zE=(vet^ml%`w(*(qZOUZi%j*#VbR?+`GfjtoOJmDlrJ;hjP@;}IHSo0Aa#r3IjE5m z?c!9j8aB4iCx?Dw(y|&iWDFVo29iU?&~NR;tbmzr*xiQ4?1aq`Mf*ctFA{&BMvta; zn0+5-lc;vcZl7n9v37*PiS#Kt`=+D~dnQu%wx|uhE^6a8tqt`$qVuMw4U#bOErxaN zjyhJZ$Oa?Ut@DSqMak?F09hvYA2A!*ao<~EI3S=rqW?#d_`iUBRADs!=$c+vQ}_=WF}(`g#P2V4q=t|Np3oo1#Lhl77#2I0P`KApXwS0M>+b?*vf&Srz)S zUSDTTnKBO?13ukY5=cEXp1Wh-jgkqqRdi9?-AGzXovWygw<8Xeo+RrHrG9zA{Vww- zN{z{9F0pykgp*|*px?s(JwQ(#6o?y^g_8+q^U2~-*%5dT*UpS6L1MgGzVz%qUE*V0 z6ay=s;y5Qp5DKD_VKLf~+j1XN=zUBBt3{`j3KLv700>m$%dnkgtq(aW`A`oNnX&13 zW7PdNGx&J+iu>igZe6o{-i65AjIVmXzj5si)e?mEtR_KI&uxMKhbI1##9!9y^pWw@Lo7fNvJvtLRMnsW zkvys41ug^rCzb!tqnR;}BidTCb;888yjk?3HEezItn4|rqTvw#qHo}nCde-3hUgbx zZEJm`{UesU+(t0$=jqw5@1cKbVguY1t2~5%rlPa|(!}_$|Eh_d6T(wK{wawO{{8Js z`u_(_{O>ql%gPmX1-)k`iCz~9sh@)*EtWY93fsgIPm0-TA3h=RR{(qp*AT&kiH{Hg zb#Z;5J(*QUiR{;By;K^rBY~nqR7l8DG~E?if4=D~i9;Xopa@W$Idgw4yLjG?8J?GF zF?-H&j>|vp{=Kc=l);&)a=hDw7Ls+ng^T}jLtkxh zbb;XNVpS0B>Kw4e`y(D1mfNs3f36|0Hg99V4pd*XP@xB`Smu@Y$?dVpC~ywu{2jt@Ihq&x^_udi?eS6MRo_+7qb9(xyh7zoLb^t(5^#;#;UZ-U z*rj63=&w1gLoqFlkw@ryQZUFLd_;=F#Yqg|5z}pvg;FbjH&E zg8HVru6P3J5FFta#Vd7RP#;0JBI6u;Y3~Tc-fL8{s=c1mvphxSWx+hdPbGOj<`opy z4$q&-`s?r4}+e#-9 z82xSNwC}TDOQDf}QE1A(Bhg;OKc?hl_Ni~*>{m&4d$lI3^M%H~SNV|E_Eb5S(Q$sb zPVA5_c6(_o*n?7b{ql6pdjCN9K)WxAJ~YkjJ|HFtNSiMXC+>C<$twa>1(jK3AwG7N z5C=UwVc+jqIR`a?q+%Z7G&f2DQFe}68?XPWzjN$mq`V*Dm$F)*oRJnojO%z`&hPkJ z#FOPXBUh6GALz3aR7l;So~MP5&9X=`UYMT#!oWbs6(vmvi}D&wcA^}3v1-V(X_SuO zZvfb|;~8m8c;ew(YJNP`5n*kj#avku!6uYgx?-cK0w@JsvIcwCC@HxGQ!>?QtRw$y z7$vXaji%ESvo5J25}U0xnO(LmqE63{AHYAg8Y1i*DsGC@+suzcAm+d4iAS;;wxu!sx!=*1a4 zpYZl*xs!5jf#i4=#=<1Z&$TKAgVT%zHtM2mGtoUS9pCca`kG!+G@4Q$BQ>55$>r}H z_*0IiGLSX&E(=+Kwqt9utxM1OY7e7g@o06L#*ZR$-PEPqNU9F1T1;4Xv$|(?^QuNA@AdVPjQ)j@4jRZE6I zAYIzNleV}wJ48cpEcWMwqA0wJn!bgtf=0te@f-q566_}yFUL*#A*Kx_(51he(@ z6ICkK{r5?aGatVFote-38h|PXW3Hg%LNwpK&k1kpZ^^k7+S**f{UU>XP&k)ZtmV6| ztO?}9d1?7MZmMgC`V^5A#xCho%Up9>H}{CVQ`iv_6rB3f8=navLZ#IHD4J&l`MA-n z_6EF15@!(h^_Hhe4zRrSEy9g|GPD%2;pVphM=19S}x-D3-y`OY_|uD~YRJ@=7=eMwKO1 z<7-A{?-y*XC4(ihhB-$EFdvRxOYV`r=)bZnz$KaIAti`^MmPj zkhNTB^f{7l3p|&8G;AxQ6{In?CA;Hl$S1Dc#`cENDjaiw0br42|8vJKj?4`Yn&YK= zNNJ0`irez?2iuBv)`i^EA1lOPp`n{$IGctMJj@sU+H0T~Pb7rTz_>*)>+!j7bo*H~ ze|m(ra=MgxeXi)9>_@cHl3%YvD+I|nIJ2^K1CNg}!K)Zlo-gNUI5p_gqX+j)t->!6 zMhOPj{U;KdMF9RZHriR!#Jl|%wc~@_T|@4>Q~~^pHX!dJ$TXtVkNifWG(rTUp?sE- zl|l%IA_NVjs95o{Hgcwjc!$`U!!w}qF(#f{UOeuh60p?t^zfzQbfx2tZ-f(u=V(bs zY%y3f;eo6`3WuOwh(hFyl~<5=p5N5?fes_P%Ds_H76C<-DU32rymlFa+RAQ{h#OK*M+Y=XeRXU2Wbdqn%%8tC)2@J+Ji9B{N4ia1AnN zB_*S>U7P^#CuO%arx~N1A}dr6pw#%P%BGkaEPJW>i;!*yXY&nRt2JF{pBdBDH$I*V zw+tr_Knu1uvJY^ZPj#*N?<1f482A^Ifaf{g>T`Rwh1`>~55pva)z^&Ga0OB0+?89M zKXydhT#+1a+q?%ppKw{HeZZxE4k2m)-UPhUtZU~7B!E?S;)y;ylHp1=bz^iMN zK%9|~hbjlVj@eoSkJh5>Ui|!t?o?dO0q1aAy9eX9AuKtcW5>~?JxwqG z>`TysMuL?d+6cT(tmjJPgc};Iu(wYE@V_>nC{OUR#MTwgUZsIyBDAxpsz^;$L8L9_ zUBlUCy2`7Wbn(yk{e_&r}(gSm2U;=$!!rY)!#Yk!nux7dM{Q3F6q zhPHorw>~)N7TY!Sk4d^kX$DEMWn=fBMguu3m#_G#iG#DLmA!?F zgoCrXv(}bmuwSm3l0kk7AD0GU5bL6bw1cke)&g zsuCX%g2L+DQ!gW*QISJ7NO+24!f~)fZxa;T&z!IOF5wVEQLUv|Qa_PTwg9FyY2z9?=KJ zyAoS=^0^Me(5^;R#>>Qb23~hy_`lcg@rjy`>sKZlHL7gc$B{4`D)))wYacpG z8730jx$!>cdgfWEY4{vbII_?84kzHQ(%S%9?GRlzGje;!e$2M& zG(Yv#UL$V10_gEu&GRwU`&l8+C(yWfM=As zDoOU$8r5?!e>?L>Q||-CPqSywyYe2oBAxk58s#mpn-*nqZxK}vJ+K~)8zE0<2|?Se z644zX=OGD*!*7H@t5F$HOnZmWtdW}<*c@8ra;U9Qc%e!iAQ-{mtaUz|P;&@J7(e~p zk`7_f#|r(Wk9_|V8BT!zXC>MH{igjBA8JE;sx6@lc%)5|VH;+UB_u#g#3spwM3fTg zqKPE@gjPl=h!FWk5pQb9g1Xc7qe*KqYJC~qX6vSLd8;y3C@6xLA+^Ki0#NH#A-k2{ zvaa(BaP7mI+0H60v61B4^?b$s+5Vh!pWhkUy|d}WiM-U17*iTv#2!^CPRbsIaS2zW zZWA=;&W=?D9b)`S!j84HE}9s(+Ew171xv4@c&=>ns+VfQ2FWaOwKT5touXQd$2x0W zqe^&7SVICetTk^C9((G~2jDQK?tDTGx5$w2oO+dU<@6{4f?Mbf0iXuV&6S4|555+< zJQ1NAH4eLhyb=ReoRldGJ1XRXM`C%rlAM92(8l2@@UH zAlztEMo@7Nt8yxM7g8z~XYa+G)JTuCK$7VWtQc88IxJh6P%5f7_hg(FHd{2YAZv8P zQ+un=Cp=!B;#V-pen{$AfP}iH`NgP*Zae~kxf()N3ff^z48Rp%XReE(1d@a&p@7gSYLht*qDuoeKfLN{lph$%Hj zmP&Dvjv{MLlT~$fCbn1}uJY82(x@zFrXDBrj#8Bs09FnXv(O81 zk@=w-DYnS;$-vaBiqF9D{V_KxOf;}^=v`DWI-7FZzV`Vo_kkA77KEJhpnF;q-IUI$ zhv_@0&-RBeXV>QR3ZIGegy_`;JlgV~6#b5RNr2{he`S;Qy~*%sAby$h9522rdfH|! z(*6%k=aA^yQk%O|PFMQP5uh9yJRJmx?t$lc{WtH9z+^vCZ@c)w=DWSg1Y@8BvXhXh z7yVr7vr!vOSMu#qhXaKr$xcxkEhjaGe3QZB>W65>yD--(GFcT$`dl4Xe8rfxnRhQ&!e79oHnGkRraTl{i;o553G!S*x{nNaM>*b$ zKP2&-(_OqpjOsx@0y_hWSBf97=u)oi*#Yz0C}wK9na5#P$$NOHD{ZIH-bt8OstoJ0 zkoVv6ja*0Xh!MgmHA-_rEV$3&%V7r)B~TZ-v7BE{PQ3(9VOJp?tMO1?P#}9^Dq5M( zPGk2Bz(H}3?l}(u$9~I*TPL_(Gn~qDxT=cpOrNk^)mc|19zRsZ!coh2T;`m01_7$i z0)!SnXAgWwM}9*s@S1gsbLO{|Z=4>pdJ@|y%mVg`;KM$yGhC%@cwG%TEF0@D|DZOq z^-zf1Hb=K$ML8&u9B*cY>gGnfJ15ak263;Lzl<>I2DitVN;WG&3I;-ah3z64Qv^~YsxS%Zg`2X|XQrQ8C}!s6A2@KQrP|I`Z;Uo;8(bXhX|t;?+Doo$G7SEVM9!yDb8s|gOo z(@A>}laaRSWk1vmwK#s@MXb@#Al#T6<-0c;oq2Nlxsf0{vVvXFrTZ)!fl4Qy>Ng#^ z`&+zZX5xh~MX6$@TK3orCO$-x5zTeUuRySW46!^|9_cZXY~{Q7X(s@?;S5@GIP&8_ zeKcuU4`wsQHAj6o7ie>m&Jo735v5H9)j}c1be9I`BEb*TGb{6=VxxR}Me&|;i|mpK zT59w+iyA{IRN-V~B_FIef8aN?HVdOV<>Td&O@;3iJj;_c!p}I9i42vcP%;cM$@Tjy zDltc*2YvO^L4+?Zcq#ykmjm?3!M4yv-{`~N-b9!dA`FR%l%T%{9SQbaUa0F+tlXaCbF; z2HxUctAyT{3O;a@0QBX(2#Y&ZsynIZkF6lsV^Ocagd`e^KHLF(ov5Qc$*=ufkM<`8 zo0z3e089yf>f8mq%s~D=D{aS5pIu{YDz}Ng5unA!y$>rOpC|n1nZP&9zW3RAM$5Rpg1qKK!zi#GBcZ^evU2Et2_;TY|%jman>d3@`VdXaSDh} z9^wjeSCJJ+F+C97(_R5+!Hbc@^D{H`P*oJ?x*8_sQTbtg|!eV!e z7PJi5QvsuE1=!=N=b)RQi!v`YCNf+{g-NRLJ&b5kB=G{4x;_E?vBB5UKC8k@qXfI%x2-IlwUjNtJHq`r1u!Fn}r|w5( z#vbPzfdKn~bWt%@0xNQN4k_+%y-PiwfLuudcL4zYPX;2vP9?FnU!SN(J2%KrpED#~ zV94L1pcq9%(nWr}@smG&i}4~ewkpy;Hr=g< zL|Os_KOpgOA+SF&DVY3`YV4m32lrqhU=FSo7qb;Mm5hw2Y4cv5B^^zJUx8`FM1CXd zA2eDa8dy;w=!_d~yg+_~R~xV|AziCMGu)_%e4KZ(#ih6KGtNp)I?`=3_vnlIls_Tp zH(6Opxfarj`J9`l3&+NaTVP#p%_h)4w%-9r$3HJDygyX`Ne`K`s=~hhdj8B$zVZes z8{6kgaT(y=IIW~)7JUrCEsK#ap1PSt9My2!1$ec>9|a(!{+s@ z=KGQc=o{;yc;u^@-P*%&_f#Q(Imy%16Z z_Urcd0obIO`+$+59g1jJEY_n*8okH6RY;5pXHvo2_Me-R!nDox^NL0T|l1Z8B`OqzoD74R>m&&?I*c%IyD|r0iv_$kterjkvqh@+0@k#$?alO!a z3HqAiCuPtOk6o{*#qbsrYif`I+j?XJ=ZUoG8mZE9&^C;zLP3Gs{!i#h62V>k^aVYi zNdNze`u~k~{x4DQ^mhyNzlwU8IO{}tX_&7PXo~6bOk-Ot-aUgC;5=Yx;*eKhU$p)8 z3bjXIW#ToLD?ldi^QPJHm;X2Xi*+Ilq`}cKsO{?NwWD&Qrs2kf;_A?2OZe?USkt|~ z|G+NCCx6?2R|`q}HDZzCWdLeIg@1$H%6E0GyEPZ+ND6NiHr{)1Jsb$9_|Xdj&mHD- zyc-;|DV^QRYGz2Ga-5jLo&IH4*ngx_ab}AJ6SZD30*pGe=RKG`#1QM(ben2%+n1oi zm0p!lhjO;0!cZmt{PEE$qF8RjHIb0*6n}2ITD|P9TNdSGT@c~|j^?y2M9>lU_r_G+ z#;U@xmrN=--9?Ft`E1gh6Qk8E^N*m3`VVvnztg5)-MMkBY>syRA3Ov7efBH7qGk1* zzFUm|_{|I-`}t~bKOaL6oF=Pj&J}DHc$$F1)uf(Nxt+KWoV!FyS3h@qJMyNBHiW_Mrb0)kU%*wr6CNv|f)Ys|R3)An;d||63bh~gyp{tT5V<1^O zPJ1^Nd$bJxk-f4zj_eEXA(PP|wJ1{r3+zRv?Is<puVh&D7U^xYhBonxK#2>xS6H-c5;5w3R6&16|B(ED zBkKPT{F6=_g9y(SF0CF80SbE~fh)mye-M`_!7d6OEhlK?Zj~TGa@ulm9zN>}eNyPp zlb@wAu-VO%frF5Qa1`1BI>_u6$n{0Cug+eJ0k38JWo2i7@y|P{mQX(hKLo}5?YAqx zXaDEz)|-AnzJFLm*4cFo2W=#U^fHQda>>weO0lyl9W&iXlDsl`#dVqqw4Ii+WU?;m zI)VHe{Z3+1vUmD8b5=GM>8H_I`662S;#}!=;efN8M{@97)*9eDZaYyiy^BGweQP-rEc2wbyTFwV=!)s z;mSKuE(Do@Khr~&B`60r%WNDmT9U$REt*i08{3YGFDwCH?GuN^&NO=lMj3u`$rM=l zFjEu++Ps1vxrI<=wLv)DTJ4d_*aq$L`1aWu5&5eOvIBfv&(roJP39Sy#^vL5e2P^o z`V+=q_;c>!WWe+rrf*Z6{he{~YD5?I_;d|?q0NdLYj@nm`s8SpF7#P3{qPNa44*VB zqn~RPvnK$T^jVpd*>CYHJLp)2<4M(-uw}9q&1BuhQCuK|kv|Y-!Y3={e`VN2lBVQF zk9-|Wv>XoyODtBsLN{jxjGdIW2FzdK>05`UI99~v(Wa1iJ5oN6@JmB2aMDmqAjWmG zFUNQ4MU;PoImRCTSB3>mTI9ZFVexwi!?QKX9s(es)3T&jaNVuEs*H7hIoOXR3s!8? zp^P(a76>2Ag!QB>8v^+{GKE0Cytsf7Z7orel<}B2Dm6*WamH?!b1~zs3vI ze(($Yq9$i>-)8hYGtwERLc&~z)D1o`*8!JA(NP-7wR4#jH4yobMMZ6hYO;np3ghJj zokag(CMaWY9L*Od?uk4N<{Jds8w3P6gEpC$w5W(f%o`xcbkKK-<-h*E;2N0U%KnF{ z7YaNAxK2*b%tjM88HKwJ6%%k75VA(jGU^JI=fa_4fvQgmwnnA&p}r{h|Z_X??de zIrg%{Xy87&R7oQwUslIc@vDABr;ig5Pbgfk1OP~DEZv17llAl?LozL^*_`5;1s}A( zK*XCwIdjNGfDNvg3y(Os~r0Jp`nmn(|TJ;!8qxCMoQXslhly7tXis z9x<8dF-U_*3*m%=h`~9>jNW?f1}A#_{vF zikM!tAx?t87q>ggf|nYk-l@KQ_2?({2YUzvM%lYC#`!zP7ZC7im^DE_;UhMy8vVn& zwl8KOeISG2v4&D?#dqLdyo(!1!p2D6hQa8eQI)2jd_{R{;-Ho`^mA^dmWc}t+9{;k z(e7roB_{4;OO~3-xm%kJOBUwrt$7BMma)|9rcoXJCssB3tEr@21a|FaPA!hzTc>(^ z*|W8%!_IrbKVm;MCz2ci@8CMP2zmvtj(vo9atp6FCB(v@Cg=MGe1RD+`_yV=4__nY zTQTgq2?)Bg4&dgXTZXl6n8)14>Y{!`^4WiWvNgZ(TUoo6R!k+9PW$b>2J8ekw<<8; zbBI-c*VLA+V@W?Y*s$c4JCvyII|?sH?PgG$&`=xXFnxD7BrOjIhH4gGpe<0WXq_-R z%vV;ciH7B`78iicJ-_ z4W}7k4>nDsHD=x$FQE7n;JhE824FYxUI7j*pavpu7~WMw$qR;k`xVYVWNseZPi*<* zw<^9tC~7jhTM*=dxRd(B?&^czJkU6LVD>NU0QpK1^Sy)id0_M}2+sA`K;(hA9G)5M zo&k2Se7;8Iqkc(rLG1D`cbm+wKj&q_m?{A6NIqxv@lGAsFL1vaa>*0g`KpcXaR?db z5H<<#k5KonBh}FR?8>c;%*se;-bC>#{3SoGTmS+DEPVryvo{OZ~b-rDc@F#&B*T4E{?UXL;JFdT^VJWu4uSHniBWA!Z zyK_^sq%{t+1mqW+ha83w!NY)Jpm}p71jaG9GL+j29L^(HqTe5x+UA8+Rb;Fo-wdFW za;r|mS(RCz)KCstn)7eb`LR!=LCg0({5i7VFm-;`dU9yR&u14C2g>`X@LR(d zebs2p;g5j%!))ucXWK@S13xFR2PgvNT!z>yQf+I?5{%V?ZC}NpF{^3HY9^lANZiI> z9OtRXcANWUo9&3Y_C^R)@La8)M?X6tt&exy^E;ezUe@Xr{7=KqJ?2JTbTuyh_CaZp z(ftjGqUO&z#?BS(P6eda6N77ANCtpOZ&Te5y>Efw?#bbg z%H$itbG=Ug8vX|vu*!3`ucz3uK%|E3xBk% z(keYZ6d+?DB&B=~Rn<-nO|%$p-KfpJfrD#H`3F|8kClixL`g6pUL+=0Mww6u{jcrc zxRc2>ZNNXqe>tvLFR5k@=b!bG-;AqE=h3#MqWWwri7uu0ev=*%K=A+eCkb}cl+fPs zED2;ri+@SUM({wKn!b^WQW8!2>hDcOEJ6wU^?6oFJa9963Q#JhnjXFLi^n;G!v!>Y zO6U)WhfSvN9wr-AscbpqRb5qlA=e}2KC^#Cu9$E~E>(0!+>$ip5cC8%9{ZqwAy@wS z-k*OV*Na`V4T94)_O}m?0g)Z+rFGCwe$=-In|U@aTm=vI z7jjLd-S|STXNWJeiHQoML(E$v)HBcBk&LFI;w6Ud{kI?;ax4N*5^x>AI_B$m`Jhad z^uD{4of?=9sj!7vif4>~_p{W;OU=Vr`i`U~=l`y2dnNa-^&6N{J3&?P`3G`!`-`}e z{Y6|K$F=`~TrXD1=nk0kkgf{C^!veR78y}J_$5;JQ5x#l$D5`hoLj`#z~; z3A(*1<&laq-v5qi9(ZuU{Wa8M{h!G7zpX(1J97Q^>-9ggn);4kQ#}GJ4fGp{k#wJf zaj6Mtl!<0|BZm8Aaqu6oiHUZ`?Hn&IlC4yHcEsD5>nr{f-jh6+9+&HH zeh+I)h!N$n0;Y?lmh?&0HrCN4k`^fg&a!IRNyU+AKa!Xv4$DgwsjcalNd&V}P$lvw zn>)T_*|qT5k42R9MXiaOLt$>~wy`10cW3wPcIe_7PC%o%Xw{c2^YZQ==tjImd`8?7 z?8rujZBK~IpNpFN_z5|%Rs8-Y>Zf;Tu7-2AwI#S}2a9xT*J4-=AVa|+*jF)D6QDe6 zu!b9t3_(jq)_*bYzc5te%go73bCYm0l8sL&L! z$H2s5lLw-qCOfCmYK80~?JIk^GcaH~Tf!{$^P%J>T96Cems*^mYdRx?RThd##!nT} zsRs_BM?^=10uaWh$OxSR=<{8jn*thY} z33SYA8iz!impAman348}stQ|Jpss|KO;Zobs#Tm~p|^%dF_+XtSN4$~z{ZiY_SNsA z`y+}Zj$DV9qt5-W@aMj)0gTX6%FPmBaN}W%b_Mgv(x7mzU}j+S4u_r1M< za>hme5O{QVkhzXGO8_;$2qadGj+K6iJ(c< zDN75WBln_#Y^_@_|2rx!cPq!zP*r1-h~$zfHS1}`bW6jSpAX}ag zN+awsh>mxJJxF8Hnc9y=v9|z|r3QTwyS)~LeqoJ=?aWsb21iYZ)1q5Ph5f}>eVC7T zp#v^9!;C?nW?&sIH$h)Lj3zhpqNKf{%+J&@cRB10b{0iYV{d*QJ zwMsY4CgE zuLK4!Z>QqE>uKO00ib}0QtrIly^%Y{gEk%p|99d~*<=U z5yePLH|OJCK6=c@oYcoY{u(_+I5=_6=y0&@z&OCSTHv)?2ojlV=ri(y9EK?SeleT| z9D{3Fj8)6X1Q>ASZcDgJj9iWK z{2e3@yNLF{sN~`}1psM=sDi~jy($1q1&XiZbP=dzhqiRzac=8i0C%;+Omc2(Fx=NH z+d}ueT30JBLccMvO>|o>y&2BQ`=5vU`S9enxNhi|{^I*i&0NMJsnE&1d`LI?go|l9 z%Vysg+Zk{yjRtvvY5DdTS65$hHW)p{Kgi+@0P7)5_$39|09b#>KNm@>Kjw18SICha z`~_}rLBIvwHqBPMJ>1?!PU48u_Z6xK$!oCL@=x>*j&Aa~&o0I10M2ywhpS<2g({qi z#PI{Y@44Z_+2mw%Xl|!1Zu!L~hq&I{d@2ya&mt>dQgp;-Jp{Zh0sTtPW={iywu^Xs zDSTG#`Ny2N9$=3y&H$B22!40po?t?9=R`y}9_p(lmeEGye1aP3uvavTTS1 zbR}Tn{wpQ8i^5Iy7}X~TWO+F7o)09q&2#k$cl8N!B?$2h0DlI6KIcbl5>7|I^@4hl zFPzpm9R^$u+j)RSzyTLt{b7~y|#_Li}YHj9>Sn3EQS~d*;rZv(J_89m%p@OLo~mO698cuC<;W zT2wE-0K;)mKNSd0BmOKXUhkSFudnjxLEYeB&*2&e#gc1(LK=b*b%^Z(c4Xg@>Y0Y< zhj+3cvYmg_xe4t1A`DYg$e-AP_P9zEMW#G?gZUZWTkdqVlCC?V-8=xDW9J5isl%Cm zHE9i^wk|&v1N3~;uly5iGA=Y#Pwlk}mq#-7ule=fk#sz@9O#FSy0u*L*WLF= z;C-D<(vD)j8xVh)iU#4e_vmSFJGA$nRra3Su5)v!UAvN&v|&peHFD;lAK-r#z>Ewt zPtsE|FPXN=p>>2ut!M!5>O9I#*R2TG6*5a!Mx+N}aMWqq}{VjGCoMto?8 zU#)*$=9AlT3G|7&WrPB^pMy0|q`VVPGd!H4$J!xGb*$~4$@5rQV@4^qvkf);Nl z=pMaSTR~sFw@@MXe867bSAp9KVt>WE(k{xc|Ja%3pnB}G|I_be`EUJB|1F^NzulVs zC&|1>a{|b6CivW>vR^|X`PGbpHz7+Z5046YK)EIrKx+;E4GXkLF3FlNekx?FP|1)a zH-fAi(`|P+_PBHe8Y98gZC?`GVdG>fmgo!a5zygDHSd-<*XZHQ{`}d!z3>0r5%>8% z?YWIUYw;Q}YoQ)D9+hXSyej>(d|&2US;;RmPCU(qBT~vTd|GwBrC2DTM{~0;M@k^c%PAnO}l*2-*8yRf^9@&uqaFf zpaFZAkt?|iL*afgHm`ioLq2Plpl14J$OwZ-kFr0y{C?pu{uu?rodsk#>Emc(num|s ztFmIs!(0XiqWY}V^|&PS?_fknXS09PA{QkyE%tung9tKx+}*7-VJnxbFs1Xa@F>f$ zxw1HbZ9#x2&Bl8_C^84tk?X@N&pnLkJOY$v3^CM;$w=uaW=GMlMexw^Q^f~D8#Ov|-%WX0=zqwBDvs1C%UEL5 z0pDkshnqnwKOCxtpHaEHtzj7#G#$m2l1;9EZ69c$WnT+GDefc zKi0qiquFCOmybCYvqBq@bX8fF69Xtd51{@n`sLKG^SHY1A}O3*c<3PP$dpACKhGm! zH+nUGZ}!1z<0j^-CQovYqX9>r)5LQ8+4NZ(zKJ8bKCpR@Wn8s#hS$kQC08_!qT-8I zIaDN0MuZ>p=<)rsiyL!qNVxJvnO8$h>IA6IIGVqnaBJ`;vG2EYg6;LIcmm2I{J?Wa zyg?D?P<{?MN6RctmcpvCU`UrA$Rsx(rIs0IG#SO70b7RYRlYgYfN7<3PMvfcixIo7 zFf!Rv`F7Vzrgr5vnlsI-IZI%bbPh4WdvS`_s7_lKceJWB`x(1Ka+c6cd*>Y#K{orT zZw%^Dbudixmr2Dx@}9y!@-F0 zMb=~I?5LL;eG|`)D*c~qOI2gz3UHZciN}A zuZ*1PIX1~iYs;?(F~bb{bPqS@cf)}oN~aJh^rsv;k*gC z`( z@7+}w{~Wcqi4k|0jRMq!T)Q`dPKe5rZ6V(32R1|11=WV02=a|Xy}MLWyl?U-}6Z_uajbeN7Jn+9s8n7%$1&wAk=997P#y1rkj4JqqU9FA*B;djF8=X3$_hiFQ;b*n(OE6Iu@UbZf4Ob;zW^i)5;~5vuhJ)2P2!?` zGm+odaMJ0_l0)lEZ<(1$sJdH2=)~W3NaqPh+t6KBLO&gh^7Hkw&&e(b>O913trD9d zX6=w)sjO2y6N&ESR7Q5CZE3V(H}qA@$Wx+|e5!zttPH@A6|&5M#5Z_K&phk_q}5=; zT5O`XTwB;TfUyw&Gw&aJ4-Ee#iYbF}`JA4JZg8t}85icssSou2wn>jI#Ba(!#)5Sx}kRrDy;KhFw#lv#3MSBDwt&bAP0pew=vmIf&*|O2;dx}f0mFg4W z+^kvEuUUX#`qFl&gR%NjALvWk@N$F9 z@-Tk&6%lsV#T}C{}3lj0pykdg7-Gjx!q`qozr=`M!qZV)zAEY0m) zfgi}#fS~(>GhHWlXmuP)8Y?%|8}NYDy{a?UeSe541|+RaS8xEBQzyht4E_szfTb)5 z^+vDZtf1I5FTXb<6hSr+*$kUK)A zC(kDySB0-1x9`LtB}Om=%Q1~~@?we=7S_rg^z)Pj46;oR=Gqlym^_q=_21a%BqwP? zgiXG8RTNj08+=#9PBj~gA|tD{Wc;j^$6QHal#{cpPyg%J>}2dABYZ%%5C`jq4-d~_ zeOuJpUP~gsG=^_MS*5X(kTGRNbsonD$U{w>vT3)-!j7PTuAx_|<@l*!hknwC)s)fe zxC$zl!Qu`{?K3!I_gajm6eh2c|m;9qD$&*tr?Zn+6$q!zITO^S(RkOUD($&02(Ke*B?ZPTFgULCJvGGum z?_`Y}#W4`hoD|%_kwnK7+ni5geo>zaf&B%LG|7fMoaJuE3 zykuHPv?G%rDvefJXR}~P!fYGfn5zoT4Rm2feyO`vuR6O(g7tS8)7$Tu98Tz?I4`58 zS7DyMBj8O&_~oi96(njP-iP7h>~D&V8DqRropH=MTS`|e#8ap206Omh7{&xGvd_$k z-YxHqG~&a5QtqwPKhFp%STXhdW;t=psnBLzvT>lfv?i<8Q*>kIVdFFECo&4rYb=)MxG8gc_mCqOARp$@v%}j_B&4Q(2{rLr$JikaAF{k<2Z+sz7vvdLhE)C1MoW!;7*{j4XVdB}JAKjhi{#2r%Xj>JEPX=zf6q!!5Go9rU9f^QDHk zM)Rf~cyS3G^b~smxWslo_rJI#?Uz0NI9>bAeE;i*(2BuA4c!-PePUNbjc1g4wNb2sBZd0S^0l_#s)b zTyc!^P#t)RnFZ1Wv@$JBsxeYIM0W0UCH?Lb;6mA|H-T;VFqYb0$pkOkks{Pfy!e_m z_J<-X&wPi}muma-32^9l{73Lh;Pcp!ETb4v59JUWI?x3kb6Kf;dY z!l}~(c^rsoZ=9Uu<+@R^v2$?AnvEztU2N2okaF=UGafC%15DHKj{ixI!F8$use z7}7thBxz-+$uJ5HBt=YR%h)r1{j8^=K-ii;B$S*O8?ZSZ{+YrngL-yajD#1X!WBBW z&QdUYu(BIHxaJb0;KZ&fv1hZm5;R_vq48PycbXx;bTNo>S45D{p>{IWalxj-rK+zE zS}~gi&+49$7Epfbl6Qx#&}%9wV9z9}I#y8LU%JgNN|%4s{mn~+D{d)TtNIr`R?&qI zXU^E<(QNYprRYNHsR~z@_;<h znP|V+UY-=>IlZd)mR>WWxok)6pPX!Kje6^%jCDv-sf|85FNlU^cr)@?3n3NGswt6o64{rk1V zO`D8zMhPHhG~=0%o_!-D`C7_KJEka8aWdHy5rdxk^{fOlp_wKI0#smxHK&qhLyj!@t8Gk>^-w+Ov2* z>C7}73fOrTD5^rjC1uf0Ni&4+=eaEYX|YFq#gu?-?41Fn@DH4?IWIPTKGiq3JLIG% zSi448m6+F?cZ?n;bl8EX`2b8mcsu7san*ffYZ~__(jisk-vs3HImu$3kx*%WsdUa* z?w>L$acmy@nAxOGewDQKSe^6%RjXQu%58jt9)Q&i&kDQ3jX6Cx3Veqcc=n94nml)& zr5pf(6%=)B%`3H+@BGlc-5Y%;%hd}u8v8`(no1$it50f|ekYb7{w6<@8=OyuS!4K-53a#EATMAm`f?S5fdn^X!0pO2h2HLzFj|#8$*|V6wZz#${4EQyE28q9u2ZohJTJ$;%BQX< z+fR9OOkV8%YOiolXASCbgqlS)d2?J=dxVbYbxfY<+d*EF;d0x7&(*}~-O#t~$m#wN zj!SWJLVZ&_Y?ut`d(Con)yJn8o^DaTZm;QKC)gydMpXyw(o8Z>MMSgxI+gW`Z2|zD zwSpku#wTydjhfolhAMHku-vq@NU6roX2q5istb?jli+pqec#5jZYVT`64-WmVlri% z0smM*pEJBx-Sv)lT8xR=fYR7nlBj_u>K^{%bL=yt$jP zh?|>>wTZji|LoR|RoPYqGJFI)b(gDu8KR4zU}6^H%VY%&$DoX=>?g8D5Xxc^kLp(` zsk9fKd)>t)CPd6yc|FCk`9C|bX1>;Pwi!-$9Rsbfu5b6t%fuj@H;KkWj@ld1I(dL0 z^5;RJXNH!?E!Xv>Z0!3@?w{`#)K6+GVVcRR{!>7J&qxZP$5b;N`6E_KGy?iS6`cyg zD(PCg5ev;zpZ_W1z*)o|Lb{Ikv>za&#o5Ts$^NIrs2TJT*A&K!VaB$MfbLD zU7kilsQb;)wNqCjw@yy6tv|7A=DmPkFDO{KGMp0dHWB&<9E(32!v1fQs?)KNzToV< z^{wBb4h`OjaiWeu=1DhiTGQ}X?~jZ;X?HF?ZUHU>*rEzYEHz?%U}AI!mIvH#j`)=I zhvEL6lPqt#Y?a()EXM-ipA=2r8-*(YLzi5w)z2?;Wl-{9IsVtPEMHE^|J9T7z?GPF| zK|!xsO7-yb)`jg_u6Q!o=L+PT5`Arh4?{UH7Ur!F*YjKO7=v_#j$$-KrN^|9*!9JL z|4<9n7Um_5f%kF4fphr3Gz${dJYy~a3K{Q#_Yk@Qy#gl&6 z1^q6qp+pUCV)7YZSP?*bzbcmxZNQ$gE3m*_SdwaBO#(4nmCGp^$OPGv4nx3CKKr~X zIy1iJ35zMvp@_-%z zW}ruaKgQypU>RYo4k)2 zr2NIjA1~-*j>Juxj5&y+m%{e51QIrF>@6#0FXa}hHTg_$tEC%#+cHjKq+XNiUR=~) z_6$s7Ts*@(!)<*BX0O(kerDNN&dI_R&<><#Fv78v3q3v2odY_5jg4;O*x2iIF)nmk zNW95NGL!}k=t%NhPBPkxAzn_d2Tg?1hAVsM&W|6Zg#7~TBFtg4voqMnvePH89JJB{ za92wvG1`!!UTMs>%+z^0kQV&;8A!;tz+JGX#IU80ek^9CSYJT$heZc3k&V=e1KB;0LXk|R4}FrTK81}&B%l|= z?W}}_velE_;_ z92^f8yHP;sPqr+*)n@9%iwkSmXH7|yWF3y=G8?)_8@eJW0o@>f9ZAI1gCa>u>UNt= z*$G^44(t9df8N;QzoqFKM(@!130>MDS`QKfvsz##5*_tc90irFK2IPaBdYLbrwz|0 z#j;Cj?sp*7xF?sJI9G&9P1?0|`=WDSIPwbk=h6T*F+7~35ZLQQR&2lOFXO#Y9Edp1 z7iG70XG0bHSX=Kqxf?jh^>wky^^9c(WX{SyH@G5j)OKBKUCu0tbzFHo3j?n*aPo~R zDzQ2%u6A4)-bJ;haYg;YBPHs~Ub|tl$cnUg3vTRnh9@niroRWm9#446dM5WWs2sCL zjiUfnGv;J8^2uy8kYMYEePC7vJZqC;q9IGSZit-S^$xd_O4kpqLNt1!zpPiM-^{Eb z!_S35BjIP#u2;RlT*+Q>jbWP11r=WjTZd{fN6fmBhK;A}0o7_3mOpxt3zfvGaXo>f zXGE$T+mhqHwq1j?vGsjXXi>p3f^4QHk}M!|9xvrdMaF~xUAvjfPlaIJxN%7j;;q~72w9(;M0i1L zt2B%#=ALU{&fEcQ!oNV#K1@~}jfDU_Rh8cbH_ct9ll8q+A1R^3xUtg}J?fL>I{vV2 znlA9qK1g@o$%lt3ZK150nbf6Y)XQhCJZND*NWdN^zZVWV$-cP7tv(O3L_fWU448al zCS~TcZ_ewc4ogYy7H6vtQ#~!6@v43H%QsHp%RXXx)i>iVbU4QKkgai*uUrM3k|wPl zGYk}JqMcrAc4YYU&z7#y+Z82FDj1a?3@H-u8FM&1;6FNAWiHMvVIWw{_E^i}>w-px zZLG;~Y;a(VOC)+)k#o!2p?;;2a)Q0`3K7%RPyQSZ8*O&C$CVD_^HH~krhnSn4{tVQ z+%=0!-Rk!*WCrWT1r5BJ=X(GU3;JYkK?;1MU}N^UV~>xOsv*{0`zriGYXjmxZ8gDc z6bY+v$l!&^x!HVG_jj-B5aVj-eVpY-Kh^uK+2WUB`z=<&6f?~MSjd5aHKRUSnB zt#Pyr1F|{0j4Tk^LMZYk92RB#vYm$v$&Js0roMw9MQ68vwKyjN**YGbraaeVeHXgo zsSm=CW@J?6hXiIIRYmuu3yIO)ONZ z=uK{vQ%rm>k05Thisw2R4>Fk$)aBXgC!B&;VV!`&ac+VE93r92F)(S?%JJ#qc?4x! z#NrXGaQ3POu;$>7A#FP>i^?s*0`1ePxD`7_KJ9NB;iIq+Qc!?wvVcb|hO3s}82NwO zVB$aSoJlY4C9>qnm)nFFB5@Nsw*93e_o7)V%CXGqicsVQRRcTv6m_k-aO$aMr^*x7 zt+6hDLzUT=K$Kb(<-9)HXpnAdKW*HEzBej9SFv(B94R1OHTm=Ab}W}X31~QW{&?}B?3?G=5v3p z1lA>C+kx!FK7}ByL>4+Qh3}j`&d;|~(_!JH++ID;yS7s^rI40s@)CR(>dNQyIIjWN zMuh`vas;Ks2LMR#DsusVo*c~c&-)>o^`j_FAHs?OPhzc+9c3lie} ze+yRAVugatn%Ri-XPW5ikj1%&)%}W;5^r|I#&#pYh%C2-dgWd48fU9!#J$>BM7vTH zczbvtl_Wq#hluu4b>t4L%eU4dcdA738%5Cm6>Gn2?saE1&68r8z%#6!J+ki|bjXu> zH^kcQVJHj;1)_n|^xm@4UbB9^W>tP{g=m_wCg+At+9sA)MOZ9=a6Nso+petiZN&eTSotr zPhAw{)2cU@q;UtKM?Wu1SCERZ<3lzX-;qho&2Izngajt}RU~XxCD_Y}3-Q{VBz1Oq zOfnswR&=~lHclV<@13$3;jBZMCASBC8uQzaU>4O<3G=iU52Z@0+arkcRLdvETaf2A z&hnTR&#k&NE)_yjm;zv!;ykGPWoEC$jhw3<(Ha#SaSl^Sv{J~_QuD;YlaUAh*#%Iq1R3LXXU`m=?CpR6xt=0%DRBc^fOpnA8ebl zWH$7{slw9`b*d9i>(m=xz+=B34p#dOlksbU&_1*fwqk#KRJT7Ehj%+@3uQaT)M`Iydlq= z@tkJ(m_vR-ZL~2pej&7eASEiK1jvEj@MEvB*M;!|{xn+d)AUj)Ax;#nGQ^!}2`)B} zX}`g5SWU|Wbk4*+*}=tQx6Nj&@A()(TvB%|XRGHeGMCt96bmytVaHVqR6ql+(4fDU zjQ6U7b}qy|$%1s+T{JodJx$JhezWQUTdN6qsxZG~_AL6)A*pdH`hX&-aVz@3Z6zWQ zc`F;q{ori$Ne+f^nFEIRH9JrM)J}%Zr7R@irXc={u`l02dN@7yu7h8WMc+SAzW5^m zf`dKMSYPMWgFP6dwtA5Olu>|VE83TBs{vooOQ0#r7jL6a7I3^JOD>QXdF;Jyu#FZ1 zI(}`aE!drw%?JQY@A-(rJF)2d8_6edM9_#Yl0hN5=r2OeJt3$A#Ogr++URvV8W4`P z#U1oQO&t6(oxhm5A$>y-z}12BMY-ePThVs8Y1ul2xQ zZU;R%ioJQ7UpgvMrvbt@Zl6Ir=Rscta9>yhwmm^UgAv{_mOJE(+HdaNcdwPD1!<(w zw+3cTx{!FyWn+ChK|Y<_b_M)*koeSErJ;^My|z#KeFqZ;KTN4QOMZc6yOiIm&Dc$2 zl;6u0`Aoys-ypXFP`1!PZbY#AeJwz}27x_I&XSzmK{wGqMP9tE9!i511lwkZKm-p& zUnF;kJW8F?5%fTJ$eBWrL7z`nV0)1ITSQ(wV0u9N9Ybz1&3B1i$=@|Vh&{>ur~`yt z$o-J36=O)=>rGL*kz+qsL`n$SW+4I;+ffV%Oau;DOAve&Z@9HR@74f)Bwi3ALeolJ5BPc=QV)?dAmB2!-7!ioTSPyic3$0uCi#EJ5Cz z@OJ@-JC1-2m@l&G=~$BYaZ{8}^KY-6!3z5al7`?nkia4DE3gUa5XOX^{T`>8LIB9E zsly5{$RzLKD4*moU#uZt^dVp3Sf4FSA)15BeE?_D&P33i3E(Tg)^4_-8`9@~`n`$M z3MAgxRD4XsHh-@6n<(ziSIztV9hB&0Bw1l+fXCx&8f>|mig3CJ$GBWZ6$CJOnD28) zp*^!5M-(ALSPfutzC1}^0VEqA&_kUnMu)%^4Zj$wNCUce?np5oYOKx6YOJ+q#9lLs z{}eGu_?7zwZ^<>?keP#g$GDq1ER#I4A(o3~yO{hl$-q4B7qOLjj#-p{2hQl)JW6O7JX|I)7}Ry!Iu14fxD=MxG5XL(U|9m42%&Q;HW{>UNL*iu?Y+ zA6%@;@qy`?{*qOl_2k3BiHW13f|ZcZK-E(pQcN#frlT!+p9}>@CyzJK17Jn?vUCf} z`RHNQgAEg5(Sr=D=wpEhV>DWc!V=^H6oY04`2-YKZAs7uMN8yNTs)+}7^Zu6Jl(dv z*HuF5fqS=LyB6u~KhmgjV&A_n|E&K5iMw3_3(rPuzM2`$9>?~DK7<=Sd!*uIZO*`f z3-OF{HBxtb(#LyO2g{)OrdG$nK}5u>YWfESaEWJ%oW?khL$4;=#DH8dWF4&xh#vmI zc^Kf!SNsKaM~h!3x(absqFPm-oQRihj`6g5C>;{hbC%FE5kg7euYqMdFMgMV@Oy$P+niRyc*5U}C(V z#wb<0v}o#{^&ECe2of2rKIFs!V4n>32QZ|HCpYV86lD<2(uJh@keQahy@W%A{QX3d zr4tsx5o$oU_eO)I6A|GWq-AfPA9geJ6ae%61X^0uGx$wFTJ)I=Rv>`l0VQz;l_IY| zS~RZpyC@}7w;;VDh}Iby><30G8`t*}Y><>VeY96hAjT#>BwGy4hv@qW0Fojv^?*Wc zmkhQms)W{13(be{`^j^yoB&heOpj?)cOdO6Rq=@~%zO*0#C9LX4^2}qeu}*3z8i3s zcX%9sm@wkN-4UY~E~iY7-_&{2EFVJD#KjhnmTHp%Y7>|`Wo1s&cy;9ZqyqqbI`#Fr7ixLh7?_WQRx+%_*nY(l zl->o}tzj0 zvdRo4t(E@OT4tFr$$4e%MicD@TU8*~Qt3y~^qojE*yjgcWdI~1;LWC^YpAwm?eZMK zH*>SQuhy}CoeTeo(c?`!>__G%5$8n~FX2En-jhRzfXRyI>gA6x0gIL#`xSJLw*cd9 z)0S)Yi{rC?+^2hlH%N~+iLj4}3}JK8$Gqi1H37Dm%AMP~=vB&yJOstCCy_Ps{HVXB zsLJZ1xShZ5ym6Cn04^EB^rcaXB9)3o-hOx-H|V9InksxbB9=Gl3w_{?(VD7>%QJ0$ zScE$br!odo%Qrl3;6kAe`>v-bIa0_se;;5Br4?@_9vBSerti%k;2d*>?j(IOx#r*A zzrBXk7!h?x{e7{~=oPCBX{kT;W31RcUm@69$*yQTNa(9xGSHWkb^Mk2*z=E#COu{Y zF#{b01W_6U`TtUI{x8KL$twR6oX_K#)|8kS7wi*VSk*$YQB;2M_UE^i!b+4P zFAi&S=*H+*W!*5pgG>j6poo5e2*R-{&`JC#RV&;SaP{D~w6J^!9ADR{f~8I~+2o}2!fFz-I7`4W8QcRa|QjQi|BNf_GdI(2yZ3fv<6SqdaP!wda#}3

+_IZ(c~;KpRHyCH2i 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 ^^ zYB$mr&k=x6^_7&l_i{ZSSJk-$WyZvQVeH{wx}bay;CCcO2c!)BEwOT-O3ph2FtLdo z)bH+5cuzYv_KAR@WlXQ-nE1I{1i-Uuv0kroV}2;NQbWm5-|i;5Nv=Ct#-rWavF$8e-&(UU_pB{KSauW57oE zqTzFT9_afu=^62bDvme7M)5*5_L@Rbeb-uwuBPIPH<>B`RZqEpX11m6db=;t2xiAb zZw&mEfq;wMjwRB{q`+wHtyTT#Ehuml{Ih5xK+BVUS>tg;&^I@&Z>I$A-c`)j23zYF z_7fQM4V0v>l>CHGg~B1m{CPqR9)WuX^T0*J>O%W>-SJ+ziFWzc4wk-w;3P0DP=iCS zQjuRfI#_A|&Jtz;*20tJQGM%p;@)A0`vBm4gUTUcPl)(p2bwEgNwGEUs24h*p0VGF z=VysgftIM?-SNTQ`^n7I>5SNCRCZv{*SB5T?(5S1E1Qo(bO8O(HkI+Uw8Sf#uNHWC zIN5Wdm5mFBZ&*Jv{F+hGeHObq|d z8grdjuW1d9@tT)X4vu2LIt@#X>Swp|JZIMdT+>8(->J3pP^1mvp*(XwJ>#6F z+#P{avcExzK*C0-&_rbyuJ+_H&|`Y~4K!uV|Nj5d#rgbO2Wu zv&$MFofBE_e$AXKB=3KXK!^JBjZALEY>LZ#0P1cdSVw`mak(A$mOy2D9%Fj8U6@A9 z;TJ-42m9jgxbkC-wb~cuuo7-VeI8rcRr-|;`V~F;+ggPtTr5|7Tjy%hGs#-$<_1&- zdr?8hu$Yj}UvM&GRF1JZ+hsQN)J}_IxwS!nE(dG+Xw@DM-!m_m-IP>kzS+&U`IGPL zP4}iY8kt2uCrS#x=qM&`fozH4M6ZQ0V7)ZzOt>y@!t2+@>Y4892eVN-WAqB1wFH^e zqj-kFtv}?0{{U<2!g1}5TnyS&L1Tve-P%`u)ao+q^s2Ef9qn#iV_2%)tWNYsL(Vk%4l#XQ}tbT)acs`HT-D zd%$qNOvJ6s5$THCwE(!@b>7YrdT}?*2|W=Nds0wttO4{&W3}!@IozVF<~ArdHYiu$ zH*#BK3n+8L6R&HS3i0dkfvv8b-kcIOTySiC;f38iyOr_KWq+7*B0rii4La9w>x}88 z6#SWSvFY@vEdqQUA~A>a-W0kNB)66N%4grhO{4w&WuKE|VQ^@b9m9Y>?|{OuOdD0Z zYyAlnApxVt=_A5B9E)D(n)K0^haj7u?RUUE>a94e3rJz_9HKI0G(mCNjpO9`jpN06 zoulq0GuE@EQ;>}D;h4JnuHA(Od!CQr$y9@98DcQ^`WDdKPK1b;P_`lSQ~nXp8b&oc zf3WcmU(QW9%^0`^pkLo)56(6;_K; zse_oEpejiYJQPtOT@|{2NBwfhW0Y)yb8D+`02FPp@tvx>eS_nH?96x=e46lpDiaA8 z%`7yX<>c?0x!F7vu&L`f39zMo8Ll+8eNsFysvdA|`P%U4a7g9v(3zvFk=*Tu+m9sL z7=d29hxwNIXOsW^x+63+92;Wf9rmvni$=a4GVQbQpc(gnLY7~Wi5Orp|0g%#UzC9V zpCQYg&A3l~z&-Sm6_UN5)_V{EXoXScQ(9<{NXLQ=b}HkI19Xk3@BgjWT&A!DF$ZQi ztIlN5VgIxo2z-0DgWH5YXS9^q*d)5-@rRuFB!1s|B;E=L!g~_++Is93bAR!=@+Rsr zmFye-0W9%hOh9-{z@dA%k37Hp!4d1nBDhBo_^<;LH25*4$RD-kYYmKvWwyQ{)_!)+ z%gr`DWQOmcC0Y;3`+-0nt0#7*0rzweMa_fNq4%ly2CTwT*`Me7&0{w}OSu}01u&BZG5uIVi~H7btDxgl<)rHJ zIEhq#apQrtU7w^NfL7#P6=Mllnbmp6u^JdWyYa?`p<4C0b3Su*numWAk793y`aawE zuLX9iI^ax!v{z%xK#W-&NYHlFt&qvJHN|J8SS!(dXtRUZgIy17BOf&GR2(B^TGq}p z;TkCx!3*)%@oR2m7H#|>A{ynxRjg-Z^-|nuLLFpu+o)=ZQ{w4*P>l_{qeqi1YC2$O zHuZ)r&&*rE*l2)C$Y+R^_!(j?gi=AjNp&dEsQtu(r7!@T1SoU&kZmclR12pFL_Y7u zRR)(RY6-kY3Z&j2{g_~*NEbkNfnt`USTAh)(LgDXa1H#M!{7=Pf%h-S(&YbyEYB(a zZ;<8x-={78R$`Gf5GI0VyV@=(nW)4%j2Stqd^mUcAn|Jp zkexMP>bwGIY*&hVuAJ$+=+B;TR4MjiSH`th&O`(-LiIL#7FP<6NY*J-lno0Ni3y6s zBhYtKCjEl=D=03%IjFl4BIV`4ST&+w2QVsD+19c1SXyoU4=Fx0iptJE%B)QzzrwCD zo5uJ6d>PAPgS8l`WQ%8ooChLIfn`a*LP;%v38~nlQjumw1N+q_)VuwurWxQEY2f=Z zLv64Ye?gVB=l$v_XZ)}e#&3|QHQLtISUk|Qv12jiLRB~iP|Y*D(PIv?5*lBx^Eur7 z)E$Dgiqg~9e__b;MohG~(fZ#OT+J-_a>5`hr6G|;8!xQW7dGW;vYhTm>HB7qO>K?CFWErw& zOyh4XX@yTG?T3N9Sn`%T_WKgzCt7bU&Xq&)yARi6?cY6!qj}TMwz1sm8l$Kt({cG_ z)qf`mi}eKqoR%0f+0M{L)-!Z+%6=lE5&qA8&DmqDA$zIvP*ATt$lFu4OJ$_xq+U(^@?J zrGZ5jl_yg=N{3wtolPW7kdU3uq=6=fcCdV|p;hFe#eX;s;Ucwe&-z)tSc@6BA9u+R zYmC~@Lu}(=gU3>z)oi`8xA)|@dKoqM3+s)}(^t~@+W>b4Na*FZWb?c~{q`taHiDtH z>+-lk#X!@f_6POjukzKq`sH-}Sd+-&0Tk4fvzWN%#LgzZD%>oc@jtcx!#qqS`-W6S z@c`AFvf;6DJg8Dxz(564#L6ykeFSd~Fg{-@vM1ZaPQv70s>Eb<*kWzD1ejB-oziZm zz8En&Kcn*u_kidCoImetZ|NYOcYD#TcK3gWQ|BAX_xeGg|H{AQK^)Ch8d+G zC|P(bWFxAOLnwz7RLDH?JtgyM8=9LE=Yf(Qzn|Oej>~esa>^Qz4(8@ktZdEQ8^i#H zq^5TGp5omZd?9JWx9R2g5NiOM9p81(vVR}ZTt4*{t@g}wkAt(vm&BGHZFM7Tc2j(s z$Mf_c^y?#HcU<>;V6p|+xg^Uf)445-F+ZBtLG@P7)tJ3dn9bf?d2?@;<~9?aV76~X zS95wl7`owFGq@_XPS`o$lk@tZvr36Y)kDyt=PpHX9mbR7fliYebvJw>y4bESYbHa+ z^tGyXeoKCJ?8X0d!%%7GJ~L{V>>>scKVeHvzy=5RaB3#WP@)g`CvU~gs&*ht%$@;n zZZd4xm%Wc+X55Z8eu_C|oFcph*?sYswbZunrD{~ztm}11jpZIC@xY*+=W9p}qPJU} z>P9=)jW&(V#Id$@hivuw%-oC8@pTg@@5aud<1sXr=p_S{f45+Xx7yM(PPUH2S8}Qs zpz4OOr%WC#!GST55q4%o;5X^~7Inu)(K%+WP96!sb7HuZu39O4)p6V@9~!z0jNQ+YT93_YA{^LPecYX19My12q?H0;#l7ONb~HeLbXh zNqfSiu!K03?!@A5sU}`IPr$O?9w7~!3Z8&hb@?L_IwUo)tTnirgacQ>KeVxYgnmh# z45YRxY&Q9nD)>3Al2gDvoByMW>bT0dDx+J5CmuVpM2Pt=d4Jk$$Z3tACZ6(c+2I;( zw?1j|S{}C6^3|`NYVWJ08|xHPXx!$Qpc>oivTLY@z)zu*s^T*!qfrOnF}eFX zZ3>acRk2lIm_SBvRGUw8B5IdeU&Y9lu?9!*q!pw!u`O$v4Jdt`dB^RSG=D+0wnLr5 zLE$f?$!&jV8icyoAopJu&K`mv>bl>oUdGv6B1+B_>UXrt8p+mHT139eg@bF-g}PfW z!w+o|WY}FvsPqvGIN(c~3@Dbuh<6r-aO;J8V#MMAMFgFfW0R5G-c5(3op+5qo%dqO zQX&#$;>+Zmv+`fQ)Ds^%Y=UTFNK+r?Q6JTJ#!wb#`dEa7OZ!Y>pldMd-+G-iLna z*$$r*PbYTJE5$e3DwmXcAt|o3P;6fnT+qS0(%4y*+0;1&(z|@2X;- z7sTIi3f^hC?zmu3Z!hX0-w}M%lg59ApvHhT0}~y|TgXwglVdJ7K_-SuJz}30Diw1+Hy!ne55wTlrVVs!)C( zY@!eG#f(_~dJ0N`2u^{oO7Z``O#&_qFN5KLj6z-p*ZK4@e0hJx+`a=$+5$Chj=`e) z8RRr}iDs-e35PM$o4I84O{M@ZuLjuPFfC!57}3JS*D+^bIXzc#UZxz~mW)9iQ`VNZ zC|`KZ8Ro&JjP_E+5%Kb=zB_O=D*0KcC=DPDw%aU)Iq-Jp@^7i%v9@3wTJ3%H28YDz zb~~*R#8g;WK`+A>ZqHgPaR1Y*L#KLIVtmeC=01D1p|4Vw!X8l$NPQuCM*u>0Z&dU# zx%SyBg#*UCNRRudG6>U<&`t8S%e&pSX&ggiG>n<$ZwUn*T1!X+!bMRCTsotN>F`Sh z-p{(tg8`1@N2%D{VS{W>?ua{Agq|KyvMa#S6!VQSA+BuMP4TkhCJGVXCjVcX_7=Mz z?&@nAA1=X{rvn-fNZ!pg^S}>3Y_xR$>>=NR?QiHCKGzy2iqg-=L6_458o{BSO9JyR z5;ol|(B%Z7*NJJ>x)dkxy1y_C+^nEFw@>jQt~(O}ADptUE9H+aMdFgL!R3$Idu!}wO?&PgkMfu}hN)q-Tx#-ZI=O3Vd#hN@kb8&f} zZ1iz>|0UM^w?3AT0rvk=!1#Yg1OIP$-hYWTAym~^F#19M6&CMz4L=J2{--^e>%UaT z^88aB`?vtSxCs7&zlq*kq(p|{do7LMZ15dWR3_2`FHNoh>9zGskL0c6w<|lczTuM{ z1H-xbr?$A)r_R{m8&4hAD#l;h;&N}I+h-j9TkpWx*%*Un1C9%$-KdqOcT|^l(m?iFzaR31nfhlo z2+^e$9OE(R_R*e9ma{lqE94^{1^E%o!U?u2qWFQJ3TlQ!8XeXrSb}GLRG)10G5!>L`3-_e>5PjQ3Wk9M$dtetahc1CJG2tL9T%Ja5U3sz5#Nss@|!u<;^1 zXYYyuO}|CrlZ-z4vpBXH{wk_EL@|K%CqYaRUiBUP0Rj-MbMy7!vE>qw%)Ayo#4T%@ zXzDEUSsc6ncX6z&Qkjo1jj932-^H;(9*ZQNA!J!7MRLXNEd|H2ET-B5?};L@_g8@# zR&p$XG}cJQIaBWO>qL7+Q1TQ1Xp5`=LXQOd{}*ch4=~To7Igvdokz0PkT3+PvBl65 zH+bk80$!ETZU+`=h)wvbK!)GK^|DTk>WF#&6l~fjm`BVr?O!139@8iuKb!kaz*I2$ zc8GuZmUmhPSarmgIdPlzJ|ne!(V<Y?d;%f7@S|-aQErfH#9$~Ez zM;lj8I)^SE9!)v8m*i@%7FDeI)19e7Hj2DKUl?zVd?Pk?#=U8Tot2$YP;{^PoD4EQ4QnXvJ4C)TY>Zk{w{&5IC*IU=-~^9o-dYFOiwomVWXLfJllqd* zHWQorj?Ndcf^hm4%*1|97pI5%bl5*Gp)IyK9=bHs3!|!`Q`-pz!@t&vi)W@w;P&!h z|5PT*AITXT3e9i&m@53$uH4OUel&bIEhq5VuKZXm_>F_@J5yYelSpL%Q{|?5tF}C# zBQlm4s08d19W@I~&ZwUjm86stA^l{tRU}aS3sE9*A&I*(kXOf>8w3{ySJ7+H#g`=| z(T;-aB}f_EHn?u?Gx4@?{xLr-pGAYPS={!r@*K9AnMZbCkTBoEn@+Nk>C>^uo9eAZJzveY7mflYBF+P-#`)aw2 zl*U(8ajP+5fkRwnU6>Qyh%?I0d|faubvtzu(XWZw5{*-On2%sk5pOZqXRsLQi9ZU& z=qYjYmhknZ(Fum{b#)JkSRFT&<}N+fU_u5X+!YOiKo*!YLEo$Q$%t232I)u@+V)8p z8p^|UX`6_-GN|uCIFncM9n)81jBuRp%6N~y5`B3}Ymj^K@0egtp*N=2QK_J?w$$`_44rg%jUJEa?l zO};?t$A}fG9(7v1BoQoE=>?S*5dpv}U9D*)P!*r<2bTOC5uy7Aabk?LnMiq}mod+( zj!i#XtVditGQAp97`PK5h6uDKE{4!Gc{(XVkD4KZ=WcPre}`}xQxGD_J0=2ti#-Ch zkCVCbX-9@M^ORCh{@z_!$*{pSNFp6}V%$&3-J11QQ*^IpLb9FPMC2r;7yVa9F+zN9 z1cGj3kTJzBx1q&UovD}hX+YlKpnHK*W?VU{<*^i-)7Ny)^sYGHkm&P*rsUZ4^Pi5r z83k=e*1Hv#SqYa@Z6(W+7X?5M+j&E!y@KF%f0behb0&C^<~2nIr@pV_rTt%oT=cQcw*R%jN^)w-s38=B%8RSSvtt?ptWXoCJws zs_RlpCCr1KKj|oc++$?vUm2sk_4nOE!V)9Ik?vHXnPix?kveDuPLI_p5B#@2Cy$loy z{bptPQ}d@p;7(2`2DTqaXV;&#OFHFy8g(#DslWmb8-LK`U_Z0q>FC>bZPpqV1+R*Y z0}1e=3H9esS;~r{hIuym6A^+P;#uBC`g;XD%HaenUJx(R3q6ziDH)CI`HNrxYS1eY%OMI<|VP%ANhG3 z^T=3l>2MxN%B-Qao_iTe??*DriK@U!TWm(leL?a*T!R8MIuzsUEe~i{)Olq3Q zn^2rn2@DjQo<)j;y}sbw^hXo^<}ISRV1JBKLfqSAL}N2ASA|$?FoWxD8*X5V>kgI@ z(Icc#lC}Ssieazw*ox26k19r^wNS695-W2kW3%v1Zpn%)nuhOnv*$w!3*EMYe=d9v z@#5opzXk$HTjt}mEF|`AxXdtEb~($t1A|In>#S!-5M1@iukA2QiH1&iaw62CR!sLE zAeMVG*)1Qknz}qZ7*)`n-m;doJ9UxR)B8Sqiti+Q%jl=GhNpkAsQjf7W>?!z)CS)U zS&iO+rcU~JP@A+j%nhm)9jIxwjq4qa#{s8De+T?*Dn<&JkdyHss3Qb?djJRyoQeU4 z-uh!8Pls3rG>>9JPknv4cc@%>E{8b2mQBvYj*_%d(9^=pDywDv%0b4?+%An5OIDQo zX-S9A0iVN!v8nw9KQq4U9OQa2L(7RiCiHvDF>l09QklE7s`9>8AWYi2YGP6q6|AQd zx-ih5uU;;^xy#0-+y4t0?98OqU?v!y@(_b{j z);jXUbXz(Bvg6?j$-J9vdH2R$A0lDiGqB5p9P~kEa}(NAuZP1M*Dcc&)+>frNQ7Ji z!dGZ=y99_I{0H_>WZ_Sqt`M_lsCOV9dy4?+BY*bGzTT!Rqjw7L&utwMCi{CZW#8zm zd{))N(_HG?u3X96t1j}o+tgn)nWNJfbW_BtYw4L#pi#b}>^J*Z<+d%5Wqqaomq4ZF zU*$s~r5@FUYEG$SV-akY7R*BGvDi7}hwXCaUuxK+f8@M#))(n%YjTsF+r!d7H45sQQ za56RM9`MOWSde&Q%+C3Q<4pGqFqbQT`XK=HP@ke->Yt)t+icK(iGDe4BfQvr)9vnf zRMr^83{-=*(nByekU7?;Yt3v4OdVQR{qkiaxcu4@g5Z3%P~SQo_=w`g4wRhirF)6A zEPXRH31{5K88&3Gyf=J2!uGuVDVsm%IAS;DcBDt_`6T#qXC7&Ejs1-LhS|=|a86Fa zxZ~askgw*$ZHZN(2T=1;x3wj7akKfkeJtob2?Y5ow7C$ z@Pg71gTaF7mk2dS?#17-5qy3|a7TsdLJCI|&SU_&M+tW)WMt0GH~eUfGI%GI3e<#EypXjl zZL0AByohsRo1!a-JbBVHfcGHHqC>_+^6Zu+*vTpY5M1^U0IRkDZ}Tyf^L~hld&tBW zwg$WsBhQS(na#P3udq^^P<{+4RiVCfZ)jJnOr)Y_-B*GKEfvB}wHqU*j={En{A_-% ztXKm0i>8aK$`FkxZ8wAL!By@U_#O$)QI$3xFZA2+p^$AYeUy!n0dCl$09b0=;@|_8 z4l|8I1I)DngLs=7>TL-dDu+jSqQzCNy})U}L*sfFVf4zbA|e7yzB)TZ(liL?Br5@& zV?FBNf?Cv-Ohw-n#P5W1VVJ|(TCAD=8P8F*M0^*BJnKN4XkUyAcZPUHMT(u@1*HRa z@X1C@tXOVmj>(YIdpIKNPLZ{1!CP+KVMS97%Dwl;NR+kAt^{Sqf<^#Z?X@#gC*b#L zbLF)^<{cL3z<03Gh}9Z_$u8$`RstX zOzy-`r~25cFcrr1a&6_HL?rJ1HUviLlf|qOqkvT!jHPV<7z@@SxgPoQ z{e)0($9q+JyE3cqF_$3qz}3o!=2GH&kHlMH#MXtk=s5tr_c8J4^?Iy$TnhLj-ALqp z7ntFe*evVc97Eue-AwAq#t|AGPI5I6?fGMO9K_yL86WxKNj#$JZHOHA3Da$;y;z#* z1>-szbv(IwMl?4%?jwr~Ebr8I_hlbB)$)sa%##+;+F-}o>aGUC$x4eQ0ge~<>IA8` z^H^vEGu}+L%i7mB)@bS3jtF)WEEv<;QH|4THibn4#n^iU61`+f96sX{X?e5dfUO82ap`t z`FcbDh5ahi$GC}g#(pKrxHVGSV`Cco%&Kf^%Dkv;*=*5yD!1F&d3M2m2MN?5dfZFV zB6T84rIfD`TL)L(w*^(pTCBdyw5DB$5)BqH@~2zAyXud_DOFGKpp|js!E26Emvre- zK(l%M8s7NoR*O`{?A@6ADAgjJ3s6HbguAB6YVbY@A}=*i1BNm~mMBQxH>JtK1w1K& zSwv)F5p`h|wZvFvMMsx|*#kyAL-L#7Fd9n8sJez8Z=J1sNrW5*hYe+sRj<8sySDFe zQrhi(DL8h}7|$)lhSqtb25a411KPU7*AUjF^ov z+az5;SAYaTaFhj~n@Yd3nNub*wtIs)8Ugw!gjd6uTm=6&C#@fBzHsOebRSKQcI}hB z=T1CpxeOT0t=_n~WBBj{8NKi{&~RrjQ{mFSrCu|%DOp%a9F`Ym+~|wC7;fR)kg%fL z_q4vPpu{>JqYlFZ&8cXj0N}nR<%;8C<9vgrL>qldE7lslKYhH~0L;@^2hZqIW#b+z z{2z$Qr|w91YRYnbo?#l=f|x<8VfO>LvphYBvu$gXR+`ai3*kFp8D-Ai5!q#;A=|DT zQpm!a!%dbfT7#JJ>_Dx0tHQ}Uq`bi9K~&gb8Y>L#CYRo@zX z1SfVu0@8+wh0!ib1b~rtRd$t<`y}i59IF>8?#{qA=xn2e zda`0cCf%$#R~|Ct*|zg!l})&Mw8^clkuVT#Xao>l--8r)7LW&;J!5rLkVy`9#a6__(`=`uUS z?|@6UcylX=c(pxBUT^lZ+r92?Q%yFB259NjeSW2^9QquS6z@;NRY+Pa%LBu)lvM zcXLBvHRq+Sxyz zH@Gf9I6{C_j%qSJ4BCS-hFT|KM`X|TNoF3sz)EIjoFE0$-=8Ro z0G;q$`e=6X+VrR#i$>^*Gmp%ACrD(*bf>b@JIpnfD5G1)pSFc2Byh6!7Kw{uQx$0Oc)zc!0AmmQN#tlngH|AAD3AQQx+|91!5Vg2irKD7bfYsf*+yB%!?_^Lv&ZtgAj;E zJ(j@0NgQHefEKAn-r9zCU%@Hevxv$sAeZ)shT;Xyxsph+hXYApUa=FRB5y-k90)w3 zf!+~B#zlYo>?%8Ceq2#aBGbo>&e2p_sn$^<2+aeLk97x_SGJ1i5H@@R28CrY#=`bs z^bxjPFGp<4XCO_#0D>04+ogt~AAM|7l`wTtA72{5m$n(9UCb-)=@rjGy(NCSX>8Rr z#492{M1Z>o@ZS}c`}OS4GC@M20x3=xIsIU+7B@2+o;9=M8KaBNGwAcPESA*Q=;eY3 zF*11GwJ>FEC4-Guun=B6Eo_+iYvZv3wQIWPcBkSWLw2VWVea;=%Fytml$o4an`L{E zR-x~8A~nxD1`Pn7IuN#Bi@wO#vK~lrok$NBya zhd+X7%6pFK-rCtan@m+J0;{d*9|LT9B-@vFGb}q3nPstN42w;Spliwl7p^F~y;I2z zx+z=Dm{auu8tay5RnLmqNstZ(26|fSowH*PzN(R)dN$dL^=_`CO)7)rvn`W8rVfc3ZVf%k5z?Fs#H zlpgr~O|QxuDjY4fNEKZ{Cy$kS-m>@+BL2!8jPVly*waiJj>aZ;^r=P5_1n_PbY8Ih ze#d1NW-`9{7%h9Ptp|lrxu=3Na6#-U zn`ZnHccx5exP;{p6xk3hy~=E9vpNJ2H;)7k)fc%2jz{8Dk_JQ%3+7T9E$x?Xv!sh& z7TV1+PbUXOcrrvq9K$4k^{Y5tWsSM9CpPcqV|z`_r;5@9?h#40C|m!09v?0BzHu+z zXeT>nukv^vZ^PN}s{whqdcuf$7rdqVtsA}}Ao{9p$-6Nv1xnByc;*mtCHVSEdz#T} z9R?ldaZsJT%^w!Le~HxJixxe$h1qW%hB%o^E))3sQJQK^sJt~G{(yoT4eqN^H6JG2 z@TM9AW)lA=3l%2ML!Hej5pSz>eM#aqy|XfLQR?ZA@oi!IL)?%-cu*^pDvfCm{k?U z9_DmO*Ce*i>a6?Ui|BM)@n=q??bABCJtmG65|5Uu0p3bxe9J_>u)Hg>Of?}Y&be); z0_;;;Xp~%f2AyS1<^B$mHAs^1!`5~w8$Y}x70=*j8(EZHfUJEh*yzt^!PW}NGe4Ftd}}wrxHIT1 zIw4uW2x+0g8Z=OBdNokK9@pOrwu^V}z?EGz?H<8Pz~5k|d{am(W6EG2?jpe&iu0xX z`bOkLFHapDpEBQFB{&C6&3fHZctrNb75cFI8Df-P5QDjy9UHGJ7Bz25ke-gwH(ymC z4KyNPhu{s9K4F|5!ktAdjahyiG<)Te^j&6*IW`aOI5^t%EI9)H#teJECx@$fWr{U!FwVx86^h8uOWhamC z8?9(@*s3<_E0}?^fMt?z0(5CdfE3n*uaQm_-!yG@1dSwHDk6xi#jBjWPmXXDl5& zVi`!btPpO3zj(i_>?pg%yO{)c6hZjn44_DVjO;d#`LQ#h6J(8cK>T$gJX; zO^U;t<}0`nftq7VJt`WW$6DxdeFo=8jTyA1dEb*lmZ%{R7NkT5g-K@JAL!*luz9!p?J4!XRwjX}Jjz9W zk8AA@ZfO=#XnJOVts`w%hUDWVDMcqR&XZ8E0<{Kud=m*+ca7EBXXgh!|0U*)4Z$)B zg`=go1jpzT?-LUwlctB|F7(Zo5&WR(5RkhZgLqPti>tjjM8|-PqLV4i4GD7zMkMIhw*N2yRlE};Db@k!X2tWW?czmP z8+Ck;?7ACHHf)SAr7_b~H{-QTw#P;Sq`0JhiccAkj0J$5!m>JxMRFlO{Dk~!4XytmN3FYnXOgtrzqt6_);#OP5d`a#s|{!f*ZUk(~@RR?KN0_2I| zFV(uo&*n1w4l>V|33VS%OGq!f;cgi+uuAR=SOYQms?t5$`F%Y8CZsRysr*hW4JpXh zDs#I^qAQP_sPEi5mp_@O;cREC>y$s=zi<@D^sBfZcckY;@Ks2P#sbg@kwy6_aYQ9K znH$|M9gl1X*XJh4=_(}DB#3aR6+iIY0KrBLcw6;KB_e`Bfvf9{zbm+AYbz?+JOtTi zG*^!nY|G(9?N-Bej`9w3`UI#$4=r0950vYFgw|;4nem%+`st7dqTfXyVM~bs*&`9K z6uQxhb78eSS}F%8kR*i)coerqh|Cd(l8lB`C4P$ler4p1o{+z9vlh25)7wf293~4{ zS;OyTJZxD7AK(?yCl%maDJkU2RcC&!^wgWa#Bs-$4EX*YHyFGzBEjijr{HoWFVX9P zkz+XHV-z(sWaxVrZ2yW6B*9JrLQqLBYTmj^sDvoOCT1F|McYhOq;S`X|8{+I9zYp* zp4IErH&Uf?x8!NBlOz~8t;82eC?*c2|zNE1^X zSrYa7-djR{fPA;7mirqQeKy%Y;MqPxP8R{^cvRkB7ctvymg17P^kFLxsFK5Oi?#qM zqt`v3-)slRN&-fL5tW-|7_+<0NJF^v!~O^pTbz!3i6vl zE^O#9CyfY?%B2k;Z7N6;_=n#L$Bw$uR`_zEwY)AeftFPTJnGMw*}6gVTA(VK)b00l zb=1NhO7p_R3+r1B0WErgcsHaEI*VJS&H_(l$h~k`%Itp6)<=>j?jEDcP%lsPD`-VK z>9tk3^V3hA#}#ZIU#e(oe_IX91BLw6h@tTTI5=zkZjFP%ABp7tKp~BCD!QHuA+5pf{8OJwk4ow_{_SxXx8W9>H4m7zh4pl6}@zOj{ZOQ!(-vj#Q}x!2(j z?77ztA^c|%oB0S*AQpFKw}TlA>+p|y6}MN7uN!ey$;=#RmlmRoNdp;IYpQkv=Uz5H zFOc}RQAGRXbqqdpxkHYWi>Jisi1w{G#!KcLA~}m3;uNnjLpa?hmtl88HxDf;bnfb{ z_7wu$3^k1|KhH21*1HgMLhH%{*eUqqf8bPMDex&&@GI~Q0A&rwW1cA&w8EaTDA_As z$Sc05R;1400=gMjg`wE1iB#-mtOivoZ?~K+do%wa^Yd9D%!Glgk{9De1x6E1FdAY) zLhZ7+AQB00I8PO=aRl;M%DU`;Md^R^zvaOp!bC~r!61gaEmHg81}1GXPDKm~<7DN0 z$WGsQ5&69l0mHz4V#oWWpW8PmwuztP5aH(^%5Evah& zhGE6-EuAZkPbRnEZA(Ltqu8*TdDB+m*QcJlDdXoI0#(hF_N&^danh-aYZ_!(8l3^2 zxg|4?tSuu$%;gG-p@lHG_-vh=iH_2wN7$*RJ-HF$RU}`2r5-{^*%Gh!X{={YZ`mhg z2GoY}7M?1*0QimiTv5>pz?6(t-&lhYsw#lN|#&kOJVbGOh@kkNlnzo`Dt>AX~MxJ@bJAjAK9be{j?$)JKm zPEMNy$^B=7e^nwT^E`t5`w$mYaO6#4e?XG|9rwSdn*8a3O4g(PysXtUNYcOV&nG2G zo}_{Mn%qYXhukDE3$pW{fr}ti$#^tyXiX;bAoKqioA?(&rvCLaQvYW{pTlvQl$SvU z|Mh%k-RAz8+u!*&tThlcASbk|X8#nk1$kUza-W+s9T%a@Huynp{0|QMKSObr)Kgnx z_I{{8D5mQw)RH1d4mN`nB#!uV(XdT(3+uPc37yjmphXcW{!EAC*B2Jv=KOi@Fr%cU zeXX;}E=auH<@k6w0PDvth0@l(dMP1BITSY0= z(y#NyMH%jt7C<27I?Ec`6wo4z-#0zETukMu!zvM$2nSSTeAO5CWyxAi$DUno*Kqy@ zI0+*$fTo=}6)*fM8br&0wN-y5POB%JLUV|W9;5|g)7(*<-wS|(Y&-MKpE?#hd6g-zUTr{n5@>`5k++-yUPs}3K zSBc0tP#B7q9H6y$K^s3LRvjw+9gE;8tM|g;p2M{DdH~BBU7FN@Se~iQ@gRwqri6sd zX7LmT4JusV9a!DF;rzBn)Gh8^|4RCT-DM>e#6CW_;Z_l6NgK zRv{)RvC8W*Wc3i>((EO3eII6Aknf?nGwjNSFJ6BhPHy0MVQ*}U!HyBnM_r^_tT%*z zyhV--x6Gxz6|-`3{SaViBn@GdYDvNsXNEV;l=`V=n-+;^RvKFlX#A5$4aGDY=*7Rh zlQVh%2aF%Yu3z(xCdaJ~UiFUeH>x)*XH6eD!j&OKsc=88^@}bmqoC^i;bR^KW@P*4V8Oh-5bFVw{8_Ajc&YzfSD5dJ=&2Pk5 zS5HQ9NSjCbsq9?1qK_EVlN%#Czam%QVoDMl2^1wxwX|SMukI0sSnCHJNz!DI)>`8^ z!}l}0@X|-@|7pKx|A2+Rl=;od{U|oa@rNqe1+Tol3Mygk$rwxO!DArNBeHqhsA#3h ze%H+&hvdkExw!qN-!n+qLSo+#8;cUrcD%GTz01qh=@97&p|{J(IA-3Q5)zRnV-qNR zHqav0MO^j(ASmYWRC5Rr62}#f*Nmh`(>G+uowRe0ftd=D4&?NFaoB~zF zpGSPe@-Tic=EyL&a8Tr)2D2@ua>Az<2rN6?p9+0}BWy>5cW(3I@1V#7GAbxCZJao} zWfXWPMYz25C{f$MV{p_2_;J9)oS%B@Qv8sgTbEHJ-ET@umxUK$leXim<;n$AZHeG# zQvAHZRzf#I&!jk4v<(@&1!W@N^yhv}fui_zPZdU2b}vz|p`|pMNMQ=oj7!&Q1>6~8 zw|3SDH*Y7U27Jgbn>Y~eT6EKSbnU^tXyxL0FTaFw!flMh2~BIzlo~x0PWu;zAzWkf zMsa(?{CqAb&MBiz{DAg`ApqDxu1`W`lg3Xshj?-hxzOBWEW8nki2=1-MKbkQMmxe9WZ zvj0(`FYZi2a59Lb6xu9zHLK8XKs_cm*{kT+vidAw9cu)H*4JP}y~rpr0M>K4T^!zV zX_G0q_F{)#%{x&5X38%yX&VD5b#Z7f6L?1h>{oSu78Moz9yLM?Sk}Imvm2R*RToWO zJ8*F8VL88Vqx=@VBg79A6Xh$$R7$Efyl6`$6We6#s>@7dWfTiV9ihj<*f6jL9kQvS zelvrXFGGc?@Ae0$(V#53P zaOs~glJ*v)-C2}auuLUrMR1wIqqMOdA_sXns08ZDfon7IjcFz?{$u=|DJI%*Fgi{| z-9IM?k@=SL!c^iWlEBo74C*8^E4EmZ>5~*JlNfP#lN(e@xvzT;<-#fLv7K-k!E$r8 zmTjO_-4~W}@SUP169|3G#vo;fZYiC4Vn+5MVK;d0R_9ZKRH0^e^bXW9fzQ}_ml!bB zfrDB$BwTvFow4V+t|A5iI^@12H^>taOs`4Q*nHpKlwC-auY@Dz(DG9>lyVty}S`^yA#L3hcH1=p_5 zN3c#WV%+?Dr4VJ7B{m1E#@$GQmWc zfp!7Pw0qH;qreflpm}&0jhY}dV(nQs$1gi5R2jBZeyr&z@d^GKBkCc}ob&d}SZLT| zV_WC`PHcv1lk6LoiWU?r`vc4+9n!{o&jh)XLY2X3A#77Z^?=W>tMz={)z}CwtQ`dY zCKGiCdv(O`R@(fLj&bn9ov6sqv>eg*#^2(wY~}psffu2g-7~hn@COE{+VAlvb(=(- z5@&I-Vnm9yF53@uI7w$p)mX{4v68|ICPdQ(Cv|$^pzK{J*QQ!gdS*)kAAS7g^;=9@ zr0xu;`ibuUi>z~u4kYN_e4L3nF((t-nAo;$+wRzySQFc}?TKyM&IFtNzwg=IbM{M} z(^a>tKK1Ro{rvhV2Dm2TKO2sc83Z|CA%7%}b&UEKTG*DjRF&2MsyrHZ3>61#+B3NX zaoQp9Z+ggCfxyw~wY7FELuZXwjPTEd+HFxy4?U`jNcfo-8qQIf8IO^)seZQ=do)|o z)cEE+VrzEt*T6zj!a=zjv8Y*l{xw+pk3BT}}vX zy&UQg!2~E%*v0-7Wr2kD@IL8>XkC*x1}rf0lOir2A}}9+yC=>D&S5}u{~*#M#faI~#Wi&x9K3=sfJZ~xW*F9$qzw5bO7T5W=9G*O;Tm1W zgH35O93q+vD>wR5OM_K4&EI>E(g9UXA*anh*dSR11S&lFrKVgCLv12(u#0XlbBOA654sNdcS)Wu%qx9_V4y#GtDK~OHZajWf&Sfa>P6hXBcmY3(&gF!+VHr z&suK3pZxafrZ;_&vcD4J?vsxfrj_Rc*QdQiTv*} z{sxS%?O-X9Gq|wY#G-bmUwqJ;2kr;0wL9DnUj3$VUe%M{rKg=zGqPM`L^H9&xR%#g zUu}{QVQZ?!~FL!BigB23e$CkLgelcf)eA@x!UoSdqu2nUc4mXS6D zMq+cN@cx#X*8{_tZhA{@E@GF7p(+I#Ja@2PEl*e6r~K@QkkNZOVid1@PGwE@kP(zB z!dsiNg!jSAG=1L|`&m*}!)Z;IGN03fRuEK?QQV_;PhwWAa9CAy>;MZ!oxfHAaEjOsc7D>JEG9QV7sLe64FBF$d+s>brrXhue~ z9%bJ?M)6!}bCh*`w2h%Fq%RcTQ9M3u$4}?$EfMMc!oPi7FM*TEnSwyp+E5$TLT|TU zN-H{2A$;~mO84AE@s`D5@tOK#a|8hoqer84!538+4UW+i{TvGWE$C=p2>WP?Sf)>i zbZFY&;Np{wQaNU-y~2ADMdD|`4NW(m07hLc$XOb1noaef0pwNjSk_}@3i7jEEEs z6ZCg?QQ#>x|5?iuA9FXvJ^;vn-}&;++Zvg+rM1y7igy!+?u;`4udtbF2O(EBdFi=`Iiyg$p9A8z!)5YF%=MHSb%5Af@?(8C2c`G zy}OnUFq61*`j$mK$&NfvF*!y4%wpjS+A9O$!~;j#HVDDqAJ5&9s9&b-+-8Eh0UMx( z^Hv^ZSI*L%zRe2dTY1AHl&&Xstr5>-hUOh3;8t~`LqB8p(_IPX-2-Z){U_J2-V0J^ z#K6ClGcL&Mlrw+}%6al(GwM0x;ziQ6Z$LX~mkk7T!3%OP52<4_?yH-)b0@@A;;}1= zx4*!b*$5`t^Db&zm_V~uUL;Bd_TwY=mahe`>@@*6pSd^Mtato&qCX*9SBm)Ex?Fw8 zCJIb4)b=<6r`qurREuJIcRKeY&gfJX=`+xV`pkps&C|<{<+w>c>cKbq z=?4LXZD&ONyEA|R;CcxeubU;G*S>Xa^Z?R*TLRaaP#=4!A9Mj%Y}eU|*H6fA7T`d2 z&?ilADEylb>IY~5APHEEwxx%|Pzd_|4;S2b&<~&<^-9v; z?~eE({fEKkmHt=hhn_F`#}Na$f!A^IkKfnO&j3j-lm)lOaD^YvGuqpVe#~!v(XBLu z1XSE|(Vc3ye)QKBcleLi+8g5ZlG)%%RN?C)U%CZ`KwZ zSbO66>rkCs^dCvt^j!ztI51%A0u zOA8`-8pPXn$aO1v?+@GNnb{*Z8~Dk_UkzyTj{EXY$8Li?qKVgG?w~%RYLEGXF4d&$ za6Q7V5BMTA*Qo8NKK|ku`6#$r#H;B-n8eVw?tS5~8SC&|u<9KGW!o&8?ZKf z!>H-YXzAJ3v*wsUcZpfGhkwHBCH9S!H0=nIAD4F_PB_7pBZk>o_F4ad)^*0;tnYGmjZ>VaOAgT+JC@1jp<*GtD z3!14qjj~Vsn)+Ar?m}?7;{c0l0^?Qh*<@5JvDrj)vE{_S$fyM!N~<>p;_?^~5jZmO~}h!{i@Eo+GJuqp5JCshP$TkjBz21F0EzL*4`Hsj(k? z*!7`N*guSBjin=^T7#lSRap+%IyNT0+yaa)xmApKb&V&Ij3-!)CmxI^+DB8LelxNs zVmTEXNF(@yT`@(qrWrDHZ)An67Rd?71bV8=X=c;>tn{L=VBL=g7K^jZOLXiHdQs!2 z&=b&a)5GuxcrswD%x=W>L<%hzY^D`mpc_XzBph21Y*0~^9jQ_)#_ykDd<)>x(;=e!ht*L@R~1_LLpf>( z<>6d`+u;U_x2OsW7#xQG;T@3QEqP47u#o?3jQH;2lIiJ+=x&OhT?-$z!#*Dkx$jig z3F7UA4#>yyaR>0>_c!2-1vfChrLAfu;dU2<-0h`^-7Gyk<7V!tu(Cx|AD+Ku(w#oN zP7p3UQ+zP8-V}R&gfa2wh znR*_n6#Z%wyZ_>pcE~)%GlQ{Byt5xmWWGI0LAtXzhM2I9>Y?7nI-a+o1Zln&Cv%(Z z;m*Z6g7>ZDH5j{5UwxpcY?#!%?e&?WoUhLm?SOHSSRN;SLG zDDq(k;nWFmu@3+GU=&rU*sV6adLJI>y|iqZ`2f$0VP$kyaI?ZS$@%Ku57SiYmT1#b zo0Tc{iEnaYG(kD(_D5fbWlO;)(FWgWQ(;jj|7sy{SOZHxN(8pSee3HGYVFURj_MB# zcNbSgk0ZLWJm?cca*BhC;G}t%s$$t00i7MT(@i=c&$cp_s|=o7^!+e$p8O+otibXa zezD(R%sAG7*&A(b8~7&R3u)5PP5(3MX1Lw?jjJpUi`;vfQrowD@~4xO^~2#S(I#|978 zob~|vi={$e<3wh zi2u@L;U}nX|bF0j&PNll*V9w*QDCerR9Za1b)s@_$GEk6hCHH6ro< zuK7Qa_us*={?nPzYw@2cni;UbR{k6KKPt?-As7{wuRk^SGw9|#8+%u$g3eZI9E3)a!4lMaCma6HP)kZ(4Y}px#m$3HC@Q_9nH)! zSG^c}7^yr*$VZHpFj!3V7fxdiS#>hBfd0wezxD+_jz(rR_0)&CcmjK|ItxPmkS3ZB zkTQhot#tFP%%~fei%(y|Xh_v%?o6s}K+eu1e%u8yO{J4ofr&{?XCW(khBj`v_0{RM zJVBAyc^LstBQvv}4bDNdH5 zoBsP4kv+nbh-if@t~=5VBjHeh+oEU_9TJn$6$T4y;l^PVt(LuocvUfONV-tE^vnny z%b(w~HN>r8n#RL|7qqhP0g12C;ltW%t2+W#YGefYk70kswfR|31iI21FPZQWn(d;i zVFqD!gfa6gL2(6-+=2}=4`_R1{>sls6D83-O#7xjwA57|+*iq~iBG=)0%SE@%U$i1 zidzI_&X-AI`Mn!$*j%gk4y&}XX{JtE@IqoZeM;vJ?`lQVRG z|GPCdm*#I>v3HxC%W=%pFc!OVVg4X4PRWy0UQdLL)9OrzOw7S70@nUN2K z*)R{&ri83>*km%frR$LM&m-uQd%2aot3!<#vy|Fr+zA*Og{t4$;SxMcHpEbD9jIt` zJdZLO=BWmy%W5Qb$Y|>&f5~XtCb?!b%u@M)MP-0xTL#(y8Cn4#3ca++29MJOsehXW z5Cpbp%4FbjX&q;Z16izBH&9;Pkt&H}H(WhW=f?D{tc+Ti8%7EuEvjSb@}xq{W((yP zMBnon{OSL(}gc+rD1=L>o-^xS0j!#jXNn3s`uj8G9^k}B9PWkcf z!eI+v%e2J+RfLdR2T%#8C0S4I-4b&pVN&cCMOBOzcpJOM(XNNFs+Wv`syw56Cl>p&+0@=gfh`cj<QNVHw#{r z$Aq{+Xd^ab5Kv^&1&|!tLtB;mF1jFUc4z6ZsnS`11cC$A&{md6EuNT0t(HYWH%919 zj8^AESbLe%T;0pYse%*biB4W(^V=MB2_^!vh3S;mlLT$eL7D83Vh;1UAZ*6c9ib~~*vaVKVRoTpBBbTdO>R{{%xyC)oYiT5K$>o6bj>pu&3Zdd4 zTULf;*g_n(xwW5u5A{AP_GOWqHZLwCeY*wtsmwWOao>|EYpMtd`3U7pbk`?8dkL6Q z;6w}4njoMvR`FpflkyB4137%RA8!)VMk2$^R|4(abhdnCN=TJ?tmn^>v733_=`69b zrl;>;0%lN&=W%vGM-+-iW%|8c8)?Re$W_;?$6 zzJm>BBqMd8j>!%Yq6%NnGL9S~8-*nz7&XwN^<$o{JkVQV>I{#Ll zE>tY)CcM`36;#~(^j^suJ?pJSAqUtKCybs(7_N^e7|Yl;4bB(8G3=NTw<@7qhGL4L zOV5JMu8CD8XU^FBwewwx$euRtfye}p>Xb~S9ZS_-S_a);x=GGD!Vs#_E*v}H&<9@W z9EG`dkakADB@^MAkx~}{p4K#ylb2EI&rgbC5*&*rA*+ho=scV%2Dv}*{6B%iJy9BO zP_h<3ax4@$>_`=$nMD*wjBj~hM(`!b^;R@{I3&VJL?|J5Lx0K^qFg7aK(8;@B=Cqz z@=I1#!O);Z>l=*@kj!bYAvRS0D0e zXq2rKDKba3YJK3sB*s%;BiU|?juP(I>c8k+Y@Defg)UmAAp17}% zy5r~)F%>WkKwUaM2%IfOk+*1YyGvO>07pNju{cDi!@O*==7%7nL?%Q+Qin^1_ zFMA;`=ARE~dFi>Br4o$j1G3aV9lU?DBSiS2dJTxI>liZxm^NWq$H{fG~Cdnnna z`DT&LY`Fnc5m2z__sp@AcnG=rQua>e`Kk;_fxB$U6>B;%^M6E>aXTE%GQ`$l^iixK z>jkgAt+GNC5R62zI#?yc3y0W~FE$MaXbC1KOQ%2S?Am4n&rvOA#~%4{V&047yu(R8 zAc?gh@?t+>FSAbb=<{AR;L|yEkpef!ISh$-r>N}W#=}Z+mPrU8^2B2T+SeKq&6_C+ zF!b)jLkCi{tygAn7YU}mM7ocN3DB|5@0{ofifPq~(7nZ%b-EZ@T119C4F zFoT!r=MPZiPL*=e>*-1u7a%#=qzZRVQg?04~?n!%8Sl+nM7m{m$1JJbH3`57JW%@427F48JcG0%H z$=p+nbDI_?cIbqdMm;*jL`q$Z>YB^97%4E3`0Oi`>OKYmt1A#*`t@6Z9;4#OakOvhQ|`{M*?`!SI7t(*TDrE7-qH)3neQJ4SA{ z={2lHYni!CS%H_~RqF|oqSpRW-i}s2qq~&_2bcg{4Mm0@*-}IJISRG}?H&YNQqK^r zjO_b*Tp-`!JqOY!NM2h!i2nFd)lz71+CMx1fhYb23-E_Mt@w?ByOZ)g7u)fR2XW>Z zlpiJ@CZDF%7kPizbzaAI%LoOE*6{#qgE%?V6x<6t$JwaVEHsZKdccz&E zeDKPp*?62kfw*dkV_OTXthk);aWg1Uj`!8`g|b`pl}?*nkQb z(zJdM-Y9}->ocfCy)If5)S4jyrzYWpYY{gJy7ZO&iVFrVdr=jw$+rnsxtJS?Zag^N zFle=$V z(0MZIl^#-P41doGZ45foP$QLgAYH57FtwbhHg2wC{SltOs(+EC^f!&mC&VNN9oipQ zGM(r6mvUD0uiDQ1{9CAD(Q~0lmgm#;+V)=Bu8jv*v-Nd262~i7gpy$(IR7n{TAayP zRnl2%-I+jQ)uXC?Dz6Y0{Hc9P+X_@G%HP2Kn{$_YB@{}2-V=r`k}3aLAUb6A$1lOs zM8<J5PBho@%PA*<>>@mVJt-*^KSr z1%eQ5K4V=8kOT8hww5KW0C7VhK~Fi+j_^fG-6(-TLgJg?br%n`Ys z;Y3WwVcIuPJM%werC!tmtK>iH~>P{}ZS9FB%alIJTKE|ghCdG-L)s4u?TWsDa0ul))P%jd?J-$S| z1l&^1^l)x0UI&vfGtI$sgr8g>!H1U1?ANxs+Am1nH9aarIupjQrkyGT#%uPtQ?86a z;x#nkLaiYGgK_$>v_}fX{;OM{_Rc&fyE!abzb)J{Dt&IJozop8=cBv zTUGhm-<;w!F7{=A?+?g{-da~DzO-uUK2qX$PZK1w92aMP;G~Ap9{eiMIr`?`KFU2^ zwx5-*veS8l-eH7XUx2IVF6s@-PcZiEopt=?ht_oD96vLkTjCd$%_D0zetcr;vH9hN zbv)R{AkB&d6YIIVTgWCh`nCgRcQsYc9*$r#!(99`Z zgE*?yd%Hy4Ku05MT>{C8POoYPzVu6-37hT?cSQjr(b|mY-$DyJL|UAQ6UGBKAICE9 zq`NazCkH`-yLE@Xdm~6$=@*_CpT`1U5EwW_b)(4}^-`mu-5Nr^L_R~f$GwjPx0qNb zolRmt_GQ#F=f$IM-rW*0QHUL8W9${RzNN8eXdl)9kk7KXk$XUUFM4s^q4tqHXPBo$ z(V1kw7#jB8Dok*K@bYDX(Y!-r2h%h(y+uguwd~-{c#u7a#_JIH24`HFrUx3}qz)6a z9@6wq&Qob_ghQSpebqhMU4Qrn{meHisOeS-Ib1pbs8 zPQ20r*j~Y zn3S9HzZClw>D=#QnTq3InykjAQeEDMh-9zR^5-p6RVc!;HX8s2+=lG#8g_qomPP%?MA~$+*Ho=(!$OX&LDFys}EZ z%-xtg!)hzGt3>ycWw!!|jRMEKf0bCJY5PQLU0IgxsH%%4f)~5%ZSGw4-y#)++hFTg zan{r8CIU;j?DLYjd@Gve0i(0 zvbBufN}{k*&210EyB^pqwkF$-_&v8K_H@hgRVZF11A#JX9JU2lS9PRv)s%s&=NXUN zxI{655Z6z+{p5M?iG9?C9VHYOfEQgrQv#9zQu4(RK8i&~W??XDrPTFXnG8uxyyybmqqY|JK@voJn8V*Ol{ez ze7Ts;q0+yWx)d}`F3rGp8JA$~G}8A|Nu{?4GN%*EuLS-S<2m2BOu$PHG&yN5JgC~S zgD5$l)|)6@G}~^NFEzxZ$hg$I;08G0Uzv`*$P0-N+t+~ng9MFzW%*)p7v|-4ms;A| zEUukvm4~o?8Vo5zFW6}8!n*v*@t2xvTyUW-!$H-_IF&8`FoW3OO~t||IkW%moXldD zVapSlarIcL^_|UUzDd6VuvCLyre4Q(vs*B8+0A{$!%J&&cinbu>7`7|p409LmJ*S_ z5@HNXn3dhAs-ETh-B^BRB*CtY|d z>1Xh$8rJ5T+Uv->XR@2)5W%`Vmf)#sTgiHW|F~87O!SC7y(=XFXihY2ZqN~w@Eaj6 z#s$4y<>k+CD4+F4j&Oc2Jpyq6TTQxEmrh$i+JHNq9V?=|dZ|jtGihwguQ&9J;No0C zTEZ=5y`A}Tr1|=yKSi;E^Gh7)MZI3BwF8E3%88q6+(n+coju-2(HU72f_Ct@1?J4a__>xJKi%F6wW}qCZY{`#8a~~ zL-}HL^*+~l-;BId@w;E^3BrR^_HvnTAplDh{r7&2s#~#pN3=V*txnRea7|k*u6+Kg zb!N?be|%;qV&l)KX*ax*O&MPq-_0GLQw$-zsS?AwC0~%$gW3bT@3WgPD0R!6CmT;^ zsa5k{_NgAQ{;_3GSXseE@hnRV&ZTHm=2l7i4t;HMEX#B1qfYdTkRA{2#(OdJSM#9K z!|WeyB^93%-o73vf11UK^Jx!PE8{cEP&@MCIbw|AE7SYPN%P2-c+P8}Z}Vg+$Q6;h zKV2~~Sr~_)A1<7wj*0GLDwr*BHbyMKH4xcDKT_VTnf3tci}} zhoOtRgrH03896%%Wa)u$ik|5q3?cOPfuFE#ZU%mjW091+b8Iy3`6B7}SPkydk!&*$ z;gEkzcfg~*$9f64lm(y0Uuy3=`RRkNXFEV(@5uSd| zGs<2H-@+aDh@h@``p)TWr0fK+t|FMlJKEcg45UXFDOgn;hPVWn5-d@158((n#XJF- z$gwl}_}~ShMKU)+`J?0nOp9P~Lvu$)MbB`bt0Uj`;InbabbCT8j+`P?yPB~`jVQ^( zV7#x%WTnOndX>kiNJhrInAv*XpZZa8JTJHTxS3kwZ5ahC3YuGT#G8_=0y;*=`)U#K z2LorXQL<7F%ofHUkDI!}mj{ksOtl%Zrg zSBmd=*xve zCM!dvL%bi~zkR?IGytG5F=h%f(JtO5+6PKX(dD4Y0i`b@xEptoycigGsR72?R@%_T z^DUb!Oi|KwK8n+bzV+lA_C2*I`QyL5F9krx$=Pj<7hDo3Q=BM(G6y)J(}8eU!k|kB zn7J0y8P6!K8JsSlg;u#yh!EJ5cJV5nwo$TUww+=_#Bl@Ju!S4S>FoWWRf%%4>euqq z<0GLvIC8t0k_plj%4~5#syxyPZE&qM-FB5c&$=$BrRlEm4zMa|FO}%tjz2^SHK%^| zU^CV8ds?u3_uM&7QaM17`L1#xlaXGgrnXRRv#Pvgj)SD&o7~dpz6>Zg#^<9ArARl< zQ1QT`*RsyHGNGO|%q2z*KjZCl?K!AsBn?CH^T7Lg63e|63H*fh;O?7AI)l$7R`EF> z`a^8OZSiG4Xwq)X8q(YpXqQJ+)=R1I7J?G$v5rH?4Ix)ZN&d}*08pYl~{ZKg#Uos=vpdc_KHU9!c7KA8ffuUrYHCui2_`PJkz+CG_L zS`Y^9*=^*|*W{yemS<#Uglm}<*5fEHCDG}{(dlXE zd;@qT=4IG1rjCm;BF*lni`!0AyEYeP+^!#(H=Nn^_<%K;r`rd(jjt0?yO(8RuODh{ zPY=)HY`MmkzGAVvd>b>e_Rb}hyo z#2b1>0Pu0)cG|aoQ$ZAYwS921i9>2H>}0*s!e#-FQWUs&aiN)i!ZK-kb?JI!RrTrB zjL4^YblHqB*J{n$k7-tg%;pZ95q0D;jzKb|+!TLb7EazXSh^^|@kkJR#xzYgn^XJ5 zHqFSLaC=5J&9%>y{cMCw_+iNHV#uarNOpnj1XvVvAn?G&iJZ}9^;G

E_vSbhom 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�Iwi9rU`AXz7_#amlDcG#za(9PD2B(tF8 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�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%0AW2^Hpau{GdRv! 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%0DJf6k~rF74V{`TKAT};#Pv50>;f_NapCOo0Q7A^ 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π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

tnl(OQ-|R{={*Qkcz()|a}{Pj6ag!y%n- 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

$Hox`+v@2Vutzp%`Yt_--y~*X`pH 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
._)).Returns(ControlledFragmentHandlerAction.CONTINUE); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.CONTINUE); var fragmentsRead = image.ControlledPoll(MockControlledFragmentHandler, int.MaxValue); Assert.AreEqual(1, fragmentsRead); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened().Then( + A.CallTo(() => MockControlledFragmentHandler(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened().Then( A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH)).MustHaveHappened()); } @@ -202,7 +203,7 @@ public void ShouldUpdatePositionOnRethrownExceptionInControlledPoll() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(0)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A
._)).Throws(new Exception()); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)).Throws(new Exception()); A.CallTo(ErrorHandler).Throws(new Exception()); @@ -220,7 +221,7 @@ public void ShouldUpdatePositionOnRethrownExceptionInControlledPoll() Assert.True(thrown); Assert.AreEqual(initialPosition + ALIGNED_FRAME_LENGTH, image.Position()); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened(); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened(); } [Test] @@ -263,14 +264,14 @@ public void ShouldNotPollOneFragmentToControlledFragmentHandlerOnAbort() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(0)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.ABORT); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.ABORT); var fragmentsRead = image.ControlledPoll(MockControlledFragmentHandler, int.MaxValue); Assert.AreEqual(0, fragmentsRead); Assert.AreEqual(initialPosition, image.Position()); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened(); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened(); } [Test] @@ -283,13 +284,13 @@ public void ShouldPollOneFragmentToControlledFragmentHandlerOnBreak() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(0)); InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(1)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.BREAK); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.BREAK); var fragmentsRead = image.ControlledPoll(MockControlledFragmentHandler, int.MaxValue); Assert.AreEqual(1, fragmentsRead); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened().Then( + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened().Then( A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH)).MustHaveHappened()); } @@ -303,15 +304,15 @@ public void ShouldPollFragmentsToControlledFragmentHandlerOnCommit() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(0)); InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(1)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.COMMIT); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.COMMIT); var fragmentsRead = image.ControlledPoll(MockControlledFragmentHandler, int.MaxValue); Assert.AreEqual(2, fragmentsRead); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened() + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened() .Then(A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH)).MustHaveHappened()) - .Then(A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) + .Then(A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) .Then(A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH*2)).MustHaveHappened()); } @@ -326,17 +327,17 @@ public void ShouldUpdatePositionToEndOfCommittedFragmentOnCommit() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(1)); InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(2)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A
._)) + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)) .ReturnsNextFromSequence(ControlledFragmentHandlerAction.CONTINUE, ControlledFragmentHandlerAction.COMMIT, ControlledFragmentHandlerAction.CONTINUE); var fragmentsRead = image.ControlledPoll(MockControlledFragmentHandler, int.MaxValue); Assert.AreEqual(3, fragmentsRead); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened() - .Then(A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened() + .Then(A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) .Then(A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH * 2)).MustHaveHappened()) - .Then(A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, 2 * ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) + .Then(A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, 2 * ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) .Then(A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH * 3)).MustHaveHappened()); } @@ -350,14 +351,14 @@ public void ShouldPollFragmentsToControlledFragmentHandlerOnContinue() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(0)); InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(1)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.CONTINUE); + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, A._, A._, A
._)).Returns(ControlledFragmentHandlerAction.CONTINUE); var fragmentsRead = image.ControlledPoll(MockControlledFragmentHandler, int.MaxValue); Assert.AreEqual(2, fragmentsRead); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened() - .Then(A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) + A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened() + .Then(A.CallTo(() => MockControlledFragmentHandler.Invoke(A._, ALIGNED_FRAME_LENGTH + DataHeaderFlyweight.HEADER_LENGTH, DATA.Length, A
._)).MustHaveHappened()) .Then(A.CallTo(() => Position.SetOrdered(initialPosition + ALIGNED_FRAME_LENGTH * 2)).MustHaveHappened()); } diff --git a/src/Adaptive.Aeron.Tests/LogBuffer/TermAppenderTest.cs b/src/Adaptive.Aeron.Tests/LogBuffer/TermAppenderTest.cs index 06036ae5..55e6f9e0 100644 --- a/src/Adaptive.Aeron.Tests/LogBuffer/TermAppenderTest.cs +++ b/src/Adaptive.Aeron.Tests/LogBuffer/TermAppenderTest.cs @@ -67,10 +67,10 @@ public void ShouldPackResult() const int termId = 7; const int termOffset = -1; - long result = TermAppender.Pack(termId, termOffset); + long result = LogBufferDescriptor.PackTail(termId, termOffset); - Assert.That(TermAppender.TermId(result), Is.EqualTo(termId)); - Assert.That(TermAppender.TermOffset(result), Is.EqualTo(termOffset)); + Assert.That(LogBufferDescriptor.TermId(result), Is.EqualTo(termId)); + Assert.That(LogBufferDescriptor.TermOffset(result), Is.EqualTo(termOffset)); } [Test] @@ -83,11 +83,11 @@ public void ShouldAppendFrameToEmptyLog() int alignedFrameLength = BitUtil.Align(frameLength, FrameDescriptor.FRAME_ALIGNMENT); const int tail = 0; - _logMetaDataBuffer.PutLong(TermTailCounterOffset, TermAppender.Pack(TermID, tail)); + _logMetaDataBuffer.PutLong(TermTailCounterOffset, LogBufferDescriptor.PackTail(TermID, tail)); Assert.That(_termAppender.AppendUnfragmentedMessage(_headerWriter, buffer, 0, msgLength, RVS), Is.EqualTo((long) alignedFrameLength)); - Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), TermAppender.Pack(TermID, tail + alignedFrameLength)); + Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), LogBufferDescriptor.PackTail(TermID, tail + alignedFrameLength)); A.CallTo(() => _headerWriter.Write(_termBuffer, tail, frameLength, TermID)).MustHaveHappened() .Then(A.CallTo(() => _termBuffer.PutBytes(headerLength, buffer, 0, msgLength)).MustHaveHappened()) @@ -105,12 +105,12 @@ public void ShouldAppendFrameTwiceToLog() int alignedFrameLength = BitUtil.Align(frameLength, FrameDescriptor.FRAME_ALIGNMENT); int tail = 0; - _logMetaDataBuffer.PutLong(TermTailCounterOffset, TermAppender.Pack(TermID, tail)); + _logMetaDataBuffer.PutLong(TermTailCounterOffset, LogBufferDescriptor.PackTail(TermID, tail)); Assert.That(_termAppender.AppendUnfragmentedMessage(_headerWriter, buffer, 0, msgLength, RVS), Is.EqualTo((long) alignedFrameLength)); Assert.That(_termAppender.AppendUnfragmentedMessage(_headerWriter, buffer, 0, msgLength, RVS), Is.EqualTo((long) alignedFrameLength*2)); - Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), TermAppender.Pack(TermID, tail + alignedFrameLength * 2)); + Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), LogBufferDescriptor.PackTail(TermID, tail + alignedFrameLength * 2)); A.CallTo(() => _headerWriter.Write(_termBuffer, tail, frameLength, TermID)).MustHaveHappened() .Then(A.CallTo(() => _termBuffer.PutBytes(headerLength, buffer, 0, msgLength)).MustHaveHappened()) @@ -132,12 +132,12 @@ public void ShouldPadLogAndTripWhenAppendingWithInsufficientRemainingCapacity() UnsafeBuffer buffer = new UnsafeBuffer(new byte[128]); int frameLength = TermBufferLength - tailValue; - _logMetaDataBuffer.PutLong(TermTailCounterOffset, TermAppender.Pack(TermID, tailValue)); + _logMetaDataBuffer.PutLong(TermTailCounterOffset, LogBufferDescriptor.PackTail(TermID, tailValue)); - long expectResult = TermAppender.Pack(TermID, TermAppender.TRIPPED); + long expectResult = LogBufferDescriptor.PackTail(TermID, TermAppender.TRIPPED); Assert.That(_termAppender.AppendUnfragmentedMessage(_headerWriter, buffer, 0, msgLength, RVS), Is.EqualTo(expectResult)); - Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), TermAppender.Pack(TermID, tailValue + requiredFrameSize)); + Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), LogBufferDescriptor.PackTail(TermID, tailValue + requiredFrameSize)); A.CallTo(() => _headerWriter.Write(_termBuffer, tailValue, frameLength, TermID)).MustHaveHappened() .Then(A.CallTo(() => _termBuffer.PutShort(FrameDescriptor.TypeOffset(tailValue), (short) FrameDescriptor.PADDING_FRAME_TYPE)).MustHaveHappened()) @@ -154,11 +154,11 @@ public void ShouldFragmentMessageOverTwoFrames() UnsafeBuffer buffer = new UnsafeBuffer(new byte[msgLength]); int tail = 0; - _logMetaDataBuffer.PutLong(TermTailCounterOffset, TermAppender.Pack(TermID, tail)); + _logMetaDataBuffer.PutLong(TermTailCounterOffset, LogBufferDescriptor.PackTail(TermID, tail)); Assert.That(_termAppender.AppendFragmentedMessage(_headerWriter, buffer, 0, msgLength, MaxPayloadLength, RVS), Is.EqualTo((long) requiredCapacity)); - Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), TermAppender.Pack(TermID, tail + requiredCapacity)); + Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), LogBufferDescriptor.PackTail(TermID, tail + requiredCapacity)); A.CallTo(() => _headerWriter.Write(_termBuffer, tail, MaxFrameLength, TermID)).MustHaveHappened() .Then(A.CallTo(() => _termBuffer.PutBytes(tail + headerLength, buffer, 0, MaxPayloadLength)).MustHaveHappened()) @@ -184,7 +184,7 @@ public void ShouldClaimRegionForZeroCopyEncoding() A.CallTo(() => _termBuffer.PutIntOrdered(A._, A._)); - _logMetaDataBuffer.PutLong(TermTailCounterOffset, TermAppender.Pack(TermID, tail)); + _logMetaDataBuffer.PutLong(TermTailCounterOffset, LogBufferDescriptor.PackTail(TermID, tail)); Assert.That(_termAppender.Claim(_headerWriter, msgLength, bufferClaim), Is.EqualTo((long) alignedFrameLength)); @@ -195,7 +195,7 @@ public void ShouldClaimRegionForZeroCopyEncoding() bufferClaim.Commit(); - Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), TermAppender.Pack(TermID, tail + alignedFrameLength)); + Assert.AreEqual(LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer, PartionIndex), LogBufferDescriptor.PackTail(TermID, tail + alignedFrameLength)); A.CallTo(() => _headerWriter.Write(_termBuffer, tail, frameLength, TermID)).MustHaveHappened(); } diff --git a/src/Adaptive.Aeron.Tests/PublicationTest.cs b/src/Adaptive.Aeron.Tests/PublicationTest.cs index 98d0c2df..a5b07366 100644 --- a/src/Adaptive.Aeron.Tests/PublicationTest.cs +++ b/src/Adaptive.Aeron.Tests/PublicationTest.cs @@ -69,7 +69,15 @@ public void SetUp() _termBuffers[i] = new UnsafeBuffer(new byte[LogBufferDescriptor.TERM_MIN_LENGTH]); } - _publication = new Publication(_conductor, Channel, StreamID1, SessionID1, _publicationLimit, _logBuffers, CorrelationID); + _publication = new Publication( + _conductor, + Channel, + StreamID1, + SessionID1, + _publicationLimit, + _logBuffers, + CorrelationID, + CorrelationID); _publication.IncRef(); diff --git a/src/Adaptive.Aeron.sln.DotSettings b/src/Adaptive.Aeron.sln.DotSettings index 4ac96da7..050e688d 100644 --- a/src/Adaptive.Aeron.sln.DotSettings +++ b/src/Adaptive.Aeron.sln.DotSettings @@ -1,3 +1,5 @@  <Policy Inspect="True" Prefix="" Suffix="" Style="AA_BB" /> - <Policy Inspect="True" Prefix="" Suffix="" Style="AA_BB" /> \ No newline at end of file + <Policy Inspect="True" Prefix="" Suffix="" Style="AA_BB" /> + <Policy Inspect="True" Prefix="" Suffix="" Style="AA_BB" /> + <Policy Inspect="True" Prefix="" Suffix="" Style="AA_BB" /> \ No newline at end of file diff --git a/src/Adaptive.Aeron/Adaptive.Aeron.csproj b/src/Adaptive.Aeron/Adaptive.Aeron.csproj index def04336..fd046eb2 100644 --- a/src/Adaptive.Aeron/Adaptive.Aeron.csproj +++ b/src/Adaptive.Aeron/Adaptive.Aeron.csproj @@ -63,6 +63,8 @@ + + @@ -78,8 +80,9 @@ - + + @@ -88,7 +91,7 @@ - + @@ -99,8 +102,8 @@ - - + + diff --git a/src/Adaptive.Aeron/Aeron.cs b/src/Adaptive.Aeron/Aeron.cs index 17769fe6..fa2eb53d 100644 --- a/src/Adaptive.Aeron/Aeron.cs +++ b/src/Adaptive.Aeron/Aeron.cs @@ -16,6 +16,7 @@ using System; using System.IO; +using System.Text; using System.Threading; using Adaptive.Aeron.Exceptions; using Adaptive.Agrona; @@ -31,9 +32,12 @@ namespace Adaptive.Aeron /// /// Aeron entry point for communicating to the Media Driver for creating s and s. /// Use an to configure the Aeron object. - /// + /// /// A client application requires only one Aeron object per Media Driver. - /// + /// + /// Note: If is not set and a + /// occurs then the process will face the wrath of . See . + /// /// public sealed class Aeron : IDisposable { @@ -87,7 +91,9 @@ public sealed class Aeron : IDisposable */ public const long PublicationConnectionTimeoutMs = 5000; + private readonly long _clientId; private readonly ILock _clientLock; + private readonly Context _ctx; private readonly ClientConductor _conductor; private readonly AgentRunner _conductorRunner; private readonly AgentInvoker _conductorInvoker; @@ -97,6 +103,8 @@ internal Aeron(Context ctx) { ctx.Conclude(); + _ctx = ctx; + _clientId = ctx.ClientId(); _clientLock = ctx.ClientLock(); _commandBuffer = ctx.ToDriverBuffer(); _conductor = new ClientConductor(ctx); @@ -105,7 +113,6 @@ internal Aeron(Context ctx) { _conductorInvoker = new AgentInvoker(ctx.ErrorHandler(), null, _conductor); _conductorRunner = null; - ctx.ConductorAgentInvoker(_conductorInvoker); } else { @@ -116,7 +123,7 @@ internal Aeron(Context ctx) /// /// Create an Aeron instance and connect to the media driver with a default . - /// + /// /// Threads required for interacting with the media driver are created and managed within the Aeron instance. /// /// @@ -143,10 +150,14 @@ public static Aeron Connect(Context ctx) var aeron = new Aeron(ctx); if (ctx.UseConductorAgentInvoker()) { - return aeron; + aeron.ConductorAgentInvoker().Start(); + } + else + { + aeron.Start(ctx.ThreadFactory()); } - return aeron.Start(ctx.ThreadFactory()); + return aeron; } catch (Exception) { @@ -155,6 +166,33 @@ public static Aeron Connect(Context ctx) } } + /// + /// Get the that is used by this client. + /// + /// the that is use by this client. + public Context Ctx() + { + return _ctx; + } + + /// + /// Get the client identity that has been allocated for communicating with the media driver. + /// + /// the client identity that has been allocated for communicating with the media driver. + public long ClientId() + { + return _clientId; + } + + /// + /// Get the for the client conductor. + /// + /// the for the client conductor. + public AgentInvoker ConductorAgentInvoker() + { + return _conductorInvoker; + } + /// /// Clean up and release all Aeron internal resources and shutdown threads. /// @@ -171,6 +209,8 @@ public void Dispose() { _conductorInvoker.Dispose(); } + + _ctx.Dispose(); } finally { @@ -240,8 +280,8 @@ public Subscription AddSubscription(string channel, int streamId) /// Add a new for subscribing to messages from publishers. /// /// This method will override the default handlers from the , i.e. - /// and - /// . Null values are valid and will + /// and + /// . Null values are valid and will /// result in no action being taken. /// /// for receiving the messages known to the media layer. @@ -274,7 +314,7 @@ public Subscription AddSubscription(string channel, int streamId, AvailableImage /// next correlation id that is unique for the Media Driver. public long NextCorrelationId() { - if (_conductor.Status != ClientConductor.ClientConductorStatus.ACTIVE) + if (_conductor.IsClosed()) { throw new InvalidOperationException("Client is closed"); } @@ -288,14 +328,12 @@ public long NextCorrelationId() /// new for the Aeron media driver in use. public CountersReader CountersReader() { - if (_conductor.Status != ClientConductor.ClientConductorStatus.ACTIVE) + if (_conductor.IsClosed()) { throw new InvalidOperationException("Client is closed"); } - - Context ctx = _conductor.Context(); - - return new CountersReader(ctx.CountersMetaDataBuffer(), ctx.CountersValuesBuffer()); + + return new CountersReader(_ctx.CountersMetaDataBuffer(), _ctx.CountersValuesBuffer(), Encoding.ASCII); } private Aeron Start(IThreadFactory threadFactory) @@ -306,19 +344,19 @@ private Aeron Start(IThreadFactory threadFactory) } /// - /// This class provides configuration for the class via the + /// This class provides configuration for the class via the /// method and its overloads. It gives applications some control over the interactions with the Aeron Media Driver. /// It can also set up error handling as well as application callbacks for image information from the /// Media Driver. /// /// A number of the properties are for testing and should not be set by end users. /// + /// Note: Do not reuse instances of the context across different clients. /// public class Context : IDisposable { + private long _clientId; private bool _useConductorAgentInvoker = false; - private AgentInvoker _conductorAgentInvoker; - private AgentInvoker _driverAgentInvoker; private ILock _clientLock; private IEpochClock _epochClock; private INanoClock _nanoClock; @@ -336,7 +374,7 @@ public class Context : IDisposable private FileInfo _cncFile; private string _aeronDirectoryName; private DirectoryInfo _aeronDirectory; - private long _driverTimeoutMs = DEFAULT_DRIVER_TIMEOUT_MS; + private long _driverTimeoutMs = DRIVER_TIMEOUT_MS; private MappedByteBuffer _cncByteBuffer; private UnsafeBuffer _cncMetaDataBuffer; private UnsafeBuffer _countersMetaDataBuffer; @@ -360,10 +398,27 @@ public class Context : IDisposable /// public const string IPC_CHANNEL = "aeron:ipc"; + /// + /// URI used for Spy s whereby an outgoing unicast or multicast publication can be spied on + /// by IPC without receiving it again via the network. + /// + public const string SPY_PREFIX = "aeron-spy:"; + + /// + /// The address and port used for a UDP channel. For the publisher it is the socket to send to, + /// for the subscriber it is the socket to receive from. + /// + public const string ENDPOINT_PARAM_NAME = "endpoint"; + + /// + /// The network interface via which the socket will be routed. + /// + public const string INTERFACE_PARAM_NAME = "interface"; + /// /// Timeout in which the driver is expected to respond. /// - public const long DEFAULT_DRIVER_TIMEOUT_MS = 10000; + public const long DRIVER_TIMEOUT_MS = 10000; /// /// Initial term id to be used when creating an . @@ -384,6 +439,26 @@ public class Context : IDisposable /// The param name to be used for the term length as a channel URI param. /// public const string TERM_LENGTH_PARAM_NAME = "term-length"; + + /// + /// MTU length parameter name for using as a channel URI param. + /// + public const string MTU_LENGTH_PARAM_NAME = "mtu"; + + /// + /// Time To Live param for a multicast datagram. + /// + public const string TTL_PARAM_NAME = "ttl"; + + /// + /// The param for the control channel IP address and port for multi-destination-cast semantics. + /// + public const string MDC_CONTROL_PARAM_NAME = "control"; + + /// + /// Key for the mode of control that such be used for multi-destination-cast semantics. + /// + public const string MDC_CONTROL_MODE_PARAM_NAME = "control-mode"; /// /// MTU length parameter name for using as a channel URI param. @@ -517,12 +592,22 @@ public Context Conclude() if (null == _driverProxy) { - _driverProxy = new DriverProxy(ToDriverBuffer()); + _clientId = _toDriverBuffer.NextCorrelationId(); + _driverProxy = new DriverProxy(ToDriverBuffer(), _clientId); } return this; } + /// + /// Get the client identity that has been allocated for communicating with the media driver. + /// + /// the client identity that has been allocated for communicating with the media driver. + public long ClientId() + { + return _clientId; + } + /// /// Get the command and control file. /// @@ -554,48 +639,13 @@ public bool UseConductorAgentInvoker() return _useConductorAgentInvoker; } - public Context ConductorAgentInvoker(AgentInvoker conductorAgentInvoker) - { - _conductorAgentInvoker = conductorAgentInvoker; - return this; - } - - /// - /// Get the that is used to run the - /// - /// the that is used to run the - public AgentInvoker ConductorAgentInvoker() - { - return _conductorAgentInvoker; - } - /// - /// Set the for the Media Driver to be used while awaiting a synchronous response. + /// The that is used to provide mutual exclusion in the Aeron client. /// - /// Useful for when running on a low thread count scenario. + /// If the is set and only one thread accesses the client + /// then the lock can be set to to elide the lock overhead. /// /// - /// to be invoked while awaiting a response in the client. - /// this for a fluent API. - public Context DriverAgentInvoker(AgentInvoker driverAgentInvoker) - { - _driverAgentInvoker = driverAgentInvoker; - return this; - } - - - /// - /// Get the that is used to run the Media Driver while awaiting a synchronous response. - /// - /// the that is used for running the Media Driver. - public AgentInvoker DriverAgentInvoker() - { - return _driverAgentInvoker; - } - - /// - /// The that is used to provide mutual exclusion in the Aeron client. - /// /// that is used to provide mutual exclusion in the Aeron client. /// this for a fluent API. public Context ClientLock(ILock @lock) @@ -794,7 +844,7 @@ public Context AvailableImageHandler(AvailableImageHandler handler) /// Get the default callback handler for notifying when s become available. /// /// the callback handler for notifying when s become available. - public virtual AvailableImageHandler AvailableImageHandler() + public AvailableImageHandler AvailableImageHandler() { return _availableImageHandler; } @@ -814,13 +864,14 @@ public Context UnavailableImageHandler(UnavailableImageHandler handler) /// Get the callback handler for when an is unavailable. /// /// the callback handler for when an is unavailable. - public virtual UnavailableImageHandler unavailableImageHandler() + public UnavailableImageHandler UnavailableImageHandler() { return _unavailableImageHandler; } /// - /// Get the buffer containing the counter meta data. + /// Get the buffer containing the counter meta data. These counters are R/W for the driver, read only for all + /// other users. /// /// The buffer storing the counter meta data. public UnsafeBuffer CountersMetaDataBuffer() @@ -829,7 +880,7 @@ public UnsafeBuffer CountersMetaDataBuffer() } /// - /// Set the buffer containing the counter meta data. + /// Set the buffer containing the counter meta data. Testing/internal purposes only. /// /// The new counter meta data buffer. /// this Object for method chaining. @@ -841,7 +892,7 @@ public Context CountersMetaDataBuffer(UnsafeBuffer countersMetaDataBuffer) /// - /// Get the buffer containing the counters. + /// Get the buffer containing the counters. These counters are R/W for the driver, read only for all other users. /// /// The buffer storing the counters. public UnsafeBuffer CountersValuesBuffer() @@ -850,7 +901,7 @@ public UnsafeBuffer CountersValuesBuffer() } /// - /// Set the buffer containing the counters + /// Set the buffer containing the counters. Testing/internal purposes only. /// /// The new counters buffer. /// this Object for method chaining. @@ -1062,7 +1113,7 @@ private void ConnectToDriver() _cncMetaDataBuffer = CncFileDescriptor.CreateMetaDataBuffer(_cncByteBuffer); int cncVersion; - while (0 == (cncVersion = _cncMetaDataBuffer.GetInt(CncFileDescriptor.CncVersionOffset(0)))) + while (0 == (cncVersion = _cncMetaDataBuffer.GetIntVolatile(CncFileDescriptor.CncVersionOffset(0)))) { if (_epochClock.Time() > (startTimeMs + DriverTimeoutMs())) { @@ -1148,20 +1199,20 @@ public MappedByteBuffer MapExistingCncFile(Action logProgress) /// /// to check /// for the driver liveness check. - /// for feedback as liveness checked. + /// for feedback as liveness checked. /// true if a driver is active or false if not. - public static bool IsDriverActive(DirectoryInfo directory, long driverTimeoutMs, Action logProgress) + public static bool IsDriverActive(DirectoryInfo directory, long driverTimeoutMs, Action logger) { FileInfo cncFile = new FileInfo(Path.Combine(directory.FullName, CncFileDescriptor.CNC_FILE)); if (cncFile.Exists) { - logProgress("INFO: Aeron CnC file " + cncFile + " exists"); + logger("INFO: Aeron CnC file " + cncFile + " exists"); var cncByteBuffer = IoUtil.MapExistingFile(cncFile, "CnC file"); try { - return IsDriverActive(driverTimeoutMs, logProgress, cncByteBuffer); + return IsDriverActive(driverTimeoutMs, logger, cncByteBuffer); } finally { @@ -1176,14 +1227,14 @@ public static bool IsDriverActive(DirectoryInfo directory, long driverTimeoutMs, /// Is a media driver active in the current Aeron directory? /// /// for the driver liveness check. - /// for feedback as liveness checked. + /// for feedback as liveness checked. /// true if a driver is active or false if not. - public bool IsDriverActive(long driverTimeoutMs, Action logHandler) + public bool IsDriverActive(long driverTimeoutMs, Action logger) { - var cncByteBuffer = MapExistingCncFile(logHandler); + var cncByteBuffer = MapExistingCncFile(logger); try { - return IsDriverActive(driverTimeoutMs, logHandler, cncByteBuffer); + return IsDriverActive(driverTimeoutMs, logger, cncByteBuffer); } finally { @@ -1195,20 +1246,29 @@ public bool IsDriverActive(long driverTimeoutMs, Action logHandler) /// Is a media driver active in the current mapped CnC buffer? /// /// for the driver liveness check. - /// for feedback as liveness checked. + /// for feedback as liveness checked. /// for the existing CnC file. /// true if a driver is active or false if not. - public static bool IsDriverActive(long driverTimeoutMs, Action logProgress, - MappedByteBuffer cncByteBuffer) + public static bool IsDriverActive(long driverTimeoutMs, Action logger, MappedByteBuffer cncByteBuffer) { - if (null == cncByteBuffer) { return false; } UnsafeBuffer cncMetaDataBuffer = CncFileDescriptor.CreateMetaDataBuffer(cncByteBuffer); - int cncVersion = cncMetaDataBuffer.GetInt(CncFileDescriptor.CncVersionOffset(0)); + + long startTimeMs = UnixTimeConverter.CurrentUnixTimeMillis(); + int cncVersion; + while (0 == (cncVersion = cncMetaDataBuffer.GetIntVolatile(CncFileDescriptor.CncVersionOffset(0)))) + { + if (UnixTimeConverter.CurrentUnixTimeMillis() > (startTimeMs + driverTimeoutMs)) + { + throw new DriverTimeoutException("CnC file is created but not initialised."); + } + + Sleep(1); + } if (CncFileDescriptor.CNC_VERSION != cncVersion) { @@ -1223,7 +1283,7 @@ public static bool IsDriverActive(long driverTimeoutMs, Action logProgre long now = DateTime.Now.ToFileTimeUtc(); long diff = now - timestamp; - logProgress("INFO: Aeron toDriver consumer heartbeat is " + diff + "ms old"); + logger("INFO: Aeron toDriver consumer heartbeat is " + diff + "ms old"); return diff <= driverTimeoutMs; } @@ -1266,8 +1326,7 @@ public int SaveErrorLog(StreamWriter writer, MappedByteBuffer cncByteBuffer) if (CncFileDescriptor.CNC_VERSION != cncVersion) { throw new InvalidOperationException( - "Aeron CnC version does not match: version=" + cncVersion + " required=" + - CncFileDescriptor.CNC_VERSION); + "Aeron CnC version does not match: required=" + CncFileDescriptor.CNC_VERSION + " version=" + cncVersion); } UnsafeBuffer buffer = CncFileDescriptor.CreateErrorLogBuffer(cncByteBuffer, cncMetaDataBuffer); diff --git a/src/Adaptive.Aeron/BufferBuilder.cs b/src/Adaptive.Aeron/BufferBuilder.cs index 7443857f..c96cc2cf 100644 --- a/src/Adaptive.Aeron/BufferBuilder.cs +++ b/src/Adaptive.Aeron/BufferBuilder.cs @@ -31,14 +31,14 @@ namespace Adaptive.Aeron public class BufferBuilder { /// - /// Maximum capcity to which the array can grow + /// Maximum capcity to which the buffer can grow. /// public const int MAX_CAPACITY = int.MaxValue - 8; /// - /// Initial capcity for the internal buffer. + /// Initial minimum capacity for the internal buffer when used, zero if not used. /// - public const int INITIAL_CAPACITY = 4096; + public const int MIN_ALLOCATED_CAPACITY = 4096; private readonly UnsafeBuffer _mutableDirectBuffer; @@ -47,9 +47,9 @@ public class BufferBuilder private int _capacity; /// - /// Construct a buffer builder with a default growth increment of + /// Construct a buffer builder with a default growth increment of /// - public BufferBuilder() : this(INITIAL_CAPACITY) + public BufferBuilder() : this(MIN_ALLOCATED_CAPACITY) { } @@ -122,7 +122,7 @@ public BufferBuilder Reset() /// the builder for fluent API usage. public BufferBuilder Compact() { - _capacity = Math.Max(INITIAL_CAPACITY, BitUtil.FindNextPositivePowerOfTwo(_limit)); + _capacity = Math.Max(MIN_ALLOCATED_CAPACITY, BitUtil.FindNextPositivePowerOfTwo(_limit)); _buffer = CopyOf(_buffer, _capacity); _mutableDirectBuffer.Wrap(_buffer); @@ -171,7 +171,7 @@ private static int FindSuitableCapacity(int capacity, int requiredCapacity) { do { - int newCapacity = capacity + (capacity >> 1); + int newCapacity = Math.Max(capacity + (capacity >> 1), MIN_ALLOCATED_CAPACITY); if (newCapacity < 0 || newCapacity > MAX_CAPACITY) { diff --git a/src/Adaptive.Aeron/ChannelUri.cs b/src/Adaptive.Aeron/ChannelUri.cs new file mode 100644 index 00000000..859c125b --- /dev/null +++ b/src/Adaptive.Aeron/ChannelUri.cs @@ -0,0 +1,310 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Adaptive.Aeron +{ + /// + /// Parser for Aeron channel URIs. The format is: + ///
+    /// aeron-uri = "aeron:" media [ "?" param *( "|" param ) ]
+    /// media     = *( "[^?:]" )
+    /// param     = key "=" value
+    /// key       = *( "[^=]" )
+    /// value     = *( "[^|]" )
+    /// 
+ /// + /// Multiple params with the same key are allowed, the last value specified takes precedence. + /// + ///
+ /// + public class ChannelUri + { + private enum State + { + MEDIA, + PARAMS_KEY, + PARAMS_VALUE + } + + /// + /// URI Scheme for Aeron channels. + /// + public const string AERON_SCHEME = "aeron"; + + /// + /// Qualifier for spy subscriptions. + /// + public const string SPY_QUALIFIER = "aeron-spy"; + + private static readonly string AERON_PREFIX = AERON_SCHEME + ":"; + + private readonly string _prefix; + private readonly string _media; + private readonly IDictionary _params; + + /// + /// Construct with the components provided to avoid parsing. + /// + /// empty if no prefix is required otherwise expected to be 'aeron-spy' + /// for the channel which is typically "udp" or "ipc". + /// for the query string as key value pairs. + public ChannelUri(string prefix, string media, IDictionary @params) + { + _prefix = prefix; + _media = media; + _params = @params; + } + + /// + /// Construct with the components provided to avoid parsing. + /// + /// for the channel which is typically "udp" or "ipc". + /// for the query string as key value pairs. + public ChannelUri(string media, IDictionary @params) : this("", media, @params) + { + } + + /// + /// The prefix for the channel. + /// + /// the prefix for the channel. + public string Prefix() + { + return _prefix; + } + + /// + /// The media over which the channel operates. + /// + /// the media over which the channel operates. + public string Media() + { + return _media; + } + + /// + /// The scheme for the URI. Must be "aeron". + /// + /// the scheme for the URI. + public string Scheme() + { + return AERON_SCHEME; + } + + /// + /// Get a value for a given parameter key. + /// + /// to lookup. + /// the value if set for the key otherwise null. + public string Get(string key) + { + return _params[key]; + } + + /// + /// Get the value for a given parameter key or the default value provided if the key does not exist. + /// + /// to lookup. + /// to be returned if no key match is found. + /// the value if set for the key otherwise the default value provided. + public string Get(string key, string defaultValue) + { + string value = _params[key]; + if (null != value) + { + return value; + } + + return defaultValue; + } + + /// + /// Put a key and value pair in the map of params. + /// + /// of the param to be put. + /// of the param to be put. + /// the existing value otherwise null. + public string Put(string key, string value) + { + return _params[key] = value; + } + + /// + /// Does the URI contain a value for the given key. + /// + /// to be lookup. + /// true if the key has a value otherwise false. + public bool ContainsKey(string key) + { + return _params.ContainsKey(key); + } + + /// + /// Generate a String representation of the URI that is valid for an Aeron channel. + /// + /// a String representation of the URI that is valid for an Aeron channel. + public string ToString() + { + StringBuilder sb; + if (ReferenceEquals(_prefix, null) || "".Equals(_prefix)) + { + sb = new StringBuilder((_params.Count * 20) + 10); + } + else + { + sb = new StringBuilder(_params.Count * 20 + 20); + sb.Append(Aeron.Context.SPY_PREFIX); + } + + sb.Append(AERON_PREFIX).Append(_media); + + if (_params.Count > 0) + { + sb.Append('?'); + + foreach (KeyValuePair entry in _params) + { + sb.Append(entry.Key).Append('=').Append(entry.Value).Append('|'); + } + + sb.Length = sb.Length - 1; + } + + return sb.ToString(); + } + + /// + /// Parse a which contains an Aeron URI. + /// + /// to be parsed. + /// a new representing the URI string. + public static ChannelUri Parse(string cs) + { + int position = 0; + string prefix; + if (StartsWith(cs, Aeron.Context.SPY_PREFIX)) + { + prefix = SPY_QUALIFIER; + position = Aeron.Context.SPY_PREFIX.Length; + } + else + { + prefix = ""; + } + + if (!StartsWith(cs, position, AERON_PREFIX)) + { + throw new System.ArgumentException("Aeron URIs must start with 'aeron:', found: '" + cs + "'"); + } + else + { + position += AERON_PREFIX.Length; + } + + var builder = new StringBuilder(); + var @params = new Dictionary(); + string media = null; + string key = null; + + State state = State.MEDIA; + for (int i = position; i < cs.Length; i++) + { + char c = cs[i]; + + switch (state) + { + case State.MEDIA: + switch (c) + { + case '?': + media = builder.ToString(); + builder.Length = 0; + state = State.PARAMS_KEY; + break; + + case ':': + throw new ArgumentException("Encountered ':' within media definition"); + + default: + builder.Append(c); + break; + } + break; + + case State.PARAMS_KEY: + switch (c) + { + case '=': + key = builder.ToString(); + builder.Length = 0; + state = State.PARAMS_VALUE; + break; + + default: + builder.Append(c); + break; + } + break; + + case State.PARAMS_VALUE: + switch (c) + { + case '|': + @params[key] = builder.ToString(); + builder.Length = 0; + state = State.PARAMS_KEY; + break; + + default: + builder.Append(c); + break; + } + break; + + default: + throw new InvalidOperationException("Que? state=" + state); + } + } + + switch (state) + { + case State.MEDIA: + media = builder.ToString(); + break; + + case State.PARAMS_VALUE: + @params[key] = builder.ToString(); + break; + + default: + throw new ArgumentException("No more input found, but was in state: " + state); + } + + return new ChannelUri(prefix, media, @params); + } + + private static bool StartsWith(string input, int position, string prefix) + { + if (input.Length - position < prefix.Length) + { + return false; + } + + for (int i = 0; i < prefix.Length; i++) + { + if (input[position + i] != prefix[i]) + { + return false; + } + } + + return true; + } + + private static bool StartsWith(string input, string prefix) + { + return StartsWith(input, 0, prefix); + } + } +} \ No newline at end of file diff --git a/src/Adaptive.Aeron/ChannelUriStringBuilder.cs b/src/Adaptive.Aeron/ChannelUriStringBuilder.cs new file mode 100644 index 00000000..0ef4dd2e --- /dev/null +++ b/src/Adaptive.Aeron/ChannelUriStringBuilder.cs @@ -0,0 +1,488 @@ +using System; +using System.Text; +using Adaptive.Aeron.LogBuffer; + +namespace Adaptive.Aeron +{ + /// + /// Type safe means of building a channel URI associated with a or . + /// + /// + /// + /// + public class ChannelUriStringBuilder + { + private readonly StringBuilder _sb = new StringBuilder(64); + + private string _prefix; + private string _media; + private string _endpoint; + private string _networkInterface; + private string _controlEndpoint; + private string _controlMode; + private bool? _reliable; + private int? _ttl; + private int? _mtu; + private int? _termLength; + private int? _initialTermId; + private int? _termId; + private int? _termOffset; + + /// + /// Clear out all the values thus setting back to the initial state. + /// + /// this for a fluent API. + public ChannelUriStringBuilder Clear() + { + _prefix = null; + _media = null; + _endpoint = null; + _networkInterface = null; + _controlEndpoint = null; + _controlMode = null; + _reliable = null; + _ttl = null; + _mtu = null; + _termLength = null; + _initialTermId = null; + _termId = null; + _termOffset = null; + + return this; + } + + /// + /// Validates that the collection of set parameters are valid together. + /// + /// this for a fluent API. + /// if the combination of params is invalid. + public ChannelUriStringBuilder Validate() + { + if (null == _media) + { + throw new InvalidOperationException("media type is mandatory"); + } + + if ("udp".Equals(_media) && (null == _endpoint && null == _controlEndpoint)) + { + throw new InvalidOperationException("Either 'endpoint' or 'control' must be specified for UDP."); + } + + int count = 0; + count += null == _initialTermId ? 0 : 1; + count += null == _termId ? 0 : 1; + count += null == _termOffset ? 0 : 1; + + if (count > 0 && count < 3) + { + throw new InvalidOperationException( + "If any of then a complete set of 'initialTermId', 'termId', and 'termOffset' must be provided"); + } + + return this; + } + + /// + /// Set the prefix for taking an addition action such as spying on an outgoing publication with "aeron-spy". + /// + /// to be applied to the URI before the the scheme. + /// this for a fluent API. + public ChannelUriStringBuilder Prefix(string prefix) + { + if (null != prefix && !prefix.Equals("") && !prefix.Equals(ChannelUri.SPY_QUALIFIER)) + { + throw new ArgumentException("Invalid prefix: " + prefix); + } + + _prefix = prefix; + return this; + } + + /// + /// Get the prefix for the additional action to be taken on the request. + /// + /// the prefix for the additional action to be taken on the request. + public string Prefix() + { + return _prefix; + } + + /// + /// Set the media for this channel. Valid values are "udp" and "ipc". + /// + /// for this channel. + /// this for a fluent API. + public ChannelUriStringBuilder Media(string media) + { + switch (media) + { + case "udp": + case "ipc": + break; + + default: + throw new ArgumentException("Invalid media: " + media); + } + + _media = media; + return this; + } + + /// + /// The media over which the channel transmits. + /// + /// the media over which the channel transmits. + public string Media() + { + return _media; + } + + /// + /// Set the endpoint address:port pairing for the channel. This is the address the publication sends to and the + /// address the subscription receives from. + /// + /// address and port for the channel. + /// this for a fluent API. + public ChannelUriStringBuilder Endpoint(string endpoint) + { + _endpoint = endpoint; + return this; + } + + /// + /// Get the endpoint address:port pairing for the channel. + /// + /// the endpoint address:port pairing for the channel. + public string Endpoint() + { + return _endpoint; + } + + /// + /// Set the address of the local interface in the form host:[port]/[subnet mask] for routing traffic. + /// + /// for routing traffic. + /// this for a fluent API. + public ChannelUriStringBuilder NetworkInterface(string networkInterface) + { + _networkInterface = networkInterface; + return this; + } + + /// + /// Get the address of the local interface in the form host:[port]/[subnet mask] for routing traffic. + /// + /// the address of the local interface in the form host:[port]/[subnet mask] for routing traffic. + public string NetworkInterface() + { + return _networkInterface; + } + + /// + /// Set the control address:port pair for dynamically joining a multi-destination-cast publication. + /// + /// for joining a MDC control socket. + /// this for a fluent API. + public ChannelUriStringBuilder ControlEndpoint(string controlEndpoint) + { + _controlEndpoint = controlEndpoint; + return this; + } + + /// + /// Get the control address:port pair for dynamically joining a multi-destination-cast publication. + /// + /// the control address:port pair for dynamically joining a multi-destination-cast publication. + public string ControlEndpoint() + { + return _controlEndpoint; + } + + /// + /// Set the control mode for multi-destination-cast. Set to "manual" for allowing control from the publication API. + /// + /// for taking control of MDC. + /// this for a fluent API. + /// + /// + public ChannelUriStringBuilder ControlMode(string controlMode) + { + if (null != controlMode && !controlMode.Equals(Aeron.Context.MDC_CONTROL_MODE_MANUAL)) + { + throw new ArgumentException("Invalid control mode: " + controlMode); + } + + _controlMode = controlMode; + return this; + } + + /// + /// Get the control mode for multi-destination-cast. + /// + /// the control mode for multi-destination-cast. + public string ControlMode() + { + return _controlMode; + } + + /// + /// Set the subscription semantics for if loss is acceptable, or not, for a reliable message delivery. + /// + /// false if loss can be be gap filled. + /// this for a fluent API. + public ChannelUriStringBuilder Reliable(bool? isReliable) + { + _reliable = isReliable; + return this; + } + + /// + /// Get the subscription semantics for if loss is acceptable, or not, for a reliable message delivery. + /// + /// the subscription semantics for if loss is acceptable, or not, for a reliable message delivery. + public bool? Reliable() + { + return _reliable; + } + + /// + /// Set the Time To Live (TTL) for a multicast datagram. Valid values are 0-255 for the number of hops the datagram + /// can progress along. + /// + /// value for a multicast datagram. + /// this for a fluent API. + public ChannelUriStringBuilder Ttl(int? ttl) + { + if (null != ttl && (ttl < 0 || ttl > 255)) + { + throw new ArgumentException("TTL not in range 0-255: " + ttl); + } + + _ttl = ttl; + return this; + } + + /// + /// Get the Time To Live (TTL) for a multicast datagram. + /// + /// the Time To Live (TTL) for a multicast datagram. + public int? Ttl() + { + return _ttl; + } + + /// + /// Set the maximum transmission unit (MTU) including Aeron header for a datagram payload. + /// + /// the maximum transmission unit including Aeron header for a datagram payload. + /// this for a fluent API. + public ChannelUriStringBuilder Mtu(int? mtu) + { + if (null != mtu) + { + if (mtu < 32 || mtu > 65504) + { + throw new ArgumentException("MTU not in range 32-65504: " + mtu); + } + + if ((mtu & (FrameDescriptor.FRAME_ALIGNMENT - 1)) != 0) + { + throw new ArgumentException("MTU not a multiple of FRAME_ALIGNMENT: mtu=" + mtu); + } + } + + _mtu = mtu; + return this; + } + + /// + /// Get the maximum transmission unit (MTU) including Aeron header for a datagram payload. + /// + /// the maximum transmission unit (MTU) including Aeron header for a datagram payload. + public int? Mtu() + { + return _mtu; + } + + /// + /// Set the length of buffer used for each term of the log. Valid values are powers of 2 in the 64K - 1G range. + /// + /// of the buffer used for each term of the log. + /// this for a fluent API. + public ChannelUriStringBuilder TermLength(int? termLength) + { + if (null != termLength) + { + LogBufferDescriptor.CheckTermLength(termLength.Value); + } + + _termLength = termLength; + return this; + } + + /// + /// Get the length of buffer used for each term of the log. + /// + /// the length of buffer used for each term of the log. + public int? TermLength() + { + return _termLength; + } + + /// + /// Set the initial term id at which a publication will start. + /// + /// the initial term id at which a publication will start. + /// this for a fluent API. + public ChannelUriStringBuilder InitialTermId(int? initialTermId) + { + _initialTermId = initialTermId; + return this; + } + + /// + /// the initial term id at which a publication will start. + /// + /// the initial term id at which a publication will start. + public int? InitialTermId() + { + return _initialTermId; + } + + /// + /// Set the current term id at which a publication will start. This when combined with the initial term can + /// establish a starting position. + /// + /// at which a publication will start. + /// this for a fluent API. + public ChannelUriStringBuilder TermId(int? termId) + { + _termId = termId; + return this; + } + + /// + /// Get the current term id at which a publication will start. + /// + /// the current term id at which a publication will start. + public int? TermId() + { + return _termId; + } + + /// + /// Set the offset within a term at which a publication will start. This when combined with the term id can establish + /// a starting position. + /// + /// within a term at which a publication will start. + /// this for a fluent API. + public ChannelUriStringBuilder TermOffset(int? termOffset) + { + if (null != termOffset) + { + if ((termOffset < 0 || termOffset > LogBufferDescriptor.TERM_MAX_LENGTH)) + { + throw new ArgumentException("Term offset not in range 0-1g: " + termOffset); + } + + if (0 != (termOffset & (FrameDescriptor.FRAME_ALIGNMENT - 1))) + { + throw new ArgumentException("Term offset not multiple of FRAME_ALIGNMENT: " + termOffset); + } + } + + _termOffset = termOffset; + return this; + } + + /// + /// Get the offset within a term at which a publication will start. + /// + /// the offset within a term at which a publication will start. + public int? TermOffset() + { + return _termOffset; + } + + /// + /// Build a channel URI String for the given parameters. + /// + /// a channel URI String for the given parameters. + public string Build() + { + _sb.Length = 0; + + if (null != _prefix && !"".Equals(_prefix)) + { + _sb.Append(_prefix).Append(':'); + } + + _sb.Append(ChannelUri.AERON_SCHEME).Append(':').Append(_media).Append('?'); + + if (null != _endpoint) + { + _sb.Append(Aeron.Context.ENDPOINT_PARAM_NAME).Append('=').Append(_endpoint).Append('|'); + } + + if (null != _networkInterface) + { + _sb.Append(Aeron.Context.INTERFACE_PARAM_NAME).Append('=').Append(_networkInterface).Append('|'); + } + + if (null != _controlEndpoint) + { + _sb.Append(Aeron.Context.MDC_CONTROL_PARAM_NAME).Append('=') + .Append(_controlEndpoint).Append('|'); + } + + if (null != _controlMode) + { + _sb.Append(Aeron.Context.MDC_CONTROL_MODE_PARAM_NAME).Append('=').Append(_controlMode).Append('|'); + } + + if (null != _reliable) + { + _sb.Append(Aeron.Context.RELIABLE_STREAM_PARAM_NAME).Append('=').Append(_reliable).Append('|'); + } + + if (null != _ttl) + { + _sb.Append(Aeron.Context.TTL_PARAM_NAME).Append('=').Append(_ttl.Value).Append('|'); + } + + if (null != _mtu) + { + _sb.Append(Aeron.Context.MTU_LENGTH_PARAM_NAME).Append('=').Append(_mtu.Value).Append('|'); + } + + if (null != _termLength) + { + _sb.Append(Aeron.Context.TERM_LENGTH_PARAM_NAME).Append('=').Append(_termLength.Value).Append('|'); + } + + if (null != _initialTermId) + { + _sb.Append(Aeron.Context.INITIAL_TERM_ID_PARAM_NAME).Append('=').Append(_initialTermId.Value) + .Append('|'); + } + + if (null != _termId) + { + _sb.Append(Aeron.Context.TERM_ID_PARAM_NAME).Append('=').Append(_termId.Value).Append('|'); + } + + if (null != _termOffset) + { + _sb.Append(Aeron.Context.TERM_OFFSET_PARAM_NAME).Append('=').Append(_termOffset.Value).Append('|'); + } + + char lastChar = _sb[_sb.Length - 1]; + if (lastChar == '|' || lastChar == '?') + { + _sb.Length = _sb.Length - 1; + } + + return _sb.ToString(); + } + } +} \ No newline at end of file diff --git a/src/Adaptive.Aeron/ClientConductor.cs b/src/Adaptive.Aeron/ClientConductor.cs index 863d2278..4d0e661e 100644 --- a/src/Adaptive.Aeron/ClientConductor.cs +++ b/src/Adaptive.Aeron/ClientConductor.cs @@ -17,7 +17,6 @@ using System; using System.Collections.Concurrent; using System.Collections.Generic; -using System.Threading; using Adaptive.Aeron.Exceptions; using Adaptive.Agrona; using Adaptive.Agrona.Collections; @@ -27,18 +26,11 @@ namespace Adaptive.Aeron { /// - /// Client conductor takes responses and notifications from Media Driver and acts on them in addition to forwarding - /// commands from the various Client APIs to the Media Driver. + /// Client conductor receives responses and notifications from Media Driver and acts on them in addition to forwarding + /// commands from the Client API to the Media Driver conductor. /// - internal class ClientConductor : IAgent, IDriverListener + internal class ClientConductor : IAgent, IDriverEventsListener { - public enum ClientConductorStatus - { - ACTIVE, - CLOSING, - CLOSED - } - private const long NO_CORRELATION_ID = -1; private static readonly long RESOURCE_TIMEOUT_NS = 1; private static readonly long RESOURCE_LINGER_NS = 3; @@ -48,39 +40,35 @@ public enum ClientConductorStatus private readonly long _driverTimeoutNs; private readonly long _interServiceTimeoutNs; private readonly long _publicationConnectionTimeoutMs; - private long _timeOfLastKeepaliveNs; - private long _timeOfLastCheckResourcesNs; - private long _timeOfLastWorkNs; - private bool _isDriverActive = true; - private volatile ClientConductorStatus _status = ClientConductorStatus.ACTIVE; + private long _timeOfLastKeepAliveNs; + private long _timeOfLastResourcesCheckNs; + private long _timeOfLastServiceNs; + private volatile bool _isClosed; private readonly ILock _clientLock; - private readonly Aeron.Context _ctx; private readonly IEpochClock _epochClock; private readonly MapMode _imageMapMode; private readonly INanoClock _nanoClock; - private readonly DriverListenerAdapter _driverListener; + private readonly DriverEventsAdapter _driverEventsAdapter; private readonly ILogBuffersFactory _logBuffersFactory; private readonly ActivePublications _activePublications = new ActivePublications(); private readonly ConcurrentDictionary _activeExclusivePublications = new ConcurrentDictionary(); private readonly ActiveSubscriptions _activeSubscriptions = new ActiveSubscriptions(); private readonly List _lingeringResources = new List(); + private readonly UnavailableImageHandler _defaultUnavailableImageHandler; + private readonly AvailableImageHandler _defaultAvailableImageHandler; private readonly UnsafeBuffer _counterValuesBuffer; private readonly DriverProxy _driverProxy; private readonly ErrorHandler _errorHandler; - private readonly AgentInvoker _driverAgentInvoker; private RegistrationException _driverException; internal ClientConductor() { - } internal ClientConductor(Aeron.Context ctx) { - _ctx = ctx; - _clientLock = ctx.ClientLock(); _epochClock = ctx.EpochClock(); _nanoClock = ctx.NanoClock(); @@ -94,15 +82,16 @@ internal ClientConductor(Aeron.Context ctx) _driverTimeoutNs = _driverTimeoutMs * 1000000; _interServiceTimeoutNs = ctx.InterServiceTimeout(); _publicationConnectionTimeoutMs = ctx.PublicationConnectionTimeout(); - _driverListener = new DriverListenerAdapter(ctx.ToClientBuffer(), this); - _driverAgentInvoker = ctx.DriverAgentInvoker(); + _defaultAvailableImageHandler = ctx.AvailableImageHandler(); + _defaultUnavailableImageHandler = ctx.UnavailableImageHandler(); + _driverEventsAdapter = new DriverEventsAdapter(ctx.ToClientBuffer(), this); long nowNs = _nanoClock.NanoTime(); - _timeOfLastKeepaliveNs = nowNs; - _timeOfLastCheckResourcesNs = nowNs; - _timeOfLastWorkNs = nowNs; + _timeOfLastKeepAliveNs = nowNs; + _timeOfLastResourcesCheckNs = nowNs; + _timeOfLastServiceNs = nowNs; } - + public void OnStart() { // Do Nothing @@ -110,30 +99,24 @@ public void OnStart() public void OnClose() { - if (ClientConductorStatus.ACTIVE == _status) + if (!_isClosed) { - _status = ClientConductorStatus.CLOSING; + _isClosed = true; + + int lingeringResourcesSize = _lingeringResources.Count; + ForceClosePublicationsAndSubscriptions(); - foreach (ExclusivePublication publication in _activeExclusivePublications.Values) + if (_lingeringResources.Count > lingeringResourcesSize) { - publication.ForceClose(); + Aeron.Sleep(1); } - _activeExclusivePublications.Clear(); - - _activePublications.Dispose(); - _activeSubscriptions.Dispose(); - - Thread.Yield(); for (int i = 0, size = _lingeringResources.Count; i < size; i++) { _lingeringResources[i].Delete(); } - _lingeringResources.Clear(); - - _ctx.Dispose(); - _status = ClientConductorStatus.CLOSED; + _lingeringResources.Clear(); } } @@ -145,10 +128,12 @@ public int DoWork() { try { - if (ClientConductorStatus.ACTIVE == _status) + if (_isClosed) { - workCount = DoWork(NO_CORRELATION_ID, null); + throw new AgentTerminationException(); } + + workCount = Service(NO_CORRELATION_ID, null); } finally { @@ -164,13 +149,11 @@ public string RoleName() return "aeron-client-conductor"; } - public Aeron.Context Context() + public bool IsClosed() { - return _ctx; + return _isClosed; } - public ClientConductorStatus Status => _status; - internal virtual ILock ClientLock() { return _clientLock; @@ -183,7 +166,10 @@ internal void HandleError(Exception ex) internal Publication AddPublication(string channel, int streamId) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } Publication publication = _activePublications.Get(channel, streamId); if (null == publication) @@ -199,7 +185,10 @@ internal Publication AddPublication(string channel, int streamId) internal ExclusivePublication AddExclusivePublication(string channel, int streamId) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } long registrationId = _driverProxy.AddExclusivePublication(channel, streamId); AwaitResponse(registrationId, channel); @@ -209,7 +198,10 @@ internal ExclusivePublication AddExclusivePublication(string channel, int stream internal virtual void ReleasePublication(Publication publication) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } if (publication == _activePublications.Remove(publication.Channel, publication.StreamId)) { @@ -220,7 +212,10 @@ internal virtual void ReleasePublication(Publication publication) internal void ReleasePublication(ExclusivePublication publication) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } ExclusivePublication publicationToRemove; @@ -240,20 +235,15 @@ internal void AsyncReleasePublication(long registrationId) internal Subscription AddSubscription(string channel, int streamId) { - VerifyActive(); - - long correlationId = _driverProxy.AddSubscription(channel, streamId); - Subscription subscription = new Subscription(this, channel, streamId, correlationId, _ctx.AvailableImageHandler(), _ctx.unavailableImageHandler()); - _activeSubscriptions.Add(subscription); - - AwaitResponse(correlationId, channel); - - return subscription; + return AddSubscription(channel, streamId, _defaultAvailableImageHandler, _defaultUnavailableImageHandler); } internal Subscription AddSubscription(string channel, int streamId, AvailableImageHandler availableImageHandler, UnavailableImageHandler unavailableImageHandler) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } long correlationId = _driverProxy.AddSubscription(channel, streamId); Subscription subscription = new Subscription(this, channel, streamId, correlationId, availableImageHandler, unavailableImageHandler); @@ -266,7 +256,10 @@ internal Subscription AddSubscription(string channel, int streamId, AvailableIma internal virtual void ReleaseSubscription(Subscription subscription) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } AwaitResponse(_driverProxy.RemoveSubscription(subscription.RegistrationId), null); @@ -280,48 +273,97 @@ internal void AsyncReleaseSubscription(Subscription subscription) internal void AddDestination(long registrationId, string endpointChannel) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } AwaitResponse(_driverProxy.AddDestination(registrationId, endpointChannel), null); } internal void RemoveDestination(long registrationId, string endpointChannel) { - VerifyActive(); + if (_isClosed) + { + throw new InvalidOperationException("Aeron client is closed"); + } AwaitResponse(_driverProxy.RemoveDestination(registrationId, endpointChannel), null); } - public void OnError(ErrorCode errorCode, string message, long correlationId) + public void OnError(long correlationId, ErrorCode errorCode, string message) { _driverException = new RegistrationException(errorCode, message); } - public void OnNewPublication(string channel, int streamId, int sessionId, int publicationLimitId, string logFileName, long correlationId) - { - Publication publication = new Publication(this, channel, streamId, sessionId, new UnsafeBufferPosition(_counterValuesBuffer, publicationLimitId), _logBuffersFactory.Map(logFileName, MapMode.ReadWrite), correlationId); + public void OnNewPublication( + long correlationId, + long registrationId, + int streamId, + int sessionId, + int publicationLimitId, + string channel, + string logFileName) + { + Publication publication = new Publication( + this, + channel, + streamId, + sessionId, + new UnsafeBufferPosition(_counterValuesBuffer, publicationLimitId), + _logBuffersFactory.Map(logFileName, MapMode.ReadWrite), + registrationId, + correlationId); _activePublications.Put(channel, streamId, publication); } - public void OnNewExclusivePublication(string channel, int streamId, int sessionId, int publicationLimitId, string logFileName, long correlationId) - { - ExclusivePublication publication = new ExclusivePublication(this, channel, streamId, sessionId, new UnsafeBufferPosition(_counterValuesBuffer, publicationLimitId), _logBuffersFactory.Map(logFileName, MapMode.ReadWrite), correlationId); + public void OnNewExclusivePublication( + long correlationId, + long registrationid, + int streamId, + int sessionId, + int publicationLimitId, + string channel, + string logFileName) + { + ExclusivePublication publication = new ExclusivePublication( + this, + channel, + streamId, + sessionId, + new UnsafeBufferPosition(_counterValuesBuffer, publicationLimitId), + _logBuffersFactory.Map(logFileName, MapMode.ReadWrite), + registrationid, + correlationId); _activeExclusivePublications[correlationId] = publication; } - public void OnAvailableImage(int streamId, int sessionId, IDictionary subscriberPositionMap, string logFileName, string sourceIdentity, long correlationId) + public void OnAvailableImage( + long correlationId, + int streamId, + int sessionId, + long subscriberRegistrationId, + int subscriberPositionId, + string logFileName, + string sourceIdentity) { - _activeSubscriptions.ForEach(streamId, (subscription) => - { - if (!subscription.HasImage(correlationId)) + _activeSubscriptions.ForEach( + streamId, + subscription => { - long positionId = subscriberPositionMap[subscription.RegistrationId]; - if (Adaptive.Aeron.DriverListenerAdapter.MISSING_REGISTRATION_ID != positionId) + if (subscription.RegistrationId == subscriberRegistrationId && !subscription.HasImage(correlationId)) { - Image image = new Image(subscription, sessionId, new UnsafeBufferPosition(_counterValuesBuffer, (int)positionId), _logBuffersFactory.Map(logFileName, _imageMapMode), _errorHandler, sourceIdentity, correlationId); - + Image image = new Image( + subscription, + sessionId, + new UnsafeBufferPosition(_counterValuesBuffer, (int) subscriberPositionId), + _logBuffersFactory.Map(logFileName, _imageMapMode), + _errorHandler, + sourceIdentity, + correlationId); + try { AvailableImageHandler handler = subscription.AvailableImageHandler(); @@ -337,36 +379,36 @@ public void OnAvailableImage(int streamId, int sessionId, IDictionary - { - Image image = subscription.RemoveImage(correlationId); - if (null != image) + _activeSubscriptions.ForEach(streamId, + (subscription) => { - try + Image image = subscription.RemoveImage(correlationId); + if (null != image) { - UnavailableImageHandler handler = subscription.UnavailableImageHandler(); - if (null != handler) + try { - handler(image); + UnavailableImageHandler handler = subscription.UnavailableImageHandler(); + if (null != handler) + { + handler(image); + } + } + catch (Exception ex) + { + _errorHandler(ex); } } - catch (Exception ex) - { - _errorHandler(ex); - } - } - }); + }); } - internal DriverListenerAdapter DriverListenerAdapter() + internal DriverEventsAdapter DriverListenerAdapter() { - return _driverListener; + return _driverEventsAdapter; } internal void LingerResource(IManagedResource managedResource) @@ -380,22 +422,21 @@ internal virtual bool IsPublicationConnected(long timeOfLastStatusMessageMs) return _epochClock.Time() <= (timeOfLastStatusMessageMs + _publicationConnectionTimeoutMs); } - private int DoWork(long correlationId, string expectedChannel) + private int Service(long correlationId, string expectedChannel) { int workCount = 0; try { workCount += OnCheckTimeouts(); - workCount += _driverListener.PollMessage(correlationId, expectedChannel); + workCount += _driverEventsAdapter.Receive(correlationId, expectedChannel); } catch (Exception throwable) { _errorHandler(throwable); - if (correlationId != NO_CORRELATION_ID) + if (IsClientApiCall(correlationId)) { - // has been called from a user thread and not the conductor duty cycle. throw; } } @@ -403,25 +444,23 @@ private int DoWork(long correlationId, string expectedChannel) return workCount; } - private void AwaitResponse(long correlationId, string expectedChannel) + private static bool IsClientApiCall(long correlationId) + { + return correlationId != NO_CORRELATION_ID; + } + + private void AwaitResponse(long correlationId, string expectedChannel) { _driverException = null; var deadlineNs = _nanoClock.NanoTime() + _driverTimeoutNs; do { - if (null == _driverAgentInvoker) - { - Aeron.Sleep(1); - } - else - { - _driverAgentInvoker.Invoke(); - } + Aeron.Sleep(1); - DoWork(correlationId, expectedChannel); + Service(correlationId, expectedChannel); - if (_driverListener.LastReceivedCorrelationId() == correlationId) + if (_driverEventsAdapter.LastReceivedCorrelationId() == correlationId) { if (null != _driverException) { @@ -432,20 +471,7 @@ private void AwaitResponse(long correlationId, string expectedChannel) } } while (_nanoClock.NanoTime() < deadlineNs); - throw new DriverTimeoutException("No response from driver wihtout timeout"); - } - - private void VerifyActive() - { - if (!_isDriverActive) - { - throw new DriverTimeoutException("MediaDriver is inactive"); - } - - if (ClientConductorStatus.CLOSED == _status) - { - throw new InvalidOperationException("Aeron client is closed"); - } + throw new DriverTimeoutException("No response from MediaDriver within (ms):" + _driverTimeoutMs); } private int OnCheckTimeouts() @@ -453,35 +479,66 @@ private int OnCheckTimeouts() int workCount = 0; long nowNs = _nanoClock.NanoTime(); - if (nowNs < (_timeOfLastWorkNs + Aeron.IdleSleepNs)) + if (nowNs > (_timeOfLastServiceNs + Aeron.IdleSleepNs)) { - return workCount; + checkServiceInterval(nowNs); + _timeOfLastServiceNs = nowNs; + + workCount += checkLiveness(nowNs); + workCount += checkLingeringResources(nowNs); } - if (nowNs > (_timeOfLastWorkNs + _interServiceTimeoutNs)) + return workCount; + } + + private void checkServiceInterval(long nowNs) + { + if (nowNs > (_timeOfLastServiceNs + _interServiceTimeoutNs)) { + int lingeringResourcesSize = _lingeringResources.Count; + + ForceClosePublicationsAndSubscriptions(); + + if (_lingeringResources.Count > lingeringResourcesSize) + { + Aeron.Sleep(1000); + } + OnClose(); - throw new ConductorServiceTimeoutException("Timeout between service calls over " + _interServiceTimeoutNs + "ns"); + throw new ConductorServiceTimeoutException("Exceeded (ns): " + _interServiceTimeoutNs); } + } - _timeOfLastWorkNs = nowNs; - - if (nowNs > (_timeOfLastKeepaliveNs + _keepAliveIntervalNs)) + private int checkLiveness(long nowNs) + { + if (nowNs > (_timeOfLastKeepAliveNs + _keepAliveIntervalNs)) { + if (_epochClock.Time() > (_driverProxy.TimeOfLastDriverKeepaliveMs() + _driverTimeoutMs)) + { + OnClose(); + + throw new DriverTimeoutException("MediaDriver keepalive older than (ms): " + _driverTimeoutMs); + } + _driverProxy.SendClientKeepalive(); - CheckDriverHeartbeat(); + _timeOfLastKeepAliveNs = nowNs; - _timeOfLastKeepaliveNs = nowNs; - workCount++; + return 1; } - if (nowNs > (_timeOfLastCheckResourcesNs + RESOURCE_TIMEOUT_NS)) + return 0; + } + + private int checkLingeringResources(long nowNs) + { + if (nowNs > (_timeOfLastResourcesCheckNs + RESOURCE_TIMEOUT_NS)) { List lingeringResources = _lingeringResources; for (int lastIndex = lingeringResources.Count - 1, i = lastIndex; i >= 0; i--) { IManagedResource resource = lingeringResources[i]; + if (nowNs > (resource.TimeOfLastStateChange() + RESOURCE_LINGER_NS)) { ListUtil.FastUnorderedRemove(lingeringResources, i, lastIndex); @@ -490,21 +547,25 @@ private int OnCheckTimeouts() } } - _timeOfLastCheckResourcesNs = nowNs; - workCount++; + _timeOfLastResourcesCheckNs = nowNs; + + return 1; } - return workCount; + return 0; } - private void CheckDriverHeartbeat() + private void ForceClosePublicationsAndSubscriptions() { - long deadlineMs = _driverProxy.TimeOfLastDriverKeepaliveMs() + _driverTimeoutMs; - if (_isDriverActive && (_epochClock.Time() > deadlineMs)) + foreach (ExclusivePublication publication in _activeExclusivePublications.Values) { - _isDriverActive = false; - _errorHandler(new DriverTimeoutException("MediaDriver has been inactive for over " + _driverTimeoutMs + "ms")); + publication.ForceClose(); } + + _activeExclusivePublications.Clear(); + + _activePublications.Dispose(); + _activeSubscriptions.Dispose(); } } } \ No newline at end of file diff --git a/src/Adaptive.Aeron/CncFileDescriptor.cs b/src/Adaptive.Aeron/CncFileDescriptor.cs index 7d225b26..cc13e234 100644 --- a/src/Adaptive.Aeron/CncFileDescriptor.cs +++ b/src/Adaptive.Aeron/CncFileDescriptor.cs @@ -34,9 +34,9 @@ namespace Adaptive.Aeron /// +----------------------------+ /// | to-clients Buffer | /// +----------------------------+ - /// | Counter Metadata Buffer | + /// | Counters Metadata Buffer | /// +----------------------------+ - /// | Counter Values Buffer | + /// | Counters Values Buffer | /// +----------------------------+ /// | Error Log | /// +----------------------------+ @@ -44,59 +44,55 @@ namespace Adaptive.Aeron /// /// Meta Data Layout (CnC Version 6) ///
-    ///  +----------------------------+
-    ///  |   to-driver buffer length  |
-    ///  +----------------------------+
-    ///  |  to-clients buffer length  |
-    ///  +----------------------------+
-    ///  |   metadata buffer length   |
-    ///  +----------------------------+
-    ///  |    values buffer length    |
-    ///  +----------------------------+
-    ///  |   Client Liveness Timeout  |
-    ///  |                            |
-    ///  +----------------------------+
-    ///  |      Error Log length      |
-    ///  +----------------------------+
+    ///  0                   1                   2                   3
+    ///  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+    /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    /// |                      Aeron CnC Version                        |
+    /// +---------------------------------------------------------------+
+    /// |                   to-driver buffer length                     |
+    /// +---------------------------------------------------------------+
+    /// |                  to-clients buffer length                     |
+    /// +---------------------------------------------------------------+
+    /// |               Counters Metadata buffer length                 |
+    /// +---------------------------------------------------------------+
+    /// |                Counters Values buffer length                  |
+    /// +---------------------------------------------------------------+
+    /// |                   Error Log buffer length                     |
+    /// +---------------------------------------------------------------+
+    /// |                   Client Liveness Timeout                     |
+    /// |                                                               |
+    /// +---------------------------------------------------------------+
     /// 
/// public class CncFileDescriptor { public const string CNC_FILE = "cnc.dat"; - public const int CNC_VERSION = 6; + public const int CNC_VERSION = 7; public static readonly int CNC_VERSION_FIELD_OFFSET; - public static readonly int CNC_METADATA_OFFSET; - - /* Meta Data Offsets (offsets within the meta data section) */ - public static readonly int TO_DRIVER_BUFFER_LENGTH_FIELD_OFFSET; public static readonly int TO_CLIENTS_BUFFER_LENGTH_FIELD_OFFSET; public static readonly int COUNTERS_METADATA_BUFFER_LENGTH_FIELD_OFFSET; public static readonly int COUNTERS_VALUES_BUFFER_LENGTH_FIELD_OFFSET; public static readonly int CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET; public static readonly int ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET; + public static readonly int META_DATA_LENGTH; + public static readonly int END_OF_METADATA_OFFSET; static CncFileDescriptor() { CNC_VERSION_FIELD_OFFSET = 0; - CNC_METADATA_OFFSET = CNC_VERSION_FIELD_OFFSET + BitUtil.SIZE_OF_INT; - - TO_DRIVER_BUFFER_LENGTH_FIELD_OFFSET = 0; + TO_DRIVER_BUFFER_LENGTH_FIELD_OFFSET = CNC_VERSION_FIELD_OFFSET + BitUtil.SIZE_OF_INT; TO_CLIENTS_BUFFER_LENGTH_FIELD_OFFSET = TO_DRIVER_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; COUNTERS_METADATA_BUFFER_LENGTH_FIELD_OFFSET = TO_CLIENTS_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; COUNTERS_VALUES_BUFFER_LENGTH_FIELD_OFFSET = COUNTERS_METADATA_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; - CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET = COUNTERS_VALUES_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; - ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET = CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET + BitUtil.SIZE_OF_LONG; - META_DATA_LENGTH = ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; - END_OF_METADATA_OFFSET = BitUtil.Align(BitUtil.SIZE_OF_INT + META_DATA_LENGTH, (BitUtil.CACHE_LINE_LENGTH*2)); + ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET = COUNTERS_VALUES_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; + CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET = ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET + BitUtil.SIZE_OF_INT; + META_DATA_LENGTH = CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET + BitUtil.SIZE_OF_LONG; + END_OF_METADATA_OFFSET = BitUtil.Align(META_DATA_LENGTH, BitUtil.CACHE_LINE_LENGTH * 2); } - - public static readonly int META_DATA_LENGTH; - - public static readonly int END_OF_METADATA_OFFSET; - + /// /// Compute the length of the cnc file and return it. /// @@ -114,32 +110,32 @@ public static int CncVersionOffset(int baseOffset) public static int ToDriverBufferLengthOffset(int baseOffset) { - return baseOffset + CNC_METADATA_OFFSET + TO_DRIVER_BUFFER_LENGTH_FIELD_OFFSET; + return baseOffset + TO_DRIVER_BUFFER_LENGTH_FIELD_OFFSET; } public static int ToClientsBufferLengthOffset(int baseOffset) { - return baseOffset + CNC_METADATA_OFFSET + TO_CLIENTS_BUFFER_LENGTH_FIELD_OFFSET; + return baseOffset + TO_CLIENTS_BUFFER_LENGTH_FIELD_OFFSET; } public static int CountersMetaDataBufferLengthOffset(int baseOffset) { - return baseOffset + CNC_METADATA_OFFSET + COUNTERS_METADATA_BUFFER_LENGTH_FIELD_OFFSET; + return baseOffset + COUNTERS_METADATA_BUFFER_LENGTH_FIELD_OFFSET; } public static int CountersValuesBufferLengthOffset(int baseOffset) { - return baseOffset + CNC_METADATA_OFFSET + COUNTERS_VALUES_BUFFER_LENGTH_FIELD_OFFSET; + return baseOffset + COUNTERS_VALUES_BUFFER_LENGTH_FIELD_OFFSET; } public static int ClientLivenessTimeoutOffset(int baseOffset) { - return baseOffset + CNC_METADATA_OFFSET + CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET; + return baseOffset + CLIENT_LIVENESS_TIMEOUT_FIELD_OFFSET; } public static int ErrorLogBufferLengthOffset(int baseOffset) { - return baseOffset + CNC_METADATA_OFFSET + ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET; + return baseOffset + ERROR_LOG_BUFFER_LENGTH_FIELD_OFFSET; } public static void FillMetaData(UnsafeBuffer cncMetaDataBuffer, int toDriverBufferLength, int toClientsBufferLength, int counterMetaDataBufferLength, int counterValuesBufferLength, long clientLivenessTimeout, int errorLogBufferLength) @@ -148,14 +144,18 @@ public static void FillMetaData(UnsafeBuffer cncMetaDataBuffer, int toDriverBuff cncMetaDataBuffer.PutInt(ToClientsBufferLengthOffset(0), toClientsBufferLength); cncMetaDataBuffer.PutInt(CountersMetaDataBufferLengthOffset(0), counterMetaDataBufferLength); cncMetaDataBuffer.PutInt(CountersValuesBufferLengthOffset(0), counterValuesBufferLength); - cncMetaDataBuffer.PutLong(ClientLivenessTimeoutOffset(0), clientLivenessTimeout); cncMetaDataBuffer.PutInt(ErrorLogBufferLengthOffset(0), errorLogBufferLength); + cncMetaDataBuffer.PutLong(ClientLivenessTimeoutOffset(0), clientLivenessTimeout); + } + + public static void SignalCncReady(UnsafeBuffer cncMetaDataBuffer) + { cncMetaDataBuffer.PutIntVolatile(CncVersionOffset(0), CNC_VERSION); } public static UnsafeBuffer CreateMetaDataBuffer(MappedByteBuffer buffer) { - return new UnsafeBuffer(buffer.Pointer, 0, BitUtil.SIZE_OF_INT + META_DATA_LENGTH); + return new UnsafeBuffer(buffer.Pointer, 0, META_DATA_LENGTH); } public static UnsafeBuffer CreateToDriverBuffer(MappedByteBuffer buffer, IDirectBuffer metaDataBuffer) diff --git a/src/Adaptive.Aeron/Command/DestinationMessageFlyweight.cs b/src/Adaptive.Aeron/Command/DestinationMessageFlyweight.cs index 3bf3cb16..d8c6ddbc 100644 --- a/src/Adaptive.Aeron/Command/DestinationMessageFlyweight.cs +++ b/src/Adaptive.Aeron/Command/DestinationMessageFlyweight.cs @@ -18,6 +18,28 @@ namespace Adaptive.Aeron.Command { + /// + /// Control message for adding or removing a destination for a Publication in multi-destination-cast. + /// + /// 0 1 2 3 + /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + /// | Client ID | + /// | | + /// +---------------------------------------------------------------+ + /// | Command Correlation ID | + /// | | + /// +---------------------------------------------------------------+ + /// | Registration Correlation ID | + /// | | + /// +---------------------------------------------------------------+ + /// | Channel Length | + /// +---------------------------------------------------------------+ + /// | Channel(ASCII) ... + /// .. | + /// +---------------------------------------------------------------+ + /// + /// public class DestinationMessageFlyweight : CorrelatedMessageFlyweight { private static readonly int REGISTRATION_CORRELATION_ID_OFFSET = CORRELATION_ID_FIELD_OFFSET + BitUtil.SIZE_OF_LONG; diff --git a/src/Adaptive.Aeron/Command/ImageBuffersReadyFlyweight.cs b/src/Adaptive.Aeron/Command/ImageBuffersReadyFlyweight.cs index c837fd34..74a39814 100644 --- a/src/Adaptive.Aeron/Command/ImageBuffersReadyFlyweight.cs +++ b/src/Adaptive.Aeron/Command/ImageBuffersReadyFlyweight.cs @@ -19,71 +19,47 @@ namespace Adaptive.Aeron.Command { /// - /// Message to denote that new buffers have been added for a subscription. + /// Message to denote that new buffers for a publication image are ready for a subscription. /// /// NOTE: Layout should be SBE compliant /// /// /// - /// 0 1 2 3 - /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + /// 0 1 2 3 + /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - /// | Correlation ID | + /// | Correlation ID | /// | | /// +---------------------------------------------------------------+ - /// | Session ID | + /// | Session ID | /// +---------------------------------------------------------------+ - /// | Stream ID | + /// | Stream ID | /// +---------------------------------------------------------------+ - /// | Subscriber Position Block Length | - /// +---------------------------------------------------------------+ - /// | Subscriber Position Count | - /// +---------------------------------------------------------------+ - /// | Subscriber Position Id 0 | - /// +---------------------------------------------------------------+ - /// | Registration Id 0 | + /// | Subscriber Registration Id | /// | | /// +---------------------------------------------------------------+ - /// | Subscriber Position Id 1 | - /// +---------------------------------------------------------------+ - /// | Registration Id 1 | - /// | | + /// | Subscriber Position Id | /// +---------------------------------------------------------------+ - /// | ... - /// ... Up to "Position Indicators Count" entries of this form | + /// | Log File Length | /// +---------------------------------------------------------------+ - /// | Log File Length | + /// | Log File Name(ASCII) .. + /// .. | /// +---------------------------------------------------------------+ - /// | Log File Name (ASCII) ... - /// ... | + /// | Source identity Length | /// +---------------------------------------------------------------+ - /// | Source identity Length | + /// | Source identity(ASCII) .. + /// .. | /// +---------------------------------------------------------------+ - /// | Source identity (ASCII) ... - /// ... | - /// +---------------------------------------------------------------+ + /// public class ImageBuffersReadyFlyweight { - private static readonly int CORRELATION_ID_OFFSET; - private static readonly int SESSION_ID_OFFSET; - private static readonly int STREAM_ID_FIELD_OFFSET; - private static readonly int SUBSCRIBER_POSITION_BLOCK_LENGTH_OFFSET; - private static readonly int SUBSCRIBER_POSITION_COUNT_OFFSET; - private static readonly int SUBSCRIBER_POSITIONS_OFFSET; - - private static readonly int SUBSCRIBER_POSITION_BLOCK_LENGTH; - - static ImageBuffersReadyFlyweight() - { - CORRELATION_ID_OFFSET = 0; - SESSION_ID_OFFSET = CORRELATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; - STREAM_ID_FIELD_OFFSET = SESSION_ID_OFFSET + BitUtil.SIZE_OF_INT; - SUBSCRIBER_POSITION_BLOCK_LENGTH_OFFSET = STREAM_ID_FIELD_OFFSET + BitUtil.SIZE_OF_INT; - SUBSCRIBER_POSITION_COUNT_OFFSET = SUBSCRIBER_POSITION_BLOCK_LENGTH_OFFSET + BitUtil.SIZE_OF_INT; - SUBSCRIBER_POSITIONS_OFFSET = SUBSCRIBER_POSITION_COUNT_OFFSET + BitUtil.SIZE_OF_INT; - SUBSCRIBER_POSITION_BLOCK_LENGTH = BitUtil.SIZE_OF_LONG + BitUtil.SIZE_OF_INT; - } - + private static readonly int CORRELATION_ID_OFFSET = 0; + private static readonly int SESSION_ID_OFFSET = CORRELATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; + private static readonly int STREAM_ID_FIELD_OFFSET = SESSION_ID_OFFSET + BitUtil.SIZE_OF_INT; + private static readonly int SUBSCRIBER_REGISTRATION_ID_OFFSET = STREAM_ID_FIELD_OFFSET + BitUtil.SIZE_OF_INT; + private static readonly int SUBSCRIBER_POSITION_ID_OFFSET = SUBSCRIBER_REGISTRATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; + private static readonly int LOG_FILE_NAME_OFFSET = SUBSCRIBER_POSITION_ID_OFFSET + BitUtil.SIZE_OF_INT; + private IMutableDirectBuffer _buffer; private int _offset; @@ -95,8 +71,8 @@ static ImageBuffersReadyFlyweight() /// for fluent API public ImageBuffersReadyFlyweight Wrap(IMutableDirectBuffer buffer, int offset) { - this._buffer = buffer; - this._offset = offset; + _buffer = buffer; + _offset = offset; return this; } @@ -162,38 +138,15 @@ public ImageBuffersReadyFlyweight StreamId(int streamId) return this; } - - /// - /// return the number of position indicators - /// - /// the number of position indicators - public int SubscriberPositionCount() - { - return _buffer.GetInt(_offset + SUBSCRIBER_POSITION_COUNT_OFFSET); - } - - /// - /// set the number of position indicators - /// - /// the number of position indicators - /// flyweight - public ImageBuffersReadyFlyweight SubscriberPositionCount(int value) - { - _buffer.PutInt(_offset + SUBSCRIBER_POSITION_BLOCK_LENGTH_OFFSET, SUBSCRIBER_POSITION_BLOCK_LENGTH); - _buffer.PutInt(_offset + SUBSCRIBER_POSITION_COUNT_OFFSET, value); - - return this; - } - + /// /// Set the position Id for the subscriber /// - /// for the subscriber position /// for the subscriber position /// flyweight - public ImageBuffersReadyFlyweight SubscriberPositionId(int index, int id) + public ImageBuffersReadyFlyweight SubscriberPositionId(int id) { - _buffer.PutInt(_offset + SubscriberPositionOffset(index), id); + _buffer.PutInt(_offset + SUBSCRIBER_POSITION_ID_OFFSET, id); return this; } @@ -201,22 +154,20 @@ public ImageBuffersReadyFlyweight SubscriberPositionId(int index, int id) /// /// Return the position Id for the subscriber /// - /// for the subscriber position /// position Id for the subscriber - public int SubscriberPositionId(int index) + public int SubscriberPositionId() { - return _buffer.GetInt(_offset + SubscriberPositionOffset(index)); + return _buffer.GetInt(_offset + SUBSCRIBER_POSITION_ID_OFFSET); } /// /// Set the registration Id for the subscriber position /// - /// for the subscriber position /// for the subscriber position /// flyweight - public ImageBuffersReadyFlyweight PositionIndicatorRegistrationId(int index, long id) + public ImageBuffersReadyFlyweight SubscriberRegistrationId(long id) { - _buffer.PutLong(_offset + SubscriberPositionOffset(index) + BitUtil.SIZE_OF_INT, id); + _buffer.PutLong(_offset + SUBSCRIBER_REGISTRATION_ID_OFFSET, id); return this; } @@ -224,11 +175,10 @@ public ImageBuffersReadyFlyweight PositionIndicatorRegistrationId(int index, lon /// /// Return the registration Id for the subscriber position /// - /// for the subscriber position /// registration Id for the subscriber position - public long PositionIndicatorRegistrationId(int index) + public long SubscriberRegistrationId() { - return _buffer.GetLong(_offset + SubscriberPositionOffset(index) + BitUtil.SIZE_OF_INT); + return _buffer.GetLong(_offset + SUBSCRIBER_REGISTRATION_ID_OFFSET); } /// @@ -237,7 +187,7 @@ public long PositionIndicatorRegistrationId(int index) /// log filename public string LogFileName() { - return _buffer.GetStringAscii(_offset + LogFileNameOffset()); + return _buffer.GetStringAscii(_offset + LOG_FILE_NAME_OFFSET); } /// @@ -247,7 +197,7 @@ public string LogFileName() /// flyweight public ImageBuffersReadyFlyweight LogFileName(string logFileName) { - _buffer.PutStringAscii(_offset + LogFileNameOffset(), logFileName); + _buffer.PutStringAscii(_offset + LOG_FILE_NAME_OFFSET, logFileName); return this; } @@ -282,21 +232,10 @@ public int Length() int sourceIdentityOffset = SourceIdentityOffset(); return sourceIdentityOffset + _buffer.GetInt(_offset + sourceIdentityOffset) + BitUtil.SIZE_OF_INT; } - - private int SubscriberPositionOffset(int index) - { - return SUBSCRIBER_POSITIONS_OFFSET + (index*SUBSCRIBER_POSITION_BLOCK_LENGTH); - } - - private int LogFileNameOffset() - { - return SubscriberPositionOffset(SubscriberPositionCount()); - } - + private int SourceIdentityOffset() { - int logFileNameOffset = LogFileNameOffset(); - return logFileNameOffset + _buffer.GetInt(_offset + logFileNameOffset) + BitUtil.SIZE_OF_INT; + return LOG_FILE_NAME_OFFSET + _buffer.GetInt(_offset + LOG_FILE_NAME_OFFSET) + BitUtil.SIZE_OF_INT; } } } \ No newline at end of file diff --git a/src/Adaptive.Aeron/Command/PublicationBuffersReadyFlyweight.cs b/src/Adaptive.Aeron/Command/PublicationBuffersReadyFlyweight.cs index 554325ce..7e3de02d 100644 --- a/src/Adaptive.Aeron/Command/PublicationBuffersReadyFlyweight.cs +++ b/src/Adaptive.Aeron/Command/PublicationBuffersReadyFlyweight.cs @@ -23,27 +23,31 @@ namespace Adaptive.Aeron.Command /// /// /// - /// 0 1 2 3 - /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + /// 0 1 2 3 + /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ /// | Correlation ID | /// | | /// +---------------------------------------------------------------+ + /// | Registration ID | + /// | | + /// +---------------------------------------------------------------+ /// | Session ID | /// +---------------------------------------------------------------+ /// | Stream ID | /// +---------------------------------------------------------------+ - /// | Publication Limit Offset | + /// | Publication Limit Counter Id | + /// +---------------------------------------------------------------+ + /// | Log File Length | /// +---------------------------------------------------------------+ - /// | Log File Length | + /// | Log File Name(ASCII) ... + /// ... | /// +---------------------------------------------------------------+ - /// | Log File Name (ASCII) ... - /// ... | - /// +---------------------------------------------------------------+ public class PublicationBuffersReadyFlyweight { private const int CORRELATION_ID_OFFSET = 0; - private static readonly int SESSION_ID_OFFSET = CORRELATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; + private static readonly int REGISTRATION_ID_OFFSET = CORRELATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; + private static readonly int SESSION_ID_OFFSET = REGISTRATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; private static readonly int STREAM_ID_FIELD_OFFSET = SESSION_ID_OFFSET + BitUtil.SIZE_OF_INT; private static readonly int PUBLICATION_LIMIT_COUNTER_ID_OFFSET = STREAM_ID_FIELD_OFFSET + BitUtil.SIZE_OF_INT; private static readonly int LOGFILE_FIELD_OFFSET = PUBLICATION_LIMIT_COUNTER_ID_OFFSET + BitUtil.SIZE_OF_INT; @@ -59,14 +63,14 @@ public class PublicationBuffersReadyFlyweight /// for fluent API public PublicationBuffersReadyFlyweight Wrap(IMutableDirectBuffer buffer, int offset) { - this._buffer = buffer; - this._offset = offset; + _buffer = buffer; + _offset = offset; return this; } /// - /// return correlation id field + /// Get the correlation id field /// /// correlation id field public long CorrelationId() @@ -75,7 +79,7 @@ public long CorrelationId() } /// - /// set correlation id field + /// Set the correlation id field /// /// field value /// flyweight @@ -87,7 +91,28 @@ public PublicationBuffersReadyFlyweight CorrelationId(long correlationId) } /// - /// return session id field + /// Get the registration id field + /// + /// correlation id field + public long RegistrationId() + { + return _buffer.GetLong(_offset + REGISTRATION_ID_OFFSET); + } + + /// + /// Set the correlation id field + /// + /// field value + /// flyweight + public PublicationBuffersReadyFlyweight RegistrationId(long registrationId) + { + _buffer.PutLong(_offset + REGISTRATION_ID_OFFSET, registrationId); + + return this; + } + + /// + /// Get the session id field /// /// session id field public int SessionId() @@ -96,7 +121,7 @@ public int SessionId() } /// - /// set session id field + /// Set the session id field /// /// field value /// flyweight @@ -108,7 +133,7 @@ public PublicationBuffersReadyFlyweight SessionId(int sessionId) } /// - /// return stream id field + /// Get the stream id field /// /// stream id field public int StreamId() @@ -117,7 +142,7 @@ public int StreamId() } /// - /// set stream id field + /// Set the stream id field /// /// field value /// flyweight diff --git a/src/Adaptive.Aeron/Command/RemoveMessageFlyweight.cs b/src/Adaptive.Aeron/Command/RemoveMessageFlyweight.cs index d588088a..44f9692f 100644 --- a/src/Adaptive.Aeron/Command/RemoveMessageFlyweight.cs +++ b/src/Adaptive.Aeron/Command/RemoveMessageFlyweight.cs @@ -26,10 +26,13 @@ namespace Adaptive.Aeron.Command /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ /// | Client ID | + /// | | /// +---------------------------------------------------------------+ /// | Command Correlation ID | + /// | | /// +---------------------------------------------------------------+ /// | Registration ID | + /// | | /// +---------------------------------------------------------------+ /// /// diff --git a/src/Adaptive.Aeron/Command/SubscriptionMessageFlyweight.cs b/src/Adaptive.Aeron/Command/SubscriptionMessageFlyweight.cs index 64cd1be1..ce15a250 100644 --- a/src/Adaptive.Aeron/Command/SubscriptionMessageFlyweight.cs +++ b/src/Adaptive.Aeron/Command/SubscriptionMessageFlyweight.cs @@ -25,8 +25,10 @@ namespace Adaptive.Aeron.Command /// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ /// | Command Correlation ID | + /// | | /// +---------------------------------------------------------------+ /// | Registration Correlation ID | + /// | | /// +---------------------------------------------------------------+ /// | Stream Id | /// +---------------------------------------------------------------+ diff --git a/src/Adaptive.Aeron/ControlledFragmentAssembler.cs b/src/Adaptive.Aeron/ControlledFragmentAssembler.cs index c834db19..01cfb8f9 100644 --- a/src/Adaptive.Aeron/ControlledFragmentAssembler.cs +++ b/src/Adaptive.Aeron/ControlledFragmentAssembler.cs @@ -14,15 +14,14 @@ * limitations under the License. */ -using System; using System.Collections.Generic; using Adaptive.Aeron.LogBuffer; -using Adaptive.Agrona; +using Adaptive.Agrona.Concurrent; namespace Adaptive.Aeron { /// - /// A that sits in a chain-of-responsibility pattern that reassembles fragmented + /// A that sits in a chain-of-responsibility pattern that reassembles fragmented /// messages so that the next handler in the chain only sees whole messages. /// /// Unfragmented messages are delegated without copy. Fragmented messages are copied to a temporary @@ -37,10 +36,10 @@ namespace Adaptive.Aeron /// /// /// - public class ControlledFragmentAssembler : IControlledFragmentHandler + public class ControlledFragmentAssembler { private readonly int _initialBufferLength; - private readonly IControlledFragmentHandler _delegate; + private readonly ControlledFragmentHandler _delegate; private readonly IDictionary _builderBySessionIdMap = new Dictionary(); /// @@ -48,7 +47,7 @@ public class ControlledFragmentAssembler : IControlledFragmentHandler /// /// onto which whole messages are forwarded. /// to be used for each session. - public ControlledFragmentAssembler(IControlledFragmentHandler @delegate, int initialBufferLength = BufferBuilder.INITIAL_CAPACITY) + public ControlledFragmentAssembler(ControlledFragmentHandler @delegate, int initialBufferLength = BufferBuilder.MIN_ALLOCATED_CAPACITY) { _initialBufferLength = initialBufferLength; _delegate = @delegate; @@ -58,7 +57,7 @@ public ControlledFragmentAssembler(IControlledFragmentHandler @delegate, int ini /// Get the delegate unto which assembled messages are delegated. /// /// the delegate unto which assembled messages are delegated. - public virtual IControlledFragmentHandler Delegate() + public virtual ControlledFragmentHandler Delegate() { return _delegate; } @@ -70,7 +69,7 @@ public virtual IControlledFragmentHandler Delegate() /// at which the data begins. /// of the data in bytes. /// representing the meta data for the data. - public ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offset, int length, Header header) + public ControlledFragmentHandlerAction OnFragment(UnsafeBuffer buffer, int offset, int length, Header header) { byte flags = header.Flags; @@ -78,7 +77,7 @@ public ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offs if ((flags & FrameDescriptor.UNFRAGMENTED) == FrameDescriptor.UNFRAGMENTED) { - action = _delegate.OnFragment(buffer, offset, length, header); + action = _delegate(buffer, offset, length, header); } else { @@ -103,7 +102,7 @@ public ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offs if ((flags & FrameDescriptor.END_FRAG_FLAG) == FrameDescriptor.END_FRAG_FLAG) { int msgLength = builder.Limit(); - action = _delegate.OnFragment(builder.Buffer(), 0, msgLength, header); + action = _delegate(builder.Buffer(), 0, msgLength, header); if (ControlledFragmentHandlerAction.ABORT == action) { diff --git a/src/Adaptive.Aeron/DriverListenerAdapter.cs b/src/Adaptive.Aeron/DriverEventsAdapter.cs similarity index 74% rename from src/Adaptive.Aeron/DriverListenerAdapter.cs rename to src/Adaptive.Aeron/DriverEventsAdapter.cs index 7d9e0660..c418f0e8 100644 --- a/src/Adaptive.Aeron/DriverListenerAdapter.cs +++ b/src/Adaptive.Aeron/DriverEventsAdapter.cs @@ -14,10 +14,9 @@ * limitations under the License. */ -using System.Collections.Generic; using Adaptive.Aeron.Command; using Adaptive.Agrona; -using Adaptive.Agrona.Collections; +using Adaptive.Agrona.Concurrent; using Adaptive.Agrona.Concurrent.Broadcast; namespace Adaptive.Aeron @@ -25,10 +24,8 @@ namespace Adaptive.Aeron /// /// Analogue of the on the client side /// - internal class DriverListenerAdapter + internal class DriverEventsAdapter { - public const long MISSING_REGISTRATION_ID = -1L; - private readonly CopyBroadcastReceiver _broadcastReceiver; private readonly ErrorResponseFlyweight _errorResponse = new ErrorResponseFlyweight(); @@ -36,26 +33,28 @@ internal class DriverListenerAdapter private readonly ImageBuffersReadyFlyweight _imageReady = new ImageBuffersReadyFlyweight(); private readonly CorrelatedMessageFlyweight _correlatedMessage = new CorrelatedMessageFlyweight(); private readonly ImageMessageFlyweight _imageMessage = new ImageMessageFlyweight(); - private readonly IDriverListener _listener; - private readonly IDictionary _subscriberPositionMap = new DefaultDictionary(MISSING_REGISTRATION_ID); + private readonly IDriverEventsListener _listener; + private readonly MessageHandler _messageHandler; private long _activeCorrelationId; private long _lastReceivedCorrelationId; private string _expectedChannel; + - internal DriverListenerAdapter(CopyBroadcastReceiver broadcastReceiver, IDriverListener listener) + internal DriverEventsAdapter(CopyBroadcastReceiver broadcastReceiver, IDriverEventsListener listener) { _broadcastReceiver = broadcastReceiver; _listener = listener; + _messageHandler = OnMessage; } - public int PollMessage(long activeCorrelationId, string expectedChannel) + public int Receive(long activeCorrelationId, string expectedChannel) { _activeCorrelationId = activeCorrelationId; _lastReceivedCorrelationId = -1; _expectedChannel = expectedChannel; - - return _broadcastReceiver.Receive(OnMessage); + + return _broadcastReceiver.Receive(_messageHandler); } public long LastReceivedCorrelationId() @@ -74,7 +73,7 @@ public void OnMessage(int msgTypeId, IMutableDirectBuffer buffer, int index, int long correlationId = _errorResponse.OffendingCommandCorrelationId(); if (correlationId == _activeCorrelationId) { - _listener.OnError(_errorResponse.ErrorCode(), _errorResponse.ErrorMessage(), correlationId); + _listener.OnError(correlationId, _errorResponse.ErrorCode(), _errorResponse.ErrorMessage()); _lastReceivedCorrelationId = correlationId; } @@ -85,22 +84,14 @@ public void OnMessage(int msgTypeId, IMutableDirectBuffer buffer, int index, int { _imageReady.Wrap(buffer, index); - _subscriberPositionMap.Clear(); - for (int i = 0, max = _imageReady.SubscriberPositionCount(); i < max; i++) - { - long registrationId = _imageReady.PositionIndicatorRegistrationId(i); - int positionId = _imageReady.SubscriberPositionId(i); - - _subscriberPositionMap.Add(registrationId, positionId); - } - _listener.OnAvailableImage( + _imageReady.CorrelationId(), _imageReady.StreamId(), - _imageReady.SessionId(), - _subscriberPositionMap, + _imageReady.SessionId(), + _imageReady.SubscriberRegistrationId(), + _imageReady.SubscriberPositionId(), _imageReady.LogFileName(), - _imageReady.SourceIdentity(), - _imageReady.CorrelationId()); + _imageReady.SourceIdentity()); break; } @@ -113,12 +104,13 @@ public void OnMessage(int msgTypeId, IMutableDirectBuffer buffer, int index, int if (correlationId == _activeCorrelationId) { _listener.OnNewPublication( - _expectedChannel, + correlationId, + _publicationReady.RegistrationId(), _publicationReady.StreamId(), _publicationReady.SessionId(), _publicationReady.PublicationLimitCounterId(), - _publicationReady.LogFileName(), - correlationId); + _expectedChannel, + _publicationReady.LogFileName()); _lastReceivedCorrelationId = correlationId; } @@ -141,7 +133,7 @@ public void OnMessage(int msgTypeId, IMutableDirectBuffer buffer, int index, int { _imageMessage.Wrap(buffer, index); - _listener.OnUnavailableImage(_imageMessage.StreamId(), _imageMessage.CorrelationId()); + _listener.OnUnavailableImage(_imageMessage.CorrelationId(), _imageMessage.StreamId()); break; } @@ -153,12 +145,13 @@ public void OnMessage(int msgTypeId, IMutableDirectBuffer buffer, int index, int if (correlationId == _activeCorrelationId) { _listener.OnNewExclusivePublication( - _expectedChannel, + correlationId, + _publicationReady.RegistrationId(), _publicationReady.StreamId(), _publicationReady.SessionId(), _publicationReady.PublicationLimitCounterId(), - _publicationReady.LogFileName(), - correlationId); + _expectedChannel, + _publicationReady.LogFileName()); _lastReceivedCorrelationId = correlationId; } diff --git a/src/Adaptive.Aeron/DriverProxy.cs b/src/Adaptive.Aeron/DriverProxy.cs index 7f9bb7a6..19245a82 100644 --- a/src/Adaptive.Aeron/DriverProxy.cs +++ b/src/Adaptive.Aeron/DriverProxy.cs @@ -32,7 +32,8 @@ namespace Adaptive.Aeron public class DriverProxy { /// - /// Maximum capacity of the write buffer + /// Maximum capacity of the write buffer + /// public const int MSG_BUFFER_CAPACITY = 1024; private readonly UnsafeBuffer _buffer = new UnsafeBuffer(BufferUtil.AllocateDirectAligned(MSG_BUFFER_CAPACITY,BitUtil.CACHE_LINE_LENGTH * 2)); @@ -43,7 +44,7 @@ public class DriverProxy private readonly DestinationMessageFlyweight _destinationMessage = new DestinationMessageFlyweight(); private readonly IRingBuffer _toDriverCommandBuffer; - public DriverProxy(IRingBuffer toDriverCommandBuffer) + public DriverProxy(IRingBuffer toDriverCommandBuffer, long clientId) { if (toDriverCommandBuffer == null) throw new ArgumentNullException(nameof(toDriverCommandBuffer)); @@ -56,7 +57,6 @@ public DriverProxy(IRingBuffer toDriverCommandBuffer) _removeMessage.Wrap(_buffer, 0); _destinationMessage.Wrap(_buffer, 0); - var clientId = toDriverCommandBuffer.NextCorrelationId(); _correlatedMessage.ClientId(clientId); } diff --git a/src/Adaptive.Aeron/EndOfStreamHandler.cs b/src/Adaptive.Aeron/EndOfStreamHandler.cs new file mode 100644 index 00000000..3b662c3e --- /dev/null +++ b/src/Adaptive.Aeron/EndOfStreamHandler.cs @@ -0,0 +1,8 @@ +namespace Adaptive.Aeron +{ + /// + /// Delegeate for delivery of End of Stream image notification to a + /// + /// that has reached End Of Stream. + public delegate void EndOfStreamHandler(Image image); +} \ No newline at end of file diff --git a/src/Adaptive.Aeron/Exceptions/ConductorServiceTimeoutException.cs b/src/Adaptive.Aeron/Exceptions/ConductorServiceTimeoutException.cs index 7e8aae5c..7be38162 100644 --- a/src/Adaptive.Aeron/Exceptions/ConductorServiceTimeoutException.cs +++ b/src/Adaptive.Aeron/Exceptions/ConductorServiceTimeoutException.cs @@ -21,7 +21,7 @@ namespace Adaptive.Aeron.Exceptions /// /// A timeout has occurred between service calls for the client conductor. /// - public class ConductorServiceTimeoutException : Exception + public class ConductorServiceTimeoutException : TimeoutException { public ConductorServiceTimeoutException(string message) : base(message) { diff --git a/src/Adaptive.Aeron/Exceptions/DriverTimeoutException.cs b/src/Adaptive.Aeron/Exceptions/DriverTimeoutException.cs index 399a0d11..08ba751d 100644 --- a/src/Adaptive.Aeron/Exceptions/DriverTimeoutException.cs +++ b/src/Adaptive.Aeron/Exceptions/DriverTimeoutException.cs @@ -21,7 +21,7 @@ namespace Adaptive.Aeron.Exceptions /// /// A timeout has occurred while waiting on the media driver responding to an operation. /// - public class DriverTimeoutException : Exception + public class DriverTimeoutException : TimeoutException { public DriverTimeoutException(string message) : base(message) { diff --git a/src/Adaptive.Aeron/ExclusivePublication.cs b/src/Adaptive.Aeron/ExclusivePublication.cs index a94926da..c6f67e0b 100644 --- a/src/Adaptive.Aeron/ExclusivePublication.cs +++ b/src/Adaptive.Aeron/ExclusivePublication.cs @@ -26,7 +26,7 @@ namespace Adaptive.Aeron { /// - /// Aeron Publisher API for sending messages to subscribers of a given channel and streamId pair. ExclusivePublications + /// Aeron publisher API for sending messages to subscribers of a given channel and streamId pair. ExclusivePublications /// each get their own session id so multiple can be concurrently active on the same media driver as independent streams. /// /// s are create via the method, @@ -37,7 +37,7 @@ namespace Adaptive.Aeron /// /// The APIs used try claim and offer are non-blocking. /// - /// Note: ExclusivePublication instances are NOT threadsafe for offer and try claim method but are for position. + /// Note: Instances are NOT threadsafe for offer and try claim methods but are for the others. /// /// /// @@ -55,36 +55,52 @@ public class ExclusivePublication : IDisposable /// /// The offer failed due to an administration action and should be retried. + /// The action is an operation such as log rotation which is likely to have succeeded by the next retry attempt. /// public const long ADMIN_ACTION = -3; /// - /// The has been closed and should no longer be used. + /// The has been closed and should no longer be used. /// public const long CLOSED = -4; - private int _refCount; + /// + /// The offer failed due to reaching the maximum position of the stream given term buffer length times the total + /// possible number of terms. + /// + /// If this happen then the publication should be closed and a new one added. To make it less likely to happen then + /// increase the term buffer length. + /// + /// + public const long MAX_POSITION_EXCEEDED = -5; + + private readonly long _originalRegistrationId; + private readonly long _maxPossiblePosition; + private readonly int _termBufferLength; private readonly int _positionBitsToShift; private volatile bool _isClosed; + private long _termBeginPosition; + private int _activePartitionIndex; + private int _termId; + private int _termOffset; + + private readonly ExclusiveTermAppender[] _termAppenders = + new ExclusiveTermAppender[LogBufferDescriptor.PARTITION_COUNT]; - private readonly ExclusiveTermAppender[] _termAppenders = new ExclusiveTermAppender[LogBufferDescriptor.PARTITION_COUNT]; private readonly IReadablePosition _positionLimit; private readonly UnsafeBuffer _logMetaDataBuffer; private readonly HeaderWriter _headerWriter; private readonly LogBuffers _logBuffers; private readonly ClientConductor _conductor; - private long _termBeginPosition; - private int _activePartitionIndex; - private int _termId; - private int _termOffset; internal ExclusivePublication( - ClientConductor clientConductor, - string channel, - int streamId, - int sessionId, + ClientConductor clientConductor, + string channel, + int streamId, + int sessionId, IReadablePosition positionLimit, - LogBuffers logBuffers, + LogBuffers logBuffers, + long originalRegistrationId, long registrationId) { var buffers = logBuffers.TermBuffers(); @@ -96,25 +112,32 @@ internal ExclusivePublication( } var termLength = logBuffers.TermLength(); + _termBufferLength = termLength; MaxPayloadLength = LogBufferDescriptor.MtuLength(logMetaDataBuffer) - DataHeaderFlyweight.HEADER_LENGTH; MaxMessageLength = FrameDescriptor.ComputeExclusiveMaxMessageLength(termLength); + _maxPossiblePosition = termLength * (1L << 31); _conductor = clientConductor; Channel = channel; StreamId = streamId; SessionId = sessionId; - InitialTermId = LogBufferDescriptor.InitialTermId(logMetaDataBuffer); + _logMetaDataBuffer = logMetaDataBuffer; + _originalRegistrationId = originalRegistrationId; RegistrationId = registrationId; _positionLimit = positionLimit; _logBuffers = logBuffers; _positionBitsToShift = IntUtil.NumberOfTrailingZeros(termLength); _headerWriter = new HeaderWriter(LogBufferDescriptor.DefaultFrameHeader(logMetaDataBuffer)); - this._activePartitionIndex = LogBufferDescriptor.ActivePartitionIndex(logMetaDataBuffer); + InitialTermId = LogBufferDescriptor.InitialTermId(logMetaDataBuffer); - long rawTail = _termAppenders[_activePartitionIndex].RawTail(); + var activeIndex = LogBufferDescriptor.ActivePartitionIndex(logMetaDataBuffer); + _activePartitionIndex = activeIndex; + + long rawTail = LogBufferDescriptor.RawTail(_logMetaDataBuffer, activeIndex); _termId = LogBufferDescriptor.TermId(rawTail); _termOffset = LogBufferDescriptor.TermOffset(rawTail, termLength); - _termBeginPosition = LogBufferDescriptor.ComputeTermBeginPosition(_termId, _positionBitsToShift, InitialTermId); + _termBeginPosition = + LogBufferDescriptor.ComputeTermBeginPosition(_termId, _positionBitsToShift, InitialTermId); } /// @@ -123,6 +146,18 @@ internal ExclusivePublication( /// the length in bytes for each term partition in the log buffer. public int TermBufferLength => _logBuffers.TermLength(); + /// + /// The maximum possible position this stream can reach due to its term buffer length. + /// + /// Maximum possible position is term-length times 2^31 in bytes. + /// + /// + /// the maximum possible position this stream can reach due to it term buffer length. + public long MaxPossiblePosition() + { + return _maxPossiblePosition; + } + /// /// Media address for delivery to the channel. /// @@ -167,7 +202,29 @@ internal ExclusivePublication( public int MaxPayloadLength { get; } /// - /// Return the registration id used to register this Publication with the media driver. + /// Get the original registration used to register this Publication with the media driver by the first publisher. + /// + /// original registration id + public long OriginalRegistrationId() + { + return _originalRegistrationId; + } + + /// + /// Is this Publication the original instance added to the driver? If not then it was added after another client + /// has already added the publication. + /// + /// true if this instance is the first added otherwise false. + public bool IsOriginal() + { + return _originalRegistrationId == RegistrationId; + } + + /// + /// Get the registration id used to register this Publication with the media driver. + /// + /// If this value is different from the then another client has previously added + /// this Publication. In the case of an exclusive publication this should never happen. /// /// registration id public long RegistrationId { get; } @@ -176,7 +233,9 @@ internal ExclusivePublication( /// Has the seen an active Subscriber recently? /// /// true if this has seen an active subscriber otherwise false. - public bool IsConnected => !_isClosed && _conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer)); + public bool IsConnected => !_isClosed && + _conductor.IsPublicationConnected( + LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer)); /// /// Release resources used by this Publication. @@ -234,7 +293,8 @@ public long Position var rawTail = LogBufferDescriptor.RawTailVolatile(_logMetaDataBuffer); var termOffset = LogBufferDescriptor.TermOffset(rawTail, _logBuffers.TermLength()); - return LogBufferDescriptor.ComputePosition(LogBufferDescriptor.TermId(rawTail), termOffset, _positionBitsToShift, InitialTermId); + return LogBufferDescriptor.ComputePosition(LogBufferDescriptor.TermId(rawTail), termOffset, + _positionBitsToShift, InitialTermId); } } @@ -262,7 +322,7 @@ public long PositionLimit /// /// containing message. /// The new stream position, otherwise , , - /// or . + /// , or . [MethodImpl(MethodImplOptions.AggressiveInlining)] public long Offer(UnsafeBuffer buffer) { @@ -275,13 +335,14 @@ public long Offer(UnsafeBuffer buffer) /// containing message. /// offset in the buffer at which the encoded message begins. /// in bytes of the encoded message. + /// for the frame. /// The new stream position, otherwise a negative error value , , - /// or . + /// , or . [MethodImpl(MethodImplOptions.AggressiveInlining)] public long Offer( - UnsafeBuffer buffer, - int offset, - int length, + UnsafeBuffer buffer, + int offset, + int length, ReservedValueSupplier reservedValueSupplier = null) { var newPosition = CLOSED; @@ -289,30 +350,28 @@ public long Offer( { var limit = _positionLimit.Volatile; ExclusiveTermAppender termAppender = _termAppenders[_activePartitionIndex]; - long position = _termBeginPosition + this._termOffset; + long position = _termBeginPosition + _termOffset; if (position < limit) { int result; if (length <= MaxPayloadLength) { - result = termAppender.AppendUnfragmentedMessage(_termId, _termOffset, _headerWriter, buffer, offset, length, reservedValueSupplier); + result = termAppender.AppendUnfragmentedMessage(_termId, _termOffset, _headerWriter, buffer, + offset, length, reservedValueSupplier); } else { CheckForMaxMessageLength(length); - result = termAppender.AppendFragmentedMessage(_termId, _termOffset, _headerWriter, buffer, offset, length, MaxPayloadLength, reservedValueSupplier); + result = termAppender.AppendFragmentedMessage(_termId, _termOffset, _headerWriter, buffer, + offset, length, MaxPayloadLength, reservedValueSupplier); } newPosition = NewPosition(result); } - else if (_conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer))) - { - newPosition = BACK_PRESSURED; - } else { - newPosition = NOT_CONNECTED; + newPosition = BackPressureStatus(position, length); } } @@ -349,7 +408,7 @@ public long Offer( /// of the range to claim, in bytes.. /// to be populated if the claim succeeds. /// The new stream position, otherwise , , - /// or . + /// , or . /// if the length is greater than max payload length within an MTU. /// /// @@ -370,19 +429,48 @@ public long TryClaim(int length, ExclusiveBufferClaim bufferClaim) int result = termAppender.Claim(_termId, _termOffset, _headerWriter, length, bufferClaim); newPosition = NewPosition(result); } - else if (_conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer))) + else + { + newPosition = BackPressureStatus(position, length); + } + } + + return newPosition; + } + + /// + /// Append a padding record log of a given length to make up the log to a position. + /// + /// of the range to claim, in bytes.. + /// The new stream position, otherwise a negative error value of , + /// , , , or . + /// if the length is greater than . + public virtual long AppendPadding(int length) + { + CheckForMaxMessageLength(length); + long newPosition = CLOSED; + + if (!_isClosed) + { + long limit = _positionLimit.Volatile; + ExclusiveTermAppender termAppender = _termAppenders[_activePartitionIndex]; + long position = _termBeginPosition + _termOffset; + + if (position < limit) { - newPosition = BACK_PRESSURED; + int result = termAppender.AppendPadding(_termId, _termOffset, _headerWriter, length); + newPosition = NewPosition(result); } else { - newPosition = NOT_CONNECTED; + newPosition = BackPressureStatus(position, length); } } return newPosition; } + /// /// Add a destination manually to a multi-destination-cast Publication. /// @@ -416,7 +504,7 @@ public void RemoveDestination(string endpointChannel) _conductor.ClientLock().Unlock(); } } - + [MethodImpl(MethodImplOptions.AggressiveInlining)] private long NewPosition(int resultingOffset) { @@ -428,21 +516,43 @@ private long NewPosition(int resultingOffset) } else { + if ((_termBeginPosition + _termBufferLength) >= MaxPossiblePosition()) + { + return MAX_POSITION_EXCEEDED; + } + int nextIndex = LogBufferDescriptor.NextPartitionIndex(_activePartitionIndex); int nextTermId = _termId + 1; _activePartitionIndex = nextIndex; _termOffset = 0; _termId = nextTermId; - _termBeginPosition = LogBufferDescriptor.ComputeTermBeginPosition(nextTermId, _positionBitsToShift, InitialTermId); + _termBeginPosition = + LogBufferDescriptor.ComputeTermBeginPosition(nextTermId, _positionBitsToShift, InitialTermId); - _termAppenders[nextIndex].TailTermId(nextTermId); + LogBufferDescriptor.InitialiseTailWithTermId(_logMetaDataBuffer, nextIndex, nextTermId); LogBufferDescriptor.ActivePartitionIndexOrdered(_logMetaDataBuffer, nextIndex); return ADMIN_ACTION; } } + private long BackPressureStatus(long currentPosition, int messageLength) + { + long status = NOT_CONNECTED; + + if ((currentPosition + messageLength) >= _maxPossiblePosition) + { + status = MAX_POSITION_EXCEEDED; + } + else if (_conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer))) + { + status = BACK_PRESSURED; + } + + return status; + } + [MethodImpl(MethodImplOptions.AggressiveInlining)] private void CheckForMaxPayloadLength(int length) { diff --git a/src/Adaptive.Aeron/FragmentAssembler.cs b/src/Adaptive.Aeron/FragmentAssembler.cs index 5eb67fce..65fd40ef 100644 --- a/src/Adaptive.Aeron/FragmentAssembler.cs +++ b/src/Adaptive.Aeron/FragmentAssembler.cs @@ -49,7 +49,7 @@ public class FragmentAssembler /// Construct an adapter to reassemble message fragments and delegate on whole messages. /// /// onto which whole messages are forwarded. - public FragmentAssembler(FragmentHandler fragmentHandler) : this(fragmentHandler, BufferBuilder.INITIAL_CAPACITY) + public FragmentAssembler(FragmentHandler fragmentHandler) : this(fragmentHandler, BufferBuilder.MIN_ALLOCATED_CAPACITY) { } diff --git a/src/Adaptive.Aeron/IDriverListener.cs b/src/Adaptive.Aeron/IDriverEventsListener.cs similarity index 68% rename from src/Adaptive.Aeron/IDriverListener.cs rename to src/Adaptive.Aeron/IDriverEventsListener.cs index 42672fcb..f67faed0 100644 --- a/src/Adaptive.Aeron/IDriverListener.cs +++ b/src/Adaptive.Aeron/IDriverEventsListener.cs @@ -14,42 +14,43 @@ * limitations under the License. */ -using System.Collections.Generic; - namespace Adaptive.Aeron { /// /// Callback interface for dispatching command responses from the driver on the control protocol. /// - internal interface IDriverListener + internal interface IDriverEventsListener { - void OnError(ErrorCode errorCode, string message, long correlationId); + void OnError(long correlationId, ErrorCode errorCode, string message); void OnAvailableImage( + long correlationId, int streamId, - int sessionId, - IDictionary subscriberPositionMap, + int sessionId, + long subscriberRegistrationId, + int subscriberPositionId, string logFileName, - string sourceIdentity, - long correlationId); + string sourceIdentity); void OnNewPublication( - string channel, + long correlationId, + long registrationId, int streamId, int sessionId, int publicationLimitId, - string logFileName, - long correlationId); + string channel, + string logFileName); - void OnUnavailableImage(int streamId, long correlationId); + void OnUnavailableImage(long correlationId, int streamId); void OnNewExclusivePublication( - string channel, + long correlationId, + long registrationid, int streamId, int sessionId, int publicationLimitId, - string logFileName, - long correlationId); + string channel, + string logFileName); } } \ No newline at end of file diff --git a/src/Adaptive.Aeron/Image.cs b/src/Adaptive.Aeron/Image.cs index 3f91ba2d..4a198e72 100644 --- a/src/Adaptive.Aeron/Image.cs +++ b/src/Adaptive.Aeron/Image.cs @@ -39,11 +39,13 @@ namespace Adaptive.Aeron /// public class Image { - private readonly long _joiningPosition; + private readonly long _joinPosition; + private long _finalPosition; private readonly int _initialTermId; private readonly int _termLengthMask; private readonly int _positionBitsToShift; + private bool _isEos; private volatile bool _isClosed; private readonly IPosition _subscriberPosition; @@ -75,7 +77,7 @@ public Image(Subscription subscription, int sessionId, IPosition subscriberPosit _errorHandler = errorHandler; SourceIdentity = sourceIdentity; CorrelationId = correlationId; - _joiningPosition = subscriberPosition.Get(); + _joinPosition = subscriberPosition.Get(); _termBuffers = logBuffers.TermBuffers(); @@ -104,7 +106,15 @@ public Image(Subscription subscription, int sessionId, IPosition subscriberPosit /// source identity of the sending publisher as an abstract concept appropriate for the media. public string SourceIdentity { get; } - + /// + /// The length in bytes of the MTU (Maximum Transmission Unit) the Sender used for the datagram. + /// + /// length in bytes of the MTU (Maximum Transmission Unit) the Sender used for the datagram. + public int MtuLength() + { + return LogBufferDescriptor.MtuLength(_logBuffers.MetaDataBuffer()); + } + /// /// The initial term at which the stream started for this session. /// @@ -112,9 +122,9 @@ public Image(Subscription subscription, int sessionId, IPosition subscriberPosit public int InitialTermId => _initialTermId; /// - /// The correlationId for identification of the image with the media driver. + /// The originalRegistrationId for identification of the image with the media driver. /// - /// the correlationId for identification of the image with the media driver. + /// the originalRegistrationId for identification of the image with the media driver. public long CorrelationId { get; } /// @@ -133,9 +143,9 @@ public Image(Subscription subscription, int sessionId, IPosition subscriberPosit /// Get the position the subscriber joined this stream at. /// /// the position the subscriber joined this stream at. - public long JoiningPosition() + public long JoinPosition() { - return _joiningPosition; + return _joinPosition; } /// @@ -147,7 +157,7 @@ public long Position() { if (_isClosed) { - return 0; + return _finalPosition; } return _subscriberPosition.Get(); @@ -170,6 +180,20 @@ public void Position(long newPosition) _subscriberPosition.SetOrdered(newPosition); } + /// + /// Is the current consumed position at the end of the stream? + /// + /// true if at the end of the stream or false if not. + public virtual bool IsEndOfStream() + { + if (_isClosed) + { + return _isEos; + } + + return _subscriberPosition.Get() >= LogBufferDescriptor.EndOfStreamPosition(_logBuffers.MetaDataBuffer()); + } + ///// ///// The to the raw log of the Image. ///// @@ -226,7 +250,7 @@ public int Poll(FragmentHandler fragmentHandler, int fragmentLimit) /// the number of fragments that have been consumed. /// /// - public int ControlledPoll(IControlledFragmentHandler fragmentHandler, int fragmentLimit) + public int ControlledPoll(ControlledFragmentHandler fragmentHandler, int fragmentLimit) { if (_isClosed) { @@ -261,7 +285,7 @@ public int ControlledPoll(IControlledFragmentHandler fragmentHandler, int fragme } _header.Offset = frameOffset; - var action = fragmentHandler.OnFragment( + var action = fragmentHandler( termBuffer, frameOffset + DataHeaderFlyweight.HEADER_LENGTH, length - DataHeaderFlyweight.HEADER_LENGTH, @@ -317,7 +341,7 @@ public int ControlledPoll(IControlledFragmentHandler fragmentHandler, int fragme /// the resulting position after the scan terminates which is a complete message. /// /// - public virtual long ControlledPeek(long initialPosition, IControlledFragmentHandler fragmentHandler, long limitPosition) + public virtual long ControlledPeek(long initialPosition, ControlledFragmentHandler fragmentHandler, long limitPosition) { if (_isClosed) { @@ -356,7 +380,7 @@ public virtual long ControlledPeek(long initialPosition, IControlledFragmentHand _header.Offset = frameOffset; - var action = fragmentHandler.OnFragment( + var action = fragmentHandler( termBuffer, frameOffset + DataHeaderFlyweight.HEADER_LENGTH, length - DataHeaderFlyweight.HEADER_LENGTH, @@ -396,7 +420,7 @@ public virtual long ControlledPeek(long initialPosition, IControlledFragmentHand /// to which block is delivered. /// up to which a block may be in length. /// the number of bytes that have been consumed. - public int BlockPoll(IBlockHandler blockHandler, int blockLengthLimit) + public int BlockPoll(BlockHandler blockHandler, int blockLengthLimit) { if (_isClosed) { @@ -417,7 +441,7 @@ public int BlockPoll(IBlockHandler blockHandler, int blockLengthLimit) { var termId = termBuffer.GetInt(termOffset + DataHeaderFlyweight.TERM_ID_FIELD_OFFSET); - blockHandler.OnBlock(termBuffer, termOffset, bytesConsumed, SessionId, termId); + blockHandler(termBuffer, termOffset, bytesConsumed, SessionId, termId); } catch (Exception t) { @@ -500,7 +524,10 @@ private void ValidatePosition(long newPosition) internal IManagedResource ManagedResource() { + _finalPosition = _subscriberPosition.Volatile; + _isEos = _finalPosition >= LogBufferDescriptor.EndOfStreamPosition(_logBuffers.MetaDataBuffer()); _isClosed = true; + return new ImageManagedResource(this); } diff --git a/src/Adaptive.Aeron/ImageControlledFragmentHandler.cs b/src/Adaptive.Aeron/ImageControlledFragmentHandler.cs index 2f9b0ba0..3a09e7d3 100644 --- a/src/Adaptive.Aeron/ImageControlledFragmentHandler.cs +++ b/src/Adaptive.Aeron/ImageControlledFragmentHandler.cs @@ -1,5 +1,6 @@ using Adaptive.Aeron.LogBuffer; using Adaptive.Agrona; +using Adaptive.Agrona.Concurrent; namespace Adaptive.Aeron { @@ -15,9 +16,9 @@ namespace Adaptive.Aeron /// /// /// - public class ImageControlledFragmentAssembler : IControlledFragmentHandler + public class ImageControlledFragmentAssembler { - private readonly IControlledFragmentHandler _delegate; + private readonly ControlledFragmentHandler _delegate; private readonly BufferBuilder _builder; /// @@ -25,7 +26,7 @@ public class ImageControlledFragmentAssembler : IControlledFragmentHandler /// /// onto which whole messages are forwarded. /// to be used for each session. - public ImageControlledFragmentAssembler(IControlledFragmentHandler @delegate, int initialBufferLength = BufferBuilder.INITIAL_CAPACITY) + public ImageControlledFragmentAssembler(ControlledFragmentHandler @delegate, int initialBufferLength = BufferBuilder.MIN_ALLOCATED_CAPACITY) { _delegate = @delegate; _builder = new BufferBuilder(initialBufferLength); @@ -35,7 +36,7 @@ public ImageControlledFragmentAssembler(IControlledFragmentHandler @delegate, in /// Get the delegate unto which assembled messages are delegated. /// /// the delegate unto which assembled messages are delegated. - public virtual IControlledFragmentHandler Delegate() + public virtual ControlledFragmentHandler Delegate() { return _delegate; } @@ -50,13 +51,13 @@ public BufferBuilder Builder() } /// - /// The implementation of that reassembles and forwards whole messages. + /// The implementation of that reassembles and forwards whole messages. /// /// containing the data. /// at which the data begins. /// of the data in bytes. /// representing the meta data for the data. - public ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offset, int length, Header header) + public ControlledFragmentHandlerAction OnFragment(UnsafeBuffer buffer, int offset, int length, Header header) { byte flags = header.Flags; @@ -64,7 +65,7 @@ public ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offs if ((flags & FrameDescriptor.UNFRAGMENTED) == FrameDescriptor.UNFRAGMENTED) { - action = _delegate.OnFragment(buffer, offset, length, header); + action = _delegate(buffer, offset, length, header); } else { @@ -80,7 +81,7 @@ public ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offs if ((flags & FrameDescriptor.END_FRAG_FLAG) == FrameDescriptor.END_FRAG_FLAG) { int msgLength = _builder.Limit(); - action = _delegate.OnFragment(_builder.Buffer(), 0, msgLength, header); + action = _delegate(_builder.Buffer(), 0, msgLength, header); if (ControlledFragmentHandlerAction.ABORT == action) { diff --git a/src/Adaptive.Aeron/ImageFragmentAssembler.cs b/src/Adaptive.Aeron/ImageFragmentAssembler.cs index 01fededa..beda576f 100644 --- a/src/Adaptive.Aeron/ImageFragmentAssembler.cs +++ b/src/Adaptive.Aeron/ImageFragmentAssembler.cs @@ -47,7 +47,7 @@ public class ImageFragmentAssembler /// Construct an adapter to reassemble message fragments and delegate on whole messages. /// /// onto which whole messages are forwarded. - public ImageFragmentAssembler(FragmentHandler fragmentHandler) : this(fragmentHandler, BufferBuilder.INITIAL_CAPACITY) + public ImageFragmentAssembler(FragmentHandler fragmentHandler) : this(fragmentHandler, BufferBuilder.MIN_ALLOCATED_CAPACITY) { } diff --git a/src/Adaptive.Aeron/LogBuffer/BlockHandler.cs b/src/Adaptive.Aeron/LogBuffer/BlockHandler.cs new file mode 100644 index 00000000..0f536976 --- /dev/null +++ b/src/Adaptive.Aeron/LogBuffer/BlockHandler.cs @@ -0,0 +1,31 @@ +/* + * Copyright 2014 - 2017 Adaptive Financial Consulting Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0S + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +using Adaptive.Agrona; + +namespace Adaptive.Aeron.LogBuffer +{ + /// + /// Callback for handling a block of message fragments scanned from the log. + /// + /// containing the block of message fragments. + /// at which the block begins, including any frame headers. + /// of the block in bytes, including any frame headers that is aligned up to + /// . + /// of the stream containing this block of message fragments. + /// of the stream containing this block of message fragments. + public delegate void BlockHandler(IDirectBuffer buffer, int offset, int length, int sessionId, int termId); +} \ No newline at end of file diff --git a/src/Adaptive.Aeron/LogBuffer/IControlledFragmentHandler.cs b/src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandler.cs similarity index 55% rename from src/Adaptive.Aeron/LogBuffer/IControlledFragmentHandler.cs rename to src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandler.cs index ac14c277..2ac9c6c5 100644 --- a/src/Adaptive.Aeron/LogBuffer/IControlledFragmentHandler.cs +++ b/src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandler.cs @@ -14,8 +14,7 @@ * limitations under the License. */ -using System.Runtime.Remoting.Messaging; -using Adaptive.Agrona; +using Adaptive.Agrona.Concurrent; namespace Adaptive.Aeron.LogBuffer { @@ -23,17 +22,10 @@ namespace Adaptive.Aeron.LogBuffer /// Handler for reading data that is coming from a log buffer. The frame will either contain a whole message /// or a fragment of a message to be reassembled. Messages are fragmented if greater than the frame for MTU in length. /// - public interface IControlledFragmentHandler - { - - /// - /// Callback for handling fragments of data being read from a log. - /// - /// containing the data. - /// at which the data begins. - /// of the data in bytes. - /// representing the meta data for the data. - /// The action to be taken with regard to the stream position after the callback. - ControlledFragmentHandlerAction OnFragment(IDirectBuffer buffer, int offset, int length, Header header); - } + /// containing the data. + /// at which the data begins. + /// of the data in bytes. + /// representing the meta data for the data. + /// The action to be taken with regard to the stream position after the callback. + public delegate ControlledFragmentHandlerAction ControlledFragmentHandler(UnsafeBuffer buffer, int offset, int length, Header header); } \ No newline at end of file diff --git a/src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandlerAction.cs b/src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandlerAction.cs index 61ec3ba2..bce6eef0 100644 --- a/src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandlerAction.cs +++ b/src/Adaptive.Aeron/LogBuffer/ControlledFragmentHandlerAction.cs @@ -14,8 +14,6 @@ * limitations under the License. */ -using Adaptive.Agrona; - namespace Adaptive.Aeron.LogBuffer { public enum ControlledFragmentHandlerAction diff --git a/src/Adaptive.Aeron/LogBuffer/ExclusiveTermAppender.cs b/src/Adaptive.Aeron/LogBuffer/ExclusiveTermAppender.cs index 602dd2bc..5df66e15 100644 --- a/src/Adaptive.Aeron/LogBuffer/ExclusiveTermAppender.cs +++ b/src/Adaptive.Aeron/LogBuffer/ExclusiveTermAppender.cs @@ -41,13 +41,8 @@ public class ExclusiveTermAppender /// The append operation tripped the end of the buffer and needs to rotate. /// public const int TRIPPED = -1; - - /// - /// The append operation went past the end of the buffer and failed. - /// - public const int FAILED = -2; - - private readonly long tailAddressOffset; + + private readonly long _tailAddressOffset; private readonly UnsafeBuffer _termBuffer; private readonly UnsafeBuffer _metaDataBuffer; @@ -63,27 +58,7 @@ public ExclusiveTermAppender(UnsafeBuffer termBuffer, UnsafeBuffer metaDataBuffe metaDataBuffer.BoundsCheck(tailCounterOffset, BitUtil.SIZE_OF_LONG); _termBuffer = termBuffer; _metaDataBuffer = metaDataBuffer; - tailAddressOffset = tailCounterOffset; // TODO divergence - } - - /// - /// Get the raw current tail value in a volatile memory ordering fashion. - /// - /// the current tail value. - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public long RawTail() - { - return _metaDataBuffer.GetLong((int)tailAddressOffset); - } - - /// - /// Set the value for the tail counter. - /// - /// for the tail counter - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public void TailTermId(int termId) - { - _metaDataBuffer.PutLong((int)tailAddressOffset, ((long)termId) << 32); + _tailAddressOffset = tailCounterOffset; // TODO divergence } /// @@ -94,8 +69,7 @@ public void TailTermId(int termId) /// for writing the default header. /// of the message to be written. /// to be updated with the claimed region. - /// the resulting offset of the term after the append on success otherwise - /// or packed with the termId if a padding record was inserted at the end. + /// the resulting offset of the term after the append on success otherwise . [MethodImpl(MethodImplOptions.AggressiveInlining)] public int Claim( int termId, @@ -108,10 +82,45 @@ public int Claim( int alignedLength = BitUtil.Align(frameLength, FrameDescriptor.FRAME_ALIGNMENT); UnsafeBuffer termBuffer = _termBuffer; int termLength = termBuffer.Capacity; + + int resultingOffset = termOffset + alignedLength; + PutRawTailOrdered(termId, resultingOffset); + + if (resultingOffset > termLength) + { + resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, termId); + } + else + { + header.Write(termBuffer, termOffset, frameLength, termId); + bufferClaim.Wrap(termBuffer, termOffset, frameLength); + } + + return resultingOffset; + } - PutRawTailOrdered(termId, termOffset + alignedLength); + /// + /// Pad a length of the term buffer with a padding record. + /// + /// for the current term. + /// in the term at which to append. + /// for writing the default header. + /// of the padding to be written. + /// the resulting offset of the term after success otherwise . + public int AppendPadding( + int termId, + int termOffset, + HeaderWriter header, + int length) + { + int frameLength = length + DataHeaderFlyweight.HEADER_LENGTH; + int alignedLength = BitUtil.Align(frameLength, FrameDescriptor.FRAME_ALIGNMENT); + UnsafeBuffer termBuffer = _termBuffer; + int termLength = termBuffer.Capacity; int resultingOffset = termOffset + alignedLength; + PutRawTailOrdered(termId, resultingOffset); + if (resultingOffset > termLength) { resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, termId); @@ -119,7 +128,8 @@ public int Claim( else { header.Write(termBuffer, termOffset, frameLength, termId); - bufferClaim.Wrap(termBuffer, termOffset, frameLength); + FrameDescriptor.FrameType(termBuffer, termOffset, FrameDescriptor.PADDING_FRAME_TYPE); + FrameDescriptor.FrameLengthOrdered(termBuffer, termOffset, frameLength); } return resultingOffset; @@ -135,8 +145,7 @@ public int Claim( /// at which the message begins. /// of the message in the source buffer. /// for the frame - /// the resulting offset of the term after the append on success otherwise or - /// packed with the termId if a padding record was inserted at the end. + /// the resulting offset of the term after the append on success otherwise . [MethodImpl(MethodImplOptions.AggressiveInlining)] #if DEBUG public virtual int AppendUnfragmentedMessage( @@ -163,10 +172,10 @@ public int AppendUnfragmentedMessage( UnsafeBuffer termBuffer = _termBuffer; int termLength = termBuffer.Capacity; - - PutRawTailOrdered(termId, termOffset + alignedLength); int resultingOffset = termOffset + alignedLength; + PutRawTailOrdered(termId, resultingOffset); + if (resultingOffset > termLength) { resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, termId); @@ -201,8 +210,7 @@ public int AppendUnfragmentedMessage( /// of the message in the source buffer. /// that the message will be fragmented into. /// /// for the frame - /// the resulting offset of the term after the append on success otherwise - /// or packed with the termId if a padding record was inserted at the end. + /// the resulting offset of the term after the append on success otherwise . [MethodImpl(MethodImplOptions.AggressiveInlining)] public int AppendFragmentedMessage( int termId, @@ -223,10 +231,10 @@ public int AppendFragmentedMessage( lastFrameLength; UnsafeBuffer termBuffer = _termBuffer; int termLength = termBuffer.Capacity; - - PutRawTailOrdered(termId, termOffset + requiredLength); int resultingOffset = termOffset + requiredLength; + PutRawTailOrdered(termId, resultingOffset); + if (resultingOffset > termLength) { resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, termId); @@ -293,7 +301,7 @@ private int HandleEndOfLogCondition( [MethodImpl(MethodImplOptions.AggressiveInlining)] private void PutRawTailOrdered(int termId, int termOffset) { - _metaDataBuffer.PutLongOrdered((int)tailAddressOffset, LogBufferDescriptor.PackTail(termId, termOffset)); + _metaDataBuffer.PutLongOrdered((int)_tailAddressOffset, LogBufferDescriptor.PackTail(termId, termOffset)); } } } \ No newline at end of file diff --git a/src/Adaptive.Aeron/LogBuffer/FragmentHandler.cs b/src/Adaptive.Aeron/LogBuffer/FragmentHandler.cs index a6028183..011ecfd5 100644 --- a/src/Adaptive.Aeron/LogBuffer/FragmentHandler.cs +++ b/src/Adaptive.Aeron/LogBuffer/FragmentHandler.cs @@ -14,7 +14,6 @@ * limitations under the License. */ -using Adaptive.Agrona; using Adaptive.Agrona.Concurrent; namespace Adaptive.Aeron.LogBuffer diff --git a/src/Adaptive.Aeron/LogBuffer/FrameDescriptor.cs b/src/Adaptive.Aeron/LogBuffer/FrameDescriptor.cs index 6c6da416..f242bd4e 100644 --- a/src/Adaptive.Aeron/LogBuffer/FrameDescriptor.cs +++ b/src/Adaptive.Aeron/LogBuffer/FrameDescriptor.cs @@ -26,7 +26,6 @@ namespace Adaptive.Aeron.LogBuffer /// All messages are logged in frames that have a minimum header layout as follows plus a reserve then /// the encoded message follows: /// - ///
     ///   0                   1                   2                   3
     ///   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     ///  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
@@ -42,10 +41,9 @@ namespace Adaptive.Aeron.LogBuffer
     ///  |                        Encoded Message                       ...
     /// ...                                                              |
     ///  +---------------------------------------------------------------+
-    /// 
/// /// The (B)egin and (E)nd flags are used for message fragmentation. R is for reserved bit. - /// Both are set for a message that does not span frames. + /// Both (B)egin and (E)nd flags are set for a message that does not span frames. ///
public class FrameDescriptor { @@ -100,24 +98,24 @@ public class FrameDescriptor public const int PADDING_FRAME_TYPE = HeaderFlyweight.HDR_TYPE_PAD; /// - /// Compute the maximum supported message length for a buffer of given capacity. + /// Compute the maximum supported message length for a buffer of given termLength. /// - /// of the log buffer. + /// of the log buffer. /// the maximum supported length for a message. [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static int ComputeMaxMessageLength(int capacity) + public static int ComputeMaxMessageLength(int termLength) { - return capacity/8; + return termLength / 8; } /// - /// Compute the maximum supported message length for a buffer of given capacity when the publication is exclusive. + /// Compute the maximum supported message length for a buffer of given termLength when the publication is exclusive. /// - /// of the log buffer. + /// of the log buffer. /// the maximum supported length for a message. - public static int ComputeExclusiveMaxMessageLength(int capacity) + public static int ComputeExclusiveMaxMessageLength(int termLength) { - return capacity / 4; + return termLength / 4; } /// @@ -198,6 +196,18 @@ public static int FrameVersion(IAtomicBuffer buffer, int termOffset) return buffer.GetByte(VersionOffset(termOffset)); } + /// + /// Get the flags field for a frame. + /// + /// containing the frame. + /// at which a frame begins. + /// the value of the frame type header. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static int FrameFlags(IAtomicBuffer buffer, int termOffset) + { + return buffer.GetByte(FlagsOffset(termOffset)); + } + /// /// Read the type of of the frame from header. /// diff --git a/src/Adaptive.Aeron/LogBuffer/HeaderWriter.cs b/src/Adaptive.Aeron/LogBuffer/HeaderWriter.cs index 3060354a..56646e47 100644 --- a/src/Adaptive.Aeron/LogBuffer/HeaderWriter.cs +++ b/src/Adaptive.Aeron/LogBuffer/HeaderWriter.cs @@ -15,7 +15,6 @@ */ using System.Runtime.CompilerServices; -using System.Threading; using Adaptive.Aeron.Protocol; using Adaptive.Agrona; using Adaptive.Agrona.Concurrent; diff --git a/src/Adaptive.Aeron/LogBuffer/IBlockHandler.cs b/src/Adaptive.Aeron/LogBuffer/IBlockHandler.cs deleted file mode 100644 index 3e83c0f2..00000000 --- a/src/Adaptive.Aeron/LogBuffer/IBlockHandler.cs +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2014 - 2017 Adaptive Financial Consulting Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0S - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -using Adaptive.Agrona; - -namespace Adaptive.Aeron.LogBuffer -{ - /// - /// Function for handling a block of message fragments scanned from the log. - /// - public interface IBlockHandler - { - /// - /// Callback for handling a block of messages being read from a log. - /// - /// containing the block of message fragments. - /// at which the block begins, including any frame headers. - /// of the block in bytes, including any frame headers that is aligned up to - /// . - /// of the stream containing this block of message fragments. - /// of the stream containing this block of message fragments. - void OnBlock(IDirectBuffer buffer, int offset, int length, int sessionId, int termId); - } -} \ No newline at end of file diff --git a/src/Adaptive.Aeron/LogBuffer/LogBufferDescriptor.cs b/src/Adaptive.Aeron/LogBuffer/LogBufferDescriptor.cs index 31c90568..6120f848 100644 --- a/src/Adaptive.Aeron/LogBuffer/LogBufferDescriptor.cs +++ b/src/Adaptive.Aeron/LogBuffer/LogBufferDescriptor.cs @@ -56,6 +56,11 @@ public class LogBufferDescriptor /// public const int TERM_MIN_LENGTH = 64 * 1024; + /// + /// Maximum buffer length for a log term + /// + public const int TERM_MAX_LENGTH = 1024 * 1024 * 1024; + static LogBufferDescriptor() { var offset = 0; @@ -66,8 +71,9 @@ static LogBufferDescriptor() offset = (BitUtil.CACHE_LINE_LENGTH * 2); LOG_TIME_OF_LAST_SM_OFFSET = offset; + LOG_END_OF_STREAM_POSITION_OFFSET = LOG_TIME_OF_LAST_SM_OFFSET + BitUtil.SIZE_OF_LONG; - offset += (BitUtil.CACHE_LINE_LENGTH*2); + offset += (BitUtil.CACHE_LINE_LENGTH * 2); LOG_CORRELATION_ID_OFFSET = offset; LOG_INITIAL_TERM_ID_OFFSET = LOG_CORRELATION_ID_OFFSET + BitUtil.SIZE_OF_LONG; LOG_DEFAULT_FRAME_HEADER_LENGTH_OFFSET = LOG_INITIAL_TERM_ID_OFFSET + BitUtil.SIZE_OF_INT; @@ -98,6 +104,11 @@ static LogBufferDescriptor() /// public static readonly int LOG_TIME_OF_LAST_SM_OFFSET; + /// + /// Offset within the log meta data where the position of the End of Stream is stored. + /// + public static readonly int LOG_END_OF_STREAM_POSITION_OFFSET; + /// /// Offset within the log meta data where the active term id is stored. /// @@ -126,7 +137,7 @@ static LogBufferDescriptor() /// /// Maximum length of a frame header /// - public static readonly int LOG_DEFAULT_FRAME_HEADER_MAX_LENGTH = BitUtil.CACHE_LINE_LENGTH*2; + public static readonly int LOG_DEFAULT_FRAME_HEADER_MAX_LENGTH = BitUtil.CACHE_LINE_LENGTH * 2; /// @@ -156,6 +167,9 @@ static LogBufferDescriptor() /// | Time of Last Status Message | /// | | /// +---------------------------------------------------------------+ + /// | End of Stream Position | + /// | | + /// +---------------------------------------------------------------+ /// | Cache Line Padding ... /// ... | /// +---------------------------------------------------------------+ @@ -188,15 +202,19 @@ public static void CheckTermLength(int termLength) { if (termLength < TERM_MIN_LENGTH) { - string s = $"Term length less than min length of {TERM_MIN_LENGTH:D}, length={termLength:D}"; - ThrowHelper.ThrowInvalidOperationException(s); - return; + ThrowHelper.ThrowInvalidOperationException( + $"Term length less than min length of {TERM_MIN_LENGTH:D}, length={termLength:D}"); + } + + if (termLength > TERM_MAX_LENGTH) + { + ThrowHelper.ThrowInvalidOperationException( + $"Term length more than max length of {TERM_MAX_LENGTH:D}: length = {termLength:D}"); } - if ((termLength & (FrameDescriptor.FRAME_ALIGNMENT - 1)) != 0) + if (!BitUtil.IsPowerOfTwo(termLength)) { - string s = $"Term length not a multiple of {FrameDescriptor.FRAME_ALIGNMENT:D}, length={termLength:D}"; - ThrowHelper.ThrowInvalidOperationException(s); + ThrowHelper.ThrowInvalidOperationException("Term length not a power of 2: length=" + termLength); } } @@ -289,6 +307,27 @@ public static void TimeOfLastStatusMessage(UnsafeBuffer logMetaDataBuffer, long logMetaDataBuffer.PutLongOrdered(LOG_TIME_OF_LAST_SM_OFFSET, timeInMillis); } + /// + /// Get the value of the end of stream position. + /// + /// containing the meta data. + /// the value of end of stream position + public static long EndOfStreamPosition(UnsafeBuffer logMetaDataBuffer) + { + return logMetaDataBuffer.GetLongVolatile(LOG_END_OF_STREAM_POSITION_OFFSET); + } + + /// + /// Set the value of the end of stream position. + /// + /// containing the meta data. + /// value of the end of stream position + public static void EndOfStreamPosition(UnsafeBuffer logMetaDataBuffer, long position) + { + logMetaDataBuffer.PutLongOrdered(LOG_END_OF_STREAM_POSITION_OFFSET, position); + } + + /// /// Get the value of the active partition index used by the producer of this log. Consumers may have a different active /// index if they are running behind. The read is done with volatile semantics. @@ -321,7 +360,7 @@ public static void ActivePartitionIndex(UnsafeBuffer logMetaDataBuffer, int acti { logMetaDataBuffer.PutInt(LOG_ACTIVE_PARTITION_INDEX_OFFSET, activePartitionIndex); } - + /// /// Rotate to the next partition in sequence for the term id. /// @@ -330,7 +369,7 @@ public static void ActivePartitionIndex(UnsafeBuffer logMetaDataBuffer, int acti [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int NextPartitionIndex(int currentIndex) { - return (currentIndex + 1)%PARTITION_COUNT; + return (currentIndex + 1) % PARTITION_COUNT; } /// @@ -342,7 +381,7 @@ public static int NextPartitionIndex(int currentIndex) [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int IndexByTerm(int initialTermId, int activeTermId) { - return (activeTermId - initialTermId)%PARTITION_COUNT; + return (activeTermId - initialTermId) % PARTITION_COUNT; } /// @@ -353,7 +392,7 @@ public static int IndexByTerm(int initialTermId, int activeTermId) [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int IndexByTermCount(long termCount) { - return (int)(termCount%PARTITION_COUNT); + return (int) (termCount % PARTITION_COUNT); } /// @@ -365,7 +404,7 @@ public static int IndexByTermCount(long termCount) [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int IndexByPosition(long position, int positionBitsToShift) { - return (int) (((long) ((ulong) position >> positionBitsToShift))%PARTITION_COUNT); + return (int) (((long) ((ulong) position >> positionBitsToShift)) % PARTITION_COUNT); } /// @@ -434,7 +473,7 @@ public static int ComputeTermOffsetFromPosition(long position, int positionBitsT [MethodImpl(MethodImplOptions.AggressiveInlining)] public static long ComputeLogLength(int termLength) { - return (termLength * PARTITION_COUNT) + LOG_META_DATA_LENGTH; + return ((long)termLength * PARTITION_COUNT) + LOG_META_DATA_LENGTH; } /// @@ -445,7 +484,7 @@ public static long ComputeLogLength(int termLength) [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int ComputeTermLength(long logLength) { - return (int)((logLength - LOG_META_DATA_LENGTH) / PARTITION_COUNT); + return (int) ((logLength - LOG_META_DATA_LENGTH) / PARTITION_COUNT); } /// @@ -460,12 +499,13 @@ public static void StoreDefaultFrameHeader(UnsafeBuffer logMetaDataBuffer, IDire if (defaultHeader.Capacity != DataHeaderFlyweight.HEADER_LENGTH) { ThrowHelper.ThrowArgumentException( - $"Default header of {defaultHeader.Capacity:D} not equal to {DataHeaderFlyweight.HEADER_LENGTH:D}"); + $"Default header capacity not equal to HEADER_LENGTH: length={defaultHeader.Capacity:D}"); return; } logMetaDataBuffer.PutInt(LOG_DEFAULT_FRAME_HEADER_LENGTH_OFFSET, DataHeaderFlyweight.HEADER_LENGTH); - logMetaDataBuffer.PutBytes(LOG_DEFAULT_FRAME_HEADER_OFFSET, defaultHeader, 0, DataHeaderFlyweight.HEADER_LENGTH); + logMetaDataBuffer.PutBytes(LOG_DEFAULT_FRAME_HEADER_OFFSET, defaultHeader, 0, + DataHeaderFlyweight.HEADER_LENGTH); } /// @@ -476,7 +516,8 @@ public static void StoreDefaultFrameHeader(UnsafeBuffer logMetaDataBuffer, IDire [MethodImpl(MethodImplOptions.AggressiveInlining)] public static UnsafeBuffer DefaultFrameHeader(UnsafeBuffer logMetaDataBuffer) { - return new UnsafeBuffer(logMetaDataBuffer, LOG_DEFAULT_FRAME_HEADER_OFFSET, DataHeaderFlyweight.HEADER_LENGTH); + return new UnsafeBuffer(logMetaDataBuffer, LOG_DEFAULT_FRAME_HEADER_OFFSET, + DataHeaderFlyweight.HEADER_LENGTH); } /// @@ -488,16 +529,16 @@ public static UnsafeBuffer DefaultFrameHeader(UnsafeBuffer logMetaDataBuffer) [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void ApplyDefaultHeader(UnsafeBuffer logMetaDataBuffer, UnsafeBuffer termBuffer, int termOffset) { - termBuffer.PutBytes(termOffset, logMetaDataBuffer, LOG_DEFAULT_FRAME_HEADER_OFFSET, DataHeaderFlyweight.HEADER_LENGTH); + termBuffer.PutBytes(termOffset, logMetaDataBuffer, LOG_DEFAULT_FRAME_HEADER_OFFSET, + DataHeaderFlyweight.HEADER_LENGTH); } /// /// Rotate the log and update the default headers for the new term. /// - /// for the partitions of the log. /// for the meta data. - /// current active index. - /// to be used in the default headers. + /// current active index. + /// to be used in the default headers. [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void RotateLog(UnsafeBuffer logMetaDataBuffer, int activePartitionIndex, int termId) { @@ -509,12 +550,13 @@ public static void RotateLog(UnsafeBuffer logMetaDataBuffer, int activePartition /// /// Set the initial value for the termId in the upper bits of the tail counter. /// - /// contain the tail counter. - /// to be set. + /// contain the tail counter. + /// to be intialized. + /// to be set. [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void InitialiseTailWithTermId(UnsafeBuffer logMetaData, int partitionIndex, int termId) { - logMetaData.PutLong(TERM_TAIL_COUNTERS_OFFSET + partitionIndex * BitUtil.SIZE_OF_LONG, (long)termId << 32); + logMetaData.PutLong(TERM_TAIL_COUNTERS_OFFSET + partitionIndex * BitUtil.SIZE_OF_LONG, PackTail(termId, 0)); } /// @@ -525,7 +567,7 @@ public static void InitialiseTailWithTermId(UnsafeBuffer logMetaData, int partit [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int TermId(long rawTail) { - return (int) ((long) ((ulong) rawTail >> 32)); + return (int) (rawTail >> 32); } /// @@ -533,7 +575,7 @@ public static int TermId(long rawTail) /// /// containing the termOffset. /// that the offset cannot exceed. - /// the termOffset value. + /// the termOffset value. [MethodImpl(MethodImplOptions.AggressiveInlining)] public static int TermOffset(long rawTail, long termLength) { @@ -542,15 +584,27 @@ public static int TermOffset(long rawTail, long termLength) return (int) Math.Min(tail, termLength); } + /// + /// The termOffset as a result of the append + /// + /// into which the termOffset value has been packed. + /// the termOffset after the append + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static int TermOffset(long result) + { + return (int) result; + } + /// /// Pack a termId and termOffset into a raw tail value. /// /// to be packed. /// to be packed. /// the packed value. + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static long PackTail(int termId, int termOffset) { - return (((long)termId) << 32) + termOffset; + return ((long) termId << 32) | (termOffset & 0xFFFFFFFFL); } /// @@ -564,6 +618,18 @@ public static void RawTail(UnsafeBuffer logMetaDataBuffer, int partitionIndex, l logMetaDataBuffer.PutLong(TERM_TAIL_COUNTERS_OFFSET + (BitUtil.SIZE_OF_LONG * partitionIndex), rawTail); } + /// + /// Get the raw value of the tail for the given partition. + /// + /// containing the tail counters. + /// for the tail counter. + /// the raw value of the tail for the current active partition. + public static long RawTail(UnsafeBuffer logMetaDataBuffer, int partitionIndex) + { + return logMetaDataBuffer.GetLong(TERM_TAIL_COUNTERS_OFFSET + (BitUtil.SIZE_OF_LONG * partitionIndex)); + } + + /// /// Set the raw value of the tail for the given partition. /// @@ -572,9 +638,10 @@ public static void RawTail(UnsafeBuffer logMetaDataBuffer, int partitionIndex, l /// to be stored public static void RawTailVolatile(UnsafeBuffer logMetaDataBuffer, int partitionIndex, long rawTail) { - logMetaDataBuffer.PutLongVolatile(TERM_TAIL_COUNTERS_OFFSET + (BitUtil.SIZE_OF_LONG * partitionIndex), rawTail); + logMetaDataBuffer.PutLongVolatile(TERM_TAIL_COUNTERS_OFFSET + (BitUtil.SIZE_OF_LONG * partitionIndex), + rawTail); } - + /// /// Get the raw value of the tail for the given partition. /// @@ -584,7 +651,7 @@ public static void RawTailVolatile(UnsafeBuffer logMetaDataBuffer, int partition [MethodImpl(MethodImplOptions.AggressiveInlining)] public static long RawTailVolatile(UnsafeBuffer logMetaDataBuffer, int partitionIndex) { - return logMetaDataBuffer.GetLongVolatile(TERM_TAIL_COUNTERS_OFFSET + BitUtil.SIZE_OF_LONG*partitionIndex); + return logMetaDataBuffer.GetLongVolatile(TERM_TAIL_COUNTERS_OFFSET + BitUtil.SIZE_OF_LONG * partitionIndex); } /// diff --git a/src/Adaptive.Aeron/LogBuffer/TermAppender.cs b/src/Adaptive.Aeron/LogBuffer/TermAppender.cs index 2c5dabf1..78d04821 100644 --- a/src/Adaptive.Aeron/LogBuffer/TermAppender.cs +++ b/src/Adaptive.Aeron/LogBuffer/TermAppender.cs @@ -47,7 +47,7 @@ public class TermAppender /// public const int FAILED = -2; - private readonly long tailAddressOffset; + private readonly long _tailAddressOffset; private readonly UnsafeBuffer _termBuffer; private readonly UnsafeBuffer _metaDataBuffer; @@ -63,7 +63,7 @@ public TermAppender(UnsafeBuffer termBuffer, UnsafeBuffer metaDataBuffer, int pa metaDataBuffer.BoundsCheck(tailCounterOffset, BitUtil.SIZE_OF_LONG); _termBuffer = termBuffer; _metaDataBuffer = metaDataBuffer; - tailAddressOffset = tailCounterOffset; // TODO divergence + _tailAddressOffset = tailCounterOffset; // TODO divergence } /// @@ -73,17 +73,7 @@ public TermAppender(UnsafeBuffer termBuffer, UnsafeBuffer metaDataBuffer, int pa [MethodImpl(MethodImplOptions.AggressiveInlining)] public long RawTailVolatile() { - return _metaDataBuffer.GetLongVolatile((int)tailAddressOffset); - } - - /// - /// Set the value for the tail counter. - /// - /// for the tail counter - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public void TailTermId(int termId) - { - _metaDataBuffer.PutLong((int)tailAddressOffset, ((long) termId) << 32); + return _metaDataBuffer.GetLongVolatile((int)_tailAddressOffset); } /// @@ -108,12 +98,12 @@ public long Claim(HeaderWriter header, int length, BufferClaim bufferClaim) long resultingOffset = termOffset + alignedLength; if (resultingOffset > termLength) { - resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, TermId(rawTail)); + resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, LogBufferDescriptor.TermId(rawTail)); } else { int offset = (int) termOffset; - header.Write(termBuffer, offset, frameLength, TermId(rawTail)); + header.Write(termBuffer, offset, frameLength, LogBufferDescriptor.TermId(rawTail)); bufferClaim.Wrap(termBuffer, offset, frameLength); } @@ -148,12 +138,12 @@ public long AppendUnfragmentedMessage(HeaderWriter header, UnsafeBuffer srcBuffe long resultingOffset = termOffset + alignedLength; if (resultingOffset > termLength) { - resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, TermId(rawTail)); + resultingOffset = HandleEndOfLogCondition(termBuffer, termOffset, header, termLength, LogBufferDescriptor.TermId(rawTail)); } else { int offset = (int) termOffset; - header.Write(termBuffer, offset, frameLength, TermId(rawTail)); + header.Write(termBuffer, offset, frameLength, LogBufferDescriptor.TermId(rawTail)); termBuffer.PutBytes(offset + DataHeaderFlyweight.HEADER_LENGTH, srcBuffer, srcOffset, length); if (null != reservedValueSupplier) @@ -193,7 +183,7 @@ public long AppendFragmentedMessage(HeaderWriter header, UnsafeBuffer srcBuffer, int requiredLength = (numMaxPayloads*(maxPayloadLength + DataHeaderFlyweight.HEADER_LENGTH)) + lastFrameLength; long rawTail = GetAndAddRawTail(requiredLength); - int termId = TermId(rawTail); + int termId = LogBufferDescriptor.TermId(rawTail); long termOffset = rawTail & 0xFFFFFFFFL; UnsafeBuffer termBuffer = _termBuffer; @@ -242,42 +232,7 @@ public long AppendFragmentedMessage(HeaderWriter header, UnsafeBuffer srcBuffer, return resultingOffset; } - - - /// - /// Pack the values for termOffset and termId into a long for returning on the stack. - /// - /// value to be packed. - /// value to be packed. - /// a long with both ints packed into it. - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static long Pack(int termId, int termOffset) - { - return ((long) termId << 32) | (termOffset & 0xFFFFFFFFL); - } - - /// - /// The termOffset as a result of the append - /// - /// into which the termOffset value has been packed. - /// the termOffset after the append - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static int TermOffset(long result) - { - return (int) result; - } - - /// - /// The termId in which the append operation took place. - /// - /// into which the termId value has been packed. - /// the termId in which the append operation took place. - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static int TermId(long result) - { - return (int)((long)((ulong)result >> 32)); - } - + [MethodImpl(MethodImplOptions.AggressiveInlining)] private long HandleEndOfLogCondition(UnsafeBuffer termBuffer, long termOffset, HeaderWriter header, int termLength, int termId) @@ -298,13 +253,13 @@ private long HandleEndOfLogCondition(UnsafeBuffer termBuffer, long termOffset, H } } - return Pack(termId, resultingOffset); + return LogBufferDescriptor.PackTail(termId, resultingOffset); } [MethodImpl(MethodImplOptions.AggressiveInlining)] private long GetAndAddRawTail(int alignedLength) { - return _metaDataBuffer.GetAndAddLong((int)tailAddressOffset, alignedLength); + return _metaDataBuffer.GetAndAddLong((int)_tailAddressOffset, alignedLength); } } } \ No newline at end of file diff --git a/src/Adaptive.Aeron/LogBuffer/TermReader.cs b/src/Adaptive.Aeron/LogBuffer/TermReader.cs index 88b6b95f..c0d1ab2a 100644 --- a/src/Adaptive.Aeron/LogBuffer/TermReader.cs +++ b/src/Adaptive.Aeron/LogBuffer/TermReader.cs @@ -25,9 +25,8 @@ namespace Adaptive.Aeron.LogBuffer { /// /// A term buffer reader. - /// + /// /// Note: Reading from the term is thread safe, but each thread needs its own instance of this class. - /// /// public class TermReader { diff --git a/src/Adaptive.Aeron/Protocol/DataHeaderFlyweight.cs b/src/Adaptive.Aeron/Protocol/DataHeaderFlyweight.cs index cfa7d5c1..529e22c5 100644 --- a/src/Adaptive.Aeron/Protocol/DataHeaderFlyweight.cs +++ b/src/Adaptive.Aeron/Protocol/DataHeaderFlyweight.cs @@ -16,6 +16,8 @@ using System; using System.Text; +using Adaptive.Aeron.LogBuffer; +using Adaptive.Agrona; using Adaptive.Agrona.Concurrent; namespace Adaptive.Aeron.Protocol @@ -47,6 +49,16 @@ public class DataHeaderFlyweight : HeaderFlyweight /// public static readonly short BEGIN_AND_END_FLAGS = BEGIN_FLAG | END_FLAG; + /// + /// End of Stream Flag + /// + public const short EOS_FLAG = 0x20; + + /// + /// Begin, End, and End of Stream Flags + /// + public static readonly short BEGIN_END_AND_EOS_FLAGS = BEGIN_FLAG | END_FLAG | EOS_FLAG; + public const long DEFAULT_RESERVE_VALUE = 0L; public const int TERM_OFFSET_FIELD_OFFSET = 8; @@ -187,7 +199,7 @@ public int DataOffset() /// byte array containing the header public static UnsafeBuffer CreateDefaultHeader(int sessionId, int streamId, int termId) { - var buffer = new UnsafeBuffer(new byte[HEADER_LENGTH]); + var buffer = new UnsafeBuffer(BufferUtil.AllocateDirectAligned(HEADER_LENGTH, FrameDescriptor.FRAME_ALIGNMENT)); buffer.PutByte(VERSION_FIELD_OFFSET, CURRENT_VERSION); buffer.PutByte(FLAGS_FIELD_OFFSET, (byte)BEGIN_AND_END_FLAGS); diff --git a/src/Adaptive.Aeron/Protocol/HeaderFlyweight.cs b/src/Adaptive.Aeron/Protocol/HeaderFlyweight.cs index 586ef767..8a8bd058 100644 --- a/src/Adaptive.Aeron/Protocol/HeaderFlyweight.cs +++ b/src/Adaptive.Aeron/Protocol/HeaderFlyweight.cs @@ -38,39 +38,48 @@ public class HeaderFlyweight : UnsafeBuffer public static readonly byte[] EMPTY_BUFFER = new byte[0]; /// - /// header type PAD + /// header type PAD + /// public const int HDR_TYPE_PAD = 0x00; /// - /// header type DATA + /// header type DATA + /// public const int HDR_TYPE_DATA = 0x01; /// - /// header type NAK + /// header type NAK + /// public const int HDR_TYPE_NAK = 0x02; /// - /// header type SM + /// header type SM + /// public const int HDR_TYPE_SM = 0x03; /// - /// header type ERR + /// header type ERR + /// public const int HDR_TYPE_ERR = 0x04; /// - /// header type SETUP + /// header type SETUP + /// public const int HDR_TYPE_SETUP = 0x05; /// - /// header type RTT Measurement + /// header type RTT Measurement + /// public const int HDR_TYPE_RTTM = 0x06; /// - /// header type EXT + /// header type EXT + /// public const int HDR_TYPE_EXT = 0xFFFF; /// - /// default version + /// default version + /// public const byte CURRENT_VERSION = 0x0; public const int FRAME_LENGTH_FIELD_OFFSET = 0; @@ -79,11 +88,11 @@ public class HeaderFlyweight : UnsafeBuffer public const int TYPE_FIELD_OFFSET = 6; public static readonly int HEADER_LENGTH = TYPE_FIELD_OFFSET + BitUtil.SIZE_OF_SHORT; - public HeaderFlyweight() : base(EMPTY_BUFFER) + public HeaderFlyweight() { } - public HeaderFlyweight(IDirectBuffer buffer) : base(buffer) + public HeaderFlyweight(UnsafeBuffer buffer) : base(buffer) { } diff --git a/src/Adaptive.Aeron/Protocol/RttMeasurementFlyweight.cs b/src/Adaptive.Aeron/Protocol/RttMeasurementFlyweight.cs index 1f4569df..ea6888a9 100644 --- a/src/Adaptive.Aeron/Protocol/RttMeasurementFlyweight.cs +++ b/src/Adaptive.Aeron/Protocol/RttMeasurementFlyweight.cs @@ -141,6 +141,5 @@ public override string ToString() return sb.ToString(); } - -} + } } \ No newline at end of file diff --git a/src/Adaptive.Aeron/Publication.cs b/src/Adaptive.Aeron/Publication.cs index 3ab0b819..06c362e0 100644 --- a/src/Adaptive.Aeron/Publication.cs +++ b/src/Adaptive.Aeron/Publication.cs @@ -26,12 +26,12 @@ namespace Adaptive.Aeron { /// - /// Aeron Publisher API for sending messages to subscribers of a given channel and streamId pair. Publishers + /// Aeron publishing API for sending messages to subscribers of a given channel and streamId pair. s /// are created via the method, and messages are sent via one of the - /// methods, or a and + /// methods, or a and /// method combination. /// - /// The APIs used to send are all non-blocking. + /// The APIs used to send are all non-blocking and thread safe. /// /// Note: Publication instances are threadsafe and can be shared between publishing threads. /// @@ -51,6 +51,7 @@ public class Publication : IDisposable /// /// The offer failed due to an administration action and should be retried. + /// The action is an operation such as log rotation which is likely to have succeeded by the next retry attempt. /// public const long ADMIN_ACTION = -3; @@ -59,6 +60,18 @@ public class Publication : IDisposable /// public const long CLOSED = -4; + /// + /// The offer failed due to reaching the maximum position of the stream given term buffer length times the total + /// possible number of terms. + /// + /// If this happen then the publication should be closed and a new one added. To make it less likely to happen then + /// increase the term buffer length. + /// + /// + public const long MAX_POSITION_EXCEEDED = -5; + + private readonly long _originalRegistrationId; + private readonly long _maxPossiblePosition; private int _refCount; private readonly int _positionBitsToShift; private volatile bool _isClosed; @@ -70,7 +83,15 @@ public class Publication : IDisposable private readonly LogBuffers _logBuffers; private readonly ClientConductor _conductor; - internal Publication(ClientConductor clientConductor, string channel, int streamId, int sessionId, IReadablePosition positionLimit, LogBuffers logBuffers, long registrationId) + internal Publication( + ClientConductor clientConductor, + string channel, + int streamId, + int sessionId, + IReadablePosition positionLimit, + LogBuffers logBuffers, + long originalRegistrationId, + long registrationId) { var buffers = logBuffers.TermBuffers(); var logMetaDataBuffer = logBuffers.MetaDataBuffer(); @@ -83,12 +104,14 @@ internal Publication(ClientConductor clientConductor, string channel, int stream var termLength = logBuffers.TermLength(); MaxPayloadLength = LogBufferDescriptor.MtuLength(logMetaDataBuffer) - DataHeaderFlyweight.HEADER_LENGTH; MaxMessageLength = FrameDescriptor.ComputeMaxMessageLength(termLength); + _maxPossiblePosition = termLength * (1L << 31); _conductor = clientConductor; Channel = channel; StreamId = streamId; SessionId = sessionId; InitialTermId = LogBufferDescriptor.InitialTermId(logMetaDataBuffer); _logMetaDataBuffer = logMetaDataBuffer; + _originalRegistrationId = originalRegistrationId; RegistrationId = registrationId; _positionLimit = positionLimit; _logBuffers = logBuffers; @@ -101,21 +124,31 @@ internal Publication(ClientConductor clientConductor, string channel, int stream /// /// the length in bytes for each term partition in the log buffer. public int TermBufferLength => _logBuffers.TermLength(); + + /// + /// The maximum possible position this stream can reach due to its term buffer length. + /// + /// Maximum possible position is term-length times 2^31 in bytes. + /// + /// + /// the maximum possible position this stream can reach due to it term buffer length. + public long MaxPossiblePosition() + { + return _maxPossiblePosition; + } /// /// Media address for delivery to the channel. /// /// Media address for delivery to the channel. public string Channel { get; } - - + /// /// Stream identity for scoping within the channel media address. /// /// Stream identity for scoping within the channel media address. public int StreamId { get; } - - + /// /// Session under which messages are published. Identifies this Publication instance. /// @@ -146,7 +179,29 @@ internal Publication(ClientConductor clientConductor, string channel, int stream public int MaxPayloadLength { get; } /// - /// Return the registration id used to register this Publication with the media driver. + /// Get the original registration used to register this Publication with the media driver by the first publisher. + /// + /// original registration id + public long OriginalRegistrationId() + { + return _originalRegistrationId; + } + + /// + /// Is this Publication the original instance added to the driver? If not then it was added after another client + /// has already added the publication. + /// + /// true if this instance is the first added otherwise false. + public bool IsOriginal() + { + return _originalRegistrationId == RegistrationId; + } + + /// + /// Get the registration id used to register this Publication with the media driver. + /// + /// If this value is different from the then another client has previously added + /// this Publication. In the case of an exclusive publication this should never happen. /// /// registration id public long RegistrationId { get; } @@ -243,7 +298,7 @@ public long PositionLimit /// /// containing message. /// The new stream position, otherwise , , - /// or . + /// , or . [MethodImpl(MethodImplOptions.AggressiveInlining)] public long Offer(UnsafeBuffer buffer) { @@ -256,8 +311,9 @@ public long Offer(UnsafeBuffer buffer) /// containing message. /// offset in the buffer at which the encoded message begins. /// in bytes of the encoded message. + /// /// for the frame. /// The new stream position, otherwise a negative error value , , - /// or . + /// , or . [MethodImpl(MethodImplOptions.AggressiveInlining)] public long Offer( UnsafeBuffer buffer, @@ -290,13 +346,9 @@ public long Offer( newPosition = NewPosition(partitionIndex, (int) termOffset, position, result); } - else if (_conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer))) - { - newPosition = BACK_PRESSURED; - } else { - newPosition = NOT_CONNECTED; + newPosition = BackPressureStatus(position, length); } } @@ -333,7 +385,7 @@ public long Offer( /// of the range to claim, in bytes.. /// to be populated if the claim succeeds. /// The new stream position, otherwise , , - /// or . + /// , or . /// if the length is greater than max payload length within an MTU. /// /// @@ -357,13 +409,9 @@ public long TryClaim(int length, BufferClaim bufferClaim) var result = termAppender.Claim(_headerWriter, length, bufferClaim); newPosition = NewPosition(partitionIndex, (int) termOffset, position, result); } - else if (_conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer))) - { - newPosition = BACK_PRESSURED; - } else { - newPosition = NOT_CONNECTED; + newPosition = BackPressureStatus(position, length); } } @@ -415,22 +463,43 @@ internal void IncRef() private long NewPosition(int index, int currentTail, long position, long result) { var newPosition = ADMIN_ACTION; - var termOffset = TermAppender.TermOffset(result); + var termOffset = LogBufferDescriptor.TermOffset(result); if (termOffset > 0) { newPosition = (position - currentTail) + termOffset; } + else if ((position + currentTail) > _maxPossiblePosition) + { + newPosition = MAX_POSITION_EXCEEDED; + } else if (termOffset == TermAppender.TRIPPED) { var nextIndex = LogBufferDescriptor.NextPartitionIndex(index); - - _termAppenders[nextIndex].TailTermId(TermAppender.TermId(result) + 1); + + LogBufferDescriptor.InitialiseTailWithTermId(_logMetaDataBuffer, nextIndex, LogBufferDescriptor.TermId(result) + 1); LogBufferDescriptor.ActivePartitionIndexOrdered(_logMetaDataBuffer, nextIndex); } return newPosition; } + [MethodImpl(MethodImplOptions.AggressiveInlining)] + private long BackPressureStatus(long currentPosition, int messageLength) + { + long status = NOT_CONNECTED; + + if ((currentPosition + messageLength) >= _maxPossiblePosition) + { + status = MAX_POSITION_EXCEEDED; + } + else if (_conductor.IsPublicationConnected(LogBufferDescriptor.TimeOfLastStatusMessage(_logMetaDataBuffer))) + { + status = BACK_PRESSURED; + } + + return status; + } + [MethodImpl(MethodImplOptions.AggressiveInlining)] private void CheckForMaxPayloadLength(int length) { diff --git a/src/Adaptive.Aeron/Subscription.cs b/src/Adaptive.Aeron/Subscription.cs index dcd69a2d..83f6a465 100644 --- a/src/Adaptive.Aeron/Subscription.cs +++ b/src/Adaptive.Aeron/Subscription.cs @@ -139,6 +139,24 @@ public UnavailableImageHandler UnavailableImageHandler() return _fields.unavailableImageHandler; } + + public int PollEndOfStreams(EndOfStreamHandler endOfStreamHandler) + { + int numberEndOfStreams = 0; + + foreach (var image in Images) + { + if (image.IsEndOfStream()) + { + numberEndOfStreams++; + endOfStreamHandler(image); + } + } + + return numberEndOfStreams; + } + + /// /// Poll the s under the subscription for available message fragments. /// @@ -194,8 +212,8 @@ public int Poll(FragmentHandler fragmentHandler, int fragmentLimit) /// callback for handling each message fragment as it is read. /// number of message fragments to limit for the poll operation across multiple s. /// the number of fragments received - /// - public int ControlledPoll(IControlledFragmentHandler fragmentHandler, int fragmentLimit) + /// + public int ControlledPoll(ControlledFragmentHandler fragmentHandler, int fragmentLimit) { var images = _fields.images; var length = images.Length; @@ -230,7 +248,7 @@ public int ControlledPoll(IControlledFragmentHandler fragmentHandler, int fragme /// to receive a block of fragments from each . /// for each polled. /// the number of bytes consumed. - public long BlockPoll(IBlockHandler blockHandler, int blockLengthLimit) + public long BlockPoll(BlockHandler blockHandler, int blockLengthLimit) { long bytesConsumed = 0; foreach (var image in _fields.images) @@ -299,6 +317,16 @@ public Image ImageBySessionId(int sessionId) return result; } + /// + /// Get the image at the given index from the images array. + /// + /// in the array + /// image at given index + public Image ImageAtIndex(int index) + { + return Images[index]; + } + /// /// Get a of active s that match this subscription. /// @@ -308,25 +336,15 @@ public Image ImageBySessionId(int sessionId) /// /// Iterate over the s for this subscription. /// - /// to handle each . - public void ForEachImage(Action imageConsumer) + /// to handle each . + public void ForEachImage(Action consumer) { foreach (var image in _fields.images) { - imageConsumer(image); + consumer(image); } } - /// - /// Get the image at the given index from the images array. - /// - /// in the array - /// image at given index - public Image GetImage(int index) - { - return Images[index]; - } - /// /// Close the Subscription so that associated s can be released. /// @@ -336,7 +354,7 @@ public Image GetImage(int index) #if DEBUG public virtual void Dispose() #else - public void Dispose() + public void Dispose() #endif { _fields.clientConductor.ClientLock().Lock() ; diff --git a/src/Adaptive.Agrona.Tests/Concurrent/CountersManagerTest.cs b/src/Adaptive.Agrona.Tests/Concurrent/CountersManagerTest.cs index a89fccbd..91a69c1b 100644 --- a/src/Adaptive.Agrona.Tests/Concurrent/CountersManagerTest.cs +++ b/src/Adaptive.Agrona.Tests/Concurrent/CountersManagerTest.cs @@ -15,6 +15,7 @@ */ using System; +using System.Text; using Adaptive.Agrona.Collections; using Adaptive.Agrona.Concurrent; using Adaptive.Agrona.Concurrent.Status; @@ -41,15 +42,55 @@ public void Setup() _consumer = A.Fake>(); _metaData = A.Fake(); - _labelsBuffer = new UnsafeBuffer(new byte[NumberOfCounters*CountersReader.METADATA_LENGTH]); - _counterBuffer = new UnsafeBuffer(new byte[NumberOfCounters*CountersReader.COUNTER_LENGTH]); + _labelsBuffer = new UnsafeBuffer(new byte[NumberOfCounters * CountersReader.METADATA_LENGTH]); + _counterBuffer = new UnsafeBuffer(new byte[NumberOfCounters * CountersReader.COUNTER_LENGTH]); - _manager = new CountersManager(_labelsBuffer, _counterBuffer); - _otherManager = new CountersManager(_labelsBuffer, _counterBuffer); + _manager = new CountersManager(_labelsBuffer, _counterBuffer, Encoding.ASCII); + _otherManager = new CountersManager(_labelsBuffer, _counterBuffer, Encoding.ASCII); } [Test] - public void ManagerShouldStoreLabels() + public void ShouldTruncateLongLabel() + { + int labelLength = CountersReader.MAX_LABEL_LENGTH + 10; + var sb = new StringBuilder(labelLength); + + for (int i = 0; i < labelLength; i++) + { + sb.Append('x'); + } + + var label = sb.ToString(); + int counterId = _manager.Allocate(label); + + _otherManager.ForEach(_consumer); + A.CallTo(() => _consumer(counterId, label.Substring(0, CountersReader.MAX_LABEL_LENGTH))).MustHaveHappened(); + } + + [Test] + public void ShouldCopeWithExceptionKeyFunc() + { + var ex = new Exception(); + + try + { + _manager.Allocate("label", CountersManager.DEFAULT_TYPE_ID, _ => { throw ex; }); + } + catch (Exception caught) + { + Assert.AreEqual(ex, caught); + + var counter = _manager.NewCounter("new label"); + Assert.AreEqual(0, counter.Id); + + return; + } + + Assert.Fail("Should have thrown exception."); + } + + [Test] + public void ShouldStoreLabels() { var counterId = _manager.Allocate("abc"); _otherManager.ForEach(_consumer); @@ -58,7 +99,7 @@ public void ManagerShouldStoreLabels() } [Test] - public void ManagerShouldStoreMultipleLabels() + public void ShouldStoreMultipleLabels() { var abc = _manager.Allocate("abc"); var def = _manager.Allocate("def"); @@ -92,8 +133,8 @@ public void ShouldFreeAndReuseCounters() } [Test] - [ExpectedException(typeof(ArgumentException))] - public void ManagerShouldNotOverAllocateCounters() + [ExpectedException(typeof(InvalidOperationException))] + public void ShouldNotOverAllocateCounters() { _manager.Allocate("abc"); _manager.Allocate("def"); @@ -104,7 +145,7 @@ public void ManagerShouldNotOverAllocateCounters() [Test] - public void AllocatedCountersCanBeMapped() + public void ShouldMapAllocatedCounters() { _manager.Allocate("def"); @@ -138,6 +179,34 @@ public void ShouldStoreMetaData() A.CallTo(() => _metaData(A._, A._, A._, A._)).MustHaveHappened(Repeated.Exactly.Twice); } + [Test] + public void ShouldStoreRawData() + { + const int typeIdOne = 333; + const long keyOne = 777L; + + var keyOneBuffer = new UnsafeBuffer(new byte[8]); + keyOneBuffer.PutLong(0, keyOne); + var labelOneBuffer = new UnsafeBuffer(Encoding.ASCII.GetBytes("Test Label One")); + + const int typeIdTwo = 222; + const long keyTwo = 444; + var keyTwoBuffer = new UnsafeBuffer(new byte[8]); + keyTwoBuffer.PutLong(0, keyTwo); + var labelTwoBuffer = new UnsafeBuffer(Encoding.ASCII.GetBytes("Test Label Two")); + + int counterIdOne = _manager.Allocate( + typeIdOne, keyOneBuffer, 0, keyOneBuffer.Capacity, labelOneBuffer, 0, labelOneBuffer.Capacity); + + int counterIdTwo = _manager.Allocate( + typeIdTwo, keyTwoBuffer, 0, keyTwoBuffer.Capacity, labelTwoBuffer, 0, labelTwoBuffer.Capacity); + + _manager.ForEach(_metaData); + + A.CallTo(() => _metaData(counterIdOne, typeIdOne, A.That.Matches(d => d.GetLong(0) == keyOne), "Test Label One")).MustHaveHappened() + .Then(A.CallTo(() => _metaData(counterIdTwo, typeIdTwo, A.That.Matches(d => d.GetLong(0) == keyTwo), "Test Label Two")).MustHaveHappened()); + } + [Test] public void ShouldStoreAndLoadValue() { diff --git a/src/Adaptive.Agrona/Adaptive.Agrona.csproj b/src/Adaptive.Agrona/Adaptive.Agrona.csproj index 50d30752..c4bc5133 100644 --- a/src/Adaptive.Agrona/Adaptive.Agrona.csproj +++ b/src/Adaptive.Agrona/Adaptive.Agrona.csproj @@ -73,6 +73,7 @@ + diff --git a/src/Adaptive.Agrona/Collections/IntObjConsumer.cs b/src/Adaptive.Agrona/Collections/IntObjConsumer.cs index 74d0ecd2..f56e7a7e 100644 --- a/src/Adaptive.Agrona/Collections/IntObjConsumer.cs +++ b/src/Adaptive.Agrona/Collections/IntObjConsumer.cs @@ -19,6 +19,6 @@ namespace Adaptive.Agrona.Collections /// /// This is an (int, Object) primitive specialisation of a BiConsumer. /// - public delegate void IntObjConsumer(int i, T v); + public delegate void IntObjConsumer(int i, T v); } \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/AgentInvoker.cs b/src/Adaptive.Agrona/Concurrent/AgentInvoker.cs index d3887ef2..53f00f53 100644 --- a/src/Adaptive.Agrona/Concurrent/AgentInvoker.cs +++ b/src/Adaptive.Agrona/Concurrent/AgentInvoker.cs @@ -15,12 +15,31 @@ namespace Adaptive.Agrona.Concurrent /// public class AgentInvoker : IDisposable { - private bool _closed = false; + /// + /// Has the been closed? + /// + public bool IsClosed { get; private set; } = false; + + /// + /// Has the been started? + /// + public bool IsStarted { get; private set; } = false; + + /// + /// Has the been running? + /// + public bool IsRunning { get; private set; } = false; private readonly AtomicCounter _errorCounter; private readonly ErrorHandler _errorHandler; private readonly IAgent _agent; + /// + /// Create an agent and initialise it. + /// + /// to be called if an is encountered + /// to be incremented each time an exception is encountered. This may be null. + /// to be run in this thread. public AgentInvoker( ErrorHandler errorHandler, AtomicCounter errorCounter, @@ -44,11 +63,46 @@ public IAgent Agent() return _agent; } + /// + /// Mark the invoker as started and call the method. + /// + /// Startup logic will only be performed once. + /// + /// + public void Start() + { + try + { + if (!IsStarted) + { + IsStarted = true; + _agent.OnStart(); + IsRunning = true; + } + } + catch (Exception exception) + { + HandleError(exception); + Dispose(); + } + } + + /// + /// Invoke the method and return the work count. + /// + /// If an error occurs then the will be called on the errorCounter if not null + /// and the will be passed to the method. If the error + /// is an then will be called after the error handler. + /// + /// If not successfully started or after closed then this method will return without invoking the . + /// + /// + /// the work count for the method. public int Invoke() { int workCount = 0; - if (!_closed) + if (IsRunning) { try { @@ -56,7 +110,12 @@ public int Invoke() } catch (ThreadInterruptedException) { - + Dispose(); + } + catch (AgentTerminationException ex) + { + HandleError(ex); + Dispose(); } catch (Exception exception) { @@ -74,11 +133,30 @@ public int Invoke() public void Dispose() { - if (!_closed) + try + { + if (!IsClosed) + { + IsRunning = false; + IsClosed = true; + _agent.OnClose(); + } + } + catch (Exception exception) + { + HandleError(exception); + } + + } + + private void HandleError(Exception exception) + { + if (null != _errorCounter) { - _closed = true; - _agent.OnClose(); + _errorCounter.Increment(); } + + _errorHandler(exception); } } } \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/AgentRunner.cs b/src/Adaptive.Agrona/Concurrent/AgentRunner.cs index 753ed2ca..536daaa4 100644 --- a/src/Adaptive.Agrona/Concurrent/AgentRunner.cs +++ b/src/Adaptive.Agrona/Concurrent/AgentRunner.cs @@ -31,10 +31,16 @@ public class AgentRunner : IDisposable /// /// Indicates that the runner is being closed. /// - public static readonly Thread Tombstone = null; + private static readonly Thread TOMBSTONE = null; - private volatile bool _running = true; - private volatile bool _done = false; + private static readonly int RETRY_CLOSE_TIMEOUT_MS = 3000; + + private volatile bool _isRunning = true; + + /// + /// Has the been closed? + /// + public bool IsClosed { get; private set; } private readonly AtomicCounter _errorCounter; private readonly ErrorHandler _errorHandler; @@ -122,30 +128,37 @@ public void Run() var idleStrategy = _idleStrategy; var agent = _agent; - while (_running) + + try { - try - { - idleStrategy.Idle(agent.DoWork()); - } - catch (ThreadInterruptedException) + agent.OnStart(); + } + catch (Exception ex) + { + HandleError(ex); + _isRunning = false; + } + + while (_isRunning) + { + if (DoDutyCycle(idleStrategy, agent)) { break; } - catch (Exception ex) - { - if (_running) - { - _errorCounter?.Increment(); + } - _errorHandler(ex); - } - } + try + { + agent.OnClose(); + } + catch (Exception ex) + { + HandleError(ex); } } finally { - _done = true; + IsClosed = true; } } @@ -158,36 +171,63 @@ public void Run() /// public void Dispose() { - _running = false; + _isRunning = false; - var thread = _thread.GetAndSet(Tombstone); - if (Tombstone != thread) + var thread = _thread.GetAndSet(TOMBSTONE); + if (TOMBSTONE != thread && null != thread) { - if (null != thread) + while (true) { - while (true) + try { - try - { - thread.Join(1000); - - if (!thread.IsAlive || _done) - { - break; - } + thread.Join(RETRY_CLOSE_TIMEOUT_MS); - Console.Error.WriteLine($"Timeout waitinf for {_agent.RoleName()}. Retrying..."); - - thread.Interrupt(); - } - catch (ThreadInterruptedException) + if (!thread.IsAlive || IsClosed) { return; } + + Console.Error.WriteLine($"Timeout waiting for agent '{_agent.RoleName()}' to close, Retrying..."); + + thread.Interrupt(); + } + catch (ThreadInterruptedException) + { + return; } } + } + } + + private bool DoDutyCycle(IIdleStrategy idleStrategy, IAgent agent) + { + try + { + idleStrategy.Idle(agent.DoWork()); + } + catch (ThreadInterruptedException) + { + return true; + } + catch (AgentTerminationException ex) + { + HandleError(ex); + return true; + } + catch (Exception ex) + { + HandleError(ex); + } + + return false; + } - _agent.OnClose(); + private void HandleError(Exception exception) + { + if (_isRunning) + { + _errorCounter?.Increment(); + _errorHandler(exception); } } } diff --git a/src/Adaptive.Agrona/Concurrent/AgentTerminationException.cs b/src/Adaptive.Agrona/Concurrent/AgentTerminationException.cs new file mode 100644 index 00000000..95f16f39 --- /dev/null +++ b/src/Adaptive.Agrona/Concurrent/AgentTerminationException.cs @@ -0,0 +1,8 @@ +using System; + +namespace Adaptive.Agrona.Concurrent +{ + public class AgentTerminationException : Exception + { + } +} \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/CompositeAgent.cs b/src/Adaptive.Agrona/Concurrent/CompositeAgent.cs index bc92b794..0302e29f 100644 --- a/src/Adaptive.Agrona/Concurrent/CompositeAgent.cs +++ b/src/Adaptive.Agrona/Concurrent/CompositeAgent.cs @@ -11,13 +11,13 @@ public class CompositeAgent : IAgent { private readonly IAgent[] _agents; private readonly string _roleName; + private int _workIndex = 0; /// the parts of this composite, at least one agent and no null agents allowed /// if an empty array of agents is provided /// if the array or any element is null public CompositeAgent(List agents) : this(agents.ToArray()) { - } /// the parts of this composite, at least one agent and no null agents allowed @@ -25,22 +25,26 @@ public CompositeAgent(List agents) : this(agents.ToArray()) /// if the array or any element is null public CompositeAgent(params IAgent[] agents) { + if (agents.Length == 0) + { + throw new ArgumentException("CompsiteAgent requires at least one sub-agent"); + } + _agents = agents; var sb = new StringBuilder(agents.Length * 16); sb.Append('['); - + foreach (var agent in agents) { Objects.RequireNonNull(agent, "Agent cannot be null"); sb.Append(agent.RoleName()).Append(','); - } sb[sb.Length - 1] = ']'; _roleName = sb.ToString(); } - + /// public string RoleName() { @@ -50,11 +54,29 @@ public string RoleName() /// /// Note that one agent throwing an exception on start may result in other agents not being started. + /// + /// if any sub-agent throws an exception onClose. The first agent exception is collected as the inner exception of the thrown exception. public void OnStart() { - foreach (var agent in _agents) + Exception ce = null; + foreach (IAgent agent in _agents) { - agent.OnStart(); + try + { + agent.OnStart(); + } + catch (Exception ex) + { + if (ce == null) + { + ce = new Exception("CompositeAgent: underlying agent error on start", ex); + } + } + } + + if (ce != null) + { + throw ce; } } @@ -63,22 +85,45 @@ public int DoWork() { int workCount = 0; - foreach (var agent in _agents) + IAgent[] agents = _agents; + + while (_workIndex < agents.Length) { + var agent = agents[_workIndex++]; workCount += agent.DoWork(); } + _workIndex = 0; + return workCount; } /// - /// Note that one agent throwing an exception on close may result in other agents not being closed. + /// Note that one agent throwing an exception on close will not prevent other agents from being closed. + /// + /// if any sub-agent throws an exception onClose. The first agent exception is collected as the inner exception of the thrown exception. public void OnClose() { - foreach (var agent in _agents) + Exception ce = null; + foreach (IAgent agent in _agents) + { + try + { + agent.OnClose(); + } + catch (Exception ex) + { + if (ce == null) + { + ce = new Exception("CompositeAgent: underlying agent error on close", ex); + } + } + } + + if (ce != null) { - agent.OnClose(); + throw ce; } } } -} +} \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/IAgent.cs b/src/Adaptive.Agrona/Concurrent/IAgent.cs index e7ddb2ac..174c78d6 100644 --- a/src/Adaptive.Agrona/Concurrent/IAgent.cs +++ b/src/Adaptive.Agrona/Concurrent/IAgent.cs @@ -20,6 +20,10 @@ namespace Adaptive.Agrona.Concurrent { /// /// An Agent is scheduled to do work on a thread on a duty cycle. Each Agent should have a defined role in a system. + /// + /// , , and will all be called by the same thread and in a + /// threadsafe manner. + /// /// public interface IAgent { @@ -33,15 +37,17 @@ public interface IAgent /// In Java this is optional to implement (default method) C# doesn't have the same construct for interfaces. /// void OnStart(); - + /// /// An agent should implement this method to do its work. /// /// The return value is used for implementing a backoff strategy that can be employed when no work is /// currently available for the agent to process. + /// + /// If the Agent should terminate and close then a can be thrown. /// - /// if an error has occurred /// 0 to indicate no work was currently available, a positive value otherwise. + /// if an error has occurred int DoWork(); /// diff --git a/src/Adaptive.Agrona/Concurrent/Status/AtomicCounter.cs b/src/Adaptive.Agrona/Concurrent/Status/AtomicCounter.cs index 510a8773..1cc87e6f 100644 --- a/src/Adaptive.Agrona/Concurrent/Status/AtomicCounter.cs +++ b/src/Adaptive.Agrona/Concurrent/Status/AtomicCounter.cs @@ -23,7 +23,7 @@ namespace Adaptive.Agrona.Concurrent.Status /// public class AtomicCounter : IDisposable { - private readonly int _counterId; + public int Id { get; } private readonly int _offset; private readonly IAtomicBuffer _buffer; private readonly CountersManager _countersManager; @@ -31,7 +31,7 @@ public class AtomicCounter : IDisposable internal AtomicCounter(IAtomicBuffer buffer, int counterId, CountersManager countersManager) { _buffer = buffer; - _counterId = counterId; + Id = counterId; _countersManager = countersManager; _offset = CountersReader.CounterOffset(counterId); buffer.PutLong(_offset, 0); @@ -113,7 +113,7 @@ public long Get() /// public void Dispose() { - _countersManager.Free(_counterId); + _countersManager.Free(Id); } } } \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/Status/CountersManager.cs b/src/Adaptive.Agrona/Concurrent/Status/CountersManager.cs index 7b4e43df..59b12f34 100644 --- a/src/Adaptive.Agrona/Concurrent/Status/CountersManager.cs +++ b/src/Adaptive.Agrona/Concurrent/Status/CountersManager.cs @@ -16,6 +16,7 @@ using System; using System.Collections.Generic; +using System.Text; namespace Adaptive.Agrona.Concurrent.Status { @@ -55,7 +56,7 @@ namespace Adaptive.Agrona.Concurrent.Status /// +-+-------------------------------------------------------------+ /// |R| Label Length | /// +-+-------------------------------------------------------------+ - /// | 380 bytes of Label in UTF-8 ... + /// | 380 bytes of Label ... /// ... | /// +---------------------------------------------------------------+ /// | Repeats to end of buffer ... @@ -90,29 +91,53 @@ public CountersManager(IAtomicBuffer metaDataBuffer, IAtomicBuffer valuesBuffer) } /// - /// Allocate a new counter with a given label. + /// Create a new counter buffer manager over two buffers. /// - /// to describe the counter. + /// containing the types, keys, and labels for the counters. + /// containing the values of the counters themselves. + /// for the label encoding. + public CountersManager(IAtomicBuffer metaDataBuffer, IAtomicBuffer valuesBuffer, Encoding labelCharset) : base(metaDataBuffer, valuesBuffer, labelCharset) + { + valuesBuffer.VerifyAlignment(); + + if (metaDataBuffer.Capacity < (valuesBuffer.Capacity * 2)) + { + throw new ArgumentException("Meta data buffer not sufficiently large"); + } + } + + /// + /// Allocate a new counter with a given label and type. + /// + /// to describe the counter. + /// for the type of counter. /// the id allocated for the counter. - public int Allocate(string label) + public int Allocate(string label, int typeId = DEFAULT_TYPE_ID) { int counterId = NextCounterId(); if ((CounterOffset(counterId) + COUNTER_LENGTH) > ValuesBuffer.Capacity) { - throw new ArgumentException("Unable to allocated counter, values buffer is full"); + throw new InvalidOperationException("Unable to allocated counter, values buffer is full"); } int recordOffset = MetaDataOffset(counterId); if ((recordOffset + METADATA_LENGTH) > MetaDataBuffer.Capacity) { - throw new ArgumentException("Unable to allocate counter, labels buffer is full"); + throw new InvalidOperationException("Unable to allocate counter, labels buffer is full"); } - - MetaDataBuffer.PutInt(recordOffset + TYPE_ID_OFFSET, DEFAULT_TYPE_ID); - MetaDataBuffer.PutStringUtf8(recordOffset + LABEL_OFFSET, label, MAX_LABEL_LENGTH); - - MetaDataBuffer.PutIntOrdered(recordOffset, RECORD_ALLOCATED); - + + try + { + MetaDataBuffer.PutInt(recordOffset + TYPE_ID_OFFSET, typeId); + PutLabel(recordOffset, label); + MetaDataBuffer.PutIntOrdered(recordOffset, RECORD_ALLOCATED); + } + catch (Exception) + { + _freeList.Enqueue(counterId); + throw; + } + return counterId; } @@ -131,26 +156,93 @@ public int Allocate(string label, int typeId, Action keyFu var counterId = NextCounterId(); if (CounterOffset(counterId) + COUNTER_LENGTH > ValuesBuffer.Capacity) { - throw new ArgumentException("Unable to allocated counter, values buffer is full"); + throw new InvalidOperationException("Unable to allocated counter, values buffer is full"); } var recordOffset = MetaDataOffset(counterId); if (recordOffset + METADATA_LENGTH > MetaDataBuffer.Capacity) { - throw new ArgumentException("Unable to allocate counter, labels buffer is full"); + throw new InvalidOperationException("Unable to allocate counter, labels buffer is full"); } - MetaDataBuffer.PutInt(recordOffset + TYPE_ID_OFFSET, typeId); - keyFunc(new UnsafeBuffer(MetaDataBuffer, recordOffset + KEY_OFFSET, MAX_KEY_LENGTH)); - MetaDataBuffer.PutStringUtf8(recordOffset + LABEL_OFFSET, label, MAX_LABEL_LENGTH); - MetaDataBuffer.PutIntOrdered(recordOffset, RECORD_ALLOCATED); + try + { + MetaDataBuffer.PutInt(recordOffset + TYPE_ID_OFFSET, typeId); + keyFunc(new UnsafeBuffer(MetaDataBuffer, recordOffset + KEY_OFFSET, MAX_KEY_LENGTH)); + PutLabel(recordOffset, label); + MetaDataBuffer.PutIntOrdered(recordOffset, RECORD_ALLOCATED); + } + catch (Exception) + { + _freeList.Enqueue(counterId); + throw; + } + return counterId; } /// - /// Allocate a counter record and wrap it with a new for use. + /// Allocate a counter with the minimum of allocation by allowing the label an key to be provided and copied. + /// + /// If the keyBuffer is null then a copy of the key is not attempted. + /// + /// + /// + /// for the counter. + /// containing the optional key for the counter. + /// within the keyBuffer at which the key begins. + /// of the key in the keyBuffer. + /// containing the mandatory label for the counter. + /// within the labelBuffer at which the label begins. + /// of the label in the labelBuffer. + /// the id allocated for the counter. + public int Allocate(int typeId, IDirectBuffer keyBuffer, int keyOffset, int keyLength, IDirectBuffer labelBuffer, int labelOffset, int labelLength) + { + int counterId = NextCounterId(); + if ((CounterOffset(counterId) + COUNTER_LENGTH) > ValuesBuffer.Capacity) + { + throw new InvalidOperationException("Unable to allocated counter, values buffer is full"); + } + + int recordOffset = MetaDataOffset(counterId); + if ((recordOffset + METADATA_LENGTH) > MetaDataBuffer.Capacity) + { + throw new InvalidOperationException("Unable to allocate counter, labels buffer is full"); + } + + try + { + MetaDataBuffer.PutInt(recordOffset + TYPE_ID_OFFSET, typeId); + + int length; + + if (null != keyBuffer) + { + length = Math.Min(keyLength, MAX_KEY_LENGTH); + MetaDataBuffer.PutBytes(recordOffset + KEY_OFFSET, keyBuffer, keyOffset, length); + } + + length = Math.Min(labelLength, MAX_LABEL_LENGTH); + MetaDataBuffer.PutInt(recordOffset + LABEL_OFFSET, length); + MetaDataBuffer.PutBytes(recordOffset + LABEL_OFFSET + BitUtil.SIZE_OF_INT, labelBuffer, labelOffset, length); + + MetaDataBuffer.PutIntOrdered(recordOffset, RECORD_ALLOCATED); + } + catch (Exception) + { + _freeList.Enqueue(counterId); + throw; + } + + return counterId; + } + + + /// + /// Allocate a counter record and wrap it with a new for use with a default type + /// of /// /// to describe the counter. /// a newly allocated @@ -159,19 +251,57 @@ public AtomicCounter NewCounter(string label) return new AtomicCounter(ValuesBuffer, Allocate(label), this); } + /// + /// Allocate a counter record and wrap it with a new for use. + /// + /// to describe the counter. + /// for the type of counter. + /// a newly allocated + public AtomicCounter NewCounter(string label, int typeId) + { + return new AtomicCounter(ValuesBuffer, Allocate(label, typeId), this); + } + /// /// Allocate a counter record and wrap it with a new for use. /// /// to describe the counter. /// for the type of counter. - /// for setting the key value for the counter. - /// + /// for setting the key value for the counter. /// a newly allocated public AtomicCounter NewCounter(string label, int typeId, Action keyFunc) { return new AtomicCounter(ValuesBuffer, Allocate(label, typeId, keyFunc), this); } + /// + /// Allocate a counter record and wrap it with a new for use. + /// + /// If the keyBuffer is null then a copy of the key is not attempted. + /// + /// + /// + /// for the counter. + /// containing the optional key for the counter. + /// within the keyBuffer at which the key begins. + /// of the key in the keyBuffer. + /// containing the mandatory label for the counter. + /// within the labelBuffer at which the label begins. + /// of the label in the labelBuffer. + /// the id allocated for the counter. + public virtual AtomicCounter NewCounter( + int typeId, + IDirectBuffer keyBuffer, + int keyOffset, + int keyLength, + IDirectBuffer labelBuffer, + int labelOffset, + int labelLength) + { + return new AtomicCounter(ValuesBuffer, Allocate(typeId, keyBuffer, keyOffset, keyLength, labelBuffer, labelOffset, labelLength), this); + } + + /// /// Free the counter identified by counterId. /// @@ -204,5 +334,28 @@ private int NextCounterId() return counterId; } + + private void PutLabel(int recordOffset, string label) + { + if (Encoding.ASCII.Equals(LabelCharset)) + { + MetaDataBuffer.PutStringAscii(recordOffset + LABEL_OFFSET, label.Length > MAX_LABEL_LENGTH ? label.Substring(0, MAX_LABEL_LENGTH) : label); + } + else + { + byte[] bytes = LabelCharset.GetBytes(label); + + if (bytes.Length > MAX_LABEL_LENGTH) + { + MetaDataBuffer.PutInt(recordOffset + LABEL_OFFSET, MAX_LABEL_LENGTH); + MetaDataBuffer.PutBytes(recordOffset + LABEL_OFFSET + BitUtil.SIZE_OF_INT, bytes, 0, MAX_LABEL_LENGTH); + } + else + { + MetaDataBuffer.PutInt(recordOffset + LABEL_OFFSET, bytes.Length); + MetaDataBuffer.PutBytes(recordOffset + LABEL_OFFSET + BitUtil.SIZE_OF_INT, bytes); + } + } + } } } \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/Status/CountersReader.cs b/src/Adaptive.Agrona/Concurrent/Status/CountersReader.cs index 309ca885..3079f514 100644 --- a/src/Adaptive.Agrona/Concurrent/Status/CountersReader.cs +++ b/src/Adaptive.Agrona/Concurrent/Status/CountersReader.cs @@ -14,6 +14,7 @@ * limitations under the License. */ +using System.Text; using Adaptive.Agrona.Collections; namespace Adaptive.Agrona.Concurrent.Status @@ -54,7 +55,7 @@ namespace Adaptive.Agrona.Concurrent.Status /// +-+-------------------------------------------------------------+ /// |R| Label Length | /// +-+-------------------------------------------------------------+ - /// | 380 bytes of Label in UTF-8 ... + /// | 380 bytes of Label ... /// ... | /// +---------------------------------------------------------------+ /// | Repeats to end of buffer ... @@ -65,6 +66,15 @@ namespace Adaptive.Agrona.Concurrent.Status /// public class CountersReader { + /// + /// Accept a metadata record. + /// + /// of the counter. + /// of the counter. + /// for the counter. + /// for the counter. + public delegate void MetaData(int counterId, int typeId, IDirectBuffer keyBuffer, string label); + /// /// Record has not been used. /// @@ -119,9 +129,12 @@ public class CountersReader /// Length of the space allocated to a counter that includes padding to avoid false sharing. /// public static readonly int COUNTER_LENGTH = BitUtil.CACHE_LINE_LENGTH*2; - + /// /// Construct a reader over buffers containing the values and associated metadata. + /// + /// Counter labels default to + /// /// /// containing the counter metadata. /// containing the counter values. @@ -131,6 +144,20 @@ public CountersReader(IAtomicBuffer metaDataBuffer, IAtomicBuffer valuesBuffer) MetaDataBuffer = metaDataBuffer; } + /// + /// Construct a reader over buffers containing the values and associated metadata. + /// + /// + /// containing the counter metadata. + /// containing the counter values. + /// for the label encoding + public CountersReader(IAtomicBuffer metaDataBuffer, IAtomicBuffer valuesBuffer, Encoding encoding) + { + ValuesBuffer = valuesBuffer; + MetaDataBuffer = metaDataBuffer; + LabelCharset = encoding; + } + /// /// Get the buffer containing the metadata for the counters. /// @@ -143,6 +170,12 @@ public CountersReader(IAtomicBuffer metaDataBuffer, IAtomicBuffer valuesBuffer) /// the buffer containing the values for the counters. public IAtomicBuffer ValuesBuffer { get; } + /// + /// The used for the encoded label. + /// + /// the used for the encoded label. + public Encoding LabelCharset { get; } + /// /// The offset in the counter buffer for a given counterId. /// @@ -174,14 +207,14 @@ public void ForEach(IntObjConsumer consumer) for (int i = 0, capacity = MetaDataBuffer.Capacity; i < capacity; i += METADATA_LENGTH) { var recordStatus = MetaDataBuffer.GetIntVolatile(i); - if (RECORD_UNUSED == recordStatus) + if (RECORD_ALLOCATED == recordStatus) { - break; + var label = LabelValue(i); + consumer(counterId, label); } - else if (RECORD_ALLOCATED == recordStatus) + else if (RECORD_UNUSED == recordStatus) { - var label = MetaDataBuffer.GetStringUtf8(i + LABEL_OFFSET); - consumer(counterId, label); + break; } counterId++; @@ -199,18 +232,18 @@ public void ForEach(MetaData metaData) for (int i = 0, capacity = MetaDataBuffer.Capacity; i < capacity; i += METADATA_LENGTH) { var recordStatus = MetaDataBuffer.GetIntVolatile(i); - if (RECORD_UNUSED == recordStatus) - { - break; - } if (RECORD_ALLOCATED == recordStatus) { var typeId = MetaDataBuffer.GetInt(i + TYPE_ID_OFFSET); - var label = MetaDataBuffer.GetStringUtf8(i + LABEL_OFFSET); + var label = LabelValue(i); IDirectBuffer keyBuffer = new UnsafeBuffer(MetaDataBuffer, i + KEY_OFFSET, MAX_KEY_LENGTH); metaData(counterId, typeId, keyBuffer, label); } + else if (RECORD_UNUSED == recordStatus) + { + break; + } counterId++; } @@ -226,9 +259,13 @@ public long GetCounterValue(int counterId) return ValuesBuffer.GetLongVolatile(CounterOffset(counterId)); } - /// - /// Callback function for consuming metadata records of counters. - /// - public delegate void MetaData(int counterId, int typeId, IDirectBuffer keyBuffer, string label); + private string LabelValue(int recordOffset) + { + int labelLength = MetaDataBuffer.GetInt(recordOffset + LABEL_OFFSET); + byte[] stringInBytes = new byte[labelLength]; + MetaDataBuffer.GetBytes(recordOffset + LABEL_OFFSET + BitUtil.SIZE_OF_INT, stringInBytes); + + return LabelCharset.GetString(stringInBytes); + } } } \ No newline at end of file diff --git a/src/Adaptive.Agrona/Concurrent/Status/UnsafeBufferPosition.cs b/src/Adaptive.Agrona/Concurrent/Status/UnsafeBufferPosition.cs index f1ec6d17..11b19d4c 100644 --- a/src/Adaptive.Agrona/Concurrent/Status/UnsafeBufferPosition.cs +++ b/src/Adaptive.Agrona/Concurrent/Status/UnsafeBufferPosition.cs @@ -23,6 +23,7 @@ namespace Adaptive.Agrona.Concurrent.Status /// public class UnsafeBufferPosition : IPosition { + public bool IsClosed { get; private set; } = false; private readonly int _counterId; private readonly int _offset; private readonly UnsafeBuffer _buffer; @@ -115,7 +116,12 @@ public override bool ProposeMaxOrdered(long proposedValue) public override void Dispose() { - _countersManager?.Free(_counterId); + if (!IsClosed) + { + IsClosed = true; + + _countersManager?.Free(_counterId); + } } } } \ No newline at end of file diff --git a/src/Adaptive.Agrona/ErrorHandler.cs b/src/Adaptive.Agrona/ErrorHandler.cs index ef22e7f5..5132b0d2 100644 --- a/src/Adaptive.Agrona/ErrorHandler.cs +++ b/src/Adaptive.Agrona/ErrorHandler.cs @@ -20,6 +20,9 @@ namespace Adaptive.Agrona { /// /// Callback to notify of an error that has occurred when processing an operation or event. + /// + /// This method is assumed non-throwing, so rethrowing the exception or triggering further exceptions would be a bug. + /// /// exception that occurred while processing an operation or event. /// public delegate void ErrorHandler(Exception exception);

o&PRtK%DHf$JMtp=uE40E6OIS*;ZZ&sHXgN~f>rxS zk0!Tv)h1KUN~a@b;myXur{EdZd>XnTyPFUyudd1^Y1?QQiitu~d?;xJOg=)HLcq14 za*#ukpG+-1G01>N-+eeirMn-<`@_@|-FKha`5?}f=l za>Gm4cAx}|wxx9_j8k){X#8}Bau`viWKQ4e=t=J5a}{#+qf^Q~JK`D_qCZtz)sudC zP$=!TF;4CoP-8Y6lM>!xw_#dk`B<|KblOa~OW{)F;YR!ECQe=zSLkQIvMq_5vfq&jgfJ|g$I zq#ctFA^wonk9+{-l|?bZeKRp4h^>O5*Au~7CUltb*&MT8*wLem)SL~+j5RGhmBrNS zrUgfK%`7`Q`x+`#L(POa?FTUitnAEDE{z@y(AQ7j>)QDx+)XJ#9+<{Px%K{$@@KpS zsj~t@$sT@kb0=p!j=`FR>s@S6ADuXPEvM0->FU}(GNv5D_(VFyf@4(N8^XD*9HPb- z{02f0nfy}!|dN0Zo z&4kD4cx;%)L-EvUT;PpeSyo5tjV4|7WcVSXhOhOPro=b6m+1K@2N7RBRjA-vFoP3# z3sFUtL+mf)fa7=HPc0M}e)EOi%nOUKFaF(0nPgJy)@}1V>JW@W?F-SqG#;iE#l}eQ zm#U*V>R1zDQUr;}99iC^-Dls7nDSa!EK|Wyt6>_{U~MTI0FYoH9vnKyXji=~q$$u5 zi}*BZKdyhR@xP>%K+Q8RT*r|xZhU^1cCd(`o;18-yA!s*!qv4IakB7>`(Q5nt`&J# zEWEXBB;VaCzojq86-hH?O_MiV9&uIhX`#2=1s}YmgF{A8m-gNGc3gBci~&B08)`6i z_NPQe=afm2K47NU6-D6cq)scU`L>5z)4sn zwbvVq?kWP4za$A#Foakdtt8>Kb!=Dt^LfEKBYn?n;KRH7GxDu~vGe*J-l5Ga>h84@ zUTl9;_MaRQ<8(}JxbKj^$RTC-3O^CGH2V0FXdJwBhZOPz%IVnQ^=`W*U!zoM%H5>Z zz@GW3a|6#vYw(})yt(+l#t0m&az&Ree;Ffpp&=J35+&s+yBcd+RggqN86_#Q!vV1L z{fse&i_Qrz{%-04@9Lptc+D)B1wc4>IFuD1kLZk4rDs+XY(lqN5?m_ut2M1ZS`SI? zIU8Ki;sLG;+QMevv_3gAF~$#YO4;D|9X0RiNCCGfPu3)^2G3JyPR`>u<$u|gI$0yJ z-G_4eNn@GA{RsPE_lq57JS;o|;f~iE*J)e9m}H|r>1-Frxj`&9hJ}rf^%&b(=lwLw zQ~lY-5zjZhoGI+mbBc%aar%kukCE9%kRjKY>z93WwD9JAnLjDnNj9OzuXx|S67IU< zO~(PV`BQ5mzcb*jljW`Il4yH#6^(`{q+8s6MK;Dh`tDO9cg{?tae0eie2LQa;}&7( z6vn{;mTbYxFie5?v|_CA%2U--+*72XLMsai6(pmR7rwQ-@RNMK!eNTJkouZNW;aU_@pVzz?fzDv&8?djvQENA(H|8fc^J_P*nh+zj*0CAS!qgQS+5H zKoS1mBT*axpFq-VDDchkW`K~t;1D>sp#*_vQh++yP!O73EC9-XnU8TRfcD?>0&mKI z5Ghb#n!W7+vHu>~4F0(Bznfc*fHRzbzXS|6QG!}Iz*+}z5rCtA$KY1}5G9d-gMW7& z%KqI&XeN#V{HO4*E8y=SsGAc7vAH=K@bsTE{8L+q!i7TG{1OX*|N8^~i+gEiP60^% zoe56hC_w{UC@7%XRKWN@U)Bu9hmro8|7jry=5GL?Ep8M9P$)MFI%p{!@VDqOHv{kp z^Kbh1-xY(3ec-aesRF>?GRJ=}D|oD#xDY`7SM3yh*}+%v&!BfbfC}*MZv@v({-uDx z76gz!FA8S!MHhhk?*;vbiUM20|DGBc-H@wXY!lTX+!m=SP`i$^Ck9&KS&i4V7*f$smZ)nr;x(gD_*-IET^CtdBCa)v8Xy3V zekPGouCFxMIrkmR@iQliPR^3N8p*e`hDWh+c2hV)0w zu(0=ekO2sB`n<&)U&j~kP=axxDqAfD_ta`Bh1fdViXkLW5ckj+*$}cfeOH=voaCyV z@FtU(t9V!Egfs{H)#kA1bW{d{SLSWbL(y|K^EA;fLzQs1eWr=%+6IZN3|r;1Q8K%-Q)7QD9L|wAE3Tw^bRzxOgU` z>b5NpWIK2`>zu@8Gs!NRVutgQZstA^#%#tcLndT{rd=QqHDA)Z?v<>v;X?+|*158Q z{e3SN2Et3Af%@ZFF2#Fuflt+Cz_p5nwDlqyvk6-F5n0ulW=t7nT3%3QP_9rlZpU}t z3WxEZcQc;z0f>b=m;I*orltJlCj@)*tr3E|c3x=Yq2EKvh8sJ(5T73^?4g(3{CSWw z7BSAzOmJ7&5~#R;Ckw;OHo#}0W22CyJBFofy^wx*F^WiYjg6ArGA#M^9++QE;@h{7 zi5@9F6ywO|6}ik}cO+zJX8r@pS%0(b1*sPWGx|$CU&|?H^xP%&zOwjwf&j?|exkB4 zLb}Fn;_z|ot=}V8*JIMu{*ti7+yx3!X00cj<4zzCxUnNacRX;-t=Y;N}mX z1SE0YrM3iSfyDV5-$FxDa#$;*%F+f|#nmjD!zIaMMV$Du|5fog$t;vd0oSTI{s-#* zFQgmv$B#hY_`sA<>M-B~)c+?kO!{x3@)jTX*0wMX0RCli|4}XerzDt(9|gTRZVI6H zuVelLo#V~|ApTDL!!9+8&jYL={s%Cm{|kTy+Fty7Qve?#3e;7`R|R)a4IxJi3@T{o zXi)NGpv*;SY;1zAeIHJan4{#6W!t`DBl_{o&5bMbBq^G0)AKwCTb|Hk^WRtKmGM8*nF zlZ-WV(0+-16R^@KRkNy+S0hi<52R0FR-C}6AkL)p)Ozm}ug0JcBVgOCiq4K=BS z#gDGokt=dMvW<8S^aXi{EiBTX3nj(?0?uy=f(he1$X0g^6Lydd_o+)tCvK>C{ihiw z_2<#obSK~fMW$yuwRyYIT=AZ< zmsU~PRw^Pz@orJqhakQVHH5bnVza@#1%+L|^Qi_xe14_y{&)|9ZX;gG;6Qe)_)8mGf9TR=$unh4KV9IaU{mMlI!8U&fnMR<%v0aA{0=A6AT#>u;ZU;Z$E*KH<5n zu3B?a>MhEdzF=H0L$=O-2VrW-@k8jLXC3m=7P(W{V?UPiH_Uz_z3xw|801;S#6~J; zfLR<+Sz&5^-b$~L_6EjT0jVLj9OsvnZFP=zSAq4$m&Ogu``Yf9igXT{IgkYr8U5%- z4H#I*!L0r18cDYTzIwBb)TsTbGli+}c0tKXR`qU0wgFGhC%#|te!L&z16*}vcl@DS6ocLp$Xy60OET)8MP5#L`Kzm#TgHw0 z3IBty6?d+O=oTED(4KUaW5*7y)PZ&v`vcu!iO|%gl?ic#P_u)PB)2ocB|A6rvEsK| zpar@)aq61fT5f1tOj0hSQ#O9+mu!LqG4)j1oz-JE%ke}r=E(NMsvWVdMOFdWhDZK} znENA!eGRhrEbG>>WEU$RMm?oD<@2gCf`7%%OD66s2t(bhHE={P&K*|BYP zIyO5tc5GwEwr$%+Cmq|ilaB4&ocBFneRXf$s_{HOR;|Blt~JLTbId5kt-&!FsC1TR z$Ra(ZJ=$#0W@&nc%^J&NNTq-UefM$P?rU&?$9D=xmP4&*$jnFPj86I@@cOv!ziq~~ z7uC?uI_u(+hji2Zc);EJX~=EQ!0X5o!CWFi7PFh~aRGoynGpCA^naP8+p4Idf4G{c3FffXMgp%$YNn&TB@ZVA?pUZ0fnMvaM>G`Z&3??S`yHumv<8 zW?CtY@o;NNpK@z4f_S10I!62}+6I0)fU1EV!OF)oR`ix!1~6YY#5tD@(7cU=7`X$y z=sc677*>Vg`0Vuf@`87b)2;E=>eSa)0#X9NmUa?g>arg=sKcM`sGG~Thb`8kVF$_K zJVm0f5qy!(-4QFZViU3l+?%y-`BTqdY~6nTU7p=_E6X7Sl!3>7PZ^#TxpSr)IhE{3 zm0uc39Ezc+Lagn_Qi;A?3nOMQ4+D|TAF2*fp@1g}F-HEY>(9$4BGI6Q6sswhscGk5 zmWBr^{(PX2758Fp9O;Rs?wqWvHl&p3OrY~DI%VfPpSigUM;d8QrKvO5N&6_7C`qTzlT5L4bC8yQHlppN+ZPBGr(X-|FE7&a&L?$4a$-6j42hu462qIB~?-J7*1P3STuYNS+T{FaHeK-f?Im^ zh1+KANbnTip3X0{h}6s$KhsWP=6DkoD{h(D#8Z<;PYt_({uaiB)LHe zO;PW3#r8nAmKd!*NJOAJEtRD|=ejCSiXx6e@ne;?%_uTvY~ZG7*b%3s66D$3Mykz! zHZ=G_F29a%Ta2Kh^%=dYL)(XBVk*8 zd@Pn?j?yoS5AuY@HLbSo%$tGzUA%l?@>H%R*pq_;bFv`%tK$BRZ^ zl~5{`xbe$*7gG&EF8_k!!ZNE*Q#ZBPPLNUal#}g-n#R`Pul_`_Bpb+8XTU41#~uk< zD>l}ZxcUiFAH8iiB$!Wkr(M#XTQZv8*b&>AD@ZJ}cnIh053;VR%z&U5OrRnrXb|^9 z`8UmE>C`i$DUIUq$JBlCf13|Y3nsA--i~JkvkY6+ z2uP5{(>T5!vFh{-yKU5k{#<#wkR{UuLVGDi+Gx6OO4aVBj;Uuqxnju1YvCujLJPDZ zRTg0_kTR7Y7O)Q%NabSy%R%2CKt_?-Sb2_4R@!QCc3!qd0j*KaKTUihL&vqxa&5+d zJv6Lagp~*ksU2*W8-(Qu^qD@^RDAQLH(MTnu7J&oqyrIJMp;9BxRSB$u5?Bj>tW?$ z4yqzp8uL|te{%Ecm)YS3Rw>*zp1(@a$IsF6w8IZfiP|KcVxIGlf&mTPAYbcp=dGP+ zS9cvRqzs_-z-#0KSkMPD_*3Yv4p~5q`Ma@LzbtxOOW)E0Q>U;t!e1XeXXbQcWk-N{ z8oRjucN`i^pQ26^4(Duf>I_^#yb<#>!{?wrz9WoK{JwH_L)O$NElPdaf=Qbkby#+_ zS*kA_TCx?0TO||fp230yYdD|TMwfMUyYAv(?(2UcSoyK2{t(z$V)6qlT}o7U|0>YM z_$zG_lzw>m{0RN>KHP%nxd5;m&*`B_BL=sMkvE_V#nHc{Dy0GY{rtzl871YdfH=SJ za~!$HZoskv36!=yJ4=BhzujgD&*lcc(3_{sm)U){+1+Z!;}#?Vx5>nssjF%2b4O8` znWRQwiTF0U+++XFTLr3(`A~UB^(`$})1rx*{-4{9|9Ms>3+mf9BgFqNnbPu=lm8zM z;eWD$|8vhFrs!V*pg>uwI#$Xi*goCOmMzt<2DK;pe}sJ65!F;O`}Aj<2+-RR7Kze8 zYZ|Vr1dCadbIN`F0EX7vBQ?eaJR7E&U;cAILj|Kyia{+Sw!u?c1zu=Zzeh zwSC^L*U#>$SD!7{*U48RFs?{$zYG6301bCRE^V)j@Khqa2xwtKe@10oi5Z(A(Mg#- zyr7(=2$vAX?+`F5N}l@rPTTIQhMCUHZwF_kTfIV-1cCSoedHOeq8vt5yz8fx>k@|w z#EuFU7bDv%+fgCKML}k!On_#sgUoaD`hhPcMi$SQ{Pfl@Qb%%gc|$p!iqDHj5Fk^u5~+NQ_&vtAn!4mKr`ZH0JN-^kjU44(acIm^b~b`i6xq zb5ryW4l4yBJve_v;YT7oeH}q%Av0e*uAG>-H3LqA%QJY9l^Q$5L;q4Ri!r8YlZ-}1 zOqrg_4S7>5@IavWBz=X^Zm;!_@R(7N=IlDEOc{CoShJp^Gx9eRr)OOrgAC9n#f@9tl=k&D)=Ag z9zPHser^wY7`86Bz0P&~q#vU_d6SoU8TrC)jdjNM84rEO)d zsY`fJ;ItY-2+_qiCZ$2HJMAdFm(d&8A6v#T{E!M~w#I>oRjk7OD=0Evo;J8x=5V1< z8+1%reR67N?xMtQCAa3lo@@)iRZdX&Ie?4{4jPz`}Bx zOTqtY*j|mh)2T#PE~;ySxM?l~zN!e#czH;-PoN{e`dd`m-3VjjS9@Fd=CAgm@J$&H zX^ai2_Nwsin7emXC*Du3ieu|S-tyz~LXa!nZHuUG_quJ|Qk~Z@)mjvE>!C!HqIkEk ztY5}57MC6PhtMMe#AaP&Nt;XZ!0{m1bGrlO2CO9|0Z*>|mZ9G*=~4>J)L7s)#_3tV zFt1Fkp1Crb8jh)v6Rp!*@KNdG*8}RCbs5wh zV<36q_r26wac5s$f;Wy)<@#Ue{4xwe&f8U^!_7%WN$_}8oxc{YJ|qz~W^07~^r-J+ z%bl0r!T*!dI6AB;XM9mSxbXkq7@uMQ1^?d!=1lNQEgbR)`1!xYY0JbD!12Ev>i@}d z@LPgk05Jbu{GZ13PoXdJc=Z*4^WVk)A!nx-0mvy$y-M@DpH0V~g*;BnGk6{~I|mUAGF?i2W% zZ1mpkg$;NSOc9p5;AHk~<`Mr9_w(zP;OBRyu=+nHW7UOC;nr!Ink_P225Z45#RR_{ z@#H)5E0g#5dfJyFvf4y4?<|bDjop)7_-!OLy=tB z7TjXXWexW!I459HyfxRPRNEOggEhBbaz6AAdy0~n=uUZ*(a0VkNYaa}axx}+u0i3ZgA6g<;A|oF zd&lfZGJj<_O=L@>hdDUS847tb^h}`=J_OiIL0r~g$1_9wG4?|%t+id+`TfIA|0QPB zA$M(s++2~qE)u(Iu7NNTNp6S@RgjGEZAK=OLa+x{j4960T183&#Zf$ej zF66pto_g}CDvp%N0%v+{gIB%7FXgl~gk8FZy>pwafr71Y>wr1SK2cftJKPmvV`Bfu z#G^fbG$h@Ph7*H2`$W|u{4QkP6dhcBH)RNj41b=SQWUp>(;q(o`e1lumCi^sxVl~w zsZlfF%Km5NGWp+R5qE#&UQtr&)`QoYxf&ZS=je<0ho+pk`+qQ2MgB1umh;l-w0`Zb zT^ZYoI?)0FW6cIn8$SxBu7l1Ft#L6cQP26^rI#!qC#o$5((R=g=zexv;EqMTivC3e z(Ggfy7jJ3Jp7!#0o3dMNs2c~_MaxEC5iyQt;U1NV)2y$Rf!UTYb!B-RZ6fxz9Uqoo zCmT7XdRki0k!0sz!cLK(w;{f|+!=kll7oZ7A(v+nf#I2QDC`vvcT zE-P`P$Ji7j{Sq0h%okb1mkhcvwIi^DzKq#RNR8g(suu}5$*X?9kO^9>rEZ!qpA@iZ z$gpe3K+^3?cGHb(-X)0Q>HSEH@=$H<)AFZ0VU5!5jGA)`$;SD?{I_N)bm3>k6wic? zp}2An*>$Pp&+8~KSlG>7jl))5^7V*bvlv9(ufFVG$X-c&MNPMyc&&;4*#dqX0 zhIDm;XMeYyE1yvwf{}XD-8o&j01-uwHrsZi=Je6tmd#kqHpmI+U3YZEOqp@vT+N(N z^YYQ9Iz3^@ku|-ec_^cBC$dSlU2Kn0$`W>q1wR7&r`iU>UW4yHF}ataDuT7 zeRtTIU;amm_#q*5uK2~%`2B~c`G3(g|EE791=|il_`mebS2%)C*%1D!6}^JNAODxV z`QLKcfBY+AeJ86I}QAZ5LAN9IH@#-CarT7pfyjGHeX#(I~;Xa zsS$6Z$>+tqNv}n|!#t(Nvx(~Sz4J1S)r^AG@9MF~r<#`4%ya9==fcc;iuaQzK(VRr`9OeuKDWe@l(eeqoUm-Amb6=1&Zhre< z@@e|v%RT$pZ~6*L4Lwg?@AGH+e~jvNZ~pgVi$mw0iStAv7kpYP}jCuGQ5BWHsOVE+U?85oUX1fF#xsgl`<{VnUOLmfL=Ed`3)&ICMMhM%ZPOh>)>Xg8MZun z>LgTx2hRR*%JQg5t{n2L5ja*XG2=UANz*Hh*vFt2+5F&|Q-EtLkU_iJV<7yL{hwvI z*69+XEf83ycaryw{cfODkj*+^-devN`r+xmUc9=t}@@-GCM1sK0v4eORQUZ+_JhdfTJ=;;rBg_%xL;hS-h|p!dp>nd%7NyebPjuCu%oZBpOz=yz=11IF|uX)s;98R|@cp*)O zD++pZq=X7WNarU+s$)xWSL{7-Fp#9S+0*%QACmmVsGBUSB3U?sjyixHnH^ypx5_w; z0oA)mFw+s_$J(m{&;n7^`OT7lMyfp#^lmkNFix%NvdD^p${sp_)(HyC?G?OlBJE0Y8G*uS0gGsu{INE}Ki<-5zEOf%e3(B_?&P_N~ zNxRsc6ao|#IZab_8YSFlm#1{74fb&hFnChkX+z8&)BqQFt$S<|JAY1vwniQ ze@|5><~18OQgm!LfdnGD29rlb$$)x)Xc3QDzP={gmd7M29K^F`&1ToD>!@ zE@Rb`aQy&Acg3=Ne`r{gKzfxKdJu{|LTH)*^s6%c@rY0OId>(wV;;TBNCpZoxNQ!q zfqxA4|%7UkB=F0J3O zcyG`xJJ4jVV_*DJ?JjW|W(3(-NtO4XqWi4$Gd$A2AX;AQ9EixW*rdA+0~0bA;-ZP+ zy{SjpMkoE+|+#Y#fYiAUh5*CMb+MDCHfn!mPK~H5=gF14}r@y ze{3uZ8+ez|$}cP|!&U*pNKX>;E6oX70UL^z6m!jCx99T5C3LT5$DpX6Ywh-=^Ua!~ z>S7>Qyw3UcvA_oxKWdmj=gp!=w?REkqw+Nweo)oq8SGXxqtCmZ$saM76v2)Y`8%vo@LMH(ZL+pbm1+{!qpf2ix~rVp zggye+M{&5ZokB17Cd%zHJU+wrQo9HTW-<&wYvHfViP&kW5MB@#vU;uBg5Yxs#rfdb?OGw*B`3PQ$*!4`9WfeslBC8DSv}qQ9bY5ZhmFy^74qPMgBs0W;sV_$$s#_Vw`)wCddOhDpfrtJPbFcRb6}3QHNq? z{#OO^6ixz`%953eD%FQ}hE@G9iM0O8{9$a1tn@*=dTR6x(bPICVdd3D03xdjt1aod zibTgestScjWpSG*=5M<_jFU~ma{=l2viSVPaNU`qs~1Swpp51AnWA^^byWlnT0>^; zH&uo@STt3M~t~8PiBxLYDqc zbZk9zJxMIaP$PWpe-=u5)V4^WDI2@o*QyJc1NI46s!SKj-&dO&kbhv`%Ko6quE+hj zrN71|df`~ra?aE4m#Dq{ZvMTi9XOzuItP-E*HCs&hD`2afO~8bpDrFNH2Y3hi%iLz zVIHNk&~kzw<0h+t_}*P-Ve;1l-(BSTP7fdPrf-memD)s;^;UhTI)PHYK8He>VXc}d z%+>9b2tdQHb3Se_xMMGvWDeB1A7Hw1dA zUX;)(rO#D?b%OAmHi3Rw4bbtM+-|lr1DWM=c9QiUK4DZw86AdV;zLs7C7tdiC{OZj z8#@dxNS0`y=0aij0AGIqgcOUnS*j&(H6Jl_4g8Cp}Z(g;|sldDtVfY zQh$SKW39KBe&e@tByQDn)WgB~ z@Ub>pNA)zXt=TBz_N!-IKbV;f+*#Dt^jK$)>@PC$l~#r*8BWK2N=`0|asXKpTC)wd zxVRL2W13yIW<)ZII;S8h_72ssD5F9uk zZX&eqRNG#>VW<1fVo9dcCE@6O_@esT*o0GDGk~BXfZw3{n07*ob7H4@y8dG_Dv$71 zf`Y~P-+^?%#$k5{`Rvvlt_4V_uLQO*PR^aW6XX_A&Qwa)1N zc%~d;MxhCI6F#mUF*!!bPdygCmpc37CH={!*ao>tjdWb^=d0tPY}9v($W{2e@Yj>F z=_zc&_i?VfjnrGX;gdMW>@3{(vz?hKKJu3erc;aDEo$-!W^x^%)M#vcIB_Wr1r;&0 zsk%SQF+NvOtX9~ZUI@s%I>euIyK~E7T-q*rCz6(1=7=y)l)PvtTESWJ1f`rFMZ8oX zuG~Jk(w>8Jg3LxkAm*wqh~-30zZK!IT}O&#Llu1&x7*^P zEUx}mm}a|+O0+1RCs^HP6ccOt2(q*rm$AKvI7ps#UrI8w-aH4!o=}7}zole(W8& zRB-qVHGHD{anLgtb%(Uy1ez6ii6tzKG2GDt0=9sYHbEQeoh^mKee}VmDoI^km|`_w ze-7hO&7AGqA8qyyjmU|#Y}%YqA4L#qu@pl%Ac^l0*|iXE^TOmpa)^{#w-npsRH>E;Dre_zogS-s zFN#?777ek_nKlN$-8#9A>MTa{9?z}0>`iwEBw7>PkC0vafH7mvVUeKDk@rXZm`h)8 z2gP)Mi*TE<*+Akwu3M+-+($PWAsbBijXrIx_={E4H#u~qQBx+VJ5~&F3O2nYrmvEF zJ|i&eRHVeX1R@71SGTnHJ@aceaDlHlQEoieF$t{;p;#fh-7ud&f&dXhy11T{%nK`B zlUeRV;aUe?pnH0%B!*$KN?$KD1iu&w8t7+Qn4aSg|D|Bxn!ckHg@^fJ+Ihut88gqr z*}aa7W$_}$X|!Z0dFt&5sAIc_hUH1Ah;qCBV*hwG^Mqnw#$1`Y*u&6tD!YEd(FH~2 zHyz|D3dWS|0|x40sQ}Bg4+D?oZ~S_WsnJRNKh4pgPVm^#vTF;=p{mzOtJiN*96&D= zT`=bnzI$AqzXp!oT#W1qI}2f3la=Ds#gqpiRcJJS2w<6~Q4UX8M%w1lQANg#-9yb( zaz*;lfal)aiw|d+eZ#z5RXoB0zw7!nm2Em+7^l1z8(#}EM-m>U26hCxSO)u=pCLfO zNvtZ3I_<@ex(*9yOKFKK0O+%P?aeYXCioNHj6%u3&Evv7RZzUd=<1Fge;b6o*@ z3*F=ZgC7p!npx-irsk}VeVh3w;c{GL=*lZ;Y<YFAI>_n^47hbx zZKgSa&AxTd3PbMXm%pUh#CBa)`VMrrKfc=uO1SSv9Iq1Q8`kB}41jeY3KoBII6t8~ z>Cd2rkj3qMzA5~?NCWzTvVeYBp}Ml7cfXvhX5fm}Po%#+5Pf?nBpB|%OpBXqIIJ;rjv^lix_e_+6XVEcMZu|B|7ImzGTl-)EMhwRA1)&&{Z z0Dhp@kM`*tU?dAbA`P-|oDL$W9=UJ`!~gQz?Bg^;r~k#3YC0)Mw*d88j4dx;_R3N9 z9j{#q@|w9peWFq1PWAMUN;J#%0$BLtS!$c~2U8vVc%$9q7Xq790$7zvU8aGpNMwuF zKJOgJpV*x-#!}ah7CFBuKMZR-l?N&TEH@_1TD65c=kp7*wg#%>b|b zVbCC)Zj@pRR~`49<5}Qk^!=@Jwv3}oZVO8PhR4W70ki^&4zlB7 zB4i2*D9+U}9G_HA1VS#~f;;*;*gNql$j?yBtgNE*`jptEJ+%xSbnU-AL;n&pY?sV_ z^f3sw|JEjWF`2FQUERc2)gWZ24tT~x&l(+_$HmV|v(iA)fm(mGYGM|p;PP-X;v*=` z0bc>44?ffEIKz*#9QB!(sfa)uMWpojoG$uS0|qtlRDwDQ^Qmlqm=+$-fCmci$-)e3 zQ(p*DXP-|0){w^1ba0gpFfVWRFSe{G;GAax|DzoWS=9Gde{v&@%6#juZ+M-XnrIZr;i8XU*1=9Q&c0y(_x^UO0LV?GjpmiJg@HBY}C6?C_uAB@~Zw4Jw9b*#E z*QdkQe^d=QJ4M1~lZ$^&VO*9`rrkk*>PYy|#+^SK=rtah@B%S>%ugXlh<>Z&OeDf* zbK}d!xw+>xyEos}>H%=;g6t$jXH4X%`8^Rfu~!?obm0g0C>-=UQo=8Uu^J%J{8}c* zi+s;DmB<|b5soqs!*^4m{^`|7T}& zOFna0K-fXa%I5ct*ayrZtMjS{IOI>{P`#3wRlLNKE=iwr>-4;?gy~Ix&{rbouB2or zK7DR32pO6K-rwOOoz2J~b08`5pCf^@nUKEAcfuL_E@1pgNYT);WH>O4uFH)Y^a-B_ z3YrEjLssMF^q=hE8>rtl&{A%F%2Q9mgOxuNzr{RB zp$j2iX!B2E{$ALW#8|F&%n~oI-Ec0gj29z6f}|b&G-9U;Z61if=Lm z)qfC%qL~Cp>^J(zv$h~*(+2qNXn&=eNpESrz6v$=&9X|v)$b8X3=cXa-b3FYnx`l3#JyB$ z$Y@BF6E4nCF~9!Kg|FF9nMc&Otg}b`3tz`aLFnv~_LrYqzg(SkR}Ha%_4n&#U#jSG zgK%8xOV;Afs^ZSCk`|b~brB+-n=_qr^&Vs8luajV3+!e@b|#$t=&?ZjGsCi3qdFG)Kat17cV; zbW`*RF%cD+*MsAnH<^-=?y!Nfc~15j+Wg61UKWVHoj2Mbv$Ez%CF`uBRi3g~k?f>S z|Ja6c4a_+C2~^KtC+cv{DSwZ#{v2cV9aos=?-{1=s*B7Kq|90knKTZg6gEXi9g<0j z3qK4c9-y|IZkvjqUM+ii?AVL{bhG+GGHVPI-*{?h#d8S}p=+j?n>J!GPp=AAYPfG1 zVW4;oKOe{?b5!RNH?Lzet6%3*(r&3rs0rbso#3Kf#QzDjU0oc5C}K0O^Qdv*aanue z(Q;7z_``nbYZS+3#&$Jt-bIN);M5~t1IOnWXKE=6rS&45D!8~*(N z!Rd0t^yfv3>sj;=*aPw(fgqb>^IA~qD89H=mo3U;H&O(6GiAa}o#AZs#@+&Xr7?*A zwRg^o1=g#MGGV1_x?w)T~$xObM4b?sOEA&$y(nZxtEClzIB~TUexu6v<^dZ(2MnO2L3*xg zTyqu^fFQ$rzz0Hvu4~-T#bwY##-CDI>B67Pq_kDJep;2P1peq@CWtzyJB-S4NDNko zi%0ohE2l#iW22CFQAq89n{5*>r|sdNbwiy*pTP0*4RH=LB0Y`DyLM-uP6R2rZ2on z!Arxd&c5MRj9CYvmk84!xWpNZLt4{j4RteBYJc55m&$?ag@N7#`HnZdT_Os)LebsV zE1dvSg@`9V$rEQxv?UE0?U1AhXc^<#=ziCUJJQj4N`+{FFu1!i{ruEz(nbZwB9E?2 z{}=dn+#!LAirmHf!9k-2csebDT`FNwqPGc$8>55=@ z@Gl%omulD+CV8NNs^&7xE4niuc9#XbgN!}!+kVVxJmCchGJcq*TlH8#&Jq+aRH3Hv zMaoeI#-~VN{M2AGmw?d;MAi(b?Fp>ElRlyI?&6nxpZ@aP!1xou z$;-Q`6ckX90(Rq23253tN|hAZ{s$OTcvgN&{-RJP)*zTfS(rqZ(Iv)`Fb~REZLEp; z4)d~2X%hSn?H(2e3BISfapLQM#HGnnpH3gKdyyX8!xhL|?SM+JstvZ9cdgT*f1lki z_TaIb5QQz@PO3_YS^}1NW5X__Dv4^|Jx_-+%oGGSrR+XleV={$AFvb!3BNCfoZs(> zD;|~HGJRQuxMz@U5+Z*Rc>39=9#q}*ElWqe7&)l14k!VLOScTs6O+cwL6{k8Cq|$2 zVos~@w5}%0*$z}-@)BT|sm#)cEM}C391ZZ12%(?c5|e*-Q*Q6P-ctpcxj@$4T-K13 zk@2tv+pBpPsL*k1?#`tZIe=yBpad&wZWhe`QP5u(O`h{cr&aTlM&&m#4|PNx1|NXs zN;d9Kx#$o0sHK?PW`x=A@9q}UJwGk)jT&V^8k#ofCj}O@>%77V*W8-**Jue*j!cY# z@Efd&2xMDahYLsw`Y;3!OG8Fp*zrhS*Ph?YU%1;|$k*3|o0Q>kB(Yg!g5h~Zj;I4M zML?c(!4K;2=ghR2%|Cwgw62o3u>h%Qw(S40gD>ECp;Z!y|Gu*35&tCQ@h6&ge?f{n z(-oQUAYlI|dpf(7pK;$p9wC3qR{5(-U-qfEs`9KA+L@((h&L&(jJD34M(~Nj-iJs zdJ61ch)N|s(Ns@B%%HR#rnHHEN}5s4e;a2N|S_`i_IA0o?`YPyxmoS%G z5@jSu>q!n)mO1T>AI!voQZ?eUY11!xVd{_KU*Wc3VT52>P4VgaQ!ga%s-Sk1c6*`L zL|%$bPbUo}on#fyqNGQ{DEMK2(dW;4rjm1}2?w=aETELO#Z!YxbkAUV+ArQrlQ4d1 zxQ3P9VbYD^;xaLt`H+&Ic|9Nv+ZS6VKy*$Q8W@5gKg>{4&&XP8cllXrOut?mzL zpHGS9L_Bd_qt544tud?ZH3JaVCll+QiGBd6roOB2PLbtKq-e-oWyJUCH}wZ0$zS`@ zJCoVudXurMM`9ua?Xl6PB5EIJ7sVvS!5oGVFX5i{*>l;)_QyH4=sFPJ-wXyKpApTt zBbLW~wx!~NDNp4X^FB`0f57Cki`g>RC@9t=Q#;IzwE@^`=4(b{29%s(y)`w31g;U` zP_-|&Hz=occ>p_!o_txcBin?>ZF4Zl)>4M}Z|W}wBbo!80k%mh@*YLG0WruVY%}E` z=7>Y=2J>#_kn$*+_GwV6G>Vacj^BCJAnC{+n?sx1GaD44dwe+6#(-__$s4uJ0dF)< z&l|_R$ZkpsezHkSfaT$4)C1YU%VIi zo~83?N?zVoRnrS*&u@_|E=J*N)-vjHB49g$=l(V04-8AQK0-BBO2z#B=N_A>JC$d- zLA?7a@ENdw^SlN^s@zZ}SH#C|4 zHYQ}X34g`Ycuwp@jwh<5X*TO=h@G~G_c~&IVm52`M+m}pLL`P=3FcKxe0`KE+orlK z*dA%?9B#U0WdY9~s-}UqR7GvqqPjd@ByrQO_A-p(SMxK-1O9$e+4nBN_g`{$qXd?Up{%?2mmr#YUrJD}k?Y|P2|MA6 z^MUrpW*Vj6>!P$Yxq(#SP0if`T9zqG=jLlm-Ak(n3*Ft-59TMIo0pTETUMxU2ajX> zYZu&~w}PLZ7j1gMOP?Qo)TEl@a?B1vWFi1>kVu@}aEskRHM1V@&ypZ2FzT1r@8&2Z zL?}{B!$`R1SC=Qu=%=3|fG^KTq$eXx7N+zvybce(L1-5UvQ|7Ib3-<=f*Htl!trXG zE+@->?aoyh%`P=(ZLPK#WQXi$+}}*4B>?)-2y{nj#%uY9h;u zLDTM(dVuETJ%tG11CQI;?#(U%v6rOxhaPqRE!w-XmT8xAw?N(>P z*K8Xj!rp_%EN`5Vp#j_X*@=yVr0CQI+4SQR;zvRma$&;;1{?m399`e&v!lY+T@Fqq zm-wh9+ark0at}St>#H&o%Aqo7;QOcZgXdLYp?PG3+(*j`96U}4-Kl{=%>BkH3LXKr zPc>vR(Zbl9j>|AFD6+Uh6KHv^)8;H|W_CF$z?&uR%-t9|d6ZVQ^W1!I8OKZma$Yjt zA%$l64K4N;<;VEhgNJDO4Y-8Dk64MKk#h`(w%GJG?c~8C0YnKv5Jx_yCgN5=Zybu4 zT3ii>fFY!gaRH`9P?SE9xE9dk`Xn|84nsg(v{17LkDx4&vJG$>-(5 zh2SklxoO}=g5EpKaiB!#>|K!8M#k0ADbLjvqcd2s*|RE6v++h_vG3Q)`Fbx_n-Rp(4f zY*vj6q+xetF3rzxZPeSEtd)swTB?l>c)q%9No(g!oVce>#pB`wRSBCwLCqxX68hrA zs0ddmirH>Er8#dLH#5GKV14K|570(#gDe~j8nmvS9W1lWeq-b!$U1yke;c#J?SnLh z+5=hI`}=?Kbmpl)Sh+RW?=>l>3Jg|#KfLP)uf@dPJzy^8xxJZoSq5gh^bzbLUm%N_ zf>!#FdAj4PcM)r##Q$u7PzbRs#-O^$%IYiRwcO(9vB8q8iJKYmTY3|w4NByvDXkk* zs>d+d2-||IkFW(G;bABQ2(O)tBT9fmeDhekM{6te{EjgMeCM2VC2d1f#;_d$A>L$P znco{eg*!WTE2WLCX&|iEwULCy0SSa7OM3`j(0=Ub?sQL zoe~e=wvX5zBfeaEH$M;)KfImmL&s=hpRB=EGxJP;f`5{aC&ul>*c9 zSjo0NMwXTEu+s3DMuyOjmTu z`QSjh5#vfLfi9C~)b;0oetuthaoc$e8B*xt$Ieo@mki7SdFI*6< z2+Zpz@!6L?atiVpbmXnjPxLz+V@L_g#Ye*|Cdc9-el4^xI~#}la-wa#f4oy#cRZ%j zrMv|4ZMb-H_Q62!hv$I#l$!nO`S|1w3UfxV=9huDoZSMZl;o>MQoPI65S#{c%b^0T zSVt+^c|OX%GczV^aIj{+h4g|VrXrN`j z3=V!LX$-o*fPb20knGq#`MC%`7r8W~uHFS2iBKJMVl<RWL|`lz4%FnP$-Im>aB) zL13tBU@vc9G90YD{I?!X`%gvDfO~R|?%M3x<(&8?4+r|+6$>C^qEQYcktVe-ydJ;g;vXcEMe%2 zaD>;N)rwoy+s99(w773>zOI)CEUZrmE_kAtlsG^a6ll_`wi{~r?u|)*qh8!i7 z_m99-$W|ES3K1c}t!VAq^OY+Lh^jKHb3tjj%gdxIg=i)IVXVTt&H&)~EmSOkgx3?M z%>b!Bq@k)hm5Q-W+%5{xiq;$8a#b zik#Xg$sh%Zc#sv>)I!$Ub%OXamu}Qii6YnqUrd9Tw%L>Qy-bOvyuys)2b(8Yj>|m{ zMnXVnRzLIQXeh%E06PE=G*=X*+B$i;%uiW5zvngMkvWRyA~o+>PGHX_vb~FW8`gtk zEdqZov<6loS01aDB3ZGRz~(pyn||*QE?QwaBgLSuM4t|Ms@kWN)Yzz2n>Z3L-j!`3 zi9b<{e`1Ch4bSthBIv&DD9}+Cb<(*{>7IKh(^V`JFX;aHC~z(d6nM*GP*#c_g|4i0}Z$NYo!i6yJGTY9xwhO8_zCw<3v76s2Nu(O*&2^0W>fXD-NU zZiI`bCvDNqd7-E>vN`aLkST^LkIHWp(Q~`@xF|r2omyb8#xa@Zj)L@zER!2+r1LE` zb>uazmvHq17od_7c+R}~=dbW;)~gp~5x#*>8`Abbi zD&@AP*te4;unbj$v~wL!re$x^CtVa;0r|p^v0S)Y-qBryusFBh8TmJTCI!Y4%kKnO ziP5N-_^N&gx;K@O#(p+oGI4gNh@ci81f8tlYQ&K$H0^oVOfe=_t!*~gOxEob&z5QM z)?4EE4<^iD&=8Y7B6)2x9%M+t>Kz9l!bF2hMuwPO#00mR1tWz)M85A<**`3{u^VIY z{~_xgpet#jcHx*Owr677#>BR5+c>c%nAo;6v6GohY}>Z2oA;gf-v7JzUu&PWx@+&Q z?z6h9R@KJya4qb`N06S-<23norC9HeG}eyH)w-thLy1p-_BgI0-AGbqu2E)<-Eh(! z#eLH*#APgVYg8eWQ|#p(yZT4ULY4ADGfCMpgX>cq4$#L68H|9>o#_T1h&lM`M%!hz z=SkFeFd8G&xQZ!F^CIwwBtI@$2;{;X1KmojeiazrSS<2>5zV?L44C$>rw*7do%yYP z^~7E6i$K?dC-@?pcxO-cBbixf6EVUidRExd3=GX#H%Yh*s)AJ(ZX=}Z0vZr(*)#eeymQSv2Q zvemJdMRGee1VbDh+)h!X@!O{)Maba`gz;~H{?<1Tsn9)mwP_*5#PzPFAsQdS>e2Y;l75%oEP38ZJ zk^>a0c~IBzMEd!GP;m@BD_jEUM?!T68F;W#qQ(mmt4vEcDu`)@dV889brlZHpS10m zp~pN5CGJLT?AZc@rfxkxl{>1Ws(zD+jA**tW|Dm1&vM#%FG)aWQKlpp_qUoBWV6go zSHkFx90ZQyCk{wilG7AesiCL?mPJ)=pvi^{lom&J62h_K%Ucs}Es~Yu%Trp>ZawPs zq=NOFzFm&6RsJJFn`p$|BXhzDlkgb`v(5o+=~7>8Ih>X0DvC@i`Kwcw!Gx~Yl&Kj5 z|4?CKyAkSez}R&$hJc|Vc~e8~N02ts2IQCl(T9s#K1d1V^sQu$0(c9wt+IJiiuPOl z$_%UgClO%?CdDY!u$yX)1#3Bs!rAcbh}suon}w#pm+4x@fp^C6EmOE*^M1me^_jXk$%_HC zg1BLhe5sjCDGakSNnNS+%ybQHQ%1W@QaNECYm=?FD_Ag4okHnC(_AN`?Jl>~ml5Xk z1as9TOIcY!>sPhhv+TcN-SI33Iy$myV~+CvOk+C6*OPT?(&qFL;XX}4JabJVEa`pZ z^&R5==It!;efWg@a04&;%cNmtW-if{ z{tEe_0DCd_L{4Bwf}u;WmSu#fl%%Zz1YF4-^`>cwo&;F&5yY9MKw&V$m#H|~mmX_0CjRqS1i!COrxGoNn}bOFR$c++CGgT0DjM)BW%Qwtbd9r*oXxnM(hnCeej|O zV=W0^ER8&K!uGN-@}p%tKvC?OlyFhndns!Rn~5t;BJBnJsji@cn~9wvPb6weX?Js+^ z%aJyVK6AmlpbBf!(wZ+8S$d53;?QGR*kW0V29zirtEDW@?uaTOVU@_Tarwg)9Z2q zq3xO#N5JhntJF%T2%-g25}{R_l8UHiWkGNf@7=?v)#KgZ{~#DZgaTBKJY4Ve&h=8- zSIB0L#UJ+hEOdrX(y~%IE)~@j%t*Siz+b3V!u+1uqkJwpX#*)@hxzm2i{Lm=v3d6p zRdBmv0+dg@+yX)x(YS!BD~svs%{sSzotUG>cmNlRA8jBPODd0% zBev^o75MO6JU4v!DaP#8DdA)(Pp+c7pwd9>Y-Ex=$Drz{q&lo)g}ptV5CavKQdb>% zyq=s~QHU80mSXg@oODuBgHkInRgI>iRQ@QR$&_s^%DS1_8nO|QnWB`gf5J0% z?9UuedXd@E@wCCdkg4n1wYysGjPB}ypT9)K``%rCL-x^e?8By@3$Eg=koAzytse&G z=qu%_$8vYP`XFCA&LNVQBj(x#DYsw^ryF9vqa8`yWEg16Eu*}o1k*>#emi{jyS&nT zmIiz{2es|nFE;dPrvjmUkb}Vh4_2mTl~20MM+-)0}@EMgca&AM_)FXDgt`$H%62TAVzDm*Yu zf)m>@Z0_&1iw;|>JKvFDG=d;mfg~Ys!&c3a|59%!!pEd07Bx(qDKjK>(D^eo5B!SE5Y&9Um6V9gnC+U|~gx;0gKUD&*av*ll-Bxs+B z56&`uqjJ!%sneREsuDNA*4 zpW&>s?B~Tst>)ZnnGNs{fiEf7m{KPzDmAa+^a_5$BZ)cFrPt1FYM$b?0h));{%z5f z$V2Nx8^E=pwSwny!zO2aZPmW6w+AIn)ub!x&l9GV_K(dY_wP#-D~MTsCC8z&5M%Qo z6J{@@n@gu&po{*|zG3$z&aPyS2snuw@v=_@7?j;5%zH?z(ofR7iWdpL4*&EJp2>$W z^uWriq(}&Tmk>{w@l;NZGSTlw*RtA6H8y)QCzhVb?Ic6gz9jTW)3mn7`hKfG#Y_o|A`GZL1El;qKzP@vIGmfH0Qw-Y}= zw8#3ju9}LMf_WY|(yaTmGsr9QrqmR*CLSA~ZlHv3oN1DI z!fBaU`!B=poKeJ=trMF=rfxk&PXSG8YG_0})Y~Y-#`UQA3rmyOkD6%ADVt?v-Go64 zdhyaYEO67;3?*{7dh_7JQ`XTKm?;b;0iNL$=^w3W1ZX3{@X8;WSLLI!Yo}cJKut)Z zEDf+h1@JaL6OLJ>yu27Q?BgL*4MDqJ;DWT>Mp^mrpE9_E%Zj}Ts4ua`E}mpXat zoQ35Ty-uz3?uRAk{ZVPKP9LI#n?-NF_q&V6`E?eCPoi*&2n#~*0L3u}lM$PZ%nv0)s;?nW}&med}(hK_Tv1+ zqC2;P5`w-QZM8tjSN8pG3SFSj&TtpPi+!(mzh5f$)a>}yuiXd=XtWQQWjpkDDf4V@DEfFGGD#7FihiBSsy#IB2~dQ0Jmz_L}e2` zB=oH-HFMkox52DoLT=9`CVIH^w_FG-7Z$tfvL))?bp_7lut5^LsV*&cof1MynxfGg z9M9g24Bng)K{xd#Fn%?P+z~slOCby~$5Q+c$L~R%=BeJew6yS-HU}3M6BABUct9l~ z>^GmEn+_gFazKM%eGSW|=zWI|x;IpB(*kJ2K>V5%={kV@IzB>=tu!U_Ix60%9SxNH z#H&<-ikdm#dz^!jo#lM<7n}RCbQ|Y2xGN6*Y3oK-Twc&Ipc7Z~G6@P1ba{0)4`(C2 zGk^&jO&u~clmy$R?8XZ++cW)!APDq>oyXNGSR2j>!rzYcM|e={I1OiORPxPNJqu=y z7>!4E=;b%RREwe{h1%+p=1%xPa(8j@-ukdW#cq5E_Nx4Bo#W!UaQ9(p8r^X0=qNa5 zXY)4Y1~grYLy6!tN0#EmOByhFu%!4<)uo(;W?4D4x90rpo>P$J+y zX9$awJ!wa9j&bze4ETgGt+n%rdj8P33c=LM9=}Ia5kjCPNaQw+7bu#kGDyRz(>znsf|WBL{|@(aQZ4)yVzy&T!)>x- zsrG95NUrU>^c!t0(={9B;&0eTF4?q{cDI`7b70y7D_p`PDoql9_4QrJ(* zw@l|)Sv0Lw9v>!6PQj&-oIFh5V(*sDE90Pb zqhKEJ&CoOZD}vQpWK-AsH{kx*v_5k6J)8A1$F1kGcic%^n^#J8;|xznKzUL3wHA<# z*U7YFxSb^}jSl54`aL7#-Ce8^W>K7Dx{hloE(Etrm2^T9&!*(z@Qt@_^25mW_l$?g zDR&mR#V>~%wXTv9C8}zndNWSk-MxjFw_ke}>S@0R(`-XS`B^}H&Gz@`%N~+^8H`7V zA@?lA2E0RP*K(uKM??x!37{Yg(rJKhYJwRpnUb3!^41Gd^{g3qe4j{|7>+1?xk1#SO^wI9;BQH8aSL-(T|Qbc?!R@|AY$=rs3;I zFP^>r6e8@N+au!$lw6@x>y2pVjh(AYbK}lQzO3-#q08@kEf><(Bnaw~xTgh9#o0Ex zE^4BQBy@+4{d&Hbr2a_`KhnJul?;Ri8%SSj)zSLiG|ck{^?Xwq&VwEeLC$-Y2yi`5 zAtEr>k8o$^WoTYy^HtmfrQn&?u6Tku;eH}fg{Cn@ZM|FV*y;5WH?Bu|y;Tf~yWyoY z39Bg6wbS>klR&Qlex`kV>?(@w+MH^ zc*&^SOk%kqJh?%IiG=}mrZ!bU2`P6Y!FUr`yspr5Z>_84CjeXnpbRV|)txR8zB>K3 zi5~ToVY-mheKj?|;vFp8^;QiZeoUN2*}GgFax)HIz(0wLbZH2lLKWoZtb&4f;w?tw z^Vwis{|+FCAaJ5T-yU*izCSL=!v=H-Vv@NqzfVa(M8$kkE@uM6G;}OVq@SE*nt9_X z!y&4%MWqPB1^x-xNM8s}&**`yb~3JDKyv1Rra&0wS<4}=KvTT}ihK=DELi(f(0lw< z^eNNpA`+H<*n4^|Oru<1?Nn|TM(28j+c+Zi_W$}*>o|CagcSWqY>_YUObRi$HgJA0 zNFca{bH0(@p#Us$a-8ksna>o`cc}&E-GY`)xv`ABOuvHZwvt%xth(-lsycOqA%M%j z2f}U{>YIec_g_L9n974NSkfVt4D?2OMfxuFXPbyKZV0dj8V$rQqbfE!JEJx~y;l9i zyj}?P#sd;DM6tg!`z4@Q?WVuRY&oDueDc)tq%%5}aDCSQecAHTCmqzzZ(R2LQ+RH` zImyC3OB6mx@ih4KZd>6)a=kv!!;5V!qMHAcH9!TES($22fu8A})}r_a!h>h1 zH_!WlazIOV@WHG7SK0mz!cm5Nqo`NvbFItFE&CX6W?lCvsjg9RW@Tuq1KHXZ zEA&tSiuJ3a8Bhuy!yYB1x_8moCPQ~HZezkZUl#0a@`ilU9xHl8#%Z)eLcWNh*iABwgrx#v4ZYHNG(s7&MB4`5qP1}pt5#i<-C*yA}S#8eR)-j zP!)WVYg3}`7A18O&UV4v$1kw<5Hukjut+(8Sz81?!tANU%v5C$_qJKt(y5-5SKNW9 zg72OfYQPFR;k{RcWhbgyd7^?!K9+zaCes#f;rZJmRdA;DOiYo~*qwo%p6Ly~47OL9W@3p`k$ zkOvSIr{xs*_%do6W=St!qEfzSe!dezFMVXn)1*3vAe)#Qm54y0Ch0aC8GdEgEoIk~ z5-WOmHb|pcX@wiQQXtO7MWL_K+?diFpm`?!xNq${8T{~o<;V852o-H=UPacYeAV1U zrX7?u`UMo6d$`WH#&e|wwj$LPd|vQUr1&6ZHxFB&me`nTAc4lYsmb^Y)vrYR zh%tI9s0_b!hOXjMz`tmLm7%ehw^SgrrvvaGsrZ30=Jv#f@2EL#6@DRcZ$TRqce+fRB}|RRyH2T{Wrm$4UM(J4 zoaGE^Xf5FrzTGDvHqA(ZByCRdPq1?1gwg;EMVbs^8*wpv%9LMP04gAj(j0$TIoJ4| zOY&-GDn+ED*Ly_az{mYJROw*|X{QjOv9^DujMmWA#L#ZoJX)ncy)=C+y1oz>O|P&< z8XifSm?4}2C!3kNeBekMCqax^ynNs=$s{HbCT16|1nba^e)3EQWV4ITs7X+o5-Mgi ztPkG65zjzJqR|G3GFMOLLU{9sOG*Dr4+H{#6<17bs6g$|wE>#P~__?8hgNzx5D zBbZUsilJYR**mJcpPBbYa;~2c?Mm0nONsFd(M7>kVW3#O{s;zt#8hHOl%pKv8(3{gyD`@Ks1KEb8#~#)m-(Z8;E)LR441_GX!#$p zT<)7|Wo{lv)P_T>FqXd1eY7Y34|F9*LQOHj|pOU2t7- zU2}UzzSBlgFDbNZ7itde_Zv2TaP&>hKU(>UahJp%!_?RZ(Lk_B`$?=?ZyB|xmzeUR z1Hcs#;(SMzy2nzeBf=C*EkpqhNOU=#ej?Y6gvo|H7>HH0I%XapXd_N1_B*l{VPy5U zx1@%iRrev+Dmh1xQ5k5#wW6nJ=mN-qX;N%dzq_^kIzH)``uy}xsqX<= z2?evG{gz}r^wWr7ig#Zzw9*!bI#QA@D}986%?}EZ-zzR}3x8zFc?6upML$6Omd>YO zz6^$~u@peq(g&eu2)xvX-qHu#>K>}%Apq4i7ZYrdI)bQ_`npL2v(Su^d*Sa7tbrq` zLw4xHK~+FyAm}jx8=r*LcvFO!^*zEQEJSq(mFqc12lFEm`~aEnf&%Lbco2XB1tNlV z!GgWRLA<((fpsx3J$4ih=@5Vy5~-D-nh!een*~pZiItcR>#UWvwkbPrsZ=;vRiDr5 zfGanIp1C`0+M*u|Orqb5r;on_A(~zT_G{e@jL^R4ysuO9WTxK|kL?d54ygH2;C}Bs z;**QE)A>i%cXAg@h@_7l-$8>nz#TWlV{bsm3`$TtdjYqIm1%vk@ed<}16k8Miv;9` z(pD+G`|_8Q5SV0$vK}eQRF$kQT#*s9ks(ePG#J#I=|&}9WE&0^zkv|`2U%SshRzeY zLJH&}wm(4(e?he2k8Q!S!mMt63(A!VN4R`FiWqf=QTJ}mf?)X zGDZ7)ew7$?eJ*@i%e}fbw`zhz)qS zS#esbX9UEl)!J5tYgi4`SB}Vw>EEF>sH+-ag)R!8Q4m8-sIbo2!pcJDBs;Cr+sVG+ z5EsboGlls`Mp+=a^E&GN*Ld9DY|vDD_yH3|s6<_)o}kOtf5dm<1P2YRmHD++PR^N$vHtwCJT zBWUVGW%ny0s|LGNqA`|J@f~+PTWyA%jIRrTON?e!ZH)qc@w%4O=&`szP8~^@RvowXb_m7)FwM>e7^)%2j4UMGWqEA&(n2LNb16&X+ovl)HMMf zQQVH1vHOhHgxF0fvI-2WLw$ehK;0s>0-%&qK!x$mJ0EB@a>gHx_lA6Gif>3aq$kz? zJn`pxv*!Xoe>ZQ$;2WZ0d8c3-H6=!SVug8Yo3Dgc3U+y>!?rF|*>^NKQrlj3nI|(_ zej8~fb{k8k=j|Y`YZ@^RFuotc`}c1jrgj$Ug#NNfV08>%oCV+(38jZteLs};2{~^@ z$H1r(`JzVONSPm$YtLb9mMWFqxYh?A$ogzXuz@RH;pBBFSfo-uN5%MPN~T=}dbz`A zqd~LeU)>HBBH=yT7I}4Tva?mL0VTfaf#xBBLS>r_bs5nHMSC1zg-q;DKWN1@8s=22 zxHYreYQ=t*4)3M-YH0Wq6)0JuWq+Bv_9LoVZSViFiGUQInxNs1>q^{4gt8VJel8wt ziv^seD&}tj7h-DY9bTxN*2_H_{yv-E@l86>ekx>m1YJoF<#vdou_uWB9lX51#KAA4 zlAPshe9r8Jr2D##75@<0OSkV*+Qwf++vVUr{ zKkY*0H0V+Rc%3-3No*x%3+iMlh^&gBaWT-;rAxySQv~*%{*!jzsvqf)cTap*QBR!P zE66J`XOesG09|3d@FY=xxWOdee=c%@x$D*~+cayi;ZRPQVj6QzTLR&8XulG=ZpYSc zOZiTnB{hx8!W+b{EV(EZm?nVUkb}C<49%X&^>?QJX$z-@s1{3D&m-QeSrmMYHUm-t zV}Ys+3cbOmR~LPYP7p!OG|-tZKVwig(y;0)61rL4&*@jrZY~*awMUZ>Z_a%mW`6YQ zn0Wu#CzEYglcOm0Tq3$ok&P%t*w#s8?3llESYN~j0sp5{XQ>B>EYYgWv!JK(37cq#0 zymv{B5cO<(O<6eHx}vPvv`!~?;0iX9y zZI7~;!H`A|fJ z`jLJRVHoOqlLy!0cTt&xjLe*p4pe0>B+DC1<0l*uFHuTm_b$CPzZyb_8bDwgH{>lf z+yXHQV((V`F?s#6pj#t~-Y77Cul&AB1u=G<)ofef{Ad<*Kl&$0PI z;(x2qdsA5HR3PfRsaKcok&(WcY334S=K}8igAamiPo)RRy=V$|rUSVtzS0UQsTAvr zSf@&Lb;8|<4V@sg3d}IwR@tNBT20CBMaF(Q=Jo6RxVtcM2&W9gl%Z z1@@cSjPTUW`*NC&w=GbGglA2-G9dZ!DY-#AZ%JY3SCbLO-bwe&IA3 zByRd0+rZdpOg7)oE$V^nb;OFDe%OJl%5}R@BhY| z9y!=Ps&PR;Y6SmhxM{nxO6ou8+!Sqd0MFkNp--YVycBzL0DNW+`oZp)%pKyGH&RzJ;Wn+5nmTtVs5}vHC1(VBOddSteyPc1+ zuuP10zAOlIzkzOY6EYX#Ys%f!x!7dW!)r^Nr^RIHZT0grd>5W`uF#8FA(cjm0_NGr z3T#_`U)ggp^p?lY4n^+O@J?J0hOnc39a3sxk!!Q(wUDn<~|agL3IY0@5`>- z@|(0I4|Yiz&LtGpl8Ovd{Y*6JFg~bA?qgg@l{Q$SPf;s?p*Q#hwgD)*aO9GP z^N%v#a{m^dYmkcU;c)q*^82vgG(Wh#x>g#HU`r|4RBAE z178fxNqHwOxZHB)TQkTx65{Lw1aSnqtpd;YIb z3$|Uh5iJLQ5U4D8?}ny9HvsF$L?A3R#S=1N03fvZj}cG-Qm;@xrXV?NXhFi z^`s2DB^chCY~=o`fQkLms=Hm62)lj+STC`eU%(_9W!4#PT3k4VxdU4Jp!KVJ^f>(F zvI;>JuF0f5*QxSst}|2sO7F`+WqaRb=*LS3uj-aE$zAm~5Ul&CXB zFL<9I;b<`bbEaD;tCC9jqy)xGxr_xI{hjAN*>3)uUlb&fQBs~HkkS6(FOWwQLg$+S zYp;S&+>`#Mk_dJNR^(3^7_KCd{w1Fb;;Qe+jTYXt*{&G^82JvW&x9i3a|!)e5ar&~ zSOto@yLaB|exB(pQ2ciHG9VAaqG6iqxat#lpgXW1(NP;R!Z-304X@hOz;ixNgNxdU zhhjBPhD-aJwuUwqgAo`yNGPxy0oHsIp}xdt=mi(}$>?P#H^>_rM*~M?VK|99hi#-z z$6WU1&!pC?ckNRdCH8HjR~gPkHQUnkIV+zxbf~F#5naBADg|TRKM8q8>Fco2d2~zU$|fZ1EEYGlhT6 zms`mmgjerlOo~f3jbbh>7BO5YkaS6H|GkRUDkGwwSCm+P?t!kvq&BvnEW7lUGLN+~ z#TXErm_-U@rO^T;Dy6_s-Yq^kj|yGEhMD0u!*N>Bc}-eK$*k#!2}jQ~hQXJWN=P)5 zO1FgC5m-Egq~qcG$m1bruyI`2UJ6`H49)W$tLyW6`a-j6RmisE==?#(p!Vj_Pt{(m z(O6heWQ(euEC8b@98YbN{}K7ck?<30&Xa!;WVsE4;1^-)5{||z@o+hnucgPU8WO`ZS)qjXkdI~i z{`HwYp@evmNQMeK%D?!vg}O^5;RhM&%i<$W_ACXDa>T-;>Zm$Jg;5^2CWidmkW@ps z`5&@5?bk|H(?Xvnv&u*9WLxUQrLbDks8Zl3q&_qrjPEle+XEN~2>&NT)c=jKpOQ_D z@c)e$EMS)UlRmyV&PP`*<47H>3splQ6Q3}igfM#qQ}mDGuOsofc;U1^rd4)oc{HIy z(_G!y5pb)-JK1nAyf*IU74{@#wC$^^n(yYlUNPPc-nv-oN9fzPdMSvKJr8`>54zUP zv!6Hi20%}HyCIr1-N?($Y(`WHaK>hB=BDUaynw&w&0WO>D*7f&RavT*;DQBj8obn^ zam&*p5as2pslO#wt36{6A&8a zLj}?R;$x~Z()0qNxp*+LR9#t)387F>ETRx7Pz!PK38kh@$%>09b$Fb~W zmsk|pL#{AxLTyOy)E2^v2SVbC=b*MS9$*-R6;FGAZwo?m7;+B*7^u0_1QWviNO}j@ zwC%0@L7CKmTl9`e8}4#>8q| zFFEM}0Gs$+ldD=}898TE)*)gZRC}ro`i%L?ai)tlayyPT)k>V1CVIz$vKhliEU>J# zY{!Z{+!u`Fu{Je{BjP0R0Y2ELp-@Z@npY2&he%mjSqqsD?6c0jf}O}?(tIEEJ2SSw zzm>U#sx-zy5=ITQvctE{;<-r@<`R?6hcM(6#Y**h%`q8x7j;K9b;!Yz3xplY7)i_^ zFrk5KL`b{SO46_A(s4gp2H;WHae&(_ZF!=f$)D&W4yj8?Q}_Yv)KV%VN#DruB0X`$ zggFCD^2E_6RKr{nJjK5wI;^NKQejt2N)Rg)Bt!`h&uh59wT*FVG*wSMkYvq~=15ga zuQtwR_q=^w4O0ed#+p!8F3+05#~npiKXVyfQLay^ca4fh%rs-Sl~UP!@c{06;nvvn z(DaBA6cZfr_evZVH*7hm;#H58Tf2J0l7uwOYQXP6E>8FSHaz4=Hl~_P!)ep!sN0u* zLO+h^Ff(8^!mU4TO0uG=g}Y?thO9wVD4t#Y;WqB5J@aO`yUF@nEIY}lZS&gZ7A_K% z=nq!}$H4U{Mq3uS!$KRJ|1GfQ*Ap`Cr52|Ac%FUPGo9(Yr-Ecp2n5pB-Si)h$*-eM z-CT`{R0m)Y&*Z$cD<>I{=cO&}sK=)!T6+k^*@~uO<5V6r+QX-Cf}2N5B=aqV6}P{v zQDVkT8&7y{zg5ewsCwcmBajS@=JBk@xCdXdchr{=UT9%_706U2UX236*LjsR%tj^C zuba!vKX?VSFRFw+uxD^3$euNwYk%=N5&|e(#P}I%B z0>x9i>ZuQ6!LzKLv}u0vhsJVj7d%3s{RE@hNBELFwthubTxmRXy=$XFXZn56;R)m;s1ODtW4k`0fAu4`WvT2ZLc3=*Dm3 zQ%Z68on>1gpAwUNs;>&Q5;g4=#65#u zi{jp}$$DMb9HWo3aUas?wXT_>sMems1@LL>@d^m$tDGOaJ)wrHVg@xHnsucD& ze8~0F>96!ZmCBi_m)mHA6`yj!_ulvubFyY_h)}5!r(6uRxe&Z-VjBZk#H>O^io5Ok zjWiLhwa2_{(;M;%lbV&&NBP`^i%VAFrAG{r>_0%fbqLsjc{m(`n@Fp3xgjrj()YHj z8!C172Y$*!ek|_z{u3rK#fB8>^~14>HVHQL;|_)hj_0)JRCOsc8leqe}1wI;GXvJ z`u%POYTe$fKU1|rTyhvSU5)O%Kse2=cMdF}Wex3CT8L408u(bk1<{UW_rG`pCeqfO_`DPfg~~ zZhsBPS}ydFChL$8KAM zg6Oq1qOjcVS2c~)h{fRhkADft7<1Nwa6VV$D5(FxWyL?7Jk6i}1E~KmmM9 z#53gs`2Kngobmx+;C~xEiU8by7x4f355AWJkeWA(08tQsEkC<+`Foi1uOnkc8kwe< zz6MbLpHo7p9u}{u9$=65*W9@uQ23ua0&nnt?+iYD6nH5(vdB2iyhDJE{~%Y0M*g>h z!+!IO}Uo z!-120g@1c=*kt&9T3i=oKcm~&Ma#)ek8^CsLcS?2DK_(4nG|b}0Rad7v9~xhpjC@# zno$c1xQ-}NP7QA9hJ(5n?F?-RSd#c{CXr5q!;EhA!T(jbymovg&@jK_DrHFsZXOwm zvHwSP(`$BQ(QhfiQr3Q;<{`88APd0zccz6aNrR^WWzvV!2aS49Vzi{pM{%@0-6(36 zBAYA2Ek9C7kf({ws9}K3U=Iudr^azpq=~OSP&d*-zr63wxth%Wd7BlkVKW`@?X77I zy=~zq-mzNqpS)YhNE1#;fmlQGYkAc`D=q3ijAth*mf@g`8f?FOBajO8EW3njm_0V` zvX%sjO-g3IOPy8l_=!ROe&V+wSJa`mL7O{rmevT4QJ31qU)S(;@&aEnf&(;(VVPthnW9oi~LXT&2+DTssAxr8VL}# z{+cH*z!Rigb|E09Frpzqro1a7BLk~65L{Hu)BL(Jc$_H`V4q09CH*D82&M)jCdZ?L zStbZdO$QVw3J1(NrL{_u%b0DCLI_)btg5wF>FO3$8E7^(nCUKS&7)eJOuzlCm{+T+ zI?vvz2AWTl9~@rc-#scT2yoQAUI9aHK&pQ? zL;gM*b@+onUZ`wFnk+|Nr9mGjXG${VV)ZEHc_b@e=%i+r!DS~1qY{%IHYzbKgCK6l z$tYzBP6h_QA@mAIMYSnkJm!&uGg8C?mM{P1hXk1uEKBQ%jGRU$E^_Ih#?l|#`EitW z@#!H>^A|`LE(!yUG97Y5Q%GQgZ{nR@;z|2so2kJZ{aboZMU7)!QFp97s7mfK5(1k~ z7M`SothUQJq8nUd!=e`EW1g`g2xwxGl745;we;bU>j1|AswDV#h;pQ~p>M0Bnp4CJ zcgg%^Ua-P`v|`2}de};L(;z;SNd;!rw9ADQarJD~$fZP5h1)AtL#sdoZs|)z&7h-R zwf)e%tgsm+=a2Gt5Utwb*d!SEN2C1~9O>Pd#fuheJT+;J>Myg1&z;pUx`YY~{H|n| zV#MvHHmjb^DGP=)<~w}If?WHO#x<1+4_HpN5So$Q)v;=sG3!O} z`^F@3O`-HN%G9ii*9-LYhsu-#nl70mft)%em!*(9wOjc!i5W45;OIU` z&`3%hB2O}|$k8Y!OaG3gb*oO{VnF;b>O4RQMT1M+5FFOBDR7mGS=bACh&jqADj@rZ zk83cb+Sn3|m8=%9YztqOVdoj&cT}&2QzZKwA(wz)dJQ(<`qg^Cd;*y%kt=le{!e^z z+E7U&Y`=CPPXbe{3BszJsz`*1l39vx(~|q9oWOcmdw51r)hM#{9{&Yas=C1hI}3-= zrrzxPCh72!pEI5h#3*K))sl)1HmpaJYgTWt){GyoE7;!cJ%-f?KE`(XziQz}0u zR{OdGv+;IZZ7bXz>XJ1(j)tEC5}KaDLksR5{JXk#0n!9)rC$lHvnIlfQtuK7bG&8A zC2xYr{IDp-6S#-s^#OVpa?i$Ay^~9}wWDL6>AIsOsljRf?p!n2tY|vJ zsnS@~^Y%N~_vW;O=qJ>fK_6_qpWD%9)r#{cviz?Z--V7aShuZk4oZ=_jMDB%e;G9>z}W>Qg15+$!cnD z%ED-*Js!eneCJg2>QjMQLw*ShUoL!tv|@6_lEiwjy@z9qC$zL8b*ES4VNld- za-L%zcb%-bTlEFUtmO==jiB-MNHLZTt|%gxf8?SCF0U~g$a8B;73s0f3{+sLw|x(3 z_gG>9x?O##87;Y}ZP_XlX!l^KQ8&!;ro7*FYJKDc_`-Qbs3<8F7WyQ|bFQllH`ZAL z_q;Gs#5ZbSlXD&@@2WQFe;!V%=Pc};tt(VL;8$C61bT(pyH@30#6sK^4Ae&LNE{wI zj@DD~_$Zf_vK3zLyBS;UZv=If=sGu*gGaPMWA|Z-q9Ii)C(>*=x>bPBD)#M{#ZKtW zqLiO-GD{4?xF#xX|1Y-QDY~*iZ5EB4bZpz|7#-WTZ5ykj6}w|}Y}>YN+ja*x`#$kYKcuF*5yGTP&J~+AyEoj(PxxBg+lmb$9KY;x__O-;FC-m89+#?|wj4;9;> zWQi((2GN`M-7R}fIXo(5gg)g5TsoXZTR&4RP10S)x=gY87Q!2i7e4zgKOeszKtM!L z8VF_gS|lVsG?ml+dmG7HzFqhI%Ht+6zcS*kMp?!&MXVhmdTuw_4N)jPUu<^hrdY2-BW z@$?>{dE39#JMuBNn}rGHcVE;a0N9kwIOfcX9^)!cR+MqD$fwl>jc8VuJi@X<|82eC zj!Vat8-|@TdJ<6NzV@0xHL0yk+M@JLL*L{0$KM-IRrS2GBCCxxQ%qI%HJ=G(3WhVT$xhiX{wGL_hJ=^6uJPeN9B^7nZ9z(>Lernw3kTB_`W3b~o4sL7(po zLg+U^HUR|th2SNzWzWAXVwl~jJmM9x=pF~^e>zqF2sApxR<~8oe!SOY3biA*h+CeZ z5ZYq>xT04~uoeg;Cs0D9%=Rdg9qUHWTL? zW0OtcbYH0+Bi{Co8(;A>efmz(rG zZiv*za#Ooa}em8~` zu+Ui%0oKYk7%>c=iw(ef7cJ3xp5_NAtxM&cGL)fApmGm)5*%a|ILdLcMT^k(6K1G2 z+p;dVEG_BEn%Dj^=q*!)V)oNc^)FbLy0*it;8L3d!Zk+KKo0)oBA) z2-il$;C}{oaaJ?Z3#fvdgroYl9l&>O3AZr{mF~Ha3O^=C%gaLOt4odeWf>TS_ECZg z4iiC*JLn!fNW3->9d_fDwNm)5Ma)v6f_)Zy7Si#yd(yC;q=O<50z#oj}9`dc6*F+*=p zb>u-)F`C~z3n)_Qul4oE&~U7@r4>J3`*b~C|I5L>d^OD}bVj%U9jTJu`^VkL<-ym< zg*@`#;)QDLJlJYrbX#^zn_a?TlT>q?-5g=FTpP+?$F%}G+Uiw1Wh@{2Flg-VA9oJ| zqV$BqSuf0(k+FtJFVt1&5>Abtsir;)h* zx2yK>FWB`)c>&z?K#yPY4=ZB8!@|w-W<1ou;o4xa9%6MNgD}arj6izQzgMlxhWMX3 zr+r0Eh@DM%-G%RRbWCPw_GAZ6>Eiw<^=hvLV@8h?Mz7+Qg%KJKN}}1MxC%yHp1_J1 zeBnK|c)$zaQrPhfNzv@!@#G%l;j6LdmU!V-{f4!=M%Lg%Y+Gqf=U?8hmd50qrOH3#CjqK|(}r3%X$1gOXrNLEKbY(vL?{^_DNWOal zN+ew}HC@9kufO(>LN#eVGo0=PPS6F61#V1i(FBYHZbY8I1^Pj6UC0NS;xM|EL6(AM z*a19lx2j!?RTQ3Td=d7Ku+ME}Bk9tWTi(;3KwfyFK=;1KvTR7}g=0$HcFfNhRF(>N zc_V_$l)td8#w%%ke25%3tk0hJGen^ta7wUUzP<0_u=`GF1-RLQb|RI}uC78edh9PujLu`lxdRCBwgFBh=`QtJF$5lIW9C-P_tFQt4n+i@E^H1HegBVK-|elv0&Fi^@tkG9v(YFcWbqkVl@-V^4?SqqJ3>- zExP~_(`$sqF&E@l6_~EceR`9>RJji0B4HL;gl0LtKkKY!O)R}pn68~9^*$)-lmJlA zZ2Ba}Q+wr1A$Y%tZH`WYEN-+tXR*enYUszkbyfeu_pBJ8fHUHQzoZ9>6z>}xOVY9F zX@k4kq4=($R?MV37B-=uH=3QyrO#F~Frn9C)LpLZCf|P`#bZj+y*{s@rBcapPg`I8 zxf4!N6RYSxddD&oQtDP@D6edSGXrSjl{GBFSi7eTFNrYv^bDRAHwb;AS;++0Ti3hC zZZPbL|C5%=M9N3LPuk6ikG+$ySK9p`!n(77#4H=LU>4We)ZE$=ZXT@N=)Vqh;F3La zO;rskk1*Dv;J0IVb-{S8k0ErM$$zw5;DNmq?~pkstvIjMI`3-v;nF&1TTIdJP}=kG z4*MVIcfvEl*cu50L=XSJre-ApMEVp(^>0gPE>y(P|GgiPgQH5RQAMUoQ9(n*q{Xwn z8<+b{{tg2x9!#o~Tg1IE?rp=d(!O-XL&{xH`A6T|s=PrhL8Ra*B>@eQ0`Rto^xGxX zqGhKgsYBn1KxZ0HzR?=D>u^Qif3}v+!t`gg&pGGAThBxKaeLb?mf!rM->_OQwsP|$ zuXk73deZx_O|w;X1h&ZA`L3)t3HWT_B>KQ&`-00hrchaYP_%R*I} zdl4q}mFe5f#4#|J6kWC_OO0{hcQ`UrAOX@9mQn<|j z82YR9hLx;`MD-T9XaAzk-hEKP7WLR#rj<{2#DQ4P$f6oW#f+k98$uP9er0!2t{6wF z%ToszYDcI~!N3743Yg$AYcpHVGdWpQ+iZMjEPD;NJ;9;ZZfad9sZ6tHOVqt}GYLY@ zcQPKdY5{spCV*F3t{3s@Eb>o3h!Ta}IiDQ(s0g#iv1XA`&l>E`iDHP%1 z(%glzN1P4c7F!%|eU^r_7oo}G9&n@#aATI*Va{F8!^2z{bkuBU3UsG0)hD=eba|ri z3dq~S_uwH8m!DZubnDo;91POyBT_}RzfaBDR=vDYz1k`}OlbBtV(_s0t@ak9xifp2 z51);3El9TA00NA&&}^U-Ewe4EVaqdpb`37jn;kLwS9yPZMsA_x?|D-XGQRcwi~{z| zJ}J~+HC{3Saw~#Z#_gh{Re|srIO2cRUEgJP0?py$5B5cWAH|arILBl1=J|fDW}j%c z5bEt%8{$shIFx+AV3B6xoSEq-Fu!FBW9T5)TKISe1BgdOh_|6+F>aD+$|Q8(w^`rO zw4SU6tXS@Bcw{c%gzMDC4q}C8N0_kVF*le7>QA}S79_6RAhr%zIm2VA6L+VHsH>aZ zzupMYI1LQ%V!_o99TN&t)F0z$av@#aMVn#A1JoYA0$zK5Y3crKP)Vm`O3c55`a+U> z_bGV!VS94$gJlFjn&Cer_6ei$VuJpPR(DFW`oPxWTHH_!4Yw+C1#>E&ydlND3s*#n zaTi}U*6V>>R;sv(uUap9z8pvoxm>C+Lr;a10rB}iOX@*^HGKMS>d0T{|H>a*{r_k4 zMXZKQ49HTGQNdS3|FoaZw*W#>LWChl!J=ZD{{{u~5@ME=1j8W)6^^=%H@5@^NIe&{ zLpz;!&k*IPVZv9k!dk0E;mOoH?hi#5CgU~gw$~|VulwPo4(H_-9X)jxU%yU$KUbH> zOkLh^hA=t^{lGM-GMxFDMbovB!-j?|c2_z;8tcOZF;P|d(ppsdb?SoM{RfTCPqlSs zGiG2hO?B7)c(PrYmCv#td1IA**=S(aB!!1v{y*D6&%RWZ$EYA4#=AW>dGMm8{`8nZs^!RqQID$qalYq z5Jcbn<{koj%4Y%E-JB2V;+`o-ENtvh=u&CsNvFL_*VQK)xJUr&P z$LCuQxUQnavTczq2 z2r(D%Y1*y2S&x#JVSNhz$pME@TO+XGXucWD=GGo!b{-v8)4v%oHzqH z1?z+1-!LD)@4b~$Xc+du|PXYhLtGmdQrKzR3tdSC7pQ&i+Wiaq*F3B3f zGMWBtv&NF0RC_fN&~1coO5Y+T3c%B1hBMc0Pd|h=lU`DpaVQ%{d-V;RJlIr} z2y-f1bv|-jmxSOOD9S0fR%rm3Yur0FzsN1qOl{DMg_!7IBfMw~+5zUN1TLD|hY$bj zmnd1d^h+$9a&9$?<1;J(*hOQ4PRj}xZ>GuY9PeKgk1qF*YYyr?MndDAg>epG%O=m= zc)9bqKPquT&G`Oowffz^aw?|4pbx>eNl=OAn4h5*80@6@i)p?gPR?C(F?@iI-!@q- zW5~kM-m99+w=#4E(V*CyGu_ErsW$W3{TrJXgdqNqs{Iu1eBcCV7XmD&>61nVyQy#T z?aS?3F}fdn-Eqtt@(#Y{xMCp#?rAP5g$!A%4 z4WRZTUHOHn&+4;wGRW3_p}qL=wM@hM&p|Rg*`R(G8o1R!!i`XAAur*|Kd1#*=x}j< zsJOoVY;UFwFMR-Nu7n>WC{ILhC#JgQvrg7Gc_SGzz$llIA!5_P^nR@1%*EBCm@Kn<7hqhyXyx-WP)~KvsMLvz0|g8Nlk1%tQ_O{W99_ zr6O%@vo>`CxC^2LQ$pLf0Q|Y#U>$1ujl(j2b;=^I`fhC?6m!& zV;(*YcRQUw;Nx!Zy0dN*fx3h)fM*&2XVV$P)-WPUi6KJa9*%vmE=m)#mmxQ0E&wai z=be9A4QzaBQL{`ugV!9}BKNgJQ~-F3X;NZoa$+OzDecTUkzL-^DCo)O$d7ThdYhrA zHh{x}`;OCK(uwUYA1^2d{mQ0Wa$+0?Y(_X$pU+m0C#Rgn_PeV1d~df!<;T3x{?yE7 zwM-J`VbG4jpl6XS(0-D3z&RNX0dSFGn@SepLQ`}Q_D~Qg>6)+DXEh&=6_>MAoy{=Y z=3x1;rl9~iNQn0USDv51JI(;p^I#X(sNvGguTbFIDUw5izf4b69$PY_E!hKfvs zO+orev$D}>h5sp1wlk%O0CY#+e>Ww*Mv%CN+5E%)K%LttTqLFnG)7pqGROlYoaES& zm30JH*%~XZl1v~*C59F-%}Bjj4sd$^zBs02tc;J?_|MRlCR}XqmexBR#j?Uy&FP_z*9h^~wEaQMLZ}`(!JS86cY2-nLq>Uf=lq zPR4}0Ve1{7bdCYMjoX39Ljd3Ol9dz(meyE}yDegHcrfq=41Dgk$HNw2FI+kTTbRH^ z7;Rsi!8#H6i3Zj%#~=LfJ~+LU8LztLvuaU8evA_f)wh+lFXJ#;<|?&PV1&lYkpzMQ zD~_6L56{GJx19uH07WSMEWngquku_vCTJnxoTRa)7!fOLMk0a|4VVZGThjJVWztd) zZRY%tPGR8sLe{9a6& zT_8!z!;YN|Ps&e= zJQuXJFx_hs0cGcMiR}y-OQ&s%b$EMKj6W92tl)gMc4Elz|Iid;cNU_U7D@!jihpu9 zkX=ek1?`gfbqZy61)#n5aUvYSXK-bI1ss&WYar0tqEU4jnfC8{iSFkBu!@=CJn2S9 zZ&H`EL_sMcQ|DqE=0c6chH@|=;wi1n*{H(33!+^N06Z0C-9$CgRV^DzKr6o3TMz(R z1eV?;mOshz&>)BOxn5dn)`Y6EA?wJ51@C#S9E7dQK#?T7X>Rda%Z6OinPMSxG#zhA z!vw?W^6xTibj)#wyt-L6HCqj}P6$ewYtXJ*LO9u>ZE!v!Bwt+k_8z;9OZy>x!#KMu z$Q{Twb%w)8nPJuD2*O7X-nGHn6CBYh!W{ADCYHHPDnjL66^EF8oJo;~tb*aZ&Q>n)M2EaG|A&p^24)ONECkzX=6@k`1lDyQd z)~7f;Uo=w*0PMa%m;=QEP=>$d!v@`K)982?%e0;thM%0phN}?jTc|o4xnDbC9|IlQ z<~(#Ugbhov+1;#H@Ab5vJmvtyk>__I6N|p(>Fc#}3wCN&8eqR~N1Xy{zbbP`DdViG z@<>T$7QdY}0>H4y)Kz9FbFQ;O1u3nIy)fDY>uQYxg6rGP(z4O0gt~`>Md>)>7)3ALo7JGo6A={n%1p)ac zsd)yI6#%b$N8gssy@%cILg{c7eh>z&<_k~3egqJ2i$eJ^La9%TGrJ*S5Bh`-7V`Gk7frlmAt!d@z zNn>QyRU{YKj2@P~#)Sx4%+^i5uGO2(BQn_isEAL~@Zn%&0?B6S*mPx^XE z*%sa-Dke@d2PYYODc=Hm?;|IF$2rcjI_h0%XG=r6q{!L>?8(~0O~j|6CIaDnC!W%0C(a(q=w?*)sMF%P^tAE}Rn{ms(=x_#BTvIy) z=fhZH#hWb9n!k|E7AD(8OIy%T3-{~=(QTd;iGTC&xTf>KGix&w`RbHHIA%`4>2+tF z{6fCjlCHEm3ESoTpTKgTAt(6`tj_-)asO}m@~8SPUwSI@ipc!U23E$u;gm6u6_wV| zwY5=t!IYH>8u!4Fs2!{({}{?x5l&7(0$&sKn4wSKo2JtY!>3?Kp%#*E-@G2sl;Z>t#auItXO7lx%%&Jvozo8uwjl#fc4mLSk%&s&xtp9`TX(?`3xH` zGe&>bo&Lt(4|tMy2-3;z5Z#Po&Ov_-q*$uO-QLm_MAM}tO>oLK$2k~1<%}l*Hk>H- zIgWfa?3(I^)o)gl!=gKc53Gl@HBX9Ac~wcT@;oD~$&~W?=-*Viw>4F*j9S}iXSa3b zl!%}mr=bOMnpTV(bxEhR(|o;w+D=gUHQdL^%`d`6hZwg^Q+o=Dn;PkDJI z2#{u{zA`#9=~2G^XOV39fQ3c>_}%3x|96;tUqL7U=vV1*RueQ5DBk02$1#(G&18~^ zUc&8Q2xZ8uE*Gm-^j>?(m=IDe5l>ga*dHT`AT8P`)bWNx|_NNRonco~}ODgergKK>j=Dyj+iMog5l*Tp%hLu1JDK z^K^1KbCIdfc~>Q&r3rLSgeW~gR?RFM5Y8sE6aw;S=$9xrsRCXU>Vi|oR}<6C6qgVmW4K2Qdi8m?xeAiTS^t> zz5HUd0up=dh2@x~!C7x&g##P2Ep=Du@%_(Aa`FliIc1fsnuyywFxZ%`m_K)VXFxms zg9r&=9;@a9J3;xuqD7#AyR3(SN3y@v3R?x2Q<+9EV5~X`W_$X78NC2{~3;#L?e)&B~tv?~eVZ{kP1 zCT)MMK_F!;aUEi%9X&I^M0Qt8{)la3u$7dT!**>R7`zq zbQ0|JnS(bFFwz!e*=tKa+Dy5;ww2n;1Mq086=z~)2nmpJ9xXbAEY*PSu z519CLA0?I$kkYQ*_nZH2M*ip;muplV&U+7Q{xO@RCQ4lD`g`*}hwuPY)YUCzz&0+B z5l&IEkOu}4%+Pk|?SoWf)Fl?Xt)p*KoZ%I1t0f z&fFk{&k_yM$H06O+>+i!h}W`q)H|DPN5wpn-W9@yJ_!y)9I@&&zb4kiG}>rT0JohbwPOK$pTnkW zGL-WP0zVQY)GZj}nh_%wn?U_#t(O~5icVbmQ{v4oN>VoZpUGdA-mfYR(_+V`*T1Xy zs^t7ij=5Gt(9`-VFfOm(xFn4p=@XDPDZmOVPKl{IWPB&=kbMj7-yx;U5}worNVXE49Q~A zm`a58zI_xY?LhvhUN`887IW47(oAJ#7nLH?bA9@Q`vJ2vnty(~`~fKsJ|y}yK4UAt z3*S5Clibo<8L*M6?xgi)kbMJ6FBFvv(E@opgHIAw^OH4VgcS;dF><=kJwSY>3NO0n z4tCT=j`qb0+!uEct4zakP;L+iy@9%7 zK+~)pX3G=kAEjpM1Xqz9ELAA-f9Xr*&<`bDTYK13LI8jwTm!&(<7L?MW=*+>{6{2f zc0R#(wM>Wtpw{=>D;Z4)NgPH2qwtfw-^`Ct*~r`~>{f_Q#DtOW_3|RLxn6)kSH^a; z#miIDiPK5@TEUkZ;f0%ls!^(?+kp_vDeLj9JR!wR(F1#B*htMjV@^NJU{DVkrFT;A z2Au>JK(i%S54PSBW|A@Cb|r`qC{2^t6D;kkVlPZa%`fyBZ`UH_exrJ2?wk0XIYI6SWxnNOlWEtx@a9nOT_U}O@$w}ylEV0d zN+nkrCm=lsae%`NQpzxHnltleHfU$FZe+3xV7z^dhJ)oME3w}lHmG)xf`ip)iaq1N zKCy2~R+{sc1Bp9N=%9AknU1XJc9W4gohD40zLyv&dxs(gRy$cMAdOn)5l?uAyfyVp zoHQvC54VVPO==U5Q=zFJ(Fs)MSK05Xm$gDf;JSH7vVe%G!{ak_yyRh7BBjkfYy#Yx)hCuee!|dne`AZ5Z)8wQ7c_Vf;EG}lTa_4{p0oZ?uo zb@D1Uhd6wy*+udOgI3ztbo?SIQM2yb+_W2qXeO?wR%_9re6KafYVUIG|M)hu`2;1Yg={*xa;GH_|64r-S;KK+VmBJS=;H(x9abCLYan6=c6=O z*S*#9eoNfAkuF}hodvXH1*WxefC>nbRx4p|Q9-!o!-}Iv%Xm322XHQ^8oawF2UGg= zKW$Whw!}l5SDb)AT(#J_g9yDHnoFKU=lrcJWuRF(l9@fvi z;n%prDIQNYQ=QONIq22;oDuEQ!EgQP$~$HZ+MWs#E_vvrp4cDz@`bA)fOD8Foi+Ci`)t)Sw*!v8d|+l7|`dtBf-$} z6KinrTIlw6mS;`K^&j)j)3c53Z~`pifBh4Tv`G94MwN^$3^TWkslXF2o!DBXF9uhm zqQFNc_Mu_rvbi@7jBV?@0H2N~Pa`kzgjnWVGGbkNT>NHCc|Z$qPP}_M4zkp$=a#(} zJE32{^)da2W#3<7oJIpbNWu#Urmj*Xd63EfktfI#H|db3A=y0Bk+a7oTwHDNvD* zQJ6B}7IPn%rtWi1Po@P>wV435;(Ea4DSs6`Qs_oJq8E8EZ-T5zHuP(~bQ+{w)h)WvCm#CSTZY ze58hblxx5~xgL0bG^TcNA2XL?7QB_1{2YaL3?7^D(q77 zJ{jU;3~UZT%FLCBtzLQc&Uftb{^NPamMYpA;@O$RcYeAK(?E~!)5r%YM*B0e zStO$@0>Da(?2;3gLOYwV6yb$xV|epxk+#nFmk}*@Fu!LCcUStotN)*DU|Hp1QC=A~ zN#i@hM?YDz{NY^Eu_n)Cfc$odDCch@Ia{YWinGyZ%%6sQ-3k=a?b63)yWUG1AJ&P% zUViK=ZR+*_A04s1Ck&}|yg1Lw%g&WgZrE_Fb$~#qolEY>GrhAJbzPM6;9U!8y>SFz zEJ(AIn0r6{uR~vh$ttC{+o|DGtl*$`Gv{wzZ<}M^H;*@r3G9ZqM*HjcEw$qrO1W3~IA1jRMVeQ8 zh2Q%P-8m=Jx!MtwR!aYhTo$_Z)DRDQ6%j3lLB_klL$-)<%hnd%Y*VDa1v-Tu+d%+4 z*QU{l!ith*DI)!sePR7b{+$2-RCfEA6aNgc9W0pssceQQ;{ra6>+ zrso8c;I_1$8+gMooHHk2{sRO?3MQ}o$UkUH!Yd+T2RoYSO(2W%}had z+p&AE7__Jcg{-&4YT?!K3ciWS5uuhDp21IHDhpJEg+jO3h~Y{RVJzXBw$4!^wy4+l z9Y0Q7w(^x9DvgU4hr7($w4w8x*Dl~X$qrH(rPrdaApKH)cZy?pXa z_|s~;PT45+>oH}9KdaTqc~!u51)B_ZTwN%tjXZf|Jul49DJ^+2b5#Rb;h6{5;%P^{ z@tyR^rojIcTef-PHa_x7N=^5~cSSbb(zAzOE5Tp6`L2bWPgdA(6GG z;0n8SiN5a&Iaah?G!r*TQaeU=2%erBK}(X{E%O8x)=9mzG0(0T`J-|oC*D1le+q|A zFvXKR>1VPQY|g}9lo`Ohzf!qYGn&_@qhl>XvQe%WEF)Cfmcpq@Gp~j+hXqLKA&6%G zL5nD-8au|#u$-T+Hk$2*%CsHfB0mqaMMr6sFR$AeYqUK zh_I>cqpmw~Q5rn%QrYVy8XAq7!Ag-^)TCL~9M)J@lsv;%i*zw)UMpZyFkexZ5VoE^ zVy}aAm{B^@6j8LU4!*%r>dUyQhILb^EOlre^F?TsUNdlj#HfB%af12hEnqT9n%MT7 z8M7#i#wg@9x(~oI-qrlDU&=N^B2XOH!E4&c0?b5AtsQ)Oa~!kPSx#AlR!`cLaG4H| zZl8c*K+QnWM>r~3i6F*BThD$-+UoIJ_|%b~XE9i9c9G9l+b3kmwTRT92VZ@}tUI5q z{sC8svCe(A7u|yRQEx}bZMR-J=1#-VbeV_IwCNge_XFUz${5LOlQiNWM!6P0v?D%P zsFJ{ZXM8Kn-10D};v%6>f7h!JJ&0HfE~r8_Hg(5-@EesnNpzrmL7Y1N!^!&Sfzh(t`r~b`5Di}m@bDegSoS@571oV(WEffuicf1v-f2Z& zW(`Sekk*&rP@932)S~!;{?8ts+#oie3LON5mhu0~nkfFJs{ZejT*vHkh;HwjJRnpB9WKYfS^T*4iZel@^;GU+$9k*UFBPbvM=Z#*u!r z&>xq}9QvI3v2Q9)dasR7V*o|;3l4FkU9pG_Dv#j4=>>+)AgCg)FM=Q@2=hS$M`EP? zAt?V~h$ShYGmK!?-eRm%fm#-Z6u{e}Lu{}>qlrz9Oiv(*7GW)n8+$Spb90X)3k%?` z^Z*!$76#Gll+c@k{7GJ9_QH~H2xe4!j~}$XM6jvmD1PCTX%+_|2E@xx9@F4-4tW*A zXydG7qn(&hJXmXx>gs7at2qC$(FBkP*ozlX=-XnSNN=VnPcPz?=gS!7%aEsltlkMk zzzHY&BLh}=gFt&3L%Z>v`pz$_3!`bVRY4TN)y? z{b^SpuZZ^xt?IXZ=1h`AO39hcQL4W>XRDXUXqGEpwAF4ZU$$otNenW!HtYA_gKGtYP2!7?_gDf%f{6(TDx)T?q!tHh|yo(Di@&`Dog zQM41;v_4V0HB99ue9u|k-(Y}qSY`{z(T8ADWo?WW?U!?F4)ngA7r zty+;>d0GyXRFp0%T^|IVakY^RT8h8t+y=zbj{)QV5IOQ9#)X4ZGPMy~n+Y=QAddD3t@oGmw$* z{tuDrBV%EH;TxK(_%F=ie@Qf^9Q4Cu{jclm--3vUDN~||^00szs$nbx-`k{S3Nb`S za9lG@sJWW&k66O~fAh+J)DZqRaQ;89mt!F#eaoF`DWEBRrxe$;Q!Ys}74$|hX{-YD z-jEpfFkGp!UxL=29RyTnBU~cpMdH59T_@GILTCY^Xn@}WW1jZB(pbht1*iPa^xGcE zK5GWu-CqzjQP2pHRm;?Oz+;{c%a$fP+<-$K|JpO2=t8VVy}9MqT9c_??qCjpc?8pM z#MG{{Nqh6q!E^RVK7S>KPGhae+;DZUv5m-c0|qA7BlYiXCr9EIC|2v3PNQ?kFNA%n zgpshs^5!x~l<^u?MKrvC)7zd$(-8z0lw4M21Q9(?sKaYTY;lDXr6FXaHhfkf4k`na z2&45X1rFJt$+wgj`A1cPdDrDUQny=T0KDE!ayVB)Z_ME|qcXVCD1>A)K3xg(gaui? zGdtq36A2`23bwIUuEJhj1VmNXx)=r=EA9|8qj3?=ULG6N2fAK_93q}Bu5Cv!x#C9i zR$3)3C))%`xv*G_5oyNx%2!N^q-T)>6z-9j2%LSwV2#|B6*XKW9PZ8dNqvMaz&U)V zY_5S7VQyW_=?^v>cn^+phI;?5(0soC{`nOhDw*2yj(fBZX7&0}GFQp7{r=~c!LZ|^ z^ThGwvfDg7!w&`g`QHG7v!e9}g!^y`>_)_4mQJ^fe_f|!A_P*ATNhO7o$fF9Lv>h!%pj_q-`(HYD#67zjhCd)>?3KAXu)CYJWf3*O zaD|L)*yF$7C;k8BbtwUa8mJ?{;O3y4MpP^-m%zX{jQhv}9L8B`BF&mtH&JgnZ-r24 z!pYw@iOf3Y^=R$FG3Q;gpEJ2#uChK}&(}Rb5;ct^Q`JdIG3nJ{!Y%PwzoJ>D&&d4-sPmi`9(s)=S2OqBJ!O(v!3B0c~skJb|05L&(@DVE@B z1jIfCooEYkQTqM?c5(*Z4P}CPIMNa3Ia1~@WRYPCHj#E8ekiHxO1Z-?5g0wMDm7hi zzn@7`3qk8y{F{WhXq3$(q=HtPGg%1zmIY?2t|~%U_8~j{1mBZXsz<(rIEcsKNfQEW zC!GCGQJ7cH4i;dp%1GwY+mt>Wzda_4alqmHub0|JT_7mJSln%@b3qy~{|qV|R)P^D zYdk)}Ud5eBI83Hj1p)p92K*;ZTLy`%swqVq1L;1g^B<&-kyz^N>=D_5LtQpi;hsGX z4|G1PE@|vyS*`aTz5?Fp_t_ewl|$vx2K=seZB)%X{TD#NZ2~p~%iv6g3Sz%2l{Gv?Y9*;^yNb7xf{wBgruJgR(+mhTsv;(HXSX_XwMGv94j$v1c3LOu9a^ zYO!s+E?{cou#ZPYB{HL|u$)({ixD@k%z%$p&(`(GEvTD`=)!SaN2=NWP%TzO|L1t} z5SCkSAw2*Os@Yj=v8gp$XbwLoHa*r}jshOYxu|8KkwWc)E7KruCTAC8j{DvK|1h*y z3^P3C$mEV>MfZfU`*TA;Y#Y|D$tZh`kQ4dG>KX^2QZRt z^h>2#Z|Er%CSwXGQAmXtn|H?0gIlJBO5K{KNDRO>eWM8W6Sl@FdG5D-%07l@3?6x? zb%ID3sX7(+f@pSW!m!PO-NXIJKRVAR&O3;NFXCw>nIthuq3q`l#juX*K-gJ7s~Zuk zI}s~qFIb`Nh?J9N^q*SyN8nDdNq5{u&20vmB#-$*-MaHkoM~j7rv`<|gt5b2s(;5P zV5?LTWisgf|4rr6aYAHG`IJY5O4-pu#z^UsgM&%wRz`#cl$20^2uh=f zT8i0(#}~vyOF|OL7M&N-Yk7=bEtPbSLdzA9r@w%|D-H2p&aK%CV-oVzKTq*nOl7vt z3jhG0P&H9$~N_m8kWxMifrRb0*t??N4tAeM?G z>+?mj&-i0Gd-l7myFGCL)#3xfPlKxV?Edh4c>2qw2s|<1>3xK$D2_NZJ3S0c|5ymQ zgI8NW|9U*h&xw%WF-c~G$6XvCG`-T0Q4RAdaXj26c{ge(>L0%cE$(jN?X!Icy4{S#qSAUeqa zEQuRZY#pEp;%{a6sV8RXwkAPv`Q6Paw{v)3$eVk5Ztm;im8)RM|j z6~lD_%QQ0N=$Awm6`s#^Ae}*Gk??R+7!15o6Ut^yFLjX+6EaQE{63BT-10dO47rU> zFnx#XU%zR_)wTu%e5-ycut@&J98@$M(F2)^TVcV)d`?H&6l*Z-ia@`N;^& zTToKTb7_6AqP4`bGR-aSiB3^i+h6r;rG{AQ!5&c#kHA~N1r23=cg}?c!0;V?o~q>| z3zKXmM~MOkV-M+S?!ANQr^r408|*O2B?$?^3~pmp_axcjXU0SW2)## zFNg!bQj-G4K3t}tk#9$8%#gu5IG;U`Cf{V^h;Or?UGdQvLz?UDGZ5s1+-4#L!L;sz zkC9GAqkdwkQ6inERd`#Lqd@cZANfs~fkr?8DERkW$noFN@_$c|{-=NY4jIT4MQvoH z6cTkrOwhy>E_Fm=fNo39C-s2sFItM-9p{^=i>ZkWFNb9;fd4zh4FWI1v|hErk>9kN z=c=onPU?R;v(`(VkF$&|luM6RZsbYS<9Dga|L7mRyVknb)%Wt|Yf&PE z#8#6(*fJ!Bb#tH#0=)#3CXiQJj4w(}qy~Oik0!%Qc+25*ln4sR%I57e2zmFuPrSe} zTNBX{gAp~K;XwsUZ?Lp&9cB-CH6M=#5psDw-xy=5TWCeEV&gppvT;aUYWalx6pHa? z(Ie;zd+p}Bm%dq#ht!<-qTQ|jL%Xw@D<*x&6`$Qsk16&3$pRKM3%9hw#YSl{hiYb{ z_Bj~M8lwy&me1J(&(wd2W(Vr8lIg8GSSMMBb*FNNz2&n+U@LP3rFd8zU|(YB_zH0N!Tu{V_(Gbf zlciyyQ+m{4p@77tq|Y4>Ge!>t3?XqrkXvz6q}y*ulM!OSv0xBk5&D`LNfL~W8Ih0r z3aVo?FJ9GG6suG#s)|5tMbOod`GYK5PBpDswrpEm|EaIoR`}TAchGbne{Nr8*x_O7 z=f1q(`aEr4Z9C0yJOLj^n=h|FXEMLl3Rj}4V?;+XKLesfd$BbJ^f)lDKaKqC$=7GG z;i8!J+TSf7JA48Pe7OSo?MD7KZ&&zm`M?V3nHLKD+uUYx5yuW20qF~V=)Q?ggjBTs zH#~Kra{)4xc6MG1fl^r2G(fgHy=WSjNi3gHaC?`2K8mcKes<52r*14KH;I2U)Q`w@ zTc*4o+Y9V#i|FjjAu5x{<}ljBVc9%_9efn#S}c;=i0f-q=d0Sr3=?(tsVlC-;EDV# zL#Y5y1=qiJ0y?l+2L)p0SLUnhj1VW5QJqR#{FF z%SOIp8#Lo=v+{t@|nj{|=OG#(fQA{#zOD8m!%MzsXF$%<%?Jmf^I`;%8KS z#SXOiAXC96aDn9US4M=WE-W|=J5_B_>sOa;oeTbK�UgGM*h#gkS)>G!T$y66X~ zY7*7|uwa(r^hIu|KM(?G2o3IyrTe>s5DjkVm*stRD@KdE-AX0hxO_iq<5fEy7U2N- zeH9%Zyn<{1!te8}0&KsfWK+&&1^fTR^VE+m_q!5Nt zY3c+i5bGpH1Y{DjN$FRcJtnQ2;g8oUwoF9;$VX0C@H9UNrE6tm6ub&Dv~q=i9bo~% zL?EBqG*ID2z`0GhY-X=Rod^qx+DoNV&kEf;t#fBq?b_1Yn$zI)%q%3=*sEt*%Kq}8}nPs->$l{Q|s+@K9SB=p` ztE*>F(HEGOgVN&mm1<+@&rcR-`7gu$s{RIF{05`mNc_kDCkv9<0qvq?RVcJ>6{=Gn z+(UiSLXe1gY}FPmbG}3~FB!djf)%jXc!ZN6)BYVe5ay_MGGIs^-Lgd}o$z6k863$< zjmpqA7pOpSXh3Ev8jP4F>i{M~L!-b)S0kn=9x*SPIH>vy^A03Mc=;qj-8aN6*M92N9kuk{DI`vB!=a=tk_ zZvCYCk?>Vav z)X8nv+`6%7-bw8-3hD%H--|M3?%-;ouQ<$_6g-I<_Gji^zHW=uP(V-vNr9P{7caV0 z_&$7a!ra@P{dk9≀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�{Gp+lBQ>+OK4J!f|DRV-fkZzihSJ(4J7gys0g1S-a7c!H6J)8Ta2lg?6$E*~173H-O< z(qhP|4iH5po`f02*+X&`%@9SB6A3G->m|(vQr#?3G-u*KLW-RTB-z=bD6~?-fZC-Y zjkW*oE<>L9=)maBjQ_s*qNs-<(Io@!>LCwAX!|4Q1u>2|NO|wL%cM?%vCMg$4TOt|H_(eiM3K@{3F_4%6h4%sZ(S;ilDvtb6zMui zN(dE2jot%^Lc#|~zRQ5*LntB_A9@KUTlmd+BN)>F7c)@=ET^%R4H63YO(wK#QV_gg zf)q3qH-6Tf5i7}O7_LIZ!F-hO6BaItEPd&&xwI(eF?rYAYJf41ZstUaqAM*DYShh; zq!XkTYU&>ZL3iMS6Mw#s$x2Z)ss}7eZiN|fqwhcx>+%J&q@(CUtw{q@mXVWyes>K` zKi?%Gj8*~(8$M@zUBP6qCLE%incBVL1{tIW*Vqly?e`&AtR9B(fLVnv@t8pkX-x); z@FuV2WYGL*hbYqSh4CbWq~rEoL(_lhEE zj-(Zmf_-92gvJyQk$eoYj~`)#7EB>z@p`b_`I#DuodWB@-Pv@RqpYOD;AUB=T77&U zRF*ttVNMQ>Ptgo!e)OcSt6eFdJX?7T*^$|$Q_j&?Cv{1B*Pg7{-32pLhCvR{hJ3+X z?q0Zn8AfShSXA{8ZGaU)s$gbaH&jZ%3k%LqA*9hve>&^U{j6yE1`xg3dmqvG{a^#0E_hes~_Ri~resc>fq<-EiB8A2HBG;nSdPM4n@^IXbUM z$m6yj6&PZ(3+ku?u4b+gOq*zR_^5+a_qfOH^+-_1`NzvcUeH+blmqL$c`Ot+AP8ZM=lnAHo>8-7Xq^moan;W+hGyjPh-iG z5G~RW$)Y)qYgSieS7f-|yrydrN~PAO6qD2xj8{v0Ua}*%s+POiF_XBbbTrcT)eV zK1==&lRn;X#{F#*-w!b`XGEva21V#^;4PWKqYta=|l zW$*$!DO@Wot9)w7m@6Qo11@GXZu8?~g16ks;Jqu%;%@AWvbe%HFY=YM~i_pNRAm;n#@N5llh6>CSLz$J5+UVyz=mLLF!ex z{z=obLcnoW{q(nGOQo>mj5)e&aZ3E$N{RHN zF~`VT9Oc!4%jXnH2~)0}7!FX$=``Kw08}(59H51>Fv%84Mi7%Z#~0#njwmYv%9K~( zZ|3NXm6QbPhy7=&`4l5TmdFOW(4`v+mqh|zX&Y@xQ6w>%b9XQO?JI`|!9oU@+X`TO zw4bJLSwW29jLo3Gb*}&(;wb%1D++#Tde%w^q|wI*NusD?C1J&xaAJ_;!;wBU_)Qvl zEAf;`rx|ljoF1fOe_3)4U!qA5hQN)BIDYp=gGozDY5KiYkd5C*6GJ)Z20v-eD#DH9 zd25j5&WWxX{3e0UJMsvWvK;ETXf+5-tNyD{6cw%}MsfV={-V7Td1WrC;v37A`3d;IFm9g5- diff --git a/driver/start-media-driver.bat b/driver/start-media-driver.bat index 6c59bc05..c0f0854f 100644 --- a/driver/start-media-driver.bat +++ b/driver/start-media-driver.bat @@ -1,6 +1,6 @@ @echo off -echo Starting Media Driver... +echo Media Driver Started... java -cp media-driver.jar ^ - io.aeron.driver.MediaDriver -Daeron.threading.mode=SHARED + io.aeron.driver.MediaDriver ipc.properties echo Media Driver Stopped. pause \ No newline at end of file diff --git a/src/Adaptive.Aeron.Tests/BufferBuilderTests.cs b/src/Adaptive.Aeron.Tests/BufferBuilderTests.cs index f34768ae..08aa7b97 100644 --- a/src/Adaptive.Aeron.Tests/BufferBuilderTests.cs +++ b/src/Adaptive.Aeron.Tests/BufferBuilderTests.cs @@ -34,15 +34,15 @@ public void Setup() [Test] public void ShouldInitialiseToDefaultValues() { - Assert.That(_bufferBuilder.Capacity(), Is.EqualTo(BufferBuilder.INITIAL_CAPACITY)); - Assert.That(_bufferBuilder.Buffer().Capacity, Is.EqualTo(BufferBuilder.INITIAL_CAPACITY)); + Assert.That(_bufferBuilder.Capacity(), Is.EqualTo(BufferBuilder.MIN_ALLOCATED_CAPACITY)); + Assert.That(_bufferBuilder.Buffer().Capacity, Is.EqualTo(BufferBuilder.MIN_ALLOCATED_CAPACITY)); Assert.That(_bufferBuilder.Limit(), Is.EqualTo(0)); } [Test] public void ShouldAppendNothingForZeroLength() { - UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.INITIAL_CAPACITY]); + UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.MIN_ALLOCATED_CAPACITY]); _bufferBuilder.Append(srcBuffer, 0, 0); @@ -52,7 +52,7 @@ public void ShouldAppendNothingForZeroLength() [Test] public void ShouldGrowToMultipleOfInitialCapaity() { - int srcCapacity = BufferBuilder.INITIAL_CAPACITY * 5; + int srcCapacity = BufferBuilder.MIN_ALLOCATED_CAPACITY * 5; UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[srcCapacity]); _bufferBuilder.Append(srcBuffer, 0, srcBuffer.Capacity); @@ -64,7 +64,7 @@ public void ShouldGrowToMultipleOfInitialCapaity() [Test] public void ShouldAppendThenReset() { - UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.INITIAL_CAPACITY]); + UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.MIN_ALLOCATED_CAPACITY]); _bufferBuilder.Append(srcBuffer, 0, srcBuffer.Capacity); @@ -78,7 +78,7 @@ public void ShouldAppendThenReset() [Test] public void ShouldAppendOneBufferWithoutResizing() { - var srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.INITIAL_CAPACITY]); + var srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.MIN_ALLOCATED_CAPACITY]); var bytes = Encoding.UTF8.GetBytes("Hello World"); srcBuffer.PutBytes(0, bytes, 0, bytes.Length); @@ -88,14 +88,14 @@ public void ShouldAppendOneBufferWithoutResizing() _bufferBuilder.Buffer().GetBytes(0, temp, 0, bytes.Length); Assert.That(_bufferBuilder.Limit(), Is.EqualTo(bytes.Length)); - Assert.That(_bufferBuilder.Capacity(), Is.EqualTo(BufferBuilder.INITIAL_CAPACITY)); + Assert.That(_bufferBuilder.Capacity(), Is.EqualTo(BufferBuilder.MIN_ALLOCATED_CAPACITY)); Assert.That(temp, Is.EqualTo(bytes)); } [Test] public void ShouldAppendTwoBuffersWithoutResizing() { - UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.INITIAL_CAPACITY]); + UnsafeBuffer srcBuffer = new UnsafeBuffer(new byte[BufferBuilder.MIN_ALLOCATED_CAPACITY]); byte[] bytes = Encoding.UTF8.GetBytes("1111111122222222"); srcBuffer.PutBytes(0, bytes, 0, bytes.Length); @@ -106,7 +106,7 @@ public void ShouldAppendTwoBuffersWithoutResizing() _bufferBuilder.Buffer().GetBytes(0, temp, 0, bytes.Length); Assert.That(_bufferBuilder.Limit(), Is.EqualTo(bytes.Length)); - Assert.That(_bufferBuilder.Capacity(), Is.EqualTo(BufferBuilder.INITIAL_CAPACITY)); + Assert.That(_bufferBuilder.Capacity(), Is.EqualTo(BufferBuilder.MIN_ALLOCATED_CAPACITY)); Assert.That(temp, Is.EqualTo(bytes)); } @@ -176,7 +176,7 @@ public void ShouldAppendTwoBuffersAndResize() [Test] public void ShouldCompactBufferToLowerLimit() { - int bufferLength = BufferBuilder.INITIAL_CAPACITY / 2; + int bufferLength = BufferBuilder.MIN_ALLOCATED_CAPACITY / 2; byte[] buffer = new byte[bufferLength]; UnsafeBuffer srcBuffer = new UnsafeBuffer(buffer); diff --git a/src/Adaptive.Aeron.Tests/ClientConductorTest.cs b/src/Adaptive.Aeron.Tests/ClientConductorTest.cs index 711d655f..bd7bd0c8 100644 --- a/src/Adaptive.Aeron.Tests/ClientConductorTest.cs +++ b/src/Adaptive.Aeron.Tests/ClientConductorTest.cs @@ -53,6 +53,9 @@ public class ClientConductorTest private const long INTER_SERVICE_TIMEOUT_MS = 1000; private const long PUBLICATION_CONNECTION_TIMEOUT_MS = 5000; + private const int SUBSCRIBER_POSITION_ID = 2; + private const int SUBSCRIBER_POSITION_REGISTRATION_ID = 4001; + private const string SOURCE_INFO = "127.0.0.1:40789"; private PublicationBuffersReadyFlyweight PublicationReady; @@ -77,7 +80,6 @@ public class ClientConductorTest private UnavailableImageHandler MockUnavailableImageHandler; private ILogBuffersFactory LogBuffersFactory; private ILock mockClientLock = A.Fake(); - private Dictionary SubscriberPositionMap; private bool SuppressPrintError = false; @@ -107,9 +109,7 @@ public void SetUp() MockUnavailableImageHandler = A.Fake(); LogBuffersFactory = A.Fake(); - - SubscriberPositionMap = new Dictionary(); // should return -1 when element does not exist - + DriverProxy = A.Fake(); A.CallTo(() => mockClientLock.TryLock()).Returns(true); @@ -145,12 +145,11 @@ public void SetUp() ErrorResponse.Wrap(ErrorMessageBuffer, 0); PublicationReady.CorrelationId(CORRELATION_ID); + PublicationReady.RegistrationId(CORRELATION_ID); PublicationReady.SessionId(SESSION_ID_1); PublicationReady.StreamId(STREAM_ID_1); PublicationReady.LogFileName(SESSION_ID_1 + "-log"); - - SubscriberPositionMap.Add(CORRELATION_ID, 0); - + CorrelatedMessage.CorrelationId(CLOSE_CORRELATION_ID); var termBuffersSession1 = new UnsafeBuffer[LogBufferDescriptor.PARTITION_COUNT]; @@ -325,6 +324,7 @@ public void ClosingPublicationDoesNotRemoveOtherPublications() PublicationReady.SessionId(SESSION_ID_2); PublicationReady.LogFileName(SESSION_ID_2 + "-log"); PublicationReady.CorrelationId(CORRELATION_ID_2); + PublicationReady.RegistrationId(CORRELATION_ID_2); return PublicationReady.Length(); }); @@ -344,6 +344,7 @@ public void ShouldNotMapBuffersForUnknownCorrelationId() WhenReceiveBroadcastOnMessage(ControlProtocolEvents.ON_PUBLICATION_READY, PublicationReadyBuffer, buffer => { PublicationReady.CorrelationId(UNKNOWN_CORRELATION_ID); + PublicationReady.RegistrationId(UNKNOWN_CORRELATION_ID); return PublicationReady.Length(); }); @@ -432,9 +433,16 @@ public void ClientNotifiedOfNewImageShouldMapLogFile() return CorrelatedMessageFlyweight.LENGTH; }); - Conductor.AddSubscription(CHANNEL, STREAM_ID_1); + Subscription subscription = Conductor.AddSubscription(CHANNEL, STREAM_ID_1); - Conductor.OnAvailableImage(STREAM_ID_1, SESSION_ID_1, SubscriberPositionMap, SESSION_ID_1 + "-log", SOURCE_INFO, CORRELATION_ID); + Conductor.OnAvailableImage( + CORRELATION_ID, + STREAM_ID_1, + SESSION_ID_1, + subscription.RegistrationId, + SUBSCRIBER_POSITION_ID, + SESSION_ID_1 + "-log", + SOURCE_INFO); A.CallTo(() => LogBuffersFactory.Map(SESSION_ID_1 + "-log", A._)).MustHaveHappened(); } @@ -450,13 +458,20 @@ public void ClientNotifiedOfNewAndInactiveImages() var subscription = Conductor.AddSubscription(CHANNEL, STREAM_ID_1); - Conductor.OnAvailableImage(STREAM_ID_1, SESSION_ID_1, SubscriberPositionMap, SESSION_ID_1 + "-log", SOURCE_INFO, CORRELATION_ID); + Conductor.OnAvailableImage( + CORRELATION_ID, + STREAM_ID_1, + SESSION_ID_1, + subscription.RegistrationId, + SUBSCRIBER_POSITION_ID, + SESSION_ID_1 + "-log", + SOURCE_INFO); Assert.False(subscription.HasNoImages()); A.CallTo(() => MockAvailableImageHandler(A._)).MustHaveHappened(); - Conductor.OnUnavailableImage(STREAM_ID_1, CORRELATION_ID); + Conductor.OnUnavailableImage(CORRELATION_ID, STREAM_ID_1); A.CallTo(() => MockUnavailableImageHandler(A._)).MustHaveHappened(); @@ -466,7 +481,14 @@ public void ClientNotifiedOfNewAndInactiveImages() [Test] public void ShouldIgnoreUnknownNewImage() { - Conductor.OnAvailableImage(STREAM_ID_2, SESSION_ID_2, SubscriberPositionMap, SESSION_ID_2 + "-log", SOURCE_INFO, CORRELATION_ID_2); + Conductor.OnAvailableImage( + CORRELATION_ID_2, + STREAM_ID_2, + SESSION_ID_2, + SUBSCRIBER_POSITION_REGISTRATION_ID, + SUBSCRIBER_POSITION_ID, + SESSION_ID_2 + "-log", + SOURCE_INFO); A.CallTo(() => LogBuffersFactory.Map(A._, A._)).MustNotHaveHappened(); A.CallTo(() => MockAvailableImageHandler(A._)).MustNotHaveHappened(); @@ -475,7 +497,7 @@ public void ShouldIgnoreUnknownNewImage() [Test] public void ShouldIgnoreUnknownInactiveImage() { - Conductor.OnUnavailableImage(STREAM_ID_2, CORRELATION_ID_2); + Conductor.OnUnavailableImage(CORRELATION_ID_2, STREAM_ID_2); A.CallTo(() => LogBuffersFactory.Map(A._, A._)).MustNotHaveHappened(); A.CallTo(() => MockAvailableImageHandler(A._)).MustNotHaveHappened(); @@ -493,6 +515,8 @@ public void ShouldTimeoutInterServiceIfTooLongBetweenDoWorkCalls() Conductor.DoWork(); A.CallTo(() => MockClientErrorHandler(A._)).MustHaveHappened(); + + Assert.True(Conductor.IsClosed()); } private void WhenReceiveBroadcastOnMessage(int msgTypeId, IMutableDirectBuffer buffer, Func filler) diff --git a/src/Adaptive.Aeron.Tests/DriverProxyTests.cs b/src/Adaptive.Aeron.Tests/DriverProxyTests.cs index 584b099a..c52a534f 100644 --- a/src/Adaptive.Aeron.Tests/DriverProxyTests.cs +++ b/src/Adaptive.Aeron.Tests/DriverProxyTests.cs @@ -28,13 +28,14 @@ public class DriverProxyTest public void Setup() { conductorBuffer = new ManyToOneRingBuffer(new UnsafeBuffer(new byte[RingBufferDescriptor.TrailerLength + 1024])); - conductor = new DriverProxy(conductorBuffer); + conductor = new DriverProxy(conductorBuffer, CLIENT_ID); } public const string CHANNEL = "aeron:udp?interface=localhost:40123|endpoint=localhost:40124"; private const int STREAM_ID = 1; private const long CORRELATION_ID = 3; + private const long CLIENT_ID = 7; private IRingBuffer conductorBuffer; private DriverProxy conductor; diff --git a/src/Adaptive.Aeron.Tests/ImageTest.cs b/src/Adaptive.Aeron.Tests/ImageTest.cs index 9fda9a88..2de238b0 100644 --- a/src/Adaptive.Aeron.Tests/ImageTest.cs +++ b/src/Adaptive.Aeron.Tests/ImageTest.cs @@ -51,7 +51,7 @@ static ImageTest() private UnsafeBuffer RcvBuffer; private DataHeaderFlyweight DataHeader; private FragmentHandler MockFragmentHandler; - private IControlledFragmentHandler MockControlledFragmentHandler; + private ControlledFragmentHandler MockControlledFragmentHandler; private IPosition Position; private LogBuffers LogBuffers; private ErrorHandler ErrorHandler; @@ -65,7 +65,7 @@ public void SetUp() RcvBuffer = new UnsafeBuffer(new byte[ALIGNED_FRAME_LENGTH]); DataHeader = new DataHeaderFlyweight(); MockFragmentHandler = A.Fake(); - MockControlledFragmentHandler = A.Fake(); + MockControlledFragmentHandler = A.Fake(); Position = A.Fake(options => options.Wrapping(new AtomicLongPosition())); LogBuffers = A.Fake(); ErrorHandler = A.Fake(); @@ -96,6 +96,7 @@ public void ShouldHandleClosedImage() Assert.True(image.Closed); Assert.AreEqual(0, image.Poll(MockFragmentHandler, int.MaxValue)); + Assert.AreEqual(0, image.Position()); } [Test] @@ -183,13 +184,13 @@ public void ShouldPollOneFragmentToControlledFragmentHandlerOnContinue() InsertDataFrame(INITIAL_TERM_ID, OffsetForFrame(0)); - A.CallTo(() => MockControlledFragmentHandler.OnFragment(A._, A._, A._, A