From 01302f91d92122533c9cf16b0d842d336f571dbe Mon Sep 17 00:00:00 2001 From: Christina Qiu Date: Wed, 17 Sep 2025 00:03:44 -0400 Subject: [PATCH 1/4] code all implemented --- README.md | 96 +++++++++++++++-- img/graph1_t.png | Bin 0 -> 24094 bytes img/graph1_v.png | Bin 0 -> 44383 bytes img/graph2_t.png | Bin 0 -> 24431 bytes img/graph2_v.png | Bin 0 -> 47350 bytes img/graph3_t.png | Bin 0 -> 13072 bytes img/graph3_v.png | Bin 0 -> 33070 bytes img/graph4_t.png | Bin 0 -> 13888 bytes img/graph4_v.png | Bin 0 -> 32073 bytes src/main.cpp | 2 +- stream_compaction/common.cu | 10 ++ stream_compaction/cpu.cu | 44 +++++++- stream_compaction/efficient.cu | 182 ++++++++++++++++++++++++++++++++- stream_compaction/naive.cu | 51 ++++++++- stream_compaction/thrust.cu | 10 +- 15 files changed, 377 insertions(+), 18 deletions(-) create mode 100644 img/graph1_t.png create mode 100644 img/graph1_v.png create mode 100644 img/graph2_t.png create mode 100644 img/graph2_v.png create mode 100644 img/graph3_t.png create mode 100644 img/graph3_v.png create mode 100644 img/graph4_t.png create mode 100644 img/graph4_v.png diff --git a/README.md b/README.md index 0e38ddb1..d2763726 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,96 @@ CUDA Stream Compaction **University of Pennsylvania, CIS 565: GPU Programming and Architecture, Project 2** -* (TODO) YOUR NAME HERE - * (TODO) [LinkedIn](), [personal website](), [twitter](), etc. -* Tested on: (TODO) Windows 22, i7-2222 @ 2.22GHz 22GB, GTX 222 222MB (Moore 2222 Lab) +* Christina Qiu + * [LinkedIn](https://www.linkedin.com/in/christina-qiu-6094301b6/), [personal website](https://christinaqiu3.github.io/), [twitter](), etc. +* Tested on: Windows 11, Intel Core i7-13700H @ 2.40GHz, 16GB RAM, NVIDIA GeForce RTX 4060 Laptop GPU (Personal laptop) -### (TODO: Your README) +## Overview -Include analysis, etc. (Remember, this is public, so don't put -anything here that you don't want to share with the world.) +This is an implementation of scan (prefix sum) and stream compaction algorithms on both the CPU and GPU using CUDA. +This project includes four parts: + +### Part 1: CPU Scan & Stream Compaction +* Implements a basic exclusive prefix sum (scan) on the CPU. +* Two stream compaction implementations: + * Without scan: simple loop that filters non-zero values. + * With scan and scatter: mimics the parallel approach by mapping, scanning, and scattering. +* Used for correctness testing and performance comparison against GPU implementations. + +### Part 2: Naive GPU Scan Algorithm +* Implements a naive parallel scan on the GPU using CUDA. +* Iteratively applies scan logic for each depth level (d) in multiple kernel launches. +* Not work-efficient and not in-place. +* Demonstrates basic GPU memory handling and parallel loop structure. + +### Part 3: Work-Efficient GPU Scan & Stream Compaction +* Implements the Blelloch (work-efficient) scan algorithm using the upsweep and downsweep phases. +* Handles non-power-of-two input sizes by padding to the next power of two. +* Adds GPU stream compaction using: + * Map step (0/1 flags for zero vs. non-zero), + * Scan on flags, + * Scatter to final output. +* Much faster and scalable compared to the naive implementation. + +### Part 4: Using Thrust's Implementation +* Leverages Thrust, a high-performance parallel algorithms library built on CUDA. +* Implements scan using thrust::exclusive_scan. +* Simplifies GPU programming and enables performance benchmarking against custom implementations. + +### Output of Scan & Stream Compaction Tests +(Array Size = 2^24) +``` +**************** +** SCAN TESTS ** +**************** + [ 7 32 41 34 34 45 20 39 29 27 7 38 38 ... 10 0 ] +==== cpu scan, power-of-two ==== + elapsed time: 28.6697ms (std::chrono Measured) + [ 0 7 39 80 114 148 193 213 252 281 308 315 353 ... 410882306 410882316 ] +==== cpu scan, non-power-of-two ==== + elapsed time: 30.8242ms (std::chrono Measured) + [ 0 7 39 80 114 148 193 213 252 281 308 315 353 ... 410882253 410882290 ] + passed +==== naive scan, power-of-two ==== + elapsed time: 14.7507ms (CUDA Measured) + passed +==== naive scan, non-power-of-two ==== + elapsed time: 14.6412ms (CUDA Measured) + passed +==== work-efficient scan, power-of-two ==== + elapsed time: 6.67194ms (CUDA Measured) + passed +==== work-efficient scan, non-power-of-two ==== + elapsed time: 6.49674ms (CUDA Measured) + passed +==== thrust scan, power-of-two ==== + elapsed time: 1.34758ms (CUDA Measured) + passed +==== thrust scan, non-power-of-two ==== + elapsed time: 1.26874ms (CUDA Measured) + passed + +***************************** +** STREAM COMPACTION TESTS ** +***************************** + [ 0 2 2 1 2 2 3 0 0 3 3 3 3 ... 1 0 ] +==== cpu compact without scan, power-of-two ==== + elapsed time: 38.4214ms (std::chrono Measured) + [ 2 2 1 2 2 3 3 3 3 3 2 2 2 ... 2 1 ] + passed +==== cpu compact without scan, non-power-of-two ==== + elapsed time: 38.1998ms (std::chrono Measured) + [ 2 2 1 2 2 3 3 3 3 3 2 2 2 ... 3 2 ] + passed +==== cpu compact with scan ==== + elapsed time: 88.2723ms (std::chrono Measured) + [ 2 2 1 2 2 3 3 3 3 3 2 2 2 ... 2 1 ] + passed +==== work-efficient compact, power-of-two ==== + elapsed time: 11.8516ms (CUDA Measured) + passed +==== work-efficient compact, non-power-of-two ==== + elapsed time: 11.6095ms (CUDA Measured) + passed +``` \ No newline at end of file diff --git a/img/graph1_t.png b/img/graph1_t.png new file mode 100644 index 0000000000000000000000000000000000000000..4f55c0a2fd116c44fe22f0919ac0123b88825ab7 GIT binary patch literal 24094 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 Dxk<1= literal 0 HcmV?d00001 diff --git a/img/graph1_v.png b/img/graph1_v.png new file mode 100644 index 0000000000000000000000000000000000000000..39d2b12aaecbca58c903f555054437ddcb7d2c52 GIT binary patch literal 44383 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 literal 0 HcmV?d00001 diff --git a/img/graph2_t.png b/img/graph2_t.png new file mode 100644 index 0000000000000000000000000000000000000000..25401f406baaaf24a61d500acefa9a06822cd16f GIT binary patch literal 24431 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

##&a25DQ$-P>fh_EbqQVp!vz%36C^nvqL};O zd`tdpp7udxxr{$thoW`)g`9mNvC4#*sgcvMr1}Cp+n9M>rnxvcqGe{wfDUi0EIHlH zi!@yQ9qiGVdhC@7t_TwC>@aIP>&~4!2|1?*CFjW#MybWo9LLe@sv8554n{y+$jVSC z(;3W0U0q#iSy;9pGowC6z#|$cHu703t1H(_H$g@z^Vz}xGJ==-bu)x*nY_#htotoH zc+P;Cmj&RqA8oB4ZHqb}B6d@hfO5@LH9b9)d>se!7xFf^d^F=8yW&=D{c22J?LDFK zR+k23TJy{qFeeFIvIzP915qwCMAm|?EP(uT=gysX7NTN{ONGoj>6*?ocZw8?_ETPL zh^X+}Ml#!!(PRdjW*y$*tgE&d!rw@fRi`@rEdMwV749r)d2e1U3u9vtTV^KP+5)S- z^U$PGmxUm{VO9yX1e#(^-Zqt2!CS*0Jn#hm2A)oCNRM28f>D!A*KB#){Hr1Q%}`#> z>e>r>i$#9E8X6igx%T4UK0MPD@mqeoiYgGLELqh5BC(sm;VSp|^fb2S@Q+NFTaI%8 zjeI4t_Ursk}fJ_`qjex?wu znam!NCyIW5V3`M5m(iLJ($XFkuivMu<@a{%V_u@D#m<9kB5ux5)I$*r%BxqeI2(hE zfA;lVm{`{)J&Pg{Q8TN_KFE?+RW}g9Ciz1tYB7wOsXU~(bWP|ad-m-UW0n}ryqvB{ z*fXGGkp1!qyi$jS=3K8}tI~o|0I@>2Az(BV^QLn(Wlh^D*F;J>C`L=Wp)yrJf1bti zaC03)6jXK-2e;h?bQyVbW9`bj>qgu1l!tfJg`}kL4JjTG7S>3y8w0o7XeRP1Cx@kI zKkuPKm4s&lFp`mx0i6>6>eY6jk z8pzDLtqT(!8yicjkX>J!OpqA!5VRAybo)!(8@(F8@EO_~i=h z(%I6Ji;8p$t=6tvmk>d@$SVzkSKMPoifH@BK2Xxs{aQZ!Jxpjn(27-l9PWT4yzzlZ&n|AEj*%FYayy!S|pNqnpN#m z!;K%sibP1ZA0<57^J6ZW%+zsKiJ!m>kp#@)u_TDyM93S|dy*C>$HBk0=3L)qA<9Dd z3|Vig%lY}Tw3I~8MNs+p=~Ed15}UgqkyM~LKvGdvQ}YCZ6mhmO7yyF=TIocrY7clY zyzW=Q0Fi4K5{)E6y6KAmnV%p7@mVsRw&I5+G4{zeqX?wTX>4zq?aV)7N)zTnlREuM zkyv+f@a;emgBgv7rjL@*S2I-sQ=gF%E)Ny}5-sdP%qNipzRrFKUimwc`Fl7ulZbgK z3@NK=g=Li>y@(i8CEDmK1waTQXh?Zuo<1K;FUP@&My4-2&7BK-oLW;7Zgt1J2I3m3 z4wCC2$WE4R;2@@n&^C_vIX6OqBmOADL4lAZV9_ctBo%c3zC5xPO5@)Mb&_}frnGG! zOg1Mdp-2fkug8xW5Iw&b=QO$(S~)Gw|7Zb`7{bmI78&VwA#WyWc?tWFn|`x`cRLgf zcn1n*4z#~K8^J139RBDLq3d{4+#J>AYHyk-7ut>Z!fOM7@gu^zmnm64oDj+k{x|r@RoCxK;o}j zm&QVMLEZ*on}O~)CAP&wQC^-B6##5Jzbm%MG%iN?ZR7X=F4D72|J>NmLH%?@u+i>P z4yKeL~pq_UsXLnrlt;-w-_cqdSAPgrYzPb!_fZDJOi!1wjEjug( zs>6&-+qZk6F0GDbd%jdA1@V(;i=gVM@^nbBAR8XvYIS3~0$p!!FA@Kdg|IHvz(`|u zdf`8z2L219}jeK#(Z_j(Mg9i;0MwXHi?^~t%Bq>aUDg-5!eAY@X#0( z6=xOSwhd0&2g9qS-@VT$Dq;mqd=gvf@63=*rfXPNbH0 z{dg|5DGqN32w1;<{oR0o3b5-pCVON@yNX#D`1Rz$MnWux|Hs0@qPXh*0rTiz5l^0M z1dWVYyU%{CP%onKOP-&W7qR;&7M7bV!*8f@fD0@yhVuSTfU4Z2??PEM@v%o z@87@4;Ph7bWjjphA)mi%XxNcsTyp}IGaiwsabQn+kw$4ItS7pP34!z193>bbgUw#u z%p3R|_P(l0j$UDAyz{M|$*X7vo$u@FhY|M)yayGiH@5NM)bvN7Kosbpv!OI(%#>_n z6~7I`0ti^*7$}(jDhc|dYw(X(M^n*2zwR`(T51!a0tlE;Rpn%}S#{k~6=;tyXdVj50jydNFGY2ed)gV})6vbV{16|T|uR{(nG&KA+FbxL^9Rq_OH1g5* z*V{-e23HyvA1`RxCY=1{Ym@G7d(=`e9wA)H66UhI1Cs?&bOT5VX}7;b$)YLE(jCfC zKm`SLeFsQwRMx2fh(r!=NJGyfFroPBmi7#+Xoy@reSJPyaiT*VoMs1fX3Nx3lJ7nl z^d1FZ5X2JbhwFGkHv#jK8AHNB5qWc>_|Ff}?#ESC>#kL#q}y*bX>4`|{@@Z5dtLvj zOI|)!l~A0HgRy>fIoDP2u*hVXozpea?5>lt_gTbfhI#T!FQhhs#%3jo5)GRKjBK2l zbDti95XWYG4~?Q8pan!HLRZai%^(W{xRhwl{ zwzk80BpvJrVSwQDfi;9^?a0oIkQBhi12wN)FPja~B zo-X~BD=JG%{41zRwF|qz)x%w|!Mp56<#boqC{(}DjMi1;^q5U5?hQ$0)?HF(B1Ea-3;ouemX;<@mJSRVhQPyt zG~sm`ATA1Hvsc^QkBJIj(9&vIT#+5ycmkymqVu6bj=LFRvT4UEu#f`xDu;i3tS=PD z3tqJhv}>Bs)o@iw2>|tEhkb!<(fMb2c0h`Xddgpgv7ma{{5s>q;Tf&q*xHcps zFV0gOFCQ{CE%YwGX0P9*ud$|S98mI8&{^T<>|yWnI*J+ zm9fbXR!npA9|=EniE!DlQ?&QyH7}nj{3fcPMq-YI=%x4pwJQVuI_bU`W33gPqJh*m z{Vd;F1+70jS$pUsk6GFIR?0`Z(R?2W(3SJxuv2V)5S{5U$DD0G*pa?i%;}I&yX#G1 zx60Z2I{R7YW72;Ichm3MWwf%i@a^n&Vv%x)JlEpv8THW$Kx!WKXFWni2gqP*_tqV1 zBYeQoSfG^1bAZ#YKW^MBpFRYVPy4kM8-X0aX8GUGHOmJkvkbCiGIJIxj^;g&<5e2- z9<#i})PJvy2TI6RrX!TV0f9kX^1lv3>x88uCSxr6oq)>MAkU}_N#!vCpUmR9e}*E& zuUPYz3@z5EM|X9Cp|A-UP!Jy|%m=CLC{GYzFQChX!>DpAM&~`tpIJryjJlD}wkDRLxKV-uzX46kf*VEIZ5V!>K z3yevh8IDpfx?`pzUDa~ByMa)L#|9#N;C(`RXZspiIL#vAhsA5(w3rI~4)4HwDDA%j zn6L8l%e1f*N|Q@jb%+lYk=5e6jU(vh&ku&}`Icv;_hnQrggknrVJ#!EW$_JX_n)cS zsDAeL@HjYOrhc7Xu!xIbUw2IH0CdRm`QJYQ4S9VYfY<@|19O7b=5=rf!ZM+qZR8{O z23BkX)M4uH(latXAhttqxaP45+5q8@fUx*)G2`t(k5!19BkL3TOG+Wq^;Rz##LdN3#`R9~!Ue9qd)K3IBOdMkky&S8B3PuRQsy4R1BuJSJakCEk<(@2 zB)il5Uf0(ucERnB_1*7*Ix|9fNvxQl)dKJ;Wwh(mCi2|4!x$u-DH$~t<>+mYj^7E@ zN;UN44U*KR=lWa0G+G7(*sQcSyZd~vF-Lnij8VV82-WuB;inYj#g0)q$BmrHZ21XJ zk{=ZS2$`jIz;%yamM)K36XVyLTL~I^PIFv+Nv+$u9fql=}n5Z>v&rN#2*__!a#>GtDvA&fWSfwlq5B8VK^)g+`;ZV$VKjFHYj$8mngkJA)imJ5pJU?iRMuM%6k7M zEk@~+2LnWgV<0~_E!I3^yy!zv7{;P|WloGZ+fy~uQyjkBwX#PeOWu(H3&%xqT?Sbwr&hY+dbFD_f-{Rml?6cVI^3XH*gW;96-shC0$&(eL7CxyG01q<0F*(b7lPcoVlaE)^(ZGQaN0Bj-p9_slBhg! zv&?Hfgskk`Qi4;EbqU$=ZNUz8E%A;5LRN;VNN<9pK21A&Eq)CvU6QFZ5cx4%a6wDN z@?87gZry0f{E4{dt7*?bgM}=m_+DR|L$6AM?xsk7- z`lVpGKD1kxQo}fz80D-aF%BO?cf`z=t@Slto>58R-#621`D=-UjVLViGXtv7v9fN3 zk$oYK3JIJ*Mn(~{N5Y*RtIJQM-6Swa9Y$x@XZV^NDc97sy|5$W$K&qy+V3p!mkh2{@x+eT_gnNaPhlfhveIY?31Ef0aJl{NhS~HlF|fj|#3?GOS#mTHlnD(eiridb zGE1*JZf&98?9*sEM;JFGe*|Onvv{`E-)S_2q53hugLwa?e2cOz{6(B$=aV(I zKFMR2=&}>Ju8+Hi({Vj{5eCm-@cpY6$wIU-YdG-B; zvmW4-E8&nKUgM&L{)lf&@YDbpQ3vcgRF2B#4xWokSa{}@+z8eO@wmc~_d!eF%?EvB za*#97698uogd5U5Q2~tHl=ibh!~b@BhS~O9uBo$^HL)jX+1LW1Tf`L>GNb+Karo@$ z_Z{GqB1A1AHs@-@vt!PmKWFs|x;qyUbs*0#TGW!6NQ}s=h6_`DEqOxmSS|8u7L#ou zTQ+Ty1!D;;HOw{**yZ$FQ}D=()eC1!+RSa1S1&pjcNuDM!rll%WfOo`Rmz3bEazD> z6X9o69)Y{#WCZGVG;RK))sy_GE%ll4wvt<8(UBO0BB$v|fT15y9vrmix>r{iV9Kky z5`3)rm(HQaO(t;e6vn zb=yOv0X;n$3IHP@apJ_ee;@rs49$|{A)wFGz0C;4Kt7fIH4$v( z@5vA&n+mt`tk%*>Ey~vS6{ki>lKq;BwFAJEXj8MX}9w*goKj`fLxUqSWtCA%rYAP_S=4CG@sc;1 zzytU2y{8se0L#D4CIh4Y3RNKkO4c9nDbxUX6Y61N1482Fyz4aJ*5_SXmua?LDxx_fUl2=;n28R(?%)RBCpSJnYBSj% zVXc?{Vb+I1??%Dl(T2+oolQN0MXVqNijd+7;Le|(tk`y?K28C$vA5hsC`Je2aYABx z0@Dx4FX$^E3@v_rDEIwCt2HNS14`2`)hn4-xv6GKH#qFjbpDcn$BHX)S!~&L@Ew#X z67>vzeSC1-@>*57&z5YT!+N-`)Ab^6u(+_hiN-MQmWA_P!NM@ z_`!?Z`sd_Z?$#K~+1uyK+0ep9#zdEE4=z#OV#!-H7E!Q zM_Mk|UKFt(6S1}En`Um)O6t^~({CE?VuWH;Qf3n~{>G@3-TKi;$YAY1lBnu`(Ha)R zRDZ))ssA;;-_2n8e`$E9hlB!%FCG1lw`db^@znyCL4aP#^Z)tN^-z}oi<<4NU!t?T z!+miK%}~)5OMudbu=Ri2gDJ*8+d~3%VhvM$)ntLdJf$=Z&f<6LmEc}DHN=Ec8T><^fe+R)_XyBIX3D5yl%D#rrsg0P-uW%O7G{ArsK4 zDPM`Pj)M=NXtI0@fqIR|-h9@SIJ3Cu1Og=-;Ufx6z(+1Z7OUte1KTmOZZ?hg_^_@J$9Uy z5(crGg{C|{C)W6!sP9>-uE|;Tkehz))_(SBi+a21aM6K7*26{S3x%1vMX^p=i_Y}a ztR4$e3sb)RpIS_Z|Mw3jQOm0=&-Ur7tV|rJ30++@d)?6LY`5B3SM(vjp`)d>uIOc2 ziz<^W?XT>KXNJ_vJ8_f&tP65~9Z)Y4y+mqxrU4xeR1)^1cR_m+pAzcmho6_hH;`JE z_$tt#YFYyClj0Z`Ry=nc%N@>*=p>o?e(0qY^|5tsLL!atjS+JkXX;P>M!P4$xM+o! zAu>YI>dIolSbqDj2=Y7ENQG9&-Zz-v<7}rjMC?)IU{})fh`2XZ=j+dn0YRGnK zfjpFaqwja2B0T+C?6;}D|M}DZU!4o`e_#~$P%?IQc4n8zQJiCypX$YO^iI_F}3QFV(0|D`aGB47XWfbkL>A#iLs^SFJvj$OpIzHW|f~dcoU3jwc}SXK7(t5MtMt zCxYw90TQOB`zZ|IYzH)T98OLoIv6pktc?vAzE~2pY@Z2 zWa|5_(fiNa25)+EjoZtO@(WYi2@S~)%^z;m>UyG&#_H{u==|d1ItpB2b8f0!^^}3+HM-xAM@L&piowZtktP{>)ga;%bnRlVFOsX9<%g zR5_3>y|9dw0eNi$Vf3WN7$%bP_V!D9tk8?mcky4CZ@ge-pk^p0xQ0bw)5+? z0y+5=?KZ~o`X^DRl9P1!6D7#Qp@i!J!;dMX)N>x%i~BSDzej(buue3^f=cm6;6QIw ztD&UbPI~%xX4h&hF-vhjpIXh2hHO>{<1VCPy17cbn|moz=*xjHC8(sI|93LjI-^A# zKcsjDLonHRUd0d%&&1hHIMC!TSRcPXAIK!EK7hZSc4-EhHvb`w!l8s;2eRj~HoU67 zu<=ixQP(@Z_qjG*;WQ8zVc0^T^~JD&IR1?U{)69RVGHrgpuVi#K;gRdyNZ-GU~qiF z$e*fSU8wZ{>%Rt`{o6X};r-P({-%+AEy8vbXJcdTCz(H#vIV13i>qS7nO08Xz4;MG zG86I}8lALsx*DBYrtI`ho#du7=4LnkmvJPhYeF;e^3<5Huu91}yfnLLopgVxn>uXG z?efhmE7m#dPdo9=7i`iNP`@Xbt;xG{_VpEXAdl%)rYk6Etp_91(M%S4)Sq?wV15wG+0+NOIIXFBOPjm#IFB#UB_xZ z)9;_ZpV?2_P^I3i6%Z-XH9v7gB+V-3dSdGVla>rNGPiJ|86u^Sws9gu5Z&(yS~n>S zrha`QKSVk8GZ9!*D>Z#zIGDgU=GU{2)|c*WytB|NsMOJ=Un$UiCN0)_ZO-@mfdAaE zh)@8a2weM2Z_2AoLC6TySP34%un0g;{#N=A9MoqAXr{FqpRm72-FafCqtU}%kzU%} z9rTuQpK5>(yaHLoK3`u)0XS6C_HR|OJjpoqezo1=xKTd!Sn+x(DZPLP*{s$j$vWwu z&cXo{?yZzVut;Tfbf1ZRqS+1&x zr<&|l(;6#ms(Tz3)*I>2B@5F&R0S#;*1KpB`UFY~7a>Lv;Pk84u3@D1U(}o0p0G4)Z}y;$Qv-v zWm$DfINcrTyyTVl?+`DsyZS1ZvX;-(RK)w*Y4*;!n>oJC?sQdF15=OxEG(I) zfIC42Lpt<wC7J3$=+P*vN-e)HNdk8Vx5vF(-rcnE_q8Y1 zoBkhC+JZFh|uxnF(&q2#k+L&*5UAt4!f4i1;BO$Nf-ScP9?p4uq9`~^$rWpxsrcC z|L6mbpi5aY$uB#Xo@6MU8BF#{Rn+s>Igv`~OaXdD+@^mkS<+*#yUEcSm89_&RM<`e zr6ntg7wKs7@~2&{9$&V`uODoX^?d7>Lif?{a za%{ZA&Ub%2?&_0L8l7tlE{=}mh@yE=1+AK-tQ@4u`gwnS`;SAkYqk!(ct5kkCoMHB zVH$QkQ!`c2dB%hY1ms4tZHLtTh7um@8PySxduw~*k+k`#7^Z7YbABgHX@^_*1gBp% z^0~B`2pd6l#u-QlQEUaHIu{4)VTaWIF!P_#Zuup_h^2X4WH*)rC;$3!))$HvH&W%l zL};ek`@8i&y-vu51tanhx7P9m-0drUlC^w)z0&#{tEZ@qX*9~tR=gB#(Mfgizrah6 zX9fck`oEqzd*RM{mmTKp>>`B$n|HVz`SRLVbJGm0n`A{~+l^?VHL03`Ky5V^2Z2ie zz>_rsPdvNmlsbgY1Rm%2U1+Z3^VGvhKM*;jL;c>c$g2_l0XzZn&j5QNF#k zWEMm8568*fCXs=zDdU3C-aO41%mE2TE6|I{+@qQ1))RarMuYFay`*;FK>GG<``}HV z-iSIDY<$wC@6$#1#WFqlg2ca7^}y!u)z_Owwms$Ye}{SKkWpX95hUi(nWvQ4IyH4G zP4~^Ki)T$UjQ=6DLQ!|+te%1MyY6xe@ao)qx~^&KwBN-ByG3;~dF~j2!GuJi0ABV&puI zEW>rAD+c}aU~!%3C@+sgS2(x>5*{I^urL*GcIox&U-^u+HW^51K zw#M?TT||d&%W?e{aQ5U-p9KqwcQ_YJ0H>KOSm67)3%{P(MK@t3){DpBr8MZeAp%j{ zGeS}CVMd}T-M<3?lg1W*7cg;*9g($OtLSi{xA&5;$v}<$bb9*#4BF9$W|d+mztlzC z)}vGU!j@tD#M=A6(*%>E8l_mIyRA=HCEvZV`poa7!gQ~i<@VtJf&g#ouHOsNJGSRo z-e_r-l1fq85G2v6`QPD!54;f}Ztzwj2q(PVeC2I&jFFi|&i@nJVs+we?WL@~J4~W< zjEo8I(>$?pQUYIHpVwsR>j$EPvPpQ-z5sGG7Mu*_)z!)+B&pxcc#!khLVG2EZfL!z ztySi`pF8pfcYRJ-$WLlI`3CLF^WZrrp&R}?dI@yE2A{YKddyh0^=J1dHu~1iJqyt@ z@GkYcEx93?sXtOawXu$2=T1YM^F!7-aWZ`Tx5(@5uIBqYdiXKPL<-2!-hNZjSYXbJ z2@cP5rY=UQ%om2P%CLWXCvL>zQW21bHU&k+l}As$VPj0lBchUUfle>d<`17Om;M$t}wonXHldrw8cbp|wmX?FPPXq6VK@64rPuzSZq=?&Sw(K%={uwC7I77l% zMs~o0sB1~>ozd-dvF@9{u)S1FjM2R3H?uGIGu;l#H8_!|0#vyJmvpfBw!wD0g88D)B_0hTfpS&DiKULM(ALns$ zZ+KUV!X254A|caRH7gu)K@MNRiE(J*B?s{lj|+~$Sez);w@EDfuYNl;j=Rzy6^c(% zm$waBJAKlOu|HBbmGUndCW*XEoH}GI0CNn{^Y8e(l0gus78SgGD;M9ZeVPpDq5YX( zFs)B-aCKAZJFLmskX(N(?ZOYvyco@+UT~tKSq+RLY0-iG;U;zxcu|8N@9)in3_tpr zn#8j$M=p6HoQd1lZ>D(Cc*&<%aFo(zw@KLX3G|LbS|!Mvg7}*OLSy6N)_ef?0Y`^)}bwF-#?H!tanbmV=xB<6+K34&i64klPt?+`K%1PZ+Mjz|NOBst=s zKXU$ss|cBc!p&6;>DnG2?do`KCbwMSkb#cJPAbLh&ZWSYO>37yp-n>Zm%I;}ZzLOS zywEASV-J$47wN7|JlGnl-LT2tR%@@-SghBprf(dV52W8Zb%2kLG%Oe(1fr2ZoB}>X z1DN>8nS9{i(X93BA2?Fm!KRe`!|#f*cG~goQ+vmm%lDOaC1D$AX=-w#1s0OEoyma- z9D)aVOL=z}iI!^9k+u0hrrmhxHSXTsiu|nMcU$wGn=M=J=LbzD!myR2825Bl^PVQ5 zBFS{>vzbI0&p=zx7}Xc{7mBr$n)h67BXd93&(6%eM=y33j_t&jQ=ZPr$stF060r{% zk7ne*`uJknyFXP2#hqh;b<&SrU~KYP7z_ICVp0+HUg7~#bOdgU=L_A1vI4N zrFVu0$ew*>+Tye&zp_P2%Iws>y)XX^RK#0R;qz-CbM6A<3A47E4U4%tjqxL=$hoxtH?F<{s;VvO`d+%ZNOvhH zNSAbrLAQW}bR%8LrBOnZ?vzgHP6-J?Qo1FiTM@o}c;7$1G5$9g?>z+XJ@=fw*IsL` zIp_L61XOeO-8txcOM}V+);>E+O(=GN>>9HJc9uXpjIp%{k)45BJJ%07xL>kU1`C#4 zOazUIum?1wiwQ~xF7vPf(^UWIswU<9rfY!{i1BsvZ}El^cu^JL53p;Ov_l;l&;la` zKZ-8@QS`eUV#@M;SI^V6q0 z5J~8f=Rv0Lgmz47Y6N7^1lCyW%pXZ`RQ#{o1{@}Nb$~jYE*=hbq#zqcDDwbPBQo&k z{|lpV*vwkvx@VMcp@|k1H*JlR~HF~$iHNZiDlt#d- z0jd)VLl$gmY6~%+1AhE6RIvjd2;vh7Dl^aDg;qX4G>1>KwtfMz{Av;4^{lT7~oaGlHo3 z)*&_wvJ?A1N&V>Ic4^VX4w^N$%BgvB)*mb}nY&b!Z7RLMC^ z9IF1%Nk^Y2$KxK$so9XPezqptD4=3o{wC9?)A$Y2EWj{=oQDp8wG1`HjR%T8aOguO zb-*z|o66&QNNBMeus9FEVbQg?Xw;gd9S7e3=KSWG9%9P?3W(`=fg1ioK_;cY1Xwa; z&xbrKp>3n{ss{VwtR6>H;|(09;jPF0`S}9_O+ha;8+p)r1a&2%48rixI{Eh?O4mZsaVAiAeK-_?p7d=j$6AE4R!Iz#>@zQLz_L z7yLzp*q{zGP$b-sTLkwEN?#2Qd%Dedv(6Au5P3P8eyr_#(1gE^0Y}Y=^>j@|GH`i4 zu(1zdFc^C{%jQo9JKLKNzX3%s~13*?v4A>za7pMMUEpL8*6l2{b+D7%!&{$T{ z2c0e>S9%ITpytJAQ}cRL0q|RZCtwF)$O8=_SMxyt$sFKa1Hog3-On$Aq#Nw)?6=qy zpu9j34o#;R448yL5(+>8gP6@Qs9*&EW;bXu0|qsSxbkLXKMz1&_ygAt>*S8pzEg-- z(d(DCn`xuq7=^5WpfwGE1!rABP^UrP0D_Yzuv>t<5P_o&;PQ6b39f?2FK1;{&?N#r z(jhHtnD#%5ZmxWekphs23DjE_P<`9c6L@a_w0L4flo_-xAq52R(*-KrhA!Zq0*3*F z4LWHdP9VtsK~A&;RbPpq`pPD&JT5_RV;#rK=3&x)_n<`!@A$3>K4hG&M(r*(^d8hq z(Hb_gAGq(Orr_a7{c9#TbY6@4OSw)v;#0C=zm zfGm*>KxD_3)A%mPGwK$&$)+}pBbxT?jxZ%JRb}@te4|N0Il!%=GYM@F0AW;sg3?fGZnc)Hw{G_u zc!+}ov(k2oGc@@EAap>Ug2Za8k`b#@#6 zMteRq1>HR0a6=|`*i8%`?|+A_Ea)~s6bcBa{V&xJie)A*x!4M#gpG*Gyc5MNUMe$h z^0H~wrVPCWIV|F1O}mbaBA)cuF!HMUv$EKXum>pF7i{Uhp@E#}vs1K`3&TM28U4vN zFe4P{6ACITt}bo8hZ*v`I6f}q;CGlBYl|Y=^KvX`lxt)PVJzp`rVlgFX7Afth~T9N zbtJ!e+8PFX(8UgZ6NF91|9ajWb}HHEZQWC@0kkBg5V~@I+Av#s!^KkdbX{+=?S|@4 zMr&YcwVdHvp5^xgv0&&~lm%WWg8IrVWZ^E8psxR41*@g+p$Zes+F-Sa5ep^2;#@h?lX&Yo(?xS`CU9Mc-7b!u0ab*FW~k2 z4sc^AAmJ)h1%YY^QZ_Si*6{m_P(UtHN8sra_nGICK0sz z6;81j%h#oMT4wG(*JC?L5zPEEAi$j=ifZn3f6ihK{X-~SXrrZ(*XzazZQ)|zt1tq% zgg_1bEvv;BQ23$5fKJ>S7)B47+@d^|A9Yw(!rxfjwU}L6Wm($GVmsLyVXG`2A{w$t z{GKXvnvfxLGxk{5r7COh2d#t0B4Hgmp)?T*lTmP4rq=L7K>fMhIe_j7Ss;TX7sB%{ zK#?5^93r3}9h{xT-vV>v8(T{4guR20qF;gTzvA!Do%MUZo+Pm8XYWnKDloNdbvo*O zFy)F#lNp(p1pTlL@`hoU>un;XwNp^u0RfhPkl6)DN9fWBAagkACRSMj8$FKv7B9s4 z8^bZ}U6e=s8yWR%kRmfgy~F)@auAQA*7w8qcbzWZKWHS^{!U4*qI2Y2!4^xZz#BdU zAm)Hl1q8}i-eVZ;O6s5o~~>_>Dxc<%B6q;|$V&md>0~qT7%s+Bn88 zFl-~6SS$_IN+8g3wX7dX!u)X0&%a1E))(I<57f0la0d`w0VweYF4Ep(fMW273<^ZT zaf3_{I?0$b65?)%0ggpbZp=MrF^{WdCj{;U%Pp;=R72LWMi01=LAK79 zP)K6Re?{z1dt1GO0`EZgUfyX-gJ_4IdW>qzvdd=Mb@N7H`7-U2$c}@j*pW`irEMn2 z903IuimAYt25G+zc3@v&+OxWqrW}iDxlG#vlyd^DuKD#1J0Y&^ViSosG!sU?c>m&+ zDoDwt=W~SS_Flm18VIG9cUX;r^^pJn32y{ZF@c_ztL5YlKnfwtY~amr4J4(I6VUi} z%HMo8aNRbuoNKccHu>0F!AzZ3B%YqB7%yexz>PrHmzGe(JeRo{5=m6130~SD*v&L? zYVv?rcPR{nk7byB-vc8ZpgSR$@)6iog1iy35CSYT0u5hZv0HpzEk#?E@zwlWzG3s( zrCpY#vMigEeNUGVujhZ{H68!_`Ha zgvpGn<9w61ld$ecz*JPlYLD=@5ff7mOtG)`8Z`^Jw=Q-f>5Dsd{Sq-`0b*UJ+YkQw zIl&mh_l+SliuuzZCBJ<-*@DHn&$5>p+zNk*Wk-Ccu>C8 z13^l!Ey9>a#1;L6a|EnBV#LM1c|XPMidQQ5V<#|}A0@j?4@-Dg*YPi_H;Yotz%aF} zQrp^D1DG-YZ={D%eLw);t(XIPXQ+fpp{5rE90j@3USqP4YWG*<8c9J0^qQ>;rxa%s zktx*{^$agUJzFI-rC`2!2;=!PrjwMmz}Nfxh~nbRZ3_GZY>j1Jdlq^UH`*HS7;4a@ z1TGhLSCDILh(sgcH$$+Bo5<$yTLx@O>0-y8H**STqG`RGXT_fE;Q=XiuxTT%sRm8@eB&3DBn3aCcjTjj4eMQ-Qe9shSG%1!jL zLvI(*gvlQm+GW4o1)2+C;$22{RDT))9~?61f^37u#O6$1SXi(`(Fg|=YUF>pod~37 z5GNf3I>^hKxXQWuuQ>-WbRv;hesI+6SPH~vx$=XQ{Ho$q0cQLVBfkKX?~WDgzho#$ z@OG#5mwDYpVmnNZR>q&{wcx*jvOM5r2ad;QtymCs1xO|$0R`p1y;W>c4SUcac;)*o zK)^>)*P}fGfCVD88pbk&q+}64jKLBbqTWzq(H%~cKGm_!T&#xIUKtdKe7#Llj83q+ ze5u_*T?eFO;m|-7Aglvw3^vHT8Ke)rS%csML7o&4eH~cv5DY-6S@M8QF=fMsZ#+Kc zCyqzy4#E8>L4R>KNpjl@IN44?`O_^h}53)F5yEwTchW~pSLIqa~_?Kt!;==}$uz#dfqw{t z71w}m1d`L&=k8$`sG77Qo#re2^@=I*j)|A87&VM;wwwC*Mo^{H)QBKU>F}>iMreR1 z55yfwX|JF{`o()T+kmSDIozoHpH79-7>+vd3Qw z>5H1MLC`U0(SI#AA2M#hKF5#Jd4-M_rEMY=iz43X@ME})ce0r#@oYcDWR^^qGf(Q^ zEI4lwRzFlvUF0CX{y?0t$>1D?9t;$ ze>J@0f;Zd6mxB*9-&_-&NWR6b{6bSS?cmh(_ig>+IYU=-j4c570kjOHI*hrk?pK=t)E1;M%d7J&G%8h0)A<%_$qii-o@UKt%%)mSqul+d$kGZ}&%CJG zRSyiwNRT7=(y=1uOlt3IA0>w*)Q-?{6Ctp6qdz(&3E~!Q z4j-+ob?b?bB*e$B(BE7rwA|i#piAli0RI8F`!)S6LI90c01j;!gmk~TCBe`t0AR&k zivuYXK!zU0f_`pxj~2DOSzOp7?~eEN;o7PF)iR7Qleajo*jlgTB2WNyH&QUI+)DTV zHnzzxF2oSaeNoq-o$lEs=UGK82jA@-&^1AQV+zu>13T4p>w28Mr-lC4*d(XCY#(0t;@m)~l{9Ja&To z$sjKn))^6kvY>ssj14ag(B|T#TNz);3lF}t%vwAVP<$QAP#~b{_C9!LPT#E`GqJ&H?KB5K_8S5#>_!OFk* zu@r#nEC|(C58qMEP3lCtFW?1*OLOGd6z^g;yfe-oar0T@s}k}*?@>AeO>^h_jt zs3vT6WN*5J5T_HWZhI(oK4k5?t(aK{gwf?PLiO4WdLTo9v_qi#S-C($LlXhicqqU) z@n}L%3EY*#a=(AY9aFheI{*~p|fB-msOp3A-M zD+A+wWs15RJpHFc4_mJ*2xu@89*kw-fh9Z(RF`m2hJ((*SW(U#XumRolOG0Y7Vu~u zsp?s9Q$Q^OXl~xcfYG({Plh?YHUCy%y#%R;fhr54zdu_SbXN9qEx{0PDq?!L0d9?Vy1KRQ0I zNE1cv7{V_qpeV3hK>ykfC59ouc@LQRLU)tRf8kZ-5{N`!L8ew=J;nlLV7DYxAm%#& zRz%U?Yz=WnbVy7{hS+|Z6Wq4CPPCZ zObiGBjx2l6;(;{tTlkn#o>os*Ip~Z5>>KKgK_0?jA0+Zw61=_n=h1w1G%)?e92eM7 zn1G;_H578$1CdQZSJD$WtW|=K1bL}~Z|i}_@VY!W6&)UVnKMP@zc`$b=3AI|=uAH* zD~LmR6=?go>~f%#YLKb`uwU51(E%K%S$=~zu_F;8AVmEw>`DD_GbY{hc-}z`ahx<| z%rs@zjK!7TIUPZvH>1{&!5t)T1@Rr~l!9*2%UZ8zkWUWMTZje>0r3QS;*Y=~9rAO4 zgw^0%B3jyA)hKXIKUUX$u%ehpYD6z+dRhM1F1)VY3Z5NEk~pIi8QN>h?HELrHfvP( zM>d~TJGRS}i9n0KJZL$A9wd83ob$_X7hgf}OvjLHE6#lPf6YW|EB-`~lABϋjZ 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 literal 0 HcmV?d00001 diff --git a/img/graph3_t.png b/img/graph3_t.png new file mode 100644 index 0000000000000000000000000000000000000000..ea363a7522f50482583ddf03b6bd3df607a8a2ab GIT binary patch literal 13072 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 literal 0 HcmV?d00001 diff --git a/img/graph3_v.png b/img/graph3_v.png new file mode 100644 index 0000000000000000000000000000000000000000..ea56a307f2a7d7ca12028ec82d8883e6a60695ee GIT binary patch literal 33070 zcmce;cRbeb`#*dUB@!}{9feRd5E&^Wva^z{l)Yy{L`q09GPAN*vNvTEig0D`mAyB= z0R2;>lm(FC1HCsau$=7P=|;2i{{bIWY_-H;`yYA0PgG-0IGKTMXu8E&30q z-ZJGO2IEmHEiR_wq%+&+>~v3cPjq3ux$~knChp74?-lRmxY!AADJd$x_EfF%PJ2R+ zGyQYw&0tE(b)t@`4a#bKbt|0w!8>QHHGFV6OeNN$+X&=-wDFq%Hd|kpdUw|*GRyAn zwwtg*Ou;0bpY&NvCT8?!fT>7w zJd9iS(txBm`g2jmz##r{xPq+g`}MQv4e?ZUA$|9aZlhn0CQy&R@`XRH6tzNR@FytH zAe;@oYf0(EGJ1!&$ZP!=^o|Cp%T46yEt~8<&gdP?jNf<^&^!KrzX%~bb-50=<-x+@ zsbsUUx8r_Kef&K&+Jjc+n}Yv)%8o1V;OUlB|FdoxQVAtIkFg(NESE1URg||fP2ra(f5mz2nEc7nKT=@P_xkyfW6WpIidA$y z{vgY`vrtQN-D(i?{l^dZjMZ{8|47W!xgf_(<@@)~^t?jyI;}hrI{(Ip+Rk6V8G+D^5n@i8s{*o>W5eKHFAuq5D*aD%+@LA(XYXSb7{zyBu>o9A-x-R$-D7k%}iHbYl0LB z+F&m4Lg25w#|lCVRYyqi;?#a(E0(loIZqrtvbQ_$emfgmYm`_0^CwB5&=SGc z+AQb%-)b{H!}7GA- z&QOT$Ec*O3IIzht-dFhP+F&#Pz}J@O8%i1)1f_i^ug88RA|lGQosciv9FNqfbQ8`{ zOW$GDq*tO?++80q#Aa#pe2^tLaY9^CQ88LK$HvCSYV12@)fvH)j3Qj~x3G6e@$ilw zWj=Q(maV^kJ8@YhcrT;mi{rRJ`E6`XXDg|woEvB#*ZPs`u(e{G zn3$;dBlKdC>*f_RKH9-DxrA2VBgak-MmzRbPsF;P3~oGEDVU+g=`h#(%Dktbkv}N7 zTCeJXWx02t$QD6;Amhsp6Nx)_2)<}uEs)}i7Y7&=~edGGn>qkpV9shvqk-V-qI^`}yaW5Ha%Gdk-Zp@dFkJS0s zdf*&E`$<7TaT5+3PP(tuF)Yg+wkPU_sM==CK!ed*)lpE2wl9Jk>2J}2o3^EEHd%iF7HX!!1Kuis8p8P2U| zs1;uC^}1|W=cH8^K+jqJ@!{jg31FCN>6BnR!2?>sjj+~ZjIJK>@yxwWBmN8P>&K$F zJwJT-z<%jc-C(tsDW%Z^uPp}C&CSh?o#mfOT3TIU$>%F!l zXpz<&Ty6!^z*tB)4we60#`0X#HrNwa-*S z>A>-HbOJ=4ZRxGebp4vLQ%qICU_xZ@qvcMQ>~iVRz_LfYjZU|y&&Cj-j8l1x-iMUm&knJajh z#4Df24GMdb6e@Z*x3^g?TsUr7wkR3Nk()Z7Tj0L$23x=)Bt)kmyh^dPKF?h)t;SA4 zKtfUv`*GP}MuWi9W28P%on~rz&7JAx&W@|=_G}?LH+MbQ!eZ0apEr|#JC~hldvdL4 zI;+%bzI^>woZ=v?=(^Lw$NE{tS=D?|A8+rWq%fTt-Tf^rmA1h>6_pon-kf*=uZBLb z2(ruys;m?>Ff_bu)I?n+un-g+%rY;Tug4b&iJ`UP**1;Th<27%vFE*Hd9ftrq5h}y z5-KY1?aDYQ2zyTTha)c04Qc|+Bv%hsb`+=NI{$o)Q^=x1Abf=g*&Cx-@Fo5-UoADVi&p{@7tM7Kt;lFU-n%6hdrHml*`H&t*ia zL&>pjx7^%BYHDh%u-cBQ4=RPs{_xmMcM|hO65nu~dsr+-JLclmm#r)M!pG-3Keqer z+1sSl)V@ngHVk=k4XYZ*@bS-HxuRTg#*;~}$^!??1AH$_rQ{DJ32{luVK^COXN3oy ziR5~m92^TnFBxxTV+|o+hF><6j5g_2{D!BY{y+}w4q0-bV*t3~2D}S}$M>P3w@C3` zym&F_Lu+x<%!~`{UC1JV53&uPdG`z0ETtaVL*o<1($;$>`38uWi^R_nhG?;6% zZfJ5*xvsQIHGKbG14-mf>b>M)IBXONh9)M|$HXjOlD2Yo${Zo8 z{R-HxgJoqxveAN+EK&jQ9aDp**D)y_i8;|X9EVHiD{fm^@r<`b`+>n6QJtxrTbmyU zR83b??N-;u((+r-S%7yOzzpZ5bC6R$s-?GPKH!&)5jvw?>JVaK`t3F4b(>M&p3ECf zQ3B*gj-FT$#OZt%8-DfiN%>e2|BDX_K7wm{GBJTuISxGIhm`%mm^l?5Xn${)?DXjg zd%L=@!2F-0`*bf)(x*AZX3D4rFP1pWzJ@pzF8j$OuoiZ;2GT%0`|#ISx z$0D0qcjwt;!#!ezpSnB~$+T#jt9pLK8cfVtXwAQv#OWS{+4cUXBQfNiec|be`)Af+V{cVL2?w*VynGul00;fVoQbVayMud%39gyB+e<&w_+4ZJ5bwK6n?#1Mr4kN1AHei)K?YQc^|ZEAiWj;z`QKue(=n zlg~j!4tn>_6H;;lL;=_mSTXyB3)P*O4{{$izLQ}LQJ12SKpTBGl&gBE_N9KlCK(;w z2~kl|tzsK|gdX~xC+H!{9%*rm0f6z#Bwvx8g0z=ay>sl;CTg24I4u`d=1>EC6>Q z1E#BG)+~+vu-@6QhVwA4iD)*eg^aW?l^kmTAfs)bR>+B`-6UT{my7K+GXS>}rF{Va zxK+-K4(+@EJdZopA-mBGehue?(uwiDsqCXik09uf3}(!xo17~YS#ddd7CI4EYMCTu zm#CkRM8RTyC1h~GA|MKq;^9E(fK57k_G~_3JS`hkFjpukG^i-tfIX>q)^Dk=>Ph0Ke`OrYf>0?(f$5({k?0Wz|0eT-osRXIKm; zFAebF(E zgq{UJjw9bgIFU6&)Bqd``}XGi-B5&CLm1eui>~Q@es~z4O+qp zLQB|4p2+6wPuI9YFFx>r9qbr!fmi@}C2h?Ku?0mnHMQworL3&_s9t!>Lf7Niv)tSy z@Hs>~jEyg#X9f6O)VWR6OZ5~WZRW~&Mi!8mM5TcM`WrH{aIhPr!3qm-S7$m~D+YDg zjrH)TE{JrgWvV)IR+~$YjBz}7c6MZn+2GQ!A&8Z&NM=^l3z;}wN|o21&#M#A?^vZv zQ{e!6*P6zD`0E?*3kgK}L(T4W$EmJ7wre!Rz=z6DwtqPJJ6%gtmAT=OMx75_Ac6N8+g%fsjy=Sa0JzfRc zgH8?wHo)Qj$H`gsX8z<-UpByl@MFEV;~XXG&fs;FIIZJc8z5gpK(+v=5~Kp_$Q6X1 z_gIt?gG1b|blbIB8kI&)Dj*<0edQqma62BG(K`sdR_?CRiYvWmRX<60UD0h>wY$Ka z7C}b&Xu+Yi9?O@SnLd&UVmdku2oJzHS9={(chS-&kN*Ds`^VNNZ^OfVi;AurGk>0p z%2NcE71`|blEH<5L}&p6_W2SxrdX!h2xQJbWzJX8tw-f3U!bHF568iMhV&z0$W0`l+~J;?m8)idPI)F+z}ES47f3O z6Oy)GrU7n-X)F(oKZ=u(dc0q}!24QPXE53jbp6@ZwWZ}{>y=3*aBrc-ujEA&F;7Wp zY5h`C*il@;$H$-SEzYxx%pB5~Miw`o_wgg9)N#J9z`Vx_C=s>4BpyD#v}M%jt=qRR z!)BqwMsyRv56{yzvlFy@CpbdV>P8gf6!qYo5vE5Q{A|l^>bjr5zXT**bnXuyJvz(9 zCA-zoZN@h;on2W6RQ0l66{abYp9BDJJ-VDl?{y&WgYBvJ;7P>p-0}VL>!#t%kq!aJ zIXW;54-XH_8ya32LK6E&S3cwzd_&am+A3D-DM`};J^p2$^)?JLVJ-#9w1Yr zyff2GRsV*Px{bXM&vayBq*U$7GO%~xK%bA6@O<4tE!0^{$q zyO%VQ#rG3yRUra!j(DOa`nIAXsYU559~@n^QJ#Kt1TSDH0x%q5ou1L)tGiKtb|A*= z>}}5j*8}#kzVUtotgcNj82J7AT%T}&KcFwf(U7D1oH&EqTKrK$J8&~1=C0PZAOC9c zPsEeq&`7DMd}?2kB!JX%M@FW`ys(dzUU$_V!tBm^<-Rv$ML@N!rH+=)r`bbf5N`4I z_J)`0dH3aY+quZ~hP2e!!R`zD93od*G9l-~A=Osy?^^E6TDsSAW|w*Lns(k9qgf64 z@ZlBk7$8XC>MMUc?sh|jlLr?65$+u>@~otO()h^}cBCl*vqjIAAMp?jWdVW~+5`mH zg`7Xv-?#_F51{hxgx0~{V%zK1!!PPrr_;ZDp#W#X#jMQrJ#aaFvXIOQOQd8E%2gtp zviB_|W0Bhf70;4>u@HEE*&S^RMmY)q=H(~9m;%{4kY$2IMdN=oDJiM#39v*l_$AIn zaFnZfo$5X#8JSYL^y_k$)mv6pIV-n@v%tu@y1Eq8J62CF%{3Wa1(qc&w7;_)a>;%3 zhi;DDl=4*b$Pp4D#q^IFr*Uv_oCcpCOXN?o3Sfm4chbs-Afa{A!GDVuPRF8rRgFC= z{RZTF6iTh;SOArB+X+UuSE^_0_`ZJa$^M!lw&;tGp&Zb;>SK&wzZm~cG;D&T2~!X=Dmy zCJ0axU~d2(=NFH^U?Kp3`IchPeSg={II`5I`CK~ z_b!3R0~CQ4AmIzJ6bLySAs^6PzI}7n%9aXbm~2ZT5?A_akJWy;vEejjt-?-Gv{*+= zMnUlc=o{#oC4CWI)9wzn#Qb-D`qK;ARly^Xfk^^!o+|D#CD1g6cRJt`9u)c+b$=8r24o0g0BV3H~>x`CW6WCd`@`W#$dK2bAbKe z$X+$G!Kqse%X4MIVJgWY>&3ZRC3eRLT$hPKl0`%biAGD8Jo5VCu+~7kDY6>!bhV9a z8`WoMVe5pbF$|dF8{^)>v0m5ZW&|p}K<*3nw7Y~lSbf9ePvvD%{WY38G> zz`VylharvrdUB0g$SJ43prPT8-Q+Kvc-t4+d&6VQ1fJOA>~m=@ZDsQn+Y8;M+4|#6 zA9M-}Ee9C(_V#jqsHvWTk6|$ud0kdOHv!zxS`<}};3se(hz?;pDKNVa{`UlIHiWF~ z)f5GLJnreHQptCeg!rJP1WGYJqX1d%D;!jr2rD)oVyuo7qoCa+#$WPCY2Vx;v&}_# zpYGJWqujOMCix-#PcDRfm)Xzmw9B|aLHLGF;1v3J-cJ#vGsOXZYI_o9y1$LB-17$b zRNS)vGA-aXHrcczkp6_AbocIKNvaFjzA)bgc`572dI9PtCATu5|=B6u@=> zmU_pZaQo%Sw&YldhFs3AO$9anM z<;}X)@n3p84g7@{noo^ut8h@lHoXF8GuYeNblP3TE&^bdF+CO*5;7ENS&_OdKeCr) z0b<>Ot{5EH`0(AyFPRSthqK*x)3JW(mvXBzKV@-1c1cM|@u;kH4`H0T5F&Fyk&1$% z${@F)wEY$P>pzw5qB9PqSf!b&s+&`&X&HOGLb4!$YciETjq-*dr9m8kK$f9m zq{3*DPjmeEai^)Iu*4rIg()RSicv^J3D_P50yD}34bFzvHZ7ijRJqKq#|80&n9X%|{<%Ez)~1|10` zZ=tQp1OyL3c0(-A__KmNP=*EA*aX12VAQ}C(;d#m1Mc|t?VApFe~ezbGL}rq?;CCp z@1--&Q*Gx#T0YXkYoqHjl_bMLnx*R2WMrG9H0@&p%%^O7uGDGB`}Bchq9O_?P;8l2 zLt9_JMJuO%^(ABBz+V7(3q_d|I!0?%=xOLuyaH=0v0D;(t#1&pB7Ae0P*}Qs*j9j91 zdN=!ZpG7vsYg(^cL*Zt#{)PNIz!No0OSbCW8{;N-0ZM`J0a>9;X=(|=is4*uaoebaqkUJ{psR&fPt~cY^C?#H zoxC4pC)-oW1s!JCFUkf@Xk8cw)CuxT$afW`pN16`e_bA6HIH6&9Bm-u(ygHLZV9dv zUTwbz;XceUU0K!gb9o|q;&HXGXUAKLWiNr{Nq`&!qzYWf z=XbKgkrvqm6^SaIr2=pcUTYm3^=~=ULJQvpq5TQCm;($F)t>>F!v%a&9btBcrZRfh8-x0U&FUBB-;pc}FJU9)G z@aOX*BA{GHNf_QhUdBf|iWH4rfPx4*to7LdyOhHGY;3GX@*89w&9Fa3wAY@H;zlJ; zR6rdK(R(pcA+={uWC5;*LqrC31u)kl#Fwnl@d|s*m!spBUGM(oI;~Z zix~u&9wam=kYKo4@_V%NcL0f|*-!|8A_NK&)CRK)UZlhU>{S!+oZ7-`%@>`3Iw(Ln zjK`lp8f9zUrs4dS41i}v0H>qC%I=UAFp>qxkihOz!jw7lxu_q@74WtVfHbP<_3Bx0 z&VM(yx9^@m=g+$}PeXQzgClK8pcv>0#3yh}hWjkA_kAVyx82+-Rx~N7so67i$SEoD zLuAgEOH!Ubo$#R0f??b6S>UFr^~Lq#3h{|F;YdDnL=gP>`+WhDed!j{5Ww1MnA;eb zb|$WiaBvXD#l=BPuLXnD7(01nBG>|+7_TtTSWN{PkDa9Rs3~R^v)AWgXTPI) zVGxAGWtSX{Of^&tae_j`B1CZP2APVJ({-RDf&g2fGFdqC4S(lx5nGP-TVbx*tjjDCmn?Fnk0n-P=zR)aU;$pCS?lnV< ze(E=a>b>1<=rBMTNt&e@T4Yc;A1uXA*~Lduw|2Zo&7a4q_zi!_rFAaGYHbT z_gDGdZyH|X@cCbHN9Kw~P9kwY*o9($XF_xl2)pz9*YDrIM}S46!0ZetIM7`(ZZB-% z2(rr`03H;C_`o-H(^r@3-<&xD^aM&!2#7EwP_hOepT=f~$!iQ&aH*&wEeaw$T;5n% zXZ`d!IA2g^Xh7is_sCo%mXQM`91k+CLr0T?<8fl*5P8;+;9#%=?s;WyFjVD95!a2J z`dvs}0CtZ!%={U0@c*vG_KX9HnVk_?^HM%C6Zhu^=|Z@;xz}CN<|#SV20=2de|P>a z2mW8v^8~mcL9%5szYhu;x~z03`L|e{A^=Z4Feqg!-pJ;SpYD72(mS;NGPAQ20B~gG z4o-}Coy}+ptf&a^1r$j#Yjj-~z3Z2w zrZ)s3v4J*f0byLmi^RVg@aM&g%_F0VP$8=ZG~!)Ta|`OSaxNAQ&Gb1MT+ojcUjGbO z%m(NWWk+u$DPOpV;|fxx*`FLSK|r@(;iO(8;?=gB^<(c(d%c!Dp4i*9*{G-}$urT| zDLW|Q_%s{c*3^tpDLMYwd=u7|V_1KZpk<7AEc-IlI&VU+3OZjX>p+@K<@%N%WdJD^ z(j+ER?ZE|V?0R@571kwo`Y*)nKSkCFD~)^fj=f4Fwv|z)452bfx1jV5bXs}4@Fwv& zC_O{qK#B=!v9O=+)Q7;hWZ_{u;Q}wFXU0KO%sU4H5H-NI^x*&iY{Rjz@bOU%4GsAQ z2G*ml6xe9~ey1ZK>L_xAAZXic1c2i!C}(O@Dy^z#_{^w5j?8ghHiEQpq;hA;Z)Gug zI-wIDKnP%1M}KkzAaLpF4M`~}?B98vfaQDKJ%RgnJKNqb4S(XXE)xvIy&3zI<5+`y`7Syb_=R zbchW@&Xj~EkWcc_-Aw!Y-AiMJ%}Jn5q3fWW59`v0{b7IK7#T4Hf-(QCshDyr6)Yh zS>QepInP4=g_<&?=(Cx!ZO{Y|b=~?F$4gURg;Re`!J&bi)WWHFLHq#pC(H5sbI&Xs zN-(bfbbfXDHPmcEBC_#O#kK-8Ibggula!rj9s{J$UiT2wHjaM$1lZ!b@R~D}_rTKh z0Km2FbwO-hne91^${JU$Tv-5p;O==7XbS+00wQ1y6bkhmvUWyF_MtoMYoc^8wAqO| z(UE{xf`P%CP#qXb5s8(VS=)y97;QU%HIsle5CFOsv=nqYkA+4+Nb3avj1nmbM!7a) zGEibhjcah9Ht|t17D*><$#zwfk%)xxiuMG+w6P-35}!vx0q8(maL}r~?0zw8RRr4s zB??wzRuE@%x^3S8C)4XMa}JRifhL95uV0gPV;u)>ZJo0g$}o-S_vPJlp2?5ETx73a<}-cpQ_u!mO*FmH)fLB>!64 zyjNJ+T~fG7wmLa?5Xpdmstq$aC!i+vj# z_QsxRYQEh?;-eGK973F~<)6LnbLaUclm^?h0MK|JV{pPa_F5l`rQYgB(~ zm14~N^5$tKpcM@`-}=C zeR8nd#QI(^KZN)Z4MPu#(-M4KyUeL|mYDf2f-r6Doa{tV0T6nG?Agyu-BLsx}qr)R3 zs17~ll;34Wecg&F=GoePM4u61lVuH-y6|G!-X07C$-8z!fW=U6479l2*3ycSnoOVG z`$Jc+rP?dnn)&y|V=M;`4=E~%+PxFO?jLF4S9ta6RS^h(Wk-#xGhM%z>-0+`|CWw@ zdxGW~feiPf&#MCC*&RS1O46El5+b66pHcy=0k0+A^J&2n#9!6E2z(H(u{100f6&_q zg!H2#I}dbVNj}i=_f5GlGf>G0Rry=c>;|X*XOgAE9G<6iq0ez(2q-DwgsTxV#5DOQ z07^T7&m!Ey7UNViUG}k{Dx@#c^NG%L&`s}EYqjP=%mzSF*n-u@$i%P$&c)I~= z?sm>K>$-wUneN*?16D&d_*z9)INR&<^{**8Iq(}UX_x4Ms;?}nJ^-IoBizsILfu#( z{<#R9%=+=-I5}p5HVouKd|E!UDp1PbMn+CAE~CCq)B@r5Tc;e_Wb@}9(83wqHZe&n z`{0`*VF>-^?*yC{nEG9&FCy@&On~o!B2Ge}NR9j6GGkznktNt41Y|t3zLF4@atkQj zLq$f=ac*YyF*9=-E%c)=o$rG+Frn+`ch>v$1I=*tggGTMe!KbCM)VmgyO;) z!REye#y875w++oGA)TVRb8yyj~`_unzlE70y6tI2zsm`=btTpJIx^a zGx`QLVIOGBW#^@bsA!>F+=6!dAiaDsMEHZxoCZ`LKS0HI#zf|xSAdj<8h=oY7$IeD z_e~-l*F_0rNa*UidrPO$g;4Pv(7~|vHVg+)Lfe1PX`nPA{Hl$-pJzmdY*FjyT=4`4 zetV}Gpf_l_%B~;z1#$dqeZ4y2K)&^06%MA#kGq0BADt&^dtNze4DAl+Q;DPuP?dtr zJ`9GiNd3qi)o!QZXfr_<0@b(8ftgvi7Cdb98>H(oIaM2ft{-gA3X+%tO<1d3h~V;2 zCZDt`p~-##nFl=w0Jx_~{3^i2l`DZ^ofQ)59VrnPuLyv-ggc+02n~mKD z17BawE9wr}yNZ-#O0-v?^bhm`2XwG6Dqh0SDSGbQx%O>w34lO+r%s&`V*Mcxy_3*7 z6!VkI{(f{Cw8$*ljQ4hS+enKm{h1R- zp}==mShz1i80v$d)t%l1JBCpjpE@30DIzK^51s7wCqJ5+zCwDn1~qFy*UH@ z_$!lAP)!nVe@i_+jp~b_6-nsneU#b;ZcNI^7zl-Y%uOvVI)EO~+;=L_4ZT~O_?3P| zC{P;Irhyb$Xt|7Tx41?V6dmmk{pf*v(D~lb(&E$lWaY`hV2lYn*tu@1*$bgF{*vd| z*pT{s(2G;>?%gTq*ia>0#-Onj_?Poll=E77e^0L}PTC2=&nBNu9>hXS71TS&A`hl& zBE033y_jCd6JVfCOA3aF$`m5Qp!)!1!h?=hS=kc+jZq65m>e_o3b*~d1VjXBZ{Vih zAOHpS*g@S2-|ripP4p&3!J20%c4in+5iA$gW@8xQDI-Bt)9Ko5hn8%d4a2=S0q)#lfJCo7C7szQgk$ z{644E{0RsA_3Xuqa)L@KE-r#?ZEaAWI5#hYj?q46or{w?t(Ip116>q3E~_T8AFkj- zkM;NW7c|OUc;UrSZ8UfoJZA&1mG+d+sRz>~^rxI~d!Fr+U0?OoKM>vj(WvYJ(|_wJQ?fQ-f*=+J@9baOY=<=SL8JgckC)h zZ?Dw(`CAr;gJLNXIoD5(A)m=skIVYLP!}Ogn|<(4pJSI%jg3wm&D7jbF&px%c?r zt6WzC?&r>_OF1{!CS035UHwE;-SsOn?UY8!_pg8+NFrCf4jq)zn(!nFz4_d+e@BM=NlvAd^+v?zqMYWiZoQ|Hz2px&hcQY&n+9* z{P$?V_uVnSP6}OR6*o z>wF(L75BBgR$wYW?%#S6G)u9ByOdcM2B`m?W2>34iNscRfYPQ^{gYoeq89VcF1DUS zF-h|<8ljLuf3N1eg0j( zsg=mVHSfpeDf=2d%DR=u?<~Owkh!<(b#JMnie=@Q~KNr#a`n*Jj4=KfQ`9s zm4+9-cjcPc%{TaVschUqhoMxiefc$bSgwm)B>_G|nRmjH+^fT-{xt`Km#3x+)`?~K z$u!XZZ%sN5vAILj+OVc$7RrWJ{IK8u`BjT76`ASUbx+r0nV!Kqk;e~L+R@cruJ+JK z;Jax|bjtIp^J9_!45g!SXqnG-GtW?NQ~I_lbw}73Z?pHmdq0GG%LWkA!ZTbwe1^3A z`KuTIxb-UOEKfAL5ggZhCTIK4d^H6e?|)6xrMtb9u$9JR?JLvo9r16QI=)8;8)(8FbYPPdI_>rYtG-Yl`OHLh%93+Ue@gfbospdQYa;$ezZ zm}S^r{yiO6wacFh4tWMrNoW@-+Pqcp$-x+?4KUU=^CkVjQN-2ckovJ~MUhHF%Bqf(J{XfVv#opbra9{t6icKRStwB!D>>GLn$ z3Wt{IA$N@GbM&@Hj`3auHi{Onx-@G+lo241t#z*gAMp$LLozU%H#iXtM|1kq#@Szi za9@?f`<`nod02m16wW|$RaJk7DWr@jpXuMPq z1Rv8B{ZVW}F%)6St|Lnu7wQ;C<$HK)Ibif#oB?B|drqgZ@7F0$ zEa$&}`xYZc3QPvZkU)+QE=W#JzT1N@cGJbBq#ogm_|U&$_xKWLt>0stN>sf>qR)^$ z!{5J`|Mu-$56B8gM52%YWTKDi%xg_evM{)I1SCXgmC-1)pf_p?e-1AO_MpL76XWkq zRbU6{*cbSOcZx#Bcq?A$R~$X+g#%@#n*sd_ z1D$ARMMM}tXJ0J3c(5=dutA8F@3Cc0+&@fRiECYn;q`?c%gVE?taS;(AUi^TGgRUM zqDb1=eW_oA&Nb*EQ0J&WSj~l#lja*{rG_edG1Qb6lPGLZ1?X16%$K1D7S-;c z-x}&mAvHo6z%Ox$iQUTQ``LjO5%7|Uk6zwoxtwijf6n$0&iZK^E&G~3_(cYB>c zXK#OrZ_~akzcKq>58vjjlWDLnz?$t{cgv?3H<1yIe51xA=bxOO4986O|J;4tK3q_~ z8ni!?8CY2G*KMs+tz)*Ru+iNizhk{%O!UV#=%_DVzPu~Sf6Zr8^E)6}=s#Wr(a2fW z)82a%@V=Alyg3RDN_TS?-%?(fqQrPSW;5X#J9kq z9SemVB??e3H7}&pfBPogBcZese&Q~Cq`lWo#Q2-zHlT~Zz>benY;{$gH-YTI&)6)w zX1feErw6y24c=zXO&k(`17|rz;o?Aeho2?$!?z^P@{K&qN+>fLx(2>aB^Vv>h!6cH zvkRx3KK6#x*!(Lc!xZ@o^S4Ca9C&|9$SH|Izu2a>pUZQg)+R zwq(~?5qEaF3BGu>7l)sq6pVgcpWH(?#>>C1WMC%>H-t6rjKf;_#fhfrOUc|W|I0J2ry2oBJwWgKMwcFwP9^UZO7>s zB-jlNUgjFe2BH5}Bb~i))2b~cM#RN+{L%M&v=cE?tt57K5DTLXne8rW0_Sk>JLM5Wb)k~ZKIypEP zs=P9vD9|n_pleGoTE4;`0a{HD@}smOUE^?Gp9@d1xNtx!_6JnhtZoG20(efDjyCUdAUK{XA9wtk5#&{ze`7kXn@1O(0;^#Vu+ zH%w72eak%@Yz_fKXNa)(vIek;b~}9$82&nQ<_x^yt!0|>vn=#|6zwz_fAoD?M>qB? z*KON4ov{z~by`$yf@5Oll-!`-;#-gtN@c(I9KQlZ08_88OKH9QVvKiGJI{L)pNI;^ z?WthC1dY~XnAq5k*^V~>za;wiU6edAI8dx4(G@yrgzNzKdCLW4EIG9wD+%lguESG-2Hnd1WGZ2)3FAkt> zYX3ANY*<@)m41vj_+@Hq`n^0UUX!7SMk>`c{k#{>5Xm4@n7OcB|10C19zPD zi@kW=80FzjJrCEbLF&*&io*mYTIj$B#SNxkF_;XET(r|L0=P7XR+`zFOT_287Yxbw zla5U9uktQtnoa7t3+Q*vP5F>mxrQT_RE{-MjbFWb6}rsv#7H@`i#idu%BM74(^xPK zCB`i5JQPidxELM8Z4%n|?a4J}IC8)Xq!PJp=WpDIB-aCDOX=9&eNE43Y5N|#GMQ2p zeOqPel6Z$nD9^lRz!eb@or(kE+q_{{dWN!vFp}TsbD7WItot=(rp7Yp@d`{v#5fD+ z;p0MrlKyL&U{EQN@PzOk0|+I+oN;FzBxI$?U`vW5>Fnw~T!u5vykn_u5$BtZ+?aX4gL*oPrEtl}=5zN4Inc9E5SQe$=$1|^8hE^f9=js0{( z6}KfG-uNuj(Cd>>(`3aftd;bp9)9WLATw1w%cZsjiMsupv0ygLH4v=Y?ABY_wV0?6(?+10}Q6n*!#b)CEj!`u? z8yJ6JfD%i1(o%a>1Xt5-HBRVyQ!^e;pT@<+vqQ0g0uuUC3O*X7g31-q3QBryX0&K``V}?d4^z|4T zMOJ6Wf5vimv~vSq=E!?)duyi5c{vAK5;>$+anPJ8Ph@t5AEI6Z!S{v(_qUU7V3>qb za2pfyP_}J79FHg~u70>{$^`_NjJSe6(&nu$tU>O>*35q4m%^U-dWmsJVGg=;Ru7zfG&4+Jw zQHWS#gpiB|28CVP6NE2bBnC4(v4l)Q!y<@2*333ThkTTcr{P|(X($f~2IdQ-pk)>Y z@u3el@WQ=MOjoX)f_$_{J!D}4SBDBtu*qn-w2aIx=-jc3PdUWPXD?ikM)gl$%^-!s z`+C;|WK8;{2mkW6uS8sIsx6*Lm=>4Kx~uxUxHvfa93Lk-;o?=Rd#iX*((U>Sg}`D&j&-vF3BMz2kg5~5qDhJ-oAdI=5W@5(mXla`i3 zqn5J0Y_%wyO)ott=rfdaz9b>toYYn0YGlL;r40^$2O>`d7^qJi-Bg8Z`bPA9r#Cw1 zem|i178uv?8LsTO@!yaj|0gAcNR~<{WvsnPhrJSS9_0#%Y7o8<8GP(x<9)xm|YgiKTBauz1@LgF%jx{FE)Yi z9nh@S;d&-0DCjUCUzEJ>?OVtf zz8Gi^-``;`YZEP^>~HxFm#hZI*+d`GO(|;?^i$=ujjA6eoAJ-nUx;nh!*f7cdY7(w zoXedV^Qv&MDXaa;VcPKz2ne+Vi)1#TVzl5L`DQ8mOV@#-et=KW8(>zPda}{0yW;ur zFqsHHOKXzfj_1JkwJXyJSl(`vAy=C(D;XUfm|L&)TVD`YZ2vs9>cVa(NDmWlt`8ER z@{W{qC}A~qA3!F)bVtp%U)o-5sKv8428r7-U!4#>)K+-VV=*;9I&ir6uDHN z^*f+-n_(rsOc;#Ihb8T+G$7dFT2d z*xOm%SPn`jKg{3`DbgC|RiEXI$_hGP{5TKm0A!yt-gR>_%k(p~c>9xxN8ApKNnv*t z6eb!_Jkibr!&+EL9@8jY|9kvnfB013rZrqwGZ3B-*{Z+sx06JBJ0Zs(a|_C2>~A}s zcZ*_t5zZjvtj-+UnW!&vkO+}qgC7D)OI6_(1&RuJ^>dRCEa>lyN)~;iZbXhveaCsW zeW5NAOOb~2Y^nApZ9JlfSQ&bAK{A6}lcii<2C@y*&34kzy*og$^%Qkg4jA|hC$=`5 zQRO~yOn;a(2J>1o8#3jkxnO;?ty$hc?y#L|dR?E=6BYvlS_jMPk9;&xCC<0`xA8PJ zb+^@oHiM4$1l|aZnrV}-I&F))*zg3d)a?Vw6pipgGp@?jpZ4gWQdpBHZ~i5ryd#}` zv$!i4hKuz%GF$~o$@GPADDvsyqR`$3=!=YzQ8!g5W*TYvO7;#hpNAU*zc1EWsw-et zJ8N;AEKY?*B^D&#uW|hclo=Vh4}h{t(%Amhkt9pbx9X!BHa04{=R1XHeb1H{y}Bme zoOOR~=f53$v}0)5L1@)lprYS?6;IK1@WuDVbxAM%k+i* z5u8ctnm@PBVY#HdtMzWGz}F@%(Hy9v`Px9xoo2jj9@5#qsdF@D8;r(tZz}b=D}PEg z33f{L5g+DW9<41GuN6kE051DGEL@ad`w zF$7KCAkHP3pj2^??LRbe(K6^-)RgFg_4wc)cX|}TIIb}ML`cc}OA62YyZ@>K<}=4y z6b^2xvQiTYD`0p(iH1d;OUtA>J^s6`?H5$*U@Y$kKRl@tr&Wz!?eEyo5x-cvyYguv zRZ)vHU_>bl6kz@?(96`Hk`{@H3=Q=G;sSHHn;l@E4fRR0xq2?03YAI>rtSA{vNLCnLpq0wr%g2a7DUFi9~WpDoC{At5dml7_{TjLQ3Z@d`!4{$ zwEmK)#ttc8Ok5lfaXkWh-rW|IIl0K`j=v)y8bJ7?I&f|^r8o)QzSW$w-Ff-au zI?@`I>jt>bgOR<2v$r?}7g}ZMo@LkGJ4qP(?9?OOXB-2v@(^;<^WdWg>>Z_15d#$P z1}0dw8Y*EEf5x8tI*Q!BL;IV;8Fr@~ocGU`1u#_(Tj!ce-9sG{LP^JO*iCvYj@18% zgwWA&?4kDOkq?xt8NJrvE3XO#D-%L^hX7D%J-9~sRDz}8pCg>-`2#eNnUX-mJ zy~gkV&M_G-gFell*=Jf!&KNo}iC_ONxVD6Iv3lmFEMp`2O{KmMd&~4ojHQf}wEIUe ziX=3z->OsHzA>+$=rF}PFE4)}xu~#(-JRL^fo0|DQQ5>(RKhOeDXQ=n*gpPWwS9Lu z*YDf+$LtdcA(AaCGzcLpq{yDhOh$ZV?>$1u$jlze$_m-L>=6;!itN4jbH06lzx(`mkq1aA}!GyCL&BsqP=gw(b`+`dt=V= z)q-tzoMMx?30rW|DVz{3RFqIv^&lqv>&gi- zB{Dx_k{M24zf%&bp6DuLc-|{Qyfs8i=j+>E6+sR&%gDeGmY7JONNQFMd2buUTGB4R zZ^Yw}E2y6sRIR@uFs#MmN!c4ABd0VLySpkrH7cceFz z%cg|KolVfPkXe&YM|(|iNQ>nWwYbXOTpQ}k#YvNU1G19M%+n(FBJFjDl&F-Y z-m48B&gUC8bzfClcsM!ytJIk@?HEE3>ZTA<>cXCkl1~41O+80w9HZ{>9*w1 zCY22X)`}Y{HE7)T^b6a@ii*_PnoLh^CUe9dzB_-w4hKW&^Jrvy*r}bYS}3dy9cS%L zcwnFw=$nW(Oal!n+5&FC2MNzU2(={zy_RBj*}cD9W=KTsUbM7|mKqB=QAzgn_*l)0 z(5tD4t`UlUW0a?xF6Eozb55uh)W)KD2UhHB_fD?UEB$rar7sDMg&Cb$u{eEOIL5}lJNybksUiJSG!04~f4?eHr z@~1{nF>H^ny>^cRl`=PUemFB(yfxQC)XgopT9Ai`CIi0Iy#GhK+GyST3xe|6U?d_R zHWB07QDO|XxcQ(Lzo*f8=MJjgqEQ>|CPap@+vQt7!+e#DRvU5g%{Kxa4cu@}4p#9r zsQGD-LuBPQMtKoAoS?(p<_Cm$G*z@S^JW;R9GV*9qs$m$u2a=4=iLa0%m-(+)_%X| zMn7-;PP9JS)q}~hYIu~xIr3^kacjXf@_jX~%Ly4uw7%pD+UYoXEt!I4Rqjmy)LI}V z2ni)RiwA&N07d}<-hlKBgy;*$oJRNR+I`uZ!ShPH1t4YyITIPgOgcr(aS}RY{c3lZ zOKeWihO-Zy988}hB^c1Ff(%@1d^li4u5cUa!Oa;mP*9F)LI|7h-mxKoi2iB0nc>?m zPW-iF<`~aeJQpY$*Bx`H7kkB7U2hOK6OQ99*`wXv(Fxnv?vo#r#3>rgjAg&R)j8mI-dwQd$YW4Ke^h1K>2|uQu{w0J00Y$z4dyc-LVc0=tua zI>hLd4|MKs>Sgc#FSI9Hd*$qo-?d=`7OdIEzTI^5=W^lZ?ybE98c5)+ zzY~ZW0W1(vpNtjpsO`TAXeqdk1FxcHaDyraq%((>LmoYXB`z)9N3S)}V;J9b%75^k zMe7S^jpQgl8a@45D?9q*3*E+p8J51Dz_|v6aT}3HzL1SMsnX1U z+4#or`mr$n$!7d-U-=te?wHLx>dzi~Fuh#*s%o0G!*PyFU+d)JN0tyw6!sfj4DL%r zjuVg3Vyc7>ls0V)9WH<4@qGXO8dBwgaLMo)H?s!LNb;ff;7<#UYlnC3(CRqo>= z@U*`yRMM5vy4~43*FT##MEN>K7Cga0DU{S*9Ij|XKiQHu@f)XGmE-*T_M{mG7=k_F z@7_xtX;O!iFQtR2QyODWq;0=#e9TjE_$))NxHBbq>v*+JDgKn&fsyWnKFfJ$XHJHb z_U!hh8DK#E*TY8+!HqZf3!dO@=zC#)7)@yuq1|dZ75WvL-K2V9L*?eogh!CK)M|ux z_4S-{-m`Uqle4<|VY^mmKEJE}2Bz7r=GxGPb>~xkxVEU9O%;SHG0e*m2)lEkdgQj6 z3Rk2<7cUJ&Z*QF^6%rwAb{O~7n7Vr^TJOe9yb)S91*e~r!-m+|<7DSrodi!#+;EtW z(n&jb-=)?qWxcYXy{5Nd$usUeM4L^x|2v6-r_uW^p8U4@=M8bvqbcIE^Fe`-Dlkm) z)OTloHf5>*$#~-5^4N-u#X}PBmy3QC5w?eye4=_9qDB3xF16~CN5Ztf{3Wbgs}~9U z=HO|A&D9pNCMU#&Ipb6saUn zhQf6@J&7)Vq_UNTp{n6o;P7N^?%a&y3O)%}$j|rYjLvN9nN`PY>k$~S+&Vs9+WTCO z37Sfrur_FG2xk_5pirdC!$>TJK3=R#p>eIL7A$3Oy$m^8Q`8|`kcTx%R-B7TJ5G(8 zSGyJW))X)ZgH;UX(=jyejnPK<f{N>iuLjW=dZ7UE%TGfZ|?wO;jxHEHZ!V{pOSx0;Xkd@O=DK zQV^DGNqgP?h!BF3AJp{tI^wO~>ZuD2Gt47+!o`qF9Z)oiCMd|u6V)?*DkLInPdz-x*3T={_s^qU4A_pE z;2nU?tTmFh1m2Mk`JQ57TwAU5oAua) z4KLY=Dq6e_1EtdILwqpkAtuOoB`_orqBVlaVn|#l^6VrOO%3pnmG9WW> z|CYaubMFq&0*%h;DOS@q6Do;ysWN4U$2zQtHW=)t|FtbG<)idE<%v84hauY?MyZY} z<*SWI?cX z(_Mp#Th?43>x{8bM=vQ~7548E-CcZy#=zLfRk+$@j3~utCT9Mn5o^@wW)Y)5a}nP< zA$?78kZrBigh$w!3so>a8*0@n&AN{#{id@-pL&C2#b>?_)bS-XTuf$}8K*5Q#DoGm zWZz;X2g1zBcJKuPoCAlj=BZyyEzcAHZOC3=ql&OpH0};4;-Ah@5IEaTcQEq^=L+LX z-W2wK+h5nHqjUkaMk{h&|J0QnLpc)}Yl|@yYD^>C1@yl*-XU4hRr2fc;9@NMR>UA1 z8iEH!ARjQ3wG9;!a87S^qq2G<^A0ZHgv$Fn?e?HhhGneSJsxBY_&PqHT;!pAfEb;r z;0-cCsi~N#sVE+@KGte!jM2+^jb^+1ztdT;km1@6t~0%j3z?a8C+&12&7iGgFU1)> zL^Y1PlAn;QY|P0_hxDkxp}Jr$^0KL8LQSt(X_nPB+<>&!!5GJ=#dPh_Gdi8>LBjMy zD}G8-&9ni$-!2xZYoYQD&c9euqC$FM5ZO9;c>k&l*~lewB7&s8Bj!bQC4ptuRIB-`siGgbzexG6`@Ap} z-eHeXIB2*Od$OyWEo<|e6YaWoJL??5_MD6gnY#UKG4Kudt2g)UT@&=1I}K+XkE`(5 zTF;qakMc{rs*~SsaS288A3Q$yc-X&J-kI)+W5#ikG@&Sw7xDiF5tYxq0sQ1%xXT$E zQWZ}@PV=E-9hL6!vxct>EtPAKwAgD}2FplFUh2pYnKO)(@oo-kLdAfRyWludGH+ZLdD=V|5LqwFG1;N77WN!=)puQ(046 zJmP6}7E^0Ob`gmNWx}STMH-anCmB9$kyE_;CmRAPib7BXUN{3+xHg`KXspK+$U-KD z%XK>lCq|koLi3!Rs@@7V?DIB`_;MWdW{)_6Q{?(WF}Oe0tddn^AQCwux7gks#lrO zVt1mN%CF%_;=k1sa)G8_ZV$gtSTXVM{m$SFoZZokYSn9YI7S{CAp?S( zH z1WA#0nI6y>h}*`3d4nv6Ue6VF6di{`z0hsb_rlYm9zsi@F8;Z_Hv-bv`aca>+bA3j zV@7hgLbGMNyEZUvX@J{B_6Pz{}n9jOxvds+xLWi&>*s4j!@?x~^NaH& zAqAOKx?^k%RSa{fEmIz|&qM9gnt!#gAR$Blqy+I@o8A!R3f_b^5-Wk8knc{sk?{pP z^Arqp_MUhK2kZb@WV+MO6=0ZAm?V6@W1gfi5qWGxly{X@eWWAoO$t)248J&{v&lje z*UxKJkq-4tzrGt~=F`ToI&W!klc`xi+%?4yp5yxElhTVwZM;=uxwa~&OV|)mS?M^7 z4;1tD-{xy`A?6W4Tv!gbqAz!e;7xd|b`nK>tH+vAo9g&;KOcz}STZ@=U;1|Q{%d#Q zgnUU^c@7@u$W{&ckXHI~W?}}{6CP}bj6Tltst03- zqHty2y=F>`JnZ2!axdiy`-HaQ-;u>Cf8ICX2F>16eJzc#HNS+nj3;He%1ZYwv>`Dr z+JwU@x;4RjrvJQ#Jgxuo=o2SC`Rh^K<+=pRIY~A2CO$JluQfSfxM{rYM*c9|#=|zP zt8%k}g+tXb?P$zzWyOt*CA)a)3<0zCsm#pLk&ZvglJDV~*+*B$pA*aT`Xn!s<-)%( z8kJAH>nVz)=#i7NA6LUXDYreLy>#k%J~eO4+aa9_Z0f^V4xaP-{x< z#%~Hc!i##@7kD^}-tU>Z9cKS7Oc1y@vifu5B@MQRhg5d(M=e~+H&ABDMN$mYO&>q! zB5z|CT%CMpXsSk`IaNvu=itFzsWCx;TEAQ6$|S|)1wc(Xp~Rsfr7vT78kN)L^uV_|J>P zax6sVsmw(Z)!i%y?G#evja$C*EYMv3GASo3!*SiVzf4d)vMA}Ej*TVZ1@9brkCrT# zf?9i5+|fBJCiDP%zA@jse&Ko&6kd|-|bL*z!()-b13j&v}*UQ17n&d0%$h9Po}oM zV9JFnDEDXBYUkN@gAhZfRkO-qfJ=cT&M^1c^j*H&9qqgkYtVn(e|yN90G>$NK(DZ~ z0!QmHwaop6%8n}Fz94un(`#gX0ad@h$gmLDKiAF?F8BAZ^se$0PNYs>SuTawEBVss zoeMi4q``gx`!6S+a}KH#7$K#jhZj6^j4fEJB-^Tp6|o{3UG42ZqfsI!dyL2oQmblA zCWI{{B*Zi4PhQ1*hj&DnG0R_t)an6I3t)}so|#pB|VXMiyDf|ht}H-HR6SywTapdV@1&} zEqWp4%HKcD>RNrA0Ez11m;81Yc4WwB#_q8;4)aStPasiItvR@VrB`zNO+egvai#fI3y*uNGB@za%p`G{`OvRAZPH69BkejKLmE##&b8)xJ)Wy7yMa|y6wd`v5 z)|3U;!IbXVqawyga8&dcsmaLmGMLIAt&?4K9Q%6<58lHFE26vOIs>MD?)}7ss zWbWKnkb*#mA=Q)+LonkCcEF4w5e%JugNnGo^!=!g7IqOdli?nG{0&!}_!6GvLssmc z>bt8^ib5%K^^}j3^pP&>y){AJpNMCOvhu@UVhCf$xq88PO#=x@!uSu69+n zb=`_LzGn#exa6_~^7vZ+9K2+F1pwo98D{B9s#m_Sm%VyquCS&|&j6N=T$R>nnzbi7 zq}qczBqIm&Bg^DUPDHaf!UVl5xeGgPq+(zm^=~|-Pd4TqBxe0v%|OvrnQGs4%G$X089p0xQoMrnsSV2;7CzEUbxgnxfu>LWfhrn?`qdu~ z!Z&_dr+n#OGvp9+*Lm<23&*$8-})z$C}SO&seKxH=pzy5y4H#FK>`XwqwHV^mpJk$%Zj+pjUv@m8?g%m2iA zL7_N5FhKLBpHmvHQ5jYS8AC8x2;B;L#y-??P#z zusX|tBQ-#8-t%+H;p^~v3=n4wZ^m*lUzBkGiRA1-D<*1iw>xw>qqckTb@yV!_VIvy z00TBgQW;C&OSgg(;fDRH>1EH6?a|YV<+Tn~1Q>-HlChok8XrT7J=8R`CPwr>2V@ln z+NS= zB6A`M!AK(Flur%vY>m45{>gn#iUHqPm%g$7rNAy>g59ECN_U@Wh_2k z5Pn&iQaf0niOe;zm|I({B-l+^UgyJ0zyT7W+U-u|n%kXx^kOJdJTzX0frRq>o(?It zRJ;2dEi<4ZC+xa`_L| zJ0ff;dNekMS`|71=hhRP*iMFaPRz%bF=o_KMwem}p1j0p*BbeV+0G$a@yNIBdP+Yg z{1-Yjk)$zwAe|^FszEV~fh;k=5?4$8Yw+Y>4sR3!Lly<<>|UOu!&Auhr1QYRJjTY} z$4B?EPOYB9K4d4FJcoUNA7bu~hrNFut$-zlA&q^2;YEo-S&C|~bMgM|GPp{N-C{5` zc`$C3Oovuq_1|<(vx(2uuB@Hpz~3krg5&{%JdB8yo0|lLavK%~a-qYBKj4=T{t2je zNI?Ut>Z+cnMPtEZ#!IYumX9Yna#7bmb_;AhAf1Dkz(?<>)3r{l*Zd$vUnEMgb1&E? zCz@uVdw4+e?SP%gmXkyP>Rkbv6n^`-2ulV9xCqHo^SrNt%SIoMvR|6fUnleYA@9j6 zx`v(-%lEwDR^a(#LMTA6u|kurP7>ZP?Q@WRtry6)|C3Oh~JmxRLC86?x0A^7hWNYzT%Uhv72`K-yB+c0Rhe0^T0^~ zY4&iw!)o8#lt;@L9vlIiP1S-&YmnwxxtiJtIM?!wf=l9d(pyXKMO%oZ2n3*hPRw%= z3FhI4_A6Js+4EZzi0(hY?D`G15wZlL0S~f@Ae`abVmB%aEK$G$AnA25AbkKL0i`Dq z@N$JlwO(3gT}Pm41l@{e&ZsWaO(4q$(rp}PI5>jVk#?T(VR(Dk5ST3WyuhPD^3y zj9^=<ffTcUJA{I#E7s# zyDc)3G;~?T0qXNnG*XcL2k`a0RR}231Fd;ZyfgypQ$is?xMo+VuuOhQvC&dg>Bh^% zB&pdRvylJ6O@N8%tAXI|{6Th?@bXFB+UG>m%nxqE+S1Z^v}WKb9|33$NZ3B078Yv% zH^^3hs__-nr9e}yDNQmcM`$j~8NMA5;~7%%i|?PKpx}?GNQ&@vz;r6QM4Sdx@88FS zq)kSP6=NEM@iO?Bz`$}EGgekoD%5Mh4CT$KiQAcnaUrUxpcL%I z8VJ8PfWUW$sIFA$&&-)q1Vz}HD5&nPtb(=wn{^^{%+Sc_S#O%;#vfid?s6iblm0fi_`%fpfv@LEwjPC1EjJ1<~;2(I$#0a6w$3xxvPK>m#A!R^iqWW7k{ zrMLj_G0&DwTafETdRWYpnCEE99+n8gCxH}Hu>YPDVw(b>jjQEpzCtjoh-|SdH%|&k zvoZj7AL?#%KZ`S4KL4#*2oQ&C+1vpJ7$-;=L6S-}C?G)8-rl}crkMtG@&JL^7lcLy z(~8i5x)1Ehb@(swA|ApZH+7FjihuBGFDP1tdP-o< z>53N`k8J+>RrP8}miy@L3k$9E?F~MtuWYytCz|y;j+R@g*7_+eJC0<2|Nb3$UyuNC z*+O_I**dVL0AYIrF|0n4VJOS-meg z?WS2)?=v$EfCr&bX`8LGB1TZad$1Z-!obGXW^i@j zO_|#;-~mDBNQd_DGmw}Tn810!zc+(;HGLohXzhl@#kD_~A$XiSfcR4sLcfFkTvBr9 zMLy<0VlRL8U3PYSP$K$;He`gdSPOzhbzJ|Y>1HdptsL(r0BB>dU8KRC_%|Lf9-X3R zI3RWh(q~9ZwgM8qY$Mg>?|^QFeqkR6TWUECVlxG}Dc>NtMvxB62qgj*fReJZ5OalM zljT5drJ5qh2tA2nqE`{xB@X~z%A?c|l}>2jk?kHR3aIu7ZLN`1H7gGYFL#qogWh`g zr%*G67`Mut*YPUFIXf@Z+qyvhF2j(WoI}GC+CGBN2o?COjrg-$w&txtX}*}&oez76(AU>w%d z+FB2SU00?H#Ow}j!8ZZMKK^0^K}Mz9Fpt;|otRr&QgarpbW?&V2@_Z5Nn5Wv#1Ru=KisU)zIl6GU|$Z1)N1h zIl}U3(~#S{J2_9_3lU}=C{wJbuRT!vE}RIC2INStOD$#FgW=b7ng6SRx%g)>>w{Zd zHO#s5>!6?}IO1;uJ{uMomKpq=)vLeB7v)!|p0?vG7^aH>N3O{CtAbV4Uhe`fFf$PW_CDGql{z*^@?xFDWKitb!>7Tr4 z;!?f;mjx}s87r4*a0XU|-230O>;KjExjc;jrfkt^BVsKFAl{;4Y9{?Rkkk7N2_9~- z1K19r7b9reiT)+PdVoV5oLH!AJvACU{qW(C!}u13B?!zj0?`Y2I9UxyRgxzH7_o@z z76_-lVhx0I5;_nf6kdQ{06hw&2cGT>qq-n#^fv&*pEVFE)w>p7gJ=*@HYs~K2Cm`y z@iC_u*aYI|!GnR{Oa|Q&2%>-=27Vt=MxpU?hw~H^3OaO6+M5l4d#{JKI3eJS zFK<&2DJ~+n_Ws9+kT)p#>4A4tidV~(1iCV!1O`W*=-|-9>FfUCF>U4L!nY|z-0w|N@%O-zfZ$wp?lg4PVddcX0@yVG zaP%uUsUL#@AIhfhaYNG19Ykm?W*NK+VLpg_`>zCVpd8xB`SM)B)y z#FE6tMqNnPJ%oGBhK&{W85#*wLU^Ce^$mFG2q+FA;)2+|oZLk?UJ)u95GD}yNoX+f z6&j!*!Zh$V`?9ER;yIZ6XGeSMup8@vLIJHP{G`QpBIJb|&d!fC(hoD{phVynysN+)&gjd6m;lj}d095MSNAzmUISP&XIVq$eBx*7)Vr_<)gdM7VA43ihtnuE zB`eX)yA!umDTD%=yEqVTkUj@i+A(m7b;j|?;Qc_nSfwo+j5mks)h;uTJ|KST%RG2X*V|^#>pbLr_#yq*~j1*LjN-fbH+!Qu2ef zyyG@bgJ>pJ(BTFILgQ|`+JIfc>Yfk*o!ZbA1<(VuXx8#jhKyoMJo#Y!oxylwhO}k` z=hfc{oSW6#czNIFZ^6o3m-;?MrKnqCLJVkO_E$p?Gf~~O6vYeA?|_4BM*Un)wm&V* z5=^=JBGCfnfc-076vEMd5KKWokW%G{KQKN#>0112Sr{TH9m@5covOt~lRM8grrUrz z^md%oiM=Vjt^wJi$owYP{DaE4&kRZ)NWrS#8^)~%M0p*vZf!)b2;olY)M!$k_qV~; z%=}Kz!qSpXDnx=hf{*ky&3jM?j~Af)bwNmCS<<0 z{6WK1f-=$z>#yEqPVCBAvV_50H6Uw7aFdyl66hwF;mOnBSLNf(0(iT=z0Cs!H0(+ zt^A(SZIA`Mg6J>-PS^Ely=5SJNaZWpGzQXJ)~?pw93&U$*x7UYSZL1#nvw#tu9P#s zzM)Z=qU3f2-U33ZncI{EH%rH?5$+U-ect=QSFj?Bm5}NPg6Mq{;DMk$YPIIM>3_%T zpyFlmR@%H;);I6<;niRe|9l3MK{Em!D?;D^N4hTZL=Pd_YdOXaLhc~yysP=^I}tRG z=>H=NI0Lu8{WgT5GA!)Y1y=I1vfBch)pm<&&;?6Y^U>F10X8-^xbFgrN@$X5%;8Ob z&pYnS_6Q-6zjZnyfEW`xfaTde=?0Qojuu;U={*DO9|@tbbHQ+mOnMpSYcc9!e+x<5 zYehV>15tk_-i-khSZeT`f3~e`MV<_n=5$>bkdPSs&z|dvaDSGx&hyue=c9o;7NF?z zH)LhSZKBpeo=W|?KNRQD`Ahl#qPQUZd(LR!gZj^2j6O=zxIHyu{g+f#GhC zQ^UV*rnHPvKU?__of6`3i@%xQ|Eotfe9u1Xf8G9J*TBzoI+8d4Z^tXXfKDeyxgV`d z?Vo8F4I-d)4&B1gHFTaEpXb@{ zKI`3kpR>-V^MRNJv#y!@y6*okCrnXZ65|=sGdMUn3~8x%%5ZQ`e1PBgP@V$c6WQGm zfFDnsl_f>t%7;m|fd`1@B61>da8=Q0w?;_7V^jwzEoV45%?F>a#2tOYXt zlxUHU{gstg3dL5^BrvdYctzqx_F67i(t(_V!Ut^JPlH5CdoIKi`~APJocDwF_Gn7n_wnR;te0T0$*Sx4JG&LY4OEo{~Lp`EFd~P83km@?L_D#}4*FgP}Cw!Xg zf$?gc{cgF^K*d^nQS$7{R}@pIA<2`ZUZ~FIkrG%8=zDNv7+(92^L|JIeWr)arCv#ORu8x0U}OuI#8j55c(xdab?-ny z_8`UV5tua|Y3y4_F`NuV_OLWbJ)<9)8oc3bwA(_+RF1mP{HAm5Mo>o0=}6}5;E@4) z>kC-P&2+Q}&!h>{ZF@rheQU&-{BR53Hq_@h(;h`tMo@G6NiU_MrHFin0ZAbq)D~ke zFo}mdCAy%qc3-pP3f8BM7f>c+J$iIC_og8VkK8Za?Tr#bof}DSL|9;UL{#>SO~>V7 zcl-u?1Iam5uN3UGv?wifNIlM19K*BOgd6Rj<|~`94q1kUP~@iPqO*ZT22sJ5M;+7z}r9L=Hp@d z(@WM&@`qQ-&eFlycNs!MBElO~5s7iQ}k-{0k$Wd4azqlesa$f&*GmU)Z%v($`@I3Ims3@ja%$=z2_!j3V2y39WI#WRa z`tnKRk|D|`t?QH)sWBNBEhb~yZgzrT8Jc(FU~dZ!$V^*NSxrd3SmK<^R<80eirx)hK=swvk&!5 zft*29_*HOf^;vF7@K)2PaD%eUbcJIC^mg>3jf8qFJ-`&AC|oD64;`C+n5KjTOU5+l zGaT-EfUISK!!Oze+{JS~7fUp>;aDHphw>9viEKbSmS|%rbYmbP z+%+Hg%h`4tSv4Ib{_jEd)>H+BQdjD)|3U$Q z+W7fpApA_PP%jy2`o<90ez45>)` z>(U3lD%FUmccv+IqAEWXccAvOO+jleR2=*Aa$+7!>7~7v7x4R3E zp4B`brD@BVYUi*w0i$C!)bA=DUpev~#xI9$q;8A^WvQALU9BaU2^>yA&uWU&q2ZP4 zRo6w@MdjB*LVfF&!uDJxc&DONvbSa0Lfuy_W^<($E#Iq@YSVb0CYs2OjTp{FqrDE# zZuP!Wu8QUU4DY5=5~Db+s2vfXh4>QI?@gu1Zm>M;OZW`&+m^GqQo3ZE|M5d}mHGe_ zq;s2ykwFfO#_(g94UG?JNCuvwcHd`7MM3qOR#1ic%(M}V&^eg}vQ#~Cv-&CfHB5$G zvz5^yx5^^j^B!#(dwn@%-F(KoA--1c{-&n(Fn7@x9{Y^NyKQ2m#d&lDSyaq_2w6{n zfY@(rQ`iQ5Z_}W-J(4n$IH24!8_j@qz5W{2Sy0+-9xqBMLj(6zZqUH)F2bBR_jEaA z-*?F`Z^Wx;Ijh@a#82qi{M`ML%pk~m6{?M*ElB9Uoj+}gZlA~4;$1}*3!CZ>Fno{}7*}V- zr=IpBSLj#|Ig8npz7yjE^}^JD)@b{Ml$ivl9<)>9giQJ6rzegSx_6kFpRruBVqDdR zrq@d!FK*H23ddh9jx$}%ysxqV=Iw;?D#>Z&)oylX>)Rl29ZHbJ#tmpvmXMFEH@$E0FzKNV3$mEqt3EDr=-5U{ARr+o`bOw-T>$?RJ zw?;&q&igjRd)e^aor9idIiX+oW@&jwx4zx<9&))A*HJife@(85@YTb$VA}&vhmjoKxGj%P?=ntfRIUk~x^D&Qa(_-CO5bLe|Xs?ubHh&f2wUZ3o*=;ZN zR5gW}jE)%S1u6|&iWS5(q|I%}YBZ`bEUazl9OIuMPe#0_FV*u$?=!9#4Xn8MdDHHz zj&dt+P~YTR3@a*8#}OCfiL}hAx%&E4JjWjr=#~#Yp>8; z-%;kcX_@adkyE_t+~CZ`0OG@M;q8(;O{})BmJqD8YqwfS+}57oPN$Wjh> zKNT&H*e=~Th5h1;PJZh?@PaY5?al+BV!W%<>*DrpUN!%5K8CP*So;^LzeOP|6;rCGS(Ct@oRp#2H3GF=`I<|kXjdiWpgx>GM z9)9Kf-Ei&NR1LRXcRYaneA;rspRm5m{a1|D06>Iye7dI4QGfNY|=LBsI%E{=V#0XrTU2J1vBT~cmcu> zeXZ%r8sXBsA8r@JMDchES5Ey%bp5HbNGOFU&PZXp`wn5a?Sdh0q4{Ae;K>;SOCiTZIunXwd zpzBAUT-B<=XPo1)t4XmNvPiPNKtHt+qb}jo_>APNZIDcXEyZ^;A z^h%^dcaK<9=^G9;xlihjEe9x?=GUylvjD%9i>SP$;sX&LpH&sDzaWypQLYd zSrTDaiz*Pjsg|%!lv;xWhf5OkruUA#Ql+|{%xF5ds#+kpFEsm;<4bpVZ8|HE4dSbo z`h^v^hCTR33B7}yi|F%#{ak43z^u%ufxS@>j$0G?Wp-Bgz+UmiccVzqWy+MVcsX#WEuYq>HWR!_xwZQ z4cnHX2{-Zv`5iIN2N_x4Z_#YP+Jo{P9A96obOVxS2J-}$;dj}o*oWRMHNC(QX6l-E z&uJw5wT!*ccpf%?GO~&mm@&5dLNn#3FW>FHX5LxBE6KJhd9Kf$H(Fdsf7a`i(hkSL zWV(;mI5I?~_;5HEnr6IIKObzA1}&r>7({E~3xt1MGe^rhLa;|DUDVL4^Q}SYQx35G ze&x`yiZ^~T=5d%~{l{xojbkx&tG**_!FlwIcZ2H}Q|55Dos`U*eK3Vl+Y8osh>~ud zREa_>=?z6&r{+tYw^9i8Aha{gE~hF7qAUa}`aWiAm&1yM?~;*q`{ooPer+?J;af&h zLB!}LCpD+`_J)b-*-<&ZKf?E}BuHaB8n8M+<($|9mzF{Y3;p-M-O2SOw%GZF>m2Ix zEe0RfPE&oe$o&%#YQOE=;xRPbFu1<=h0S`)&KYA^O8???v4L0kB^wl))a;yFOP`Y4YhMYMG)ehYp$=Nks!R@{OK4Uo(r~_K4JD! zbG0V5zNk?9s&Qi|G;bGzT7ohoxI)yrCOlnL=PR67SE0H@x*cGB(Q z>f|@#BpCNuHE<62ATnC&*KhP#K~7aMnFh>{$~y%0-KJ8ncA2aZbI+^HGygmZNIO

UG6AW(|%95=6w_ zUv5iG4CP16j0T|W$pO`7d?9m;iz^?Y(o%6tQP(!I=ow)q$+PvuQ!aBvBI;D z_L!^}^V4UjKmD*$L`zH=c*WeaHZRADjeJ-$vFUwpY)QL)bWJr5t0U6JpK7e~i=*c5X^i%DE@Z?Hc zZ&5j|y-y+&7}w+1e$ZC^n*smw$GKGqoq8?M@QLqOPS8yg+EuN61;Bv94i51(_&WS;Wm8~E5*PpHNx~11G3N~|Q+a2zepce{>m)ASQb9RqGYl~nrrl73Zw+OE zf$u9jHlAKz7B8$kIj=A+?J1$VzlAR*I%k~gmkhYSUc0#_gnfnUj=cUdL@CBO4}R2C2S@gMlHV(KOHA`+)oAuT-WNtdL8rZp2Gg!*r(pΠ+ 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 T^X-98eZfhK%fBlZH4OM)%a5ij literal 0 HcmV?d00001 diff --git a/img/graph4_v.png b/img/graph4_v.png new file mode 100644 index 0000000000000000000000000000000000000000..a48e5549e6f3a1d038eae4930455ebe9b80b723a GIT binary patch literal 32073 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 #include "testing_helpers.hpp" -const int SIZE = 1 << 8; // feel free to change the size of array +const int SIZE = 1 << 18; // feel free to change the size of array const int NPOT = SIZE - 3; // Non-Power-Of-Two int *a = new int[SIZE]; int *b = new int[SIZE]; diff --git a/stream_compaction/common.cu b/stream_compaction/common.cu index 2ed6d630..c6726262 100644 --- a/stream_compaction/common.cu +++ b/stream_compaction/common.cu @@ -24,6 +24,11 @@ namespace StreamCompaction { */ __global__ void kernMapToBoolean(int n, int *bools, const int *idata) { // TODO + int i = threadIdx.x + blockIdx.x * blockDim.x; + if (i >= n) return; + if (i < n) { + bools[i] = (idata[i] != 0) ? 1 : 0; + } } /** @@ -33,6 +38,11 @@ namespace StreamCompaction { __global__ void kernScatter(int n, int *odata, const int *idata, const int *bools, const int *indices) { // TODO + int i = threadIdx.x + blockIdx.x * blockDim.x; + if (i >= n) return; + if (i < n && bools[i]) { + odata[indices[i]] = idata[i]; + } } } diff --git a/stream_compaction/cpu.cu b/stream_compaction/cpu.cu index 719fa115..8826c58c 100644 --- a/stream_compaction/cpu.cu +++ b/stream_compaction/cpu.cu @@ -19,7 +19,10 @@ namespace StreamCompaction { */ void scan(int n, int *odata, const int *idata) { timer().startCpuTimer(); - // TODO + odata[0] = 0; + for (int i = 1; i < n; i++) { + odata[i] = idata[i - 1] + odata[i - 1]; + } timer().endCpuTimer(); } @@ -30,9 +33,15 @@ namespace StreamCompaction { */ int compactWithoutScan(int n, int *odata, const int *idata) { timer().startCpuTimer(); - // TODO + int count = 0; + for (int i = 0; i < n; i++) { + if (idata[i] != 0) { + odata[count] = idata[i]; + count++; + } + } timer().endCpuTimer(); - return -1; + return count; } /** @@ -41,10 +50,35 @@ namespace StreamCompaction { * @returns the number of elements remaining after compaction. */ int compactWithScan(int n, int *odata, const int *idata) { + + int* map = new int[n]; + int* scanArr = new int[n]; timer().startCpuTimer(); - // TODO + + // MAP + for (int i = 0; i < n; i++) { + map[i] = (idata[i] != 0) ? 1 : 0; + } + + // SCAN + scanArr[0] = 0; + for (int i = 1; i < n; i++) { + scanArr[i] = scanArr[i - 1] + map[i - 1]; + } + + // SCATTER + int count = 0; + for (int i = 0; i < n; i++) { + if (map[i] != 0 && scanArr[i] < n) { + odata[scanArr[i]] = idata[i]; + count++; + } + } + delete[] map; + delete[] scanArr; + timer().endCpuTimer(); - return -1; + return count; } } } diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 2db346ee..491dcd9d 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -3,6 +3,10 @@ #include "common.h" #include "efficient.h" +#define checkCUDAErrorWithLine(msg) checkCUDAError(msg, __LINE__) + +#define BLOCK_SIZE 512 + namespace StreamCompaction { namespace Efficient { using StreamCompaction::Common::PerformanceTimer; @@ -12,13 +16,128 @@ namespace StreamCompaction { return timer; } + __global__ void kernUpsweep(int n, int d, int* data) { + int index = threadIdx.x + blockIdx.x * blockDim.x; + int stride = 1 << (d + 1); + int idx = index * stride + (stride - 1); + + if (idx < n) { + int left = idx - (1 << d); + data[idx] += data[left]; + } + } + + __global__ void kernDownsweep(int n, int d, int* data) { + int index = threadIdx.x + blockIdx.x * blockDim.x; + int stride = 1 << (d + 1); + int idx = index * stride + (stride - 1); + + if (idx < n) { + int left = idx - (1 << d); + int t = data[left]; + data[left] = data[idx]; + data[idx] += t; + } + } + + /** * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ + // This can be done in place + // there won't be a case where one thread writes to and another thread reads from the same location in the array. + // Test non-power-of-two-sized arrays. + // your intermediate array sizes will need to be rounded to the next power of two. void scan(int n, int *odata, const int *idata) { + int* dev_data; + int paddedN = 1 << ilog2ceil(n); // power of two + size_t byteSize = paddedN * sizeof(int); + + cudaMalloc((void**)&dev_data, byteSize); + + // Copy input to dev_data, pad with 0 if needed for non-power-of-two + cudaMemset(dev_data, 0, byteSize); + cudaMemcpy(dev_data, idata, n * sizeof(int), cudaMemcpyHostToDevice); + + int blockSize = 128; timer().startGpuTimer(); - // TODO + + // === UPSWEEP === + for (int d = 0; (1 << (d + 1)) <= paddedN; ++d) { + int numThreads = paddedN / (1 << (d + 1)); + int numBlocks = (numThreads + blockSize - 1) / blockSize; + + if (numThreads > 0) { + kernUpsweep << > > (paddedN, d, dev_data); + cudaDeviceSynchronize(); + } + } + + // Set last element to 0 for downsweep + cudaMemset(dev_data + paddedN - 1, 0, sizeof(int)); + cudaDeviceSynchronize(); + + // === DOWNSWEEP === + for (int d = ilog2ceil(paddedN) - 1; d >= 0; --d) { + int numThreads = paddedN / (1 << (d + 1)); + int numBlocks = (numThreads + blockSize - 1) / blockSize; + + if (numThreads > 0) { + kernDownsweep << > > (paddedN, d, dev_data); + cudaDeviceSynchronize(); + } + } + timer().endGpuTimer(); + + // Copy result back + cudaMemcpy(odata, dev_data, n * sizeof(int), cudaMemcpyDeviceToHost); + + cudaFree(dev_data); + } + + // copy to remove timer issues + void scanCopy(int n, int* odata, const int* idata) { + int* dev_data; + int paddedN = 1 << ilog2ceil(n); // power of two + size_t byteSize = paddedN * sizeof(int); + + cudaMalloc((void**)&dev_data, byteSize); + + // Copy input to dev_data, pad with 0 if needed for non-power-of-two + cudaMemset(dev_data, 0, byteSize); + cudaMemcpy(dev_data, idata, n * sizeof(int), cudaMemcpyHostToDevice); + + int blockSize = 128; + //timer().startGpuTimer(); + + // === UPSWEEP === + for (int d = 0; (1 << (d + 1)) <= paddedN; ++d) { + int numThreads = paddedN / (1 << (d + 1)); + int numBlocks = (numThreads + blockSize - 1) / blockSize; + + if (numThreads > 0) + kernUpsweep << > > (paddedN, d, dev_data); + } + + // Set last element to 0 for downsweep + cudaMemset(dev_data + paddedN - 1, 0, sizeof(int)); + + // === DOWNSWEEP === + for (int d = ilog2ceil(paddedN) - 1; d >= 0; --d) { + int numThreads = paddedN / (1 << (d + 1)); + int numBlocks = (numThreads + blockSize - 1) / blockSize; + + if (numThreads > 0) + kernDownsweep << > > (paddedN, d, dev_data); + } + + //timer().endGpuTimer(); + + // Copy result back + cudaMemcpy(odata, dev_data, n * sizeof(int), cudaMemcpyDeviceToHost); + + cudaFree(dev_data); } /** @@ -29,12 +148,67 @@ namespace StreamCompaction { * @param odata The array into which to store elements. * @param idata The array of elements to compact. * @returns The number of elements remaining after compaction. - */ + */ int compact(int n, int *odata, const int *idata) { + int* dev_idata; + int* dev_bools; + int* dev_indices; + int* dev_odata; + + int paddedN = 1 << ilog2ceil(n); // power of two + + size_t byteSize = n * sizeof(int); + + cudaMalloc((void**)&dev_idata, byteSize); + cudaMalloc((void**)&dev_bools, byteSize); + cudaMalloc((void**)&dev_indices, byteSize); + cudaMalloc((void**)&dev_odata, byteSize); + checkCUDAErrorWithLine("cudaMalloc failed!"); + + cudaMemcpy(dev_idata, idata, n * sizeof(int), cudaMemcpyHostToDevice); + + int blockSize = 128; + dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + timer().startGpuTimer(); - // TODO + + // === Step 1: Map to Boolean === + StreamCompaction::Common::kernMapToBoolean << > > (n, dev_bools, dev_idata); + checkCUDAErrorWithLine("After kernMapToBoolean"); + cudaDeviceSynchronize(); + + // === Step 2: Scan on bools to get indices === + scanCopy(n, dev_indices, dev_bools); + checkCUDAErrorWithLine("After scan"); + cudaDeviceSynchronize(); + + // === Step 3: Scatter === + StreamCompaction::Common::kernScatter << > > (n, dev_odata, dev_idata, dev_bools, dev_indices); + checkCUDAErrorWithLine("After scatter"); + cudaDeviceSynchronize(); + timer().endGpuTimer(); - return -1; + + + // Get total number of non-zero elements + int count = 0; + cudaMemcpy(&count, dev_indices + (n - 1), sizeof(int), cudaMemcpyDeviceToHost); + + int lastBool = 0; + cudaMemcpy(&lastBool, dev_bools + (n - 1), sizeof(int), cudaMemcpyDeviceToHost); + + int total = count + lastBool; + + // Copy compacted result back to host + cudaMemcpy(odata, dev_odata, total * sizeof(int), cudaMemcpyDeviceToHost); + + // Cleanup + cudaFree(dev_idata); + cudaFree(dev_bools); + cudaFree(dev_indices); + cudaFree(dev_odata); + + return total; } } } diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 43088769..2b25d389 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -3,6 +3,8 @@ #include "common.h" #include "naive.h" +#define checkCUDAErrorWithLine(msg) checkCUDAError(msg, __LINE__) + namespace StreamCompaction { namespace Naive { using StreamCompaction::Common::PerformanceTimer; @@ -11,15 +13,62 @@ namespace StreamCompaction { static PerformanceTimer timer; return timer; } + // TODO: __global__ + __global__ void kernNaiveScan(int n, int offset, int* odata, int* idata) { + if (n <= 0) return; + + int index = threadIdx.x + (blockIdx.x * blockDim.x); + if (index >= n) return; + + if (index >= (1 << offset)) { + odata[index] = idata[index - (1 << offset)] + idata[index]; + } else { + odata[index] = idata[index]; + } + } /** * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ + // ilog2ceil(n) separate kernel invocations + // can't generally operate on an array in-place on the GPU + // create two device arrays. Swap them at each iteration: + // read from A and write to B, read from B and write to A, and so on. + // Be sure to test non - power - of - two - sized arrays. void scan(int n, int *odata, const int *idata) { + int* dev_in; + int* dev_out; + int byteSize = n * sizeof(int); + + cudaMalloc((void**)&dev_in, byteSize); + checkCUDAErrorWithLine("cudaMalloc dev_in failed!"); + cudaMalloc((void**)&dev_out, byteSize); + checkCUDAErrorWithLine("cudaMalloc dev_out failed!"); + + cudaMemcpy(dev_in + 1, idata, (n - 1) * sizeof(int), cudaMemcpyHostToDevice); // shift input right by one + cudaMemset(dev_in, 0, sizeof(int)); // setting first elem to 0 for exclusive + + int numThreads = 128; + int numBlocks = (n + numThreads - 1) / numThreads; + + int logn = ilog2ceil(n); + timer().startGpuTimer(); - // TODO + for (int i = 0; i < logn; ++i) { + kernNaiveScan<<>>(n, i, dev_out, dev_in); + + std::swap(dev_in, dev_out); + } + timer().endGpuTimer(); + + + // After logn iterations, the final result is in dev_in (after last swap) + cudaMemcpy(odata, dev_in, byteSize, cudaMemcpyDeviceToHost); + + cudaFree(dev_in); + cudaFree(dev_out); } } } diff --git a/stream_compaction/thrust.cu b/stream_compaction/thrust.cu index 1def45e7..fb3f0c5a 100644 --- a/stream_compaction/thrust.cu +++ b/stream_compaction/thrust.cu @@ -18,11 +18,19 @@ namespace StreamCompaction { * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ void scan(int n, int *odata, const int *idata) { - timer().startGpuTimer(); // TODO use `thrust::exclusive_scan` // example: for device_vectors dv_in and dv_out: // thrust::exclusive_scan(dv_in.begin(), dv_in.end(), dv_out.begin()); + thrust::device_vector dv_in(idata, idata + n); // implicitly copied to GPU + thrust::device_vector dv_out(n); + + // Time only the scan + timer().startGpuTimer(); + thrust::exclusive_scan(dv_in.begin(), dv_in.end(), dv_out.begin()); timer().endGpuTimer(); + + // Copy back the result to odata + thrust::copy(dv_out.begin(), dv_out.end(), odata); } } } From c628c96d2dbb479d32bb773b2a43dab0f94efc8d Mon Sep 17 00:00:00 2001 From: Christina Qiu Date: Wed, 17 Sep 2025 17:39:46 -0400 Subject: [PATCH 2/4] Runtime Analysis update --- README.md | 81 ++++++++++++++++++++++++++++++++++++++++++++++- img/graph1_v.png | Bin 44383 -> 48837 bytes 2 files changed, 80 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d2763726..098c4944 100644 --- a/README.md +++ b/README.md @@ -19,12 +19,15 @@ This project includes four parts: * Without scan: simple loop that filters non-zero values. * With scan and scatter: mimics the parallel approach by mapping, scanning, and scattering. * Used for correctness testing and performance comparison against GPU implementations. +* Runtime O(n) ### Part 2: Naive GPU Scan Algorithm * Implements a naive parallel scan on the GPU using CUDA. * Iteratively applies scan logic for each depth level (d) in multiple kernel launches. * Not work-efficient and not in-place. * Demonstrates basic GPU memory handling and parallel loop structure. +* Runtime O(log n) kernel launches, total work O(n log n) + * At each iteration, a full kernel with n threads is launched ### Part 3: Work-Efficient GPU Scan & Stream Compaction * Implements the Blelloch (work-efficient) scan algorithm using the upsweep and downsweep phases. @@ -34,6 +37,12 @@ This project includes four parts: * Scan on flags, * Scatter to final output. * Much faster and scalable compared to the naive implementation. +* Runtime O(log n) kernel launches, total work O(n) + * This is because each kernel does fewer threads of work as d increases. + * At step (d = 0), launched (threads = n/2), per thread (work = constant) + * At step (d = 1), launched (threads = n/4), per thread (work = constant) + * At step (d = logn-1), launched (threads = 1), per thread (work = constant) + * Thus the total work across all kernels: (n/2) + (n/4) + (n/8) + ... + 1 = O(n) ### Part 4: Using Thrust's Implementation * Leverages Thrust, a high-performance parallel algorithms library built on CUDA. @@ -95,4 +104,74 @@ This project includes four parts: ==== work-efficient compact, non-power-of-two ==== elapsed time: 11.6095ms (CUDA Measured) passed -``` \ No newline at end of file +``` + +## Runtime and Performance Analysis + +(note: I tested Array Sizes up to 2^24 because 2^25 is where computation breaks down on my laptop) + +1. Hypothesis: The GPU implementations of scan (Naive, Work-Efficient, and Thrust) will outperform the serial CPU scan as the array size increases. The Thrust library implementation will be the fastest on large data sizes due to its highly optimized CUDA backend. The naive GPU scan will be slower than the work-efficient implementation due to redundant work and synchronization overhead. + +### Size of Array v. Runtime of Scan (Power of 2) Graph + +blockSize = 128 + +![Data](images/graph1_t.png) +![Graph](images/graph1_v.png) + +### Size of Array v. Runtime of Scan (Non Power of 2) Graph + +blockSize = 128 + +![Data](images/graph2_t.png) +![Graph](images/graph2_v.png) + +Conclusion: + +CPU scan runtime increases exponentially as the array size increases, due to larger data sizes needing to access memory beyond the L1/L2 caches. + +For smaller inputs, Naive GPU scan can actually outperform the more complex approaches because it uses fewer threads and has less overhead. However, as the input size grows, the naive approach becomes inefficient due to poor memory access patterns. Specifically, threads must access data locations increasingly farther apart, resulting in uncoalesced memory transactions that hurt bandwidth and performance. Additionally, many threads become idle in later stages, reducing hardware utilization. + +Work Efficient GPU scan performs two kernels per iteration (upsweep and downsweep). Despite more frequent kernel invocations, this method excels for larger inputs because it minimizes idle threads and accesses memory in a way that favors coalescing. The upsweep and downsweep phases ensure that each element is processed only a logarithmic number of times with well-structured memory access, improving throughput and scaling much better than the naive approach. As a result, this approach ultimately surpasses both the naive GPU scan and the serial CPU scan in speed for large array sizes. + +## + +2. Hypothesis: The CPU implementation of stream compaction is expected to become significantly slower as the array size increases due to its sequential nature and growing cache/memory pressure. On the other hand, the work-efficient GPU implementation should demonstrate much better scalability, especially on larger arrays, due to parallel processing and improved memory access patterns. + +### Size of Array v. Runtime of Stream Compaction (Power of 2) Graph + +blockSize = 128 + +![Data](images/graph3_t.png) +![Graph](images/graph3_v.png) + +### Size of Array v. Runtime of Stream Compaction (Non Power of 2) Graph + +blockSize = 128 + +![Data](images/graph4_t.png) +![Graph](images/graph4_v.png) + +Conclusion: As expected, the CPU implementation’s runtime increases rapidly with array size (particularly beyond 2^21). In contrast, the work-efficient GPU implementation shows much better scaling, with runtimes increasing much more slowly as array size grows. For smaller sizes (e.g. 2^18 - 2^20), the CPU is actually slightly faster, likely due to lower kernel launch overhead. But this quickly flips as data size increases. This shows why GPU acceleration is critical for real-time or high-volume applications involving stream compaction. + +## + +2. Hypothesis: + +### Blocksize v. Runtime of Scan Method (Power of 2) Graph + +Array Size = 2^20 + +![Data](images/graph1_t.png) +![Graph](images/graph1_v.png) + +### Blocksize v. Runtime of Scan (Non Power of 2) Graph + +Array Size = 2^20 + +![Data](images/graph2_t.png) +![Graph](images/graph2_v.png) + +Conclusion: + + diff --git a/img/graph1_v.png b/img/graph1_v.png index 39d2b12aaecbca58c903f555054437ddcb7d2c52..86f8b31b406a15590af2a20d416f8963d638730c 100644 GIT binary patch literal 48837 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 literal 44383 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 From 7707c33f593e92d904b07056ff91b6459c14eb6c Mon Sep 17 00:00:00 2001 From: Christina Qiu Date: Wed, 17 Sep 2025 23:58:12 -0400 Subject: [PATCH 3/4] update readme --- README.md | 14 +++++++------- img/graph5_t.png | Bin 0 -> 9874 bytes img/graph5_v.png | Bin 0 -> 39633 bytes img/graph6_t.png | Bin 0 -> 9829 bytes img/graph6_v.png | Bin 0 -> 40850 bytes src/main.cpp | 2 +- stream_compaction/naive.cu | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) create mode 100644 img/graph5_t.png create mode 100644 img/graph5_v.png create mode 100644 img/graph6_t.png create mode 100644 img/graph6_v.png diff --git a/README.md b/README.md index 098c4944..0f77be56 100644 --- a/README.md +++ b/README.md @@ -156,22 +156,22 @@ Conclusion: As expected, the CPU implementation’s runtime increases rapidly wi ## -2. Hypothesis: +2. Hypothesis: The choice of block size in a GPU kernel greatly affects performance due to how it maps to the hardware's available threads and memory resources. Smaller block sizes may lead to underutilized GPU cores, while overly large blocks can cause increased register and shared memory pressure, reducing occupancy. We expect optimal performance at moderate block sizes, such as 128 or 256, which strike a balance between these factors. -### Blocksize v. Runtime of Scan Method (Power of 2) Graph +### Blocksize v. Runtime of Scan (Power of 2) Graph Array Size = 2^20 -![Data](images/graph1_t.png) -![Graph](images/graph1_v.png) +![Data](images/graph5_t.png) +![Graph](images/graph5_v.png) ### Blocksize v. Runtime of Scan (Non Power of 2) Graph Array Size = 2^20 -![Data](images/graph2_t.png) -![Graph](images/graph2_v.png) +![Data](images/graph6_t.png) +![Graph](images/graph6_v.png) -Conclusion: +Conclusion: The optimal block size for scan is mid-range (128). Runtimes degrade with both very small and very large blocks, due to either insufficient parallelism or limited warp scheduling capacity. Non-power-of-two inputs introduce negligible overhead, indicating that the scan logic (including padding and bounds checking) is both correct and efficient. diff --git a/img/graph5_t.png b/img/graph5_t.png new file mode 100644 index 0000000000000000000000000000000000000000..e75a4f1b5ac97d833762195b8156ca51405fcb4c GIT binary patch literal 9874 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 EKV)nI^Z)<= literal 0 HcmV?d00001 diff --git a/img/graph5_v.png b/img/graph5_v.png new file mode 100644 index 0000000000000000000000000000000000000000..40e4cc7d4a0e841af09823714fb8a1a423fc5350 GIT binary patch literal 39633 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%0DVxG4EqCh`?{``|&SY6b0 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 L)Rj{e%{~4H;G$L; literal 0 HcmV?d00001 diff --git a/img/graph6_t.png b/img/graph6_t.png new file mode 100644 index 0000000000000000000000000000000000000000..6fdb1fa6fe90fef244e37f8985b96b52fb722f5b GIT binary patch literal 9829 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 G`o91!bwob^ literal 0 HcmV?d00001 diff --git a/img/graph6_v.png b/img/graph6_v.png new file mode 100644 index 0000000000000000000000000000000000000000..eadd17005c7960a81edbd8c821c620010764b635 GIT binary patch literal 40850 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 #include "testing_helpers.hpp" -const int SIZE = 1 << 18; // feel free to change the size of array +const int SIZE = 1 << 20; // feel free to change the size of array const int NPOT = SIZE - 3; // Non-Power-Of-Two int *a = new int[SIZE]; int *b = new int[SIZE]; diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 2b25d389..0950cc6e 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -49,7 +49,7 @@ namespace StreamCompaction { cudaMemcpy(dev_in + 1, idata, (n - 1) * sizeof(int), cudaMemcpyHostToDevice); // shift input right by one cudaMemset(dev_in, 0, sizeof(int)); // setting first elem to 0 for exclusive - int numThreads = 128; + int numThreads = 64; int numBlocks = (n + numThreads - 1) / numThreads; int logn = ilog2ceil(n); From 1e47d08e712736fe3fe3025d02f1cf89779f4d3f Mon Sep 17 00:00:00 2001 From: Christina Qiu Date: Wed, 17 Sep 2025 23:59:45 -0400 Subject: [PATCH 4/4] Update README.md --- README.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 0f77be56..12bb4fdb 100644 --- a/README.md +++ b/README.md @@ -116,15 +116,15 @@ This project includes four parts: blockSize = 128 -![Data](images/graph1_t.png) -![Graph](images/graph1_v.png) +![Data](img/graph1_t.png) +![Graph](img/graph1_v.png) ### Size of Array v. Runtime of Scan (Non Power of 2) Graph blockSize = 128 -![Data](images/graph2_t.png) -![Graph](images/graph2_v.png) +![Data](img/graph2_t.png) +![Graph](img/graph2_v.png) Conclusion: @@ -142,15 +142,15 @@ Work Efficient GPU scan performs two kernels per iteration (upsweep and downswee blockSize = 128 -![Data](images/graph3_t.png) -![Graph](images/graph3_v.png) +![Data](img/graph3_t.png) +![Graph](img/graph3_v.png) ### Size of Array v. Runtime of Stream Compaction (Non Power of 2) Graph blockSize = 128 -![Data](images/graph4_t.png) -![Graph](images/graph4_v.png) +![Data](img/graph4_t.png) +![Graph](img/graph4_v.png) Conclusion: As expected, the CPU implementation’s runtime increases rapidly with array size (particularly beyond 2^21). In contrast, the work-efficient GPU implementation shows much better scaling, with runtimes increasing much more slowly as array size grows. For smaller sizes (e.g. 2^18 - 2^20), the CPU is actually slightly faster, likely due to lower kernel launch overhead. But this quickly flips as data size increases. This shows why GPU acceleration is critical for real-time or high-volume applications involving stream compaction. @@ -162,15 +162,15 @@ Conclusion: As expected, the CPU implementation’s runtime increases rapidly wi Array Size = 2^20 -![Data](images/graph5_t.png) -![Graph](images/graph5_v.png) +![Data](img/graph5_t.png) +![Graph](img/graph5_v.png) ### Blocksize v. Runtime of Scan (Non Power of 2) Graph Array Size = 2^20 -![Data](images/graph6_t.png) -![Graph](images/graph6_v.png) +![Data](img/graph6_t.png) +![Graph](img/graph6_v.png) Conclusion: The optimal block size for scan is mid-range (128). Runtimes degrade with both very small and very large blocks, due to either insufficient parallelism or limited warp scheduling capacity. Non-power-of-two inputs introduce negligible overhead, indicating that the scan logic (including padding and bounds checking) is both correct and efficient.