From 505db1bce84423c3655cb8c725aaf77831f7b37e Mon Sep 17 00:00:00 2001 From: Brendan Harmon Date: Wed, 22 Jul 2026 10:40:38 +0900 Subject: [PATCH] fixed typo in jose paper --- content/paper/paper.md | 2 +- content/paper/paper.pdf | Bin 9223843 -> 9223831 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/content/paper/paper.md b/content/paper/paper.md index 9b08807..41c5352 100644 --- a/content/paper/paper.md +++ b/content/paper/paper.md @@ -66,7 +66,7 @@ In order to teach a computational approach to thinking about spatiotemporal phen * as scaffolded prose and code to structure learning, * and as computable content to teach computational thinking. -Drawing on the education benefits of computational notebooks [@Barba:2022], the tutorials introduce geocomputational concepts through worked examples that synthesize prose explanations, graphics, and executable code. The tutorials, which range from introductory to advanced, have a modular design for reuse and remixing so that learners can choose their own course of study and teachers can select modules for their lesson plans. The tutorials build in complexity from introductory to core to disciplinary modules. A set of getting-started tutorials introduce different ways to interface with the GRASS engine. The core tutorials cover important concepts such as geovisualization (\autoref{fig:figure_2}), map algebra (\autoref{fig:figure_3}), geospatial modeling, and the temporal framework. Disciplinary tutorials demonstrate applications for GRASS in domains such as climatology, ecology, hydrology, geomorphology, and terrain generation (\autoref{fig:figure_4}). The disciplinary tutorials build engagement by working through applications in the learner’s domain and thus motivate further exploration. Throughout the tutorials, different ways to interface with GRASS are presented as tabs in code blocks, so that learners can work their way through the same tutorial repeatedly using increasingly challenging interfaces – building proficiency first with the graphical user interface (GUI), then with the command line interface (CLI), and finally with the Python or R application programming interfaces (API). +Drawing on the educational benefits of computational notebooks [@Barba:2022], the tutorials introduce geocomputational concepts through worked examples that synthesize prose explanations, graphics, and executable code. The tutorials, which range from introductory to advanced, have a modular design for reuse and remixing so that learners can choose their own course of study and teachers can select modules for their lesson plans. The tutorials build in complexity from introductory to core to disciplinary modules. A set of getting-started tutorials introduce different ways to interface with the GRASS engine. The core tutorials cover important concepts such as geovisualization (\autoref{fig:figure_2}), map algebra (\autoref{fig:figure_3}), geospatial modeling, and the temporal framework. Disciplinary tutorials demonstrate applications for GRASS in domains such as climatology, ecology, hydrology, geomorphology, and terrain generation (\autoref{fig:figure_4}). The disciplinary tutorials build engagement by working through applications in the learner’s domain and thus motivate further exploration. Throughout the tutorials, different ways to interface with GRASS are presented as tabs in code blocks, so that learners can work their way through the same tutorial repeatedly using increasingly challenging interfaces – building proficiency first with the graphical user interface (GUI), then with the command line interface (CLI), and finally with the Python or R application programming interfaces (API). ![An example of synthetic terrain generated using map algebra from a [tutorial](https://grass-tutorials.osgeo.org/content/tutorials/map_algebra/basic_map_algebra.html) introducing the basics of map algebra in GRASS. This tutorial demonstrates local algebraic operations using the raster map calculator, focal operations using nearest neighbors analysis, zonal operations using conditional statements with the raster map calculator, and global operations using raster metadata. \label{fig:figure_3}](figure_3.png){ width=100% } diff --git a/content/paper/paper.pdf b/content/paper/paper.pdf index 20a743187ece99bfedda59752f80b623b438fce8..8f95bf7cb7a1a82b15a203a57af868eb44f5ea65 100644 GIT binary patch delta 7762 zcmajjRaDeby9RI=8U&@gBm}8ph@oR>q&uX$q@{!*{&Y7eAl)Dh(v2V?-JtYH3DO9h zIp4)u>$^I8t>3ZY4;L#gCfb%|J#Nqi*yk`bHmC*8-?%$|RUPjAIFcVpYxz@VnC za(f`t?e;#=75?GPW@lXH)h6Ck_I`<`7VzfDx_9Rl>eI}xo+ONoZutG~8)^UN(&(gH zyZ4el(2IwWT~~ef=Jc7Yiyk%l&)utwn>|nM?sZe})7HtW)#13nolZ8F@Ut_^F4B#U z5wtcgasxMdrflpS*u*gS-S^M%gYP5onf{TC?&fR;=C<##KAORoXsI)1X+$_OAFXDD z32EMTPWN-fW~nTN`LMgJ)T%D2M5PN_kgd3WJC*!R@i+a^%+xII?_x{<*xQ!U=5INz z$WCA%97Fbp`E5%z(MF`7@!0;9MBN~_rfk`42oadw68u+~6uanUo~KgBy>bB5@6>m! z(=M}TAIjKMf6JBNbjtXd)YO{}wY~=fj#BA zd1WvOq2eh3MKtwW{uSZwrD%sshZIxxAwTL}YUBCHZXfqVBQN-L+jW>TlJNqSbh-61=O)KX}P$-KVGu@E54>J{J-yL@0mf zxFmMiDXzP7Cz^KnTe3tPri#8XY(&mY7E##gothxS)xjU;FC+bKQ;-o6 zsP|F|%EA(UDC{M^JnM`qcf!BiTIL&?TK5MC2!3UoQAY^)e6unZp{{;uFYR?8U77vC&$b); zh1WLl4rG~Q?qI#k6g{(51=GJ2b*zjxH71lJ??lf=I7czm5T9(Kw0FI%cK@563GpdO zuN@pa*4tjncqN@X)tL5~O&8Agq-f81mwh1}n;$_7zev!wUZ%m~&tMMpQPE8Vyfd?-oJHE7f=@V~WxCMm>8B;`cFEI&D z9GJREWRBDP#!(U?V1*M>ByE3v^rD)*w7ae$_XrL@Fl?FZ=J$$vXsqs6GB&UgW|w1V zi^X{LlHm}+InBWyoOLk3`{#k&DEYks<-ty1LRI2YeWS2X+{8=9j?beft#NM$?@axB z&6evw9!ERAL%eD9n%$Fc(Z)f8L@UUD7&|duQ+t)OOQ5Do>M9FoX>F6KNs9}y{v5Y7 zWa`iKCUvXc-GNB(i=mLpzvOl&p=*BBP$sezoFZxaCI!mr2f`6KtGfwRRH9>tZ>19S zbh@j1NmL8*G6kvi4dbF~CyueQm=-+I%mT)eL3=kuj5;e#ZZlKBOb~?uCyKt_vUdrk z^&e2$Cq}6L9cLKa!#rI2k}2V@^1K66F{R!QyKCD&WAE3l!S#JY>O~uxIom5nSOuXU z7dJ-yaBO-dCb6tD-RzE^Q4Wy5Js&$p=WRdmzSxi0ADYuQ@2xOtVfv!CykD0dSo>4V zZv}MWWY>e2w6x{++UI_*EdP=3*=L6Na?K5x##z z$zbq#wJ?!+6=V9WMG0xIOA=R@N-1&w{CMMu__QV4qm0y3RV&b{0wWZ9RL+oBccYYb# zS~PKW66HlP!$3~Ox!)mthF*hULaOVVi#^?mi*)|>FZQ@^we=kN&0c_2>GKk( z^JzA_DSar-c!_{nh;$ltnYYu2bxJ46A8-#$RL6^2aY&* zLr}0yq27$_Vlho5)oAWw!sax7qdC-hG+C9EtkzXm-4NPzFB%5JI z%km^JRAizWGHI zIi!8H8sl8i@6+1^>Z$3ae(;9nF``L71kIBSq^z>ht=4^M#`+b##+S+h8t2>#hX&KZ^ri5fLFU!iz4tUTG19LE?abMZvLt(^TFRcQY@R&m3kPhh)rD3-EJ9WHXI*B%=) zI!vE#Kis|W@^v(g>(xgze!Yk6!*3-C8Lw?kM7P#O@|@^NBc?872x_3Mbk0rMAI5hr zj0Gj0`xVTeDylk>o4e1im0tS`^f8}=AyN4q_u*(L-+FZwfa zt93)x<|+9eavfl`_3b`1IPI5}xkddNEQwXm~KXu9dg!kS|Ujy|k%1C)wz%7yo+xkI)7#ULPs zKUZD{WQXcn?XZPZFJr0f=GmaA)%BxXMN`x%4|4`@R->+tk_}J8Z!PC4Yi0Y?on$nx z3}%<{P{x(aF%+6rO-lydR&y%WQ7(&&5J?R^!h23wL<{!yMN~DnD!DxNZ^jKbel~G- zo~fiNN8q_%aJei6{DiOPq+Z@?QHaNE`&aV*g$2IxJa25`bm-D}=)-)-NU;ql2qAY2 z*z1)G>{vaPPjC$-boBODCB|;I3%SdtMfg>5Oo+R-fbkCfJh2L?O>wh7#5wSJIK+~5 z)8ZxI7ew$6a4;Sh1x}u;*xWZ&^t(P%2JvYcXn9;K5nM{lDZ%qi@C2Q|n(kIOT*~ZD zkp%8h_y=w8=acP<8@0*~`jheMjo7Lk9-ognl&BRB&l_nAHNe{4VGg!Of&aRre9K$cscoldlX?rxPdV zKKKT0vj;?Ice`nQD28C#>S^h4PR3pOBF0IG;gm>yBU5OqzvIXg%Dk{DBn&yaeQl17QJpyvu zp~T&ES4MCZv8vpwDscA5-LYwN(&)j2cP0AGfmN&aj*Bebqd?63*-gBz)ch+~u4;C+NOrzYYFtYc{Ab`)e&~iyrf6q`celw4iT@ zL?kC>N%?94zo)3F*;}2O-@#vLgGkgD375;`$IDp`Rdt-47LIhADOBKNYrW^zRsZUa zQ_-<+%s#bIGf2I-e{kg5b+wdlb`Mg!-R}=$+m1VI9nEL1k9yyqF;zni_MEgnnmAf2 z#pi-wle+L2Em>vovz)!pQu}dKXRLtbBA4@Zye#$OLQtlgjT*FXb?uyN3()PTxQIcqCO>e(hy!=)zg*&+3QUg3=>Pu4Ft5DYLca>WRF ziZfzENdtjy9alOGBYUflQtYQ&S6II;7z((1Y7XO6*b*gtq%}fH!%*nU0ttfDqoR~> z#>x@ZYloS6ZpBCP@u}7Kl2&OK4w0-LQb^KBFeDiyStL0mc_alSMI$I5ru>*DRQSpaZF3{KaarFIGZQ*xTsm{U zQX2CpLHR6SCkDGY6o-o<>5uUpNg>)A2qbe#qeSNZradY%!I!#^4l!dMB{KRt18tps zD=U%t6TdBoPo9{?5F>}FV2?nx?=+nw1F8J(o>CB-z2P1%-nWsPE0&TxMQ!Ur(7y8O{hcsTrOMbX@WkjZpD_>OhhYlU z>kWi<{j?S&Sv$?nYKLUY{1@IJrJ9t~dKh7zpf?P={weE`w9MtUb``x$m*xm4U_V3B#`shvYshEo z#jg|_q>V#EyJg!{iD$Znnec9j$0K3MQ|{7hf)<5QB9#oc4QNn(u^RXtG5?3-UM|j0 z^V!e&<2B$%?7Le16XwVf3V9k zY%yxfY(zzQR^L&7<7dQ8qfP@iXgGi{@rTL3Cv!C7E`JZ}8W>0>G=xiglGhSmLOSUR z%_?g@>Twyc^ndFu_N-GLe9gvVKYu8)=G3;jNteaSGL)84rzUc*su?Kv7NVQ+&l>HR z08aONT^R&W7W>bwNe!Q%U)4$&H<5l$%UpEm&@925e37H1G(&R1U_wNYGvkiY81!Y& zWIm|8w23Tyc}7gxDH!fj@teVH6AKb0VKZVA{OQf8X~XufRm+Z;@sf)*#U%+Ln=vgl z@vYm}xlirC&GSA!XUQL}CofGw(iJs}A7^T$4+M;<9sCC4Y8H)>lW|+!wAFl9nj$lIi!Fth4Li9-?dvHI z9sX@wU7y!+bi}}SbJ&<^y4{E-$(ykDOg?*Oz!*(wUN>Qh>WIDkTopscSzbV7h#h!B z;cJ%LS*G-A>ze<@X%Te zYk`Woz^hp6tJhNK?ZZ&OjXIIgE(rP^RWA+5i4@_CTekfgo4HbUD*C7~MZVkgXr@+KGXCBD z-AwC}JWSP6To||X=NBA`0Q?DAM)B}+Q1W<;(667A(cf-_Ilhltw1I5wiREjf5!aP@ z-Y%X>y=$B9{d(KzBBa;kpm5`f`(m;+6^otriS#RtoA<|ie;#xHZ2Lb!*X}+Q^x~hw z;lkW)?{8cIklEGa>}|W|`qQJ>Si`-mpeTsx-imYiVX>>DHo(W^`lS72-Fv;`y42_N zUWRXG(0$z(?RJqd_jU(T8VC|`Mv%BZb|)-Q5#sHEG$o!xq+6_)-3C zYnG#NOD7Yxv22I`+FN5d%yW6^N}#mXokYl&WduV)sT+BB?&ogg z4bZ?^xZegp^h?7YUXOA7xTD)7+FJ8&D5}`k?dGP=dO~|smn_(-RTaapO9179Ky<*o zA`qwuSjZ?-8WhXc+!+f6;r~~Vffmd2-;+!+v{>H%9<}jGL9V1GN%4%cYq;m; zDO?7-WS!_Kn>Y^FfR-7UOL_sbOj`PiwegX0dKc3bhq+g!ip8%6>jKy%La@WXT!zXT zSTvKG9^xz285UkinjWH!)(tuCcP)_LQGT><9x^?Aj#gfxIJbak4gr5_Ki*Ic=>wxj z^n)n~m>BTo``HvDpHbjjnR8nA3nh=VhCPh6$9pU-PxSg`p%^CN6Ek9!_UdF|-fA!~ z2K2Z#ys%YLd?aOd6hCRUWJ`wIPvKO}iwlrhQ-xnjh|se3S$_)`i}sjPh-GfSSU0YC ziB-g4*h4=v56MF1D}Zg~K4HDKAREu{&Ae&c1yjE^Cjj%fbB~AJrsSsdISl@LM%D{6 zK#wiJRA#BVkKt)2sm!O!=p*`5b4I|0QEHFl_QL3$sQ6F3>Ii{4vIQmhZY|M!w*{X% zIzcHW=dgH<=Nu&s^}YHP;UY`uRmCNH3H0b#RXaMd#Wwe*dIa4b!~&mTE9p&DBQ4TK zf-QF_4*KWSbdNPeqF*;28$L~a@OqJCc}bFL!jiS3U`hM<<@K`e6yGoX{z^a>r;13A zrCQk_J?eFzPH4q;@Bw>0T*I>9E74QifIh4DSoGnG==C5(Gl(sXEil~&r-vwrY_wDs?;lL?F_1~h~cLD zCdasc+8?+-Xv&Fc1`e=2T91nlk9bWP_Hnw$kfc*X&XL1^cxlwr0WoeZjf%IySqac_p=vreq z2kTDY@NJx3F|0jYr*{QCJf;0HZ3j(F9_gTJT0+e7c~?>^Jg-U0vKx_Nbb{GDg}5jSZ_&A>Nn zwo&aetvhQd0QdS8ky1xwBfqB&+?*4K-dt;EUC&Q9Q;~xhuY*o`@oL}d=-tNYG3l!K zsfn|_504WuedCav5(7KoE!G@qjLC|ron-wke@A$8uk2yhHTgJl5a;t?>Ox#{$zAR4 z+1MY|!3(s6;m~kfr5p6!LHN{f{w*+Y$EZ_G{BFn>%B0}W49dj=bxE&Ui)KQL8xb9W z%MOD!Rv2v>$F z(`rXQcZbj%l7nG~>DOmca7st|&aStwCcsaDnL1bMF>E;+0ucrQd7L zziTl{PAu;QYgH6QIZ3(7Gfb(SZmn}*Ih!B3NyHn+8dV3G*49EYlDbO2XQ&NK`sQn^ zx~+*Ve3Con7jPU zU=66PL3Vx|PcOOf`VCU>4(0UHZ?q@MXT9-3#h{*vygFu(P_XOH%qT8-dl5#!8)Eoi zU<*B?V)-_ojhRRG40jnE4%8z;J5bV*Xy%FH$W@2UE7;tqrf3Iqy|8-A^sSR>{c!7r z(>-g->j_2Fw+sd1&W6skv`_@6<++3STSp+;XM=fH-RO_S`jY~VP%HGN2S&VQ>95RM z1RqL__Sw#cRc$V|xC>Tx6uy*VA@Djh8*9wD;c;iPs^ZeFCdE&eX`gIgw%TzTHb2sJ zP7l)OuJaYz+kAeA`J<__*ha3Lbb&}@Z0OHFs5YMe%YTGb(1w%VTDr53%G~DP*75?# z>5}B%%HEuDOz?Z)sPVa_X!@8tEW8Cu_!v!in!VWB{fqT#%)3j^YX&C1;6~km>MH!M zUW_nf%witV7Lv2WQ)p|$^GpdL&srJBtd&6^v@6wUTq*7j;@69(7`+I%EjBdPvJ~O1 zpzMWNDc+Zjn~OK)pW@Dg^b$Fn>c4>-s0mRCor~mB@mg@M#8oo-Zn>6~0Y-L`;Gtod zKbJ3!Zm5lzCf>uv3;KuBYC~bJWiiP+L!8fnkpuHIp4kBijSeK zPSQ9e{;43*{ZE-%p{BF+?Yhl+`R>ivHKnt#c>3>jCuH_J_0RDd0$TvIy|dVq!LLRp z-zPsfwvqWSO>7#cv;D{(ug?Z@MGZtBqt&^87^M)3yL@@KmiWm>jT>ZeClZ)h1IqPwpiq|y`Cc)B7H|@ zSIzZ@p4Ve8PFSwAvSsssJkPnyhILVts2_Lw1+P58&yx+w4aVd3--yL zeLX5KzY0wz?#%yqQ^p1eZOms5^oF^QUzF-2-U5LL*mGLrVX2Xwg}F$ga=`GFs9Rha zH(MhP#_KQZiWn49IZ&7bCP{RHPlRv7L6dlF1G+<=&y`q$wBFDU@1xAjmwkaU^($WQ z%!_UKqZm<@Cc*eY_ zZ=@M2&0Wznnh&j_MaVPTjnL}A0`<*a2;&5+a+mAgp4QWJ43{-HZ=~Ev@T=XS)@E*1 zkNS?J(KClX$pe-peFclh@z@!vaLV2ecw1ToEaJFe;obh3C7@r>x;vs5-dl57mQeG{ zHalQ^rE|V~Cp2FFN4$J~n0MmGVvxPRmG>A|GkU*s!Q5;vZTge;E;QQg%{sc!##r&F z>M}pNAE~8d{N2Kr?PxJ$kC#31!G=U)@8X_iIrX%t5r+e?Q2;%SId@s5IX!bHuqgz_ zghqyWIePE0gcle-mu@T4umCZUC1!<7=|F!^00g6j9ul69)VFP)Td>(-|9HPZ?HPQb z3M(J1Z{yQ%Z`0&A;au-eq9shma0y5Xbzq?5rYxm3Zb?ocs?q*ck#dK6B(z`E4`J); zz)*?%8CXv?&*Tz^@Cjwe?6jmOnj7TEv+ft&8Br`6ARN*ynmOs7`cp_R25lDz$K}{L z+S_WqyDO}{DB{){;j44b)lnnq(Ai60tefF|4!4@FHUX#9m+ zv;U}jI17V{)pYO0&&;+TPn;h2C@oG0`UmV`0W5xvo$aM9<1Gf6$DiIEtylkK)+L@9 z#u+GlB<9QXagunS$Ben`)4!#0{P0or0!7UiWo|TAe|4MpkLV_uC*DaCDs=*F827U8 z8VZ3M`bm|ww-VL2H=J8!*`%+XKIM{==33s+q#o9Z; zn8O@5mLWHaOOxF8YO2r7WY=K$?8uktIh0p5zFPZx+M4rkeBKM~Z%vB$@dGDzqrcN5 z;F{=dSukkX;@r= zqmp#onbdjdQ7QT^s#;rR$x4~)W-D+VB8@nU)ZH*{0+7)7;Mm-uc<6B>w< zh|y>RLAj#xj@2(P|FV}dbgMmOFgf6eg#!gws<#a94ZT_EmrfyE{?jjw{_-C$=ILle zUkgeV8*N%+d<{xZ5!i5#iy`Rz#WU6UBXq?7IB)bOhqj^1rb~ZUB(#+9Ch*ZECzxnv zrt~&5I4_kto3gh?Wi(k)LhYI6pIdD2z09aj%2@KZ_f;H9EX~Q1P47N8VsFF%tAgZY zs916QU-(8PWl5yY8FlEXyWdZ^saPG>;wclVj%}a(Bg(%skFrSj|A*V|^}*=SEA?5l zE|rq*)~5@xyniLj$L7oF-lH{~<2Z>~7>Xk5vho`?=7o0c%tm;rcC0X?ll%#Xc2)j+ zQNmGP!qE@YI4<&m%FnY)s?%*+fhi2VS4077>7ujoe1Yw8h#!6gr|(T0p z_ItPbKQHkNF_W1w>y#KEX~BjlqW!Tb^K2nKobOCfx<8^fk@LU{kIuf98Cb@=&ozuJ z`18fK{s~HEcn@B}s&G*HX1_;hi7$Ew!^}Pr#{nX=E0DxSlS-m)B5Q2=*ZcH=><@%L zMwn>FDayBfo+q>w6Lw$&t7H5oxx^6@%wjcBH1*um%|fg)ZX;x~_%rnGg==j^3#MgT z5w_!hTFSh<4B9Ua5!RsTq2(0H`y<`FE+=Kz)qM@WF$7OvpX=%}>TzU-JS(l8DcpRq z=%wcnXeakZA^{tkR2%FugB=>ibzOG(`&mvLvO16p!gv!2>5; zwzc+>NEE&yg^5)S4PT14rVsKzGR5B6}Yea91dzikKnJ=W0F!XN9Xx|nlXYCUL1E+B(|CBKzC@4ws6B32E6x?Sdg!$qs+*?+<_jy6nE zJIA@rL1M~r(cI(af|EGALE>IYKwcpJ%rF09FMNbjcgUG%EcH3KfjNe8?>SFT!2N}GKcxg zmc>V7VV|RbPBQXw-_rZn2!4x$@H@x7zWPbI43@)yGd7y z(V4t*Poak&-0mmIwbCp;`%DHrV%ticNo4dk$C5`0`^qB8A;}{tASoifL{dUhMp8ji zMN&gjN76vjMAAaiM$$pjMbbmkM|y>1fMkedgk+3lf@F$hhGdRpfngJl6V02bNIh*^^fQYmO%^Mv9}^jd)HKP8meqs=Bs&!3$Nld)!C zDcmPj$?xrHkq$wWg#xJSDJ8T&)ovzH@*&n}3?-cscV>zz5l=G`7ZPQTBw>}E{o~z~ z^3Nt6t)LDD2(+* zP0Uy?jCBU6H!bk7UC65hu;?+x%+ph!8!>rb>uh`b_|_@)bD_?(uHX!LGnaao4=lHdxbmvC=wd9UtiCk(ged;SFXeuKo%gY!f*_C_{vD4dHCU>dLn8l2rUdxvV%Bva z-0MP#En(w~%h=a4Oov$yF_n{~-Zfdt;nTV#%DkOVx?OhU<+PW@$8U8@G>#BEsco0*%x6|Xs^wqgNbzYn&?Kb@Z+*}{&kgVVTs?QwTQx1Ol) zV{8e__0JJ4_tlx?+{jMhTnr_|N)37{Gp4pxzA@`ux-WNMf<1(jsp&iuVB%#7Q$Wq| zUGA&bl|DgcYImK#s$f}UcgL)YcD6M5*BMtxB-))T##I)<=lp4|H{K-_rqT<6%3jB%84rf>&KAds#0^~FL#^>tB4ht^U&r-gUqx`tXxNgnp^ z6z}!41g^}BVCZqhr2@3Lk$p6MM;9MqZuI-#oB{UvbO<}DWO8!gC<)X5Ij}R5W>()kW=U(VgyN}jaN|oBC>O~jz)lG(~&5> z80d>dk^uZ-hxdvUUke{T$&(SDQZ>k7-@imKyrX4!D(QTFlJu4^bL8m^@VMLU(x(E& zpw4xEhTtigIuJV8t*&P})p$ z&|ob`_+eOn&u^&bZhu=!Q=D|I8>O{txHFbb{MgaJZ=iGsRU0~5(#;k1sqAG(hzZv zkCq$ePj49MSCm3*hPM~o%&D@>e>&b|wKO@QHTJ@LWoo5;6TdoEMP#^Q7XiIq)Jr&~ zG2WD18+eN!QrqYoI)McjGiZ#%uk?Siv>0I@i^V&Be|Y|L4rPbLxKhPQUzE;Bjxpv} zc^4goQbUc}WOw6Mmtfl_yQbLF! zb+MOTJo@VKI9Mk5rFMN4CUYe__@)cN1T=f*-JDtResd^NM%x<>;9`%fC=QOBm}n98 zQ?e@{AikO!-9{HxZU}X>oreVSCK|S%n%Vc+7JiH4RaH&2A!5SH~d3 z++Fv^>>2^4C-CNR#HY8hA7G}quDi)QkWw!&*nK)dqe#Ceq!QH8dEo=p z&J@09Re8)W4{QVwWp7h2^*0DGFmnffezOxFDPl6G#Hg|A6=`ATOC0%a5-^$mRaNXW z+mO0;(*}++0hDepLIY2L?Iav5m4sp78&+jnJ#koq0<=qqG)oUE8*PJ^j^_q0tr7@* z0@91NYT%oY1p5Pz<6=7D@o-bRR(m4C^?=x!cWLnfV>jHR`dqzf_Af_+^a016Mt(ym z=h$V_>_t6aTau@U7F5)iiIv9WP*Myc?G$|8EFvs+P~NggN0mlNti zLx$h~US&XQo=C=Y047H)X;EToXI&8;!Xzoy2t|>{AP*9PNIFBe^F<_$1+)KTSbYNFFaJ@%PsVoCTx5IV;mZuT&F_LQWh%{cDJATq2+A~K8a^+r7)lV@Tg&T#4B zyYVL{3X$8rXPJ0Yj0}!yLiY)Y=_=E+2i5+`sk%wot8D&_Xgl&xxs%>p`7xBe4}w^2 zN}=DcsAUr4TR%TB-y}1}8+joDja!Mnq34crEqh0)ga0dKYHlO7=KafBYQuiDlj2iC z9&GxFg&rm6;_8MOws{mEWX7^bkDVieI7PTQjLFUA&%l4bc#2bA$73t%sk6J|$+Ol^LhD;8+$b^*9iyF+I3) za*G#pvG9LNteTgNMFb zT9nxl*n=w>gZ;r9GD=%##dr>$_J01p4mKYDiM(uG@iKreI5DoEARY_LOKl~*{{mM0 B+W-In