From cc0474554297ff69f7174ae856041f04b8dbabb4 Mon Sep 17 00:00:00 2001 From: retoor <retoor@molodetz.nl> Date: Thu, 3 Apr 2025 13:18:56 +0200 Subject: [PATCH] Update. --- README.md | 38 ++++++++++++++++++-------------------- http_curl.h | 4 +++- openai.h | 3 ++- rpylib.so | Bin 85856 -> 85856 bytes 4 files changed, 23 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 4029655..7999869 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,24 @@ -# R +# R Vibe Tool -This is a CLI vibe coding tool written in C and is available for Linux x86 only. -It works on OpenAI but is easy to convert to Ollama since Ollama supports OpenAI api on /v1/api. -The tool is made for my private use, but since it works so well, I decided to publish it. It contains some experimental stuff like Claude. Claude works. +R is a CLI vibe tool for Linux with nice markdown output. It has agent support. Put your instructions into `~/.rcontext.txt`to describe how it should behave. Tip: include the saving of files as instruction step. Use the `index` tool to initialize only source files and no environment / node_modules files to continue on an existing project! Good to instruct that first of your `.rcontext.txt` file. -If you need some help to get Ollama / Claude working, contact me on [Snek](https://snek.molodetz.nl). +By default it uses OpenAI GPT-3.5-turbo as the model. It will use my limited OpenAI key as example. +That will thus only work temporary! Good news, Ollama and Claude are also supported -What I vibed with it: - - A part of the tool itself. It had many example code so it was easy to add modifications. - - A web socket notification system in C#. +An example what I have vibed with is [this](https://molodetz.nl/projects/streamii/README.md.html). -The application has a built-in OPENAI_API_KEY with limited resources, so people can try. - -## Download -``` -wget https://retoor.molodetz.nl/api/packages/retoor/generic/r/1.0.0/r +## How to get it working under OLLAMA +### Ollama molodetz server is slow. +```bash +export R_MODEL="qwen2.5:3b" +export R_BASE_URL="https://ollama.molodetz.nl" +./r ``` -## Configure OpenAI API key -Update your bashrc with `export OPENAI_API_KEY=sk-...`. - -## Working on an existing project. -When starting on existing project, use `init`. Now you can ask it to make modifications to your files / system. - - +## How to get it working under ANTHROPIC CLAUDE +``` +export R_MODEL="claude-3-5-haiku-20241022" +export R_BASE_URL="https://api.anthropic.com" +export R_KEY="sk-ant-" +./r +``` diff --git a/http_curl.h b/http_curl.h index eb9c5c3..7d0b1ae 100644 --- a/http_curl.h +++ b/http_curl.h @@ -76,6 +76,8 @@ char *curl_post(const char *url, const char *data) { curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&response); res = curl_easy_perform(curl); if (res != CURLE_OK) { + fprintf(stderr, "Url: %s\n",data); + fprintf(stderr, "Data: %s\n",data); fprintf(stderr, "An error occurred: %s\n", curl_easy_strerror(res)); } curl_slist_free_all(headers); @@ -114,4 +116,4 @@ char *curl_get(const char *url) { return response.data; } -#endif \ No newline at end of file +#endif diff --git a/openai.h b/openai.h index 112f9f9..257998f 100644 --- a/openai.h +++ b/openai.h @@ -46,7 +46,7 @@ bool openai_system(char *message_content) { struct json_object *openai_process_chat_message(const char *api_url, const char *json_data) { - char *response = curl_post(api_url, json_data); + char *response = curl_post(api_url, json_data); if (!response) { fprintf(stderr, "Failed to get response.\n"); return NULL; @@ -80,6 +80,7 @@ struct json_object *openai_process_chat_message(const char *api_url, struct json_object *choices_array; if (!json_object_object_get_ex(parsed_json, "choices", &choices_array)) { fprintf(stderr, "Failed to get 'choices' array.\n%s\n", response); + fprintf(stderr, "%s\n", json_object_to_json_string(parsed_json)); json_object_put(parsed_json); return NULL; } diff --git a/rpylib.so b/rpylib.so index ae413e3a3e72246b7258aed19376828fc83b0b09..56cd075a72959c647cb470c81ecf1853fa041574 100755 GIT binary patch delta 28433 zcmZ{N2YeLO_W#bpN+^L)k`NLgq1PlJ7SN{z4Fm-R5e1}$_JVW_iYP3YtPsK~aD_pN zfFgoCo-`py3y3TTYEYCQhyn3AA)vtqHunEL=iZsSS$=;$x@YE|^F96EDLb1fdBaok zhG*fjYNO}6_}}Qci{4DGntQL@%iVe=#i*V2hum|hh;tvP=QsBZJonY<u`##*d0=2t zs|Cjo*LrRH75BZB43C&{TkQ6(w?%o38r%C;54uI4>h(od%^Su7ky$G?E;v-`TP=y} zE4Ry4$5qocT`U4OIUt8yDX#lA$=xju)`~Tr6K86rxI6C?)uNK)3dcy9L58F&sz}js zqHk1e+_3#}^me7_q~cx_bHM$2og7Yrar)ORLSnaxtx>T(d->$(07+cFYLeS^uN=5b zjrUis`!eOgX*FKOBjw9P?b@+%W0%U|-ikX=g|tMZf!i-n4%?nIR9GRV)Q;^ib))1q zuOsO+<w;ZJNkgS`7;->K>@RlLPVv6`njDT*nTb@<HOP|VYgE+rs!P<m19H5*()OwH zu%l`V+qb<+&pMSK<+|&0<yB>w^ER#|r6{hdH1NhSIdD^rcTkDDEEd&?HFk=PbyDKm zzbu&^<@9cay(+HNiH*BEQ*!Mj4pH2oNU9qfH|HhEZKU*ntBO5K^ac0&Avye>()_+k z@j@{N-1DO(x39uBQNiyNTkFQU@0%$;uA3Z}GFozTlu#RG{-CH`FE%dqDLLF+<@E`b zr*e@7?gvjxZU<%lMTLD;OsN;!apfe*{k4*$->O_TSN+>X4!d$yNPXWCAJj{Z%g&eM zc4@|_j1Cq?bZp$Y7bSOu0$*0(fucintYM0t(J6874wcOQN~W7~dbL;t4a2;0c!J{g zP#O-3gW&F&A%|`2amxBiaSdG0KFRH*u>Yuxo)AefvBp`^IVQzeCdT6Pw0J$HaqAr_ zZ5x%1T;=wk3g2C&<e0bs%wkbHHpQ4H(qdz~{Iy<+JfS4Bl!m*f%K_WJCaTd-szz^7 zY5U^XYDR-Glc$cIm_5cda@y4K!$xO5^Zc-9vZs!oI(5?2?K|sli;P=%QtHWQE^CJr z@xKBwr$ubscZxe8jQf+=3htAZl+6m`4iXo@9j3U`!?+_v?Uu1|V-$B@7<ar#19!6G zE(_ykiz(pFP}~h++#InM+<A&y5XOB)oCJ5V;vNm-E*D0t*tpe-TO7uHTXX<-qvBd& z+|42r+^vdxBaB-h7PX2MiLE1QN3^JzV{{sDA1Pe@Fz#`24csEdZ577-QY5vGjXSHj zcZYFHL|<?(DQ-p>_p+D+?lr|75XSvoYz6l(#mx%i-V_&F$BM~qBD~YXIJcF`ZkQc5 zUQ><F3mdPk#utW-$EfjTVdHUXe2p9z-ZoViw~eU1Axx~PSlcExu9Xrl2;;UDC&5is z+@oRKJB86UHtv4KEe_-M5FNnnt+-Ygx1Y!acYxyF2;&YFi@+VJxDhQYHbRy-*fv)5 zX%|tuei$cPTmx>p!nF$H&J;=QV&h&?+`GfLb4A~Fv0@9fW`uEsm;>B$g&PpYT_?7J zyGe1g!nj+-1#tH$?({Hjp{U(HR;+0sQF~q(=eS5~k9JnLWntV?VhXrt6n8@y_q<pe z!Yv5no)Ra)J+H7w!?<UJksKR$N^y(BxaUO&aDTiZTh|KX9v7L(vEE-4*VU?G)jaC7 zF(Pby{b8xCe%N?*B|klEyonm09X6gS$G2Zk{<d{OR~$jCMc0GDj6C1MKS6T#5pmVZ zO>%GldB8NoTPt@C>}KS927g2Z|1B9#g8s-A&tf3&(~P`80eNPfy@BC;Pp5FX7sKSX zLoVO907~)#)|lVO_95W@Mtr2-AK5<y(3CX4#F~A}$SyG3e<4HCU+m_J_Xi~zQ^n~) zsqVGqV#|OQBIPNM`_ixC&Zi#kb-kR08S9TWrjgHIk(Qc2lQvc={onUH4IIkw`?kmc zf61;GU_0^2Q}x{+UK2k&)zLkyT>LaJq4wVthR#99a*;5o?L?0>${B^JBfmn3BhJ}J zal5iRI0@)N!N6+1r|6KKfYxD#pCHfjo%rWo<6T?(0C8b(1EaV2d+@yvPbO`?!t6vu zQT`KYK9b@0tb2w6QDwS%B^WHLh0*`WQELH8urMP({l=(_ww0T=Lc+5>R^VrmGo)4B znMhLUN~*!_(2P+2^P|{5q*c?7touWtj#4h0(ymdQk(XYAp%NNeBdQMVSo623A(n@W zo<pbix$UvvE2GfqH>7Vj`u<*-<V#2ej|QwxKVsY8NA4R%wRXDhP03Dz%g2>)T@uJc zsXV*;irT}P4G@a)0%`Gka<O~t!(VDO`m=vV-uD?fSGs28%{*#*yS|Lj>BZPD&hSSc zo<cryPuz>#s2~tbz<N>mhqb7gPVy?OGnd7|VfE`YmP1xXPN6}92g*d*u=uu%IV}h+ zXXXvpw7LM56SoX%xyQ;H*?I<u4#S&xA7j%2YY5>`wifXHJ~h^pby19W@yL;kywlcU zl)kJQnq?2paxq(m=pg-`$_iO4L|ge}E`aryld*qzgtb+F)>b!dzc5C`c|BvLTJoh1 ztPE1Sh~c`77*z{c)s<`cp3WqY7qu`X+4-Jkj*@BZ;eL*CVKlh_#c>#$q{jNvSbp@+ zIPuNMb9-UZqD?FV5UhdSGjg}=S!^%CcD^g;hLN3$y#tQmv`4X9q;}!n1Qlz(X9W%B zMU^E(;8iW(7`yYd{J(7Z8lG_y0Dk7;5pCS(e-!OTH1Ling_n8hMJQg;5pqv<eZ0lP z=%fDBOGQ|^vT#unx+YGSS(D9lnPP<)T->4?jrWI3UJ3DXIlJi=WG%GkvFVAVll!v` z&HOwx6&edkrtyH~`$2p=GP>n|$w}3vZmEvvW`iJFCW@6oc%Dca+1SVuX(MC2Nk81; zfAaK-{?C$%*#DQL0rqz%#U*Du?~e&FKA+R+`2X2+j{B*!EIRH-DF5@t`H?Y^J1CjT z{Rm-<iZfmj@uM0W6U9BF;@V%CUD2=Cq`h*AznFZ?!=zKQZJwAjs{Vav7!k1k{XfY) z;z{UJVd1HXU4q|6rBDk`7jnYy`Q=e@dQ|hF<GDzffi#PG!hC?x^3t#5%)H{7)((Or zl#!RNGH!+1eTH_GH$PlL`i+HTA#{B$zbpogzN79L&Lf#X>Dfd}@#g51TC1fdd0_g$ z5+$RX{(IW@Wc-}1xCH{snR(8Y-54VlMN*GKRVlpjoxSA5+e6=D2tF@TPX3RopWmOn zs%NkI7m-#`V?xq{)?OGxQmu?YdWj4Fq$fu>)#NU!&hFMjsCnrpa%P@zWmjXN((fS- zI}OBVW171!m5JZSH1h6XV_0sfUf9mLF=|>g94mIZ`16ZwumnqIi7UIM?Q|KJ4~IvZ z3z0i<aV@8p)r9ie3U)T|Sim}1L2`|jL@JUgFKm3g%n>*3Y%)oT!?G|>9Q=2O?wz%U z704XcquLPOKoP7!8cOe^Q>RQenqDN+^8j^a9;K&HrDu`2JF8QT@g%<<r+L=r--+p2 zjbqlzm7@d-kLLF;kdu47*qrr1;|#<_HfAeb`MpUBzSBvDHAB=I8||$JePc3e%__vl z#6s))3({;w(fbiy=_;y4sF95&QvFFbgS=KyUmcjT@f83CP@cyJddJa$9=M-(p8Ofd z>cZ801WXwn%f`&4dIhXe|EIM#Ahs|ky}%%YBsM|(JvP3_Nx2g6$d>@3S8C;^--O>v ztcV&ppK=_qE`7_}SepA=p`Co?dolFsJ9>YqnnKU7rpPO1k+p)8mR`<Nr~`a`9=Co- z<5bd~M;%v=j_b>#ocoQU<muMlNr)JDhTRS!o_P%_VE%Z)>C(QGA0_k~wz*?n%F-on zdE3%$+ETnkm5@8{oo5YL@_DL?e-2mm?m|{Vj<`8jQgM1CPiKG_NGYMItL*M(=MYWK z%yL)u#Eg8;JKL!%@LzwLREr#UWf!-W3j-`taCH7SmnGEs<NS+W)=%s04f1floKn19 zQ+kf|GGKj9@fxA0202%vpzS58&8j2)Bs(nMgewxTK9K%8>v<cg^M(_#cy)Y?kt5cR zPpNl1T+Ya^=axG77`afCj_=Vvi?d0`WKX8t#HpTVu-q)c=1{qb1b7CBArqRrf4?Yl zCnUR<UKIZfjuW3u=wQqj!3oXd*1?@4>F;4l^Ci-eIj3*{MR)a*_}9exJ)cG}`|Hsx z!&nS0nvPf&4Q*GQkBbTdd+J4z=t&&cQ$vyGE{QiL##T$fSXmXg)KDCl*s#eJG{}+k z3y9Fy$2lp8-kF92m%kg%J3X7k&55yw5HXY5xo^7w$K%DYNlm<gZ>U1P0(N&F5!W<2 z>*|5KkL1*o2uZHh&*A2&b(C5x&sPY!(jZnfm^;eQ!n*LYErU3<t5FGGVXa*H=Aoic zgch1nvUu{Ky6c`tUR)fk>YIDTgvn{h>3fqKM>U|%&-d{;Km2Jc&QHF*)?H`WjbbvL z@5vL1Q|hNo-UUkruhzevBQ|D>k0tz(Tc%SqJT+T?&6sY$#EMx{B2t@Z+&kg8@fvsb z4C8*iPb5u=5htcZbUL+D8q6u=lY{=@;C33EC&6z@aHFXaonCUl5tQai;b4nTh1lb} zB)AWOqeavtPn+?4W?9)y$QwL0LSlVWBd-*TH>SqM+)lHr@<Kkfkd+3mkvKlJX>u1r z=W{(tSs9lX7iqF9ia5Ux*Dn&DY0$I|c+UKy3#KS5h0BqCgB!(4J1;gr)1XT<xt&K# z7N$G*#7G#EB6-E(ydDm3^J!sZH*ilmEgEJw=<@wn;gY|=N2%oxHXCZ;w8PtXMofX0 zlV1xzwEV_#g-Yf)l09$n<=+l(NU^w(-5~42Euo}1BA(OX4%T&e&)?$UbtF$Z|IaPB zv)_o><Kx8Y=c;y$<a-YR>nAj8Sv#bV4;@L=x^(u+myESBOaJ1l|9}<vT72e<_NH2& za=Lge`(E)jIq}g|hj8u}SQozx2CY>RKr7xp1(@LgFdDf_1GWMHxp$S^V-@5MX1l!h z9Lpok4@%9nfNoQWBnN@f$f{cN00PvN0L!W-H*ie#cop&oCtDbe{ETl$@Z@MDeHun` zUUcw*3WCYn#P6rze13m<sPadS)tqyZLkB@}tH0(P0>|3S8j*FsrxUXR)*#1--P$*( z(q0^Qm68OlWEPYhz^d=EekDUZBgl?hi##PgC;^yK{*MkXjlgu%&)VgHN#uJi(nx}F zOs_+AkG#hBQ8+o3Pl?$t%8ptp@2*(WQ3Bmj@7l3B9hIx(`V^~<dXnvOM@>|`PFx?F zO=K@Y+Z*=<^3_5D;H9S#dx_P}0g&%qHJ}RskgKHR&QdWsK_vIkRNYZ^Nb@HoO;?hB z&ppbOcO3+!bTQx6;LtC84!}wYuq+`rsG}kja<YS@jvAnm?*Iw8LXxA7%BUc?OAC5Q zP<PbNnloB*?2bCGIS-Rtcd|zAsC~=|Sl>C-wL5AKtvMkb^|n@01xjQ`%_KukN9Ajg zODEYkyQ5y#oR7hg9o5wVQ?@5+k#{86>8Kfe2Zqz?KZ%Y?Oe>QS$n(T$v=VJ)c)+>_ z4$fTFdD>gtUja)N77?rQhsDqtG2T;Thwhd5J!O0|Bw%gjLfNhLx^s)fvWk$nw<LgC zYp}96+W}Az`!rw|0Fdjd<OWob3y_>wo)ElBnjeyyskI7}D=i%awN@>yc_;zmB*3zw z<Oa2tPa&^5iKW*1aw2R=Q_ZAL-^)8%UhAU@f}OO9zdz&h*^AXVU4V;{W4G2*8gmpJ zYddS?)_O-;v4%TF?AE$T(=orl*IuleXeGH&B3tWEGUT*Ygciw^9@wo_NppG-m=~*k z4w$M^7Lox8Mr)-P;l^_0b$s`&l2c81Urg$D^iwjcu0Xi6K4k*|Ya;5QJ1dbpFks2L z>drd)nHV-B+S`{M;MU4w69Frk3uU)fj5a(PCapvXpw@a;8T^N;<*Y_sG@ujt==Tg! za$i=EdywQ*Yt<ml0T~gs)*Z@~bq<1BYr%LY2WLM4V5tOHmS1jAYq=HjX$MKI^_WJk z1rl<VrB7a~TLr<bTJU)i)T`DN%^4;+c54-DPCB`j${M+~b}=hpedCnbZmk#O!N_T? z)mn)GC9<`iBSTJW`LxLS6YQJaTC+9hFgUWcx;S8Jtt>6FR)V>;qQJ@?=cIM+2|f-c zc<XroWO!(Q6{*ygAU@q+9cAvF6{{QJ)K%<GNLDxl?rMEV#`AD%!tePSkD}1I^cvPc z{f5!Vc|7{5mpG@7Bb|#Sq6mm=<-sHefzinSNCW}a0|2=vm0XVsayzx$EK=NADyB|; zN4XN?0KAm6n`52K^d>}vM3h)TvO~86;FE%$bJC5`$io_0SNilT7a(Bms36x=`&9NZ zB@TBF`0UCXd0dy}Bv{r0X%p@2F_g`*jxLNw_SH7mkS@Pxt+JU`L2iqdn=WnA@<|iy zXFOP>78&nQ$+BDQv<5v$-lVWfZt|w=Xuvwh*`YexO+JHG62E69s|{FtZV?zr0`g># z@;y@<@qT;Eo(28M6P^VmGg8a!g$U5x$lwgsoHq%~3v7J{Os&#gi+CltNVVN#Sx)Gq zi6d@*t)Zt9f;=W3JrH|m!1^-4_bU?-Pj?mYOEl5_o(I+LTae~20UuKXi-q}8=7<R1 z<LkQ7R6<|jw7c<zZ^3l}`^x_U;d>X~p{V;^m3dCcE1zd!(h>17AYT%H^bfsBkhR_~ z2Ia)JTdI2E1zKwSp4ZgwO60t>H&Q{0$RuXTbg?$4z5CBkMNv-7on4h+HNxflij+)s zPLHox?GC10zo&^3juZ*Gan0^o;d0@7#N5K{gp7R89oWmrk8<p=Z?na~+$Q)Q^~Ky) zkL{pvaI3?2=_Z@9b^qrmc60WTWfvdFa=1zXs~^&ZJ2%Ryup7!xfGLvp){R!ze8orT z9^$VD=m9z_Uo`U7_cn2=E%UjJ452$KEJ;xZ=#Glj9dOKOb;(Foj!<5_NS*HYM62CZ zXsEL8q{hA#V^vdSrRz_$KJFHB;o>~;3d2jW-`Raid<ySINQ<<FJP)S{cRxAEola{= zOCII3$!9;pl<Ob?v;h3T-HPwq9RMu=4{Ja=0FXPP<o-tvv0{?zPjc$W+mJLDlQad7 z-d3)>?;tQ5xoRXi$gW&D3_vVCw7&V;?x)1i2hFt_w}Uz9mYsYre}|lE4Ux8sU^|<o z16CKuHbx_xXdP3?b~_2cTHr}g;Z=12v_f>(fUaZ|>!p&rz!{_!syM^zkL;rb>yzd$ zNLpStr72goI0#xFmyK}J@WY1yyeR>e^}5_Zay>N_@>vH-DIcnln}LL!_p5))qCZkW zaGw_Rk)Y1yX_n_2jFTMu1mu#&^d-0MWsO|UH<gi6PFm>N?43(1qrMQ|q?JTMi97+x zAw%3Z6#gPDa`_O0?W4m2%_#y$F1_6yFjXa6i)<z^uGs8_dv>OiR>6AHi|j5@O>!@* z;<MC#EF7@noQSAN46ULMR9Mv|fSP3e7@22_Yb1;Bk8JMMh{j~p?^&h<3o8hwXu0bL zp?Mn#%O*)wuDt31C`-=`ccM8$fH@LiS<~ePHObZCe8nEH`a4kSl7DIF0ze_?S3b3` zAh%M>jUqYSBs=vH{2|G)o8&`{NhP<u@vM@&WR5yOA9X5bAHm1)lIh&7nXi>xDYTnp z1Q~LgWU>}H1`+sXH_157d9N_&RbA5DK~tCX(=rPr+HR6z!<@8EWzH>463?2rNjkDH z?)h@cspixqB|{w*DTQ9-;4&$qhgSTaM^y>}4uagNtc~7009h@!x`JFyE%z1VtVL2W z+QCD=Frc-4q645Nd19#7@#Sqo43`MYdQxssmz+@0P7aisBtb_pPWseI`Cg-f+zVRn z0g}^A(wXGd`rlfz>@ImzgKCjmf6AQRfH#$um3N$i*-es8>y2JX#%dkM_uEa9Ms}Pg zd3310W3>S?Azkv2M!!O6!-b=BWd}`F>8M4<NwD1{_YHBf+Lt-EG|8VdOt(_Jeot+d z#$^Vl-0qSCgB=|;A#5F!2x^k*>fpHE0gyZ2X}~x8pxy8JT^$2vRgk-?<=)?i{<kJe z&D165nHR8nI|%BMJ2WB}nyvdKz_RX?8`LD56tb>^q$c_6DJO`Bq)%;??`0~LUb@5N zj~t{;G$BFVCE0r6i;x_<N#<zGk9*<P8CJ<F$^B|ceAy|O-6YLuxzSCM;nhmsg^~j( zv&%{(Lr#|@YmvDS32BnnnlpjG+$7(T41=jEwYA7Y5^Og~L(YwtkEE&0x}{6buqs|k z$_G&<1J+JXx!ojh@F=Uex(6xPAOX}Qzwm($j}SQka_5i+>;)jh@AZ7C1cy`*JfQ_& zBh8OW&D13Olq>BV05wTH4H!v)MiO9I(Q<>DWWGZF?BuuH3+UGaoi1t3PI=}lpFY-t zkn5~X7$m2gq@P~+e)xbnc9RU(m`}j53RojINh1Q$9pllC6}w9+(GsS+q@`Ap2PLve zf@H{Pl1MEwMtWc$Zz43O7lFA+4%uKYe}hmSk^zafyX5ZyPHt*3C#*@jS_Q0%Z)JSO z!U1aur<|JPDAG1lt2nV6DVQq(MJPzGOs{OKQ4Rvbk!v+#1rQMIq$bq8734N)xo1do zveZoNw^F%M-2qVh{qm#}O*aDkv)fBaOfRv1B|Gv~##jYCNj2sK(`CqR4ULdK$&;;s zwXuR+eeF|80Tej5G9o+bRrv@w)*MpfrF)lHDp`BL8tUl6Xk>S7a|!A4d-n5*LBP7R zg529$Zi2LF-^%!q<#~eklN`G(PDqTGCUs|Wrx~l{&YaJSM!-7B`J_79jX8-HG{0wp za%0Oa0*{b@>|9FtRPEWRU3TX_M4oVBi!(;!yA&<66*55E&DT$JOhR+(MmlI}m3y>E zwglU^GI~7W)OwIec`eD9F8aRKu+Q?HWE@@3-<?Gl+)Gk?k)BF;I;G`jq5{@rGDMGz zO>2sfALS_?upXjS$M2Cd9#1KW{jW6`kVs1D<`I&)<9${m7XaF)GSk($dY*TkbU=L< z($I#{0uH@Zl$o2zY}q~H+OX&r{bX0)P-!j4Lks+UzBJdIa5#wJCP2&+YzH<!+o5dw zqu=AR1P(AxS`N9me~_8D;-(eI@0q7|hm-Mi+p})s^pb`Nhov1f0-p4wR>32RN<2<P zEp6FiT|Ycv(iET@`CaQbca^(b|8jM8xu#Wx<SgRR!zZo8kfqI=t>;OJrs77KMzuid z=*g9)5F`ty_KNjO$GVU07PZaEMiudr+24I~yEtREFj_BO_Mnj~(wB8HHj3HH+8Zy3 z|1N7_3>U|iJ>b6DN7Q`1iBVs4c)e}ERehY=)<$jV@scOdLb#JsejWkj@G~egw9pmg zhlJ=yfe_+nSNzdWYJuZB#e1(esz(PP`>scU3;(QRTf~Le+tt1HXgC9pnk-K?x`;=Y z-&J?|E!-&a`toi@q&T;{>Fuq#dws>^84~d4R!XtY^{w2kE*p%VLvx;^j};wPJW}Q8 zHq6~$wu!kbdPnboj+`68Y4wol&1w~k5~V8=ydznA`mzjv?~)Jd!DV$D<6(?jEw+#m zU-3;4++`vH4_r{pvs5ztkzF2fV4dCrj~_+EGneFP9u^5(ZWZ5?<29#-lq>O)!Y$!~ zbG6{5|B^yqYLIl{dXVQ(z?vBj8KEIt36k#{t{{sU65__aTJ&Y(zv8{svF=aa7Y$dn z?t5`NBMTAeemCbLV4Y`6_&o(j?K>)SK_cW&D#d}0;L(cDwZ0F4=)9tpIIyZ}jSjsi zMLgNw7N=IFwm$_f9`B?DWInG)0qX+IO~0ojw^hJ$L!vZ@j<YgEhc_OHsfsx48oCu^ z^bT=(MZC8_&gxr=xCZ0a3!BN+@FMmn$3u(r>cdVE^ZrAQ$Y&kfhs*u^kRz8V<zx{( z;ezM1U}qL|iuf+45)bQ9p+bGwr6IQwL>KV~hJ+Mxkrq8`Y~ms|*-l0D-bDq&lSrXO zyq%p3Sn;x<!;0vWw*IdoRs$gHUd#1O<TaoB)?_EJC~=DEa7fopk$ZbODXI=(>xe|) zu;;1&II#lOTMmK_h9w&C^}EoH=W*0>CyPg#N$#?i+Xgvnf>ccBzGs<*qmb9pOeen` zHDV4S?v)73x?OJ2DaHl`jdGB5ig6>u38IJeDM$HaQM#yXe1Y_&w$Pa5aNml~G3d<b z-wfdS?je>w<C&#FWgFqvSFDmxF*+(MIgS<k6eEcX>)dNe*E-&T4teg|@LjL%9EIOj z%j7}^9@u9&Ei~t8Lh~6!3CVC|l<k^Yq=y94@rceX8tB}#XHLkuua}-=OSQgYRoo?4 zd&rt^=akDX!7tf(l#_FL15)s|1W=RQ@t6d><N(N>0~)X!0LV2_a)UzUyphMW;3Cr8 zOKPSr`9QhS+Cfm3YHPr70>n#zWz~@z)Fg8i@+T^!Q~cB2ohE4^eX8Qc!HhaQP(koc zZQ|xTTnM{K`tZugdAKAw_7&0)jrkZH>wVV9O%l(bfHlG~VmFD)OH*B6AvM!VUWO9c zC4ZA44uZn3rbR|d59}uKXiiT8bCVo!z*Lp1AsJw>*Evc3Bi%_(4Q7ROiENVhSrs?Q z2^J1mi#g?Xlg!X6j;%)uawUM8<bpa(WI6zH=Z$o)V{{o15Im^_J690gpfyh>&26P- zYLeHLD-jNWvQ++{qxgOT{7KqzU1VL88`LCYfb>%FKc!}Hx@4z@dPvysnWB7JUqLQf z`}ED*kkc#47y97zq2$<2a<9g01jl;K%PP4`-e6R~N^`8(UGgoj_|8&NNh=u*C9+A* zk|C!_N_7m~qz87BT+*CY;M^m-<P8T+WjUc`JQ8g$CB+XoX)RkPR<CdFt%qe8X9kH# zQ@WZ<N#w5I^MKmzhQja{seRQz2MmNArS4<<+*<wF1P*>&V!O2}X~U1LL*gPOpx6sT z4V2!?Tv|d<5G^$#2?)sj$tQjR>re%`4qEPyx1f0k3CnK;nkZKmIRI*{=es#MIQkaW zZ!1S4ENh0`px*k4h437?1I1|M{TliTY(Z|d@+qZ)+#6bM49V%%D$sMh7jba>vU}?z z4eCgNG-Q?BS~-jgSRXrOwp%NUmL$FYEYLcBeA8~NQDn$zt*Kh%_?yB0gtmKYf@W<c zG%r9c9W+&?zZQ7~A^_X1m6_(GHCse)Oo{Ep&iV$(Q`iV~3Y#pR+L+=!zlL1$4acCh zjr8RCvZNdh;Q}m%&zkuRwi~ay2%a6muUEKAXcGy+qNvyO^=k?3vDAXyBV6>96!p@o z@dC>(Nes0cS);2HMO(BvW(K}S_OT2g87dckPa@0l@57p+PV_zcrYJ!DOIlUXcjJCX z-&w2+bXk`h<r4GWZCK;HW^E8#-;MDel!@pg6|f%vk_^sA<PE(fJ<WQuN5U^=!mqiE z3|J{V=X{e{gJ&R~)Rhke+yz-4gzO$}tAiQ&o;2|JH!@4uWNZH&Yvd9pFD5@EW%yYJ zI}qKQPd>RI)x@Mt3En>1qeGCS$R4dl3VmG(0ZV5o!Js*^kumpVH1g?|LwXf_N#Scr zydBjF#^c;hJyVcxPft1(d>D$`a@ZlA@R^=n!&Z~`5QN+p=(f`BHQ6~8&SYL9Ih^L} z#N<u!-f{XA{~KA++@~ePj^}r7+JGe&Te_!c$3wRlztM~CDur(&@pe2r8IMJhPV3;- z|JZ$X3y9+B&H;zSb6FqmXS~7j6cg}A#8&!gWN17wJTEz(u5VF1?OxXBlQ%FEsXjgl zvE!+&;@Q1U%-LMe`?#Lk1qzTZ0d@c<DW`eq1qh&k{7908EyR8y?Ps#W5dS^e|0S!~ zf0nCC{+HGW_5Wn|>e!W+tWUkk1zD?4d+REH)<}#UKs)va7eqWQ>8^rZ5Nt+H(hJfT z=p0JGaEZ6$xk5S3OJ4*3*O32LWW#O1{swNa7ui5aK#96(x2)uVHW08G6qQ!45YT^F zk_+<eT8?M0Zq8)o&mIa|PnaI;4}Lx&8)LSP2b+<zwe24fFvatN#M|*yk@3uf|MSSL zSlMt3vA>YxF<Brao_loD9$&%nEF|FlC{}4>sa#E%L%P8htr3%U#McNp8}BKiw!~B& zK_v#dnn>9a?_I5zw@S+0h1ED*+ua0~_e~CxVM%~~nS=LDm!nKDx`t&#JbzFh_D?Nm z1-5893RBv=fwZN(@20&sSBv)B<J*3tv-v12QZ~<3W%usBDZ|L30>gBaXuUPQ#@qLS zDWAEiD*9|qXf{Vrmka0{QZP{}u-o&`6=LDmdhSar#QLp`vUYGU$@@h5PQy?(5)zkN zt6ls$$2FWX0Y56CK&9VBu#YONMP0}#ZnFL;EquT)<<mCTYqvtzHBvdZTq14fT2Q&6 z_0!d2{I&+2bMJP-3!rN#n#U!;u2u<UInQ^utP2ys8;Aqjq8pB4Wg$^S=()E{T-%n= z_%Fm#dbUca^U>P*-lE<1gnmMo)T4Y@ED?4|8nF+!JH~zNiy~kAOE{!_wHH~cBRQ~I ztk@pk`KjBT*i00GVrwS#+R4~Lna=aom$BIqFBd;;Z|wefsfgN9@1c5ZIwZsb-QO7| z;Q78*1V>JGFGH-a-xeC{f_umXE>v|faYur;uP*b4vU0h7B*OOT9JG+OTscc_P*>XP zn@{dV#<5zynw_b%RFhil7?!dYpG!u@1UgHGFCpc=2szAzipgmRiE+Pf`bU-mkuMPt zJ%Er)S9?NZjJ?B&vGxjDAtImDU2trbSoD5$)r*uV!0{W&_v5`?8Nu%7AWAAslvHWE zzmnyB76qR#3DCcDyZOrHC=-k(a;PERAO06P#OfcXcyYg-5D@(c!IZw;pmM1Dzjbol zk6ljgw;iI-1wX?yCHDqPh+QL#k^+4T#m1fSHM+9~wwEW0cE)($WVXDMt#4?zlesUJ z-ZO!U7944a_aE~&Lac4jYwW!(dK?N$H&qICey?`EA&LlBeP>+axgB-Kj?``XCDKMg zjF3<}h#%RXfVEUk@Gaz*(`a%pa<>lcRi!0CYOyP|L0s4s?fqQFRw!d*g4o(|9ztR( z(tSHzaBQ~dNrYOu)g2n!fjgbTG)0N=z-}LTf|@SdV1qP9<WVZd0rnxp+DL8fm&I(2 zArKu!)*h^2?L03ZJX3d?+y;N^HkybOQ3n4q*g-pkbE!U1mm;d|j<0c;{pG^75*>EO zc+;5eTPFQv0^t=43FKQNN10&sBbE(uek`w&tnH6Q?7S`dG%{EEko2SvX~CCl`dh@k z$T_vaS1xg6cU`Yr2azosB-f}Igr5ol5AKjF#&p)G&Zm5GFY;qOVUv}XJ@mzez7pxd zT70u*R7{}L@XFzNa+nE*kMn3qu#-AdsX5pnr6=EKi%v%2%KG7=<@6}BhyUb7i$8Lh zGf!k!JVE~B$L~ChKaRpSVnd8n*G5)|A3vz?zG#YwJ$H1dj=l-GtPqD-OVYFQ0Q zPkwX@8q0ITk%UqBdqQ>VOQR>*3a-`FBgfa4ir4ovbDv!*4(v%X?iLsJB*i`9$nYh< zeFgv7QW3wm$@qB5Ew|j<7p#hZJ$sR=o(KQwPC(>v-41cDl1K8}*L@X)c59(uUm+pB z^@K|yZtJwA_`PoZM$+*`G$Hse%T#cxn)r5aqIaNVmRnuP6ieZ1424UqU~Y>}=#y+t z`t%nEVmtn(o)sOX5boJWUu7t}RRak?rkhH?YQnTvhkaa|_|1PyMBQk{BR{%&Qps|- z>3p*`0XrdoODf;<pG?_FeD^Egvr6qEylw2D$H*5q_tj5W{_}5@>2EdBQ}wUVHY8?| zM8NZc=(xYdos=D`jNC$sq~%CX7^X8*I|s#gJMI1V0`bcJ#@_1SOT@_v*?L7w7A&wu zW>pY*PKzvo2%M{lvdcf0QjZ3lo_Rt`j$=tYERQu0eVmAsbtnzb+fuH3z`FUW=yjk` z)oP5#<*9h)z`wj%91^a6b7mfOO-qH{ox@}z^A3JcA8PkwUBQhI&zpCV2|UjSZ3P%| zl`iL%7Ep|)$=)i0nj+V<6sVb`)a3W4%jr3crlo+f)-|QY>neSm)cE^vLCK3C`F#tr z!;3~F_fW0eKgff8PqNZTOZNZdP`vFco~z&{rps^7Z}bEK78OK*%LXTcrYeFM@-^S{ z8A*Bb>%%Tzh7ac~ACbFfKH#tsSt;qw_wciur1QuD(rNviPs0)!Bg?>d0WRBB^-NY? z;Ew<~lSKyqJFDco23~6h6v^Qdr+dD#w@N$14J3!I(J47o98K2GP=X0I4!%`UmSn02 zIx<pip0;N7cD(yy2<HfYqb@Qo3@|VR@XdU&>R{Z{FU_M4#6rLiu5^aY*%D7VP7cZO zH9n*SthHoF-5BxBR}q#yg-{AHTmq}V>w`}{849UwEfNpKM1QWdJQSiOSv-8Gk^4Qr z7<VYM$zC}<)n76Ck@sj?q6B;s@5BP}<Dte6ZlWSdlhlNf+N2>h7t&8=a@TV+$(tSp z1hF6FLHQ#@-wzXe2VUk;=ib#jut<Lg2zO5IN#Fb8XZxYSb$~vsE8IruB{KPq9M?*e zYk%j9{U0VgcpgcC!*DCQI0dDUi+M56#(*_EkL{I10_%LhD(7yi_=o@$H98z$?JvF@ z3Rt^d#^2{^CB_}DS*uVENe?d074r@!^vabP!}CHjEqe4Q-!pX(cK{ri&GNi#H-s4D z$`WClj}8rF?BomYU!E(<568Ic<dZ!-=zFCDxlc9ao5zJnbYtfdP5MxGF868`sW}rz zFicZAtgy}ZWyV5WduyQW+SZOvZXSVHm}?KyRU&LVzQs%59+<Cud*D{z`mjd55<Q6U zFpvH}zWq<OLx^vu2H3t`WaS)!7h++)y_g&3Td$WXZ*8(s+VB-R%7-J{Z*&Ik_xw7X zA`V!4=WqY?$bTcY6(t&V`cEC-C9(N4)m#r|W@qx2Xnd0XvikPkCu_Cx7IY5=%YiQL z6AaeJC5;7|3cB?vWC!#ZXclPi!NK4>(CeTZK#d{6;8D=(pcZH}Xaug<8iTe1Z4H_M zdOK(q=)XYcf%X910NNMys0R<5KZOko1EWDBaK$<av=!*{pc$Y!pjn`P(0QOH=myZW zphrPBfm)#NgGS(5{s3qz&|{z(pkIJyfqnxz5A+An4WQRRk5=)zTz_H1!hmNe6yQcj zEznk=aiAHXO+m9j>kWef(4(190D5&K6o5W63V6_Nql3X3xb0(twgbI$Ofc9Bw9~(X z!SSFkfi3_o0{stY!>nNNgclpXV&e*E!dNK40V3vUC;*Kb2L+(df{q6bfGz-iXgm~v z4wwK1pxY(_5Bk`YU@!`I>T;%{grIGo2?qOsW`j-!{S$N{=(_A+a0_UsXK`XxgpF1+ z&;y{AUW5YNx*Q0a3OZvJ6o3|iP6oX;8wx=C&4B{Y?3`e*2=pt^a?tB&#VFh-9))R< z3L1xY?E`uj=w#4&pbJ4Sq2srJ-n$^^4HjYJBTUb7(2uc#MBz?(8J4nC&>A?}_5p2= zOQFf2bmw6q=p>xjZvkzF%f2GeZlL9$16Kl%Zw`!Az=J*l+6UAGoebI%xA$HH_2H)L z4$#zhyusipZ1mk24E_o_byF}%f3!+$4hB1cmV!PGN>AftgQgsU0?<s*9iV$aPk|PL z{t8;_L*Q$>T&qAkfu00?9CYPj;6e9+z6N?7bO&ggjE|rI8;M7t0F-_qR<DlBH5RlJ z=&Q$q!2zK69S;VlgN_7U2HNTb77ftrpv9m^M8kjD8ik_gKP`;{G3B4wxGlYq3v`A3 zF993b_&-yu{im@pP#nbPK5+q`J%n+yvC%;!;WJ*O;nO2B@%fXO6HKU#lZZ27Ep|T? z2l2UCT)?L(j9_D9j!44iIFW|W{vs2f_XE<{Xf4*_v#vOZ&wrL&FcK<bx%pv<VKg>Q zE=j`Yo+WAce0xbIK3`oj2cOR`S&Pq+OAg|*Hz19TyG+9XNivg&R5#Oz{ASKEjCjxE zSa80j&Bn$tb1jkW=0T9m+$WG%7;~l9jC$GqK;&(eHo0q5iEvTyrvR!yFc{?5FF5=J zhyN@14YAt23|R;7o=I?5B8KW=k;*aC+(uJ(@?dj}+h}BrG<|Luzi7Tqq|p3`$dBgt zAnt^r=KKhwftgszsBH8!n^(e^Yna)+lF`T=G0YqT3ZM_e#$NMn;<_`<k8cB_1PJ%- zndbjUWU1+?43S*3Ig$NldS%$}GRAzmGMEpWc{KWkxsk}<<}o58%u*s(%&H!c!Ded^ zcj`p*ArCB<O)_7pYBacQFoH^&Y$nt8i`Z^5RgSO3_JFB8?%9j&fo3VeS7ghfzcIAZ zY<(Ms&Oa-M?#0UWtvQy4+C6X1zYT63G&f?`IA9(lQf`(qbCy}H3YeqJ)>Sb2iP;mx zz0E6q7>rKcK1Xi9i0vIYa(gAV-}lMwz1ZG4m$yCVu)WKy8Uanc%+^F6GJ6t9GshA+ zX66z3-P{P`Zv2Y*afH#t$TzP_W@J?`A2-_*>2LNX@`O2o$djg@h~L~y<Q4N1BEq~% z<ZUyu8pyY1dm`t|-b8*eClJXr{Y0jjn?c-(+s#j_A>B#a%^!*0v)!y&9l<|hwyzF$ zvmNFm*mWoFFeiehx8D&Aw!lHyX}k2CN|owY;?|?q&BfZ5vMU(mSCcrcyWX%{dmZ@u z&67}Vd}v-Hl4W+NVZ=ADj5RIxgJAG8C~=g#k2s2(fq%s8Tf+#NS&_zc_kh5zi;>3A zDqj1Q76m5>>2ldGvG_^t+pnz{WJ$jLqKXk}-+nd4c(rf8j3Qg@+pnL<QTz4_Cti{J zbzJs4CYCFK)#e}3Mq{u2f`|e&yid`CirO!NIIi~XS3i8I_RlI>qNx3Phs$c;exbwf zYX2`qZ%S&KF-C2#{Wb>s?F;tX7VNhxG%A%zX{xCGB89eU-+pz%ooe5HSwauBZ@(U) zpW3%yh%i*{S996#KtPpa4gG3^nM&S%nZaDMFW6rD9R=$Ydy}GD72Ts~p`u3=J+7$z zz5)C1|J!dEu-_J7@7w&a@rPaE4Et39#}CUq(d9DzvtJTmzZAfJ2>=#m{#X4EG3EYb zb76*2+3Z!{Xjj$#tN*FH=F~Tys~i{pN|*v5-FV;8EVFh)qlaOc1Bsk7*ETd_dybeO zwZ5ygx5oNT!Zjw!frZMgyVQ92D|jAL<3SS>JH=RUc4&lJ*fD*iwEC3PLNgO=_pl@8 zj7G*#W43t)pa%BavXrpvbC#~<8W1p>VD&LxHMcf4o^v<fZ?;J^l8rKRU?NNnHuDmV z=Zqz$kpzq3@8B7Sb6I-H(*m<Y5~4k8K2PMdc`ymko#r)Q+zqnKYE6t+;to!emhCs- zd=a5u^<-{sV#Fd-$C|*<ZZoZ^5!>M6b5i&T<?RbqrEul_=G3Of`Uc@|%j%3ZnjC4m z*X-EL=pJ_hC)@PzeL6tnpI`A;nv0qt7x&GS!?rKS6ua*`=GTB5+svfqh~PQ1Z*#=+ zm-#yF`OIUqH_WWv!k|}vncZ3-PXo;<Ef8hDJac{vV?7qP4lNPJ9&=+$<AB?<&wRR- zk=#>^m-c!};yQ~HP;xi?byh#C@fUINM*r;h5dE#jr<xa987Uo-1CrfJ5?42@$)qm) ztxpfDannp|jp~KB?00n~><x1Y*v3LLueFhK%ZsJ*m6AE;NwD3$e5SjNk=#MQxJWt? zkL8_w$j+Dhc518OWSzzf&CE8&tM0p}n?JWfQ<j^3+rp*rS3b4Gi7iQAHRrTN%KMvJ zA!RH!kF`ZoSDI<<FnG+ILS&w~ww=)<F8mE>&*99LG@Lh$_JAHV<Jv=bnc1_wF)Z%# zaOvD5lDH<Twwh%gB&l)cHNuQFt0u!-(43Quz3b-dwD*BoJH>d%c-P#GzHqmH+3c8# z>hCl&Q&Ii9GtC*Ph-#gACKY<7n^ilYQ&#Wl+X2mnGlMw~8!6QWsH$PYeef`vEXy={ d87Womd6{K)?q%Fnwd+69x30UM?`8bp{(r!$A?*MF delta 28356 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 Zo|jo>+n&aKF{!ttRO<GrJ&hlu{vRS{F}DB!