From d6c2227a35d41c144a9f9995bdb3aa04028945a0 Mon Sep 17 00:00:00 2001 From: iceburn23 Date: Sat, 31 Dec 2022 17:24:08 +0000 Subject: [PATCH] fixed --- include/minishell.h | 2 +- lib/libft.a | Bin 0 -> 64922 bytes lib/srcs/ft_atoi.o | Bin 0 -> 1592 bytes lib/srcs/ft_bzero.o | Bin 0 -> 1432 bytes lib/srcs/ft_c_counter.o | Bin 0 -> 1360 bytes lib/srcs/ft_calloc.o | Bin 0 -> 1536 bytes lib/srcs/ft_d_counter.o | Bin 0 -> 1304 bytes lib/srcs/ft_is_n_o_a.o | Bin 0 -> 1288 bytes lib/srcs/ft_isalpha.o | Bin 0 -> 1272 bytes lib/srcs/ft_isascii.o | Bin 0 -> 1264 bytes lib/srcs/ft_isdigit.o | Bin 0 -> 1264 bytes lib/srcs/ft_isprint.o | Bin 0 -> 1264 bytes lib/srcs/ft_isspace.o | Bin 0 -> 1288 bytes lib/srcs/ft_isupper.o | Bin 0 -> 1264 bytes lib/srcs/ft_memccpy.o | Bin 0 -> 1360 bytes lib/srcs/ft_memchr.o | Bin 0 -> 1312 bytes lib/srcs/ft_memcmp.o | Bin 0 -> 1352 bytes lib/srcs/ft_memcpy.o | Bin 0 -> 1312 bytes lib/srcs/ft_memmove.o | Bin 0 -> 1392 bytes lib/srcs/ft_memset.o | Bin 0 -> 1296 bytes lib/srcs/ft_putchar.o | Bin 0 -> 1432 bytes lib/srcs/ft_putstr.o | Bin 0 -> 1456 bytes lib/srcs/ft_realloc.o | Bin 0 -> 1992 bytes lib/srcs/ft_str_offset.o | Bin 0 -> 1688 bytes lib/srcs/ft_stradd.o | Bin 0 -> 1696 bytes lib/srcs/ft_strchr.o | Bin 0 -> 1296 bytes lib/srcs/ft_strclr.o | Bin 0 -> 1264 bytes lib/srcs/ft_strcpy.o | Bin 0 -> 1320 bytes lib/srcs/ft_strdup.o | Bin 0 -> 1592 bytes lib/srcs/ft_strexact.o | Bin 0 -> 1568 bytes lib/srcs/ft_strexist.o | Bin 0 -> 1288 bytes lib/srcs/ft_strfree.o | Bin 0 -> 1448 bytes lib/srcs/ft_strjoin.o | Bin 0 -> 1744 bytes lib/srcs/ft_strlen.o | Bin 0 -> 1264 bytes lib/srcs/ft_strncmp.o | Bin 0 -> 1392 bytes lib/srcs/ft_strnew.o | Bin 0 -> 1480 bytes lib/srcs/ft_strnstr.o | Bin 0 -> 1432 bytes lib/srcs/ft_strsplit.o | Bin 0 -> 1912 bytes lib/srcs/ft_substr.o | Bin 0 -> 1792 bytes lib/srcs/ft_tolower.o | Bin 0 -> 1256 bytes lib/srcs/ft_toupper.o | Bin 0 -> 1256 bytes lib/srcs/ft_validnl.o | Bin 0 -> 1312 bytes lib/srcs/ft_wrdcnt.o | Bin 0 -> 1352 bytes lib/srcs/gnl.o | Bin 0 -> 3320 bytes minishell | Bin 0 -> 177504 bytes srcs/.DS_Store | Bin 0 -> 6148 bytes srcs/built_ins.c | 4 +- srcs/built_ins.o | Bin 0 -> 12472 bytes srcs/built_ins_background.o | Bin 0 -> 14704 bytes srcs/built_ins_background2.o | Bin 0 -> 7344 bytes srcs/built_ins_checkers_n_runners.c | 12 +-- srcs/built_ins_checkers_n_runners.o | Bin 0 -> 16984 bytes srcs/builtins.c | 113 ---------------------------- srcs/builtins_background.c | 104 ------------------------- srcs/builtins_background2.c | 57 -------------- srcs/builtins_checkers.c | 63 ---------------- srcs/builtins_runners.c | 68 ----------------- srcs/cmd_build.c | 86 ++++++++++++++------- srcs/cmd_build.o | Bin 0 -> 15144 bytes srcs/cmd_build2.c | 6 +- srcs/cmd_build2.o | Bin 0 -> 11592 bytes srcs/concat.c | 6 +- srcs/concat.o | Bin 0 -> 8432 bytes srcs/create_files.c | 55 -------------- srcs/error.c | 6 +- srcs/error.o | Bin 0 -> 6096 bytes srcs/exec.o | Bin 0 -> 9920 bytes srcs/free.c | 6 +- srcs/free.o | Bin 0 -> 7872 bytes srcs/heredoc.c | 6 +- srcs/heredoc.o | Bin 0 -> 10112 bytes srcs/hg_loop.c | 21 ++---- srcs/hg_loop.o | Bin 0 -> 21320 bytes srcs/initializers.c | 6 +- srcs/initializers.o | Bin 0 -> 8832 bytes srcs/loop.c | 6 +- srcs/loop.o | Bin 0 -> 14816 bytes srcs/loop_new.o | Bin 0 -> 14928 bytes srcs/loop_utils.c | 8 +- srcs/loop_utils.o | Bin 0 -> 10808 bytes srcs/main.c | 13 +++- srcs/main.o | Bin 0 -> 13184 bytes srcs/matrix_fts.c | 6 +- srcs/matrix_fts.o | Bin 0 -> 7056 bytes srcs/matrix_utils.c | 6 +- srcs/matrix_utils.o | Bin 0 -> 8512 bytes srcs/parse.o | Bin 0 -> 14744 bytes srcs/parse2.o | Bin 0 -> 9088 bytes srcs/parse_clean.o | Bin 0 -> 5624 bytes srcs/parse_env.c | 6 +- srcs/parse_env.o | Bin 0 -> 6312 bytes srcs/path.c | 6 +- srcs/path.o | Bin 0 -> 11264 bytes srcs/prompt.o | Bin 0 -> 7264 bytes srcs/shell.o | Bin 0 -> 8088 bytes srcs/utils2.c | 6 +- srcs/utils2.o | Bin 0 -> 8040 bytes srcs/utils_array.c | 9 ++- srcs/utils_array.o | Bin 0 -> 9920 bytes srcs/utils_fd.c | 6 +- srcs/utils_fd.o | Bin 0 -> 6408 bytes srcs/utils_parsing.o | Bin 0 -> 5600 bytes srcs/validation.o | Bin 0 -> 9496 bytes srcs/var_expansion.c | 6 +- srcs/var_expansion.o | Bin 0 -> 18480 bytes 105 files changed, 130 insertions(+), 569 deletions(-) create mode 100644 lib/libft.a create mode 100644 lib/srcs/ft_atoi.o create mode 100644 lib/srcs/ft_bzero.o create mode 100644 lib/srcs/ft_c_counter.o create mode 100644 lib/srcs/ft_calloc.o create mode 100644 lib/srcs/ft_d_counter.o create mode 100644 lib/srcs/ft_is_n_o_a.o create mode 100644 lib/srcs/ft_isalpha.o create mode 100644 lib/srcs/ft_isascii.o create mode 100644 lib/srcs/ft_isdigit.o create mode 100644 lib/srcs/ft_isprint.o create mode 100644 lib/srcs/ft_isspace.o create mode 100644 lib/srcs/ft_isupper.o create mode 100644 lib/srcs/ft_memccpy.o create mode 100644 lib/srcs/ft_memchr.o create mode 100644 lib/srcs/ft_memcmp.o create mode 100644 lib/srcs/ft_memcpy.o create mode 100644 lib/srcs/ft_memmove.o create mode 100644 lib/srcs/ft_memset.o create mode 100644 lib/srcs/ft_putchar.o create mode 100644 lib/srcs/ft_putstr.o create mode 100644 lib/srcs/ft_realloc.o create mode 100644 lib/srcs/ft_str_offset.o create mode 100644 lib/srcs/ft_stradd.o create mode 100644 lib/srcs/ft_strchr.o create mode 100644 lib/srcs/ft_strclr.o create mode 100644 lib/srcs/ft_strcpy.o create mode 100644 lib/srcs/ft_strdup.o create mode 100644 lib/srcs/ft_strexact.o create mode 100644 lib/srcs/ft_strexist.o create mode 100644 lib/srcs/ft_strfree.o create mode 100644 lib/srcs/ft_strjoin.o create mode 100644 lib/srcs/ft_strlen.o create mode 100644 lib/srcs/ft_strncmp.o create mode 100644 lib/srcs/ft_strnew.o create mode 100644 lib/srcs/ft_strnstr.o create mode 100644 lib/srcs/ft_strsplit.o create mode 100644 lib/srcs/ft_substr.o create mode 100644 lib/srcs/ft_tolower.o create mode 100644 lib/srcs/ft_toupper.o create mode 100644 lib/srcs/ft_validnl.o create mode 100644 lib/srcs/ft_wrdcnt.o create mode 100644 lib/srcs/gnl.o create mode 100644 minishell create mode 100644 srcs/.DS_Store create mode 100644 srcs/built_ins.o create mode 100644 srcs/built_ins_background.o create mode 100644 srcs/built_ins_background2.o create mode 100644 srcs/built_ins_checkers_n_runners.o delete mode 100755 srcs/builtins.c delete mode 100755 srcs/builtins_background.c delete mode 100755 srcs/builtins_background2.c delete mode 100755 srcs/builtins_checkers.c delete mode 100755 srcs/builtins_runners.c create mode 100644 srcs/cmd_build.o create mode 100644 srcs/cmd_build2.o create mode 100644 srcs/concat.o delete mode 100755 srcs/create_files.c create mode 100644 srcs/error.o create mode 100644 srcs/exec.o create mode 100644 srcs/free.o create mode 100644 srcs/heredoc.o create mode 100644 srcs/hg_loop.o create mode 100644 srcs/initializers.o create mode 100644 srcs/loop.o create mode 100644 srcs/loop_new.o create mode 100644 srcs/loop_utils.o create mode 100644 srcs/main.o create mode 100644 srcs/matrix_fts.o create mode 100644 srcs/matrix_utils.o create mode 100644 srcs/parse.o create mode 100644 srcs/parse2.o create mode 100644 srcs/parse_clean.o create mode 100644 srcs/parse_env.o create mode 100644 srcs/path.o create mode 100644 srcs/prompt.o create mode 100644 srcs/shell.o create mode 100644 srcs/utils2.o create mode 100644 srcs/utils_array.o create mode 100644 srcs/utils_fd.o create mode 100644 srcs/utils_parsing.o create mode 100644 srcs/validation.o create mode 100644 srcs/var_expansion.o diff --git a/include/minishell.h b/include/minishell.h index 95f6f64..ce3e4a0 100644 --- a/include/minishell.h +++ b/include/minishell.h @@ -101,7 +101,7 @@ void free_arrays(char **arr); int ft_pwd(char **argv); int ft_echo(char **argv); int ft_cd(char **argv); -int ft_export(char **argv, int index); +int ft_export(char **argv); int ft_setenv(char *name, char *value, int overwrite); char *ft_setenv_str(char *name, char *value, char *str); diff --git a/lib/libft.a b/lib/libft.a new file mode 100644 index 0000000000000000000000000000000000000000..757099e3bafedbf139a286b0d291ebd027adcad7 GIT binary patch literal 64922 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 literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_atoi.o b/lib/srcs/ft_atoi.o new file mode 100644 index 0000000000000000000000000000000000000000..9464f18876cd2b85748b351c59f7d2cef9724339 GIT binary patch literal 1592 zcmbVL&u3rOH*dy^hSmdm>(QeZ4T)Y%IB;lEXO{OUZnu{XdCd2|H}lQzyxEsLm+>(M(iq%< zgPmjnmi-4f>A)n+Ll6p@{Zs4wiE8%NpwCBi(&u}m(C0(i{hrY}e899WAA~+Y=yT8R z4~T!&YyA@B?U)sm@MNi9Udc#w=oVmc!hzj0^p4P+^^LfqE zOQ4umbL=Y;HH~MwVi}tjC{J`t2c=}1pp+Z6no&ot-mnZMd%qAfExr5{6erxM6xW-2 zZTv8kBF6_&Or^Vb-%JuYGTGnpZX7Ey`3NrRMH1Jvy%SBiD9DrOsg4{$$zK+{dy;$< z>|t*D8pe?3ar5JtOPcb#Lg<*RzaRe=~!eD)N`7MG?#X zN%|fFum1Nu`cGe(%$NPAGVa=>T@m%?gr`}jTz5X*tGo9|!G;jMPMawcauen(BCq`K NBLDFuatz%0{{UG#rF{SZ literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_bzero.o b/lib/srcs/ft_bzero.o new file mode 100644 index 0000000000000000000000000000000000000000..cc2e81a0ccb4fe063d0f7ab6e9d2ac454b616adf GIT binary patch literal 1432 zcmbtT&r2IY6n>ku8r!s_QbDkX?L|_o!)~A=9waeMvXsz(HHV&-O*#^3H-YR3DijZe zLhzEKe~lLp)|>x?;Gu{1=AmHU%g)5c~8Yj*xEZ|wwK z+jUrhxyviBq-7VJg6p`h1J5ZQVI6FOwU@INveTI%F6aevB!oP@N>6j&Q{^X9Z44lP z0%$J};P;K`bK1C5fHXcPq_L6-X_zw6SY>(w|L_ilQLmoz4Q2Cd#2kr0?%AcDUw&dyfwJQL? zqWw?=E!3hP>yEPe{7b+D-xI(-1tI{}iXvd`UKsK&a^0TbtoFXS9EqU)8Q3VCcl_;s z5OUe>-pa-bboR-UDI!Nu^NqbYR@tN%P-qrK6df5kgn3EMpr$_R4k~_8^2wXjk$Fi) zHFUg2hid+BzKgk3(?QXp`sZ~LZPj1tHI36lhq|NLDo;@jG>H4>&Y-XIS5=_Yv{xPP z&@s*5Hq4*?GL^69Z|Y6;f6xn&kqf4~PPxf^I@jdvk%9}E_l6t|k{&b9&@$z(%JqL7 JN5)1n|1TzxWL*FN literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_c_counter.o b/lib/srcs/ft_c_counter.o new file mode 100644 index 0000000000000000000000000000000000000000..3e961a2801c22529b4c925189600c883279a7f73 GIT binary patch literal 1360 zcmbtT&r2IY6n>kiwQAc`dMM~&dujw7vVltIp(LcEp@;{mM_D%Oiba#a?u2Tgv=Cbw za`E2(qvwE>{tNyADFlL`_kewGoiXFMUhIRJ_vV}Ld-LYk7rwTVvMf+$!5bKj6bf*h z8pXvpEW$KQ!DglXx6=OHZ=e6*y+3?NQvq;r%DSpul_0X&E1No4rvu)#1ZI zN#`DQ#f&D?xRc0jb*;f{iw{+1%=Q!EtrJ)+mtWi2w?XxTSGS!U%QI(bc|k^YK9_fL zj+3L>o>7NpecAx)AY;wVJeWMj4bLM+jqDqBrN^1?sq&+V)K_E>kZg2TV{mbqG@DL5 zNq{tHhp7qEIFn>)7*B$cJ#hyrSGON`S?~zzL!u4Ih(X5LgWIn`^`>_#jM{y22 z?jf%DM%64jtO>6QEE3_B-&K(a4g|1mPk6wpQ3T9y)M`N;v3f%UY;}EeDH5K)2P_Qs zJr?Y`JE2z#%I6H}PBYO=s#~B7vUEef5i|rJV6& zMXyY)pH+bLYJKHjA+BPbdZrJw*yO&G`WttR*tygcG%bbZ*WifJ>nmc@&6WwDOOSMQ zM@p}7s>fWLBw1PLDGksbVk51oC)_-HgszjSKOSS)nfrf=SdzXVi+Znw(wq8!ll*@m literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_calloc.o b/lib/srcs/ft_calloc.o new file mode 100644 index 0000000000000000000000000000000000000000..1677aca6abe72a861de20d271f92c8da720c1c65 GIT binary patch literal 1536 zcmbtTPiqrF6n~p&sxklHXpiO5;TZOExHkTI z9mgR>VEAWJWcYm&i_>pkpkA%6nkx_d)-$(jT18P3R^iS~#mrK%WECx|7##vG#}15x z$6)N|jpc>8GjH(%S5YS;Y|v0SpMRC9F6J`p7(qfh=i;J(F`wQ{@{5*HBk*^LXK^fZ^2=z{i!z#yC)5apdggEzIqkzwcZn7eH_%8=zQA|1 zm;#E`aSJC@^I!8V%%z%qPNWfd{}mRL=l$8QqRw0o{ishgo{Vj(eATW=4j+1qbJarvLx| literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_d_counter.o b/lib/srcs/ft_d_counter.o new file mode 100644 index 0000000000000000000000000000000000000000..d200a1aaf7d35733674d0ffd64c0dfb086d62bfc GIT binary patch literal 1304 zcmbtT&r2IY6n?w$S6eNycqrJ?^`wGMvjK~EC@JaIrBn~1;6=h_-8G>mf$Rt>hzFst zNTL5s!E5ND9;G1o4-`t9gWiId_PupRC*yjtAMCvMzW2U)^K18=5ARIF00{$L!%ZYv zfK~IxFC=aO9>GIcapRxyUfccdbcj9JYs1#m5zX-D<)PDd{S&wPVt@^;R)bJS>r z286M@1jcsO7#-{%_=0VpAx9r!frdAav!Bf3P@m~y1rh0>75Bi!-?VHd^+W(Npd5-K z%wQ%B8R$);vAXXLzULO7MdpdJo@9?y74p)0$!~1cdC+8jS4e4#1_Z6RYt<~;sd29i zEaJ^8Tag|QwmGnMk9)w%Q3T9y)M`N;xq5>KY<_WNI^v%H5m+5TFEn=!wF@^zg`b~URixgkik7JIW%YF4zsHHiR$BI@$_Mec1u(H3j zGssI{E&Zwnim%tc7y7QdM(#*xW)&^D`mf<2N3XAdpNe0i(NjT^j_ye6B~N8~Z<3tT nfH=D{@Bl4obv^O=*^}g0^nXr)0)79(m`l^kMJ+2@a&`Sb>Fj4C literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_is_n_o_a.o b/lib/srcs/ft_is_n_o_a.o new file mode 100644 index 0000000000000000000000000000000000000000..e5bb94ec91831e9ac6a00acca6aee3500480141e GIT binary patch literal 1288 zcmbtUJ4*vW5S~jkzMohKTEt2PU2_4&Sjb6yAz~rg2y$-X1x1rUZi^(4q!0u<|AL)A z!QMY%X=7!hy`VFj-Q--)Mh7zU%{TMy`_kCh-HcckXtQ7y+L>knwj*uqNa#Qx^upox z&C5;gay;=L4yaA7LwQA9-3O~YY)$lcb>HHElgQJLEJbc@aQHfs9*7BSp!^r3 zwRFJyXIMEJdIA7Z2pmE{7{yAMMWHi{#_rfJe8&%d2$|8qdgLCdD<|A@-z~UBm$Pg; zE4f^b5tkn1iodOz`IWrj8DPFBHRG8^!Yd14r(AGg8Q%w%E#~uH0l7j^cx-F$aNZX@ zdjYKEU2^7~xw#V0dupctg$b0?otP)%s9{_CRyp+sZ3+|O%$ukLn*!L>Ph*YV%U|_# zsHHJm4;C?*o`0s9w!EHS$3?7Y+-gE_7fb@!?A^f{ao_G5^LwRPR#6A@+t|PYy*@`b zsQ9EN8do{#=#I2r^I>z7ockCSFJ|mq_jk6-)|2NM|GX z6Z{GGHkOu_Hda>l0iB7vx~^xV13Qmz=bPEN-D@sytb_~$q!_ROUy(!s=0ab--EnQ` zgI?HKYdyEl+UIBO{YDh^X`>&t-H4;!ZN_e?)=SqdG4}3YHJhDJO)fe4GOwmAlVzBd zo}Ch2Dr06W)3QuT9wLQeoNj?}oHR!JW8IfnYz#44BxzEMiR48n8;_PSf#P3;&Jlsv zx1jBC;KTr7P=;2BVcZFlFmwgMm>vBEkNm(Bhzu&{>C8x3ML$>ec;%?XSwRV8fs}CQ z#NSTMyc5^wd0?Jj|F9+L`OdKq?11|mSl;u16>6^QR1vGze21-W?xa1R7Y>2doeF18 zDOap>*O4v%Wk-=sccOn8TU7m=Tf~&B$~Xpu={Mo3Ns6!YCvcD6%U}7^$fcT{$BI^p z>^~_1VP$`5XAqaZntG)Mim&Ic3;wseM(kQ}<`gcu`oFP^7`;9lmn!$7(XarCM|ULo w5~no1H&Gr)p*(&V=s`C0FOa15O=NegFUf literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_isascii.o b/lib/srcs/ft_isascii.o new file mode 100644 index 0000000000000000000000000000000000000000..81269776f57bd29d347bee8b9bea713347fa57d3 GIT binary patch literal 1264 zcmbtTy-EW?5T45=@i!rgg%XQcsbH47fFc$Wi7_H#A=)Wnb6&`y7a?~=6eNWpr1KGc z3`@brNALx#tn33ilk8sB^K5h=JKuaW-^}jqrc>VEiD?>0(_j;Zkz@gk*bo={um}?{ z4#&IQx9&~v_NE8z6t11l$Rp|B6OUAN`V5s)X(P9^ZPy&$%$Wu&Ff+flEKsgs6imZ3 zjebj9W(3f#4?$~ZwCv=_=sh-^N1lFU3$$#dGk394DtUqh6#rthmpFWUMy2)0lLF|V z999wPn29nS5>Yf(Cx7ANKln5<)5?DOXQZmSUv)h0S&qXjC6Enr0?>}X?V5R4uFq@0 zJij&Y4T*fa?E^dGJ_lCwJYd$P>)K7^nwP%KDhJ1T&*#=Tu$Fznncb+?Timtf$bb1P zs_9O`U#2L!2Im$r)v88$;=(t<)glFl^^2IJ_wrZ$3Tmlm@L&;>$@xozFj(b$=~po$ zaZrSys|E@V*Y07CxNmoj@x9Qj3ol*xzfr~ny}qI>5dKLFniVnW=#Hdb@=>!%@%hSndeVmV#D~8o6Gmvt2C~Q*Qqw?U%T5>b@&Jy#p05YU3JQ?T{kR~<(ZY6pBBi-n|aH$ zEVI)Rmr((1@XfIvx_7RuXV^0d8 zgK}6!sADG1bm)$wu{!w+-}QqZL}o z`3$P*PNH9?Ai9R<7BSVTMtS0*H({$q3XbZhFh}p@ulgC(QqS_%#F+s>D)a>_JVnwcwWO9G|RM%pw? z)9ALuWl8|;?ijS{xRxAA479M}Eb{ato2O-KZ2TdX9gUx20mVIx_Rl`!D0OZ=IFirRlkf{>KQy(#AI^*q8|pUoG<+< zW+V=Z5H!_5!Qt8i%n|qFt}$*2&ARZ?h5s8nn4s5}kp;p(i$T*OCLP_8)Jr~UHc4J- oL2LUC2GNr?tS3JF?Md<|=Fd=|n4kk@0#TH{EecP9N*{#vU$>%7UjP6A literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_isspace.o b/lib/srcs/ft_isspace.o new file mode 100644 index 0000000000000000000000000000000000000000..c28567afec69c17f9b0c8bd8d677f3495ec99d47 GIT binary patch literal 1288 zcmbtU&o4tk5T4i4Dy`5sR4VeEkg(}%LWD#rRc%BZgrhXC^`t^u>044nIEmi;4=(@ZD z`7cH*>4KMcuVKIE2>|#(IRr)M#}O~{L$?==)q!95t{;3qGErqc?LAV}F3<0|?x9_D zSW!vj1f~GA;%}>F?n#;31z;|(bz(^(?$kN39h=+03a$&RSS^>G3UZYycUX3PYue>@ zaUWRCIk1^i%J0_fvLjpmE5=bxccPz6O3eDXZ;?~2YGarXr{BbxTBKlIKaOMcUjC|| zLM_cHo-3k`$^H|P5K;D*aRzyb)zVuvQLtXSD)is(8o4{6nNzd`_1{JYIeL95{8Vd+ zMlnH>j_ye6B~N8~Z<0KaLu+*cgfNm;*AuUwJxSVs85oBtQB2?eAdY$IpGD!Oq9v&7 FKLEAKS!MtL literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_isupper.o b/lib/srcs/ft_isupper.o new file mode 100644 index 0000000000000000000000000000000000000000..21675810374f596c4c89af6ab4fda7c632b45028 GIT binary patch literal 1264 zcmbtTy-EW?5T45={u`oLC|bly1zqj}ide`=j1dtF(MFVTi5n6$iR4a*LQEkD>GB9Z zMoPiPNALx#tn3Ay$?cx&c{Vzboo~LGZ)W#))5`2_MKlehX|N7okz@gk$QQPH(1KwY zg2V0hOS}1g+kCffMsYoA^><1C8tYQk$s=Ub>9yqiCeN4cYSJ`VikV9*3j!rmM#?ly z)9AItWkLY$dLOh#LYp4xALwAi8RY3lHcQJ!JaHFEkM)5y)#l((an{e%Zm$MX9XpY4Uz)Tj=$}iIad|e z&I5DYy5~z0xxC>5JGEUKSl)4f6>60VuOe5ixtwM94woF)E}Q|Y^K+Z=Qm$CHD_oBJ zm!C#8-AVAvSfZ4N`_3?}IHS+YR*2Qg?;#H6D;l6uL9%_hkc pEojf4gF*D94eE&xetVMKi}_O&C?;s18ABANe-?!Yex(P3`cI@UOLkYpq(_(t}bD@#G42*eocE1zFjq9mEz9bCi;eDJ`07gQq zMd+W>lk`|^~qB>Y=^uP2Wpry3;XU^ugqP@0<6%dGjM1?z0(-F;K?fG4vzF z0&H1*+{j@AuEG#_BK;xK4~HUM%~J0`q;tFCo7eThWFP7CWO(G0 z)x17nZD0lw#YSgUhSOg~v!%k51So-an3}MJGeuT{OGPwh5B!BM|G^I3UwXRj53G_`(35z?#mm4AS|!g}gYJL`_del`rle6dlvuz literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_memchr.o b/lib/srcs/ft_memchr.o new file mode 100644 index 0000000000000000000000000000000000000000..c177f6fd62b9a8a84eb662faaa41a514c20ff924 GIT binary patch literal 1312 zcmbtT&r2IY6n>jnwLj9T2o>xh9;6oPkPTQwp+w@;p@@fKpck>5bS0u2VRr>9hzCKs zGETRb_QB44@0;(NH@|kDFTTrI7O1e`Ep#)* z0({DJaVdc%cnpuABBCE6+KZ#@OA%FCO@8^6--srUMZ~Yf1#gq~dR#OsSID-7_3haS zO!J%V98$5Qu7|||Z(B(=%Uk~UQ*y1G!9uw_lb@J(tLsi9Zx>jR*^_TxNt7=Zigv-a z3nU(<2E*F@0M^ccHTtBl{|Gno0y+99R;ZbKI&hdN=Xx_AQ9(p{&>8f=uiLcIZ0ZRC zWI;P5&6vfJw8+APG#b^tf8l%n;B&|fY3oV$NUF7P)pNaC-DkBf2FTMG2CekoYFY5b z3!N&kAoTD0xOUY93Q}*m*_q9I-Iwk5(hlsKnQy*t-p~E)Jb#ii3{YmkV@NWE z0({FQaU~8ba1E}4%UgeV>(f4Oz3=jt+u>~oW9JAx=FS2C?evI#_>8w*LVMikno)tb zUmWzajv2x14{>*(4rcVdPjOMOYer*cv^U*79Oqx1o)HTlIi2SA4)tFC2@BQg!(wUP zuf6sfMcZO!X3spBmQk^6m2JzmE#!`q0L}Qg2*yUin7n@Z$`)?;He&RVZPGAzqp+E) zjt=L(AcKHxqq7=WLOBor0cXK-j=tV}2wFv(hV<{v{kN z(5tH`g7g!z;e^adM|Y(33eTFGBqh1feM-tvE@B^!{&RDNAq3 M^)DsTI7;h}0sn$~9{>OV literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_memcpy.o b/lib/srcs/ft_memcpy.o new file mode 100644 index 0000000000000000000000000000000000000000..6942f5d86e0df362b24c0c759a0d554facdc846c GIT binary patch literal 1312 zcmbtT&r2IY6n?vjMyK`4e? z`XBVaD82V!@#INz%%u?MrM=}=-`mV2lXbn=2if`F_r7m_yqR2BZ?|+!0~s1@KrfRl zz>eO-=>VqT8H_-V*M9NZd5hPoOL;PqUS*R3|! zZh8G(3sZzQ6W`!U=a*Jn3u^0DqjHC+_2~y>GnqAG@wHRfx66i^WGQAYt-KV-NF`Hd z(lnC*&x1VyXlEZlJDJpGM-xL|@E~)@(~lxgpUv^f&w6HTP~S!c5z#?Ch{NB1QPo&v zhX7)rG)XbWuo4w97>J@#J@^P8f549+Gp+0=I3ua{{JiV9#p6>}>|p?dY8bTBzTGnK z)b;HGFwd`a#*#$7bK(QrwS5~{!SjF>k6hO&BUe819hQBcTk?FncmS;89NNq&<@YMK z>jdlk?`IY#pt}fnBrPWHo>%0gRbw6#;=(uZRTU{X>|ekdJ(H*UU!j-g#3$Mpa{a|V zwxcCV?qgZOs`Oe-6fAv`dV_$tzPrZ!rx2`)Q4Zn1goOoqb!jOO;~%lm3z3tL?nwG2 sAGLO15&nko4-0SDPkgxdWN8Th3?)hky30%uOTym}Ikf(L`A9z^mFh=E+(Z$y05L#JueQ3>n zAZSoSQeRvRhVkkkFFNHu=3T*dMdvo^u@?I>{~lgCWBAqT-njnu$JW=udBq-0*cdAI zRxn~H8DZsa^BYFJ2cKZ2RJ!6WUYC_eVcqo#yvV(!OXpPN77InM;CTgrle9B5_WUle zjU3A#ojdp%2XY!QddS|=>smIqq`{UpRv}VfIP+-Mq3#g@n zCYZv#sj#WDMl7fFmo2^hYXrDXx6ikDzACt&aMIBkX}!j&joq6hLiO)af_4ZW(%O2$ e?b#y)t}1$p62t7V9LKdZ{e7jsXJ{$3^}hgP=8Itf literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_memset.o b/lib/srcs/ft_memset.o new file mode 100644 index 0000000000000000000000000000000000000000..68da9e7ae9a535d5093925eaeb7685f561d2925c GIT binary patch literal 1296 zcmbtT&r2IY6n?w$M{Tv*B51LPc&dduWCJawLW#sRLlF@%$0D0_MA40qor4vmx8h<2 z{}>U^_E7(XTnarX2wv7(ZuPy*j2WlfOZ#AFzWLtw&6{8Q#b20r9S3wc@E*D&%>pdB zU0h0G2_C^isPg!d$9q?C!sBXd-@o7o{uPh?g#Yl{q`Q8GOq(ArIVfoJgKEN^v*8o} zV&6>@Gk&Z26H)TE%heLV8jEf4j%6;u$B9kk~jxcQxx&1IelKn{#UF^oCPWJL~o zvuITJ{e|!OgC9cXsj;4PkEB|YtDy)ZAz8hP0rHf?pq1WREsH*fGN=KIWV6$+Yb3>v z1okPA0kB#W0jqC^p=co2*p`A-7OT^d4CL#|Gm3L?o@f+8eW3-FX1Ccudalj8NXDaaYd4k?nwJJPcpkUSrTe6TAdCCuqUtW eC*D4LvYe~>V>B?r-v1NKW%=7mxMFw-+WuR%Ze;TS literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_putchar.o b/lib/srcs/ft_putchar.o new file mode 100644 index 0000000000000000000000000000000000000000..87ae51f09b9ab40d7be14b02253860eb1663775f GIT binary patch literal 1432 zcmbtT&ubG=5S~qJ8?}~HJSY{qr&6JP%?4UZ50W%)5+pRxABUcnmvlplCM}yMRxcg| zF$X0_{}wME1ks!Sgy5kUZyo~eO!iIt+`e4w7v9dym-%Mi&U^dDua#4d0}KZq!)3%Q zz^BxuUl_Rsn1QuTUwKHr&N0VdGGC zT`wo{!dqT@q&+vE%X>M`%VF|8QXrhy+u)pJow@0$%m7P0M2;3=fgZ(~?7LLy&ZNWy zipPLL}SjtD@Mp*^9#GQmF7mfjE##f@t)5Aeu*=PS{1Rd!#~9+1gv~DcO7mVw4`X zgH|LvqrK>s*D@}u>FkpyQ$UWu^Npi8mwmExxM&syTqZJl2=_I46D{@OJIFlMCq8+T zTFBWzxh9q{pql@y_fShU>6*&@AN=q^oHrKlQyZRb4|`3Dfp>%s}vZ}^aV4Eo=v~5 M_rHIU89Pb+IXJIj-T(jq literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_putstr.o b/lib/srcs/ft_putstr.o new file mode 100644 index 0000000000000000000000000000000000000000..c484432ccd21b7c511fba7edf02950ccd19225d0 GIT binary patch literal 1456 zcmbtTL2DC16n>j%TeY=m5mf47PZGrp*&Isgp(Kq-773VnMcO$nAe`Ld9c9^te8I^(P9B-p;+g=~-XpMf zGSUaj6(E!Dk7wfeZS?yZ+r z>lII}w>y3acU28K;bk1Z&xT?voSudDGyp`j+m(I`wG4;4!&Vr)@P!O^B#5WJ^g*<4qa^3gc}OHgqrH`8)W>p!jmuQK=G1_a_Djo9m@HydQvxjK4w)Nm4Y|{x1W}C3tNGlW% z1vL~w@Y0L_iV7aYi~oU;ix6lp-f|G?`|i%P>vs3jZ+JUzKJUGm$^3X-D9y)XF;a@r zeLC(bO7w2v*w49cj)o~k%SPw7v2&mqo$a2{X?KmC?H;w$#%`f&biVhHx&M-3m)c2& zz5SX$WONFB4)&>i*?4~s$!^6Ltibh*-Q_M9^gkn}2K3;=9s)+^=P@qu61+JP`ti*& z>-9!OtD3dCSi4SCoSU1`CLV~@nz^B6Gy0UCot(ZYJ#8v8mCaY;(=o3D(>5(__x#47dk23(mg?}_ae-6WzdcN zCv%?tzlWY?A~@C$#o2IbD*p)}3n!dnQ~Ws~3w)SO@g^V(9A~8XTR;~01vbS$0JOLs$>&NP26_a?DlITaN9u>&ml5-P9ei>5#r=Iwt9>trqEa!|PNUmL)bgw$X5e zUVOAX*>cRv3r;|pST9#?(~`S)G~1~ijVtlSf;TtE3{v;i>v_4#M?21jJ;|~8WymM^ zRl;-JVjlH!#w5QXdGN*llJQ`JG5os49gKO}`YhLC%>T}g`)YpN0l$Lt-{l}!#-GIg zf$UENxT;rep5w~*r;difklbgI1=l|&>+kpnWnb;T!i(&Lo!<~3OPv$W54EaZaZD4O wn-M*h^Y6(PZ~H7;upTUUc8sVe2UYJE43fin9sXWq3#-@U`pu(E&k5H51Fu5nZU6uP literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_str_offset.o b/lib/srcs/ft_str_offset.o new file mode 100644 index 0000000000000000000000000000000000000000..f8ab9b0c3048c4aceb3af8087a8e1ab992e6f012 GIT binary patch literal 1688 zcmbW1&ubG=5XWZ|P1Qu3il9)zJxLY2WK)#dgC>oeJR}-_GzU-1CT^&hACTQb{e?nB zTtdNPy?F6|=($?3c+1hd5d!s4?}0j#eQ&efZZ4hhGV?zBop~>_@8zvl%ts^%gh_A< zMl(SHHlm|AGYm73fH;(y^M|edm6`LV@2vD#N9!|Zr%#HTTJLp?!0xM#)?*uNZA%i* zn4|6OXakb%US*woeN?PJkeo88V^*FSO<7GTX+@pAafL^6I+a#as+yv`0Gx9jNG~6O zw3?Kr6B8#sVM8t=r$P3WzOrYMA0oNavB(!x5C}KwIFg6d0N2Ox+hcfs42PPnTXtJ-)oPY$E7gN@&+&a+o*toyLbJvh}ve|P;7J62IZ+?8=zDy3zTZB(J-6Hnl0N@3ir#imTgp@ zgEEwx%X+PCG`#(L>l`tVF^|q(@ML6=k%{-~&RngC$xq{;-eqw3?H6wX07i`XxXhrtkSiL(P| z23eBl&-;sFEcz$#T@1qdFY|_oK2!hcmWzDBX_?^Kh=7Upxu?59xxsv@8|*zIc*l!A Yq>0aXIgil)Nm%|ohfh4E8wB(J13e?U7XSbN literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_stradd.o b/lib/srcs/ft_stradd.o new file mode 100644 index 0000000000000000000000000000000000000000..b5fc58cba6203426b84c899f3514c23363eb650e GIT binary patch literal 1696 zcmbtT&1(}u6n~SgZM9!f3JUd*Ly-t($>va{2iYWUGDt9Dn}dfEHp!NX`G91LQ4kNQ z;t~oy_UOq!!E>Nu@gngeIeJlq=HktRP~XeWBx}04=v#*Oo8SE2$G)9?VPsMP#y}c_ z+c4Tm7T}FC!ukN}Fb{K(CZXva_`J7KO(~pX4V~Eu+ue z!(iL!^Fz+MOYdN>v-@3!ILALo>Kq}_Ewfy%6-5tO;b{^VaQ!}Y zZEFJm#KX^d^dZ3q(9;^4+IU*A%>t;{t?PFrs#|4KwXLQNYRR-sPz#L)sKr{PVpWl= z)@(~n-^)cBwpn}(>OgMoMs{Tt|*fem8gLY9%JWf{SLS;m*LV$MDJT82UX%61UJ|jaFa5fQ^GesG zz)SjQ>Hd-QuRDYLTOwXZ>@_(*$=yZZH~+90h@3OcpZ;DMFL}S(l)EYFhlHnpgJQ?y hDew5~k%B|wY5S>e6{5C3rq870-iY~c;q81W~r%^;iOeu0XPa>KKxeKTu7K#uA@z;oz z1Z?~Xf{l$;8if?;bmp>~tmoP2!0o(wGjC_V?p#}2@+k@kQ(zt%kzfHfd<`6TU>w?^ z4N}SCTe5goEfy-}!Q{184c$TLp){*i3PB3X0uA~6?^ zESl+kJr`D^EXLHy=`oJNv1m+_>5dc3(haw66nDH_{G6O;w?2)SW z>>bO_8<{*a8W$JvVa*!*{qpEE_Y;` zYdegS?B(^W>Gb*UFoYA(UARvq&L^(#m&a5q+Xx24xo_Y`E|RcY zKZ-eeCV$mWpqA#OH!7RxACXDKqQCG{5+|45$$^B0PEe}|i2HWe7&|{0`WgIWbN><= zCh671Y5S>f>Hqj`8iWad_(JXfXMJyx|qlbuvm{P(eUWjNC$gQA)SSW(n2sZu% ze}T0iSX=rBEX2w#oz5h?X0u)z9oU^WZ|Cjo-0q#FHdX_M0n!Xuf<`1+05j0Qi5g5m zFZ4j#zIwB-POJ9$X%+bBN65ZTRi6Ru^HkL!-2VUo1tmBFLD`3hCA|@KyeGB zp4#B^%Wpa8+c7{8l%^G75Lf&x2JkNN%k~^rdTmu6{ zX$_4|+H_jx9T&Ni1%|4+FG$4QBMxlW;SR8@=K;%=i$%ADT&c`mwzip$dECkE1FN_P z4s#2ce8nlcwL1Tu#&83=3;l~E#Ku4UikNa$o4|lL{RZ~cBn9jGNnE3M@>l&VYH3gL zOcB*h)}NAu@Up)2bI41qrrxT7g7w^Wp>MitkDx6UM!alPn++4*Y3_V!}-F6gQ`Sd=n^%UqkT|BQw}ztfGR5=%BOcg1d*PYAo`k0AipVmST)y zB`RXj9Yv$M=LNp&89#{3CuKe19!a$xtocF7{jyg4TDzNv0Co$6#^#*99>U+ zUZTL;4S@f40ta}`_kp|Hg@RW^uDBg|e10iAjqVo@tC>O9Xu8m07DGEV?L&$cZ5OUWn#nL?Kcr1z6b2U+ zF$83m{t|In5FBO}(xrbuDCnYY#6@AeH+e6OnRKJ4+`epZZ9<-)jfj z)FU@sZOY7%mnx0iIyy(ptxuSAbm0TMO$@ZD^j8R~uZR7^K*PwJ!&8lh^J71>m2N}mTfd}wY&bhBUsmJ8j5Z0+MsM1wgF0` z*8|1uv|3ghwRXq0l=6dmre_=GGf=#6Ye(Pi8Z9fR|DQz0e7ZByH=0L{Al{4b`LTl2 zx`IZt$fJd^PlG_v9VeVcqdwy5UL_H66OHuf4g5lzF`(EmZlgmr|21F5T&gL~iPVGW zzbXX2ivD6<|};zlpD>by3yIA1P^)94RS(=KL17Bi_8DY^PhxriAMAP0D>Z*0RR91 literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_strexact.o b/lib/srcs/ft_strexact.o new file mode 100644 index 0000000000000000000000000000000000000000..d9d3ae40f461966d9b4296f99d9072c3821ffa9a GIT binary patch literal 1568 zcmbtTPiqrV5TDIzQ?;5X9*Xs_2aziFu^T~Z6-gR5StJ;+E$Bg(P25tkNg;WGSSTJ+ zgwTs0!%t9pEJhHoeu7+tfIaBVgHUI7=e6s0bE&huotfYKeY3Og>`E!6X`o1hM{uku z6u{7r<$NIKVG1t5iqrqT34=sZ)*fHjcf>=^d7nXc<$`jX#6rFtv^6* zsI>b7c{_BvOHP^HELk(VF#kz%^fjkvk2HJ@wa^8&_dDPAs7q((M(h#_VIi z_S$P2mML<=n!9(4B_n6%EYq?~Dh^kJH-NVJ476@mo0&>ae!x^W5Wmj0ZQ_MX+4rg9 z#RWs1e%p{<4Fq-*@--#3{B=)Azbiq!@}vi%)^3BSZ!{Wy6S3xo^hNpU z%3ND|^*0~_cYn=YZFvpSiLN#ZaKmCO&Ug6YFyf#8$a-);X=^vojcs%8e e&mJL|=cErviBSChm(i9Kzt8b6BC#aKF2~mLLc}mYngO%$6-gGrj(p*i4^z+z zEwFA^p6$v}weosyy}$I?7gn|N22Stx8*i!VrPn^Os)nGatoQxLTbh339v0K-nfS=O zo7r&+aWlb^%p9K_6)2ueB+Z0rCj3@7^ax-au7XjH83S#NO_w;+AoBDho2Fr|BX$-^ zw>NMsp!gS~MbyFDM_4)VN?mM!MIo*kVGAS`_ZQmlMTGfUyAWpxD1GPxOx_%gQ z^j`j|A44t8S$nXE$z=bLAgqnDzw{HBk+@cb;7Sb?tk*7Kj<|1kjq$b6ObIWY{%u&8 zpx2j@1;RgwM*Sit9o>=COFpbONuFpxdk7pfqbIGdCtg2$lKB4?=;?i^rtiNClVSQ- LQMjgx5$pO-l=oWA literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_strfree.o b/lib/srcs/ft_strfree.o new file mode 100644 index 0000000000000000000000000000000000000000..877430e6359ed84ac53c03fbd97e14ab251b8b65 GIT binary patch literal 1448 zcmbtTL2DC16n>j%TeX%{JXGspPo;_-cXJRaB1vPCMS=ls51y7yoKUezVRyhP77s-s z^wJ;Up+7_LQ2ZBOgdV(j%R#8`?arg)bb8UZ%)ak^`@T0bZ)QIUVvXGuFqv>2LQ_WxU7toTvmoD7mZb>&*3kg;pdRKW~?XQ zBXT!zRL*1rP@h~p3{;${bdX9Z`bGe8yVG5(cj9iV^}M+ruh-W)%^2X0u1!0;jN|u7 zVZP?+Iv7_1KxA)+D(RtDY2h~+rE)6~O718SFB6r3=w%s*{`PPvN63w~l@#r#8!MSg z`maIc>2fn3q{&d~>HgdKSb@&mK9L%7WZc&xDsmZTFm{inZ+_1u42k3Bcl{!TBn8NFb->!h{ybgp*qk%D8byGMax T_WtMbn@b<*MZGYz1a18v&BtmZ literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_strjoin.o b/lib/srcs/ft_strjoin.o new file mode 100644 index 0000000000000000000000000000000000000000..ba240108b45f9f2a7dd46e9dfe4217c2c1c6aa02 GIT binary patch literal 1744 zcmbtTL2DC16n>j%qHV2FJSg=LP&7ijW^)kiL6gQ!1_=gi1A36KiCbDtHYM3W6^e(5 z7;^F0pW#V77K(=Uv^R6iMTj&PZypNuz1^8~nr<%o!sNa8&G)_8c{B4)&t(FN0>Tt{ z0LPg?0i57*oOHt^%)m4hSo`NPYYk(pz13swro&oWJ+Q;*9B58`CF-vq_{Tar&UXg{ zw0ALcM5grEHf!xDB4=&AkMjOVzKxQuJ|tyVcMBZc=;%XMcHE+h(i_zF4 zv$SqlQ7x_}RBhqj9Ues!@q`xFv^Z|y3he?-dHWQU&4@BL6F&C|8-5e9>+TFdhz=k% z8~G4OUkK@~VBio*d~T8>$r<>4%IQT;sF)U1 zjY_3f2919Mbzlm|;gM$#C*XMrpO*Mhjt9`w7@695Q?-o}sQ8thUlUQ?tQe|oZrY%} zG;9OZQlkNCxmK;37GhS-Hr4Et!a~C~%CA9n>E>E-wQf|+QT_i6qNu04G=9=a#K^>X zd6~x*G5I+h)Vm}O*&_U^F%F(bPwR+#eU;<4I6i(eGeq{Wad;j%RP$f;bpBM6-l}Y3 z{g@15EY=r(QNm=ZB?vO;!=?K~)Dw3G^9`;~Vl12JpTHht;Mf0Wydk2`)PH)lLN9Q? uwW;=JzJ8Q@dK;u2*Hhi`-XjDK-%yeg$#}UDatR|p{RRi0kC)SJuP; literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_strlen.o b/lib/srcs/ft_strlen.o new file mode 100644 index 0000000000000000000000000000000000000000..fb76a9f378cbf7ee7c4dbc8f101e7e36643e0368 GIT binary patch literal 1264 zcmbtT&r1SP5S~^0{X2pJJJ_j$eC!HEbO^&XmxvCL$B@-Flyn7mg9@TU5k!|x(Vx&? z&{^ov)uaDFAav?3)QrBT&uzWbfN#F}X1+IX_C2rly`6xffG`C%p%V!fKn-+oyb0ql z0>h9p?mvwCtNOd%AoeqKqc@ZXysQEs%a{2G}G(>pj;k+az3eqM+XKU@nG}F(~peNvNb+=7f6it=dpm| z9!4{T;OpBj9rT?TAPCaXk}!xFKMO*iAC1-hJ^0Wsehisu={(IDsp`Z{J8rpP*(}?^ z01?We(Mh{b%bbg%Yi59U~&mMs;FmW`ZUaxIqJPemQq%$@=( zTLqI@x%5fdELzPz|6Rhk0o{f7i^TcH?Rj}jwX!W>K%DmmY`I9nUi~8G=$-skzk*uY zlisLoqW_XiA{PCHUzIqy^hpjREOdg}ML=BFU1R*r3)Z<8&ikLxF+r~`E(*A>@J4ey zCLP_8&&`_ED!8K>LK6e2%;jTauaD_g*;{{fNf BRdoOW literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_strncmp.o b/lib/srcs/ft_strncmp.o new file mode 100644 index 0000000000000000000000000000000000000000..01ed844d6ee593a805af1ee5d9f1c365819151bd GIT binary patch literal 1392 zcmbtTL2DC16n>M`)@n`C;z6m0^<)cn$Oe?!gGA!mLDYk|;6=(NZfVg?OLhWnp?HW0 zAs2su7yp5$Ab2TyFn9`{di5X#yyz`AeXl!{PR8|OAMDQezW2WOX5Y-d@b2BoFb3Kf z+=OFKvjFch$GCh1%WxLXfG^tLMSK5Hw3~g=_Isk^A@+XaioQ1xpS>Zai`IS*nltYS z|JW2QZ^%T)r?jD9{d^Z*9!NgM6h!C#Ac^-dzWlM7L$4=V114^G!^VfPY{+*H5`m8e zzvR1f`R>=n{*zCzTB)o!3%A4SW>9zBA}?`w>H4BVPN`UOi>_OweUY6{7GQf1f$bF7 z{LIwp*Eo<%$kRjimR`4Vg;$x%xyj5M%pfA&XqFT3>vvi-n>uNLEEvN!gjtNFSr$&E z(U?8?4}Rh=K8MVlv7e)Fq^xzh7RyGx7H#vI;phU60<`0?UGsQ1l0g+Xs*`m?BN^^U z;7~fWTQcOU5B#NA2DN9v8{zYShZ}3_jUWnj%M-2hsHQWqCsS5c zN8hb{$~EmWI>gy0@y$#!u&uv>F}g1QtG|j`syVu_h{<&Sg~T1bb$`8H!-&SCBm~oG zWJ>N`#f_acas{PdMr@k>Yj_x>+gCP|$X5j~D4uk5Mq00VYGd~%iBSCy$w8aOhqShy eczgCpfuo9EB*!p&EVCF((?3@FM~0T5t^Wf@MTaW@ literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_strnew.o b/lib/srcs/ft_strnew.o new file mode 100644 index 0000000000000000000000000000000000000000..5f1a5c5549519b90598cdf2682389adecebb19b7 GIT binary patch literal 1480 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 literal 0 HcmV?d00001 diff --git a/lib/srcs/ft_validnl.o b/lib/srcs/ft_validnl.o new file mode 100644 index 0000000000000000000000000000000000000000..e5d78beb0f9e52a251d928985211d8b722933bd8 GIT binary patch literal 1312 zcmbVLOG_g`5UxpluWvkvx)3iuK$}d!MMNYLM~6i`h_a_8+leCyCL?4f>jT7tB8V4n z{uA-0;K7rSqkmu_;AQvbA)r;6?y)mFUM%RYufDFYtERi>*jQbTXc|bo(J{UD(&6A@ll*eueKhItmH8Wc=FN~_GReG*rzN6fFL%TnJ zJuzxpaQXDE{8(51yoZ%kYA!ahWM%T)j_GlhVEXj8Nr7UCctVfsdK_SYDxqnI>!9uT zYQvqaZI@VL1UVXHKWJL)?mdg7x>_RZm_bCiQFl%7?=@^S8hSDSQBV#?5k_$(%%ad7 zMq_r%2Yl0id^a-vN{hJr^TXunEA;+DxZS58Ewk39m2~Qn2bj_TDqRTVD z9Jl28oJ6j*?*iN6E(exz9AMeqV$rgZvv*yKt*mWMJ1)=e04rGq&a7N|yTpsKqA2)D zH;g*Elive16SzvCH)K!{1t@;1y4Gxho=l+*y8(-Mkd!zYO6ft&QDhTWlr|BvBYr?Bs8~ZT z{s;aSo&^uNdepmu)I;@_LqOkKXWZF!dubo+y!U?Z_nUe1u|LI^nFM2?jlmQInMMH) z5<#5v!yNQLHxvu?t3v(9b^Z20TsB3UN=?xscQd~$+N@D*7aHQaz|LMD!-Tk$zeC90 ziR|7LEq0T7M#j=Wh>Pm=ix9GRvVPPMt%XyV&F3f6nQ6DQ>QvLV#k1TV`}kf(>8zEt zE!(yL2B|YNwmk=Iv!4z3zUVr{4ZlN-KC)jle0tTtpUC%hCU%fPK)lgerQq&9u9}QJ zNq{66hiM3tSc$VFbi~2P?)(d$dWQEQGGO%M?~z!`a&e=!RIW;14q|{b)zGNZP`BLM zsz|2<+>^COzoH}QZc5-wj&y*RJP&wztx|ETh*j65%V)n9$2{qjzX7kg-yQC*EH2la zitDfQzr!$2Kz9*6k(`?NX}>Bbu4yBf5Ei|Grb#m5sD2b{^i2L${{gi$CqB`T>Gd-q z^pQ)D?ql4DP3j*rF=DOL&}R$?3*9y5w~8>KymrxFLSTVjT}~5}A5s$zsho6lM_RA( uxV1@=QH`Ecg7y+W(nj@!N6#LirwzUJlVFJM{|%Pn^p@&>K9KrRRQ~`(VSXe4 literal 0 HcmV?d00001 diff --git a/lib/srcs/gnl.o b/lib/srcs/gnl.o new file mode 100644 index 0000000000000000000000000000000000000000..3aa7ce547812418ffe6bc49eecf8a6a5cb1aa83c GIT binary patch literal 3320 zcmb_e-D_M$6hC)2%~v*Bth}9YO54mS-e*qw-nw2V zLanW=*ELt)W}mXkiSG$wu6~bco6L>6dL3bHv-fKl?6yxmo^|tf@yo}v2D^K2tzjU4 zCb;SP3eUq?-)iQQ#*9P$Y?0%iJY!+t+`+^vOrGimqZzE0NZ^sr1n8>^y(F{f0=5@P)HmNT(eF6}jn9m@@r z+UvN1;y|-#2esVdwFGwScJWD8d5OHqYvrdPpw@?JZZUTPuLIrR#rxU#yV2N>ij7mn zsGF=@+6243T&lv2ZXWf)vv>=vGO^?8)o(-Ss%cG59lc&I)uH#3-*CgTT04Je2Uk_4 z*D8mI%G|aPCHS10pqs9;?2oJx`H531eSC7-js|+Dq<5I}vn(Cs)eQ(HIzYIJG+RW3 z;N=Ytv(il&%ND|{J0JY@PouF^)0VJxnOodMug(vw=?!^9sNGnl?1N=&WaP!z>GS5~ zoRNzq6Y>6d^6bDFv5NI4`jd%dG9m3xh=un4MbH+b+Q~>q=Mom;Da2`ztWtXp9f^Jv z8tG{duV_f&x)#goS01q+<@Q3=G7+^69yVGO2!wrKD#F8lbVS=) z@D4;miXVP9!3qO!p+{_v3BKg2kR!hjd!BVlN7L7zt?+JXWM z2jJrY_~iintpMCa{1~3>9DRW(ymmMjaQNl37=V`paG1%>$FnePX9~7eFs_-j%+8wG zD;dkQi&hQ_cHS~(%yH$R7D9y>d0VT$k#{h&~%^x&w|1BmhmfhdF@!6EVE z)SxI{{(yq_qF(Z^D>&Vs#6MSXm48^=J5AITk{=Z~#Z~=WRdDK6$^T68LpBosLcvx4 zUnzc6|7!|g_47*r{!sCAT#4HyK2cJue) z1v7`bT;4Y0W3Q&q7HlJX1qozk&Ss`9V}U-$|3zZxg<8)0(xeb0xhd|cxodLen&y)@ zs75Iqszk+8w+v@kbHXS_XVK7zho4nA4QV5 zCZB4pNiFTY@x1$U!ahMpiu@|#pH?thN_#mEE0{{{qD%D=X(v^0;({=5{!w91@31QJ z{v~!17k>5Y6#wTlL8SVTt+bc*^NUR;AB*_1{)Z8Z_}EhzZ|x9*4@E;(XrqYt{6|se PXaAbW-%xC6>9zkC<6DM& literal 0 HcmV?d00001 diff --git a/minishell b/minishell new file mode 100644 index 0000000000000000000000000000000000000000..d1cc668f821051528d4849b6f792d7b62171bda6 GIT binary patch literal 177504 zcmeFa33!y%6+b*-5m00zqK#V_6%`kd-GD?Vz|@I=rXq?95)5HcmNc1BTmr#KG}Ccf ztVL7n60KX+Ds`b01tvflv@J%fl3LW!qP}COjkpjkn(uecz4x7WZt~8O`2RoO_dUi( zX5KSryXT&J?z!u`(lhNRJ#um!>aVBc90xr$jS>*I{GsHj9`c*R;dbOZ4#B@e949&s z0<;(YcgtV(&xMjqefE`jJ@H9&kIUcn&toN?`cxXyC(+sc6%P}?s82_(cqY2u^mT-I z);~865)#y>m5${VOAWNoz6FAx`n1xKZCZaT=vtpl{v2_Ppj$0J6&;y_=+@sS@Ynw# z`O_usr9PECNk{sBoBUn>oPyuzPkj3$I;z*NVzBpCY!T1Mwpq`XhX4F8)rgL%&nGYI0Wb zPXs#?|I=Sn+0G?>2HtV_Z%SU9BOo3Boe8Re9l?$(Y~U3(@K?a2Gd>sDzz?$FL*;Sd zfBo+c{LmTyvuyZGw}JP!;nQjZzte^fxnF1cEU>}aC^CmmEjod;T z{*T$xd`%WdRV0e%8_>3=Z*4s#ssa7Dooe=5%Y1mCINOH{u_ zKhocvISZC7TRNxGH@Ct!XO3e|(Z$o}%qy!XTd=6oS5|TH^vR2tEiJov?$wLS#BZJd zGG}h(+@*6CEnVaTL;hY-R=x}z7cZMTFJFUI`j%Ccjd9GcC#qATU<70=`vNC>*p@=l`op-D6d$w)HmNz zxoE-Cxr-HhE2B9}9Tkh`z&cCIuAhTmvCL6XHg}%*vKZXvEvhVEJog62+VD%dRV<@1Q9w z#n;ls%PPwp%gW2h;HAsw&Y8amiY>aa%rUpLw5*a0i$1zkdgPM1iMZg<0 zc=>+?{BaF_&^`fQtHC#aBjD>b_}*^?Jfgw>+AiQbH2B_wgr7BO@Y@d&@MaC(e5ioO zH2COT0XH=G4aW$0s|Jr!hmXHD4Ze1?(9E|Of_>I!f^EG&DNbq-S@Y5a?aIXfxRr+nQ2Hz_Ec9sUeRQhd+2CtHS zyHJDQEB&)vgHMwFxm<()O8RHD2LJD8LjO7q{4)_i{CVkz4I11p{q1oL z-gv0+leHSWT>8nvKZ@U#pQz_*4PGM0)Abs>`lo`vL4)5a;Smk)l6;yq_(Kvuroj~- z$Fs?Lx+Q*|27g?_T^d~Racgjg#Gj?XpO)|v4X*f9Yw!kT9}WJz zvsr`3W(aspgMTF9j^{M{NO+zG-!I`V4X*gOHMm3K&(h%EN_dF|SA429xI>n!UW50% zSm@oL!4;o~29GHFXz+fLPfUX=K91)#`$#@{8r&)QxHP!p!r$mD* zKGhn$MB>+L@Yqag9}R9uctnG{B)nOJ_rFB&iD_`f$MHh4eHtzn&v_brpycDy;EIo1 zgU2MFSsFY~@+r~aichr$FPSOysn_5?mV6pCxZ)Gh;4Z08vj!ic?4!XIAICb)J~O3# zH27(fk4u9qK5h*jk@&MTc=e@%e~AXaRl=(^xI@D0HF&**H)wFhC!)ctFA;K^HTeCK zPfUX=K8`;n+s7^O^ECLw67JIAijP}^yQMy}H24#ePl*Ose5y6LYnITjUW3OZyg`G1 zB;gSa9=lZ9M}zN|_%RKx_&C-l+oxLM=V|b7CETUK6(6?-uf9z1ou$De5?-Rgw@Y}n z26sz%y$1h>gg0n##V4Y{V-mkvgS##ldd4*P$rA4PbFzI(Bs@=pyRHy;E)9ONgu69( zO!Aqf!N*Gc5)H2SRBP}C$){d}pDp<`XmG_RqQR@L6#6%7@Da16eKhzu33qJJ>?7so zX>gCkcWH3N$F0HLQlD8Ge5&MAqQMoPY7O2X^{Ln3Kb3qMG`Qju(clqf9}Rw~5uJ}YW zc(vrytijhyJ~0ih_&8olwojx)Jm=}~xdQIe;M*nKt--73Nc(8;w1!CjKiEDioE zWgiW$_*84~n6z`f2CrB4(cp?tM1z+|KFu2Zeq|pGuJ|~%Cfg?_@$)qJbXqvYpG$+! zkZ`vKFOl$B8oWWmOEmbS5?-yrs}~8m^%^`P;SCymyM#wHxI@C5HTdfi9@F58k7HZ1 zecTd1PlGp0xJ!d8K5h-}xJK}urNgfk@DdGvkc3xj@M_7YUV{&k_zfCd@rh{gh~(3( z!H<@FVj5iWar{NIkK~i5!CjJ%OM@#uZVi62#4pj{?x>KrT!W96_|+O*@ma0GmAnQW zF8Qq2;MI$T+=vFhRl;K$yjt>U)8N06_>S$#c2j&@8r&`M^ELPb67JUEicg6Kk4Sx% zYw$-TpK1-R_%vv6hs0m6!Jm}yhz3`DVj4Um@!K@`fF;5%4q4A?ePNJe*DeFz}`Vix$J3W!g`0=MqFX|=!)x8S!~;IwB<{i*#NwD)kh0^&1otMZz8>vO-oUoLTg{@hkNp5YwV$*H|2hY|@r|Ar((mzDJN{03o1Q5s z#GCl}b$X_*D<0wJSLm6#toT}f-a^mRCB+-~c>_IDR}^2(&(G2`bwTlJetv?Ushf|6; zE9jZJoVbIZuc2q^YT~Wm0dUgQ^h{k$JjTzL(=&A~@g{!0h@L5Bh)4MOe0ru-A-XYlydgOXdH7 zo?Y}DHNqzj7E{ zJA7yvd0aeUz%JjH=u3Xb|UA@m+dALHA6N1!?E#P8G``nAWLgR6=0 zR{071_??75_5=Dj^*e8{)!X>#x!%UMp5C18-q*hK4FZETl0o10*nF0w=&K9<06K^N z%$eRm!F9lLc!MAM`g=nKZ=)Q>Fj&}Fh<~>Ct_5DsY(=L&<2T{QnV>1Wcm~>Tt~Xd^ zctak;8;JDv2Df;FuX!8eJ-w?M9o6kCo$LD5yzB#fm+|WZ?d{$W70OxjUz8^kni9}V z3%QIBUnVWLP78i)ta{bqfRylL2yXNScX%6(p5ERAwwB|#YV2Db-3>J!-B)1AN5d0*r4Uklx%h50SK|6yI|EzM9vC;uR#- z&AFuU?;T`;E-8O{LizPj#DVaddqv@uv$s+uQWbhpg*&`KeA1q7p;X zQS!HC;r|R-aNyd*U?bzgGy)%D4!M~Mtds(&fxM3L1*%@kan{154&%e^sf(7MouqzJ z5^D2)7{$0X4f}t#alIu95N+wA{J;H*y~i6wL+`+r;vN_WKJMerf0bhHXDa4?0a4C%JthuIsQEKe zv*e}pYI-ed(ssB^)coShE~zdeMQ=R zk-d-TMYX>L5SYA!@kE_m!S>}k5tLD52S6=XTE%MJjiAh7ndrJh#Yn+Zh-edtRPFFI z6w?v%d?CEB@RGurlnJcb8v%G)_z}u!rw2a@6if=i^1gwa32xl_1+0sFre{%bTT!@X z2m#Sdi=w@TJoob#3X%Q1f$p^^IAus*eE%JI(D&Tw!4HcX|I@QDT1!3UXZXX{LHPPP z{=DHp3H4R5(@|xRvAI!rhFvHcNIHZZynmXAet8G*!*?=|z?Kr*5cUnx1t&-1bbeO} z4Mae&MeoLiU4Q>M37Q&7;G*#$Gipkgtn4y2fix7L{7ZF@J5qIz=dvVNGHSH;$l=6D z+9b2w$cdr_g$1NBQ~oyE z<}32sSB=kFNgP5!WyGv2PSHSyD81j?_+OAk1=+donsy@FZ){*PR21ijcVRXeDa$*4uk|n>&&2J5B;~x z&E-!Z?NG8Dl)`>|HHM{erd)d|1|U(^6O~}8h5ntl8`N!M;Qc;<#-91FQL~XFkfis*Yri-l)wNy7l5Kr&5$-!1hU_jBV}Jk6(jpH`s!V^ErJh>%L-=~UX>V|4Mp16 zjM11uNKwxo)Ij@c0_D^_$@${cln<*zdfv>kH6Zy)Fi_-9ZL?DM|?h%n^5*&#~7)PZcyq%Te5ytAo zh(gY^w0Q%bHp!^IFEHME~{^DwIG+UDaT+B)yCs79tG3?&nDW zkq>S{j)X>6@CcT3jTm$hzHInGVl<#^3ZaG&-ZK#rd1M16?7@v*YRBRGXo|5Y_->%! z^Jf4VsL4;JT=D@5TEWS=MZw)gjeC(w)(lDH zk~Kqmp?x~`?b}E2p)#?g?`O#G-cT)Tl4f>mT^v$`#fuUoxv5%QAVG2@4EDvru*Wi# zi^r1jkyNB`Z3M;NQG-$=-l|MFLAc;s`srE38(rB!7G-A< z(hPh03eX2OlDZDx=yV!SP1blf6t?`p7Z3hi$7mtckqS+ZLmH??z|%DIuwfOJGl#eM_#{bTLZ9?qPH5JM?DBh z6uXI!qoo%bFoJR$f^v8eCL2(*G&)Q@(J|{|)4MLnmiAal8y@>QO_afndVY!9We_7P z&@u!!O7g02lHA6*7J&{>fHPpWrM8(9p7Q3#P!j zV5>8vhKLSMX13V{ZHxfeWvkNrA1bpuYlp#DfvN)zzhp}5JH~J@wZy(e3@e8jyuppj z;n9d;)%f5Tb|y`?V@OERe^Hp#+5O+y^-bJN?mX@=!vX6td36?MfO4EQCd!>vAR*_$Q=PbnORR zG%7Wh*qmy)gM$#wFhz}3w;-kNB(tH`X=lz$1!F`gu9l;r1%C&-w$CWz^Y>xbZCQ~% zc{wDR*QA!im>XFACZpu%ukUjqr7r$0ExnD;k=JmyEps4REJizfzZC6kH^j*t=x3lb z?nT{fk_Zt(_?L-bCV8n$G0h?#=CYgYI*HLx@6<`J$26kRAFFPd9XMFz7t4CE)7hJR zPb^W)6mm8)nv}DeZl^#Yu9o%$d48Q!k&WT|Bm)awV&xt+UZL?# z8ih`@lGrPB;9r&o|7trDvwz1kQ0OmAMp*z`XcX4^(kb*SD~Y{A*IE@?K?+?Y6q=vX zL&sRSr%7=7NeM_k2U=?R*O=`~SB9N$TO7l_439CItmSXMLm7U787%ZZsoO!hm3!2< z3(gCLjE^3p?lhaN6KA1>p_vDQ#h6VxU@n(pIF2<~>Rba6mu>86`6m|Ybf*;Mqg>;QuCXZ;zkV* zttO`FeIBur*ekSx(WHg$Ace|=LaBrOc^2+zg8i{lf)?x_!?antGQ9tWrP%gm*uZGA z42Mz~9{eB!qXw+pqsH&yqfp2iuhaYCxmF(b8s=Fwe6kH1w!fc&hVTEwQhsbQz!FC~ zlRa%Eu~+CeMw2GHoD^D`i9*Fz?one+1`XplD~Y{AU%gI6l?wGEh2Du}V4=-SW@bTa zvBCxm8Dkr=?XYi!np%gg2FX|8q8#Hc{4Ph)r$eT332Ia!Ody0cCW1MNrp;C%PpfT5 z-$N)5B$V6UH2-={n#LYwy+jF*UAiA7N5=fXdt^OlO`ggfR4di@fOOn*aFbB0E$Z%z zu`>+C%?$ob(zTBT>R*5Bo|~PLFp*9i-Vun%lQU#Xo~R_ANOws&10|BRm%(X^B8DnbpjMe4`rN6v7Zf*lZ%0 zSxu_7fe~B?9&>JZ7&WqqURHo=S`RZhj7i`Q-xKp6C~4;#3H9SMdnHfIr4VVzor{v* zy@P!jU3%2`&(YQ{!^LAqY)Kc(uICW7+5!#auivCdOu2x~d4VvCBLs28ARtc_rO%rJ zLZ?{B+gFwm=X^R$0;Jp~>QH6%;s_N_6LF%{={&+7WdejSGOr}a>qMrQcz7;BkS7Uf zX%Q9CK}kVyb(D=9!$edrEfkae#RCj!d@FxU#lbC2A}n5D+(`F z`xgRx7t-d1c7%%;eE4@-xNP7O#hoxGoa57rsf ze*XKw#C|_NZ^5Gd{GnQsiOpK@a{P~WVHYLN+eS8bQ26nWrx53e_whz`N?;z#~}0^sVnDmgT97x<^2>w5nApx%S1soKYzH z)pgQ0iaexpS5vnDh4SREfVfrF=zfKE}Ifzc7-hg@AX~BKAjx_+<7X=TB-;{w> zw=_zV*{lA5LPKkG03_ zBNbD(rT<0J7Nc3BptYB!WA{{gc0q{}9{U~^Cdew~I3CFU?CTxJ0lu_eb6$EOLrk63 zhMCl6_+oQfGrT5I!edX7dawVx()*%xcKJ0EXH=nVAIjNNYdk5v#)BmaEn~%yh6>lP z$v5_Gk_e$((S|bGIKG=iL@A*`tx*fzGJX8Vz7socmsgwQLsN$2(|*cBio~fdrbOBu z*tSq^_9~nslHx>vR4)4?Z+LbC@1*Ok` zf=@l0E!B$T4Q9p6tOqL>2RxH_a&4LT`RfF zbTU}TvznUdh`W&H)ArgE)W$&bAVg76Y~q8%a?SR)?vzEnmM3lEOCHHYjnf`PXVdfN zY)T|RcBkWOUQaq4|K>*OZ{2w!Y8;MEYc!UYjNvFbk9Jxx3PT1D#h*o{Yz)GE7QEp_ z?$F{%hj2mrBn+}9fR!ADz4{_>zrph+iSRBVj5iTz17bcO$q4$JaFTaN;-EYn#6@iY z5`T~808>*SZl>p6FVl1CQ=Dtq?6gCUIy%JsSu~1)jHvOK9Yk(_#QJg~4fd2|M81Q_ zevyXkL<^bBZ|(fJ4Q5HS@kC3w7FI$*4HgZNk6w;vS~oOLLaW1}budlvYj5y{61Y^b zDfmj=n#K55SG$m0EIhlqDELmG!1+_rs!M=v1UBH8M5`__clRIh+6N?d26p!!QBUN! z-66&9{?9(^!MpouyLS(2-r-`HHA6Rh8YOqG6S{(oNCR7PI%)7?ieOiVgUq{(Yr$eW z5;hQ{b~BVaPRJ$e)Pamhvz7Zf?6=+hzK|OVli|GqV}v}WHyo|P8x#q*%Db_9{vF?N z+vZJsb;*cg5AWpV9X7=)1k@hthjztNwR7Va?F+5PrRE3Fa@q(n>S+}pnDNDg=Kc5w zhl{h?9zT9P$|6PspP=dG(15Ed=J5SgFrt%zneVmV`zOH+o<|!)QDsr%*Tgjfz5$%G z&sMwNnhc$_C!i8A9wd!$0+a(3=V{k(<%ZPO*>BG_a-))03&4b^LYxVs02G=@Oz@qV z-18k(si!UK!6vv4hCLBYE9BXmWZ333=MG})OvB!R+75cYpu(3nNk0AmLULFGI-8i{ zWa-_4QD}OrxAZe?h;H-de8y)=Up0a#9=O7|f@^YZrPJ^nsUd2s5S8BK@X-!s4x8^m zJJuC4cd)H<8pUro@A#^5m@q4&J`Yr`-My&Y>`b)r1?4Wz+WV*iP^qGiF>b+6#vf4o zoj5-Q$?y?wEJTSNy4T^GaSzQ9W6}WiN_|JGtk>LaghjJ@qC-2M9g2RA8t-!X1^jh< z*JpTm69*0HjvxWsrJE^E5exON6V#h9kU-cdcyJ;*zheQHz2hIBM}ck$){x^00A?Gza8b`nFbqu^gflzN+6I#srq4ttW!P%+ z)pM)~dM?L?cC?h_nbW=~Vvzc8y5$JWGMhPlR+P>VGp7d1$mdZ|YhFl;{|;iftf^-3 zt`d5|C3p_7`xcrFhHRmpSz73gXLSqFe2bb}{s?8w-a@OT)jL|~WJrszQZ<+=Ii4u= zA`8)WJ>P|}DQ;Eq;*J2sqz(yk%K2Y6c!hFQEj{!{%-dU5LtT2;1xcxA+8V%tk!Wg< z)+>&oAv#fsxjxaP0}-2vYTI+!^@1-Zo#SG1_*Rm~8WZA-!q(2JFXD_`tA)RH*mW0$J`Bt!wn=CGo z+Mrq0MsAQBFdq>uQW^k5r1X3SC_dg?uGc_hOtwxJ5-egt@0ipqY~3OFjBvA%d(0-X zYA|Yi^fZAmKOdS7XG7c)mor=<<^Vd2gCc=VI*xDN129wwFha!ox6GP7A1$Io0~59V zs6rC0((h#@y4EV60IyIEBp;72Jh(GAD7b=Eds|LMS9RAebZ;X`O>~r-4~7wpQlSER zBP>(m7xe7m;`ZRoy_hop`)aiuhbpJ8ZrnKZWJE8!y6t~JSN9p7IT%p?NeClM1T&Kr zeL|kCA?^bsE_NIwQ>`g+NF^LaZH~#bvj${ z%~Pg|O!RX_1O_YUyS#n?`BfX82bO8bm&kT3Lu%6^fhxn{tl193#`zc|d!LP)tTaV) zf&W&^;ZgRoHZ)UB8txL!0wZQcjS?sYBhac#YAz=!vqi-Xdy>GuBHwt@v=T4#C_959 zYQ!;`vWT_k^0ZPu>Q+lzq^EsDnw=2K-PsYr#Wo@+FBR_i_WMs zL(~}~J_AJK?&ak2DW=`6=rDty#DU^LTN^oXGD3(y&ekCQFE!b(0$ zjHL&qHpA{mEoN8-viRi)Eii;A?QB3&Gx)8Q!EjL^cwW>vL4221$|&7>0KBA;z~C@E z@s#xOoy=L)(y?+iBb~I?5ZG4IVM5xtr4qH4Dk#432#H2q!T>!!RAh>nXNn*W+C-0s zn1Y7$ZXkKu;%K1`(TT1=At=qvHt~Nzu#}0v|14%>C;tSAOwlf}GwuBUu?b1Kz3Lx7 zERj^!LS4VJ_FM`~Vo>k0E%uXwmWmA|6rV1;bk_czyhdeRm^Y@tP4t2v#w&0 z8aJU<)%5#&X8>V?iJ)=}c?ls@L9ga%YZ*)Pa?+&siVaK@iWGwdP$>U4Og@=C9N^|{ z#^~*AD)!~yu^BK~AP40Xh*_CX*QPCYfT5VS@L?Shh3X=oYQ?7~j(MZ5&{l<`rp|@F ze#lZDkydoYIeQ4R2?WxRa)CH*sv(oK*=lf(sX^ji&wIci z(AMrhHzj4S1SNGwFM!Bs08BW>k?L2wqW|RqRrJoLGj@Sn_9b5>g^DbQOwTbWgK3D{ zq&8wYgS@@>E2w}N7#e@YZ=z6zO6SZO4_AzNeuKhD*7F-r3KoW#-++VVs!58%`_1Nd z7nVqkk)-aiKo{!%3O^^DC!_per6hq6)ahsUCCwLDH@GbiZoIi2?1L|q^T(Qn^bwxD zx+wTwpy0MKXjCd|4?&^itle_a*pGQ>moFOo4Kqr4(O54mKSn*YDCTInk~T}wB~Tdi zl9Si6BH{i$x-f59hl279N&CHUeNSCZsFq5X6B+NRyZLS@k(btJ1HuLt7~H-YDDB2H zm@MeIoqnKJmVvV!4QZZ`KW1ET4K?;HQ-ZDGI-FCdi}$>ZjctAD&XGyB?OngAGz50R z3S3qQwLNubv*ym*XFxY^U?WwF!{>x~xPnlrdx5U3g~xaBh#c^}E^JF!u5C9_*+tO5 zhlkC6YDcp%^fT%q#0bE)!ZE-8Ew0xT*Lt-S;=p1~#9EQ)zUdCFs8Im|*_&KSTrMIm z1typ0z$E};FgV+@=jK1D50^|%f{%W0{W%P3>Aw4^R;P{7n}Ep;sne;pUxG0sASK5{0Q{QP0?>$} z#vqgpk4R{3I@=k77Re#w58X@^zjZ&bS;UHulYf-dWvwF&PGk zx^q{i)Bg~w{!t_L5*flyoCrQnr`%GDpm4Fv z)`@n+o9p4TGO~#NNNf>#FhI^>|bcYS#cR4xHJz%uACN{cmMJma_IWsDaV`l|Mmu#5H`&Co53YUTfL&j@ULal!uMmbyohi` zH@Bhi$j#tF!L7z{kOki}9{V+1zJ0EU26lntA|TPu{8Z6mIO9-I?F&5k1Yfz=m!xbp z8u259O~41)oX2?uXz#{){BHaXVA07Pg>S1Zd)UlZ95j&o;%ZtXC3w?82|oBu2eVES z>0&j0HvV=ew4_PiBJrjJ0w$k~I5?6x8G&9c-N^{PoVJ!WUWt2ZYx~nzq>{*jNRv*g zTdXFXK$=LL)FHX;SA@xXK5NF&C^S4dV#~IL*hVL#5I|HaM2#yyg>mV{OffNJ%xtjt z3or}LFhY~52d8UD;Ti{%0Nh@SvV~?K%K*?IIvU%Er1oNRfK;`0+#NvRcTuFUTH9(us%-FvZ$isi!=|U^ ztUUHu(2=`_!ek~fO@IGqyx2zf#EX(pHc7A`PHMmp^Mg*1b?PTZBb z(ML@#gDg7aWvIhKlRD2reQYN!Ayvk6g30Ar3m3GjjO?%{tnA>jP!Gvchx<(~Lo8g} zop2FtdWFQtaa$AB~34(G9!E#%IQxXJNk2l+8zAeF5A+yl=M3C4N0RO2nHWSeJDIq1+ z4>E1#KbO3dj|X%6>~s))O+uGk(nSUpZcLpLj872cSqRwkJ0<9wAaGd-hT58E*UwG! z47Cu9Ac72Xk2*T=cOHD!@5U^Juf? zTgu8(&5(?gbTr%X>`Wkw*^ZO3OAw;6nC)l-qja+!+ipuJnJRs`m+_FkP*#H5Y(x=I zvT!l{$!3mZfgl>nM2}gBP!2nq(M*Fv+oR+v6q<18i5(Ee{$KNP)bos6E+%_*=>?;& zfUEWGsNm9RtNPWgnOW=_#xuwEJf4o9Eq2b@JIxpi_aLT;|3FUTr-gQV8i$p}-faJ@ zCB@kn4@IX!W=b^%eMNAMiKATh(r;n5rkhV-jh(gAgqwrh#*XI;IXg2-Es*eL)RbMTypPe?cP>J4 zjRNQ>W*MGS4B)NjJjp{lI&cK7qQ?Ia@^Fz}%hkpwNJ>&Q=>p~=CuVJ?P>)iQcv7TU zPKtaEC|%a~BtEeQ0jbC18^77vaudXI%y%s3flj9@WwVch^Qo1xxnzHu`as}CxJ^EX zJ7_HxgjdSynP1wKGK~C%WSe#{=@zO1d4vtT>GZ!?MMHgP5hzt&e7@jQ4y{7i6E;1z z0kH=BXam-8VY)gDeO$H;^3SW-6(C-O`I^-nvE`CgR=R9rR!oW3jm>7$LKQCP@fP60 z#-i{~Y?1=&yQ`C5eRu{+R~Wnid&}in%PyUaI2rPJh4H>>Hu^%Y!mNt+?*t|9BcCCj zQ&#aD3l4Xgs05oXa}1+WWrHuI04ebx)d zXFJS4idji|b&^9InJ1;tzGLVZf)HRl3>z3{OoQ-LyXsb~Aa|l&by35Klr4Tgb!K5X zEh8rV?)Xy9d)>kv9Yi3Ns(FygMK>g*%A*Dg_LN8YE4?Ayjlt7Vnaxd(0x?gDO+usV z5Lz)E9)Z?4@EeHYh4FMP*p%ZN)!U2Lfi_q%Mu@|nP&^s~Q8VBZp1hg^x_-EXLR8YL z>vtLD#AWL0(B#$7e*!2Wu|t~^1Ld(*WJuVJO)|AX2KhrV1>Z6q25s<$r>+KvnEYYT zH^5KDaL>)e5E2p4vFD#eM~!7rh$R3xgTFu@yB7Hnb8w{Uy;e#T%8d{D4zunwg*GYk zDKt1HxgecLF0#C2@%YXs)Fd_>hvwF(F(uEfVdfjYSMUVA9_b|5Q_ihzxCxc_A)eK) z#2_IIF%i_h0q(q0?fbd|j2MZwYLO4S*r6%00YD9$?P_?2pvF>vXFHC{pbjX-{2Ip2 znYp-=?eA%mJC1n!kh5-v$hEWCfOL>lF4XmXLIG(V+9!nf2R@D%QX znT~p?Dh|9M5M2&;S@$U1Wu!Ei{Vp|Ijz39oR6AjQcfGWS+%2bNlp^eIQb=ez6e(9i zmupCuN0dXPqOP`5XEk)X3zW2z4grLA?d-n}dwsv7@FfC(s}n~N3Llyf$x{+FJ4Dd? z@)0QAs$3vdw)B9#JG#5253P1 z*~4l;e7CYPIR5i%5|DHi?3V}7qvTE&lI*(AQdW#4KzSQY&NY?qD>UBT>8rh?#*qRM zJq>i_HSsS95-zBM&PH3pcH+X8z+SI7!h}m%Zp52L%^}_jDmwgJ4e`iS=37^P23~TA zhbcG822_}9_33aR7p|LvcvPh@619ylfF>uRkFN>#|13-7Z@0Kp;*R`3&AQ?He6l_ zMPxRdb3VxSy3tq4((qz8W8SSP5Fe2$=$_P9hwZeK5> zB#k)@^|7i=nwLs7aoV<&3NI(G{-~(nL7mq>V^fiEnoXPzvFpPgU{oHX)5vdTP!hHII+*QHW~bg#c<;$Ht)Y-#r7ly@mA6mI1I zsBq4jZ{|Fow|3PS%~Kth6Ox$f%;^bc?Rk%D&`hnY_i!LakX3sfHgp2`U~r*KSi~ zNYxSj^%~P=9E;vfR^4u2;Gd%)G7Ww@ea6@! z4F*ZOu@06AdhQKW-QL50PN3@EcK-?LH1|}n7YWw!Kr*ILVWRk_6&tF&v{(i|;LN|;zvBATO zH8x51NF7fvWwF8GN3aVvI0UMUw|pn!l#3dSKQkYrY0qAWeSyCj`1T~et?sxRIu0>q`rY0b8A1=*b11}{K#xEKC!ze%h>SJmQ=}*ZHK6(iPl${g^z0Z~v$#X?H%}-j4fL zmKm3E*5R9PJUEK&hm{ta1+>rSk+Nbbrsiyvd09G&MhnG1nh=5LZXg!l^BiTFsImFa z2v8>yFO<9scltdEDL5QY?P5QV4O7_gOx8#kd@Jn9>j~N3MIG2yoU|@L^ZUW718O!Y zP<0>&$Lq;0;v4V}2E|cK@oc69z}N|)+?Y1^q{q!%r(#Wi*hm15!9NI;$VlwGxcZx( zNf#Y2Mv<^df?|eoGtC=qU={^??gG1W!QY6E$d>1?OBe z4c?#PSs@H0gkdIvTK2$6Na&`HGV(z@9N2?OG=)a7+CJ7+LxhO6{)qYFM>A3e{co68 zPsvDE13@?piDQR2v=j2Y0rqt8FCkB?7!F+u@d%Wp!Y0-QP2vpHNYoP}UE?nSNE<$^ z#ObaY{l{EZmhR>(eH~{l-xP(!^kVqf!>G+2w~VCP-_!gol{VN@mz&N=R|vUgIi7~2 z1w1hnKZbLo&fCYJKv1ePYoxaR38ar@JDz!Iv%2Ma2V6b^8%AKu7(VfgOUbZI7xe6= zM|O0Ac>p7OhXA*lluXkDm@z{7Zb@qM+)3q>*H{C+7qsihFLjAVpu>hgnWhSe+?n;J zJK>-Td}4OuDqR zzge-EE?J;|T9vK%!xG{jWlNzvP~{$cml?CM^C~p@uK`FTcQ8>K$3DI;WdzcjR)>E8 zdetqzLOiGfF30^=VzmrU#^n$r(wio5OU%h5=-F^uPMk(3aXN`O<(iysO>i>3Gw8?l zSsp_)L*bnBFboy(K{Kj|3%Pt?U5g8Y+7VzqyNM0L1AWAs@DF_NY|l1-uYhManp(17 z??@BZ9-qyAXdf!}u_E@N;x-hw3!!3!kel%T@5sq^=ZJ8zhfi(qcHVwGN}O#J`jS|i z!Gc@Vdc^$>Eoua{D7Xun{LE(Avf@8OJIvNu=UqwM;WJI0tbT|^PuhGTc3vF+nOa@i z2tDy0o{8uBS7s}5-xVYg-Lp5R^AnI(sk?Ce@p$us%=1`k&cp(LKWfzRYB&%~6Eh=Z z`G+${BluzBwDo>!g16f8g&Po z6uj{X+NcwiBGZG1fo{BtXQ4;9;5kAVU?LzrAYW(>w$^#xz?I~Z&3`bqG3uxUe9<+| z>LYB-;<^^!cP)T8UbUy&OU=v8_sw@WoSSC80Z^N0%rBvwIXre^9&fN!F#H0)9r#YS z6vT3nrw^25&4LVZMHNkDFzm!Zo5;WWGBS&Z{Ax1+&rOz6N&W?3GllFu3)flc>)|I@D&1lG??zE=ZmO>;ex5Z#P^@zJHP5nO1*>- zP7?$an{Oqg;|Zxhp4QXT;Y7}AMvcc%d17DnMyg$k?DFE|j%F~A{krpcXQ6rI_ab%} zPn&Zcz0pW6RAR5wLK+_N?pY|;!K$|GdUnn(Pp~tu9o>uiVAbW$UYW$=rNZQ;OVJ$| zi-01%^t(&prKf`PCW$be5EhyU(goUr@S&MTa5|jz3t^-Vii@@1zk?wo$Uwmts~wEx z-SGK2AorHOg0)`cJ!6m(c9!_k(s)s@sW1@hQ<%TQvM|2O=mD*q>-u_0mk!beT}03| zQSkYu=5?Xc!Jw-fAa0lA`t3k0@CN>$Q~kVIT~qx+(A5n{Y49sAQ3lV=wlDZ23XHx0 z&Uv1wvaC5Q6CCnAU*NWM#Ke@EK0C9^n)b2CStI%m1V7OgeUBd209$s&!yX46SCb*H zJ~3C+OAzAg#2hJB)h}#;?rJyq45~QG94V%Q5?ckfhbYSPZty1&knuImZKt>zi0|=? zdN6_MaBTP7jclzRr0v^1cRAu`qkAa|;U-X;fWQzW#WhOU10)iM_L>O6Nd z&w!^MnQj-&=MjAAGE^TL3bT&k1%UZVOcADCVrG zS7N%Br9Q}<=x%J9P`8by=$~XiW9^@!#??X*cm8(&K*0k6s+h+2=;vkkZ`1YMUEJm3 z?}gY&qZ*>+Fiz6-g~#uU^Rzs<$Q zI5!HsR&OX@nAN^&wig8(3j^;Xb$FRl2XoXDMLF3>VB%?;Lc4$Y%7~-T*eID`@iwc- z#|Rs>q7LJ8(iwE;1zoPl6NQdsP%O8JdQ0l!c$1vn?DR|)OuOjtf*&MU9r475{I>!h z_2K(zXw#v&A%B-qCg_dOz;Fd_$(e2hNAfh@m>*@Gr(KTv>PjzqHR$RF$YGT_)Ipol z#0e{`rd0E4O20iYkJ_77H5~@GtfrvDwVvg8w7E9#XMou%eNPbEDsSqMV zSk$=c5{_N9J1`xcPHaiH#6Anlm|~ZmDnjNC%pMB^VRVwdDuzRY(BvjK;AtsqVcq#; zpvkfL;0%ftWMtE?Xuc)1MtI`EDSfG!2`ghjLJixjphV>giX0!kYFq=V(2OP;piOO} zMxTRYo>`8~=EDwMY4b}#N13xMY}T&xDRg(P8%0N#Pz}gzF^88jyG?Z7$%Dj4m{ATo zZ)fd2XjrC7@P;J&hbm*;HP(2RmHj}r5OgqBsuk4>ywcD9L}eg12v3cvvWSh%#+Qk< zYS*6oFq^Jc%4J2|uqfA^`#(&v;58embiU_2p)<`)ZQ6(L^orb%e8W2)bCR#fmB;PG zsiscu2vW!K$ON1aC%<6Tde7}b*|}hdCa$)9>K#z2A=+9pgWVAAffdA_hiH#-FOhbL z#`Y9%TTt&!7<`iIFy!T4!^jvosvGs7=R$nnj(@~(03#7e%P(}`5Z)N?>0Q-GH~Bl) z^{aW=Isuy;Vz+~>8SDO6OtH@YxZq0*#}AuQPzT#_&X9nZ6vNzW4Uf=jlGY3A@Vf9G zJZ7Ofo8E@wmMPvD{`OC(-#v)OP}z131BBk>O1)rYsFSQnnuUfr5S^HnuY+gNRk&Rk zQt7W=R+G9{?Lr@a6r{-cw5O+FKJA})RtN=zkY^&OSzlzF%@kxi%`1Xn!U#zJEVIDF z=?V%&INVhNtM~G-qo}u8#xJLitMfG4c1m$A@c<2GC@1#dy9fE}DSYuNe?7rjJ4)od zIDk?N!N@S7cE{{exL#-Pcby6$5K!l7iIYdMj*?Yq=3br_+$*L9+qyI@*aB;HrR(_| zbUbOpCDJOw)?`(pZpb*4sXrh~gvWeOi?jB}aMJkCx#8e#TA12E(U3i11V~dZomY>w z)h5rm#iF~!MAgpZnP2mAUyfX`W*teUX7Fya()c9bMeC(*V$XW{(0#704g15TJ=VLdT z@j!?)mw8>ZZr6>i94~;QSRD69XorlmwjJ#XZ$yB@w8z8vZVVnk9ZF}7i`3m^R4@x{ z^lL*DP#gX1(I*S^Y$NWyFd}-2iRU_NX*$IS9-3OK-RDxlGS=!3j4qO@EM1@nYetKR zJzC}%pW(8)RMwi3onA*sy@I%36LO4SrD6Z!Ib7_3rwwz0nN`TMOd@tpIxz>xOHWnT z!N&EdD&8<97i(zbh$*zf*YMj*P)v3%KLrEhX5gyM#YG4&nh0vKM(xBRhc?%`9|juU z`run&)09P%7{EHBty9+%H6CEA&^Cw;O<&-@Tfl8hoSVa|*x%`F@kx#4SM6O*1q*JR z)lL^Q$l?5iHvm+_`KO7W{c!#ne_}ZQ5SXMM&dd8?&9i3Wrc~Rq4CJ!#ZK^1~X}D`) z5;EM`NTW${Tl&{0k}VWHneX)Tk-?RtV^$S*CiFMx?Z7yKRZhGD8|lM=SDe5Ij`$Sr z#N{O|QKO}Z`~a60bnI_MNLWcK2XXg+y4VF5I}s?=#RaFcnv)}&CU9j$jYs$riWHkE zj}lU1(b~mOmj2>z5^WlLY&qLvk6bYXu$g1Kn^C96LM%arw;eo7v9r@7o39$BOauFj zJ<3N0jT$$uBx{IK3r)F%r;=foLtlBObJqddKTOv(FjSR7U_^~Sl4VkjR9YuciDtwC ztR~(fLH1DEHl>P2>zGos{cYc|7}TmwqY5&zxKZM`bUIxrkYi+krw*3~Y{B|_9YU?z zMlCmK*Qa%x5w-`x5HJmP8HLBbQX#72#q;>A!cUB!^dUFSW>e>`@yHkW9VM?EjAn5U zCQViw?FSKG`ws6S5TPeZY)DGqM-FBZv1JV_ZnV@9XxxO5iRrPLXbjPLw@+7p(LNZ5C?5s<7DDdZk7Tuu#P;B6ffrW#2 zOa-d8IsB7hVY=|6Zz^ri6D;IKUE9Up>)UTa5wKIWgeN{S*3#D-;4c^r@n(^SqvT9%tcsI0QXJz`h9}Cb`KR)H&0KSPmaOi4~DQ@JD#;Cd}aeBxX1IdTne@I^`#@kBQ!;VF+k)+eyo zZG@u`u!!zcf?Y5{*D_dm7d2F`>0SHq-&zM{W5f`<~`Uomas^fACMv`=##X&q6Wqd^Lk_tUvp~Gj& zYhd2z*}?2ni9Sp~-Ggt0aa$VXw?~jN?2xA;TUjk?My34s;_!vBAN*u2ydBuapHOav za1$YXWg?iHF2#+(Mkhf=482NOEOjX?dNaBjdY2Yc2JC$kOyRiPrGT;cZTz{DQehO6Kf5(2A1rl8pa!Ze|Zi? zE!a{_;;42U^|VrG!+Bm*8@dM%ZSHWi;M_zjW{$8Swh1)Y5S#suynVw&qTFZ2^zJeG zy<~K#^B40`hVC)DQZjQnYmVwRGpA%W%-78#Za+iV>U3u&;Eic zvSqR8MJ;ZLO=8`Xa=4J-45fll!?=~-=_lvylY)Iii3CH;FZdwC?@HBe zW-p&6d36k;q8nY$l+;yYcH#>(d+Sksdx5K%OiUUfS_*wrU06|U%8@VLrj;mB%5Git z=oNh1LdAo)mhC#_rc+o+-kL4$r@30$=n-Y_R2P7*7WA-_xTd4VqJN%DZn~0Y)=9n6 z>7T3Xf3B(jhhzerp8&v!D>J9M24vgGvckl@L45v$3I<<|8dJVCQsdKy%zMkbm1e49^D5 zIqaWJnQOllCy`x{8!URA(oF0Va5a9@qp@x9sau!;%Ymz*YiK5rws;ps1d`!G1{!>; z@w>sNwgwx6JCGyg?8u1(Upo~KxcvxS2}Xm#w@@{ALRNC3g4g=0lfIPe`hM0jMCu^( z6Pzj+H>mK<@7rJoW$v!$FvDSdO!nc3*qtpoYU}4r@#2(Oc)6OtzRq*6dB=>C?h{a( za}K9^qxm4OxJ}vNHDo}4yvx&F#s#A-{eqKc{8Vtn4{Y=X)Fs0ltTVBh^0Hx8*Ph>ESyBpdJz=OwJ8X%ZG@Gct8BAitTsghTGh6x%lD-S) zhMg!OhX-fPS{N)_$?mR8UIX*dD#XqH3C68^VSsQkG7y_BwcBf6Pr8$&9>lm>N6lwZ zkC0@08r^4Z{~Ldtu>Vlg{@L*u$2_1#QztVj*0q@AZG*pr0ckVHIlk+J?X!~_K^s8M zo2}HNq|}N2>x_e2vb6oNAST$G_OWV%_v8=Zvv!xv>X*=YYZ3r5U_@~I^qM zQ$^9{+{_=;doiX|ubR%R=DMK?w7JVuB<#aX+OLq~QcZ^sl)cS?St z5MSrnPZM4TEIr*%`88&MJDRTDK`UT(`?m;15Q$FpJ-8@d=?KS6m!BdxITj(cyD|P1x??1Q3FH{oyfGjtK8{B^Zwz(#?i*^b92q7a&4uh>6{8J@$wx#&z;btiU zZ9UBEKD%O&UnH}t{Wr#4S(a(4$-;%V9y)6qz@mGVJ|0%01~kN3ORo}=j*rt7a-t>M z{2~qwMFXhm`F-&Fjo>GS$A9>MhOz$QZfiMNaHWmqvpE&v=HB&Ee?CxH@f2sxq2C9; z-${NaIBPZ{SKwt^XU&uJmFk5K7E-GahXWbVg8{hbKwxAsaz6{Qh%4>gIoW@{sCX<} z+O1aFB$lm*2@{;FR#f`0hb0_IH~%CyUpJAW!HwuiAn1i$d|D6hH3XTCfRzg0T26~*n=>~MtiJKNG#RQ#3(vY z!YbUkkUl~l7obA{Ef>(`0y+ZFeC%zm#`Iksu-tg|;(0Zm>+xKS=UI4e!1LpHF2VCc zJg>#`dOVloc{!dVc;12SK-E-)&>EV31+)p!W^Y((l2LS=44Z_Q0C|fjLny>0k!)9&|7`D}|mNpcLW`sFrH9E9=NlKnV^XzEV-X?yhP)6!!!*>ezqptSDBeFGmfvHf!3xpR@642#3I9cdNN6Nm2 zhkhUR@DFH8y$r=i>J`2REvqF#~z>-noZEzdGPmB!tJmWIm5Zmn!Ep(trA6~M0Z17FD?m%IxI%L z65^mI8;sceUVaQ!zi6C+EycEb7DHgfaXvJ8t$9f2npde%iWvQZ%_ZI!2x4>)lh0D(Arf zv^aYweZd%*x2m^#LsQptlKxhwhh26VcY)X&L}#m{!#*9BXoRLySySoerg+UQxrr^d z8`Nf7dCtEmxQ4gnnizo7=3L%-i+ZE2w@2czKdtED(Sfgn;GN(75hO60%?QX=X{rw2a{6g1q2pH)h<=OEyuOo?vAHhGm2-3cE5|4)fVz$V=e z3{QfI$bqzUp`}o{J6t`3;p;=aRjf3-=Ij{EH5rHui2R`|3DspNkw~b9S-VJPmxJqf zWCwtxewXp+f4OU@K_;JN*YI4g@4@&>iAkVCR3=qLRDPQ?Bo$cEyln#Omte$ES(PrM zD*JEG@1YD&5EE5~ow8>!10^DmO`tphbkpd?%_eSVAsyFdVSlOl9&4J}pK`o;$LnyG zO|e`H>eItxFx;qRL+%r%{3Z6dr@ANOS@6O=83}b@Z5!1W^nkU||51$pAIKnyW7z+j zV*JPd7h*gYdet@x<1)q<&JiFs+&pP6dWjzn^6KLM; zOs5e{teK9;GPot`X~8c)7HPpMOJfgq=nT*`@y?Ur&g0+OP>qs#1E0|KXSs9&MZ3|4 zh9(%7$U#XziY|w4Vwzyoxc&ev9IjoBHA>8pkw)#6&Fz&)R{WwpTvh zUfIxIS>Il{y1lZly|TLfIT|&z^AMu_IdboIF~$&UQ!8leMqn?75{hv>@z^)V1R@Ah9a^CncE15<;(>3vAZ0s2@Bui834+AD02SLNDh5zi^KLU- z=Yi($pnUKvH%f0#g%sP;PbPYrFEKd!^2^SFYYxSM5E) zk4>KkD79)i6pyF)``{6+p7&=vYupq7#5(GbP70SQi8zdltX5;4#049+gT+JQEmT)s zWBSrpR29s0yyt*Fm%c~cL%`4x|8;_`i*(JP#Vj$|Va?Z1Z;=o>x>{&eDx1~g6BC?B zu|tGnE>cYH%Q9Af`CYs5BCKMrrsvYWNWQNKuZRFe;=ZDM*j?Mt#jnkwwK(T9bTTw* zI7p;YjcQO@N>c#1@Q=0@k}MJcdj>pB>Ivdr6X>QAG>4h9y5mdNfW~DV4<*2nw17%ZvKZAP zpWKzl=q{GAtOai>HTRR``l`TtivlWs?k;O;8B3TNAd;OR9NaA5qs* z_AI669cZp>I`#^BvE2BrzSH=4Ld$4Ea<0q8M+`Q}-{O2yZ5bjTWJzx0WVPfI6$&SGQJR-q zPNC|ilm&65b3y}eDI;PFnjrp*$q-^>^`S|bZ}CIBRSqKeU|O6+urS~OX4DYvD0Oh# z;qdntb-PH`fQa5ufI0f`W+w{-H7^@;&JO&ZzlGz+4&GCNQ=t_vCSg0A>mq^xp^02~ zpmW{pr#2-jH6I?igIr>pY5qN^3si~Plp4isFJcpTq^jb#N|2=+`al$Y9<$EZ3w89WkT>{0pU1jJDC6ze8u za!4~>q+n(`2+|^I;yC{mL@eg;ESm7iMUk)-;) zplX$oB>o#bBU+#BiBPcdWNiAlUi3wOgdBzm=JaHh!y zb6D_RhDpB`eOXQ&;G}C+U;GZ?H*d3#b6kGQ8LO5#A~L~<>;QW>ouTijckWHa*Mq?l z%M|L^6a(pcIg`wSOKQLoTL$t;D}e%TzXjNAd$6=00Texp>}5IL$Y7Um_TDblYmyPU zX~~u%`WrJLXy$~#n7wuWaOdC}R0C3~!b_)x3m#a2)v`;9f^QYhEDC;EcyVFyz)Wv= z*y@E2$Bb#Gev2NpuMucL-8O#P(|63se>n%!%=NV3r&EF-7q$<2&l}j9;~oEw{}a4z zrtcNA3$HAkU3gXDoUOp4&`I?43w{6L?*|L~V1XYj@Ph?@u)q%%_`w1{Sl|Z>{9u91 zEs*2D05-)R_9b-d&wJr?Pj?txIBiPtrBk}jVWeyHDA&kQ`L45E*Uhb{oG^A|GA~#1 zW7bde%1Rf{ttfL1Tb?y36Pz}D+T@Xr%8Js;Gq3h9TI`#%Xldn~tLK(pyP#s3f9bs8 zr4GUv!T*lsf5-5@qolY|RK9%Ic-Q=8i|3V9Oc;5VYup&usIlW*<6Py}&zmrEd}_T) z=S^_=mMwEFnY;7`*W8K){v~BgeU+(ctiLWO^OasdZ|JG6vWkjjxS2cKza@*7E~;Eu zws>*2gc85I{?RSxf)2xQDR6iG*gr*e!HyHgoux7BZu=we8Lj!3bgFR{ry7~$T11pD z6e*pjDU{`7+4Ayb6}UjZtAGBbm1W%^ca$w()E#mM+E7Q_3qTg}Iz>z6O%iYms8%PzRMaF)w+(M1MNUvPU+gRrLN(_hbzpk zeRgJFXdg>S;>G2D})bFG|HwshWv(PKN)V1lbNXy&l1 z=T&cwURDbB$$zqbM~-yOU$nSv>D(n{$tlNh z-;(m~RAG19CvME{)}O_`3(G3X<}D)=5KuHum4?~MSXN%vtqftFzdWrBTjBVD>t_u6 zwQsJ^UpZmqh$P=wGI#OfWqPHiVyOLAzNoxR17-Cn{QsoN39iy*OOS-lb1hxwLo$op zH>0YXzpUcgtORPvqecFl?<)0IR7@B(3VHJwH2Hj2`CQ*ZJfGznKMvyu*I3sgJc&vl zE84@t1#=cJTUKtiIPwb7eTv8;@~hFBK<%-+`AK)}C;el*3qg_zParrrpzrZ4H1@4q&bAiFG5o6tGq-Ubwa42H8i|+OcEx`evO$}9^FPA zn4FBg?xsHp>&>J>b)jb>^`R6R(wn#&xvsQ}r&lByQ(}KkDQIg>Qp7elq z7%Ry9X-G6SG=-;5?p6&qzEW^@D1o$J$&WfdNPfyc-B{Jo6sMb|sKHEfKdK@P%}sI* z(636xWFr2`Kb0$>N~ecprkYFInj_&;YddimIWnfOQ@9;A>=cM%NKVQa$Iv;qCu7SU znpi0Pi?LH(_udT>hFZdxv^Bsbj?I43_dc+0YptpaPYsRjD&s;o5_!={bBrfY^+ze) zX1e%{y`&`lsZwifS0_vRjH$0R+|$}#+FfabV}o)|ET)&L@nbdqC&GV&``SG|Gjdqp z@%_Gd6OPx#a0cQ2PUO%sd3sdV#EH(@UfG^0YWj$2EJi!xS05?B95cRIeprfc23z-1 z{sGpXKvYVnUAYNvOk{jFtLTzz%V(~f-<3M~yP}gPiKCbimpb_b$w$R^sqxCb%2}Tl zj;tT!CQP6eO-u8}O_8bbIx_IW;%Vc@Z9Msc6$R6moI3p}7pw>i&PEM3hEADH%={$f zlQ2UOUd{i!O(9jf0iu*{?9B7dS#ja;nv15x13#6yeBOe^b1RpvS~(T;p;5zY&OAvb zOuu01sgi4z?saM+q_&@8)49Ny@y!!=WmQW{)unN2?3h8R>Iu~>99L30sdV!AiKPjS zRYJbrk~}_2VBe~zmP*^Jya`#GTH1k=d9cbY4Q-w}UfDfb^-_9baXfxfsU~A8q1q~} zNNa}TsP{l~nr&&?QB>lw@1BUR#QoaupNL)#*a%nvc<$3DqBjC&R+CSmI6NYs}s?+fM3F!i|v3L{`*AqAm9$bqkvxnJPvsE@e@&x4;B6m>IeAx|D1@< z0UY%X$^|@(=MKqe9u4(U8 zM5ASZNvosLwSc1mF9)nx6OG;mxc$Ot^eMpkYf&!X)XHcyHAB;K@it{KU@_owz;gj3 zfOiAl2snB@e)1hKy&B~L4#%6}9{^4O%+Ca0z%sxe0G+G0=xG5Ul1^EB)rtl%a>)X)3fdBJZ$Qf|# zHuO(6^boKduokceFt7u3fcb#80baWc?FGCQ@HpW206hcn9f{AOT)^VbL(YJ6u8T%D z(R0APfR_V41bE3_v={Jdzz+cL2F%aVw1)x90I%&pdjXg4gPZ~D06PJ%27C&6>tvVPi}?W0Dld*3-H3* zKo6L42j~Hxy%Y3+S@(fHAN>wk0QkxSpa=ZT5$Gr2Preh4ehKikXVK4q)z4!*0k#5q z25H(?01E(r4>$+#%pap%z@Gx{0?fyky>0{iHsDi$SN#-r05I!k7#D*z?aP3rfd2`& z67ZG(M0)|PpF>`NcLF{J`1co3U%-F8h;oNu{Jw;80p9_f1GxBQ*bP9aAYb}r=V|)Z zRDEE;Ywy*)sq`Gx*2mGysCKo>?bzVx&!k~YP-LB2Zn|9Xt z0$zC%{T%#z<%ttfn05CG;chMdeG}zpXkJPRpF{MaB?NV~}qi=Ep!RAF8Xtthg@p zxt6g%JrTVd`CVSdZEjsQ0sk%FG32`N=P_Cf;n7~;?*o2lEPk!T(<7?yL&)=Wpx`STOe_W<3xn7=2{Gaq_QcqHces#ts%pQTP86`-7TFP(_K5Sx$M z{Uc_@?VgW3sqhJYj-uSMj30BwsV?=ve-HTH+I=0*06KUx{FAwH_;MFN2KdKb zgFh5k{!X|2#lRQ5aU!b6;XiQc8-W*Z^(+G_e-H2<;MahAk^$il0sk-H=L2@Ne>M*k z!as-S!{JArj~|KX!k;VL_5*(*ULWhJ54io1+j+qER{j{^R{(!I*t`6VgKi%$2L2V` z?~Ie*tzGR0z7nq@X2;1Vjpa8AEcXDv3a^OngFou>Uvji z?-BTVFU6L%$Q`p!Q=!zRW60O=PxykkcX=Ay-8yTK)$_pjB$E(GLcl)-d`~hVmXv1> z@_Yw*=>0Xf3>qIJx#>LC>XGNi@I_N%+rIcZbB|}IF#jda z82Fd*Eu4Ge@V7Ib>he?It91B2xOeNKY$ZLSGX9J_OOU6L9ys>UsB>kK3Hg5+__Jg2 zmol2^OM(9u@IA?l_|y91KH!JO(yOsd_z3X#1OIBQEX z0{&NC%zLr?WtVdOUI5;J|K3~u{tW!zLEl^bGBFSQ1Nihf87I4aPzwAz;D0O*|6eYC zCGdx^Zb*v53l|>&{wAy^dg`MBwCP6RcLRSkw*6hYeV7D6a(oQ=1_z_jmbh{@y5+nI z{HE022mUj$cw@DzCuP9j0sQ2+ejM-iBdr6UNRLMEifxDa zHSR|m@0SBV59^*#EPd>FPhnQvr*|RmRIH7zimS^Gw=T~Be+%$;#mVApEQ=6m-Uj~6 zylAup_Q2J7>5B}f34-zje40kTG{rArJL7`J@qNsO$8j<8{AdV#tyn%?bLOSQi~6Pl z`NkIXEPE8Rqwuc`xcjkwygs&nWBcz4?rLfOkT-oi z)|#<-yX3aY(doU&cizO_<#rhO1;F0DlMYJ(W-Lm;?Nsz!%1rujFA4kz;= z@(S=hwV7BFk22(W5qT=;fnzU>6NX z82F=zQ(f1yZeHQ&W(4_$BVP4ztlc%g!FHYa+z9-U%4qaL_$jVVblHtXhC!*OBmtfPWbH-umY`;J*d@myp+$n{fl{2g&sv z;ES4~(HCRu-!%t)ml_g6zD&d&U%dqJ&e;ATeNW;pVp&W^p6A+nt}F4V0RDTx_f%J) zd49MYd5$8_`?2zH)&$49`tCO5yKZaGWszK-0)7|pJ(WfH;56G{{Q3F|2E)v?ue>jf+*IoVvz<&|=jyU`t#?!c(1H6T}^Uq`P3H}i2 zK_l{g1NnN>lRd!S1$=MyJOupRz#ok*$2j8F^Eu!b?CzcZ9pD!NKQfknJ(Ke|2q6A` zF7V^x^rX<$lQF3Xb2%tN@_i0?AL8>cb6t8K6DNHK_`i4HE2pt`&AiW@cLLZ)*mF}fnuc|OJ5IXn z;|Uw0qIstj`PvRdqi@Fglgne`G(Th4l5N~Nk4EW> zv2H%|a+Xa9kM08gvxj?b8_?W;&mm78@=zUJ9@Sm_`wsBUz^{nK8%sF@)gb`IycPIq zvG~nh^kaa39QZq9@y4w#J@2=C1N$y<_;Xx*Bj`5)|J6ABml#juXb|TeBR~r0`U5S*nfz{6Q9fC`Ov=4Mab8aU8VZuV*$7scq_I~ zh|dS{eC8nE%7>!Sv9aYf$UIcv8sOIhe@iUh=ydD53;5T8KQEyib3S)JQE|HuAz$*t z*#C&lXGEC~mGd0%e**qIfb)LB?qxOh7DaE_3`6-ikde2EIzc^*`%#`ApDWhhkgl47WApfisTcfeJ z5_}#3AFAf*>$C(;OW?EwPD|jl1Wrrfv;8tyrg?pwf`ro{aLF0zpa({OH})>SM9z`wfm3PO8i;3NVr?I z^LwhD7pQh#q1xH0+BZwJZ=Y)4AO0li?^5l0QMKzK)vh+xp6{skY*O`>t!>J5^rA67XIFZXcQ>DMRwH_Q$Ww^iY+y6-3B{ufHigj^^@ZtAcUVS6=tZ z2Ndt2>k$bw{H8)P-P#nx$3>w@x*qXLXi1=Pj34(Dj->1VsrqA!oUa@O5h{(l6kEKQ zAj?-|+A9i?sdB60G=$dp+Ipsh&U1R_fG(%q>juj-gbB6^@K|QO;tRq z(n>tqA60sv!v9^Rr#l%Gvrij5qWUYbT)fu8*E|K!SFl#W%?j>T@FoTCQ1D>|pH}cC z1>aQgFA7>EvYc!MM<_T^!FdXvuVAf$n-$!x;7tnNq2R*`KCR$O3cjh}Ulg>)sqz&Z zq2NRX=P7u;g0%{6R&ck1Hz|0Bf)6Vwx#OJHH+t^qb<5>*XFQZEg7$Oe^W6$Md=g+N$q5oHZ=~ew5d*slYEBjafql!LJe!hOvmn-^ULj8mN zq(7+Inb`kX{iI)~@+H>)*econw-r>?>jpv!pD6#p`Te6msLFTdA4mS_{iHvp=o80p zPCx0_sro0<5AG*@NR^+czXkoIKiG@>&gv)qQI#*T|JyH+^53msw~lijD12i5ztm6q zc2#~N{r-N^m#ch<^}nsZ^u4tIo_^AYDx{ne_4k;1{-%PCxDw&9Uh4nXe$uzAd}k=e z>lFM~f9Y4t`X`Rxqw4w73MSUuNtY{pV*mZTpY+F6K3NOAKcyIl*2pI#6m-f~n=XWTW zD0e4)RF#w1e-HGNzFpBL%Kwpm(jQ$X>+h@&o%$c;m(K9sv4T#06JdL$q<7Y14*g60 zq}LQZj(+gv(7)PG`gWBsas0j3Px_;({KWqIO+V@JG7r}~QT~7EFTIj~V*CHnPx^9I z|3v@sgMQMlQ{^Yp8|!7eKCJ(bDm_c2xBE$7uIibne<}T>KdAC0&Yz)bS^p6VO6}_Y z_gF9Vllw`(PSGdY@3Z?!A5!#*`a7qe^zABNBK^7=+5TDuySH3EIi~2Hcu={@*wRn> zkjj^+|6BV>->&i{j=!Vo`O^yaR{v0)Y^M`{a_YZMJ+D=;H~NENNuSt%k$%#LdZE9p zpY+F6`<(caQ~&n<($~uRJMlJ$es@3V+ZFvVC7^W*?&&9eNYNK0(C_Of{V^rKME(6z zKk3)?BLDsUq(7$eCEAZA^-``Y6jaUY2G%LO6BjI3IS#7lcYFwadxI<|vHeHY^QRT; zRYO>7*}>;Y6TKw!oAYD_kJE2G<~JY} zncuriW|-&10ej3p3|N_eiP|Q6NhT9=<5es?F|=lk3Yp=II+f{`ZV>@_*}2ncv%| z{4F#?)n9FAPIvafAH)1CYy-G~?{fNYwr)8}tI z^i2SMFBG|rNqC~~^4Fnq<`o#x`n3aYpiE~1DO$&m)AX-oUPTY4(t|d7aC0{0_AKHD z6H7JyOZoRxjAg45tx8`+k%WWVGKrc8J*ro?DYXsPyI@G}Z!3Vw_I z5^87^We^iOUf{cp@Z9egP7io_srSspeUB6^ck1ia+M)U=k#zrO>OB<`^$E(+)NK;E z6M@vP0B;s$a>=Q4QIuKC2|e`zRNO4#gps;}vW??JO&XPBmYSczvo9ml0sKo(rE(-@ zf_W+KAH>t|IhYKpMg|qH@=P>mfXU0iztcUB%6JGEbE?g%fW}z(m!3_}MfXAlUq z0Uob`=Q(Le=y&M;Ymms*@6^*MyqM=H%cNWuy|?VShCA&amY~G7ocNbD1ZdA5PW;I_ z3}Vl9oOsuwZ9>l%IPsnpCCv4lc;DJV4EA#3FV>x?ucw0(f3;plr9JyN@qsmx5;t(- zZ`KQ_j^{>B{N1X806bsh#0l#=l;79P(fxxM z|83{-K`Q%*?l0xXk2#N@qTEmD{zd%wN$2rZRQ7jt|9XD>UFY#^B=x6sKj~Ah{(bd$ zfNtE0`~!6BF-UfxN8sl;G!Ge*0k-#Fcr?Hk_oDa#y8R%f3~zzN{SB%7jc9#7xmNjC z(VrXX&#m<50s8Y@`tuU~d4vAEM}Kq_mM3yDNj39CZYJ5IJdu}4LnuE87qi@o@Mx26x1C3Y;gpT@#fKf~9~*b2>eoJtRJ=}zmNRjJ--T}zyU znNDua3*mY+`lf=C+~1IaB$v2mxt_%GNlWf_6y9#kNxhYX)Swyjl6a1>F4l~5_|{`> z(2V(fYg>()v4C#_)<(@($hWE9d*SpNi#U;K;itbeV=*UkyfhsdOE{75{SJyUmU1HG z{U#-raiYLmh0ZXR`>8WVc^fEkE+>k;H&eFrlBsr+E$Rki1!Ky+ng9ivIF(pO;2hJ%Uv&i3J1fB{8UJbec;8*9gV}m)o93gh z7wb7()d}#w>EaJX0_vSlxP|9TYR40!qatY$5#%ZbU7k#`)CVeMuTLJ0&eii(04~2V44pl6;50=Ol{agaHjJyarl&iAaaZi2heVizkSfk+9()9xRfG%Zn zSR%WHUc%DOQD(}HmzhlZB0 zx8N_PBbxZtWaF6xyjhpZ8Y?FrVPAr5o-YF7$r*4D?yY>>hdd(!e?!810U<{DDU;@X z!H>k5oUrZM8qISSTf9{7ddf9Aa2Yxw)0=`J<{6XxEhKU@&#i>Y%l1(J)Zu=zr-<`; z-^0lBlmx!SoSDHmM%dnSiNSbgkm~&nfycotUxcm^d=4U>L?CtA|$)W1nT!o897OWd1D-z6$Y zaX-+)CRrFd&(8icfYH~p9FWnmHDQsGSs7|v)$`9J1}m7s zp4Fhj#osIi)H`WOD;ca97RO*!7lUoYU_LWAr-JFVxhRV+y>pw(VE!4B0nGPZL@}8u zYR;EAUw0`EyA+d0xD-Dli40?kcg~d*{NYwE<4-Qdu$;I`7Pys6*+@mo0p{p9e;Jk; z$QA|%ImKxUz|o_v7Vh|X0pv735<`voP>$2%*k;N_!mjmgK<_hg{pn#I2dXpz|{nnjo1xz5d9k;A#KSeLSi7DQ`&q>X0B-?jylsJIJN`s(e$k(6HRqwHo! z`*zKLK0TOX6T#=mO~J)qMF!M6r8%YgOvxiXHd@!E!WEe^f?N@^2kVkVcrjt~rE>MF{>Ez0LP3;fHyNld);JuMwW0 zeuhe}lfHTsIQG?bE#M)%Tvj)E8t*)sYe?EUq$H|MeIq>5_bf@iy+4*pl8Y_6eFm;1FdsEE8BRs z1ZeA1xU+(c&6Q28@bX$|klS~59t+EIs@&)jOF~Cd71nspc$Va|T=J2N63m+3vkB|S z24iqPkHLGoWOFGpkZclnKSOCBK{ltC9O$l3ddbm3T|32^xI?PO99KiU=;MIIrpcA= z+GJL*X}qo@Tb#0jh=;N#|FvzBl0V&!TfK7?7z8%~KY;FFgn~T13>~WGfK;9v&v54e zVN)?_>xgI2ax{rQ70>*LS8$NzRWEr3M@nAng3K#eDrX6dUi#9gM|%-dwHm$jlTM_e ziTmxZ!wQ`8=sm5W=$TJiLl2QcOto(N9LmC#@jn4gdyjIp*|BbBJd)d4n&Y{teatyvdf(^KT?LGpK4 ziISaO=ihPwAH6f>F~$rfmzWj`yaVvoIP;{kA|3v0(zDslQ}ny z{Rg@I#1TPHT`DgCoQU8R#N>-;hR7N4UEIrvpcoOLQxO~y6r=o7qf zNe+|&PK z;#6hT?vpI&kOy6Q=LV>SB(36d&5n1rNzPT{r9_V*P5oO{PU1E@USVaaX5MUz3W>Lh zBqMHdJte~m{lPXZ{YiQ-mAm7KFL1HiU8p}@dgmdOFO_jBD49Ud)!?LlQm2jG^>XyRGO0eR@sQ{88dGo4#d)6*L$ANvN1#hdh= zIjO(K&_Hy>qc-X7i#3nhq(@-Kqc-X7M$Mx(>Ftf0Cw7zGqc-Vn+NAfyZqj>VH|agG zoAjR8O?uCA-pi7k^qzA$Avftg=Ot6^CUYFbvw|^llistE6LOQ@vx*aPliqVaC*&r* z=K|i@lAH9N3QovPde3T3$W40B8cuA5u_Nc$L!0!TwH*HT3n;igf`g3TzFiKQ-@C?d z9EL-HgCiq`O1HWqnJ1c2U5@g*JoqeUfbj1Wfe&J!M9e$w!J%|d15DVwJ5#~K?4Mo3 zY>^sfiARX*27ZKL7UQk3t+^7_vSv};;=C8HeFL6-xc5Tj>L87m4>&m9%YOo4^L{40 zmk@;KBkv5}%XL6#KHATO_d*Ff3HzCj_u^ycV|0MdX=M6n{Q>WV&c1eeFJq9hc|Q~0 z3+40CekQz^qs&=(FNCmtuZ7$N zMbM&=$+oE8Ao&VTz9` zLUUm%&xKRvd~wA(w23fY_J5MAiStOS`H(D^T1%JSIT$sNO&XcQP3owiVnz<5V%Ynk z`FG^#>yR4`Nsza0&vYmE^r^&H&S%bm;GgGW=8|zRhZ^MiI>CaY%xgJL*YViO$68oT zVNKvhQ`i#^Aqy_&xP8@NFgVpIjJy(x0E=1pqia^ol;*X`uZf@1EOjP;NZc`WB@z~` z0B|PYQQXThgfjs)B*|k4X96gb978x0KnWg0&Y1unLpT#~4JhOo!kK^{Ad#b4w-V>P z>`bKO7{ZwV%Ew~}X9DhG&NPNR;}{{w5Z0o^K#n1t31DtKhCCAj&jTaJ5Y7ZpLXIJv z2_VN&jv@Cobp0&GB#{00;`c^mPXVqJTLS!i8{c2=m0gsTi(>C!t7Ah+Br8k0D3YOl=Mk@C(&@h52VM-OqRD~8i z7jN3?ORYmcWO|K%$B-FaL)MRDf6G<$WnC)!-{<;>*zCA^yB4IM>eDA%uRkNH6%$nB zB~VMlKY0jA3%*5aHf5fwe2a?InUqw9y<@GGJdV=Cxml0>K=K<2O1kvUEa-e18_|(I z$*(>Q%jZ$f@>xqCN#sGx83QCRNtzL2Ocsg5?D$|?8oOO-D&(|hyL7DN*+v61jCKs9 z9xamYj;}|-fNXQ(TX}yj_z2^xzkB&RsP@yX%|GSlXc=z1euM`W_sI18cHG0fcrT;O zGhFx0zL3&|HleTo3I5=EO9IH0UN?~p3J162DIcuAm?_kL^x^H2qq8T!*xNzqVjpEk zc|P8rc6Q~LYxW^R=W=<;KSmy0JKPH2;g**>s2v#SgcW9jGo`A|k);h(ow`z%mhYB^ z4j-g&%eADNh*Y|!PRCSGfw-{c&VmUJYe&izOqwegKI`kziZk3krXOphK2Cg-GIInN zoa+4B-##8l+eNdiXO!#HbrAVYR9`k_RH8PS zXe9SXA*~H@eZ}n$I-e|=k1T8lhWkH@sxoql94rrQPhyQa)9H~U?*Fr#9--1kE8Jp) zGxRZT_lUEJ(Ln3ZRZ>V zWpgULY;Vu#Iw{dg=%D3P{%ev4>31$mC|45B_rc%?M{EGv=$PZBAM8|zw_)*<)P{|c zbrSk4Lv<70R+LAhfO;o|G%S`? z`G|Hrp~Z@%j4=D{x3YhbshSHF8NxDWRf>pHJ7R*-{qj`*RFN! zq1mx#yA2f>>?IX2J9ck}<-zGFnYwDb7WgTZl*%PJ9m_u(%Oy!6q@K}^6xAG@QpZYV zs*yEFRcEv+s2Qo{(p<08v_FEvqg|inY7c!BgtRB|1@Om5e+t@@fx^`xET??_ZCF$i zBc>bCwQRS|LsXj+ zUt)iF%%{-iVs0~gO-}jzd$zL8^5wM*+2#srq%#NB+mnbg-JL76A3`@h+K#SvU7*^P z__F*tA(oGlCmw7wyV%1w* zaDx$BjoDHo#TVo4}j~X5yC+UM%`VI#aDx#BJ0jlSS&3{Jv}9 zet}BzTY6PiXZ&3d%kyPEks)y%{X zI5Zc3gl3)&qd?l9)PXANDRf!LGc7e8ed(o_Cq2`7k4W>rNQtxgg(utlEG1^B_pjc9 zCVR>`k?H+!!puw}`W$DG?D+*foMqDqdjCIguZOHZKw;?mz62Olf%^!PZRIJe+S}NuAna;Pdu%1WS zqaDg|M`td0)96h6j!0X{M^M|?)rX+z%VW3TZyzsWTNbtPT%JuHG9fx#ldTP!`XNz%4<)cfdNWPP$SyTBTLqjN(oyKAli!+?`kRlm)^No z@h%u3^H2t;bqFHls{-W-8I*3Msk*) zFuB*FV8|z#UUPnE*|Ya@?5382E?SaiC-!DuhNg8w6WGJ-eftx#eYzp$6CJ+ z$kwai3F`Y@)Z9Xy$L5mNGd8WWJP9&PwQSAKs08*kG`{U)IcnA zBpZZS_|iKC9#D@I@F$Rr4&;A<^2=|2d|Txo>gJ!I@(&s4Xr0fKj{MR)cI0%_%`d&k zV7{s=K6K%RLsnA2!&&t-;;lv1VBI+J6On%Wmrt^&RV7wY7HWlS zA?iVw-uW8-O0T{|1$lV+HeQY3dVI}FFI9;~nw=)76>6Pk4<)7}lDDW>ao1_cK_pg= zpo|#bjsoDv&_@GCOqWuw(d>(fbYSw6^hG6HU8EH*>A=!kg1-Im@2NaQeI2&u z(XJYb(LOnK}Z%w|2_|0e6aD0(u zM(*_Dly?EZL#mi#U;C}0LwzVo)$Bo$dxru8>`RAb=usNQkGkjL4rsZXn84I z=M1_*U?@Ht)s?bkjn!hQ=`mh7?w%LNl?pV!|7^$|>qsSYw3&G1PSwx~Byy0*vnhez zpu|8$12;dvR67Sx1_i-|>N7YCojrspRpwBvaA)KiSpQ*aayvT>5lHUvu6meV>^%-& z5nK0>xeGFgt~}?aS=?Mp#K@RRpni8{Ob_CEogVmlWq4}!OYC+lv6t~xR;N1`WKg%; z@jBgmg{U*|iNY>ws=q(J{&C_UwTx?ha%>+EbxJ&Sj5wj6C@PNnQ|PYv>clmsd(S1d zE=kuH@Zj(d#h56faT(7qu6ZZXn)nV9jxJh>eciol6FcAMfmJx$Ph+IZG9-;cpOTeI z=*yVuQr8C(`-6Hju7mpO&42&q#`Sjh#*TF-f|0py){`2e|32NQX0!zvGzOF7mDFt; z^?6ES7Y7qZFg|G-uLN-u#;JT{K^!_nnmJqWODr(E^T(*5_oMs6X9I0olwr{W%G3 zIVpW`BqAJ%Sn-DSe@Q@zrlp(3=(l z$EQAeoUvkM=_7d+4KI$C@SpV9NiZHXoy6ISV0`oAgx7r_C8}0}*>$NoViG?HPeOE# ztP=cUmpgUrNjsGZf*=<;P7q1)f{4j}Qc8bnbx-V-?jC)wwIg9T@iPR0DRbMcdJA1F~Es+3vu+55QA%b<%WgTr_H1&N;mz8d(b_K z($fe=C3(2_T$sZ4CLYA4P>ncQoJ4y+y>5@$9f|37YIpY#Vxppd;=LU&`8d@hFCnf^ zyKhzWLVaqA7thSmX35NK2Thb(WD+HhVGj`eX2mh%G~K-C+FUDLW~@ask4 zmZqx4%9?O(>)3iKt_vv{CO&PAR8?5_R}>TY zwwOksOw1;r7#cgo0!o4*XL?kYgU5yZ*j^~C&xw=@kx7jbMp3#50Rh(bL6KS^vgxt; zs4*JNs}O0F8t{zBdQ|w0QJEs6Lgdn;B+#u9xyMBkHGLeKULg!)WTx;P5&CK)8_L&+ zUNNI+w>?V?euHF`Viczf+ZdA}2Cfw&jWOwBm@y+=Bu79{m@WpAE~v-T@%S0}IAF}p z5Lw3Lbm6TP>5D|5RwUJf&EzyOrc6vGHscNCx1WJ_6{L$Z7K*{pj)?G5Cl&1y(nK!iMw(^|;v~4B()H3W*erdOS}dtDzH*o%F}7A8S=u zW{%OU+h+*x6T$=Y&?Y=ZB6$HC2PGXt*(yXn0lUl%np-2L&)A_;ZGz8I zzW}j4V3cKuG&>uF=mD<6Ud!G=RoNkJhZPY+xTfhAR8AsTg6MY7B8;4=nL%-L>!Y!?pO_eQeO-;Cysua0&Q<&yHSUl$zHI21e zbj*q;8SgUO;Uaw-2yG#8a4$j%Lk`5J2PdQlC8YBc(%tZF@%(&k-2eHH$2|5e5`#!N zyDEYw`Q4rj?Dk|xw_$X>@R#DfL% zb&7FzhDfHz9-5poF!wG*wlgqmL@+twk#3B`?_HXgRfrtQ=BH;#q&WSh&YW=)MZ;6d z5UHx@Tw_vZe@l%cG>mbXBH1ny0je@L1IFaF_Nd974Ew$;Q-lOn0;Ct^}SQ{b55xQ~P_+ppp!b{6&$Z zN)qHrr;JSOBVs1;t|8|aT?bZaURl_ zDc{=99=g86HIeL>$MhV}u{8U0N0;pa9XNPNrGtyaP#O?f@(FkbNr94WxH3CL#tt}r z@ZJN2^;7=T#TYh7z^6-DNFyj?t?;4liX-S9FHV_jHJ!U!mB~tjy3k?@}zh zc(RHzIoyO^$TJ*rR=%=Dv9(Du8;vt`ND#c(@f2qEUQ`?H2_C1%FpXw7Vq%sehb71O zY??@UfL2-t`S9eTo|z$1)}Zx^WKVgybH6EDXWR@$FgJzFRM0=mF540EK=X|W7+LV@ z7SnWNZXryU>ruttWkIhaL91?Vs;A^B+tEa@bBpAO~-tD z_lc|+lZW*g6wBU>DUX(6u7juu>|CYGIL;g}0V*00`U~#_UXEX$JHJi&AAhleiF{QI5e456!+` z1d4_E-T@JOSlCdIB?Jlfs35QR*3!UG=pf0o?$5_OSVUSobN?Cp|P!MZi zCx#J3XJ9smlZzDA+!RA85#n)S-zTu*4A831qFk&36@snjyCN0FgxE5Q*JTLbP!GQ= zGGbBGfsga#WJY!fkD2t05Cv2aEF8?GX*L_9br_TM5Eh4Q3kBIi?_v?G0Q2DpEUXqD z3h)$WV$h;8I$|G220EmP$JBvOc}&%ZTf#NXCqJy5pO&CL@fw#6pgAM`JvaccL)jE1 zO5P#JT}UyeWs%g$1A{G2LUhT?iyM2a$lXQJvBeq25*T946FWt~++q~z!n0NwBaawG z8R$J@W`lAuU#uU1VP*MR+l-fqMz{ zj{gu3fkG@LP3>DBm&8wHL0n%~+1T8?soRjKt!|1?hz?Gp3LhegSbx#TRpS+We2Dw> zVfxaI@+@>7#<=$x5nO}3qtbVZ>^EgGWDb3#Sb}UI6_fs^^dT+wA)#AN*-#(003PES z9ZK3JQeX=a2=tJ744xyv$#W4sN1a0U)zH%Mh~gqB4IUm+R4C0tAxuA-b3hmf`@A95 zalHPP5N`={^AX{BlNe+d({jnXLs-X!XYmm{GcR2TW%KP=in+5x2v~@E;iWL0F&9fM z)Or9|)QU7n71eN_zU9`Eyh&9{Sd5D>`IgI=7|8{0wMCJ2jI7*6s5TzSusTN^k|=Fc z_zjDA>MdmBus2*{6>j1Q45OrQA7Z7%5biUL76c|OV@jr^8B2=M6?u@626$c2Fro?U zBj=yOqp)m{0o*FMNpOei;6vj!4LXCVi9!W8B20F#n0}Bfb&0VBtZP4sOam%->BSL-ooMtd_2RgJX4bn-#6^|zq5xX3yr9YHkGn3sXo4gO*% zVU-i0yJWgU7@IK86O8dx8t7^CCrE!dnL&4%^e2V>$Yq`VxCp#Vw49G7Qu)7RoJU3E zJW2}#IP3^CgG@T9f8kKd#}Huhwu|n(Fb?aX_{O&B7GL2X$|XHOv_R~X*t%_H146r z*d~Lm=7B$G5s*AesyMPgjCD7ZD(6xw}BRWG9^ZCkWh1(0$4cB3Z$lQzP2$LI!$oK_} zg;?R!$Y&das3c-?>0$`HW0b2ys%9i)2C)8o3(L+s5fm^U5XqQ#$W4G70{6foQ@%)e zVK5iUH8vL0k5X$PG;Z`lLZ&Z7|A4hgg~M<3(iRjtjRWt-R7^+kvb`i)_!U001q)6@ z$%q~sG-_=wHx;@9L>vbK1Kmv9Yu1ObO;Il`$p>sn4q{+_nhPjW_R6O4mTvBb<74y| zYIi<)o+W&bL#O1DC3cA<7bg*sLD58-lW89IJ?7?hmp95|h*{9kq9^95$J}g8C&L?n z3+;Ok9FT!#bDy!4CMA>&Ki&^_k#6B0=3%c6fk|GQnfqLf-#7>RNVM20NANMpJ{$Ug z-o?5h!#;3C48&MH1MWXfC$yHpmK`s24WlIsD|Y=c^RkdJKIeWQ+u=CGXcQb!L4!Q& z6{sxFNSH;;T}R%gRR@rs#r9!guBDW1wir`&%q5q-iw128nL`j@Fy^AqFZ*8!B6I(@ zMH(7UejahYRBop6X3H=VeoO$BhQUsERPm;i1=FJ9rnGymTgq}_)Y0}i@4c1o#7-xf$_}B*lex;UM_3(FHLyxdq6w9aF4v!$s&^SKS@9jBG@g$vJme?#8Nyrfz1a=T%Q@Lmdvq$i+~PDG< z2ZcVY0bQ^;n@mDjpDFuszBZe8N5M3zgTE$qk2^eZDUoWrD1DjZA4iQx%_m##?1~U!YrhwZGs0V zCR9pQkp9w*JfA}c7;yH0mW1BF3IuJ=cteatfHVRJ;Q)f85J8(5L?LJL++i1zaf$@T zgU+DvF73=CY=U*|Uj?H4X-*Iuv0cj^K-{o1Z&9!slXL2$Xex+?!5zTS6$D#U7&r<3 zDjjPfpJ<;57Nb-S@nXE41EYfwM#@E8lwpjf?RJjOjAi+p^`Y{Kv9D4>&UdXzLIQn? zAa2_$)N%To@SYMMc>ktaVc2hwG_ah9reOuVQ^1ewRVZ{^VUft9B`1Q;mg&R!CNv5M ziQHCu;H-fcc2YP>!v`DK>08*ffi;r)3Hu~&fSc71Jtm-dSZ0zp1@*>i7XY0>LiM~M zf@Va;pbawxA;zJsQFLa`)Czi+*ruwM)^OaxG3VRYBr6X(6eH7kkAg$^>&2AqfvGm8 zAECn{SUH=pY4*?=!b`i!T!I%&S z-GGv_t>*-kXeY*4$a9E+Q(Ry|LymU^x zWKN4>BHik^0+c?zL*!tGG>#oc11;A|#Asu4n(*A*wg?J|84-#=Q4C(kK!2vH0WMcC z7~qSAcdrP*>wXC}!kHD$4aYfPZrv|1ppzGh0J-RpU%*V-Aq2L2G4-R1b@SpKI675= zqf_~a7P3`lT@`k^JOR};yYgg<+0|_q&yrBrGU_RWb_leIsRS0NTzE`wxq;mr>Q^kV zU~%bYhnU3Ar%~(ju~<2^q653&Nz@`RfgK#~5Ja1FV-%vG=gVanADzqIDe@78IwT*Z z(3v;iqat%5Y&$wphty{vgmN`jO5==)=*uz=E782c(G4tX_`D%zGulGsbsc(;OyVvK z@0fHF?QO%IL0_a9XCb`9$d{lZSjl*ev#}FcCY6f2+TM?iPjK=Y3#3Azx6p+c-B7VI zsbYT83DY<$6H`wMb`*TXlC{lqD;@CLI}fk@ly(D}v8p2EL3oG;L(R2D>6qG`WX) zNd$Y4CAzT?zBPTh)YQ)W5VKQR-59P?E{Gg=&R4|A_E<;7V6rIrSmnVuP(67mN&2dW z6z|qX1X)nn1Ts4YdK`zz9wm*(`T#R5sJlic#FhpWIIvuH$Y$ak!gaz|DZFZQLk^aC zDJ>hkqojTDVqBPQYOn|sfpyl$-?`y^9NS}4QyFgB9BXcz4~bK= zaehus;CxDNq3nVlCUCLlAlYVkR?a!sTy~X6b$AYuLF1USi|l{X%u=9C1-ZO&Q;iHj z@cws3kr-G3{m1O@A#sjQAy>sm>0J0ibW3}r56S%Zqyr-PfIv{#pdsmh0~Nv;^YHk@5#=?o z9T*cyMk$RXD1(Jzf^9oY`awEJh@pq`EwJYD*yzpV_~DoXdXj{)n*NxzJZ$nXY~a6n z;O@XZ89I*Xf4K-Oljk#E>hd^vuNx+u&N5<` zGxl`#fPG>JcEL#v{NzPr&2G`gJQnQ!ABvJXfr%v7mEq@{V|rnqwl&R5K{An@z;0q{?)BH_D|#GejJ<=&Hfh33Vq)Z+I=TjC={0C#mx$P|! zoS%8xBBlKaAAL)o1 z@~V`6D7jB}kv;1;chUJIGgT(=J_aK+f=90#>rqJ>sHhqpWe{q0Qp?VZS<7)$Pc2XW zR;}(~iH$cqdxy#?Xhh2lXc9n>x-jVCY~VVJB44|T<{6;v*{82esj z@Fy_$dvV?v8?x9T>&wqex=P^CJfBd4ve&gq**FI(SW^Jjg zYH6vuv|FIz!<5|lDl)m?8Ep`!VbzjQ=?~7{kd^jYI9GuAQl9M}RwPD|&ux-fnu3#Q zl*oWLN2VH66_%MCy2LKmL~IyROcOzF70<-O3F@Ii53x#>aZbb`-d~1A>jvDAYoty)UR8G_b2RX4fX4B-P@8eBxI`Ls@BYN!&P0Fpd zCU&lLzIjaJOuQ`2eOUb=ZerF8@y6K{TuG;yZveFvfp`54Ojy|3#E{u6%wmy@l^T3; zc+^Qsoy@S%N0h);Z$Z2sgUw!z6VI8(Y}i8jHm<3S{;>LyE7Q`;5`R#cj7PIRv$ghB$DgH;Yl<$dkiP4R_I0ZNhX(%fQ z;Z{UQq7H+ggJnPl_Xv;!yyTHr6$g;2F-dEq0!B}y+$T^9XLW_ z@=vw(ya(0o?TyVXL~m1JN@E`s{WV?j&!TQXKhr7%I|cGN zR{SJ)I@!V-3H!wyBu!L{$zZe2rZmtwJE0!)(*?}hD8P{QJGidD7Ghs_8 z%mbapOK-JMr@7cA#k*8;h(flkiYgw3LMJH^I3XW$RpI7fgJ2C}s?d)?hafZPz6XmS zcq8bg4uKO87WEVJ!f6=P5StI(c=2|_4lx>NY-UI_+Dq*tsV46fcw>$`JjL9M6M9sf z?e_l;UOdP0bvzob@_v3Nj(Y1XN`r3+^NlHp3r0aBX;oZEbx)z*4!i2${D(v~b}MN}6wqNpJjY>7xaE+r4$r(=w;K=vxE?}JW}zn$bEp>d z7cz$y(pEo}cYRE&D1M|bl$L+5;6~Vo#K>I5_N_gp|@nzP!E`1KecKUi3yez z+v3=XF|IUmiWPC24-7czt_GNh-w=l+YBd(aDHO;Fpuf=M4D#c#sMgIoqX_nj-=nnT zlO`@$~tiW+r4SBvM(#}Gulmh;K z4(nG|HqvX@8)mn)w1k@?E9iylc`a2N!%M2_8mhI*HA@$jlvGx_FJhMzbC#9#&h>=l zEqK>@?q+Sn19uY zYim_qcvf3&ZMcP-{GspT7geD)m9cNc^V{_?jY9Qj*5XC|71hm~lw6DW&8(uj>gvLh z;=)B6r>vUP>ZD4F$Br9YqH=V5kuvV<0aP@1@yhy^aFuM6?5Me0<(C1L&xU$wZJ2=T zn!+`q>iVh{S+kk6%$eQXyrIGAYU-TX%}tSpx;6-t?y%z;ZdtZ$mh9%n=BBz3|8dzt zm(dUPTeu$R2{j~0q0S2Nc#-FyKtF{>NvIG_ycCqJ&t2RmQ=PX?nnmu}SNl8d*NN8N~xRTRWi~kKxG7;XYs?;jeEs;nA?wU6?L<(!k#1(F8=9=SS8;{1qNY(nrFlFD|(Au!R zp|K%y>Gb-Bnwqd;*|4dqu%WsZ8LC<@ZK|$sX>Njc6~ih)KDE>56vAnzNn_5bwgzh z9yiuiRgP;7!^R?acqs-mClh-(^EGzr;s+t=7(i>?=9}3V6%dn-TArjUqXOZ2O z_aYl@z}PC;S4s+PLVTBH)oj8<*aIQ*yK=O8QT$23~yL$m{fFdWgE+c4fLFKKH= z5e@YAxVmR7pQ!JW5Hny2Y{Dq6Y-&bKs7}3`-cwCb5fo8bT~k@x+=ypn7u`NuG zHf^aPe#FCV2HjPwj^$?2(JrmFv8qnP>-7AlaHOG0JFjx)^5yuuY}HDwwxN-}{*q8? zWsfi7M=B{o2C)-SEXT@mn;L+C#jB}|XqYB9$6+CnO3HwmfsmS^g&kISgIVLkNRrA< zb$g)rM`XdZHB@1=vK9{ADTRL;jOxeV^H>Rma;U+Y+@E2>i zgE`4xN~xg&pmGs(DSRod8nbUCj4u=L7NM*PAtTMK0S>;QiKT-PA?XzvKcq9;l@Y2p zYrI<*baFK|;JD}HYmTIz2xL{R4@b6y!zdGTdaG8a`d;PP*wz?n0A*{WswJYWhsU;| zl77_?vjw_v`7<*xkKg%cCK;@-2$&TJWMz4kln5e85Yz~$Q4pfy5-Pfa5I3^E zRs^L$9%bH3AmcTacX*6yvExqZJr=iK-0+x>s1Td_zDMQ!E2Dz=lTVM%s> zI+*nQw4iQ*Ql_csUCh`>0UlQ@5z91jTyiKYE;Ve2pE~wXJuUbqWHM3JsyA07xOZAn z>C$Ht3qz)gfzw;X`X)0?dqry`Nf?fwHdxPub=Y;|{YIB!PWED?RQmg{8ld6n)MQ!I zJe=?~B7HAYsatv*!!%Ast^FXz!fH>otb+>W#{EFhF@mjagat>eqy78(v$`^tQC--R zjekXFhRNeYbTS)d<&avTs|L!QKK9W$7?c&<5WwNJA1$rbT?c)ZJ9Z697u6cHn;jFE z(5jyim7lo#E9tsQZ=;o3%%vb+SQAh@Y^5<1o(D=Fl^(+*VvIFS;yG*|hDuYcBPhDc zPvVx!j(kOAWEd2)YIKL794lyWR;oMioJ9nmdKW#&WNU+T8CjCIy+?i z$Ewf}DGb%l1d8$M)ku)?bgs~rw+$?{v|ozBEjs`iirxL4ol&Ktm!euWtdEqbc@X2H zwY*-kvo(MwWu?Q)(1iEElyM+SQGsM-PN9d&@GwMEn}&6azcOwbL~Bw|L0%5#ZHoHpJB z3NPC(>>+gBl!160F=2S>*_!yXb-pa;00jqXmDIN71f^wxH_s?|J~PCJ2QqHN_{;Y zQpApGsZ)lf%IYYRE|EJ6B2C0Fjrx@r{+&7<)~LDT`j3w2wiG@TxzK)fK?Gq1#7W_uE!j~N!*HOON?96 z^NAqUrHmye|A97atK01*sq#>cYF?uTCe=)rCXC4t$U<8|uQya3jAK zm^@b(4h{Qq@x#L3;9FDKP#4}E)(c526Y2tl8#5r1bzxMf&&5ZFolSZ2W5QFp_z~fu zdG?!JQmZbE4dL88d|YVl%EQNpN;MCk5MIA84?i;O%f<2Ky07HPPYgS9@uS1uujR?( z#mU?A@MFT7ujk>%hWaP+aD1#aC)5ReG&CpFh2wHi>90uz_pnPIZD3#j*zwUA>wZ5lma_{2VBbUZ_Zl8b<6Af^4fg+!`lpZ z`-=k3Rk{`F6UAyPfYI z#Lfm;KoGL^x{0{kdAz`mx92ran;jqLPZ!90d+K-1bMk#~kJ<5je{&E!bM~5iw)__m zcRMc?*m(oEj9d5Yke6>t*iU@>zgzlx?wcke7WtXKGW?q(ES^IA&EH!3!b2?f`ri1m zrL*O{m$;YnEZE8GcW>v)Yi7sWc}ao1=lj|l`S~95C&NA8)d#V&P2RhWkS+gX#NEzC z2eGr~oqRj55O+Ik3+!|Qm+SJ`ye`+9x#0DEh&zI8Id>Cx`=2bZe>HIF-%IqZ;vuxq zzPJA?hYVB1+yB}EJ6@jt!%aS0o=wEPJhvUh&i6*=+u2Lp?c7~p$ICyBoHH-~g9Y+C zflE6$N6o(?zn6IS!}R-zXTNpt`3}Cv%J2Cejd^yUasGr{=n-6ga)EqP0Y0k$Kc@gc zzW{G7z&}xdZz#a8DZpmd;6E?GUns!;vjCS~%Iimfn5W~zi0iE% zwKMrIPks#KLl}BLb-dacdjIlal|ORG{m~-g+54#r)y~lSrmMiT8=iAt*$Vmb82_*R z#R~mHmc2sU->CgG#=V4oe0aP*485Nkp!}<&tR0>)@o=@`OeCUP3h=G8g9kwx5uc*+W5ULp4E#r)TUcP{BFYat z!s^>(QD`lY@2C8A51U~h=l?+binGjsc+yCiDD@gX^m)s*1@`YKz#pLfDT8MB%Pi;j z3*`3};BOV+?-bypN9MQxv5JogNB3HJe#Y{gR3QH$$~!}Tr>TXR#Qh~vAIJQZa4zwU zyl%;ZLAHT}ve?$3OiEsXj;hQ^=4q)VRqtC;=A8%_?IcaoA_m?8?c)8_Yi-m&g7>P|0VEx>L#PN zDS!Q$Ccl*@N1#E*C7$E4Il~05KPArVPgDNA#Q*p$1De^+Q-~k=_l6H6K9l(KyboGJ zI~M@2=W#Ns0w0@my|{vQE}CQIA7N3rR`H|-JN{w;zJqrB^}JJQ=Lf_ey}|Uiu{}Gu z{<{y^XlC_O%J1TYewKFr4E%jVixbA8pJhG&#bGAM+m-OQ#NRjHl zf0@?>Hea}p_;Dkx;E!=Ue3SU8;xvP>1nY=|?<;P{$^W}3-*dmAoHpSZ;NylL6W7ai zeogt4mm1>z@+xuv%+C+mo^KH!c*^7_5XYx>w7)KX#PBl9KbrWoQ%!IJ(h?>imh!Y` zo*Pf0{JGpGTx8oAZb-Chjk3+rbW7MSS7;CODtvyp;I2?=k#U;u{pF(M0r5 zls}Ev9X3<=9Pw8^YQpQ8?-t_jPPLu39whFL6Ax1UN5uWr%$=0qOWa?4a|+A(Jn?Uc zt1H4(+Bx)aYkz-L=*4zAOd$RxE=XK1!wJNnU1Wl9(*6|Ue^_TYm$PsV@h6rTE^qjj zu#)(TpR@E1;@yfHmi)gC_}Ik!@^e?w&cwNfjNXrie?Ua9q`v>3WKSF%@OJ-mm z>$RKsq^}#^&h~kZ__7aJ0bhKVoqvh=BTra*GRwb@_;d0@1HxoG9fsk8mA4G{_A>@LNsw-f&BMq|J!W0bryYOS`!6^i#$nv%_1F6g@FvB_1a~X<>%y!8`S}I-652VI_w{_-9L_6{A1J^# z(9S78wVK|}cDtSU86Po#j|;;V;tOUN{wd1uB<^pb;xZk6skpadEq;~qC$t&H%VEH+ zlwQYIe8+HJ_QK)B{Z%48Z2$4Z@A#3)|C(7GP5ilj1IAGP4C4RB_3&iMgK-Jw2S`C+ zSAdaQZUaRMl!rdBqCksQ+8qc*ZR+q6wf6Pkvr?u0^&nVvRg`Mg&yI*3yO-DM9NVlk4!AonW);|94(F-8yjcLh#Emq z8v5}>mzoz#rIe=Dlpt9%kjvc#6Hj?;`lX-@?=?OLGsXzTfzvhn89@GUKANZev z+iS-i)oKO)YL@6KWW$K~~<7OLP3SZCE*>JoUA z#DZwE__({Jt7bvjZaf9ojlNzxZUM^?OxQA$C}>MXUfvKz3s%lvHb0ubd|nhG1wV#p z{vv{l=B*6T!lf(b%w8I;Sg_z@^H)WyX3tqVUj$Q=R(#D8fDss@c^537y=?K^kYU5M zIOELuXD#hukDtA8>Ebzaqb9g?ogUC6O(}o`aPqFnG>%h~QEE<&Ktf_laA*-v)A^TR+-Is$#U%>td!X8vIucRk zj_#CQv{VaRKQPQvFlsMr0j3cAC9Qf`)~k3ur*rwyEeS3oN{_xv(Y8r#MjU!7| zs}L<-fikpqbVvPFB~J@wUK{|@Z1Lo*GhY?tlShD7in8XNn=|$crM{94Dk%o8;b;Nx zN0QayOJvSLj;Ds!wAv_`R`VnSK#ex=AT3pg) z0LNYla9PN%bM!odd}6kUSA#5O1L?X;$;w@@n{<9+larJzcGPPv%iXnZ*FBeLxKqLZ z)=wns3IkK>I)?aQu0G;VmR=;SFKaF(#@0t$Hdoz+DC1ez*DLNv87uTQk#>(=aMFvT zE_|o?AmpO1;B;+1Be|mvSo_dtg4xKBBiqo(5r>6bO58OfvCT^tE8&kZq|0L$vY`$N z9l~=rr-;DE*AJQaWpVpT^`^}fVSayEAWxQc#vJM2+D}e zXXWQzg3Jd8ZxKje_w(Eju@2k1iA-c-sM`{bIoDByp+1B-t+xXqG*kz>;MtA1uh-&s zKT`kiN@&1TC^x{8&gB;U^nbpj5SryuoY8@2 zM)#ULM(g>biT_Ld9w^Hr8b1Dr{Vd$yBFlK^dW)GxAyP%$33xshx>Ur9fFTN;h~WZ%aO#R@woi{yQ{}nFhhAv zDRp;!Fm*J@<7;`u>-Bek5s!cFCrn&z@K7W99b|u^{O(uc@fr$y`Q4ny@)-3m34QlJ z@wlG)+42((m*GIF==R)C#p5-TOw#ku*8ghi&oQyspT+%J_VW3+=u4Yr^=|+s?aIf% zHNO{jobw4GqJiDv$#4yhlKSo+#6lBE>boC}$6j8l#pQQgcpgc8=l6L0 zALHa~EqMNp+>L{zzWe2PjGr@8AzS}@sUKI<{dX9*9G6lL_331gpD84N*LOc3k4MEF zV~W}QAIs>wKaj__9b!+K4 zNdNr~x_IOp>&JdbpEt!FIF}5bug9&@tTJ`Qe!uH@wU?$@;U z3zq-MIF}5r@A2C>nbeQ{pYAmMH5SDtT+d_ihe_(YpVXSWOmXK?v8o=_r<37Oh>0yP zzyB^$|1HyBlaa5_q=nWil8qVM^(SX=vuZkWY9jSBVqqckulI(hfa|;bNd@|C-!;jZ zD_qjztiJF~vY1GIi9ZnEoSA=FS^4=Si;4b>58A+ad8VXlAuD?h^|S4FVmk-kgqp4# zxqdSCxu29gS%~8Zch+m99GH7>=;KD#atX3NdEYC*f4gos{g24xN(9f>p>a6K(;s=C M>95WxWRl^3066@g$p8QV literal 0 HcmV?d00001 diff --git a/srcs/.DS_Store b/srcs/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 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 Q3t!vZ z$Qm^EyZG7mp(zR;aLmPf5e_>!6a1Hezeb@(a9-lx)H#RvOq5@xJFpW7&w8{Kdkmgo zNS}fSaefRS#OMGO+`={(e+_h_&;QrH9c*#W2-*+x_#$6WVI*YHwgOtH{yr=iNYsfU zx)gQ--w9Z-CVDE}FLpa^@+ANQVM{zm}|`UHp^=HsVxMI1l8I|zF*u9#0SHkvf!r2}Y| qcj8?hx0Ikg4s&qr0z@LXsDbd$VwnOW%c+q4Fwg(jvN7;M`~Ly%>|#X# literal 0 HcmV?d00001 diff --git a/srcs/built_ins_checkers_n_runners.c b/srcs/built_ins_checkers_n_runners.c index 6e4d6fa..c633356 100644 --- a/srcs/built_ins_checkers_n_runners.c +++ b/srcs/built_ins_checkers_n_runners.c @@ -14,8 +14,6 @@ int check_if_builtin(t_cmd *cmd) { - if (ft_strchr(cmd->args[0], '=')) - return (1); if (ft_strexact("cd", cmd->args[0])) return (1); if (ft_strexact("export", cmd->args[0])) @@ -37,8 +35,6 @@ int run_builtin(t_cmd *cmd) { int ret; - if (ft_strchr(cmd->args[0], '=')) - ret = ft_export(cmd->args, 0); if (ft_strexact("pwd", cmd->args[0])) ret = ft_pwd(cmd->args); if (ft_strexact("echo", cmd->args[0])) @@ -48,7 +44,7 @@ int run_builtin(t_cmd *cmd) if (ft_strexact("cd", cmd->args[0])) ret = ft_cd(cmd->args); if (ft_strexact("export", cmd->args[0])) - ret = ft_export(cmd->args, 0); + ret = ft_export(cmd->args); if (ft_strexact("unset", cmd->args[0]) && cmd->args[1]) ret = ft_unset(cmd->args); if (ft_strexact("exit", cmd->args[0])) @@ -61,8 +57,6 @@ int check_if_builtin_not_pipe(t_cmd *cmd) { if (!cmd->next) { - if (ft_strchr(cmd->args[0], '=')) - return (1); if (ft_strexact("cd", cmd->args[0])) return (1); if (ft_strexact("export", cmd->args[0])) @@ -90,12 +84,10 @@ int run_builtin_not_piped(t_cmd *cmd) { int ret; - if (ft_strchr(cmd->args[0], '=')) - ret = ft_export(cmd->args, 0); if (ft_strexact("cd", cmd->args[0])) ret = ft_cd(cmd->args); if (ft_strexact("export", cmd->args[0])) - ret = ft_export(cmd->args, 1); + ret = ft_export(cmd->args); if (ft_strexact("unset", cmd->args[0]) && cmd->args[1]) ret = ft_unset(cmd->args); if (ft_strexact("exit", cmd->args[0])) diff --git a/srcs/built_ins_checkers_n_runners.o b/srcs/built_ins_checkers_n_runners.o new file mode 100644 index 0000000000000000000000000000000000000000..485f39f70c1c33f3b036176bb73cb4d9a68bb110 GIT binary patch literal 16984 zcmeI3dvIMv8Nm0x(wj$<&|;gCw7pacrIMRRLr6+ICtxlo>mxH}{?-x7^%Y z@1vxMQY@|10s{^(Rg3NDILwF-e2g+f(SU-0qZQwyj?)nzMI8kk$ErpAzTNLT`R?YP zNo)cAqdRlY+5PRe-+ue;p4~lrlH2;$uL}kOibFuHRO2b8N*%s>Jl?CLy{cJVq_*}S z{B8ffKQ;CreE;eGLw%?F4?flZa zqIynnH@{i^Gfj_!Kkj@}oko>J9>Wp%+&5{E$6%13f_hI)HpoHf><0OgscSb+)WN

%^z*|MxjCYuVkKU~PP%|KRiX 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 literal 0 HcmV?d00001 diff --git a/srcs/builtins.c b/srcs/builtins.c deleted file mode 100755 index aafea40..0000000 --- a/srcs/builtins.c +++ /dev/null @@ -1,113 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* built_ins.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:25 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:34:22 by hgoncalv ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "../include/minishell.h" - -int ft_cd(char **argv) -{ - char *folder; - int to_free; - char pwd[256]; - int ret; - - if (argv[1] && argv[2]) - { - printf("cd: too many arguments\n"); - return (1); - } - if (getcwd(pwd, sizeof(pwd)) == NULL) - perror("getcwd() error"); - to_free = set_cd_folder_return_if_free_folder_or_not(argv, &folder); - ret = chdir(folder); - if (ret != 0) - perror("minishell"); - ft_setenv("OLDPWD", pwd, 1); - if (getcwd(pwd, sizeof(pwd)) == NULL) - perror("getcwd() error"); - ft_setenv("PWD", pwd, 1); - if (to_free) - free(folder); - return (ret * (-1)); -} - -int ft_echo(char **argv) -{ - int i; - int flag; - - flag = 0; - i = 1; - while (argv[i] != NULL && ft_strexact(argv[i], "-n")) - i++; - if (ft_strexact(argv[i - 1], "-n")) - flag = 1; - while (argv[i] != NULL) - { - ft_putstr_fd(argv[i], 1); - i++; - if (argv[i] != NULL) - ft_putchar_fd(' ', 1); - } - if (!flag) - ft_putchar_fd('\n', 1); - return (0); -} - -int ft_pwd(char **argv) -{ - char cwd[256]; - - (void)argv; - if (getcwd(cwd, sizeof(cwd)) == NULL) - perror("getcwd() error"); - else - printf("%s\n", cwd); - return (0); -} - -void ft_export_loop(char **argv) -{ - char **name_value; - char *tmpstr; - - name_value = ft_strsplit(*argv, '='); - if (name_value[1]) - { - tmpstr = ft_concat_multi(name_value + 1, "="); - ft_setenv(name_value[0], tmpstr, 1); - free(tmpstr); - } - else - { - if (name_value[0] && (*argv)[ft_strlen(name_value[0])] == '=') - ft_setenv(name_value[0], NULL, 1); - } - ft_matrix_free(name_value); -} - -int ft_export(char **argv, int index) -{ - if (*argv && ft_strlen(*argv) == 0) - return (0); - argv = argv + index; - if (*argv) - { - while (*argv != NULL) - { - ft_export_loop(argv); - argv++; - } - } - else - ft_export_no_args(); - return (1); -} diff --git a/srcs/builtins_background.c b/srcs/builtins_background.c deleted file mode 100755 index 5e81f13..0000000 --- a/srcs/builtins_background.c +++ /dev/null @@ -1,104 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* built_ins_background.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: hgoncalv envp, 0); - while (vars.matrix[vars.l] != NULL) - { - while (vars.matrix[vars.k + 1] != NULL) - { - vars.i = ft_strlen(vars.matrix[vars.k]); - vars.j = ft_strlen(vars.matrix[vars.k + 1]); - if (vars.i > vars.j) - vars.i = vars.j; - if (ft_strncmp(vars.matrix[vars.k], vars.matrix[vars.k + 1], - vars.i) > 0) - ft_swap2str(&(vars.matrix[vars.k]), &(vars.matrix[vars.k + 1])); - vars.k++; - } - vars.k = 0; - vars.l++; - } - ft_print_matrix_add_str2line_start(vars.matrix, "declare -x", " "); - ft_matrix_free(vars.matrix); -} - -void unset_loop(char *argv) -{ - int i; - char **envp; - - envp = NULL; - i = -1; - while (_shell()->envp[++i] != NULL && *argv && ft_strncmp(_shell()->envp[i], - argv, ft_strlen(argv))) - ; - if (_shell()->envp[i] != NULL) - { - envp = ft_matrix_remove_col_by_index(_shell()->envp, i); - _shell()->envp = envp; - } -} - -int ft_unset(char **argv) -{ - argv++; - if (*argv) - { - while (*argv) - { - unset_loop(*argv); - argv++; - } - } - return (0); -} diff --git a/srcs/builtins_background2.c b/srcs/builtins_background2.c deleted file mode 100755 index 9356df2..0000000 --- a/srcs/builtins_background2.c +++ /dev/null @@ -1,57 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* built_ins_background2.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: hgoncalv exit_code = ft_atoi(argv[1]); - _shell()->exit = 1; - return (ft_atoi(argv[1])); - } - else - { - _shell()->exit_code = 0; - _shell()->exit = 1; - return (0); - } -} - -int ft_setenv(char *name, char *value, int overwrite) -{ - int i; - char *str; - char **envp; - - i = -1; - str = NULL; - str = ft_setenv_str(name, value, str); - if (str == NULL) - return (0); - while (_shell()->envp[++i] != NULL && name && ft_strncmp(_shell()->envp[i], - name, ft_strlen(name))) - ; - if (_shell()->envp[i] != NULL && overwrite == 1) - { - free(_shell()->envp[i]); - _shell()->envp[i] = ft_strdup(str); - } - else if (_shell()->envp[i] == NULL) - { - envp = ft_matrix_push(_shell()->envp, ft_strdup(str)); - _shell()->envp = envp; - } - free(str); - return (1); -} diff --git a/srcs/builtins_checkers.c b/srcs/builtins_checkers.c deleted file mode 100755 index f6aaee8..0000000 --- a/srcs/builtins_checkers.c +++ /dev/null @@ -1,63 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* builtins_checkers.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: hgoncalv args[0], '=')) - return (1); - if (ft_strexact("cd", cmd->args[0])) - return (1); - if (ft_strexact("export", cmd->args[0])) - return (1); - if (ft_strexact("unset", cmd->args[0])) - return (1); - if (ft_strexact("exit", cmd->args[0])) - return (1); - if (ft_strexact("pwd", cmd->args[0])) - return (1); - if (ft_strexact("echo", cmd->args[0])) - return (1); - if (ft_strexact("env", cmd->args[0])) - return (1); - return (0); -} - -int check_if_builtin_not_pipe(t_cmd *cmd) -{ - if (!cmd->next) - { - if (ft_strchr(cmd->args[0], '=')) - return (1); - if (ft_strexact("cd", cmd->args[0])) - return (1); - if (ft_strexact("export", cmd->args[0])) - return (1); - if (ft_strexact("unset", cmd->args[0])) - return (1); - if (ft_strexact("exit", cmd->args[0])) - return (1); - } - return (0); -} - -int check_if_builtin_2pipe(t_cmd *cmd) -{ - if (ft_strexact("pwd", cmd->args[0])) - return (1); - if (ft_strexact("echo", cmd->args[0])) - return (1); - if (ft_strexact("env", cmd->args[0])) - return (1); - return (0); -} diff --git a/srcs/builtins_runners.c b/srcs/builtins_runners.c deleted file mode 100755 index d3a45eb..0000000 --- a/srcs/builtins_runners.c +++ /dev/null @@ -1,68 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* builtins_runners.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: hgoncalv args[0], '=')) - ret = ft_export(cmd->args, 0); - if (ft_strexact("pwd", cmd->args[0])) - ret = ft_pwd(cmd->args); - if (ft_strexact("echo", cmd->args[0])) - ret = ft_echo(cmd->args); - if (ft_strexact("env", cmd->args[0])) - ret = ft_env(cmd->args); - if (ft_strexact("cd", cmd->args[0])) - ret = ft_cd(cmd->args); - if (ft_strexact("export", cmd->args[0])) - ret = ft_export(cmd->args, 0); - if (ft_strexact("unset", cmd->args[0]) && cmd->args[1]) - ret = ft_unset(cmd->args); - if (ft_strexact("exit", cmd->args[0])) - ret = ft_exit(cmd->args); - _shell()->exit_code = ret; - return (ret); -} - -int run_builtin_not_piped(t_cmd *cmd) -{ - int ret; - - if (ft_strchr(cmd->args[0], '=')) - ret = ft_export(cmd->args, 0); - if (ft_strexact("cd", cmd->args[0])) - ret = ft_cd(cmd->args); - if (ft_strexact("export", cmd->args[0])) - ret = ft_export(cmd->args, 1); - if (ft_strexact("unset", cmd->args[0]) && cmd->args[1]) - ret = ft_unset(cmd->args); - if (ft_strexact("exit", cmd->args[0])) - ret = ft_exit(cmd->args); - return (ret); -} - -int run_builtin_2pipe(t_cmd *cmd) -{ - int ret; - - if (ft_strexact("pwd", cmd->args[0])) - ret = ft_pwd(cmd->args); - if (ft_strexact("echo", cmd->args[0])) - ret = ft_echo(cmd->args); - if (ft_strexact("env", cmd->args[0])) - ret = ft_env(cmd->args); - _shell()->exit_code = ret; - return (ret); -} diff --git a/srcs/cmd_build.c b/srcs/cmd_build.c index 7db6694..d9d5e20 100755 --- a/srcs/cmd_build.c +++ b/srcs/cmd_build.c @@ -3,55 +3,83 @@ /* ::: :::::::: */ /* cmd_build.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/22 15:19:27 by vrubio #+# #+# */ -/* Updated: 2022/12/29 20:19:52 by hgoncalv ### ########.fr */ +/* Updated: 2022/12/27 16:21:58 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ #include "../include/minishell.h" -// -1 =break -// 1 = continue -// 0= do nothing -int init_tcmd_while(char ***matrix, int *i, t_cmd **cmd) +void create_n_clean_file(t_file *file) { - if (!is_redir(***matrix) && !ft_strexact(**matrix, "|")) - { - if (ft_strexact("cat", **matrix)) - (*cmd)->flag = 1; - (*cmd)->args[(*i)++] = ft_strdup((**matrix)); - } - else if (ft_strexact(**matrix, "|")) + file->fd = open(file->filename, O_WRONLY | O_CREAT | O_TRUNC, 0644); + close(file->fd); + free_files(file); +} + +void create_file(char *str, t_cmd *cmd) +{ + t_file *file; + + file = malloc(sizeof(t_file)); + file->filename = ft_strdup(str); + file->type = cmd->type; + file->heredoc = NULL; + file->next = NULL; + if (cmd->file) + create_n_clean_file(cmd->file); + cmd->file = file; +} + +void create_infile(char *str, t_cmd *cmd) +{ + t_file *file; + t_file *ptr; + + file = malloc(sizeof(t_file)); + file->filename = ft_strdup(str); + file->heredoc = NULL; + file->next = NULL; + file->type = cmd->type; + if (cmd->file_in) { - *(matrix) = *matrix + 1; - return (-1); + ptr = cmd->file_in; + while (ptr->next) + ptr = ptr->next; + ptr->next = file; } else - { - set_redir(*cmd, &matrix); - if (**matrix && !ft_strexact(**matrix, "|")) - return (1); - } - if (**matrix && !ft_strexact(**matrix, "|")) - *(matrix) = *matrix + 1; - return (0); + cmd->file_in = file; } t_cmd *init_tcmd(char ***matrix, int i) { t_cmd *cmd; - int loop_ret; cmd = ft_inicialize_cmd(*matrix); while (**matrix != NULL) { - loop_ret = init_tcmd_while(matrix, &i, &cmd); - if (loop_ret == -1) - break ; - else if (loop_ret == 1) - continue ; + if (!is_redir(***matrix) && !ft_strexact(**matrix, "|")) + { + if (ft_strexact("cat", **matrix)) + cmd->flag = 1; + cmd->args[i++] = ft_strdup((**matrix)); + } + else if (ft_strexact(**matrix, "|")) + { + *(matrix) = *matrix + 1; + break; + } + else + { + set_redir(cmd, &matrix); + if (**matrix && !ft_strexact(**matrix, "|")) + continue ; + } + if (**matrix && ! ft_strexact(**matrix, "|")) + *(matrix) = *matrix + 1; } cmd->args[i] = NULL; return (cmd); diff --git a/srcs/cmd_build.o b/srcs/cmd_build.o new file mode 100644 index 0000000000000000000000000000000000000000..60521b285a51f32ffac09debd34ccbc220b1f7e8 GIT binary patch literal 15144 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 literal 0 HcmV?d00001 diff --git a/srcs/cmd_build2.c b/srcs/cmd_build2.c index 03a8e5e..4c73d8f 100755 --- a/srcs/cmd_build2.c +++ b/srcs/cmd_build2.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* cmd_build2.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/22 15:19:28 by vrubio #+# #+# */ -/* Updated: 2022/12/29 20:05:04 by hgoncalv ### ########.fr */ +/* Updated: 2022/12/25 14:34:02 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ @@ -48,4 +48,4 @@ void set_redir(t_cmd *cmd, char ****str) return ; if (***str && is_redir(****str)) set_redir(cmd, str); -} +} \ No newline at end of file diff --git a/srcs/cmd_build2.o b/srcs/cmd_build2.o new file mode 100644 index 0000000000000000000000000000000000000000..365e9b803db8d25e7fd1fe7add8341dd1ab15e77 GIT binary patch literal 11592 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 +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:31 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:19:32 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:31 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:19:32 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/concat.o b/srcs/concat.o new file mode 100644 index 0000000000000000000000000000000000000000..4e22eaf8486d6b659af411c9908b3f83b2eaae77 GIT binary patch literal 8432 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 P$Bz?e6Rey0mG%D((-%{5 literal 0 HcmV?d00001 diff --git a/srcs/create_files.c b/srcs/create_files.c deleted file mode 100755 index 38b730a..0000000 --- a/srcs/create_files.c +++ /dev/null @@ -1,55 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* create_files.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: hgoncalv fd = open(file->filename, O_WRONLY | O_CREAT | O_TRUNC, 0644); - close(file->fd); - free_files(file); -} - -void create_file(char *str, t_cmd *cmd) -{ - t_file *file; - - file = malloc(sizeof(t_file)); - file->filename = ft_strdup(str); - file->type = cmd->type; - file->heredoc = NULL; - file->next = NULL; - if (cmd->file) - create_n_clean_file(cmd->file); - cmd->file = file; -} - -void create_infile(char *str, t_cmd *cmd) -{ - t_file *file; - t_file *ptr; - - file = malloc(sizeof(t_file)); - file->filename = ft_strdup(str); - file->heredoc = NULL; - file->next = NULL; - file->type = cmd->type; - if (cmd->file_in) - { - ptr = cmd->file_in; - while (ptr->next) - ptr = ptr->next; - ptr->next = file; - } - else - cmd->file_in = file; -} diff --git a/srcs/error.c b/srcs/error.c index 0d0a159..0b2fd97 100755 --- a/srcs/error.c +++ b/srcs/error.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* error.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:33 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:19:34 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:33 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:19:34 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/error.o b/srcs/error.o new file mode 100644 index 0000000000000000000000000000000000000000..7c711a39b118fdf7c97b71161a705d9bbc0e28d5 GIT binary patch literal 6096 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 VA?cjv)A!+zLMZRBD*ILS{{vlV-a!BW literal 0 HcmV?d00001 diff --git a/srcs/free.c b/srcs/free.c index d1e0f28..99eacf6 100755 --- a/srcs/free.c +++ b/srcs/free.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* free.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: codespace +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:36 by hgoncalv #+# #+# */ -/* Updated: 2022/12/27 16:17:31 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:36 by vrubio #+# #+# */ +/* Updated: 2022/12/27 16:17:31 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/free.o b/srcs/free.o new file mode 100644 index 0000000000000000000000000000000000000000..29839b4c74dcfc715e04910cf9d839615e35722a GIT binary patch literal 7872 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 +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/22 15:19:37 by vrubio #+# #+# */ -/* Updated: 2022/12/29 20:05:28 by hgoncalv ### ########.fr */ +/* Updated: 2022/12/27 16:20:45 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ @@ -45,7 +45,7 @@ void init_heredoc(void) { t_cmd *cmd; t_file *ptr; - + cmd = _shell()->head; while (cmd != NULL) { diff --git a/srcs/heredoc.o b/srcs/heredoc.o new file mode 100644 index 0000000000000000000000000000000000000000..51850d4fa56c5223bd7b38d16ba6c26f55191ee1 GIT binary patch literal 10112 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 +#+ +:+ +#+ */ +/* By: codespace +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:17:04 by hgoncalv #+# #+# */ -/* Updated: 2022/12/27 16:00:28 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:17:04 by vrubio #+# #+# */ +/* Updated: 2022/12/27 16:00:28 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ @@ -176,30 +176,22 @@ void pipe_commands_dup_n_close_pipes(t_cmd *curr, int *pipes, int run_if_first_level_builtins_set_path(t_cmd **curr, char **path, int *num_commands, int *i) { - i[3] = 0; if (*path) free(*path); if (check_if_builtin_not_pipe((*curr))) _shell()->exit_code = run_builtin((*curr)); *path = ft_get_exec_path((*curr)->args); - if (*path && access(*path, X_OK) != 0) - { - printf("bash: %s: Permission denied\n", ((*curr)->args)[0]); - _shell()->exit_code = 126; - i[3] = 1; - } if (!check_if_builtin((*curr)) && !*path) { printf("bash: %s: command not found\n", ((*curr)->args)[0]); _shell()->exit_code = 127; - i[3] = 1; } - if (i[3] == 1) + if (check_if_builtin_not_pipe((*curr)) || (!check_if_builtin((*curr)) + && !*path)) { *curr = (*curr)->next; *i = *i + 1; *num_commands = *num_commands - 1; - i[3] = 0; return (1); } return (0); @@ -226,10 +218,9 @@ void pipe_commands_child_n_error(pid_t pid, t_cmd *curr, int *pipes, // i[0] = i // i[1] = j // i[2] = num_commands -// i[3] = just free index void pipe_commands(t_cmd *cmd) { - int i[4]; + int i[3]; int *pipes; pid_t pid; t_cmd *curr; diff --git a/srcs/hg_loop.o b/srcs/hg_loop.o new file mode 100644 index 0000000000000000000000000000000000000000..5ba4939754ed7a4321fc28c6e2c4b0b95a6c2c35 GIT binary patch literal 21320 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 literal 0 HcmV?d00001 diff --git a/srcs/initializers.c b/srcs/initializers.c index 182a417..b27eefd 100755 --- a/srcs/initializers.c +++ b/srcs/initializers.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* initializers.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: codespace +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:38 by hgoncalv #+# #+# */ -/* Updated: 2022/12/26 12:05:00 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:38 by vrubio #+# #+# */ +/* Updated: 2022/12/26 12:05:00 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/initializers.o b/srcs/initializers.o new file mode 100644 index 0000000000000000000000000000000000000000..536d9056f9d443c5cd1440b9b8ef746e7e60b98a GIT binary patch literal 8832 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 F{{cWvAOrva literal 0 HcmV?d00001 diff --git a/srcs/loop.c b/srcs/loop.c index 31d4a12..dced238 100755 --- a/srcs/loop.c +++ b/srcs/loop.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* loop.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: codespace +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:17:04 by hgoncalv #+# #+# */ -/* Updated: 2022/12/26 11:50:06 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:17:04 by vrubio #+# #+# */ +/* Updated: 2022/12/26 11:50:06 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/loop.o b/srcs/loop.o new file mode 100644 index 0000000000000000000000000000000000000000..9cf3eee3df964b2662df3257ee12816374e160cc GIT binary patch literal 14816 zcmcIr3vgW3c|P~vy}K(**2eRwWLq|9^~93JOApK5#j^3(IG6-juXeAbEvsF1 zA4HJyuw{3=kvEZ&IHiOTr=5mLLqjGF8ETRs0kLS(@CXcX3muec0TZA#Fd;4>b^rf7 zR!2vBZP6rWM)#ioJOBA#=k?#S_T4?bn{`biqG;r5GD``R5UY8%-a)G!WF<;8! z>%4wfVD#;ZK<>_yfn0VbFxE2@$UPC5`n3_*_XN4;%-y~pR37+6#v8~@pTw?|VVVko zD)c!!@5#Uz5nT^X`VRaa>|0R3-Z6{m%RSkfdxKU%RlXZ6oeJch4osai0w%MM9GL9z z9XWob;d@}R`qY6*H1=86V^_t3l%bLN9abRsd|>KLaD0jhE;;beDC?Kp@eV5hE*yM? zMS*&j-%)$6PPMetgHk8(`yX<3OzgueUHWF-l!aF-nRn5Tofp?)d2I zp3&n*N82;LuT53|5A%=>?R3{toIQWUh(So{9I1E|1;2TP{xPKIm{A8Ovv)1nqJ@Nw ziNy%hsXi}E%2dxSdV0J8kMNFVa3$uvLp!^P4 zWX}h3KUH@DTxIus2+Qn=>i5{5z?Ru`N5$QL%8B!qNlgrlK2`DQ&YNz268A0Gv>FPV zR&Mu+z}RkBk+^xiB=(!p(^|IgPcV0Alpe0DVT~K$u|Ni@dv4c$WS&s?EgC|ALA?U%3oYw=VAM9(Rzw(Su z8Ewz|zE+rqd`+{SVe)7bU>y689i)+h%|ba4 z7hnta1eeBkAL<=TS=^4?R4~7}rHB>E?)(yZ_o007cILLX2z&AY7oLGd&64-{`BKKT zLO}jt*JdSsoFP8~nu$9-Cx1v)j0ZQqnz3E5p1`BO;U$=3^F1)u-FBRi zx5|Qi0f0UN8`TJGRGl|>-qIOj+m%?1``-R8GUR^L2D76#|92hm+Ln8Lb`c(hX66Ad z!eH*HVE#Z2g0LQg)2GV`u`TynaOxdciw9?y;z3-A@4oAL4^S^u z$$Rf%wQROpfmOCt(I{BoGje9ZjLGkSMCk0<5iqcI_~rw6nB{j(!u~NM?Z@Dd`R0Cl z&;gFw;5X2(G1RxPJSv+GjO_yM?xP-bprIHWS|&=WMy+fL-91L8(Q zvK5>xZ1QhygMfk?TgO4djMT6IfuIpWUj|aqSvH=i0l-~U6?$^ku_e^mbFg3< zXU4Z}d_B{Jb9L^L2^^bUJamEvb4PGS!feDTh>gLq12v~%PT-2F4zg(sB!McOyHMra zhz9mOg^P)=G`7xuY+!?w7&DkUO&>)VP*%}mkHj)X8x{!mh0}xW*6MV-6-f>ag%eRL zk<3{A$!sFJXdxmRt>z}H#oB14GvQ1&-F|r+>(yelv;n@s8jeNVTbr#7Ef&(l?X6AL z#tl$!wT8o)!S>b`tFfsK=nYn62sj%QrNgOMA`?ptSn*_X*zfl%&F3W7`+K`vNIDfs z*HZ}*f=DBM%DR?tNgd~uSe#+iAK0JfEg++#xcCL5dth?8D7P1OF+$4Jo}R_Ch^~2& z&~*=ex!B9gUYeV=QOgXM3FAO?FQupg{k|190EdZ>eemb*f``VG>tA1f1yCOEm*A;0 zNwkyEv&2S7lH(ev!0tLz>+$A+puFbt^L_z!YNBPXDYL+#5&(!S_M<_pk7J-ydAOtgUK&!O2! zAHCZLi<4+U?|qaWzq^9=yOs`tp6=kHTMMGUP!Ro3Aet^2t@V7Y8xtq*DyPy~*E~+? z8K8;Q+Q6t2cloFx8%xj-W8(B(Ojo-H2TZ?nFZhHl9xu|&rL_gU=q(oQ{tLkZ=F-~b z)TN0%sAlcOs79aI!E9Q4Db5dlBH&Be8KSLoQza8|Qc0!w=$yqWmPgrg0pU!rZ#g=o zPwZi`d^MB61foIx5^Z&PRjE8Usm@ETHDdNn}c6tBXpaxEi9d3)&mmTWLKXt0F6eS~DfXZ3 zR#pq$E`Zj>e(jnSLiySiXlKXruXL?I+2y7rN?%ThuSEeW04Nxa97~|f9H4Tp{9si< z14QXEj1>IwrA2G_koTMd2$c_j*&yGCnx_4(d@(%fO(Bf7hC4Q?&!$uLu|y=EjoS4i zZ5u)xTI%AlM0TWZAd#)_i)H4roP$4odzu{te!mb(2tO1+W#;x_JMAAt2l^w4OdP5( z*#rucWGI%1r3dXew%|5sYNUjD3xwg*Os}`zbnBN@nWo-QX|6b68hS0f_nYTEU@p>| zt4tr#Zhdv7xr*p6ZQQ&VUm3S|KfZwvU+!y7H@x);vlL&@3j3~0-*498%Y8+GUQcPS zWx9IJs{LlEeod8Gff~H1VNurf9A%cQ+6s+;m+1aV)1%jN1J^-+ZGS;|4U+DR>HnhH zjNFEPNu}OeWuCVOdT&%jm)vG*H-5=1{|YD-N0d*<=SCAky9B))cYBXf=V^#B;?P)mEsPI{Hc)xVW2Pqqe#4--uY}%u`zK&{2OxT2 zgn6S`Vx*3l-fPV&6tljA&E6I7*5ei8?s02NH!BoCV+(eXpXS- zU^11N3!$)344IR|q2X{U(@2J!a8IruvZJwZeJo=4WmAc!=K5$XeQPKRaC{&fYD(LQ z=$!nC+LI1Z<3b^3UMNJ-;go$F>5qp8$e^9Fqsa($ArT(3NhX9ViBR)xR!@gey|BlI z7*I#(10%9!`);edvDIp9@HhDzt)_;i#)ihm2CHr;lTFxH4cG}g6^j5FPDKWoVcKxSeJeL)z{M<`ZC(S_N@-j~w$%tYO#x?FX>E%Gj&rma|F8r8IR|{g0e{c||Dgl^v;+RC z1AfW@|1IDc9}yRePhlP2#r*X-;L99vzXRUvfcH4y_-j!yd-?!J`%lmhL%xTAPYDP9 z`y6om8Y(9L2M+i#2Yk{2e+h83bAWz~@%;Fj-LkIkf1HJ+> z%3}7ccEC3~;Ph1UM@T50?F(%RH8eDA+!$(LWRR1M?C4|3Kxj+vbzPmkq3bqp-qmw` z==#pC-kuN%g~D){hEn!0Bov`^CYiF^6fm9)N88|Fw z{1DBVNh+I|*A`VoQTZ*TA2p@yk#Hn4Uv3i>3M>P5hUP$!%)sGG?}_@EL+mW4&(Lrx z8G$o?*iNOADWPr5-3A`8AV5|IE)Ip`@ni%-DJL$R zBRP!uSSV^|>@bPMlj-6*o0!ho#BVqY zUqICJPzH0U{$%P_(x0*m-Lr|5JrGNy_JMe^FC0$`XW&~VBkH%=sWjR>6iW|M=8p1%wGim zw1618$&!P|yuL%C1BL%3_Y=>q7VwepO1iJYJh5Tpq8ugv<7S z*#Uo9!YxU!#?M)7mgUqs;LQ?VEy-z<@QWq9OTsUa@a+;VkIO9*UL)}jO1K=KLlQ3A z|BwUzgoLk_`@-N^I%c#UJ z+y65OUk7|b&KnZGUc$@hCHwsS=LQLvEiQc2FYBwU_v|1IINoYNAH*LA|qCj5|r zf^m@fyChuZ@0V~n4igUeGZHS#|D}Y>^JG;CHD}(wcbMbqIR3T7Uk6=CpxH%oYvgxeA>%Ndt&*`5a_{31!tq=c`P@Lx%|Eaw9WZ1z{l`<;=$FaoH!(IjcZJh2^@E5sXyA=F>j)xWeILG@He45ky75rIF ze?`GhbNZ_azMj+HQgFOC!15jTD){vnr+=v6r#Qc`OT_2f9DhOKpXBt6f}iB{I|?rN z++3cJ|5u!@QgGg#R4X|B*SyeJr{FG5w=4KJIlV=}h2HBGd^J}bR`3+Z@%{sgu%A(c zd{)6<;thus{AG?GQSk3^`fnBdUC#fog8!c5Qwomv9$3Wph_F-aQ$JVuXE^VdLUkZ-*Dp=lEaIxO-z61-taGw$PHCH16McDZ)=i9E}i#WcU<3f(OpNcE| z2boy%_X>`=K9=JOewfSuxguZO--)Yc)y|9fcZb05VB*Pojte_EOnMc5;jg@}@*|XX zso)(|IZry^7RS*I?g~XVDY)=!uY!ws9#(KMUf)-6abCQr;NrX>{`Bob@PiDzGb#2S z6t$Ec5BoFtiQe{zTHpnzc`Fn zA4T9O{Qflnzwz`ZK@F{k`}*()EhdaZsc>Qd?vrE;ev!6C7ciOl@n2Hm&sl!B1GD|` zGgckF3gVsY!BBq+e-itn6bq!_n2UKKgm&Wq_m1|8IZHaZ#o`hk+z}x&Esag%&nS1@|3f zQS~3?$-|_?i&aaZHv)~hYKMZKTF-zJ9LMMo{6w!}+pQ?W!V9F2yLdY=Jf0JUE%8TFS z#q^)%`uCVr9G$P2d#d{LfT=RE$G`A{P2?4bVNrRH7QvA3ohp3J-jgzFet*o`VaLyar&#|Bd4gX{rOZA=Kk>%%MAT=w2-z$?5M;0j@0%P`%p?Kc|CG{S z_%Go9gi5ja-OJ-Q&KWU&_&qE7i@2igs&4Gkh9BclI{5rWb8t$j{c(F%mIxq(jNr#P alv@gzVKofMAr$4tQDZUP)U^yW8En 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 literal 0 HcmV?d00001 diff --git a/srcs/loop_utils.c b/srcs/loop_utils.c index 0928dca..069dfee 100755 --- a/srcs/loop_utils.c +++ b/srcs/loop_utils.c @@ -3,15 +3,17 @@ /* ::: :::::::: */ /* loop_utils.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:40 by hgoncalv #+# #+# */ -/* Updated: 2022/12/29 20:03:08 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:40 by vrubio #+# #+# */ +/* Updated: 2022/12/25 14:39:45 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ #include "../include/minishell.h" + + int does_next_read_stdi(t_cmd *cmd) { if (ft_strexact("w", (cmd->next)->args[0]) || ft_strexact("ls", diff --git a/srcs/loop_utils.o b/srcs/loop_utils.o new file mode 100644 index 0000000000000000000000000000000000000000..07ffd8c052b8227b579ebdbe8790cfd9fe0903d4 GIT binary patch literal 10808 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 literal 0 HcmV?d00001 diff --git a/srcs/main.c b/srcs/main.c index a5fa44e..8061b12 100755 --- a/srcs/main.c +++ b/srcs/main.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* main.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/22 15:19:50 by vrubio #+# #+# */ -/* Updated: 2022/12/29 20:02:58 by hgoncalv ### ########.fr */ +/* Updated: 2022/12/27 15:59:38 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ @@ -23,7 +23,7 @@ void ft_handler(int signum) if (pid == -1) { write(1, "\n", 1); - rl_replace_line("", 0); + // rl_replace_line("", 0); rl_on_new_line(); rl_redisplay(); } @@ -92,7 +92,14 @@ void minishell(void) line = ft_var_expansion(line); matrix = line_to_matrix(line); if (add_cmds(matrix) && init_remove_qt()) + { + print_tcmd(_shell()->head); + // if (!((_shell()->head)->next) + // && check_if_builtin(_shell()->head)) + // run_only_builtins(_shell()->head); + // else pipe_commands(_shell()->head); + } else free_arrays(matrix); minishell_clean(&line); diff --git a/srcs/main.o b/srcs/main.o new file mode 100644 index 0000000000000000000000000000000000000000..a81be033661568467abf37a217dca5cc42f03f76 GIT binary patch literal 13184 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 Z@eTuTY(I`^KK=K&|Cfa#e=6NU{tvI1`|kh% literal 0 HcmV?d00001 diff --git a/srcs/matrix_fts.c b/srcs/matrix_fts.c index af8966a..bfc5a92 100755 --- a/srcs/matrix_fts.c +++ b/srcs/matrix_fts.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* matrix_fts.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:53 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:19:54 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:53 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:19:54 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/matrix_fts.o b/srcs/matrix_fts.o new file mode 100644 index 0000000000000000000000000000000000000000..81b4e60344a6e4f8633346bcbbdb018ff03d8480 GIT binary patch literal 7056 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 wynvexaVW +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:56 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:19:57 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:56 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:19:57 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/matrix_utils.o b/srcs/matrix_utils.o new file mode 100644 index 0000000000000000000000000000000000000000..8605ff45ee88d7cd273368cb52a286ab2880e859 GIT binary patch literal 8512 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 literal 0 HcmV?d00001 diff --git a/srcs/parse.o b/srcs/parse.o new file mode 100644 index 0000000000000000000000000000000000000000..73a0863f869d9eda8441b8b6f6bb4cc7b6303da5 GIT binary patch literal 14744 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 RJ&m(}oBIDLI#ZHv|6jEqR3-ob literal 0 HcmV?d00001 diff --git a/srcs/parse_clean.o b/srcs/parse_clean.o new file mode 100644 index 0000000000000000000000000000000000000000..15bb391f27ef4c725e75434dc4e90477d9ad3400 GIT binary patch literal 5624 zcmbtXU2GKB6}~gG*Sp3)YkMILAwo-)Hl)JKu4{oIK-bWPF*pfou=3NN$#{2cuUOBz zGh>R=R-xEbY+RDiiZ+!RC4H$PH4i+bsN$tIQ6c1^p_Ll)QYos`ABrEGHcg%Wx#!%u zcYS?5t3=I_X74%QJ->JEJ#+V|!r(z&(}*CA>?13ZKnXe7vBKvWnT44e8Z#}LvBhXyqHF;s)tX-Y{V?5vYR`P`_Ti#FtEhaCKJ$i5#2154UASu{S zCeQRhjVy(8MpAR!{p1Gb+Ubt%3ZchIRg1ni0VSdZIGuN@2o2(k} zdbV);*0W(@izat9JG5}_uvU9u!7RRE&JHb^=XyIa|48@O25L9@r{9V9_q~q(KUnP_ zLPeDhX@T8bXmXB z(r!QuD6Lg*5G!1|Yi#LmVv2v2Q$(ZWrL0+dJ>t!NNO}3Qx!c-v4Z?nuT`@BkP;F+RbLeXE!d<0V6Igy>oV1znG`Ar=maaL}5Yrj`gt>6oR}h7XJ~(ZEM6vBSNst+ z_ocWWctlI_xhLX9qOFg!9L|4{fRXm8_Ed|}zNx(vY&t#x{_Y_yE&Bk1)Hw^K#*%;z zq#&`3_PLEl`|g(eTXwbFyKx|ecKJKMzkeekO_Ye4fs}qHA@N>fBtq2?Aloo2cnD$Z z$2k0v*R~D<^LKa*av%I^+P~V{;Foo1ctM))6@5Y`Y|nSBV#TrD4AcgSR3pt{2((RV zv}ulR*0-hT-Ir-1Lt}rViAfrNoHptAchU7kk7GVM4`+x5OK+M@65gemZlLetZ8ri7i}`8^xYbb zZw=$ckI-gg@==;VQ);xGrp<3rUEi6a&3ZP4S!zf0E-157bw|_e2X~J@R`r7Pr0bVQ zU8j^rXq7P0gRhyXufjt+RA2G8O5xChL+Jy#o#|XQ)04@id$K*bY%Z5gcaH~?uCsU4 zaUHK*1kv`2V|!2b?daaoo9-S>caQkCTMo)kI(zL>$#Z-kAlsjEi(_8Ztxo#glkV5b zZmB!4hbxZ1l5KI!_6Yk~DGpxb_SNsv+Fz|!2(OlDZy$F`WqW(M=nPMKZqH}8m&*Qe zs|0Xm)V6wj$1TZwfsjK74(v{E{k$_=wq0Ic_m2D2LSc)nhX+Y}@(V;e*`aM}jVGRi zjdV9)_#m;P*WcdpZT&!7lksB%RM^~}aGJ0yftWvnvyBP&XpFqO9Hn7I-Z=0GNWDig zGF?CSX{TV>y+J!>C0e-9j{*?wew&p1RQw{KE8sOh+fWO=Tf3*QF zZ+~comOnXc4OrQ1cGoT|D^C*Z(BMP+`v;CZN^>kZ@7aY<$*^+ybB(IKZqa@;_$($d1NhkHQ1uAfRceADarMG1$Ge;o&w5iSR&EY2glw1AAAL++2FV<6rF&nP@dq5}y0 zb_lZ?krj9cUw6y_NyH7MmHmVI_z22!M)-M?%R3cZbgq30zJ<#L1@GnZpn}JEo)0Vd zK`z@0{(COF3jRATPbxSU$u|`ID3@yr{$DO*UqTY=(984uVF<5T&sR7u^fO$R->>{N z5j_&!@-56P*x?3F#nWsy)Rpz~3NH2)$@o*_aLs@*@WOFSaGq1KGl6q5AeoXK*d#OT z`y|6q>_3+6dG=I>^+*nv;C?Y`mEDmlm@wWR9`>9QtEO$wc1Ph>6M72ODrMIZCU_ak z6szOo4&1ylZZ&W+aM9}a1G{*f8#!avh-Z)EN91Et8ticm#rg|(dCsU;YyNtL8rcLK z_KtiV37O~dFallV2G~oH6=xTF0n(@8L7cY(gc!ZA0vuQ4Zvz~Cs_Gxreh1j%8CC6< zI3V%`6-Gi9V-C=$`pvdbU(|{9J%TAd#wDfjJdJbq9+D5`8k1*6L!vj>7#31a%_!74l^J08oZlVH=(ES<5 +#+ +:+ +#+ */ +/* By: codespace +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:19:58 by hgoncalv #+# #+# */ -/* Updated: 2022/12/27 15:55:16 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:19:58 by vrubio #+# #+# */ +/* Updated: 2022/12/27 15:55:16 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/parse_env.o b/srcs/parse_env.o new file mode 100644 index 0000000000000000000000000000000000000000..b171e849248408ff35f79f5f55059ef57095ade4 GIT binary patch literal 6312 zcmcIoU2GKB6}~gGW3MrI%{omW?!%zcl0UE4P721g$%3;mP%BjVQQRoiFy0;SF6_>t znOz6cMjlgBqyLC-tVrXm!Tb2aM*wyvR>l|O^SUh3Y_hkMiL|**JxUGo2 z_B`aZs3w(5eec)y{KdH|ow|K9ewQK)QQuO^yiZmvlnd5o_`;A zZ1JzKT^FM5N*})@XLdRD#)VCv9KVEHC^FN=#+&+e=kv;o;@qzLx%^Eih0pRpumn;k zQlBm@U0-W2jALE!VCQi4!FyP4?_zz*x^Hoq)A%KZfY!0Y^Jhn`M!jy;T>q%$2Bl`r z^BZ9-Hx9fnGdYoEVNeJM54%C=Ip8o;Sk2r(P;RyAGaaUe~URs*ODg%}F<(|H7qo==Ty_W9my$fiYS$FpifFM0u zf>|O3=-xiY%#8N%Mx$r6`)l3XySHrI+lO|!4X^Lo$XJKTgl2D_4twAE5HpeyH3E_V zkZlC82QV}EV~i)qS9p;(v<1TApYUg}EpXMefAy?`D{rIlR5UCH#^idyXJu-vtMzb< zlxB9mYbKeV(3)lsPW#MtI8AlvThh3ADbjX~ndZ}H&90`IeA?`tGVj#Clr}f&gK4u< z-!BG1F6K z7mu^g+(aAwFF&JGV{hlaA&K&{dAz44OgdqJfDq8k*-<3~oe4s3nM8Yo!< zGokBO8kOg~akp3uyf6gF4UhVTa!~i{&2XUUKU?vO0}Xe&>V?Z$7s_tH_@#A6&aQgB z%Ag$-SXizH4QoY)bhq4Ou;vvj?qH?hO*aF7_`$(qB|PL50j`!@XE^lyBDuiL0gtnc z?U|SuweESuo36M%-R8j7d(|6;l40x)eubKP?lGnv>DBtzb|z0jHGL6q{KLUtxt%?| zFY6QQI*fxlP`GX^QZsm$7!&%(P#f7kL;6j!{+UQms#Oyfa)N!lv`PVh5qok#+=!zC z8g(*NX)xYcR2cZYrL4f$fuuuR(RTQ~62nm5WQ1|gkpD8hiTvJM{57;%IT>tKm*oV5 zL2HT`21~`DxDV1HN@5rc+F8sn*cW0@^mAt$TvW@l`hHlZrRO5{X&CU{Wm;=xx52Si z;`sQfi^HF7gMX(D{(2kyM{V%;+Tbg?t`jz=okyH(HoJYhlVx1oOX3itzU1tg+`nt* zq_cnb?#J^_I8W@{HJNvqadH!Z%j-Z(&1#fw=5{e;fQ2377q!mT=ksISH5j zUulDXBH?)E68Zl_!e#$=Q6EtA-`56r2*(M#l<;4a_;TEDOML8Jf`3fn!-1uRpOo;s zCH$0x_e=PhHvWGo@v-NLxUl2{w?po-;(RLbTts6Q%>v&|vX~IZP@=D>xahN@b7O~< zyQx?sj$IS`3=YvL1&;TO18V?>z}H{`FmMlXhhq*{uh$v=iW^iPU4%P`rk?%6}Je-TBFkDNKU~;9Uf3{QHLxO9<9Lv z5avb@&1JC)ysDdNct;v6Q*;|H%S?wM%LMgE;96W}V3n!X3vLyZXfgwR-Eo7!J(}U4 z8iKLg$G}B6D3+XxKU0S=eC^JpXf&&dLNd?w;~3U@hLsK1h^ECdbyR}_6C1YaoLqN2#r zL&ZLXw&FLK=u2NATs=u%k&8h%C9Wj$Uw7#9f3+VXpR2-=!>8n6u(lK#`v=~a8vg(R zIfZX2@^+B%8F3@Mkt;W z&S)d-1bz@Oq^j}Xyv_Jn#&Pk#5fdMKpBn!~z;OT7@fOAZgQ8Hm*jMA?mnr^DGQj)A zZ<-o^0Wj4kKm!XER-I#Kg~ z8?d8y+)YYKhBc<5ygSHe*ymq7IFLcCheb1MBG0- z-wJ!Nub7V-8%;J4@f<1f9EHC|Rr@Z$)OQyk_94D(F#Z@#t*d(f_)O#MZ&3b!Z&^kQ G)&4&Y)r_YA literal 0 HcmV?d00001 diff --git a/srcs/path.c b/srcs/path.c index 06d4960..9dc09d8 100755 --- a/srcs/path.c +++ b/srcs/path.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* path.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:20:03 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:20:04 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:20:03 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:20:04 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/path.o b/srcs/path.o new file mode 100644 index 0000000000000000000000000000000000000000..5e61719e6bfea78367978f977100dab27c2623f1 GIT binary patch literal 11264 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 literal 0 HcmV?d00001 diff --git a/srcs/shell.o b/srcs/shell.o new file mode 100644 index 0000000000000000000000000000000000000000..32391d259f07ccc51e5b27233e80c4009a48d442 GIT binary patch literal 8088 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 literal 0 HcmV?d00001 diff --git a/srcs/utils2.c b/srcs/utils2.c index 59741dc..6d40b67 100755 --- a/srcs/utils2.c +++ b/srcs/utils2.c @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* utils2.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:20:12 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:20:13 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:20:12 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:20:13 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/utils2.o b/srcs/utils2.o new file mode 100644 index 0000000000000000000000000000000000000000..9b08fcbe20d304cb897c714b9c3d806d421920c9 GIT binary patch literal 8040 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 literal 0 HcmV?d00001 diff --git a/srcs/utils_array.c b/srcs/utils_array.c index c7356fd..2b3563f 100755 --- a/srcs/utils_array.c +++ b/srcs/utils_array.c @@ -1,12 +1,13 @@ + /* ************************************************************************** */ /* */ /* ::: :::::::: */ /* utils_array.c :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hgoncalv +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/22 15:20:07 by vrubio #+# #+# */ -/* Updated: 2022/12/29 20:01:54 by hgoncalv ### ########.fr */ +/* Updated: 2022/12/23 19:12:37 by codespace ### ########.fr */ /* */ /* ************************************************************************** */ @@ -29,12 +30,12 @@ void print_tcmd(t_cmd *cmd) if (cmd->file) { file = cmd->file; - printf("FILE_OUT: %s (%d)\n", file->filename, file->type); + printf("FILE_OUT: %s (%d)\n", file->filename, file->type); } if (cmd->file_in) { file = cmd->file_in; - printf("FILE_IN: %s (%d)\n", file->filename, file->type); + printf("FILE_IN: %s (%d)\n", file->filename, file->type); } printf("__________\n"); if (cmd->next) diff --git a/srcs/utils_array.o b/srcs/utils_array.o new file mode 100644 index 0000000000000000000000000000000000000000..a0e3a2bcaf9655f507ab407d1bbbfc302a2f4aa4 GIT binary patch literal 9920 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 N$Iw1 +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:20:09 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:20:10 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:20:09 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:20:10 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/utils_fd.o b/srcs/utils_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..63a978a36e60452f5964dede09d7a4036305404c GIT binary patch literal 6408 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 literal 0 HcmV?d00001 diff --git a/srcs/utils_parsing.o b/srcs/utils_parsing.o new file mode 100644 index 0000000000000000000000000000000000000000..1984c82d158061a455145cc91a0c339e432f6ae5 GIT binary patch literal 5600 zcmbtXU5p#m6}~g$>z_DT?@u=+4b?hT3W>-%>n$uvAi>Gv#DS$qB#5L14P$%Op2i-p zX2xlfvL$6hm4!-8)B=4-QTo<5c!5T$l$wBu=p$-T9~(8TmZlG-4;4~Z-JWyjT<`d< z^U^(%=ic+3@0@$@nS0M%zg(O-tZN#RqOk*PRg)-VFAlEu3!+Ku5`{gVWqx^M+wU)Y8YD}LH6eKPN}J;mGY*g|nxD=ie4v~>i! z(8;_StgNiOUR?gPW>2--{iXfh9!f}6!J zVU(56KU&|qGuJzmh*vv7W?}wI7Nj6FX68<99ck!^y9pxVvN6ARhF}mqNCTu36sBCf z(&=>!iJAY`ejSi9KCUh$a>`$*|Gl zp^al>#JJ-IOiv0emOKTRPK*%KrJIN^XxdKx96FOsiU~2MUHKy*ai3{Bhi&NTmrsZh zwFlxz*Du#Ybr-1(CT6K^?}>IlMb)lwh#RjkZToQOF8O0U{B2$SL&P83D)}k2X_+2= zr^}D~fd|%mX|C}GDEEm3Tt2?RVcJl4p3v96IWUqo2DT0iX~T)ZuflS+vvm3ZK#)Z0 z!g696K#z_v#&g>MFVS`Gb0(=j*jT}FqU|bNpc7z z`}@BY`ltF^Av$9lAXHCmwhNXV?hcV~N&sWgEz<>|GYW|`*aOhhwEqljf~P2mfNH*1 z@fm9ePQy3nEYEk`S`J+-%#U;U-7v9$S~(8dHhM9 zI?j`*r7m)9f1Z!Dfv3l3;c4I_7C=BfmWZFs^RYG`LF+6ZLkpU@V8%mI3Q39Ud{dhz z+kE&tJb{7ZZ}ZK-)Slp(8XvvPHzJsRn`dT_mG~YXtn*Zx$DZOzqjiE0AUBBXyN0pz zN;q#AAZ3ia0yETyAq|a|Tg!?E9vZ*i@`7yJ^_`k)SF;H9D4yv%=WOQqraxy_9IL^E zYY%5NVh;>Ho?Uf3(`~utoHJ*$Bj0{DJDq&1ybqkJI>Fy@X+1l+?>~h<4C%?73>iDP3D!`4J zWls9GTV=R`cB}g*%p@joHZb8-R$6U0FhyW?WO{mEcE{s(*|A(&{rJ>QH4p47w1KsA z&oJ%Gptf~mB6$h+<-LI852b^Tg9C#<)~7ec_1^*`v^|PA$ToaP`}4vqe4j@gM3g3J zFR$8P3e8LuLTNX~HDut}SI91|4ATB&=uf6K4IZf&`(kB{0RW@#jRbL{A05!}%MmpW zfucj4eRO6c*BRi8G9RUjzQIHR?}Lj%+XvsU21CGLYrbBBXD}$HeZ*kV*{u=`hO1aB z2Ft7gvw*-6?&2Nl<)Q5t{m5PL?*fi-I?$qsJp*kMeu&>f5JY~)PD3B@@T<+jJp$M~ z{Q8Z1@h#^&N~r28ov|4;X~Zze}m3} z8vn5fzB$5wJc7e*pc@CeLU0(Q$nzyGU7+KMh<=6TNkBXezaPL4Meb~gPt&|{jVKZy zBOE^bLgculvYpgHKK`UkP)El33+WFlxIB>u6nq=$MFlUAKBM3RG|yuSeu8jI!T(LV ztKeUd-d1o@nXJWfUC)qVLE+27isubQ@^hieenu@$58tCazrP_|@*g7oV+H>jt?M%d z$4f2Bt+0X05XP5!oa{2bL%bovCBH-Xl)^8Qeo)~PokjOyw3^FWB;!l|KI*7=mT=4s z9R-0D6ud+Fiwb^=^z#ZX^L$mo0RGxec(W7?S@${_?vZ1E|~@82Zis&-9^?{y2ZEVe0(P1E$6V zh{fp2xkWK5s`x(k8-I|leDXcv_?S|4{GR}ZG37j=E9C2RpnPROsmk^(VE6OCM8$Lm z#gmQnlkHXVmv-4+ixy)E_Tj!qn0nl#|FwuOcIEmd{4R9*jQD>HL#qDxPeDDq0I_#*vw-0Gq9XGqF`QFB|Eo0r-$^31s{j80GvD`1 literal 0 HcmV?d00001 diff --git a/srcs/validation.o b/srcs/validation.o new file mode 100644 index 0000000000000000000000000000000000000000..d4f74851e5939642ecda5b6cebe47e9378053199 GIT binary patch literal 9496 zcmeHMYiv}<6`p(V-rY3@uUTV)W0Gu8F;L;f3&wykW`V9*9w})PRFby3T<>1ITh_aD zALdaIF1Dk%gvz8!8>tZGPye+N>LVgaB?72W`lD%4)kOUhwN+Y3(n>^8FbS!9&fJ;x z@p!F9MvZ^8BdurVo9{g4%)Mu3u8+rdcIleNWYJhB8}CV!vF9HeZ%27E%I33rwmUxj zc6{Ky+W7FX(c#huCu1MPpO2rK_ba5tPsT>$+VA4Sm*T^}k6*lL#J_!!^^YA7yi_%K zt>}*rzj4E*vG~wyfx*v%-Ra7oifi%VU!$dq?|_+0u9@KA^=RO^EAip01Aq5L*S--r zd+Fi#2d|^)tK4+pC2bHap942Od&?b1OYLp|PCdE+BQ*S*O5P7%54=!z`*kjGCAxr( zT)SK`_5-hJ(~SSpa{Q;G1D*g_>5J+z)A+w0ID7HoTkg`!`0E{=#XdLopQ+W3Qs4Ar z|L*_S?SFXPLXhijT#b!l?z;I;ld-F@yJJvpeiho7@@N9Q@u?DE?aA0(6q~J2GmCXB zDjuIH(@O$F$9d|Qk(oaoyZx?bAa+-qq3PrP(GO3;44GdWyB!$%ZBGi1NxXkcgu ztp32UQC5l$9J|ZzWm9t}F>xdKbZ?M*gm5=BjIM@lf)U z4`*&AJ4cD&&+zAS==z!hPn&tqJm-Bp{jA>^cfR?MYX;nXr>8DdwptNa&t28M@ z8!L$JDT_9?64Ay^DLM;nX@Ron(Xv(7VqiHD3$#fwrp?tB*VI)THH|fMwVLm>*6&s`jP==>bkZ)SbJ;K~CGbp*Rk;?RV+1sF*4w73uL+vf&zdz@d-e4}bM~Maz>W_) z<_@!QkE!Xa>o>Y=Bs^=@;g}a$OPKD_wtMxKAT~~zVXV9zUVXU$9&!QGv%|cfYnpEw z&1M5{*8P{1dM=p$l4(9^R+Y?}C(XI;bfQ7CNq8%rTPD3-Exdg|cpDfrgIsFFtk&D> zOy3GKxXr9bs9Fa_i;#C>e3pw@;(!Qc4o;x5o z$#mXIXAhK$mJlwaa`|Ftg2dJ@?hb8|`?U6bb;@g~QoIDxb^dN`>Z9_Fy`j zY%bc}8K>a-I@#f}FNu_$XZ%k&2Cla_cWZMlmti6poP_V#iV3e6o%(_F0Y}bxMK8p` zUXe~X-KBhX<*F6QbYZ`h1US=UTPq7rHp!^08@61jNaDt}ZrRcvTKWa2J8fr0sG8fB zsX>GHnwNQ^){cCcX@_dH#@Rmq2&908fa4Df&!wAcYM;`#%<&orHK6dZ4tJRG3|}7q zS$X_x|6%;780XtgSw7~K`p<~*TCC;x4ji4jVD|E`TVs_NM#V2*m>Z2sbU@vmnhwII z0J#^fxJB+WP0&SL_T{eECGb{ZLgIWE27a5^?)e;rPQ%@pMQ^+^7~lEFfik~p5{7`m z_^vo<%$R)Y;2eYD>?Rk3QSZjb4K{bYLs|w4ke=HtLRCr2cc#E!m;(Rl6!^#P=LZQZ$R z^QN8FuCA`fVvk#oZ`!;wW--gMA)P_WJOByO%H-_i+6q{NS%s97$tXjGVlMAQI|QeCTE(k{dMH0i@Oq->n*^Uv@CyW|`VDccQT=QuIJJA2;8f2!f>Zu42~Pd| z2f?YIqXeh?Wg=gopOk-);MAX2r@-GQIQ27vilL}+ND-X!iv*{B{)phz&vOK){67<% z@}vANGTEPgf>VE9B{+@4#{{SRc76?*tp5nXDgPCMQ~e(iobuO+)Qr=k{KEvN{Fez% z`F99T`SoJcL;W5jCj_T4MPh$d^{*#5+|$Z=DN67Lfx$OP`?F<$3W6pBeXClM$3rXcodU4lu;ang82Yt z#rD83S7K>`AL8P8few^zjPkRW3Ga7t2M# +#+ +:+ +#+ */ +/* By: vrubio < vrubio@student.42lisboa.com > +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2022/12/22 15:20:19 by hgoncalv #+# #+# */ -/* Updated: 2022/12/22 15:31:44 by hgoncalv ### ########.fr */ +/* Created: 2022/12/22 15:20:19 by vrubio #+# #+# */ +/* Updated: 2022/12/22 15:31:44 by vrubio ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/var_expansion.o b/srcs/var_expansion.o new file mode 100644 index 0000000000000000000000000000000000000000..5865ba2c23bbf65ab9863a1b8759c749ae5dfb42 GIT binary patch literal 18480 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