From 20d72dcce82df2f4167a5c1e9dd0c6e479529023 Mon Sep 17 00:00:00 2001 From: ARIADNA BATALLA FERRES Date: Mon, 15 Apr 2024 17:22:34 +0200 Subject: [PATCH 1/5] Namespace problem fix: CST_Start use startR functions without the explicit namespace --- R/CST_Start.R | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/R/CST_Start.R b/R/CST_Start.R index bc688557..3107afce 100644 --- a/R/CST_Start.R +++ b/R/CST_Start.R @@ -44,7 +44,11 @@ #'@import startR #'@export CST_Start <- function(...) { - res <- Start(...) + inputs <- as.list(substitute(list(...)))[-1] + for (i in 1:length(inputs)) { + inputs[[i]] <- eval(inputs[[i]]) + } + res <- do.call(Start, inputs) res <- as.s2dv_cube(res) return(res) -} \ No newline at end of file +} -- GitLab From 0eba41bdeeba804d00212f2043b48456ab717a8f Mon Sep 17 00:00:00 2001 From: ARIADNA BATALLA FERRES Date: Tue, 16 Apr 2024 17:14:38 +0200 Subject: [PATCH 2/5] Namespace problem fix: adapted documentation and added newline --- R/CST_Start.R | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/R/CST_Start.R b/R/CST_Start.R index 3107afce..4768a08e 100644 --- a/R/CST_Start.R +++ b/R/CST_Start.R @@ -9,10 +9,9 @@ #'`s2dv_cube` object. #' #'It receives any number of parameters (`...`) that are automatically forwarded -#'to the `startR::Start` function. See details in `?startR::Start`. The -#'auxiliary functions used to define dimensions need to be called within the -#'startR namespace (e.g. startR::indices(), startR::values(), startR::Sort(), -#'startR::CircularSort(), startR::CDORemapper(), ...). +#'to the `startR::Start` function. See details in `?startR::Start`. These +#'auxiliary functions (e.g. indices(), values(), Sort(), CircularSort(), +#'CDORemapper(), ...) are used to define dimensions. #' #'@param ... Parameters that are automatically forwarded to the `startR::Start` #' function. See details in `?startR::Start`. @@ -52,3 +51,4 @@ CST_Start <- function(...) { res <- as.s2dv_cube(res) return(res) } + -- GitLab From 82acb0bb9702e59ba5de4591736610cfd730f4c3 Mon Sep 17 00:00:00 2001 From: ARIADNA BATALLA FERRES Date: Wed, 17 Apr 2024 12:23:53 +0200 Subject: [PATCH 3/5] updated documentation and test to check if newline issue is resolved --- R/CST_Start.R | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/R/CST_Start.R b/R/CST_Start.R index 4768a08e..353f7f3e 100644 --- a/R/CST_Start.R +++ b/R/CST_Start.R @@ -9,9 +9,9 @@ #'`s2dv_cube` object. #' #'It receives any number of parameters (`...`) that are automatically forwarded -#'to the `startR::Start` function. See details in `?startR::Start`. These -#'auxiliary functions (e.g. indices(), values(), Sort(), CircularSort(), -#'CDORemapper(), ...) are used to define dimensions. +#'to the `startR::Start` function. See details in `?startR::Start`. The +#'auxiliary startR functions (e.g. indices(), values(), Sort(), CircularSort(), +#'CDORemapper(), ...) can be used to define dimensions. #' #'@param ... Parameters that are automatically forwarded to the `startR::Start` #' function. See details in `?startR::Start`. @@ -50,5 +50,6 @@ CST_Start <- function(...) { res <- do.call(Start, inputs) res <- as.s2dv_cube(res) return(res) +\n } - +\n -- GitLab From 9ba3a53b067c7a7f7d08a98b8c1a7ef9d9f8cec7 Mon Sep 17 00:00:00 2001 From: ARIADNA BATALLA FERRES Date: Wed, 17 Apr 2024 14:57:03 +0200 Subject: [PATCH 4/5] Updated CST_Start.R modified from main --- R/CST_Start.R | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/R/CST_Start.R b/R/CST_Start.R index bc688557..89271afd 100644 --- a/R/CST_Start.R +++ b/R/CST_Start.R @@ -10,9 +10,8 @@ #' #'It receives any number of parameters (`...`) that are automatically forwarded #'to the `startR::Start` function. See details in `?startR::Start`. The -#'auxiliary functions used to define dimensions need to be called within the -#'startR namespace (e.g. startR::indices(), startR::values(), startR::Sort(), -#'startR::CircularSort(), startR::CDORemapper(), ...). +#'auxiliary startR functions (e.g. indices(), values(), Sort(), CircularSort(), +#'CDORemapper(), ...) can be used to define dimensions. #' #'@param ... Parameters that are automatically forwarded to the `startR::Start` #' function. See details in `?startR::Start`. @@ -44,7 +43,11 @@ #'@import startR #'@export CST_Start <- function(...) { - res <- Start(...) + inputs <- as.list(substitute(list(...)))[-1] + for (i in 1:length(inputs)) { + inputs[[i]] <- eval(inputs[[i]]) + } + res <- do.call(Start, inputs) res <- as.s2dv_cube(res) return(res) -} \ No newline at end of file +} -- GitLab From 83ac50c77d56df262275919240a5a8af51280cb9 Mon Sep 17 00:00:00 2001 From: ARIADNA BATALLA FERRES Date: Thu, 18 Apr 2024 11:04:45 +0200 Subject: [PATCH 5/5] Update documentation --- man/CST_Start.Rd | 5 ++--- src/CSTools.so | Bin 259624 -> 259624 bytes 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/man/CST_Start.Rd b/man/CST_Start.Rd index b286bf18..b95f51ec 100644 --- a/man/CST_Start.Rd +++ b/man/CST_Start.Rd @@ -22,9 +22,8 @@ multidimensional distributed data sets. Then, the output is transformed into \details{ It receives any number of parameters (`...`) that are automatically forwarded to the `startR::Start` function. See details in `?startR::Start`. The -auxiliary functions used to define dimensions need to be called within the -startR namespace (e.g. startR::indices(), startR::values(), startR::Sort(), -startR::CircularSort(), startR::CDORemapper(), ...). +auxiliary startR functions (e.g. indices(), values(), Sort(), CircularSort(), +CDORemapper(), ...) can be used to define dimensions. } \examples{ \dontrun{ diff --git a/src/CSTools.so b/src/CSTools.so index b7629601725e5c3340bc5a7a4c3cee09088c4d6d..dcf5b0f54c8bdae91f78059af38e8d98122296af 100755 GIT binary patch delta 10657 zcmZXa3w%_?)xht}+Thnh$68dQbp`JXYMZBulfDBd;fE0=A4;1 zbLMfW{U*Bho9N25Y%kAS&i2ZM%XtPnD<%G1l*jRBqx=DXzLH(a_^Xj`XqwiFPZFBe zTa(RYJkHStQkYR7Z^4gM7&7U;M$ouQ$nNFb z$Ck;%<-99tAX(+=KHvp?XyG-(WVAW@e>ws0KDBca6C9gfk z?`KW2?@pm5~11lH95C-u4 z6>_teZ)JT0{VKV^+OCB{k*ectJA-EV<+R87^IdIyhSK*-CaKXz4p6`EpuX#*;uYDc zijT-rqdzzr_1!Et4doq*TY!}}j3D_X;0rb7&-CffeLG17}ix-)$+47JeggPzpUXM*iqSGE$`3z z${A~cdP)!eoRBs6qsc$5;}3j2w&mXS_Y)xkxz-7VdthfdEkO{^Z$QaU$fnjI`hxd0Rb>rwpZ{qE|D$uD^ z7)LMZQwZaDma0$)XYW~{dreZaJZ9H2H^Y`4d{4cCj)^6r=8Iuvu@opKLQNe2E@-<#-TNrNf zT06qf@3nq1W!`fVs{30{dR3)W8NRQckJ?dOh$$4WGzav%LO1pPKXpRy9R6X-kQsLo1cyecj7z2Yb>z}US8-xqkt0b1h3x_WANHZ&EH9k!D}^f192rx`YPft ziPr(YPb`wrfNJ19=!u3h7^B>8Nv;^8oIYRPdyEhA=1}qzR1AZa3T7%B1S>n3y+!TB zSfzs5yTll)RBU>d%44ijv8j$2W0i_cerq>v7tmoDjScMI9?++T_*XG>M{zOmz(jhF0rX5$wa&nBMYaS+e)Pl3J)x#1M=kT4Ey zom-MZ-dYhM*?XsW|AfgXpHWZprt+Y?vD_+>9p9x$RsJqUs=&+d@*h~jRHT~mG%!)nFn=xixyTE_Y?Je|Ipc}XBKh9_H)U+b?qp@VzLVt#aiAZ_(*L-A5 zyoK;2$idZN&CHRDzlO+KE)RUor}b0YJUXt~yS-KzDGMQcw7`;y*Pt?YI`Ex`rp5T> z_;2_S?@UmwjfVod=7D^{1H~MdvTin7gJ%!Md%;so!x{(R>zQ1Aj>g)qcWT-YK&Pl( z27Um4MlUGK;yc4r33deqt5J|$7!vGW*3qkq`~fAs)`TQ`gGEL|^(?)ANJ(8#FcSqC z6GDOmK|wNB)gvZUReew}9R)qdh6G1ZkctLZVWToj;HeC52p0Jgm1H%^Jy-ZW3CBaa z8iVpeESNe=etw0=d#`}JKlMbjE!P( zZ-OP3lxi%xKNvrORI~&O97Gf1UbD0~TgT0yqy($FXTDtjEf_Z!>mpq1^~htd;+>7_-BHP$&sF1`wF*$W0JMXA9Ge}k5FC=Xed78FFHp!Lt8 z8oSv7&BPILr~|b_oxC0Duw)rp>l~a9SHk8)?^bF)EXre2wD4FqTHe#bS6ej0T*fu| zTnisFBRdMTMHy#dUOPojP?eJo@)z~lLdEDt|N91 z$RK={=^CWudx+hpYn4)}INo#(3zsLGuByOG*EwTZQ!w9~I$A4y8@<*e$Zy&Fl-GI> z_3X8|+G|C~zkSc&v7W~2#_AsV+zp-(OLq)o?cQAn)^3o;Z}1K&bPNrqx2!f@bk-fK zqgA@^5+rn!5kK$=S=0fGY%NDU7PYp(=6a7s{qd;H2Rzmh`THMuzV|L%jjE|S;XCEA ze#DOT+1%iXcvNG>Hthz}v1yOk3>$jtqC%VZdaNpxFAe7RSRQnrRW>(ztgBf244dJ6 zFvyLau*6Q-<*|mzs+&9~i#%e1ZR`$@MdQEF<{FPh4w7f{7LPS0aP1~9W|Oy~{?~=- zoMz}84dz5Bp$QVGpI;ZsiyI+f1Nb)Nzy$INx(*F8ctwHS_ajewkj5dH41@n7wk*hL zrfXL?XWGN0ED^rGFiJ|UEQ4LP%Okt~#5-`f>>T$Ke}nbebPKj0&&r;+;AGSsSa^%C zWY!Ywt}^k6{OV`kFXc5{aLa_ZFOK|8Fg*)9ugq>O`o>8){5Br~TY}%*<^$OQdGt2# z+4g?yf(mh)ioxuP@=;U4CGL~4zwnW5FQAqcqH{m27p9J#0lN8ep!63wS$dOD(PR+~ zKcD;56ds{NgRo6oitd6bOm$2aW2ufNkLf7H0;;u*;LT+FWHFoMV1%+gm;X7ci;fG2) zVcWZl*#6iwFiU9(=0L;lm!Alc!H&rYU95oXt~I)N(dvM;e#c{EmLW#5TDj5?nQW_k z#Sr(g?*o4|#Pcle6YRBX{4~x(>%zeHv9!wllb?iy>r68*;;et4ey0ssTO5(4`Pg{wE*wI)xiT?~2pAfOVrpuJhXpzj)WY=gh)!Pll$y~)PxTC8G z=e=HQ>mBC4`PK{JINPenKI%ZFxo?JbJshW6{&1XZb;fb%Xsd$l{bZ<1GPhXicmOlL zG(c9l#YnhOJ?Rz$+){?mD^&V zY4^+e7}13tmzQEhdVBJ^i>II>`t)%RYyrN*t`xq#-Z+=cj)fAP{N-Ew@6Mm%>W@K{@M4|5zuyPtkF;7>$4 zgZ5S(k#DsV*Bs3#THYvMZx8SUO7fNmb|zuI8l)-Jfn&)?qmV}RmFGK%FC8fe1MZS% zIs*KR4t4Jpc{oMngZrnYiWQE%m=?D~zL*L=wozV9g$Z(5rgQ>PJ8Xa%CAW7Ho!qDK z4#QNPHPLJxDL?8YcJ#!X{&s3#kziFpzo=(>3wxoR+IO_KFfz7N+m0lE;MLAzrqezi zOaT=j)Rug%V#1|a7!fpWXE)f8SE7D>wCt5B($x1B{pAE4h;?PA4jDkGxDuG|IBdST z+|=oY*5(#qirV@fDt`%hgM2Mhv`?a-Ov$)_>vTtJqubQa%C9p;A2(f<>K{W{48(e> z?2#q9XVFc&p4}ELf=djYZbtP<#BhnB)6J+}ObmAzx?5Ifi6nK|ukWVhO1NsEyAk~~ zFd!|CSi8Ds;NH)uR$=1_IN?uilNg2AD2>^#_P+f$3_)Zuo9sy0fskj+s65 z3hLHJsX#qspbJ<1Nn*I<(CNZef1VgFIrJ7eyNAfaJA(~9#Q2o!=m;~?+o3(pt4y|lh|+N2ff5BI5GF^4X#=t7xotY6X@=4%3e78!!(5} zR%MibCEVTZ?=7Z6l)Jl+z`MHTp>N0HgN>h2!H>8fx$lmCKNw|iXETJp|GNQNwH%Ym<&UPis6mf3`?52#&T4V z99A@=1$T6g?Z9+jNMBwYGYH}P?K!ME5s~}Gnn#clux_WQPZ>fMm?y##a|&eC6o^aJ zGIffW0PQQC0)78q?OXW}tf9-~%MZaC=aUyESo4F#7***r7C%RfQ8hJ?G+lIOX}I7y)l%kE%bN?WpAG*a2Es$L zzrY7dXNbLQ0Np#af?c<+wT3wn9BVf?8jkhu2bITcfRj7^rNa)Jr-6|1K62hnk!FwZ zUS$W22(1?U17#;Ltp@y`#C~8}4R{QCm#-RFjc6wEI$&B&_ypog;I>eb@wxD%5vKnG zU?VJtZ+kHk@IuHgd@#baw(t_l9dGJ%khC$`UXpEuPX>$TK~a@A(_Wu#gn_5!nNWT1 zB)7oK^tIFWi|P7kOu&Ixjxn7w;J_=#P>chw978cKw#qRS!v_Oc$={zP26~kn9HZvr zu+y5&FA(Ff)0)k7Xf=J^wA~XduGxr#+${lls`l19&)n{|XKv=3|+XW&sxcjo*aM*O^hHao9@b3t^ z;Yc!lp`0PB@=9Rk zNyy}ew7KI7;S1FwnV2V{+$ylBRPermvR|G^oS;HT8WjaUQ;wn#{7m@?BKeu^CyFt^ zC_hn*es)&w$P?)-UVe}VTRas-hC*Xt(+Q)YhI=H{R*jh{8DFL!E1G_3!(Q2xgXDK>%lv(8Etrl`U{RC)eIl4*9Rj8LjS(Q#tp9;@{ipT#YAwb0Tlns_&O$}{&-fm1^~Chs z_?~R-#7(rjJvkZw7U6P(0rH(sVVOvV7B6)kLvRz6I;*fuEUN%Xxw9jdxrfb%C0?s^jzO() ztN=t+&O8*wGaQLE&P0SnwiIBU^GU3s6I%<}s-173B%MtM@H_V*WDwLi>k%>uYMsXs zvIurN-$UrZvY||!^F1^!dk9%q?_7(b-mDB19o1ZgXwYWIbV!WXYp|KtF3hkUUo~qe zzCVu*wybp7d$GuwNt+u>ZFStnpTSb@cDNv4XvZU-hD5O$l8lY}p{TtF;%>13EU|Yz zJXyS#OX@16>xpPYAEM7b(V{}Q$@&zRs^GZsKiWZk-loZd?iWkgT zoK~=?aQ>j|d*!BmVyKSA10U@Zr?^?Tuz1n@`SSDu@vIwCXXO`b<@4qg&es;tDGih# z1hvMT(nUpuvg;AiJ5X>$ykN?N2GP-3R5Gi0LEfzFS@O_%kq`xC7bepK_L8!&L1eaF zURbhdVc~-L$@B8(6l;?ooHAUSb^qeUqYLwj0)K1}4$iZ(CGgJzxB_^*Kfmy3hS50yO~XhH zK$l^>5P*?}(LDfT3}Y%(-JaP5+=M6IFcL_tFxfEX%Wqcl#PE%jdI2)&o+i*ZQj-a* zxQC6GM_2J4tW18rihmKC2f13AXm*IHPX!1uZOOy!^I=SFmciu9UxT^~viX zhdvpz8v5icJTu#$!;tpUHk}_{esjV(lGJDm*P^=6Cc^>$abkTi5VsVz4DastrM^4MD06!SPTqxLOWe z%V$_E&~$3S&b82jcJRz>z2(uhJU%6nAe=0$bsM(s0bBzdOPoUTO5n>fvW)lc_!*k^ zNDoNno)LC3)S?V9Z($i9mWG`gtju!`g^c(Y6bF~H6SQDuXe%^y6(oiH3+wCjmAqWW zyAG|!lDZAsr+vbqZ?#KsHJKWqPk==;AxFEODA%;B!1%L49{wVkn=MDV`QWfk1S7Bp z5B9cOZgul&_PDqII&Nd_vHoDyah9Dvv#RCvXZWrjmOh)(_fs;d(ViTr?gvrdJyP+u z?7E&0Pf^|<9E$qxt}<+DbSQ2CR-<7!$*%!d$?fZTCzdJ?t>-=5%~aKPkP1(XVPl|{ z*$xrL8@4MXy+D|3*jfnxMcB`<^`Oj3Q-fyMz9(^{3oU5`?n?5$#4t5%7fC*q_&ji1 zn6K9n_hGvpsP@?I=S-oaa#?6C=MF>>}MK0UELs*J;?2v2Q^`6lYH zu-geG0*k7pMw_;Kz|Lw3GtfgML(F;xAC8@}n9Q-w~r9H&bmc2$#AC{a8VqMBEI# zNl(HG$5O&INEk%=mJqi9A0~d0_%5(lUf9AD+-f|jhF3D*c)Cj2YJk;vvc;p`T3|Jv zx)ARNhVcYypCGOWZX#CoH2`lWwUyM4M&P3)-%s4c47Y6`Wtc}5oQDjC9V;v&ZU(+X z1$Gl(1MWuhQ^YO67fJpV@m=6CRG;}M8oZ7hwhxKB6PE*jOgx;pf(yfzDa}egopVFZ zujJhmn^8Xd9gqu8MWGoPfUgvqoeG(6G`xC4atyPhmaf z&K*339h4vK;N#ejGOh+*pu**(8lVH--`4Q)oL!Z-ckyY_FJM(uRFk$Bnl%AfS!mwz zF8VDW8X1~Ls}O}QT#V%5Lp;sE;N`0J-Z{j-u@iEw}kf z03L=ph&{JlNo%cWX5nrtnpp_34yye41K2nm+j5FWM3rDoGhgbAPB>p`ST@wJHAl;o zQ@lIGyy>U-7UuM}oZ_iW#j|Cqc{i+hX5lp}o>}+>#+|!`XEnhy(W1}Xa zt@8@wXtb926qc7jAp5`5d_dF;l+S7)`T12odDAL$h3tHWBGsxh7^%E_&hQ^t)NZst zdqP(lM8&@B>x#{3^3aET82gK4P2k`v8P^0hq{y*N;O8OU1x-AfK}7q-Sw4;3@iw33 zU%CD#W}W}X!D|9;(3=?+w$aVf? zSZji3K@LORZ5YGl;_DDu%jDtfe0qP3mDc-RD{J$Hkuo2$hd#jeb+`#vS0eDki>8HD z%dt235I64cw6Rb?*KnBlHWUk-%DOpd4emV{?+sUxiM9;H$Fmdkxf*M~*`aAe03D)s zIgA7N*#<&c7TFW7O7NCXumJ^WMSj8l<(=KCNF_>oKj)X!`HGB#>RDojUrD`BkcEPz zDSp9WpP(C7l^Wr%s=+6ii-KMg{eojC=z<29W22Hw;HnI6^cDFAm85(o-~NWTjXLAk z)#Q^GVZkoh^7C(ar27`g2T)HmTXH>bF?7-3UqLP<_~M~psm3xc_yyN|H6B2XkH6-x z>V~hxk|K?TW`ObINJWdUz@N~Bh&oe?uyow@NlLJ)whQG;H^I2kepOn5a+99FY?a1Z z@AM0FOJKW?Rl2_M3rwG&Kh_x5!*5)$uc~Evuu*M<0;>O9zVrf(MH$%P!^!AJd=(8t z4bgr41tR?gpp_lF_|rT1(uyX)x%gXX%Rw+eDeB^@@Rw*=Y?Um<8XYoF}au zkU@A%!})}gzfJ5ioa>cR#gT?{WS~68aF%;tzs(s-nTh${(a~DrdBttcM?PTji*EBA z>Z!B1!fl4hPrv5}%~!Cx(fUTY?GBF$r!$7pR_~UBwN>)u9UdD;+fZM6%UZ)pd)?7G zTBUogK|+EI`hky2p$^Eiv>YolskMtNZYVRUKNebixXe5$U-*INy4&GuR6*4V&*?H# zL#sR%H#_a2X)NPh4ogY#d&miai| zaCQ&mWXny;65;6wUQ%*p8N6jX=gS^H@>mXsonwCFzh{HC+=thX9kSPb*cn~*F1XK2 znOTV4RV?Pqul~*Z$JN1H2XgmA&))^p`(o!6Tdl>h(IkgG;6vb*;1>^gI{TwM_JH?l zKMK2`L_DBkFuPiLsHrd{Qe^l~{K@v$QOiovtv}WaQ^(2x-Q40W`U!TH?yjh4vS;J+p$(?qr!~3;ebYNyF zwlbYBlpzi=K-rtltu})LX(!`L*bfOoD!HY`W^i5yKK?k5Dnqor>ZZuHqJ)(YXV; z&TZ~~$lQ}xG9_KN z)@+3qCs}-djcE&(N5e%1yS}Bhh-7`e?OKbOru|DaV%sO))$K)FX8#k~{i}Dpl^u{i zL3`Jqlm|MBTlT9cTJcx8uM@xvD9KsveIpw4y@oVpi}yqf(paPskIT!k;!FFZ2m{;6 zvz-A1!lSq3(KwL{!#}=@SZP0qgDhf?e60(Nv90pkE-*n_WL#Ge#bE=C)^cZ8(be@a zo?#fOv&I{3!sTDPiru~Nq`#wjuZS|&L%*nNClh<2qk8Y?WMX9Os9rmwtG#=>iP;Wo zdoUAJ;Pzn2=PD*#%cPK?z0nh1$e%_1`Z(D;S;VXFE&84)bVPZvp(kMEuy`FXopD%v zcZH!3#Z}4T7T^-f|2CDs23#e7mn=F(Q&84183&3^XS5c&4E=(abtmPs!`xsDaK# z^bd*Qs6yX_=iK^DVmPYM>D*Rt)q!RpFdh8rJ&9|8>EKuYIdLs89c@?*-w#Y@78cht zBUN`(w=Sdt4UmBjT=i#(;gCb816O?)F&uK}cjTN@k%DIiFQC9dy7fzCHYZrkqJBIUVUJwy5)jCVn7s~-A$>ZgO?gO zVpT>}mcrTHp*~_7M7c-$3Ou_T-dE(XaPQu};s@rUW4dWLriABVw+*oO%vEN?n#SCx~ch?CJ@kBikaYCWzr|tG9WAkj&a>)AvdIHYJ~(1PfTT z+&f7uvgXb$(xYkPheM6<`v*7%e>RwH{4y%GpOiykMRk*6`*JWDT!xC_iCGLwnmWd^ zuO~UIXtp~zckDZX>AaA>yx3cuCi$LDcshLVN|;Fa{P_wLA{JkH2@|8$4%V662pjmj4#ZnbSpt ziY0s@6owGA)`}$@gEE}60=qGm@LJ+VVET5*PZBo(Um^Kb;(B0;J=_MVx(D7J^o?K! z;$IR&i_eV2~4q_ zhvAU%Q~)dgBomhd)7rqt5w8QLPx^cwlqY}D7kvw1aXXxV^P1;FcHsek(MrJ!DR-oy z)3(sU81SZiJk#$^l?m3qp>koS=w!KbCK(C``ryv0Ousu-GA?<_or>Yu9^Cn9rbu@y z_njcK(OtB1@+-vXE?POc4%X5)M$3J1#JHr@_}3FNbhn}KNwMa|x4pnBR=S>CT9hSLaZb{-+F1XkWpBCY^d?pF-w0oL@*Ao)6A<#1#g zE%Zjk6~bqsypHo>uqcGVqNcS%7%W3&Mh=V)HLY$?Dt)`QhJj)n zEf?gQIU~=v#369P?FHn7m|QXH zznp-I(9qymxcHp#e6HUK@>s683qClKC!TO#guN%b1Koa2Iv0v4H!c%mA22^R80Ijn z7`W2t)=FcoA8LuQng4I)`L88MY=vb+Y`|U><@mS}9}ROe)~XgD`&dwZUjM!W#0~Qp z=+y7Hhl5x%Uj~8x<4gEx7UT1Me0G@^aB2ECK1Z7UG5rBP$C!V>!aw12yrUHJXbd6Q zaSjEHpr2z60w>6DWVQj&2}U?}VHq0$oK%l@?81BoiKaO|M=;rBuyKxK1L}0L834JC zUt^(Qh88b#oJMdF6gkSVOgO{QvC0vTW!kbVfOU@Xs5OEu0$A@@jFLz;2Ws2k=#0?8 z&6WX`J6^;Zy0VRsufkD}qC_?mpwe*^A&H>IaRMQkpw@8)A%$SS;~YXNOM^1?j&o>S z8X4E%cpfEvSTX21ra6nypsn_~kQk}gOzsG&=I=4bPHeGej=<+#*kIF4lY@LXXe}xdQK%%IDB-<;8ps4jy!ChhzSi)U;1Kwgpy`tB#Y>fCC z3blGlUR*4u1^*r-MlGrhTjCwOM3juM^-AoMnBqNhK-7!)g2hYo3$=W>YWS!v$X;5g z6=cs{9KR?pKWk9hqgwugg1oFOS^usW`iFz!6i-OXE}UC1KR2&9JE?Gf!Q7(xxk<%y z7p%z2E-Fka$X>RzFll~a(bA=h3zG^9=F6tTqRO>u{@na5ZSmZq%-jME)ObsdfO0)C zr+>2aToX}p#`_}NnU`O<6!PSOe9`-2x8Yn?w6rj@AUh{BO}1(jUF5Dh5z!usFNmQF zzOt>zFU(tzpPdymKX-0{oZBdpy?Yyl!Fm7w^1vw(A3S;Dlwn%t&lWEpnV;jmcuKsg ud)*(3=eof5+;Lm