From 795068d088fd59c74d85e179117975c3fa32863c Mon Sep 17 00:00:00 2001 From: Firestar99 Date: Wed, 7 May 2025 12:09:29 +0200 Subject: [PATCH 01/11] yarn.lock update --- yarn.lock | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/yarn.lock b/yarn.lock index 05e6a04..ab7e60c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8868,18 +8868,7 @@ react-fast-compare@^3.2.0: resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ== -react-helmet-async@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/react-helmet-async/-/react-helmet-async-1.3.0.tgz#7bd5bf8c5c69ea9f02f6083f14ce33ef545c222e" - integrity sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg== - dependencies: - "@babel/runtime" "^7.12.5" - invariant "^2.2.4" - prop-types "^15.7.2" - react-fast-compare "^3.2.0" - shallowequal "^1.1.0" - -"react-helmet-async@npm:@slorber/react-helmet-async@*", "react-helmet-async@npm:@slorber/react-helmet-async@1.3.0": +react-helmet-async@^1.3.0, "react-helmet-async@npm:@slorber/react-helmet-async@*", "react-helmet-async@npm:@slorber/react-helmet-async@1.3.0": version "1.3.0" resolved "https://registry.yarnpkg.com/@slorber/react-helmet-async/-/react-helmet-async-1.3.0.tgz#11fbc6094605cf60aa04a28c17e0aab894b4ecff" integrity sha512-e9/OK8VhwUSc67diWI8Rb3I0YgI9/SBQtnhe9aEuK6MhZm7ntZZimXgwXnd8W96YTmSOb9M4d8LwhRZyhWr/1A== From 5df919ae3b2bcbc2a722627f35d42a7cac2369cf Mon Sep 17 00:00:00 2001 From: Firestar99 Date: Wed, 7 May 2025 12:09:39 +0200 Subject: [PATCH 02/11] nanite: setup page --- blog/2025-05-07-nanite-at-home/index.md | 37 +++++++++++++++++++++++++ blog/authors.yml | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 blog/2025-05-07-nanite-at-home/index.md diff --git a/blog/2025-05-07-nanite-at-home/index.md b/blog/2025-05-07-nanite-at-home/index.md new file mode 100644 index 0000000..7e5b8db --- /dev/null +++ b/blog/2025-05-07-nanite-at-home/index.md @@ -0,0 +1,37 @@ +--- +title: "Nanite at Home using Rust-GPU" +authors: ["firestar99"] +slug: nanite-at-home +tags: ["demo", "code", "performance"] +--- + +Why pay Unreal Engine money for their Nanite, when we have Nanite at Home? + +How hard could it be to replicate it ourselves, with rust-gpu? + +TODO Nanite at home meme? + + + + + + + +## Traditional LOD + +TODO pic of some low poly 3D model + +// A 3D model is represented by a List of indices and a List of vertices. +3D models for real-time rendering are made up of many triangles describing its surface and many vertices, which are the corners of our triangles. Vertices are highly configurable with the properties they have, but at the very least need to have a position of where they are. Triangles on the other hand are simply a list of indices pointing into the List of vertices, where a set of 3 form a single triangle. + +When rasterizing such a model to the screen, we use a vertex shader to transform our vertices . + +The cost of rendering a 3D model is typically the amount of pixels on screen plus the amount of vertices of the model. + +## Terrain Generation + +## Nanite + +## rust-gpu-bindless + +## Epilog diff --git a/blog/authors.yml b/blog/authors.yml index 11e808d..6062cf9 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -29,7 +29,7 @@ schell: firestar99: name: Firestar99 - title: Rust GPU maintainer finishing his master thesis + title: Rust GPU maintainer, unemployed graduate image_url: ## Image URL managed by the fetchAuthorImages plugin. Changes may be overwritten. /img/authors/firestar99.png From 89d6d3f522a2ad0da8b8ce75b6ca7b36f60cb768 Mon Sep 17 00:00:00 2001 From: Firestar99 Date: Wed, 7 May 2025 21:19:00 +0200 Subject: [PATCH 03/11] nanite: work --- blog/2025-05-07-nanite-at-home/index.md | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/blog/2025-05-07-nanite-at-home/index.md b/blog/2025-05-07-nanite-at-home/index.md index 7e5b8db..ce9665a 100644 --- a/blog/2025-05-07-nanite-at-home/index.md +++ b/blog/2025-05-07-nanite-at-home/index.md @@ -17,16 +17,26 @@ TODO Nanite at home meme? -## Traditional LOD +## Traditional Level of Detail TODO pic of some low poly 3D model -// A 3D model is represented by a List of indices and a List of vertices. -3D models for real-time rendering are made up of many triangles describing its surface and many vertices, which are the corners of our triangles. Vertices are highly configurable with the properties they have, but at the very least need to have a position of where they are. Triangles on the other hand are simply a list of indices pointing into the List of vertices, where a set of 3 form a single triangle. +3D meshes for real-time rendering are made up of many triangles and their corners, called vertices. +At a minimum a vertex must define its position but can have various other properties, with their memory layout being fully dynamic. +Triangles on the other hand are simply a list of u16 or u32 indices pointing into the List of vertices, where a set of 3 form a single triangle. -When rasterizing such a model to the screen, we use a vertex shader to transform our vertices . +TODO quad example? -The cost of rendering a 3D model is typically the amount of pixels on screen plus the amount of vertices of the model. +The process of rasterising our model into colorful pixels on screen consists out of a 3 step process: +* The vertex shader calculates the position of our vertex from the camera's perspective and do other kinds of per-vertex transformations. +* Then our triangle is rasterized into the individual pixel locations. +* The fragment shader evaluates the color of every pixel. + +The cost of rendering scales largely by the shaders that need to be run, or in other words: The amount of pixels on screen plus the amount of vertices of the model. + +As we move a model further away from the camera, the mesh gets smaller and fewer fragment shader need to be evaluated. However, we would still need to call the vertex shader for every single vertex to know where it ends up on screen, even if the detail they describe would be too small to notice. To improve performance, it is common practice to not just have a single mesh, but to create multiple meshes at different detail levels that can be swapped out, usually depending on the distance to the camera. + +The reducing vertices in a model can in part be automated and is called "mesh simplification". Level of Detail (LOD) ## Terrain Generation From aac3edd208d3804b67ca9770f4aa777d1d4f33dc Mon Sep 17 00:00:00 2001 From: Firestar99 Date: Thu, 8 May 2025 13:16:23 +0200 Subject: [PATCH 04/11] nanite: work2 --- blog/2025-05-07-nanite-at-home/index.md | 27 +++++++++++++------------ 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/blog/2025-05-07-nanite-at-home/index.md b/blog/2025-05-07-nanite-at-home/index.md index ce9665a..066bd0e 100644 --- a/blog/2025-05-07-nanite-at-home/index.md +++ b/blog/2025-05-07-nanite-at-home/index.md @@ -17,31 +17,32 @@ TODO Nanite at home meme? -## Traditional Level of Detail +## Triangles, Vertices, Meshes and Level of Detail -TODO pic of some low poly 3D model +Feel free to skip this chapter if you already know all these concepts, but I suspect there will be plenty of rust programmers unfamiliar with computer graphics. -3D meshes for real-time rendering are made up of many triangles and their corners, called vertices. -At a minimum a vertex must define its position but can have various other properties, with their memory layout being fully dynamic. -Triangles on the other hand are simply a list of u16 or u32 indices pointing into the List of vertices, where a set of 3 form a single triangle. +TODO pic of some low poly 3D model -TODO quad example? +You've probably all seen a 3D mesh made up of many triangles, but how do we actually represent them? The triangles themselves are quite simple, it's just a List of u16 or u32 indices where a set of 3 describe the corner IDs to connect to create a triangle. Far more interesting are these corners, we call them vertices, as they often cary not just the position they are located at, but you can attach various other attributes to them. For example, normals can describe the "up" direction of a surface, which is important in lighting calculations. Or texture coordinates to describe how 2D images should be wrapped around our 3D mesh, think of the wrapper around chocolate Easter bunnies. -The process of rasterising our model into colorful pixels on screen consists out of a 3 step process: -* The vertex shader calculates the position of our vertex from the camera's perspective and do other kinds of per-vertex transformations. -* Then our triangle is rasterized into the individual pixel locations. -* The fragment shader evaluates the color of every pixel. +As we're writing a renderer, we don't just want to store models, we want to render them to the screen and look at it from different directions! +For realtime applications you'd typically use a process called "rasterization" to turn a model into colorful pixels on screen, which includes programmable shaders allowing us to manipulate the appearance of our model: +1. The vertex shader runs once per vertex and calculates where our vertex would end up on the screen, but can also change the other attributes attached to the vertex. +2. A hardware rasterizer assembles the triangles and figures out where they end up on the screen. It then creates a stream of fragments for each pixel the triangle overlaps. +3. The fragment shader evaluates the color of every emitted fragment. The cost of rendering scales largely by the shaders that need to be run, or in other words: The amount of pixels on screen plus the amount of vertices of the model. -As we move a model further away from the camera, the mesh gets smaller and fewer fragment shader need to be evaluated. However, we would still need to call the vertex shader for every single vertex to know where it ends up on screen, even if the detail they describe would be too small to notice. To improve performance, it is common practice to not just have a single mesh, but to create multiple meshes at different detail levels that can be swapped out, usually depending on the distance to the camera. - -The reducing vertices in a model can in part be automated and is called "mesh simplification". Level of Detail (LOD) +As we move a model further away from the camera, the mesh gets smaller and fewer fragment shader need to be evaluated. However, we would still need to call the vertex shader for every single vertex to know where it ends up on screen, even if the detail they describe would be too small to notice. To improve performance, it is common practice to not just have a single mesh, but to create multiple meshes at different Level of Detail (LOD) that can be swapped out, depending on the distance to the camera. ## Terrain Generation + + ## Nanite +The reducing vertices in a model can be automated and is called "mesh simplification". + ## rust-gpu-bindless ## Epilog From 9b148f1fa295420cdead04e16b6529613948dce4 Mon Sep 17 00:00:00 2001 From: Firestar99 Date: Thu, 8 May 2025 17:03:22 +0200 Subject: [PATCH 05/11] nanite: terrain gen, needs rework --- .../cdlod_selection.jpg | Bin 0 -> 71380 bytes blog/2025-05-07-nanite-at-home/index.md | 58 ++++++++++++++++-- .../minecraft_chunks.jpg | Bin 0 -> 1057334 bytes .../terrain_mesh_lod.jpg | Bin 0 -> 76695 bytes .../tikz/terrain_hole.png | Bin 0 -> 136403 bytes .../tikz/terrain_tree.png | Bin 0 -> 112073 bytes .../tree_locked_border.jpg | Bin 0 -> 54632 bytes 7 files changed, 52 insertions(+), 6 deletions(-) create mode 100644 blog/2025-05-07-nanite-at-home/cdlod_selection.jpg create mode 100644 blog/2025-05-07-nanite-at-home/minecraft_chunks.jpg create mode 100644 blog/2025-05-07-nanite-at-home/terrain_mesh_lod.jpg create mode 100644 blog/2025-05-07-nanite-at-home/tikz/terrain_hole.png create mode 100644 blog/2025-05-07-nanite-at-home/tikz/terrain_tree.png create mode 100644 blog/2025-05-07-nanite-at-home/tree_locked_border.jpg diff --git a/blog/2025-05-07-nanite-at-home/cdlod_selection.jpg b/blog/2025-05-07-nanite-at-home/cdlod_selection.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7f4cf1f43f5af0a63e57b12f219a78e6570bd540 GIT binary patch literal 71380 zcmbrkbyyYA*ET$Jl0J0Dp}V`gySuv^q#HrHq!pw~0TDsELr?@1Lu) zqkDU%|BB&W0s!j3`$6D#_VRM(HWAtE8?$3?@58!@Z|DS#Tx0C-rLXh)=`>_E4MPI+L0C!inAhZA< zzc3eC`95s4VUVwnGny^b*&)z9$XNpI78K+s!OQF8?&Iv_>>A+g9O&Te*9WYnft$9?vBnrfzD3oU>_&v z0JJ??F~HeA$UVdvt?29R?dubWmJbRFaCZm}a`*M&HgvNOaF+LS_jE=J^6;UJef)d_ zg6=zO{g)Rs+kXNLypPoJzrEZC_#Y=cz5%Yh|9z=IUWYL5KzrVM2fSX+uJ&GzzD~~U zJpUPs|KRpNX8`ygJO;W53j8k>h@$`i@U^?UGiCrl<^jNM_TAl0<=x%wvwNJZ0>Gfp z|Md5*006P`dwur*=$M`Y04fmxI!FIU=THa$uO9*c`De%AfRO)n9pHW<-Gdi^05AX! zAOIwQc|VV^?`IMofVyua0Ehr$fCL}~$N>s~5}*R80a}0#Km+suBftbO11ta=zz%Q# zocCDb0eAtvdsGPmLVz$J3Wx#XfCL~3NCPr}EFgD}KSe+ZP`*c^8lVnn09t@HpabXv z`uFHG1dISCZHK;0bT&DKpW5wbO5h_PT)1r4ZHz*fL@>< z7yt%=Az&C71;&7JU;>x|rh&J>4Db$k56l4{fCXR?_y{Zk%fM$~1y}{X0&Bnq@D11m zwt*dB7uW|5fJ5L1a0DC!C%`Fi2K)vtfJ@*CxCU;3Ti_pXcmEiKfG`jaB0&rg3&aL- zK|Bxz5`cstF-QWEf#e`1NCnb>bRZgJ02x7MkOgD|*+EW_8{`4`Kz>jV6aqy+F;Em; zAJ7-{2Lr)iFa&%6hJ%q{G#CTMfeBy|_z+A5AA#v$CYTN8g8ATMun;T;OTlvRDOd?s zfi++q*Z?+x&ERve6>JAPz)r9Wd;|7^{oo)t432{1;3PN=&VcX0IdC3a1V4ex;0m}3 zu7TgcEpP|i0}sIO;1PHXo`PrKId}zLgMYz)5C8&!z#vEnCIlOT3qe5$A;b_;2swlj zLIa_L&_fs@%n&vR2ZRg41L21VLWCh=5DADBL2eA7ThGftW!o zAl49Dh&{v!;sSApctX4(evkl2FeDTb28o13L*gI_kYq>-Bn^@Q$%f=Y3Lu4$5=a^3 zDWnoo4XK4RK$;-WA+3;?kXMi{NDrhBG6)%lj6o(L(~w!nd&oTGBV-A(0{IGAhipQ& zA$yQR$PdUdg3dtSL+7C% zq07)O&~@l0bO*W*{SN&J{RKUTUO{i5|6mXp9EJhIhM{1DFcKI!j2cD>(@- zmI=#+6~KyNWv~iZ6|4@{2zw4|gS~=v!Fpi>uo2ieY#R0s_5t=0whUW^ZNRo*d$2>; zPuMTmIqVPY77oB+a11y$90ezWlfo(Cv~UJEGn^gH4d;go!NuTGa5=alTotYf*M%Fv zP2d)A8@L191?~>_hWo>V;bHJ7cpN+to&ryYXT$U1Mes6s1-u$w4{wIQfWL&lhWEe+ z;3Mz}_*?jU_yT+h{sq1c--7SKzr&B=zu{N#zX$*ULtr3q5cmjU1UZ5lL62ZYup_t; z{0L!$I6?-YfKWkbAaoFh2vdY5!WQ9(a6@<@{18EiFhmq04v~a-gvdnXA_@_uh^L5Z zL_MMz(S~@1=tlG-h7se4w}|(MMZ_{<74Z$RgE&O|MEpWrB5sfX5{AS?;vxx=q(~|x z9g+#jhU7-_BSnxBNLi#JQVpq%)JK{iEs(ZIN2D9l8|jY>K}H~Bkcr4tWCk)9S%@q} zRv>GT4an!nm&n)1UgQvR9661Ak6c84Mt((ZBKMF#kf+FVEObkq1OhQaDOd3oE zOjb-TOnyvJOesuxOchKmOnpofOiN6AOczW~On=M}%m~al%w)_o%pA)2gFjp}*G50W!Fn?iQVcudvurRQ2v52rJuxPQEu-LJ9v4pTB zuw=26u{5ysuuQNlvFx#2u)MGWutKq-uoAFRurjgov5K*tV%1=5io?0D=H>`d%@>=Nt>>{{$*>~`!f?0)P~>}l*d>`&OM*qhh~*vHuC*f%&J z4iX0!hX{uP2aUsm!-XS&BZeb`ql}}8qmN^XV~yj4GoL4wKIKw!TIPY*i;(WpRhO>|J6XzV~1{cJ|z{SHQ!KK2b$7RFi!4<}p#8tpm z!_~z##P+RhQdY>q9{;k6f24cC5)0nDWWt``Y1D$ zEy@MujS50VpyE-fsBBab>M5!g)q?6k^`M4P)2I)qWz;%q7j=X>NBzZz;$z_x;#1(G z@mcYC@kQ{Z@s;qk@D1@T@E!2o@%`{0;K$%6<7eU*;Fsf9<2T{I#D9Z7j6a1xhrf)! zj=zWh6aNDLmHZ}TJK-7O4H1+Gn}~>riinYjlSq(A zl1Pb2i^zz`ipYt`iztXFk|>cVohYBEoT!GVh3FMgAJG`mEYT;THKJXjpF|f#cf?3y z6fqewnwX84k64UYo>-k&pV)%ff!KpMkT`-kfjFHwpSX;;hPZ{elenLFocKNQ67dG{ zKJh8>9}>fbYRI0Gy(SwZnDSAxWW3p+jLtVNc;n z5kwJ9@sJ{iqJ*NFqJ`o$#URBr#RA1wid~8mifc+JB`zf?C7P0hQjk)bQiW2F(t^^F z(wj1rGLG^QWj^H-$~ww6${xxw%6F8@l$(@4D9uK9*`)DU<=V@1I_h^67{-s0G5z!X{bo2UCqw@-IQ_YaMMCPLGq+0jC1S+oY)2yKh@KnJ5^(P`+%=t^`m z`ZanOJ&RsOZ=rvp|IoweQS_Ab%=CQplJqL{`t(-xuJi%)(e$bG`Sefe8|h!s57N)j zFVSz(AJJbiz!*>rlnl%ad<;?ystg7UHVp0zK@2erX$+4UDj8ZBx)??n-ZQK)>@u7( z{AI*oBx0mv|h*Ve9QQWag*^U;~yqC6Fw6) z6C0BtlPr@alL?aplMhoEQxa1SQyEh|QwP%k(_5w`rY)wQOxMf^WN zmTZ76w)(+M| z)*05%tUIiytha1fY@}?AY`koeY-(&qY<6tkY+-E4Y`JVt*qYd0vyHONv3+GbV7p+4 zu%pvFV&nd&H$!W&v%o)HL!(=L+FU;L7HD!qvpp#Wlt?&$Z5V z#C6S$>;#TK2;dbKo=Z@x1<1Xf|<$lRM#Ql!@3- z!j8fL!m+|x!sWuv!ac%M!pp*Y!sj9|5h4+K5k3)F5gidL5l@kDkyMdFky?>gBBLS; zBHu(#MD9fKL}^61L?uPlMa@KAMMFfBMDsZm3 zin)jdizSNXi9Hi*6B`nn6I&PiDRwK4BTgmGDJ~(dE^a37Djq7HEM6d9E#4tMB0ewv zP5e{>kU&Y$N$^NWOK3}2Nq9;`NIa4#k!XlcJU4mXemzma>xal8Tf{lPZ;Jl6oUGEwv(bDD_7g zQ<_4WU0PgPP1;P_P5Oa!igb~5o%Czz3F#&2J?Tpsqzsu1tBk0Os*I_Ot4yfOLzzOE zI+@op6EaIOdoq`@NLeyjR#{P5RasM6SJ?-$DY8Yf^|D>Eld_*>4`lzyVaid+amY!? zX~fS7%TcR999vQFl`hS5H$fSAVWPs6Ma0rGBn~&>+{~(2&&7*09y^*NE51 z*QnKatudwXMdL{0P7_~~K~qRmMbk{vT{A*6L-VO-o92k-N6kIWKU!E?)LJ}Ra#{vj zPFf*aDOx33&076hb6T5PzqJwC6xy8H(%QP(_S%8kN!o?l4cfih@3c3xf9b$<$aL6s zBz3fPY;^*35_KNyH0bo`%<8P`{L+Q#lIpVSO6uz9+UW-9Cg~RHHtP23zSI4td!~ob zBiG~9lh)JIbI=Rcd#G2U*P=I|H?Oy?cd3u5Pp!|ZFRyQ;@2VfBpRWH@zfFHse@Xv9 z|E~ecfWbh>K-Iv)z}q0!AlIPApv&N`!J5ITA>XvjsKYtnlPJ)nP{5Wngp06nG~Ben+%vNnCzNdo8p?HO@&NVO)X7*Oyf-pOdCvl zP3KIvOfSu_%xKN{&6Lf|%)HEE&GO9Z%-)#2Gut#fH^(%mG3PT^GB-2#G>&Qj1))zZ?^*D}Gf(6Y&L zz;eNI&+^6!WyNSEYNcsqXBA|XVpV34%;c) zueQJJ5O!2{ymm@j0o zq)wbpa!$rh9!@b%1x}4l15S%h2TuQ-iJaM;WtJ-rCkkO-CUzx^IRKT`&}1Z4_xouh}}5cWZjJ2 zJlta49=kQU4Y_@C`{538Cv)d^S9CXX_i;~jFLr<7KIZ<#{lo*|LG2;nq2^)j5$KWX z@zmp$$F#?W$Au@3CxfS$r;ewSXSip!XRT+i=e*~>=RYrEFAgs`FB2~>uXwK_ujgK) zUMpTF-Ux4MZ$WQ$Z(HwR?=1}L z`n&i?`sevK`Vaaq`Tq=n1yBVD1gHhr280A;1XKsS3HT7OA8;2)8psu>7-$jbAD9yO zG_W&pHgG%eI*1^MEl4)VB*;4`F{m`CJ!mRuBj_?1FPJ4*I@l=KGdMoDIJh-{ogki|pWu;@kWiY?kuaOElkhK*ERio!Ezv$P zJTWh^IdL@cYvM%`Dv2#gKFJ~}ASo@WI;k(|Q_^uVMlyY}M6zMBS8`JFljPUQbIAt} zArGk@3O&?*==w1BVe!NEhi@NlKfFyLOW{jVPjN_zNGV8po-&cLk#e0%l**N=l4_g! zAT=koDRne;E%ovd{v(b@ijS-xg*?i7)bMEd(dwh~G*lW}nnIdoT5wusT7BAZ+LyHR zbi8!7bcJ-w^x*WY^!oJS^wsq93{(bthC+r_Mo30>MnlF(#@CF?OoB|#Or=bl%m&^ejv+tSsy){8V^agj2*?q)=pC6k3#9)KWBAv{m%4n4(yy zShv`tIH|azxTpA2@o5Q832TW$iA_mZNq)(TlIfD2QlON&RJ7Ef)VnmLw7PVlbfxsX zjG&CGOts9hEV`_?>{Z!Z+4pi}IYYU0xp{d|d3JeI`FQze`Rx;mCqhs3o_Ica_~hA> z{wFI>&Yu!I<$9|2)bVM|)6%D%Pv@WhtiY^bu8^;=s(4V5U(s6ewqmamT1i(aQE5^c zP?=fTSUFz#t@8F6#WUe&`p>+dr9P{9HuUW4vp-cNRs2=jRqj zv=Oh7qfxcdsWG;(yzx!rQsY?@eiL_-Mw4q(LQ_RkU(-s{WixRzU$b_zNAttx>gJ*5 zwdR`^@)qG1gBIVG^p=K}@s_RUz;l}C63{p+JH>@M~$)h_3* zgs#f2fv&GzH{BH7V%;X)LEX9Ct=;dskKSOvVSl6g#^p`on`dtZ->kp6?V;+C=rQXF z=_%-W+4G_2q!+K3yH~T z>VMup+y8w4Yk++~b--mHX`p&wc;MS0Fi1BjGiWs!F<3I#J-9r0IYcrfG-NmwFqAXY zI`n?%=P>Rt*RbZW$8hR!{qV%_?g)H@X+&|vVI*#(Vq|b+edOOL&8XC<w;gXUC5wa3;7WG$%YK9!)e(Oidh2 zVob74s!qC2CQsH*j!o`N!Kav}l%|}f5~ixAMy58WA=3=g^3(RyanqI4gVP&tfw$W}|1H%=XW&&Hj5w_fGbm z?Yo$FPu~r^TYq==9{pbKz1{oR_Z9Dl-hZ0|=ji7Y<{akY=bp`t%x!&ueqj2b^uhT< z(ubN4;~#eCk@Kwcs`GC1Df12UQ}c%lSPPsBS_@ta84E27?-qV8q89lU^%ngXa~Ine z7Z!hiB>pJ;(d1+3$HI?YA3uM*{zUmn@{`r4s83Hm4SZT(0+#5P6qX#95|?V0#+UY% zF_zhvHI_Y>)0bP8-z^`1#{bO!+2C{F=lsvFK7aarwL-BXv0}Lrx$)qDLHsQ9=w#oK`?UL=@?X?|nhjB-F z$8{%lr)g()=VX^~S7_H{H*B|bw{LfS53;@A}^Zzd!!o{eAWOzaR8J zlzzDUNd3|LM;1p>M-@jSM>{_;esccQ`RV^N|L5zUD?e|K(Z`C%F2||I z&ByPLf1Qw=h@DuTM4wcijGgSCVxRJy>YoOk7M=E-uKfakG5u2e<@qb~SKF_Tzpl=x z&ScLV&XUd=&SuU|eiQu``EBt#>UZVu(ck;$*yp_G2InE?#piwJ8yBz()(g!G-;3Of z&Wq0%x0m#nN|$bz>6fjS3zwHyR97-r4p+%njaTokPXCbn5&vWTC+<(ppQ%4TuJNyh zuFb9^uPd%culH|oZuoADZXVo}-3;Dr|Hb&r^;hq2@ZaLUeSg2*!f)AcwQmD%AK$*Y zUHb?5$NEq6pYOl?e_j7p?|?hzJM}y7yWG3ZyDxWl|HUi0X8}O}Lj|Z>0sx~(0MMER zfZ`GWU~#?Y5m?=QxzF6=W8>iAVBzE8;t>+y6Opq~l9Q5>^D{Ejut^9?ONk4LiOQ*2 z>BuRWDvOHgdFz|nI@~XPWwian{G1+GIlDUk#|cP4NJvgX&Pz$j>!={6;Q0T!+zkQ* z7~p4^A{1l*AOs+k0K6N$rzHT;`+WI-2txl|KnV1n(SShSH_G7O=ZZln6ndYsyswb= zrVxMtN=VNSlh-F=uov)$E5zjxGa6L32|5e~eE1fhiy&bVQZzh05zf2sPw~Gz{~x~Z z2^06;;rC5!1Rwyy?laN%Y5M;*03ihY`h)`X^3W3oB76V1oFRqEyA=QjdQY+-fD+vE zAkItc*nelMj?Na?9O=@EJZZ0x_ZoaUOP@!$q5+d4B#rB{b)CXVejN8SH5YO=45{zebb=Gd z^ks6Jt<74y!gGRaxkX&#=yqJ%#={HL;zaAnA?&YKOwCgkfo=acuP;{g>+^?8+Cxug z(t;nTSHsia=d4?A*U>b4i(C3S#2hgGRWo;)xlM{BuW1+AQKxg8zMA0F-WYj)`SK#4 zcYA(%%r!jv@rGAqk^G`}QruQA?elh%tc+2-bNMgEv^OKwHZNpYd8F)Hlw~Ko27T{< zu+$?QU3;q#F8wn8=Pin~TWv`>DAB0;agMHuGhDn;VeL-TY+)TOr5vXYA4enxKyWo0h24Dwv;ps zt$*@YWkSCpqDAgynRoPaVbe1K5yR9e?b74!^qH@!JBR^xYGv%^L|MI!;TI2IsMz(X zzSi|0n|)+um{_= z@b7%JtBKk)lXwV@FqSv9mKw8pgk$uw#qGS_@GbnB)~Fy!$$uJ+zb}6Xalsz5E^cDs z8Z7H$n_EL6IHFnfuA>ZyeHjzLB_5ul*n0lB$!E-D5`0XJ-A56lp;i@yB%ib#tXx+x zo}UTb+|;sPUaFs$lQmbN<(qwvq=r8HHZMXP3f_cam}Y%46IsPtv^8{cfyQd56-<>ct@!Gn_F|-y`)a=Aj7%}bfpp`QKku^S`o zGxW4sQ@LHiRT+h0q<6q?QSc)QXX@)!7^ZTXC< ze#n%vuW59I@#eT5%P5)+@#&)!0^&_4iC0G#>3u3p-_#jE%sg~&?a&5+z>dnWx}vAh z9YAmxsk4;+JbNW8RR!xD?^$T(bPaCYXk?$D=LLc4)F%IdxxXNbv7_Y?p|3So zQH6ZH(g};&YaB>nqrJ&2H=+IlK@H*0J~5Ey77a5ZA8b!b|8$Fo@Ky_YExaOs)(Nd+ zI9*QFq{8#7oHYF6u50w>3q5pGRQ(hC;t2jqB8{$bUcG;+O1929m-tf7frNj~If7ob zxGmY}@8&b!x-5JJHR);{Rc`G&Al1z5Tte)UuK4T@_^X*MqElY3a`@opeXyQ!8(rA9 zm{asfquke_M3};5%C6{Bml&LoOg%V#U(?cSCXk3O}dJzB*}^zJGYBCsXgs7R!Z}egHiZJi}E=l8@Q1J9s5Qfj;pj- zrH&qo%sKhJQgo{vSCo^hNroxZqvwFHjd}tH+gAPYuQKW3h4_|IgFDz1-9Gf2+a%MV3A=OiytyGa3?tN2b0Irjq3ll?0UstX%Z=OCZ@KsRZ*WiG3oj;t+Aa?6eiv_U-`wLDuLKL|o%kx5@P^?xud*^45(=fhwGC2-1(yAfx7&zbBx}wKJ zRw<}LUap6&p3uW1bryjyMNmbZ_}dhYPlLiutr!XSLFSZWcF^Lqi@bJ zo-DOo36{=?yAN6uPwYBO>qydW-2p`EfsH3Hycj|Du0Tghcz0xha}Bv6dU^<(P!-{> zpvJKhLf4#ZWIu70`Fw;(d~s2fGOXwYPGpf-t5577erqq1Mfs~^CV^U~MRwhUS0h;h zf(F)^%KjqzoGB1dVrJy4S2CI>NC?TiJZs)2i;6PwY|~(@^{w`?|JY?pad_`+rQf0F z_6fr^cR@1==9+PPtq@ka5pEnb5ZE3orQxwMLPe|uusjQzgL=|zZ5*D8u@}9>YVtV^ z;H~AQe5(5@0g%Y)Y?(;8I&CHWRN<#{s-FhR5kcD%w3_Q?m*aFzf4yp@Iiz=X^jPoR zsD8vDf2K$0bJ+9bM94w!tygfQ(N^O=q3#6{?d#E%{Ppj`n}>^aXGCg{Sqz$khOc8! zS^URRs9uD|;s0Y@NUqGHzh(A!87U32kC9XWFCNKOTXMe1`Q@y}G`EHy7vYYN9<$B( zH=mlL+EMU)V>;a7`ENSu+Q_b3<%+k_QZu@44iW6%9jF{Q?f|mUcUL+QOs4A{3BPAh zk2X?A^Z)@Qt$dZpzWs-Gn(upGDN89x``4d*_~2#3pourpu~md`h_3y!3FTyyS^GPF zY2B2t5t3)?aiDB*B{|$M+nE5#dPr53u6p(g-RT1fA>dIAJVIA6CKjwGG^4hq;=l&v`Cm|&CtJHfh1Kln{^$8O|ia6Rpmi=yyrw&Q@L zRb zlRKB}qo#;6M>aAKs<#K@qdQ*V*;i{0Ph*0{#Gk%lk;Y*KLc)b<&dg+VfqW(uCL5AbIN+2d^CrK5~_+>uZ>PAC=3Q`eArv zmAYM%W%6=yTD?`p{z{15-+bxmha%Lzem%MF7BlbGA3pZ@ z7_O{gk3H{QoP=Ucbszam9{1b)%X$}04dglht7!y9p#iqxP}%Y%iKWK8cJ}r~;)?po z@#FwR(%!*M5%i72qzQvRnJM33W$|_+AvZ zBS)Ha4wdFQMF)j5DRM$8?+1|1|kn74zJ(msuMP&Q2~#7yFwRo;S6)8(E@1NJm)3j$LQY!a!`Ol17Vk zfA>B8hAc*))mtn1mvc-Kfy4`45o)hVylrzmZ6)!dv?;j|1a&%9wZgz+%qC2lTIt50 z{tlQ&ds*`d8InsMDEa@e{`o#^kQ29!jE|+uzsFt6^Kzb9S2y9{cU#_S62Z8Lo$>TH zqCysGn;ECJGcY{!DJ^|^EwyFsMZ61VI#r~mYb?I5CC3W$+{H{cgbkh1JD4m}NNU2B zn%NUu_CxJa}8tcGj)-)D9DOK!=MsN^z-N_9T*1me0R9>L9yBQUy{f7y(VykL$}%@K=_7@cZtdOaF{RBmP+2 z(q9!2U8!#oOviuvyph#CNu(^3Xf?Y0pS=qkTlt=ggHR*Q_YU$?K`KWuCyS|AzW$e+ zvR%{An$`}(j|4rQ065(l{bF#?4l&hFr+^*aBV^#F@gkDt^_K?(rtb^-663a0D}&j- zrt$~7QQ^MFPvSnO*^q6p{_$4@zTPK)(Abi9t={=;I2Cdg54M%SEwrqE(i>BAW=Cq2 zIc0|Cv`2Ub-pB=kulWS{jvPSk&PqSrcNzQd;x5Mu3N<*^10vK~51LjHHNP0P4*h~* z2NG0oTI=8Eku$d4Xi1Ha`~Q=JTA$dLXSV7-6tjuUSllker= zDjh2zR@f5iRie>@W$f7cf)HhQWr*Nyz9EMvB(Ws&m}c+O-SHYumjP zl$W=W`9Md`fTXs|7-XDD+dSn?eJAT^PSej^O29DK8Y%ZStMPr7OXE>T{a^W>Ed^9W zc^=UN9FtdT`auaoM_zKbF47{0EVa%kU>YmWx=wxBr^Dryk)2u8=_& zmLU^EQgSPnj&(lT?|MtT2u+WPC9(q8{GT!#oNMiP_XUpuVYIP8NBgxGCViQT|Vht?Y11wR*a$i%RRKv;a1it&B^H z!f^lFWjw|^0G0esL6P#S`U*h;nZfiTak^Jn-yNWCm4w+Ax`uN#?9;=3Dv1l9-)_H1 z3ek3ZGiUog)k?Ear8iEK7W!n~;p6bvhMy6tzds+feL)>2;(9%x2YyISXlbo&8s8HT z_;A!PcvimuI;A*ix|t)R#axwBHASwfUEObMyb%=02YYQkQtwQ?2o(~kq9YY@&~!5D zm$6qR+!{KkcBS9W>&WyL|20<;(~7^NWtM$VE2HdtDIgY=VzzDMvO(o|tw59SFuH}{ zJB~P9o0%zBHBDo!dC0uY@>vz)C6|@8FxK+=QY05Mv93Bfhu`sZgsyi?=HEeyplr|! ztv}g!z&Z5(t4ghvWk8+Rn#`9q?Axcv@efuncJwD!-`al<2&!)46K-RS67-fn<~rx<3@)y*HY@4K)V;oB{MXT4;=E+;~=Mr~PcF3Oq(F=FQc zA^j0Ll@>7$IF**D`b2`ZtxdbYeLC$nan^3Z=-P>HA*3unU1KOE0zK00yW-^6g^i9?yRe~KNdnD*3#VROdh zWBELyosX8&&G-w^Hgj4otK-4fAY zFD&@WW3;oClQ@8vK^3h+Qs=owp=K^3n#kSp3@&f?C_Sii`hHE-0Sn^b zZq5==#a|=lzNymZTP( zi_u=?)y*S&GZoF7@yzclg%#S*JL`a;%}EDCHq5Y)ltAvw147@AHKAShWK)Gnl3_WM zRPVsGeL6A>Niif2W2m zN5m@ssPN^W;Q!rlh-bER5!;jwZKB_bWfZY)q8$$ClH6ywqSa@z-2DWO;?xPxMEjAw!c;&vaz zr2K>JHNP+XWX(LaOjGv}-=Fn0xd+j^S=WZi&!UtWY^7Bzn!6Jl>7h227&qjyf2hbP zUse$7Y`m|SOmnE`|A8~R$avj|tA|MZPC%)e9s{4YDCC$s))$Dz&LPNZ?)B}sR%c7Rj`+!zNcF4Ld;X5xa&hbC>Jd;29C?;KdU@q4BfXvoyMqjn} zm?(~dW0Lm{e>H7PG{|jdv&hs{&dxh76&qnc zmoMXZF`lF1yuWMvZquBN=m8%lmwT#(!3D83qJ z${>L68JQHvYzycpv(kKsK zpf4^&JhLLMH9?Je3h|=%BN2WMpGnMa%Mt<^7{tMt{TyY-!601x$-`U0EFl`xeab+pc&dppIY8$`o(hepn+YTa zOX!T=)gcP8nr3H^(aI#QbEKptepS)Gh(5l z=cu#>jbzljncjN)aG!^_Z`9@7qF@l2vr9VcpCQM)R!dD*!})sQ#6e;^n2``ptDgI@ z2-j?oaUxaA{9T0r%fAQ(riYEg>$eK6HZ$;9EVJ0f(9O}hQ;dhk{H*uem4VweyaT(E z(f9d*M<;uSSXtrg7b}X4TT>R&UqS_r791dH+b+Mx+vu|NOulil6x%17 zYPsKs=Qay>;t-Zm`8&~pEAvdYH7@G+FIIQ4($$G*9vtjE?MGzYYw4^km6iEfMZ_wm zjv@5NZMfHJiIa^&kDvp^#xvx4E!Ja$Ch}h{;w)LXKkh%+HPvIOUoUE|_}PqF!Jm3c zPkS1=ia8eSs}!}}cj!w|wch*eobh37b2Y6<+(}tRdjgM~_s~)_Q@aEANX`k)=tVMX z2UA0~FyD=DN5C7(@my5K_U%*~6@`_(6+wgQ;I8+Fx0SCsM2|;MsZ` z+0mCoeWp#sZ`bgx0RspdEtx$-l%99czcOv|>m*zhNn#bsZHHE7$Jx%fcTdgK`4LOrQ;WA_)sigD5!!;L+(*Uq~hhQw~FR#`is4b)3m+|51C6*NLChr66p&67GNn z*tlrb3_a%H^5tQ8@~@9ww@d{R=(QhFDlWS-6`_Y-)Zu2dCo-gt=GVDRw;Zp;$Bsn; zYcETqhRv@Z9-?Ye1scQ7Si*HRX?s)a*)FzhWX+phteO4tvIu|eooRKyX-+`Py~(>y zX&B)Cr*+k~Gr3c0!S(|&awKh26tB|G7QO2bI{&69R~HM#k3bstz3u$F7_GW}k;W#1 zfllR0PnYMaAIUr$^Uq)DDLhlPzeu3%5Hed@(^U6(G88(!c8xKxuqLL=P!uZ#l`?r> zAUi)fq|`4nfYx{7|H&|KQM+2q?+_xw<;Ppp=uZ^B6n)*5men+@-Tpx`NwEDqf*?Z= z)4lJ>Aqz`UF?B<7(?^_0k6i5dV@CEH;l=yZjb3$ojx7Uf%ltO;+28sq;hm=W57~Cs z<9e!@r`Vgm?^r@qB`^LEoNmqYqHj?AJF=u@s&scio98jtY?4W`GF@A-DUp*@tQ2My zft85>@9U${FxxSyqM=KiN73WzXC4O4f1#Fdx2LJTq};={x}ASKQNrB5je%v`zo%`l zkK?&X@^*2(v!lE%?cdx5ek1aaAbfHa&rUxN^JVZY|BlC2n9ow0?{3SbC`r4+9dN;W zEbyd*tX8ouqxPvWHBj}t{+CT5N-5*3+ii>99+lssZuoBbg4)ecd9R(X@d^8WzsKoY-H9nMUD6x_k=BoaaWBZXV| z?X^3}c0UbJ=he~602go-oi={m<)KT9d@HmVyWL5X%EB^pVvlHFMvjDa{**0u# zUMe;|nBh~C(l=E>cZdV2)v2mSH&>|X#$5jJE7oDnnBzJgv<-moW@jBPbvt5j{j$AQ zY=v-)VUO~`1wP=Jh^TqapznC zj<$2bEZbZSc@Atz?GEgCTH1L%R#Z-}HoS|kQL%hYKD(1jNGE^{%hfOc08^CgTT$&g ze0KA6l3~k*31g8r?Qw=g$&@k7gW7o`XmMj2cTsR;$}wb6LLX`EJI5QMF8D(h*1sO; zA1Xd4)s=WXq1Z{xQ=O=*uuH<%Yv~Y#mRh zkD9W0ninX}tOcrpWy##n4SlBDaGU=C_3}Y8Gk>Pvw3)`hZ;ipe;LoQWLWZnHfxi3C zHzD;gsTm!KbIAKd&z9-)TtvKP^+OV>-?59RsrM-a^R)UbUx#MQZp!O4E@u2g@Gi9F z)G;|lUEfKmsPgyC5llQ>kE-h6R4()fJ59;>Z@1q2{C13(#w7p&^=@UeoK4A(r%Yn+ z+&jxDt+|NK6p(7q5ps1Z0QP&NaIP&X22v=3Br>^c3v_$MexaM%KvCzpitMxiX!67X zKoIIbyakjkDFRRnP2!bHx-+FXY7+%iaxDDA+h!lUa#p^d-gcql=KLuYMo$lyE_ffR9jDJ|xf_tbSJIp8$;0=k}#7u`u+TtYrrC5Lk_?hw%tDayY<8o|+XW~Di3AZeMDli0%t|7`n zs{LS4E|apK+BQRzQ2hnoUH@#M(gOKJN?cQ3GNQOUR$CHrye zZOz8Wu z3nQn39EyIS4y=FGE$m^~h@Z$~Laq-4r1+gHp!l5!huDV#+l7Y~7L8&!Aj4mTOp`kFx-kPIq5n7d*~ z90|yyaw_@KWt~SiWOon(0o37aaR3Y@sJ2ZX0LprZ7LN7v5wheq5Gfu=iZSb=RZV`7 zEVNYbXZuJtBF%XR+i1*kWniQL2Nle#7Gb4}Fdg7w&xM(-2o=2vOj)x18v9YXrEzK( zupcr`n9|CE_ID~^R16F5dOvnEjxZ_kfG>)X7}Ea$n@{jwqhjjRzKROIR9JykLf=`a zMl}axylr^$4LIB%v;+_+0^fK-u&yHN{;mFF>K%^rmknl$?8(GUuqK*+8CbD)2CSX00)62{Wb0h5f84T-He}+A0Bc$gZGre1V73LiviB1{0{{Me$>q-^m8|{U;R1owSU4 zkI!fqUa1J&h9|W~{{ZQnTT=bzfBs&I4wozEyqjaokA(G5_W}ln>3V#I(ZKy~C-7Mn zuU4RBlce=5u0}>bN|6=MS<#QnhaxCbs4$&d$se`VkaexIOja<=Dv3~gY;k1tfG z)dLtld6LceZ&SEdFW~Cp2ArRVCQ7UzKQ^X;nTO$xk;>)76$cc;B34jI_%JVr1`d&blZi`nsg0lB43CE?vi_U)AjrN;0Aa|!Ys^8WtkTFGozE(KFH_S!Xps-CF?Omlc zu8(jecd;=~zq)g$Gxtau#^cmd+J2if1nd}>DQA7uo;yb&b9)qm0K4%6+GF&wkf3d} z+oGfRc6t~HE3joW2ioMaw?&MwE1lT#ZUK)eKrrJfE0fIUPelSaD#wlP;AbqETTlcj z;YVo21AbaEgV;4t`_${bjlhA$&>tAC5O5BTq<>yxg2M13v0LpeG zSH$#k3p) zP@dN%ubYpe+g0r>xDb6#&-zNHB(H0JoKz}Eu4xv^1UkgC&q<0kt-vM|jHPP}U0H1fAs_Pp0>%iaV1ewN7E55M}ow+Y!&i zp~(LLMKd>h-l4>$aSu$to_nXCZN&Oi6D72V%iak_j@(!yRf-UTb+QfaJ)eo=<5f4bj+z3b1D5z?H+0 zN}P@oNrga6 zwhIegiTlbPv#CDJDMN|_iEIe0nFA4fS+BgCqQJQo{4=Lb^4LB*z!Rp#{{YHGHQn2Y z79C%<+JaUd z88Y2c;?s)Rhp=#FV50P}#?v0+*&3GWrUgP@c`LGjE9 zUYpoi?=y87fa@|XAFG+!@&{cZnNQnsFm>6zF1sl#EE&>|X)jAN5sr~|?rwP9FKnEtN+62^GzwCDGH|PkR;|qXHYCRDM~PsQfu{+Xo8g z<7sNA%=sC*Z0Fsj#c~4(@6=`(UrP!V!iX2}x3>dJkw=>51JdNhk05LgI2#^km*%E9 zVZykH^j@2(cgm_&2|OJjP5lo}#~3-&-FCW1{iA*#_+tl0DNHx!>U)XNGOd$j4-<^X zpAf$s#XlrWL(U$K1jOz#^JMNj8SH)^)pYssdML%i1MOgV`_DT#T^O131sBC`HZ#QQ zy5+1)xN$blC#hI0NKG{v4>X*ZNIZ zAuRhS(mcSpJ;zgTQos;CpaXvCJ1G%LvRR^ zd}vO_rOV<5s?Wq~!o!&xWEhZhykkl|qz}?*^i!}f9-Rj4XhJgTf9stta$p9ulU?d` zEAHQ=!;=r( za3eM1B?vq10`%t))n$jtmrTgwleturonKVY4UL#mJa~dz>$d?E^4OL|&q&z?KTyXtN)QA&m>!V8C}B;9TDG z?VvdjFQ5)hLKePZ2Vg}ThKU~@VH^qZ`c6Ji_KNnjci*%&FUj#SJ)w#14jZ5K4xbP{ z7jyiOtPeNZBRD3RSU_{;#q_W%_M3E<9-lZgGAIMQb;Ff~Hbt)-+zHicT`i2+?>d>! zx7uM0Fk;8K7Cv|o+fg{w1^Ap0FZzs2LO~m;*mi)UBLl(txmC;D5PmL9x#Q{a6t?z4 z{(=QEXRs`Opv>nom!;IMc-y?P({Wq)8^XOKu`Z9K*4p=|1Yb~^dVmH+{KD=HT}Can z4FkQ;JF3O_n0qWJaYnE0DbnTY@e%w%F1_^*AbKIrMIN>k$|iiDhvRdv1uK6`8Ui!A z)u}dn&KX>6P52-{$S^i0{{ZT8?Z^r@{pOr`aWxghR=e{k*);&U*3|H1GA{LGr^k3z zy;U13Uy)O_sb9pNJo8FdZ-?*Z6sb|-!=0jYh#KwkddVQWO$NH@HQ zVvTt+F&+in#XkP&&YaKPDx?y0kfXlWQB9p{>4E)S;K(xLAY*mkkiYkVRaScfw28}; zL9C0n_=GLv7>iRLP3~ZPdMfr1II@p$HmAgFca!M{{{U2x>l6=95{5m=982QH%%HN7 zf20HGg5({my+S&5=Cyno+G*G`9lmANL0cQeIC{Q5kdosAWk5ejnHKoij}p(3hp-^~ zzz`8Zf%7Y90;nzb@G3W|?ewTo_JFE`Ou%@EN-x!$Nc+%)E?lIaNU#OB-e<{+AX*^` z_GL1euzI6jCk)-Ulf*K%T{!?sNCOX4VJBXQjPNj&|XCFS( zcN0&h7>fp~k1;DwVN8M38kJpOfvS%YHLg||kxQQ=w7xE&G6hvoK&oRoO&upG#1A?I zkhOM^a@auB%&IsSLPfgQx^=tY9@Ap<$Of!#82pXgNlH8p@&^VtBh=HYvAyL+yeg^#k^$uJv~mOQR=!5_$j^&0$)%e75yeX5 z>T-0dG%!Eyfu}l@G{EUR9`ijuHUt}6+G@qtdg@j2s3+%R6CnucXsQ9+jpUp+M`bV; zDsnlmnu_@wF5$GN^)}K@?VO)g$izD+<|9^D-q#rIMpk&vn{k{=j?uLb^COe4TqfG@ zz}}=+E|=4}9jHfdPayX#H=2UerLle~jqv4Rji?nL<}k_pP`rYNVh-XjP18H#%7{|- zG$LYorMARn6P@R2?K84_5T38u4T@8 z3~ZWF!?jxvh!kw+CO>;yoa6As?M=5P2J1(y39d`cnIqCD|YfT}0oooL9cpjHo)%pvEZ)wH} zu6Z*aPsQ-?irRZniTI~V?!7TaQ&>RLta(2(&mAUj3I7277yj@y{{R)2tm+dMB2h`^ zx1Nr2dT^_b$Wi*w89IKa8*0W?PsT<60KCw-deDVP#?AdlBL4v12AAvYZIf~1ndkl? zuc_;E0IN!DP~I0#rODQ~i6fnAKjwCBo!hR=+o%m!N5{n75qpd;k(pIC0B{8LIu4O> zXm%Ftw@0*!bcy^>b9yewqdgIk4rThdKa|eY(>G;w##qo2#~vlYlXC5(?l=)WY#0|? zv#O3xlM^%aon9BohdxRQb_#3!OHDI)8?gX-OkUs@N{{U&lccsfSQFrh4wI-jF=GUh zG>Wx5ZT6Kta@CN>d#xw_(N!~bPZkDD`7g4s{Kg`TI6oA`xw5m3DphQddtbyw>eH%y zNY{5;9p{(lqO0D{HA0@gOms1g`;!+ZUz{iNGL87525g-=fvYm=AC(UC#p*hT$og?9 z(tEQ4XP?FA%O3J>wcjbos?0#_6zp%z&-?~wD2CKB^1y*NYWzp1W;j#?yW^Ro58@pz z6#gTtb;;C`ON_9k`$SqTX?6JiY53yN?ekrC;aNHmmz7vG)d`stC6j0EJ-^2~!`3bq z4UFz~2I_fXFOxb$U#T+|l(d$u$dkW7?oZyPra(A15Uq+MX;B8uZ+0LLi8~os08I~$ zW`l_dCrngDM`{&c6I8|4Jfz(_3JG?1nz3ThjA}d78vg*8q~8a$ISM|-jefJN#hNSR zW9>$TMU5;;6%*L1bf4^H6C!CG{>CgMdSFlbjb0<7`fflvMGn%s)93avL#L=o@H<36 z?O^N)l*R#ZC#`t^pU}s}kxPI9{iLvV!((DZpYVe3>if+A{l9p1ACKN)QaCIq(kKZd zh%e=uU5OL`{o;@-{{S#Dvbf(Fqc}cM^&6FCBXB>wi#u_rf4G3-s8O*S$IFq65W7s& zdnms)C7h9z*%kMI0uvk}gT0TKLv6Kw@H1^yWc-K(`a^?eO_@Uti6q7J>wT}q!ivSN zzq}Bdt^HB7P`jbz&b39&1(>fhv z%;;CzK07}Bya=s~Fw@#lJ7hbJ|QQRPgUBGYQfNh9-in6D0X^&D%{srMZh#fZ7o z7XD{Zc>8TL=D=H*)(;eRi;0c_PP&x-TjFied_6u=^qC8%Yc*3*z}UsU)$zQ}A3_7E zR`&`{^2yblqfYHzt^4e=PSrUEjqL;Xi{9TkvXl6(So5D>|^-rx^*J;1Pg2U+!inv^mdW z2W}dO_>L8SEdd2yW zNQ{q+k*JAP$XIVz^9bVFwy3&_b|M`o@*DV_tggjMm{gph+y)Ky+6;YI$MrF;2qs;# z5Vco+JHmP#IsN@W0jq><{{UD*wr0w05Hj{YAY8fM`FQgO91_BSlm7ta{{X`|b$pp| zjr0iPtZdtV3!!|2yeR(w3zZJ9SqpcoouH@G05P`3%T@45fwSU8y?63AFehZ1Y@W{J z#Ht)L5H3QegU!hQ01`41o{=E()fKv&X={mWj%afNuHymQ5-{yUdD!}vZZWRh(BdLE z%A1Y9#O7y0G&s^b2o)?@Npt~kkYckaKyZyrKd3+f)Aednc8`x1HDb=-p5pkJr{CQ< z)0z9C;yG}>vd32>R>C%4#2H)M7=y(ckj`HLv>NfB?+T1%Kp0w^xi%)<2PdTK>JZGn zFTAHu(z{+F{Dju)4cZyM?-y!TzXf@FtaR zk+Od+lV6WBvSsO*l*j=i$dF?GI~S-1Q@w6VhrxS)n3yB zyA}m(x8)s#wBhRb`a{qp*h1Q}5xsU2FNkm$kF-vottRmtM7MTXdv^A(OyGGeC2g6O z&%E7tF-i=F+y(gYH08l(LWAlLiH-GRC0qgK%?VLd%Bk(w$0d70*^@9TxoyW6w9YbE z(~6i5Xi$LwE-Vedq`;!&%ZW)D8JO@dVL7t9DF-3Q)xB>tr|@oV@#ucd+EX?+TrEW% zXzskpEmN3g3yqOmA=5*UBD1OsQ>lFFsZ3{9F<{smkSxT>g_$felh_ePAgeOO>~(84 z4`2+YKA@Y)nTP|An1>k*S;<=MRVK>s@5nS`92r<|S4^v@C104o!;;#aPX7QiBAl4m zFk&6I`w6=bS$^Eu$@_PODFm;k$!qqRo2AhH+a4}@L#oHZs9%C0e3;l%$m(nD_mqVUr><^ZH8S$*zOipYt4oc00&qMi4y?opF1ui5qZb3iO2-x`)%;_Lwl_ zI59r8G)So~rz2<6j}-*&LA#b1uPfn9-F8+?AY#IPHzI1y{{X`_gyY!!8=Ail!H=iH zzNSqq!|F3y^*VNJ>N{9FO2g(lufl&2=!JyH$a}2pxH_ZwUI59G{Z=Ny@F&+JN?J$G2_vXYh?;rhslBCV*C_<4rim?K$~*o{(e9>4O83Fj((G8 zjY6;VnDSt}xf+MmXHSpXOC~%c^Kl7mSh}TE)2m6ac9mwwh>dNa9k=3P$}N^bBwp3;Ajox{EPK+s&_;m?tLr@>IsK|@5*d4WVC750ZAW+h3`^g!A znEK4820UR+1s>z}ltYw_$df=94l=4qDmOj0l~ObtB>9r8t0qPRJFS*9EP?l$v6Wo7 zDDz`#@iGNh>K>P12XDM}!h@{Ek=OZR^nu*e+{91#nTtI){2Qjo-n&qL_L{kFoABO` zq*}%oP~TAipWb;LPf|q%#-NrJUAGd*{XuPI?|sMpr-$UDjwQyZn3u9~<8=43pMyR# z{{V=3Y(MMJ=?V_;*uK*_v%i=ZNcyYoH4$~QLY1Molhh7J18w>JB=PAeHiJkk-M5>jo+}Up zmC7vdMo=(3i6VexA7dK8+q~4NoGz0BkN_2NPaMOoQ~@4?>aB-(mst&Ou!Im|g<|J! z!XP@h;BhF8c>qE8F*|9X5127)$B-4GvJDC-d%23jxiMQgDfCg3RCng;VO4ik3um_i zAjz!pLN-N3MZ3C-jYJEgsSunfdqgI?)EfH&Z_U6=ojTE~krR39K@AYbz9$g1OllGd z`i=dkbHxdV1f2mCxb%+fB#t&7-%+odzGjB2Ci6`>5pc; z^$9>2n$ja^Ccvxhyv2BP`7ny0O8^S)4CAO8R7MBPzwqp)rSA*}tP>c&s=fgdn4V(U*(bmTO{VMm#}4^5Ah>NoC#fz-~m+v+SjLD><=JC$&oTHnz7uUtM-w}i>T?%G4(P0c8G`p zwL2b63MRYK+o_KG4cDtka1!Y;Ye=rD8O4dn>br&8(hbIxIq8^%?8 z*c-~?>&=XLmVo@m1Lf)S8VX56+V(L99ID;aefBeG%DFfo9@PS{880(mijZV$A5Jzc z*tX&Y#h3zEF+US{3zz6Lz6j=U!UyIx;L2U)l%Zv)cLc>}Ov$A(6?NcWGtkY2T+=8g z{7mPhAnFJR@&tky$tQL#OH#jJa0Gy~hKz%=U&Sv8@+(U?Mhj z>&+wT^uXB$WK)QyIj-kWh?{1^+PZ)wy!Z*>r; zyWTx%Kg>d>$S|B{tw<~0xeyTDa&9_it(a>60Ese2o(m5hkQ4MVvP>f;9-t}o^SQ{U&uOQo=&|(=s~ggvj${7-@`UOT z`XTY<9EUaxqW%_erl-zVAm463NV?smFzFJ4g&sV~H&u@(IPrtno#e{p$aND{`IyeE zS6NBRkpBQk*g`we!hfBSiVyZ}f20qG1Eu0~ziHV?EEblRY7>_YHnK>7xcYp!agwMq z5^MluGIc?AJvs;S4DZL_BXg^X>7%O~RYXJ7gJEL(n-QH$iow9+Uml{6i`%M@>4au>~ zoizLlzt(8hsb?=tisxgedl3(zjQbV0<47W)x~@G8WicZE0JVnSyz|>WY>(;XVn8=b z-f42=`(ILxz%w^cg~qL5FyIdV01%^N60BGnV;+>o_E5OH)5y9f1vQ2>G-xHw+`j_1z;~z?l zNpeUdpZJ>2bt|cqhWVavQq8N>%s{>@$kb*V0|SjcH&E5wT%wGXZsPlCo^~Fsaf5ZB za(qjp`uN6GYhK2vh$^4TS~7I*>ulTh)x5)z8(;H5q}&Oh=js=2VaJ-BU7m}CGP22! z1LR`lkPn{1Xu=U&>MVXcMq`ovp_}X%Xn%*w7RwLR)D16}4G(B1!IC*h++$EX0U$8s zE$yfO0H$!p6yKyl{{X6>Q`BsmGOZs1j2S}z053_~R~22NjF$9HG$ZrG$j$00IW_OG z?Ihv4GSZ+BK^A`Vf`Pz`W`>?Ti0Y@7<`^kk<7fq9_g16i%K)U;cwG?(ypOk;RXjvw z*Qq(Kc!M4cX`DFj{4ApWKSYC{ha2dQ^8q?7T$m4~s6VP9%34lPNQY+uU?7@f~1=aGl0&4hn6E|2du z4!at3$ic`Ohy?EgVh6-5fJ|*{{?kef$B(aE#0C}eWkJ_vSTG(SX;6%5K+-$;j!q%7 z8~B);sAOF#-K*^(c22CNe@GsqoO*(jTXFFdB9I6m6(fm_^EM#5S!}1(R%S-anV16X zN5l=ex?Fj%=*SJ7?)MW9OM|HCotF+!0X%t@OzcL2;H~dFu1=pi1WfIZC04@j2Cj>z z7`0|{Un6W=Rl}2{88e@82u`O2o&MX;9hWW;FngJYegx6fmOV)YjZnS*C5f=#n-@q= zrIU4T2BSRB#Ckkh@p=x+K-T@IJ1U>$Zr)~Ypc9ofwTe4VpB+YI zC|j!6FiB6gMr$*+kjo6{Hl%S6hB z@?Wzf*PXxZK6~+ujz18{8zVDqS6(N$?%H-BA2a5^5g|J4fsU+(x18qIIKqCpQ$?7c zh)ta&G2GOEp}!=~IbT|WHonskS{65dQG-wWns%z>Ltya=MF&WxGlI36W{j1jc7d4i zr*AUM$Xlis&2W-P*tF_htj-Ea=7dbh8Z`sC{o{-v0d8&u4L zzMV$NCz57xT%Tw+=4nOKh*{p`nN!ds>A%)CJu2G?A(D^8vZk}C92uL0B(qy6(l`|y z5kLx(P<2x^ksZh%NYvfDNINjp!2CrP1nnf~)b?xlgxDKE>jcrWIGWfBh)V_S zL}OgV$J63gz6k7KhCmpxHT|Vm3!TWC17lJ3Z{iPJ4lYK>y*ch9oC2UZ-{PYG02H@Q z4g5eq!;b=VKE6Mn+H?=I1bkPR#0MRWU1GU4<`pjAK_!1_%G0-#jO?cwJ%`!>jk{X@ zvZd7p5pCircI8I@05V#3T6QLsRS`HAt)NVf=SvGe0&z5G>^#iZ6Kt_uO|ln{P&o){ z?RyDdUln_HJ|wiM7EkXLv6VW7?c`0`cHbG=g*EP@e(?$e&-a`%u@vO#_}X`)a_JtjZEgiPr&G^1#-!4J!IQQ%XT6S@rw5VV#u^|5dc(095 zYX1Nb^ts<4^xGI#?Q;4ps;}p?T6S7?$OsFhx7*@6;v`=5IWh7LB1Hil z(4i%#Wv6ClMp|7b=1H*vER{dvRAOQ*QTrIf8OAj->L21;PRmZ&Q>4gSQn26VZbJBR zg=7Z%+*j%_qSGlSu#)~a3k?|?NIi^Nc3O7TuWdw8@*z1%T48rHD6{;mz@G*WQPHW; zNom=}cGRSiqz-?)C5?q(b#?+lbFVr``$OxCyEpR|ot$T5n;xNhX#M$+bjM|ww%p49 z027Z@ISk#jjfBtCGL{N*3;vR7W@33qmL?~Zc{W3cpwb)Q@BU%L%dls*>**10x$0|;K`%fyRZ9%p(@u(KGA8~ahim9Mv%%1#I>)`SukHpjf zxv`O6B(&_~J9(;#2A5=49l@JAd}-5KZ;rc`Z9Q&dupI zM*e98{21p>G|&d0JJtTM5;TCU2goy&BJOF=eNk!IY1raXhypRGC&`57MjI~O$UH?o zK)-68{va%e>K4a>1x2T48Q7d`!`f6HKrv59^hvfpYiLU_7PoiESO#pOz1Q$e%`rZF zu}n{&D7QyZFG*j-0l=zyc<4f19_uc$pRppU4HteTSP`g7GX zmq%P529XC@}{nwQ`PY*`BWa|22$KisC{pX>9@r5I$z~m1aO@DYF@a$R0V89c_?xf7w zKMw10m z{7CgUa_3Q$Wc@$!7M+}LGXyEIAP?E%Up<*p5 z%AFfeQbp5&;xn69GbM{#DH-`O^S7;-UkQrjf`4Tl{!Ik<;(^g%5nq2192$5HcSO| zW65Oga@{+60F_$3%#Tyo&&(!L$Tcao0W%? zn+p^F0Ni1&_kZ?`aVPLtwRISRhi&)YVevg@!HE7)eC;Kh@cdc2bw$_)BwPcQk$hfuLbhEwUx~v%DDkWY?@dI~;Okoa(Ppz#r1Hk5Gy!4Ic&t-wv@^ zT?q4LCsos@tjuzaz@fj1CCjS8VnOCxsK{3-0ccR)^nnD#pHa_@DDE%*(;r?}8=%I) z$-5x$H8P6_)3!c%lFfkYL+vJv>G9;2B*xiIy0BirR`Ijs$Bz>zMp|C;LnAK6gob6+ ziyq+MjE)BP_nVWUL>AdE;7c?6BR5f*vf)0~G)MUn(K zh4z%|6HiP)K&lGy_Y#B>KB6U={A0%d0N~4^#_ffucAq`?qbqg!52r_Mze)7$t_|x1 zPn-N#{{Z$mbx}KRKGPFxVOT=%u-+y`$zs-p_LM8#PVpJCk~MklImSUm(l@wx;26HD zC)Z^7oE@?ott%i=t4QV$%zdb}-L2#c0Rd#SMh}(TdsCbbr>NVcOflw)p2;WdKoeNR1v_6#AO?Xzt6p(cvFo@;{SFjQX zk_YV|GUwN!vM58%_Lk7Rgm)+Na3YYzl~zn_f2dq38wkV>K#7rixhCd8h-Y%ucf|?0 zKMc(6>SXHGhs4q_E;ROJUAu$K3^;lwPj;p){{TtaYXyqaF40@4C}`xW@+1#jnzuWi zK4BMSH?f=)or$lQ5w&hN9%BXvyef*xj8Z9PJesIW;YIfWvx@{CJQ(J9O+$Cnw62bv*-(KD(-5z7MHU9ujOSgW&OJdK7 zmrDviZe?>|T)Uvt^X6d9(_~h*1bp^^sHpmhQ{WlI0B>*5Z88jwtQ$#o;0pfpLS{Ks z*c)^415P~DD@xauf%G@ltiLC;kZ=yf0pg|5vkgFkJO~-z7g2~DxH78_%0&|tb=k9G zq*NI@?KD43dX}Zst=!zp)P5GjFmconqq>8%2kFON`90YKcwCzawR(Q57rPsTCvt#T z{_-AvFlx7FtpHaTR z&OJsp6@@Fd=Xq2WKss4LKL$UfKd!$>tJCJm^rd{BVq{0eX^H*dJ187v7xT5it^xP$ z@D1ESkSL~IUN+)e9uQMjOmq(b8rlaQqy^M0fME66xKSzS9lf-lDc${-O7Ypq8L7zdTA?Ag57% zwt+Ir+ib-0NveydqQYqPSs8~YjbWsEy?M4Q>N~ETrUvOU;Tp3m`hA=O?Sbe&;%(G8 z#K^eNeJk-Ro3A}K5$kmhZ-mAG{_`hJkd{t=%m9B#{mjsqLs zDZ|y~(5o`_G}!Se`BPuK-;V}tXg`NkVh0+a>Awrb(GdMWa>tSnwrR=IV?;S|X7tvt zP_8DLgmQJ6x@<-IoM@}#xic&O0PzDdfSowfN9OM^b)7@?8EK2;#0@DYc?ZHn6)m@c z4Besntp5OrZJQuOziRNNNl#PI6|oiFh%rBAU3KQgO;;~H4qaR-)!>pHy3 zDuC`)f6Qhpl^(iyupQ^Ci=a%HJ>Ytb0lxDWSJ3_-pe`g=P5>YFg1G#p=Q|Y4a;8#2JCoXM zz|88*Q83W|09jj~(l$Pg)Owlve6_()yvnNjwT-$#iALZ9cL`=*ojrV|n6X9vs73|W zbnM4<2fWyNEd5IQc!)$lRUPFM@KjU?T!0VtL1&QYRcx-dCX6^kUg&4EKMn{jvRe0{ zb4EUw06S?&-_V1m{5^ii9A1tWynBf(qG%W`Z9f$9*s^A%Z`r1f!Z9oGnW4V zOrNxTOq!UA;7)9t(vVnomK>|g8?&kYW->3yousg}#>DnK3AsRZCF@j11Oh_Y{{U>P zyQj?TzMEsJ@8)RTaj$L6^INJIp2hr$uytvlrc$a&B!D0|BkW+xn6oaNi+?^O+tmZ< zCi}=7nKfwBUoa5#;a_85abh^eF4>LB986Q&cjjYq`~bzEZOn*9Gk=qB-au$mZLshq z8>h(0h`G`RFbqTKAA`=?Z4|>D0E%Vm=%Qb7Nml{lie3is^~EF=Aik zAg{_J6dVg5toD?KW~yC+AAFS(mn1pNVQ~v;^I;!^Z?)?mL4%Pw|Xuzlh};MQyj~KBLvvX))KyJWrVXV;En=ve~{r#KhXe z0Yy6n1Lh;EDO;j1w4qOpq7XGN-gAto5Dw&jXxa(qj}fSM1}Oj^i2%m5qiE3(4I^m4 z31l6$2nvJE%HjY9AVbYrt5Gv5P=RM;C6Pk;HvwWc zW4D=2G=P?Y6~|oA{Ue4&GzFhA8#b?MfZrw|T*v7FN0Gb@UY(2B{iJdhFQHISya3i7~PZ2SB zu4OF1KF=l>)9M>04FK?Wot&y34zt7wJ-OTIoPZ9|Kxsi{tOy47u>dwj$20|ZiTU?} z2q!WQRPQ*Arv=+~sT(iTz5U~g|x(8#V@I_R&3v-WA$W z4(ti<5cNTI0tivPj`BaimOPr;T{;nkH@4I`Cgv-{pUKq*%j<56#Sd_KltpYK zRwgU=m%=(#29A~-tw+*~ECM`($oZRXl=YoXVi5>mCaB9|>D-U1*z>6GG-APol2QHN zB0fdfU)AOU0Jw!XKcqp0^82x&LH^^+Ut2J0bqoi2SL*UA+UbyI$&2v?7OuN+G|c{| zUgu6j(~puSwd-Df)r$HLpydX;uNe5f?7=@N_vw@06(cGPyHi#q6*M zgRAIVd-ZSdW^@e0ORBIRnzw|@+-GC$!t zu(h1nmmm9#7egOit+eL`hv!X*n-u0W!!tG??^1ukbonWLOqzc)ir#MNe+b8n>m5!; z9tOey>2hH83ZlQefa7S{`U0N(T{<~Ck~Xi>cUgquO?ZZ&JaZ?5u6;D@YtMNQs=YYf zt=qU@L_U@~4UP03!mJ5q$Qzm}dE0rN-wxx{CA%LIh0BvBJ5!twg_B;RM$L}zk_6$0 z3xBNn8@UR*8LJ7$h*k^?x63~8BnrOkRoos#=N4?`Eq@zJk*&AIjYstXxRX6QlkKJ+ zU`%}%#{5QHgbj^-;~ZH6k?E0Vw|J#84cQG2(-iyrrYX$*(Y3J~(TYv*H-lI_0kmvj z5vYQ1fpczwUrcP6_780p~9@lr&9ZCr!nm=;WE2yB@xxd4tOU!@t|+_C+3 z`$%KT8NIcA_L>h+!G59|w%cJMGj$pN021g;raW134i25fY+sGJ0A|5#fBk#c-W_0? zeC+MuiW3W?E3z$*v<;m{SnORehDB}cRmkFf3KsVAMeh_UP}G{Q}2E?j5h8@L$_MT>Ly}FwjFBU$)9zO8p{4*y+LwbzFbESLAVf-tp z>WCn!sod%!{{U&D%6M^?Vd#Zs@4Z~vi|~x>31-o@*Z%-{=yczQ;pp+{$B$F@@@2(j zQo)!G8E&C$`Rw@e^n@e(RBvGO4nCvRA6RwmLWrLG;=`3R4h&o zK%nt+CP(S|k_xy0a8UcCvo}s3)ye+=)MXqk>?Qh7dK{04Dz??8p^(juu_(*aIBmCT zvkni$@VOZC5RN!J10?u!^jSSlklHc#V`Ic;$U}h0;O-!L1g?Rj-+WP-PEX+S zZ-|_2-8YfJgZOv8o2ka>-EMjmxl?hqYysjH<;KgDYsb2t@iVPu!KBgG-|S?MQoSxh zr%@g3Q2pZdS;;tE05tb^&e1q-jI?G&Z}l;wkM{|eH&4@QtZSva740Z`jIWPnQV)jQ ze`y44m`M)%u%*XxQN{sH?WX28m4H%4>KPEOG^+;stiT?ocs6GQh z#&)V9)0atQQ(QIqg$5NL07^l%zFYm+)x_x0ak)cdP_a#QU;hAR#y~kz)#XLY66akN zT>!3FHWJJ}Zl#kpU~3?uJm%0zY^|5<7yke=YGD2^q(w(;Dy&V{{$;vNGYRC+nKo0P4#dt( z`Og*itCUZ}G2%M2bxh;NnW3}v_&@=V*eoFs^%=glAxFhd$Vz{we>5ULQH|)XS05Tb z^DT!ap=TklB|q~4Go$46jZo3KW4|#02ikybHFXP*CV{ArZ#sKOe-DiPIUIlKficqt zYb1QsVU0CXjl7c%Oi5ZjW*-`P{_zGJN+@M-{lEEu7y{nIw6{_S&PW%q{{Rr;!-lKX zYySYITc||!3D$TVEDX9Ya(`nPf6#r2_XwvRHQjPGcN#zQ9A(4ll-A#U5F>6roulFE z8M7jq`hem#oJaov$lv>a^BWrBT&cSgs8_fD05Bt)CFO3^#xivbMv}XElze#3M%~8e z^1o7ye|3KyB|#*8LLX%v@$QKv7@6{o(!=zMP}%SDD+CS`yDQ ztjW{*Br1|@Za(t3hBp5IPg38+r(4s3(&Q>YDm77By54xr_`Ur&^!~F`RB?gsYR8Cs zoC7{z@ob)_;#paKowxlamHbN{t9)&dzWYo)NgYR0&Ra=t-X>xEm@Bl$-bw20J&blkz0I1w%?MK7hk*<1Qc+4PV+2 zrB2WNrML(g6{~-P9ZsR+;yMdcW+|j=vV83`Dj;qmHl<=mnLxHK-6**0d*e2Q32%d^A}Ps=IRE_ z7*c{4{KDAG;YBXz&xotcP(eHx_5k3>L>9J-R(6kD4)d+}RiO_}eVcZFKZ318*`tPPCHxcw4v z5@?;TdzuGL)O9Uy)D>aD{{X~xLydioGdl7}+wCf+>mV91;$la0xA&9C-m8Byi!U|6 zjNM*ijJ7;V0NX`vb2cASsLiQRV{gxUkJ<%}swC$lZ>H!($I=X>Gh}gH!Iu6Drp`hB zA(e+>b~4#IY)U=O!oO$}WJIM7U*)8q2(Zd@gUAP%$(sSR)DO#T3Zi`$b|?l@xr5lOI_9 zCnyR{3;31{lnO9o=Xs{(#S{S8Sb^Wf>}470oColG%Id&4$On=PmSNN69@`{$J6sD8 z<8303_l}s9dz1yP{mjg{8xZ>Sd=Ap5s9*u0N#J;dX-wIW74*Yb2IS5sdw!!x`7#-L zjEpp&VeHq$Yz_&$`9ZGc2V_=6EsKNRxS0lg_*+oUz1~N#5u{sLj{_N5msLA8+XK==X{i-z})_k^7Q$YMqFxg9||hwJej(h{{ZdSWc<4ugGEa#NrpC4UF|sexKi|q)pePMG;&jtTY)`?OnoXYJc*Fd zpubl1_c>$^AJVLyy@eLuG@MRzA`YMe;RZZ<|{3K$c{xvPCaPXJk-D|MYt zOo6nfGDWfMC!vq4bB?qE57b98(}%V(3VPXcSj3tWyPxm9GCnfh zw9!ATOj#S$B&Nq`F7*fF-DQOIG1>d=DxZsW8AE}C8A>3v)XXt5Ajoi#SZ%0nGv+0Z zlG<^vHQe};Rwi!`cNgM)3t&{ql868hM2>xZLWJoGzAL@QCV1)6^)BA0ra!%80!o93} z%obQvrzUH+oYf7)p3Q>*EXu2bprYPyJ$J%3Q+NAQi5{{UMJFpZg4TG$$xcOvFh z%%dhXbt0R`YLACLO*H5=4k+;<)#rOt>23|#?-PdT%Xm2N`7Vc7VqkSrG_kULPX{+o zlQ;8&HTWH+I)B77^m{P%RC3IB{Uvj|*uuvND_ct|Z+>{5K2OF~y~&8`9D-(^lksd_ zN3$j(hq1k+TeRoK4^V|@Hj+uYh##!PccQ(c>-9RMy?|5y02130NorC3;v1_FMe183 z`;v?ekyv|(QS%|2t3~#p1kB93x9=+#X=cKt7jnn2xomkKCr&*(3#i=lMj~wRCX!Ti z3YI`FMUS+w%~&pep`RgDVYbj?Rwv%upY0b01q>@?6JNDK{y{g%61f7Lc)i5xBafJ0 zs3mQHQ6g}*R@HQ)i!iPX1;(aquivl`E7a#IFc9PejC)6Y%;f7joV1CHK=V^xOkfOJ z5e*>bM>c$k?FVwx7au6V|5^8>NJ|*e~1gGQRjG%jnLas9}?PE8tgYdVjRV9^FUF! zuw^i1{%S6pHY7@nhScxgr(#F`BO34n2o=lJD&=6l<7U*y#gMu8Dv6sSftMzWy+?o6 z4S@Q|FgMsc1mEDvI0xz2%s!*3wQ8EMWI47izsw1Bg#Q2qoFD%HTYri1MRuQc*Wd%7 z&cNLv{{R!=z$1}R5{+y~fMdIkM{zhEpmHe2HmSjjhum=$fjmY<(yg~>6VfB9?O;L$ zp8_4Y2WT7^AE-c7PHHiCA7~B^ls|C^U26w8$sR;hZRo&4nHO=yVC3>88vDuYr+5Id z?hGtJ#=W;QwGrQF%-4;6<^&5meJnuukvR!%?9DoFiP|f*{6K+F#A<})3c6J;Tq!4H zjBwc80RkgrTPR&Q=Ezt(C|2AAD!V93NZD)M=Sgvwdph@>wHOk%coVj&7weK+^- zBSq7sLQk;5#NCi0J6f0^bsZoN9KbR%*d&?Cb^;PRo*C#W_(%Q9NU&p=@UzJCqUJRrT3e3PMn(36nt`HI5^VV8Tc0_#1V8&@e~&f4VoQ{ z3Hm9Ktb!Z3JQ(L1;x@~x!uAsCPEFfDZq*ZBf^2)dm2NT#!ZeOG4q@r@biiJa50l<%^@9)P zQ8F^imo7e?04YbcL`KP!k4@{~4W_|_HI`6Ma$>T6Tti6s?+VA%U>ddHdtu1BfifyB zE=4WeZ_LuE>3skKd9%!)QPVC}EqWWuo#hi?nJKSL{!_GEt&K5g3{{Wxo0#%o$%4zX zy8ibkiJKNnU_IT3A{NWOJVunMXFO4w(--jA=&fG%OolwzP+sRT>_)RPIS9jRGoq__C1shGjgH#Iolg+5kuG z12cXfm2I_$OWj8%BdPT3+}>;Q&3SsgA66zmDtMXBKU*MtPRc(qVFGw1#*p8{^VBhAJq&s6j5I@ zi!1C6T#+`1QLqnaK~N6c_!AWS`=>f{KXji{(<#Skk&(VPztVY`Q?A6tfy$(IBWn1b zoAs^I){-8L3{wtl5)p2LX@v;4;-5zM_GUZ?9WpL}=T0TF-`pkaZ&e;=0#?nPgwIR z41J1UINd%u{Uk@Gr85xf;eg=G{a^6;7~(*_ zrE&)I2T#^vJ9MRnJKad$Z^r9XC~D-vhm)PgB1S|@Ud48c({%;jjy))NxxcEzhb~88 z>*|BG?|-Do4nyr{#s|RWT5$G8A*EGS^)iP40I2OYVkD?yZ1z>)OgJ(r_A>_XWuMc; zL3Z~Mz~suNY+uC|T*lP+5}0~iJs1NXF+<3*e^}Ua;27yW#PbVv6g|`d@^^(O#5#b- zsKyE&5Qw>lOVHsOu!dgB1)H4xax#^|0m;~Qn8#0_K2wu3jb1@JKwN!JezzkPN5_D2 zfh?J%E*HYr>^StdU~h}XB!esmaKg;km_2t3U;#*g1*uiPCPW(vl`?S z+UDcY#B z;(XxhRUcB@G2?%vOX_~7-H?;E*4sgLte=Q*M?V4_>a207${3Ty{7)-C zN$CRPj`VInM}XtfP1_&ZNyBtcXa4~6i9W0F&@AE>2Z*^p6!fv^A=6gC6J}*@tJPA!#2W2Tcp(`Jdx->I z@zA>sCn?kOGmfS3okGZ8?<{hTs~4+}AEx7x=16Lj7k|Z3PX#fr(RKt&iW@E|VOCi&| zwc}y2Aoso?E_VSjZ=`4&e)BKB=%`ga&oaGsLW_)J)2l$E`kCkIWA&S3;K0A6fr(vC zW1^}pfksOnv$8S298IGOXcSbna7+k?e1}DnCZ4LX~y5d^mzswpK3th+eo#`|4k%936I?RA{ zS=U>CrglGR@rAalpI_EsW$5#<$&k`E$Brk)rSN!w;ZG*S>fdf5)wldbVnE}V0M+do z2F><>D5|QRW|>rWfTWHF@QxyYNByG_V`v?FR0LRz7P)}j4o#4QHNTasZr3@4OuOfX6j{ zZK5|>h-_4o@fDDMV`3=9j2qJexjKWTN+sB^OhxM0f2f!L08FC_30@+V3%=Ll0B)rm zdvTI}XCA7(qY?e!wFiyP(OFvTkOzSR!>F-dpZA@tHbOT9d6QLQITiC0I6fNi(~Dq&D*dWXn|B{h)=_00P^3 zoZta7=^VA(eL+Pa=aUDsgkDGx7kaE?j^;?aG1|;!$(4Sk1VHUs{7#SR{7!-Oqa)w* z0AVYI4zFX-J&ZaOn;;V`nJ|UYXdc_lJiu6sU1x4Yp5WbW-@I&?*~Oy(VufHgH}-(g z5Tp>q)ovjQM%Q9+?=fB(`7l9~rc|XM1^D7aeRfG8@I;z?eI&?R*{ifS; zy8R?==fvj5S8>P0o47+kLyp8m#MxQtj*vT^AUk6YY>Sj!dsV6a@|s@?>OiayH5q!0 zTpf>!ghL=Jw(5M$>xgUA>~#0O^U@UHvQYgbGBRbbMwc9#*uaCJG*Ez$u3VUydO(=i zumvO>oc5iRdM8P02gfk0YwB|?rcDRLRZg*uF&}%WEInE&(iDN%+}yoT046lnd!EuF zKfxBGmCG9D;9j2=H>`J={F7m3mB#srIh-K=l`y+w>DNv*zqAf*lq&$kw$l$+&<)CL z+>r_Ex|D54rD8iU5RCmwF07q8Dz{*L=jNptk4$o@W9%c5T*H$-Zl4%B8u%Kxn)3Ad z30L&Zazu)BeMVfQGYtk7?D$T6*$euf-_7wiI0XBOsQ#n9$maYtaRH|z?Y&;cOCuD@ zLjV-{?q(;nInQYR6w79Y469y7#74k!DJLj7Q^q6h2YA49%W9mA*ol6D9 zg%y9K4bR?f(O$7SZlL=uAFxwlq*I{lvKvHT2E$&{cSZPr@Z;9Zx;`~sOP;wmL~`Se zRm2Hm=m5c|t76Um)~G!$pAf7|Uvp%|&zacjK(*sm{{XDa-Ci|2HnZQvA@cf#=^Wz# zcI3l^b*$xb^{Jrk?^_4&A0JiIaO2*4nc0`u_F^PC?s%wHPOmz24W|xucRTwyS(%%x z>-J1JGY>j={b#+Mc)VV~TNup1k2ciNqA}0*+;v zrd(e_7O}A)h9lU(&lv;$S|Z?d(X7 z%FHQ8x3Zq*T4TfA@z*>diIYhhT}ZBKgrL;hJEtE}QwkRhQ7|^U+_Op`Do?7ahqBFC zu79*Mwl-5*#daWb80%s~lqbnD&Yq&t$}jr~m-t?zG4#$fa6d3@)+}?KL!A*^USNzk zHMAeZX3XB0%vApXx4hGj@O(iFb$LsV$`sVokEh4es*D(hk-w;SF=dM9P#r%(lc!%- z)W*z4$)4J=M_EUxu73>{*U`1*HbKT{LhTMyycGYZDo)p^rYOtxp7>OaOD zN~H_se@{{1^8vw%%YqGg6K_}eR$iHPqnwrX8nQmqHa@MH1{VQ`2FCGYoa#TwXKYFV zQYf+C%yh>1v6gF9J(%7;|$^8VA9vh;+IBRZ| zij(|CI{uMnXLoU7vVgsm6Tj&c&Fbqbq z?Oz;iHog;qg7pfaK>VkPk1Ib=^^a_QhnTU>bsyk*Ow`D_kH=`^0V`~^enm^-)6=CZ zTb@GlW0LJ`>P74ciyZ#|X#W5Z#*Tw!1WkQER1+D+kXQ!62Br+S^B4A6jF{aRmt&|4 zAa5oXCzMP~Jww%E)3!1{^+d&;aoe(1b~0ZgVe-=fgp~i+=5j$F8PQsQ<#byxgE z^~(*=U&x(SzSh&``@#lAT+9PvW8jQ~{?PTEHZS6f6v$eJ>i+;AXi-r?ISFgz-Ax@& zSBDN_hY?{y$ooKEopGSjaWMzGJ^uj2xfs)NjK9EXiJ9C6!V4#DTNwDdyqJ!hsrrs! zXeosIl~{l3ulS9L*Bc_})ntBtB-g4;gZYi5ABoF>eRO4R;J|aA0La0SwOQoH9ZmtZ zhW+MO>7UecqgS}Zd|48`pR^6%$jE6Ff!>;g2NI4IkIt|BPcgE(G19a?M2qz~x3)hN zV0s^jF8@@DMKO{_{7i z=WW1_xrpz7cobr^ODU*v=~X6=9%S`4LN2IErBS~S6jA)A_lID22lt$8Za@MLxfEa$ z%i#X=wFCJ`{b1AKrw2Cyg=jk-e8cTMzq|wzhP;U~2;lDmmW#kQ_nm5cAKp&<^9t;4 z1N%nwZ|?~{)g&L@P4cSoyc(IYsV28DDg3uJRDKK(>Eaf~{w_wM=nUNP0)sX-G*H*x zam$Dwpr6(uUlWHH#0xfDVHS|_w2@@ooj{)k44|DBe=lfMQ~+BT8zDb80^~!sll#Ex z*$pYBAKp_I6|Q%H!x|H?HhyGsWD3N0C&v=!+sAL2n5Lpl@?@5y!;RH~59t?69#+0% zDJW=-qZ4P_#96DR2~%Pc2^PeCqwPlG8W*?gArkE^{aaUvquOZkD1_CR3yb=03!Ok< zG?DvGZB!5v;bE3Qh9oGabk&t(w*$wnNrPY^uxEA zhn30(J-tU${W5`=uFd}dc@o(&ig8u?5h#N}`j6`hU`u;Wp*)*pOQG0Mphp^qoxuP z!;3ySk#%JtF|U|cW(`{j6xQCyQp?!)nkebA+NWK8K!Nev1afqQ5p=&Y-7#z@PCSWS z!4toWI6bbbl@Ahmb75t)#@FKE8yg;6`|Gb20^%4>uBS4PI0R2LekIf+1z)6o^KLAw z)C$r=cP#~$Zl}~g{W%WZtAQzjQwS|yu5-y_GaOlz{{Snf3-%jH6tsGyeb!(sbunS=IW4en3pCWW>vOmm3f19iUx0SGqY1 z4#f78ZkH)B2YlN8ILELk?C=-NTo(F8u=$+bdDB?ZugsQDCrr6jYa#%9 z8-emRKowkp+>x}1>jxQA^%22bo2gNM+6KIM@v2(3w)i`lP*VcYVP}zh&o3`VnZMK4 zt^WY*4O2P%8>-2(bpVb-HQ0*}Ve#SWMwbf1l5TmuUrEqpVTT=u?M7$G_!eAgsrtib z;L7w}BjX3u%vq~#sEJf@^c_YM{H&n>{{VD3y0qz(GkeJANZ23vlIuFbfjvB-+?|CR zBj$Ojk;Xu{tf}K`zq}1ux`gU_Y>efQ*!sNk zW;(Q1!}Ok?@knvr%i50BF-+&~n5J!ix_KBnQP4N>9Yz+(ldu4LWgGFsk%;NgARN1H zKeXK4M@CV-e28!IlRW&LH%pj;h^0yY07)K)>onEb-|-y%W>v;Cup5(lX0^f7vW0G< zkAOu>W9fQKNJI2P8lClO)IWKLsq4QE!gOQ7td8rns?woxwI)T#eio$%P#6J_bKd4G zIC`F?bzlb)Huaa2_Lm(VRXX~FWnbyL{{RvrK~-a8aTJ2av8hsfgT$sWgsD_kM*f&a z4te6P1`eYi^NU%r`AmFHNbRV160Ee%U=ll?B*;_)ZhUe-@hv!dzCMs#jtH{uqlz5K zrYxB~!8EUHJDH%CEA-Nh{$!c6X4?IOysex9J*vO^M>5D+Pyi3Redc^w2m}&YJdLG@ z$Z4@<+qmWf6>WF@;5j|s;!j|*Svr?OMJa(gq^(YBz6=*%CMC)5#^D$q!X|9xFt(=! z^w!gRaCtovaI(14Pr^+w5B4^Es z^PwdQUg{W6CnDt6rzUmO?JJW`U-eN+UcrTv^Aw=&X#W71kD2vp$BY&m zTOFVdp^KkS8hd^Y)5+?~;I&FGdjL6}igcNBIXT_5^FYv#oZ`ci3$`sfTkEdWc8SAO zW#i!Jdc^nV#6}~?z5f77=ydOkr>npMk?dts8}*uTn5J*=Yp5hK&%BOW%ZAxPWqV>2MV>AY0b zIn|XMYc{|d;t}G3`$LJbvVg}+f0=QQxZW8^WA!%DKUq$r6AXt&JzQ}(k&Icgx7(2) zsOpm&n^FZ0{J_L|k%_;Vh^UK`Aj-S$I~ilw;mrCM6R_??50@JPi;joh233jnqE5_y?U zT!z0fi)=eUr>t^pVGn{{R!@1~4}yK#>^$p-1mHV<24v@hxCZ0CG$PORAuvSy$TI_KHIj#R$r~9(aHj zzc%BroXSqXP>98N2H;m^+mQkE06oTblUr{)S|6)p6z2*l1^k#5P)ZPD=n82BPgTw~ zI|E`V&dR(CflU^9i;|aOcQQvdSKxp?1PY8zlL53@j><+guEfHi)mHJFbYHoF5=rDv zPymF9!-yPr9pD>^?Fkk+fZ`{6Fd6Iws`_FagzPqzWja>JXqE8+QpBZ|-W4HDks6iv z6#{LOP^JNXWD4qIO+*=Njf@>FW8`rYM&yRx%#zd>)1kSu2p|f$bZzb9%us=M+`^9J z{6cDt2o2YX+Dfk8Ab{q#+8Uudfw=vk0F!t6K{*Bo%p%8lz#EF>FC4&YK4(BRPJ#C9 z#18i)M{$26yrCM1PzgRk;yZNpTJnv2--(BvA8Sz$UP0zEvZ&O+e(_rfQ>ZXw{Z%+F zOvgqvI((4=t&IYMB1mWH;E`_nV$(yMI!YJCM$|a32V9ZyCKa&WP@DJVq+f~x` z20N~k=j25yc|W|{U_#YUA2%d*D;6)h@NQV@{Go5j5^SXI<4w7_ z;A#0Vt{BP5c^GZMkLncLQy+u8t_*mUG~@-Zxe>B-fGy)|9w8Zm?SEDNStr45sYwP{ zfTotg?|V+ORs}@|cF+HJ)?Dh!sz#wh+ zhQ)Rh%g5I?5m_8Kj-QEQCW^2hX{PM-iYZbY0txLi=OakOfwYcmyqW5bME*!Wb0oc1 zOlI6`ujzra1{zXXLXOGb^@llJ2wv%qzz$5xdhwcuGN?y(l5^DS^)lziSGJM70hb$$ zVS+PO<#{vC%yQ;5$T2AVqmw-)Ir7jBJwH56Ez;u5g4T%cB_0665bATS`zYW*dcqEz ziS6>U)6dWVYaT#vyLORp!E&hAlQtlpZZ5ZA{w=W+r9-bb8v)JMIV#J8A9Ck!(rJE! zFhH2Fmeu*YRF_lIX2hW#3aH>zs=8(!9@z8xhlAivE7j-A?$tx!&p)R8J0?OZml*E< z0Gsrlo-BEBY+D;Im2MARU!j1t^{$BdU0%hoE`A9IdV}X*z9+jv0#3i1>os%Gf0|>eDw-iw-McmWTAA+(0>h5nN|MQTy=*KD}}ZV*daQQ#K>~NhNTQ2X-9G zw@L!*XHo$3PNr0_Ja(aYm%_zLE|S!~S4bY`TK$bKIWLs|=y? zklpvb(zkojxs(E0zKR>Mj=4>O4&AoZ(iLLYyHM-^vnP`p8n8!hN>E`z$GYPBeuk=dQ~us1h88;<*+Kr$5s`hY$0GJRWf4nN zqAoGVwyi&;dh@jE7jP9iRLk{}2gfsGzC2wsDjHoRQQBr~iU##ULG!DIL_Lj?EJ(EG z9*0kp3StB>XQ6w<%b9Gt&|o*2Qwe-(akvZzH9}7+^?1gh*vKD~n}}Mc%!`wh+nnwH z080q%kf_j^vEpwGgrDEcf_@Yz|O6A75_2}Pm%sq z)X|GJZjk9r*xg4VpJ64Rsp_)h_OhlUur2iwFy&AeLMEcy5;rhChx}`!Ty>C_bIyTd z_nLY<*!s`rF3LC3d7dT?iE#~2i!Nq71RDu-#hqLciEuA)O_K%Q)=s5U+JjebJIy1f(xF3=Pc5(l2cE|^rzSl>`IKQDUKVOwzVXv446J;CBb%qiiOVG*J&cd8=;oAB z+QgF89`C27TN{fc+{M&527;f0B#um^`x>PeCaPSDOCJ)ajii|}H`2B~Wk6%LFbVTC zW59}kn9NUrc$V~#t)Zz4M%p@cZ{e|MqCh)e$&T8c{opAcXP=9y%ZpL~2ve~lXvfu- zQb6(dis)@PjgV_MDpAo-`ME0pI6Zn_ub#9W5@d=-pSH#N){NX9oBk0w_p zaIZ~|5pS{E`_4H)ujOJNaVskNgDvVHc@im%4x=4zH46RWo})z(hY=oV%{@L*lQIF1 zA3T8rF<>&}9rYeh%vNttO%I#?)Z~e!obas3qI#zDA*Y`vIoS} zb0`*982K?%s1IckKJYyLu#wVc8jsN2{inu&#(mdb;PhGjiGG`I2gLZHzx4jl5N-E| zL2iF@9)RAKBQdU2{*V!gQ9+=_PL~#Vgc03W_KXMtj*-V`6AMwn0&sA`!msT+Q2v#G z8i0iuGw(CSiaNd2HriNw{hu@P|=ZTFgNXlhmFNV|`vR6uPYd_!SJAFM^n z7;YB+)3pQHYwZ9wV%sjmyn4J#Wb$GHFLg@$K>3)JP!_(>u@^T7nbt3EBAkb?QTjkK zALt*niDd@+!)@3Io~axv{?oledD1^fEV(wS2<;S|JB7cA5s;QTnt<3sK_c$r?M*gR zGG_L$(tJh9h$x`cJ|tWk(CZam`?Y45=gU6rdoOSOs-G;jQO-dkP>#V9F{Ia-lv1pDpt_ zPhz|M;Xrr3U^btL)3piEKG32y``~a zUJ}6_;4YwhMgIVa61MgYU(5<*10!lbtw0Ln(T_Uh zT?I;k$>t&UwXNy!WVhzRfynM(8DcTww|Hz%BmmzhgUtV~_JX#z9A7IDke@ux!C}@IgEN@y1ab}ASl^0)Jh(^oviK4Daiq~=!ZR}D7B|{w$PopSM}Q!2cE)|AZ`){| zmNwjNQW$!SKz}fhdrKUk4NB{z_dTE^U{Y%8{$$&w$W82P`em=n{-d7$CcYq zv|kg_OlpaJ``q)Js>%%~K4q}=Y<;=GH?`CfyRJNzSrxktq?4pXZB@7Q_L|EfP!VG$ zG*PL(qrmYZCb*gCjp{ZCLboIM^QM+BY!0BPzt0e2f2FyT{HC7{0?!XtyF z$`HR$z-_>j^fhD!&7k^0Kk+p-L7ukTz>YBhbrHYJD?7e?f9SFhdoYM{bvaIx^!N77 z4!$^p6Dl<^+6E4z8=r6U{>Z%kvmNBd`cYX2aK?Qm)$Q*yXT^=d)|NYyz=H2LA6=0~ zmecZAd3<^Gds|5O5kG>$qgckyorpD2(+5t={H4f*c|6J*l?Z0zz%jp(o9RF+n1L$y zl6B4rrnUb7YzrKCfS_nz`^N!PQk^~x%*seY0+Mg_F~D#)J08;%`}?LT%>B~Mk*F(g z@SD`fsz##L+20#DqBQ5uAx>IHjf`SUj0K3~J}F|<}|;NLP~7ZI%Mb+unJNIaZw zb$r38a*yVZzr+Z)Tb2I+m(!^VIHlf1;?Bjg=MS&)shZ9t18$-5Dd4FTWLaAX)-xQc zJC^74g++5Nlc;HK1k1PKG_Z@3d?52BI`p%!ITE~BZFFr(TVZ`;J0;7SJ&vD<0QwoG(1?kY{52GYb;=8Hw;aN{)$C-ZpSP_9R~{p|a*(Iq~CMf7Rl0beNkX zrn5i}C9(!q0o*X|0_{?1jTbvMCM9ThiEf{N!ISXp03A6W%;VE8B3n})*A7mv9x@bt zUJSBiS6UnSh7cNSO3?elnzd0Pz9Tjw54A!2#i9n{pcEQTO+)j4z>{`TKei*@`AKMxi8}M`&l;gBp9~;0NzV3WL>oCVcJ$M)Y*~u z6GGlRDC?)(fL|mD;kH*Ts4kz0>0#@NGUCbyr=dVUq()My{C~ErY8k4m@=O^CJ1N`8 zX~lHxgp1#3%ZR@_4?bp`l2X^Y>R%Pi)ze}tkqW6mSW4l>6k4lI36PAcHquC_7|-!9 zmnWvw10H_ynL3~=)C8VIOJ;S+k$@CIJH%WeZ&q6S7!W-v8?!O^5L+kG8oUXuPBPR~ z50cx$agp?pI5Zd|Q18U}u%P~HfgLBz z;20gZ`^qxcXrMqJeWRx8+xCNQ=5i>f(r(9S3u|@3jieC(#Cbc$(Ab0tQkj z4YrNM<7A54X&R)oM$H^4t@wp;s_spgOAjIxwcZVn97Zkw0P+pFAG8SsQd)sK?HP5U zjDWFfG;S8g)x40kWWbi?U`9?hLsIs?xKP0+>jy+g$DF~^Oq~u z!WYqk(c*DS=5Wm2)^@gU%Lw2~@e4UBZlIi1Xzv6K&=(Dg_=*hLsY6<6~EfHq?pjdQ$E>f2oj&F8sP6*pRdf!XvHRo?tV zl?I(k=gbL=i?S^CnXe3dli)pV zX3>84C@2li(oO9D0P%-0hN`C<%{G2G-Yt{Z06d5VUe|snF>CD?9jtvcE*iMHv~~o2 zrxpw>T|f*0*ziACnozg7sCEQLu%qePaZuGkPr(p58%=;f@M;Df=o1MSW{MFCuC7Q2 z#0<=UwXr{VRl=z)`%5srj^-!u?UBZ+3**c!;n>?K{{TP|Pnn=(&ItY>DINr2kYXBi z>8Ov?BwpyGZ4w5z#~cI#o@flJp)W{Y8~Pb8_6;_nV)5= z9%ZTb)sTLIOQLLj)K0^J16Q5nu>ew``}v4Q_cJ}Ane7D;PUB%6wjIce+G)F_MR3$) z+3WKV-eqzSqR1r7tfh^SQjJ|dUsN&zNbV=0k3Kx06ktz}6T*8_>=t8T%aI#U1y7oR z?=cK~{{X~OOUeBQ6DAzbm~N|m&BrPMwqpMP5&(|aG7=cRGr;jRrg4*jfAKS$b+e|2 zfv}SSll?u%!GwAmLD)&=RSUSXB!7s@j~~-#%$oYycOd?-BHeC$O-i)B8+iEo)0l-g z*!{N=&NaFqF^`SaJ*>1lR4;`GREg{^qvOOajTqiDSItDpi8BI8+-+iF$%i%uym>b9 z2;J!KUMG5GcRLZ@WKOp}G4Dkq%+Q@$Wfiz%*usPFwG!VONgN0m>eNr0m2YnAV8$5f zK_qXvn5JU##WR+54xCvX$(j(U0+ecjkbn;>%>xxWl*ZNRk$)3+YVf(kWB&m2c{ju> z-MBraMqF&RuU`fuIs!={kC`rB7~cTo0$0b0BZw1Wui|WGE!$|MQ2twKJ^p39E#aMT zv!TX{R1L`+K&Zun5Q-FSzxgIx_>9Z7`$uy*f@WJ3r<1FL7lQDPOm2_60o!JrK@3UM z2<=f=g*pa;YhWQx7sSQfuyj%fl>=9mlRdM zUeQ|tL12J>3~X-Wn<6t7=EnXZS;kVQORls1Mmvpo$Yld-lqyHLd4$_za?4v7Sj$ID z>w^jmXef>TOfK#k%PDHu0kD|8B2j;vkwp$TnlQLT15j?)Tf)`aNBE*~uqkicjwCc4 zw1forJIcENz$&pPb6udvtmO)rNF3@S8A~9@kEI+bBkDVUX$HfE+>E_(cK-ls*b`?^ ztB^3FXv}Zas^ig%r$BD3_LURKi=*hqp_QL0;>Z60tY9@-y2N|iu)2z&jLASK-BaHEPF_#81eMu)yk`V;(E)N`$(^j(~d=L z*arUqao%#}MmiT2liUtq4Qz+p;-GA~Nuiv9*a0WhWAyv}mlqB%Q0YvBeV|eDkOHtK z_U|%e%5h|6#XxPio}Mf?@SRVbx$sWXSq2=r+ybF=iqa&O>5miqJltvpp3 zS)krOr{{8G=EX+29gND@%9{eFygAxim+>ZVr3Ied=1#LORgjW|1@OF>38Cz5KQ+0X zizY_dvVFFX2bMF7E7fZGxj~267b2h5ZN{6i9NczL!+Iygklk_lJka?usm3yG+WDx- zg}~O0WcD(-FpXNfk1?^8B$5QKc9eoY{{WCs_@0V%it3pHmi7;Ad_jQ_jYlW9yxZ#N z>9Li)lzlwJWU4Js_ODI{r)U7KZ;>r&UhT~DU#}ULP6lFomH-);=gh6U+|!fR%8!(6 zNMDIO8CxD~Xmqdk?(fYYj2qb>IfF< zEbzW3XUAC`(StUlvHQ%AlPEUSe*B0RZlTd=Fuwic>oXx9}49bBR`i$hB$~?qi zauNwNIWRVLJwVCQud zYCmWVt+?EY#t%`KW5gnuUBGHSlXo^E1#!V7%Ht|=um^%UoL@ogU~m++c7vYqf*klh zA`wT327%^rF|pUZoDy}Q4_p3Y<#Kb;!Q`p^Nl<>8j(i{W`4{ynzH7jns0~Q6F)34P`!uLqdn;^ z1s|x0cfH0DWsCaKW>8wyyi2YY#0Yp$hL9%8@~hWA}Y>b;3h=hAHQ31X!M8{WL=Jmopzwmrj>rx3hEu zojvMsyNojx~Y4S(Sr zEV~yH*OF~E=bJxBNagF*s~@8G_F>Z;pi;Lu_bd&>kUV zIw+Bmujj98e^NCQr}Q3OfBb=qsxrDEnj9hIn9+)7lUS0Sb;V3g>ozJu*H^rVtoo|~w2K4Kw;)@jE*RWUYZ@r{&rC1))@`<_X z_?~J@K}x-#^C2agGSJu~4nwZvjPiv()oX4SMKO%9k#us?o>Bz4J(SD3W;=RSc|Mo} zuegqFE>Nngn$7AalgW;kH?!hbjvc4ACj4<=9M62tOQ_^{l}pPv%Lr2^V1M$TESar` z8C2Z!I8?(n5c21ZDATAJpZ-!U@NzPhp=o0liWKKtpt=gxw4b~8)~hES4_^r+?VI}^ zl1SI#BocUY|9m}36V8x$-^E>h73kc_CDqmCzB;+EXzM$EEs}3cL%~ks%edYj{-^v> zMlF_#feT0GOXU*h?F!yNr@}Zw7 zQ@wOVgh(f|MIk8{XfM>5*b> zfUDV1u0~DAnf)N=WZ|HqGBA92T#!UycK!+}j zy^Hzq!`ZIXBDhyzh*K<|*k)Z{ur=xf@y`%U1;y$9fI^FE)^F96*jJn8ME>rvOu`lb zU6MymJH8A=C};S4 z95@^mnsp4KUnOCiX8XjOun_i^RRR%Oc9o`3A&f7fv0Pof#v;0(O01g0;yeC0Twn6X zKMp|G=ISJUU@j4#xXq2)<$3l{V|a2Vv*Ep;G;S*uU8b(8{mnX3XoXN2giii<1Z@!* zDe->KRf5cvv>@%{)eB;h_oh1a!o!b+6i;Oi;Z9ucbK&3V$;pK?D43JTdHPXiUl@M3 za4$yl{>n8Z`^U;FSaYzLV_0F|$8E*zXP6S+^B0&BOVHp>f8XrqvQNBBm4#EKiR6dq z5AxfE=l{&wBMI|%{X%pgUNV5ePGcqe=Fh~9SKu&3A!1Gsn8y}?h^{8Y>VGKE4weJdhzI$ar ztVOg~6|j{)Ypp9ig$ZzHVZ*p-*jG^KF;Ab|rEk6H&iSh^tstML+8(^iPCg394W?Xt zNy#u92qENs`;gn-JtsiL)tPEEGg53wLX{aU>C>@q6y~CMhvX91`&FyJj+pwCTjjDE zW#fVS;C`RdCGJs)SDzvdqq@>p%@R)|4O6uQd1~Vj8PVIp$gT>}zx;v)WUIO;d<&2?-i4Cb5A`o{7O%HAu5nKBqbzc2+93 z({KKv{^)rUysXQQ7|j=|edoooYu5JpGtKMHreAh2EQfY!Qi1rd$zXaox5EZq*rF6AZMy>Nas3dfWuCvvpa6Q4))O82~Q4yj^3iK(qUuhf?H+_ zSFZ%AXQF}PU&TH?oCBd6bno6|CdFT7Tg0wff&^Wwvyf5ih9=^uhGw)LU_$pRTT|ul z=w2?cmm}qbIDZ@PmfrAM0ub{lGl|4ftGMpj)5?PH=dvBosChwGTP~Ke;aGSbD#3GQ z4U8#&o4BsCI`+WHo4@B#xq50E+^xVj_=|~U^Gu2TbsbL+yz@Z6=@)9I{|mfx_NZY^ z)bK5yst{2bizBzZV9!Zbwvn?!7VyfJwXR=YKW)h>iqSw6#Pon^&gDRv zG%IGKEj0SCqi3n|eyyA;mi@EncY|>Bxu8=)M>@@7`gyX~OJ7jx{Dw2#r9UDxD|S7t z;&|lIRuKa1l!4H^~z`iMM1kxZxz5lg}OlYHe23o5Vn>gsy7TNSi z7?H^x#Gm_)<3=f7yUDTdO&O(BNQ0NBKDsKCkEvx>A3tB0d};j9KO_+^B&O@eE$8+B z15mhq!nU6@NcPRJsu*ZqZ~i8ZhG-KfL(6KKZbhdzDsNA1qzR9o6j}mau4fiCmjDJ$ z0`H@Kz&&~Y5GmsDC!6)AG*j?a0JE4*Sw+TKf8zH;^$I*x?^V3rsixr5buWg zrBN*li)~e?-K@PG#h8zMtiAl;l14JE8!B6mwFI|@-pjE}Y-w^URi|AAM;ABzs9FHp zAPsO&jt6g0^LUFse+=I;joVnN8dEx;vLdh%i4dcmCCeYS#n{SgnXobw15(tnicx@GFj0Z-F5oKo> zg9jDKO+s~M?lU#>_MkmP+MKge&r5y+-o|<%VfcGDsW9SFWuq)Zc?){Xn6A8_cLio8rDy2cRXKJUy>AaTeVBo`Z+N=z0E@V zU}tsIEYuHl-zfd7h1A`pT}9bm25-NzFR=546f)-Dk%;}JC2p5|AgkCp`dOGTbT_C@ z(7NHga!a16GA$~9bw1fksn}Q$YRaVBHUC<>=5$>*%2Vk^S$6fxUKlV`-udHmFdD)8-Bq@gy4tSHE^&3pMylPZYGNSMhkf8{uTjpY?VVTme$KdL5q! zw}Xo~%R9euVft+khQJ!cn|{Bq96*26ey!>uT}Tam?W2NDfH?cw=e|9qr|n1S9Z1}1 zX;!{uf??`hg5s(rdzwJQRJm#N^^SI?W2y9e^|n171pQg*RWzwrr+$>zj%1~Wzmh`u zu%fyG9ucuZ*$=vCUXCoGs&cl?*>_oAXLY~7O}zf$dTJWY@Jt(dY)|iwmm)l0cVT-X zK7PXgLvZ&=)CloK7`U2jw_qb0l(1>p>nOutUNE{!GVa52JxmS}e5NhoHl_>nk~1RR z4Nu(NXCCcKWhoWj>ymlS88Kl;{0E3pWCA6vc9cPo)h-RV8!nbf1$m-p5eKHAQ~Pej z(>U=e*zMYznla8mU9dBI63N0H-o4A?kG<|m5aknDlb?RuL)q^W!A0Lv6|MCG5TEyp zN4Lq?moFnQX)+8#^L&xYm`0xGF+i});x|tg^4F`AC3iAqbjN3M-$TM4+d2z?Ee$2W z9*3|GR{ikvq27GVBw_Z48)hvQb0TnAowx!V=}hn9jeQ75IKW+1RFk2=;X;tDrq_59 zHG6`TGckFWz9UPQ2mwCXJJp`@Bs5|GIe?29!!&sP-}y8VpM@*d&QFuS0crBX&UgY= z0&k+7T9r7&8D>ows2b?G4b@(bNHP)xmx4g8v(B5oov#2JkiVi~v(dNadS$C6-m)rD^u<}+dFT~Xett!AN5XBOC?5JvFh z3!Kf^=*X0A*u`~r6sa&gosFU_!Z$~gpysjde6I@IP3siQuQ)C-vDdO92CMBIY-$V5 z9?$?2c!-YTj9%Jebv?PTNi(Kp=|I74PEk+phh5vyHzl{3JNvm)dJLok?qaDsck(&6V*pj)^D))X#R0 zMU5HnA|gMqs$=|kHgHXf8iP2%E?E#<{evWU_+CL6n}&{rPyEl@g+N^)7lc0!FyE|KQ{hF z@^iKC`xIYwgHR)>%Q{qGh(O8~vk!fkq8ax~o$r|i(Wyi)Goaq?anVOD#IhAa8|lW9 zR(Rh!cvTVB?ooO~a&Ex{ZJMA`Z3v-cNNcY4SJFq?M6O*)QOYBr{#H`dhkSo3{tE|F z8hr>~NB@^}$GLJr)Qzwm7tx5}sgMGpA=-!FF0)jxZ1Ib>r|(sJ_%DquL@+<&=&OsJbjt4bF0M-^Y{R zT>f+XK>}?XdMP9zZRhTUthp9uRJZ3wp4F<>KD~b-2cMe@I$E}!3VgmEH~13;2tTNu zs{l~^LisaPU!h(o-ncMh>DEKSonEe|!IWT5*DpwJv`sbZQL%sEiy3qu*eKmcMo#0s7&S6shnK*#YPn%gZzkb@?&!TK)4?jo=*q5b?8je{T7Je zWx%;i`K}0^+=V2&i_FXkK17W@OXrF@)Kh^@A6iXIg4tXyQ7s@XxFW*&z7_|VD!*-m z3ER?NKNMQ+uRaJSz8}_4{_t1T^Pne-In7_HC0pax?A6A7U*2Eg6_Ouw$yZu#HnL~^ zmokH@Z$2?sP*93F&DJTi!^AIN+P8+O-g2>EB`t@|(rx&)m%3_Wl6+cdNBvgGdSlTo zXl0eW#Xn*&1?M`jtd~{@+1q^Oj=v(|3A|>T)*0(6$*e&HU7|%XQxdNSRD>F_1VsVr zsiajqNRW1LbXhptM2;s`2h3Z(A>9FQtdlDj!K@TU_#LG9Mh)Lea4MSGD|sprV*BmH4NpyAB? z$1Iy~?`AQ5(kJ;ZCEVQ$UItnSPz<#KGpf29!0}WDmBz2!;g{&ql_%lw+&Qt9K280Sc1JAIWKSsI}C^)qQ7&p zc5pt8H0p9h?1Pt?DYoQmJiuI6NSVxN^iW0qRK@HZV+JxbT}k z=qXT7n$|#swM}*x);8tHb9bj@Scs_Rlp0rv&CKmdQD#DCE}ZZ=>9osaIW)zRb8k@o z2|7$L{wC~E6D*qxDu+ddvrzG#+S$*y^BrgZ>N7T?zKqC7S;99TK7eB(llC& zm@3K_5B~5|d@*cgQjQDi`Y&t~*99Z=^}$};xy2<7u_*3t1*@wF_w3-U^nD2kZc6K- z+FdR{82xP_s%Uk@T;63!8ALg`vFWFffcCNf5f#5#zh4^!5&uu!$0fgddSLOC8sDQ8@ur*pP;Nk%fOG z7$(+0De(4PX&&QQ;vJ_Uktlw!OF@7k8dFkafC{&KFOrLLJX6z-qXnrt@GD3zt1<$3 z@J3dew*i0-$xZk>iT>@y`&BQc9;_NBbUnRALc`=QnSrFx{h~2b_3eH2cwu=ePs^h21WEZ z=(M<@K>cuonfBEnaupfPtc(8OT`L6zqefIs&Py{GCopPun+G{BmL_C~epC)~M}))? z57Mj_*iMWv7!%p&|Gj$>>Cw{E&0@Q2)yket6WLwvzLe~E96IEy?m~=@9qqCXirK9H z{zOR^IB1t}W=qiJ_98~2dU_cw(V9c#=JleNu<=^`ccG+WNj zmaz1LNTWR{mcZcMr!ddm%V^cfT~#U)!I)z+rte9&n;)`hb+mJm&(zZYvM^8EMY?`e zUAWmZ*56U3HNNw|eVY0%UPr%?{=as~-jnnu?RuuQM4sdV5mdYHPctV3U&>xVVLp>` zU@n)H-s_6Oc=mnE7e;{2fdWE}|I7!4h*9=u>KY6z(MOe6KE&4O2fFv0 ze>!)KhY%h>c~VI1#S?^xDy$MJox`>A%r-VmJU!0BU+;~nnM%!UA*GT&r1u_lig9^~A zJ6;--!z3{Q%1WmsUcOd*wW0Qt9~Rh<+CuESj;tPpx|Tcj7K&q~Dk zsxo^IvXYXPJbGYP*T3?Tqq9F(wViZ?|BMsD^Vu{cRiT^OFdp`#(ndn!VRt~%9z6$R z1gYaodINmfx}}RseBa()un_19Ri`u7V=T+)Y|h&9wpOsSyb1X{wrJ_$+nna>K3=)L z17eT1x~Ad#xxYLQNcnDuL8&so%&LvMY+VwMyVT?lg4gRb&dYUlv}&iEGuU|78^*pH z&|!mK%CZqAxL*3rAK1By_2i#_C4Xl3WD(!?LC+&|gV?xz6hkkNc5kmuYj7sAFVUp@ zmmi%KyghwTckUY)*02FNb$$CypGB9KS^pilr*^X##p1465ry9I)Iz62Gv+hCInZI^ zpf&qCKYc%n@n^8X9$6QrTKkZ|q=cJg>VU?|4?R5R#+A=YxpFdND6`hpfQ<)*Ui&1Y zmqIY$-6*@+eRE9LHsUsMx2tp=?c1;JAWBscRp(z872A+wt}<)y{*F2DuAd>`!zI$7 zh{yduK;a9fI_>1!hp3Hrgu8tSOgq>Ud2&VR+qZE*q~bt~8GExF%WxkzCWnjrUQ2`xKpc4qoS zIPDGLwiLI*Uv8>-2;u-b|K^T_OPF-FNuzj1whu@f<>T6vZ%(eX3tyI^^T8Nm`pc6E z3RdoXv7>pS4iqZiLIo!sqP>%9_~S?VSh^cT6eK$T4K*?H^uLLrvl(n5rO$yORk zzDs9#UwAK0ufRb1s4|i$oO!UXd4X|wbjA8@dtWUX5WA@yF)+KhkyC$d*nxO62KDYVytoy><}=rBS3sL-R5Z^_x2 z@2xAyjL*^@DBC}h$teOzOH;nKn0l>OoO{M)9rVBQPf*9{tk8-kvKawUo=iJ>%zC;M z8zRm1XDMe-#_Y5mMCq{`Rp!jg%f0j5(hK4U&8U>xScdK&xLgMA*o&ce*<&9s#J^0O z$$)#k6Xx6HJFRsz0tOEWR(&8SOz@ztGz#xE~a`+h^ag+(8$oh+vIWd$#hv z23j>r%JwWbJdoM9SG-h_UZoF%j%V(b1xB;bbe&QVT^0F$!qlW>fGv)FLObn$zLwtq zk;|5D^a(M&l1#4HGP3=o`UR7|aK0+%jR04<%ST2P!S?0IH=^WJq5lDNTDXDoUcz1a zTqj%}Z&2S{=?Tko8?x>-?xVkpZZFd5oezgF{{rU_RA45xLmYKN>Imw{bOrqx2lFfI z@CsVLk8+W>1&M5?k;pm=)Ul(&zA8*Uz~v>URz})#Md>QCnsO|pIr33wfmwXs!qjzu{N~t&hR`cQOQ(W&?BJIA?!DVE9bL$csM}blA?{dz zP4HZ5?xJ-_@4|t3F2dAIrpH0Q7rehelRfaONO~ecI)S5Y-C|^PP&RDKpviSn9d3aB zN_;;j!qHtaT=tW`JfA<`aY~ngE|OCdbr%0|&j!bv{?M5I@dTR*ZMHWGfz$!5^!$R__a-&;;@o?!3M9r9CGoO<|~vjol?k}(4U zutyKRn_Rtc^|r-~giw79+9e$tcOg4GyiL)5h*?}ZiiK%!ZUvCNul6=uu5#2pLRxqB zf?nc~&H(LyK~$$i3DLSPN#t%J<%`M%A91;&DT_fH1^BUJ5G+*Rao4D`z@cU8oZfDj z)ZOZtb(v@s@}dSGQ#wWqzj3BCF=>OC>!!qNjtLO6=rOlWqCNIghITBP-s4emT}hvF z#tZ$`B}Muq3Oe+yOr+@AfL~vn5qoGfARDVPtZk#)~C ziksoPVsA+R8NiG%0me&Vbm7lELc zatm1uY_YChFYTzUMY*?oq?7-szEa3~OS#K4^#i`Bn!Y26&)69ySwfR-Ar3=3cJwI7 zg&m@SuK@Q6pFNQEK7*htL_Ep`TmaGAedY)_R3MFJ+-!&=!!8|AYI(pC%?Yn*M}W+` z9QxzYQK=ZM_MP^DAshNkxFBS{hdA?=SHaY_uP7wYp$`zO_c!pKg~IC@9r# zlnWFMv0#UC5G@pF={nnnf=qoZB9>Zj;RlBR-sE-(l63at%1g1obZVRUsUXJ1$%j0G zinq23yO1vp6TD-JLa_8HMudvxU$H5)w(Vd?D@}hYPWNeF55?zsQEpVKizZw96#*u3 z$o64yl-&*Wd*QlX)RU8J>hGS(-afd}nBI3A%Ll?uqFuHyA8*ltcSN04B#(swpVx=V zU1taxmHIPe9eUg2LR(I!eaaA)yk5zx2qE!qpFyM3@JRinpCR^)_o#K@&z<*wcC>{* zFBpVSju}_{u6SofY*5r8;FZ!SSW77OYrQ8|zj6dZnBi)={AvS@*vG`0&w4Wbn=K3M zPbf|N!VL4D;narz zYIn38t9qsWe=2G%`73`ZG(p5Ae=d5Lz+@iw{jL(h=gwAjhC)hg`W#LEGxwQ3zR$g% zll(J4=aQF>Q(ZlZL@=9QjUL+F6Uj&R;phK2E1cZ97)x54!^*T;Iq_7cl7b8Z<%NDE z*2y0ac9$(Mh8TZM`r18>m#_FbOGbyO*cVdvJsFeLrFa;F=mnmuMHIYS)G)ebmrtHh zL6tN~wt}b5t0tvH0Zwd`X+=tsuv;7#ny90aVya=i zWwHsJU^%6#!E^t)KdDg4Teml!=^sv*#GN~s889pP4~;Mz zMeY2sN4wEbdq(ZDx`w67W8>@_oI5l8hwIGI7Sb`az;Aed@5Lo}hu#g_71K4e`Kq>S zdf0ImP^1{@&uYScV8T$4WD!B^7Q49A^R6a#--OE;I5U;Dy6tCw+Xw^>bC;}jR6e#0 zy%5dfi2?*kPuxj)Gv_E(C+bzKVLeTS+-qaKNQQG5bn`jEDS-Az)MKEZ!%LYuPtnsE zlsC)vHzRhN=Nzz+TGNPwLu*ND8mWZxLfLM{7nNTK5>2$MO~H-UJy%}c=hUd=KZ&JA zh4Xj2@|tO6+tb@4yR>q;noN(AOu)h~{^qJz$y{SI5+M-fCle{g{$sjlm7K{@g3KC@U3{ZGk|LJjo%t5 z7Sk8#xx&D4EOwVPu|^d}t#)<80x7=uwah_rWX=(FKJ(bpPaxmjC$K+b9t{PN%0SQF`ccK&I|iq7;{Zx4xHt$bC((RpHZp7n6P# zkiIu94f^fhOJaf;1@7yte+K{F^=aOmeTa1?DBkk%E^2`;nkRK!<261()!zOX6!WCt zxTc69bg6uHAZ)Jyk^GE4_@k5_C|`5Jz}*Akp&ThaivFP&Ra{!#Dr`wJ(wUx+{cIzt zPOSv8($(!vYKTw%5(LM6k#4yw#!1CEfj+>(be;Xp7b8Trl8Y4r@0G@dLN8opvb~AB zAxE%^=fZipu6itVo4M)T*LypPuR<8M8n#_lb~1nZN3Z)^kzms3y;nk;+zu_3bX&3d zsSfF|dTaT$tyBN~&e#_n*aEC#dAqm_8zNGyzpU!=N0qEaad2B8HU$jw3plS_1S0v?W7;t1+SA-I0Oq>ECtm`-hl08(S>B(WHJjS`_vmXLFBW z1oRoXuObA{hqnn;s?k4R5c9RS{R;jbg*j3+6BD`Xy?@LShC>Kq?V{Wn({j+pub$-e zwzkk{rzGUuUquu}K^Q;jz?44dDe#ASv$0hbH$U{gbKX|?A{qC>>x(PWS-r&lWrmCu zxu!m4y$we&)rZU^Qi(6(Q8M3;q(yTTyQ+EGT@Mgo_rT`M{{wSix<#N&{9{9I=TfKF zK+eDKX8M?IOP;^V>FSkk9x=upthCPk2Uy*U*#69F+Q{Lu(0(qF1tFde)p6Gh^naW+ zLYq9l#$$^4y5+UkIrIYGPL1o_SG%XupOb+v`X)mL2m7_g?9W2X`@y(3u?>cH8Fw(R zaWj=VdDmSzty?~_kn$ZxndRfrQc1b8X9wNNLVsHigSpt{$IJAc_i2qkV|CXlfpI*` zMxp_OwfOd4jmAa+WN9D&(Zrb?`-g#x5s8b`&`T9DnyIu-o&97BYIpfgcqRmA51hLG ztYwodit1fC$RWmB{mE6oft)7(rq>nqGjZr;xY^B2#T$>m@g=&B((gsqp=3y%4+jx{ z^NkQ@-6Lcb`#z}j#cMoDJ9}|Bw-FP;MwL-hXyHr)lItce4=tMOTzbh`wl?AynpWlb zH4c))g1nKA*>gkt1;cgSkX^lw;*}}{XV*PYH~SkCe*h^w@AM5%3G$W9r?z+DRc+cw zk+p>ysG1y)tUeWcge3G+XuR(p13$9rYfQk#IUs+C7!IVsEFj_}Ao>}mu{S={b;lgt z9@S8t?|PqU3?42xt=Gct*Ue)7L)WOcpOtFc#s*>yJBH?!C*k3jV9>4tCO z{3`v+306J|tKCl;t%FiuJM^T3b9`%ahMS)`O2k#PL$EvHFznBBXtX?sDfIrjcjOPd9{&KCpP-z{ z@?!w$|C}PKVw$&@l*rxaqpT+9pVzuoW^26Ib{zL9#nyy(WWBlbk`v-ef%yutbz8G_ zSCMcWD5dN{^Z}(r?q)%JumJl0sG)h_?*4G<%uNxZKnTUzPUo@N!D;esTdv5&@Isq9 z9sS{TO_bY<-+PHhZ0KMZfs@Dan?;Y~UI~ZnwVczi1>Vyw^s2DT?1C4n zTX35`$r&EFt6qKav<#qgnj{ZhWrwKzZ@;mry(KRcf%|i*b^svUGyS6F;(SGQ&Am}* zLHcNWE&rZN>j~1d@sJf_rPAeaT9uaj*iCU?VsOd3{{Yo+J=|4KiH966{px{mlyIxR zhynj({qjM8I^|T(hW=?p)p+}y!4E=q#tI|HX23z~?%9Un;GT*_sSCWn2v2icl#HII zWVnyFIxRTy>S5lnvrvoW13_W;xoVuBv z`=VgUiTaFt`e^q8l7Ch8yzodyBXw#=T03x% zL8%C6L3Adf3G^vRJgQh|?jw?hPs*a0OmKt_J(D$_aJ4IWMYw;Mj=16HyEs#qzkWnc z@1HF9EZ>q3yI_0a5g&4$NGDOijN1zSPgG1f$FbkUTMkYN8oE@+hizUCTvZkT#PF?T z#x(tE(A)~a0ZsCz9byv=FdJ{pdcn! ziS35&{P%F^KR}HEm@)ALkFL!Y$mHa){_E7vU|7m#jhJ_slcXZ7d|o-6>rCzieoS~< zBwIjbfRWjijsDFSxjl_+=+hL&(i;Jc+xzG|(qlXGQjaPy*BL7X7iDNPJEZ)Q=Cb@x z1tK_U_QUz~w1U$YXB_$j_d?lYY@}d>h=w_`|#qQHi!ky+g5L7 zl2CJbaJ2Mp^qc5q;v?cs94{9rV594jR$ZjOyo^0(+!d{-Q5-rel2!@a2fM!=E77hk zAe<`H3cAdHey{QdDbAW%X9)^%LQ!jHcvt^rhBn%4X|bD!fV0%vLE`McA?rCz9^Pv$8Oe78^p zGoCVMlZ|Y9v(Rm10}g#7okxq4#N#RFfg5fmGsYkz_M^?a+!n5xX~XlglA~$lyd3C> ztVvSbl$=R>!a(~rO^+P%GNJ2jw*nE?GX^kEyx9;zc`pyG^g4!)+%Wp5imxAYpo zt^O0)_!(!)xJMB0t?8>eliW(6fwHlPQR5^b>%^PPS9VN$Z&%SCJj*?f@zZ(UZvW28J znyR6$FIUtB_PWG+z5B0R`|Tpi00+78uCV$CGLgyHHKEm)1v-dd+iVvwy0b) z!a~mei}6zTno@(Za?~=G)^y~j?98Li zLmesDVOPit}oNRbzip4>6gZRXt0hhEfy`cxYm?i##>(lp+X1g=hr>rn>K4QSo3 z>4>7!IKiT%Cna5_H1%#mGVNS`N{Eu&%%p9Qh3T!TiR*rxkfgD_c%>hiqTChkDpUM1 z-?L53ZN9nv39N2?^lr9qFZC>JhOd-Ap(rxfR{L6(@(%Bem29&3%~6=U+L?XfFV<({ zZEuIzuY{7?+mU1i-n?B^3d{$j9AIT&r1TFoffiWyUZL+jxY_H`)nRfe-ve}n-Elz4 z^tJJylvZ;My`j=vSyiCxaPrMNYup7#B}JD&J2`K$ZLR<9Nq7GN08znM-p#v}9LRd! zuVvgCBO(dn19kcOH@OT5F|4Y@kUg?0gth&nitAN3_}L{d&N7D{{qpS2>mgkse4HP=mwr8rh4MwIl3`LGC` zF3Z+K6#p&D6Uc*d(^8v*-tTeLC_`&!D|rI~aQ1ZfOw-3lXz@n!WF_C^nt$1?PHem%HTX4A8-FTJGqjA=Wu|pp*#uP zurrH$Kt^)`VkVI;7nO`zsCKL(<37_W^aBHMSXEXOds47-(ay(^zxjp`Ba+^Cf$Jtw z^lEDi_yTM113A&pFQo#icRvuf0cMd-fu+*DeINe10yxTr^Rhp>rQgD(G7F3%MZ?a? zlWm8-)aJ9HbV3G&5e^#HxjyDVn@E>GijPWBgxLoYH@BF9*VELYrgw26(vO8APn{SO zeJEzZy6+#ZRPoK*Of>^2==<2@(bw+3EP{RqPjKn?ZH-!1zV6`M18;HgMgeiP>0*D_ z$Wbo_6-E#nJ&Om9RQ&r~v=BTzdrVdTgTU^u=zA_U>b(X~zOIV!sE7?kF84OL1(x7= zZU4eWKpdsM+RFkyc06meC$M4@+^wCNVU{OTXJ?9nCEOxRc}+XoX@9f^#}GdLX8NVi zer@>BR<*r9U)SLkZnaPZG@fRT~IDmZ7pF7QVl>!lh3%xa8!te53_(V zV?AMSx(VkN<9osf61+e0W7T25roDU^PoBUW85GZ1I*Y1a=hB`~YBYq%F>zmwCR7;hQ!?Jark|Zt6c6C zzcM`*deK*whxmet4!y(q>6^Gm&vJ^>5Z~R`&e8rya<(eqp{R|-{Ar%em+z8jre{~a zYOdG8n8Bkbxt4NnWf;4Y$jj9S#_h&{gD^e8B&HP99qzL&ncKn%*=it83RjZxx=mF= zvW>5MLk_=bcZH)Ks(QkmdZGx%L!x5VGx=axEc(Cmb&LW#X%dBVOAP{Es?pUe0&9&T z>qwVzjnIr*1SmBvG`@);7o3zf@|m!o9A>=c`?@E*Di1w9jyG0l_**V)8=B+wW_CtP&%f0SqIi($N zdOXpB3Pa6_$CDMBCaY8!TN7dUB`Tups$ou4v8hKaPQD4&8F>p>1wZqF}>YkXp8L5yeCGr3GEtmfn4 ze-)X9LLyGxYlmyQvn1ELWnZy`l1nqO5U$DlG0uN0ipB~Er4>m%#Z>-xvG)$06uYB$ zO^{LyNQyROvQ(9Hrqxgt*H0kIw9r9m`PsLJo^V?EXqJDurOceu(!Lix1Wg?Uv>7e@ z+Io`wJ#3TaO4LM!Q;8GREb45Pao^UfJTRftOIb;$%$zO*)iCe>^%AGmd%gH0{P+B} zJ_|7iXg1$$tz9zj)!woAZzIr#c(-?$jwD`;V6EWOco4>(rz&=~&!j!ND`L{tNu?^_ zda}2AsXct-K?s*jG(k)ia!Sibf*V)Pg?iDz`=e5Y$#my!H>Dy_FZYoldNR{vT;1iT z4&*r}{LPWMbY?8)TQn+~zrlmkbMNakoAg%;%_J!*9_?dSe^8>+(3i){C=&ph1((Qs ze_CiH;Us7JA)*<-+UVD&zTOD3#HQjdA8-%KRvA$^GXte?er=}pmdT#(fgDYkat*xn zHSI)%WnA$-cowCM*52o2FF33MYfia-cuJpz>NcHBFee^VPTiFY051pruRz+t*(}`= zL*3nF;?$_h29U2XTpERxn#RWIx3+jvL^Upq!*u?w1kjf!5q$n=NeTp{QtG*BmFJP; z=--l%lz}(*F-pe;JKH$mI28O!=n9tTJKq(#y}ZA!lY#N{9hI}VD|~zcPgz;gx0-j} zSZC}+7V71D_2v;ayNXi8S}x?+elLy=VUl<5#QMkCOYHdqt82Y0>hs2_O^1mRTq;!g zPmciA=N#PrIP}eeDNM5OZV5}@p05;Vm0oS?pk%Tozt&n+pyM&w4oLZ~5w`LmAnn(? z`+5b=5Gb79k-i?)fTL<1K;8fd??yFFN_WIncA~c8FIfBN6?&`en!N1sVpqf29=tBm zPSrV|FG^=n4+c*Z=RttlFsPJS7ZLZD*-A>&1f^;3=_3CF+?O^>qL?%F&*x9NR=B<< zhpuu2+3w%HwB_$2cl{5CZ%{qMz-RWjl&yex9NJGAcdTuw=10r_j*5|g{EFgjiEq*t zH5Sx4l;=cJjZOu04BJekw&>{-c=g1w6aNQbX?wKc#{B{gpT4;A`vbH-BbKe%rm;EG zQ!U#yHD|4OQ=U9FDIKc1F3IqlJPnP|2NG$>O{bHaIUW?yKgbT3h&wbrW6z$u1-kad z}b}efg61{g6?N$eO2Ix`m8VO&@=3*na>Uj^n6#4yMuS z>`6y2%@dZ`ht`0WXcN^7S6#gP4O;A-XBVR*L7Nv}qMgFU6(t#V^zk?J4AIdNeIB9V z1pd4~OOwsedEOlO52LfEjR49Y)^^8X{6d?KtCll=+I~&!`mF8v**LCjJq87i&IBcf^CED z(~TLATm|L6Wh%lbN)3Tac5gCNd#&_iV*lkaq`5YBQ|aatX~(0L^RJW^X1mD-5ak(1 zTS|ti#9~mcoP~QDHFYjbPW*d%i)AeI&}B{N!{G_RaIn}&d_t!mYNBu7H{t8@AN?M4 z8Twt~T_Bw)8*vn_Jj@C5oi5A2{X$i!CqriYP3EJni=@I7;6(c}9&n8!JW9&8j`mWD zNi6bgxwR+NTlf5PJpg|~EnSj_M}uJPX+WOk{nvCHX47?N+(tK{#MVQvOP*t)MLXl_ zF}#L-zjUEY?68pXfk6vX7gd8iny9cO(UK1>-IL@LEBQRl@*j*R;{Kli>JSz0 z`)m=&j(V(Wbg?A<@_8toO2b!jA_OE~j`cUmzEHRfec0RE@*z>`ngWn>XL5cfZ&bIj zauPen{v*-=ZhHz?uNy~HE5X0gIUN50U?6Z}6Qtb`dwk6R0(T+?RmbimF!3CYai(&B`+y_JmBpHd zmKF!ZAOpJo(OGL^3fyuz#+Fw?PKK(1w7E9QKGGpVtpa~&5jC0wisX?Tj!>Z$!Lb3{ z)&BB{)3MxT4PB)@B5be&%yK!xHlS9U9%>c7$`nGt4o~)zY?eSQ1^i6SUL@xX?pco{ zug_?zPtpi7gB@+FkBLRZPWA`sHxEOUdMJ0MP-4Wl!(T)F6JD0lG#DzCdzuV89X0dc2dM=_BZ%{KZwYPI{+P>fhAXl6Z`E?#hRr(=&!#N{Er#-y`kXUd9mX;9m>Rc$Gs z9x~s}$ODeZ{CG)Ni{{9qvWP1%$<5XF1L=G$-T^6xRVIk*Bx>!Ot~-> zHn|8t7jkE%88>$)?jw{l&YhP&MRuTdUw+ZB;RALgpC`Oz=+zki05I>`rGg8sU!_aR z4pi*pAwjqHgyw49toW#-9i5x|L+SRh`$^6YbnQHu@;28);!d8l_vDi=>3shHX;sIh za6a`fI62d{BZ+{vf6zq4O1bwEerC+LYj!n%5*ZbdhL8@S&lM!q4xb%V&Eh2Z!DFa^ zd;=-zyZjIBBDvY91q2S)8M5RFdO#m}tFH;!-8Af5_KHIdm4W{Ns!JO?KLFRvvgW4$ z08MOnxVrF@fWUi&7^mF9K@|<;Yi$c$*=W9_<6T-4f0((#RP;$-r~wH=t4!dD0=-sk z>X+cvz;NXo(t+~QT;V3j;)*Rb_wg|dYCtY{sPF{>D1_lx;zD4sIR za)QBZlkvRKj~ER>Nn_)*K8}y2Q33F5{_=>fiAsjN>Xz(&oSQ=qD@;eo%zu`wN1EC- zWG8NX7XJXm=F62$F$@0D7hV!gj126voFVAa3 zPjkyUGXpisy4(I8dt-j=ar+dGoeuf`#7fMIoS1SXcYYEKM)Y)P!v3fQFQJU6Xcmv!WZ*o6bEbG zaXN<^cDQVv$OrX<+{W~e-a^FzRPPU}igd+vX7T&Ulqt1u1(rEHMFgHqL8$B_jb0$L zhkLRv5JBRmd*czlxmRBWXVu z0q1&)vo%HXTPQXH`@#Vt+hSt{z3O!mXl)mRlx&spIzE%)bY2cox7S0k?*!@SVbh4Q zQ>qz23-*Oq`OEsjyes~ykGzwKW8~{AQ1du|erIh6wlpYDD=yWEcGNHWYA&#L8i)9f z*s-Yktj@fhfYLk&R{*Wse;~yxN5my{Z^8YiYALgVencTp)w>#s`0PkWgr{?LK|JHx4XDhJFKSHJBz z4-!X}9El-h96;h<1?+T?F_K-)+mOu%u!9D~^OlOu`_}EHv z)EEzvCMUEx&t&UQv=U=0X=}E>G4z4YKQNqXM(#e-ZI@YNV3Ga|H~LP}7rlwq@%ljR zRlS%SQSUg0>~G-3*j)|$LY;maOjj7&W>C%M0!JLTe~6&h0D-_20H!quZJ|8Ul0fcE z#$Lwb>Q+b_aqG&ytpGa` zdHp49Fx|qRH?#&im93J$={p(N&@&SD2Z18l69C*PQ@}>De@Rm7lMpLV{1+K5U2y0 zY-pres`;C3AS>!!$Hi2Wn%rE`k%Jl=f!;{118fK1ybQ$)QNB+GQA*aAV_(`Z#`mZI zN6b@?S-lnZFsfoy2i&CiBeZvFU6>Ku%!$R3liG!V;C2x`H@(S(Gin>C1}Y}xv9>(; z5y2b}(lUYK6uN7BsKAmv&1bZtt^E9$#})3iv?4<8!HtsISc{+Tt+jW#F=`|kpb9M?4h0$dTd-cfS4Mfxk? z&Hz{-euuQpSd^=*fL15k2;Z4a*I<9NnJwlrWMTEGU^~lB3ULa8pnKfch>X}s_Siq} zFg8Rxx-s|=X2_WnO5tQZ_TE)y^uy%WVAlqs<;wV0v7z6VGQmorDsN99o#dZ0uo}${ z${|<9n4BY3Tt8Z!1fL~lGlMha4TCO|^F16`ofK=xpmz(ff>RhYud}5Yf#LrE?;TDx zU*?7f?J1+E!;lon8ykOlJmT7zRqkX&n4_O)BE0QzSHwD3w;jGGRH^_}V!qyM%J%srQUH3z}$C_jVp>LvJW94wqQcQI94d>eE7_TwIo0hO z9_9lv)JY_gd4bdrpzX9{mW2xWh0c<;H?4(C&SBHz?1{ubEssAj3YOit9j2WjR@l|~ z=0_p3w*qu`Dq|pfXqNuaHl5TPu1x3k2-1U@Ee=>?QK+4bK(-?M4aX+toN6yti*Cc1 zxcXKVc>n{j60VAaZQIN%nIhu&vZ zC~XM@o^BPZA{?7(W%;OaFvhxZqZ8!B#nj|ury&4#@?+%GDUp( zYflsA22e#gAEf$!#2YE-GiuTXo)0tSO%B5TA~IEo{{H~s+a}Z`jg!vMn(ai1!G&*f zxsKms7&#jq)y`obydk;n!G_ZvG1LN3Pt0C~-)yF!>B>6}~0lP5^BSj8C} zp1?qTUh&D=K9Xwoll490O5fTyssQ55izfoMoWyWwNEgb-pV|S9`65(TWBH*s%1Qc7 z-(erpt@RW7zyy)D*WMjEhVX<@*puRO5OzELpdj|`+7UQ~BXLk{0R#KOI37Sf;Fxf2zN%lZj%!vbY!8aT`|+T{yB{ET zlsN!4q~C!!a}@I5cn5R2ztBJp4oDE>`p4-x`9F9aK&_WQ`h+UheZfHTApFPe6n~;V z@QN}Dv9a<7)0MB^*ySAbBF>-&ZVLwAa;xB>6Y07kcBF~x2 z^$342>k1ZsUziQv_q1c%?Gb*H1BUzWQS|;|ERN9Q`ee^PtO6ObaHM|HhgSngJ%R5I z4puq(R$_ZYocBazudfw1p2ivg-yduHV>?ofsD80B{{X77x{vhF+7%p+>6#$f;Q5Xz2BO~jvqNDi)PMHa=4Af> z?ceVLgCelqm5=Q?vFCOGI8{6Iw9LO-eW#(5{{XXJuz(X2V)tdp59tf^tDoGgF@Lyk zA0Ph!ZXsWw{h=i<{$GZuvoY>Q#KumSrdF@vfvxXUwm5s4E|)8^V;8!Uuu9rTBI4xZ zT!Zhpn!1mmeWoM+q$z;u)E2}D$a@|{%xhiIBf0KnN7R1tdpF)uqaGb<2DYQzc7Wj+ z_5`=fb04Mpe|V?r{U#~*_e@in`=?%>Vly$|6Y<&}!VKT)ev@s6wgZ092RV5FD$ega zC)R$@rY;EFEe;|O&A1UC{V803=_~+qiVBX~cAe@s)pr!~Anp3VeOkyZRpvDY9@An? zcroz)XaR{LsDATdmYF0Na>lBQS%sPBsoK*criHWuE z-ab#FA?9t|Ty3;HK0P3@CeMgJ{9;!h`Yk9{%n*>K$maMHKDTBrTbNJ(0B+xS2ht!g zZDe`*mI$i5tcEZC;%v>@ML~z=U8HfMWX1~;Jk-=XOxSo4?YQYK{vQ!G6sYpht{-ik zAPy$Hzv+o5`Ul=uHgv)6v$>q$AS8tY_nrR$<8S(+^&dch$(smYb+aDT7_e>ZeY{MV zKi5BLr2Sv43Jhvjb-Vb8QMz(+5Lg|Qo&?mrqh|jA?V1Od*Ew#BHpaA_>U_n87v6n8 zS^og~+~4$>^065z>mT3z5-)W$d`A?ut9Xm`{;{%fWpgpe$Ady}1C!n-?iyM4QOB5{(BoPs{tlxi9N$`%KHhl~1Mx^`iq#L;S^4*%Y6dAIb+Zgv_uo6S+l^;xwM0|U5ypsZbqhL9g RX&2%YzL@hmP;oj3|JivrVch@# literal 0 HcmV?d00001 diff --git a/blog/2025-05-07-nanite-at-home/index.md b/blog/2025-05-07-nanite-at-home/index.md index 066bd0e..3986664 100644 --- a/blog/2025-05-07-nanite-at-home/index.md +++ b/blog/2025-05-07-nanite-at-home/index.md @@ -1,5 +1,5 @@ --- -title: "Nanite at Home using Rust-GPU" +title: "Nanite at Home" authors: ["firestar99"] slug: nanite-at-home tags: ["demo", "code", "performance"] @@ -15,11 +15,13 @@ TODO Nanite at home meme? - +TODO proper introduction, why Terrain gen before nanite? ## Triangles, Vertices, Meshes and Level of Detail +:::tip Feel free to skip this chapter if you already know all these concepts, but I suspect there will be plenty of rust programmers unfamiliar with computer graphics. +::: TODO pic of some low poly 3D model @@ -33,15 +35,59 @@ For realtime applications you'd typically use a process called "rasterization" t The cost of rendering scales largely by the shaders that need to be run, or in other words: The amount of pixels on screen plus the amount of vertices of the model. -As we move a model further away from the camera, the mesh gets smaller and fewer fragment shader need to be evaluated. However, we would still need to call the vertex shader for every single vertex to know where it ends up on screen, even if the detail they describe would be too small to notice. To improve performance, it is common practice to not just have a single mesh, but to create multiple meshes at different Level of Detail (LOD) that can be swapped out, depending on the distance to the camera. +TODO pic of some different LOD levels -## Terrain Generation +As we move a model further away from the camera, the mesh gets smaller and fewer fragments need to be evaluated. However, we would still need to call the vertex shader for every single vertex to know where it ends up on screen, even if the detail they describe would be too small to notice. To improve performance, it is common practice to not just have a single mesh, but to create multiple meshes at different Level of Detail (LOD) that can be swapped out, depending on the distance to the camera. The process of reducing the amount of geometry of a mesh is called "mesh simplification", -## Nanite +## Terrain in video games + +![minecraft chunks](./minecraft_chunks.jpg) + +You've all played or at least seen Minecraft with its infinite worlds made of blocks. We can't draw infinite amounts of geometry, so we need to segment the world into chunks and only load a small amount of them around the player. And as the player moves in some direction, we load new chunks there and unload the ones behind them. +But that alone doesn't lend itself to far view distances, as chunks further from the camera as just as geometrically dense as the one the player is standing in. +We need simplified chunks. + +
+![terrain_mesh_lod.jpg](terrain_mesh_lod.jpg) +
[image source](https://www.researchgate.net/publication/342611763_General-Purpose_Real-Time_VR_Landscape_Visualization_with_Free_Software_and_Open_Data)
+
+ +Above you can see a single chunk of a more typical non-blocky game. The white lines indicate the geometry for a 64x64 grid, with a square being represented by 2 triangles each. Compare that to the red geometry representing the same chunk, but with only an 8x8 grid with far fewer geometric detail. By simply using a smaller grid, thus lowering our sampling frequency, we can generate simpler geometry. + +TODO rephrase + +
+![cdlod_selection.jpg](./cdlod_selection.jpg) +
Source: Continuous Distance-Dependent Level of Detail for Rendering Heightmaps
+
+ +A typical approach is to combine a 2x2 of chunks into a larger chunk. If we use a quarter of the vertex density representing four times as much area, every chunk, independent of its LOD, has the exact same amount of vertices and triangles. If we then repeat this process a bunch of times, we can create a chunk system like the one pictured above, with many very detailed chunks near the camera and larger, less detailed chunks the further away we get. + +![](./tikz/terrain_tree.png) -The reducing vertices in a model can be automated and is called "mesh simplification". +But as we are building up this data structure, we create a special kind of tree: a Quadtree. Ubiquitous in the computer graphics world, it's a binary tree but in 2 dimensions, where one node splits into four new nodes. For clarity, we will only be visualizing two children per node in our graphs. + + + +## Terrain holes + +![](./tikz/terrain_hole.png) + +
+![terrain_mesh_lod.jpg](terrain_mesh_lod.jpg) +
[image source](https://www.researchgate.net/publication/342611763_General-Purpose_Real-Time_VR_Landscape_Visualization_with_Free_Software_and_Open_Data)
+
+ + +
+![](./tree_locked_border.jpg) +
[image source](https://blog.traverseresearch.nl/creating-a-directed-acyclic-graph-from-a-mesh-1329e57286e5)
+
+ + +## Nanite ## rust-gpu-bindless diff --git a/blog/2025-05-07-nanite-at-home/minecraft_chunks.jpg b/blog/2025-05-07-nanite-at-home/minecraft_chunks.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d3960b9c3309bb3cf2d4119870ebb7d991f468ef GIT binary patch literal 1057334 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