From 99fdd578e92f6c114ed6e93f835fdd47a0e2dc85 Mon Sep 17 00:00:00 2001 From: Camille Chauvet Date: Wed, 15 Feb 2023 20:52:27 +0100 Subject: [PATCH] fix quote je pense ca marche --- .heredoc.c.swp | Bin 0 -> 12288 bytes .infile.c.swp | Bin 0 -> 12288 bytes .main.c.swp | Bin 28672 -> 0 bytes Makefile | 4 +- bozo | 5 + bozobozo | 0 cmd.c | 44 ++++ cmds.c | 121 +++++++++++ env.c | 4 +- env.o | Bin 20624 -> 0 bytes execution.c | 9 + execution.o | Bin 19768 -> 0 bytes file.c | 67 +++--- file.o | Bin 17840 -> 0 bytes ft_split_quoted.o | Bin 17472 -> 0 bytes heredoc.o | Bin 16320 -> 0 bytes infile.c | 132 +++++++----- infile.o | Bin 17576 -> 0 bytes libftx/extra/extra.a | Bin 44344 -> 0 bytes libftx/extra/ft_contain_only.o | Bin 3208 -> 0 bytes libftx/extra/ft_freer.o | Bin 4944 -> 0 bytes libftx/extra/ft_is_in.o | Bin 2376 -> 0 bytes libftx/extra/ft_random_generator.o | Bin 3480 -> 0 bytes libftx/extra/ft_strchri.o | Bin 2856 -> 0 bytes libftx/extra/ft_strcmp.o | Bin 2424 -> 0 bytes libftx/extra/ft_strfjoin.o | Bin 3344 -> 0 bytes libftx/extra/ft_strgen.o | Bin 2760 -> 0 bytes libftx/extra/ft_strmerger.o | Bin 4104 -> 0 bytes libftx/extra/ft_strndup.o | Bin 2880 -> 0 bytes libftx/extra/ft_swap.o | Bin 3064 -> 0 bytes libftx/extra/ft_tabrealloc.o | Bin 2912 -> 0 bytes libftx/extra/ft_ultoa_base.o | Bin 4720 -> 0 bytes libftx/gnl/get_next_line.a | Bin 5998 -> 0 bytes libftx/gnl/get_next_line.o | Bin 5784 -> 0 bytes libftx/libft/ft_atoi.o | Bin 2952 -> 0 bytes libftx/libft/ft_bzero.o | Bin 2432 -> 0 bytes libftx/libft/ft_calloc.o | Bin 2728 -> 0 bytes libftx/libft/ft_isalnum.o | Bin 2256 -> 0 bytes libftx/libft/ft_isalpha.o | Bin 2216 -> 0 bytes libftx/libft/ft_isascii.o | Bin 2176 -> 0 bytes libftx/libft/ft_isdigit.o | Bin 2176 -> 0 bytes libftx/libft/ft_isprint.o | Bin 2168 -> 0 bytes libftx/libft/ft_itoa.o | Bin 3472 -> 0 bytes libftx/libft/ft_lstadd_back.o | Bin 2720 -> 0 bytes libftx/libft/ft_lstadd_front.o | Bin 2464 -> 0 bytes libftx/libft/ft_lstclear.o | Bin 2744 -> 0 bytes libftx/libft/ft_lstdelone.o | Bin 2648 -> 0 bytes libftx/libft/ft_lstiter.o | Bin 2496 -> 0 bytes libftx/libft/ft_lstlast.o | Bin 2432 -> 0 bytes libftx/libft/ft_lstmap.o | Bin 3152 -> 0 bytes libftx/libft/ft_lstnew.o | Bin 2608 -> 0 bytes libftx/libft/ft_lstsize.o | Bin 2496 -> 0 bytes libftx/libft/ft_memchr.o | Bin 2736 -> 0 bytes libftx/libft/ft_memcmp.o | Bin 2840 -> 0 bytes libftx/libft/ft_memcpy.o | Bin 2736 -> 0 bytes libftx/libft/ft_memmove.o | Bin 2952 -> 0 bytes libftx/libft/ft_memset.o | Bin 2608 -> 0 bytes libftx/libft/ft_putchar_fd.o | Bin 2368 -> 0 bytes libftx/libft/ft_putendl_fd.o | Bin 2488 -> 0 bytes libftx/libft/ft_putnbr_fd.o | Bin 2736 -> 0 bytes libftx/libft/ft_putstr_fd.o | Bin 2448 -> 0 bytes libftx/libft/ft_split.o | Bin 5296 -> 0 bytes libftx/libft/ft_strchr.o | Bin 2344 -> 0 bytes libftx/libft/ft_strdup.o | Bin 2824 -> 0 bytes libftx/libft/ft_striteri.o | Bin 2600 -> 0 bytes libftx/libft/ft_strjoin.o | Bin 3432 -> 0 bytes libftx/libft/ft_strlcat.o | Bin 2912 -> 0 bytes libftx/libft/ft_strlcpy.o | Bin 2808 -> 0 bytes libftx/libft/ft_strlen.o | Bin 2464 -> 0 bytes libftx/libft/ft_strmapi.o | Bin 3000 -> 0 bytes libftx/libft/ft_strncmp.o | Bin 2840 -> 0 bytes libftx/libft/ft_strnstr.o | Bin 3072 -> 0 bytes libftx/libft/ft_strrchr.o | Bin 2736 -> 0 bytes libftx/libft/ft_strtrim.o | Bin 3736 -> 0 bytes libftx/libft/ft_substr.o | Bin 3312 -> 0 bytes libftx/libft/ft_tolower.o | Bin 2184 -> 0 bytes libftx/libft/ft_toupper.o | Bin 2184 -> 0 bytes libftx/libft/libft.a | Bin 121404 -> 0 bytes libftx/libftx.a | Bin 6070 -> 0 bytes libftx/printf/ft_dprintX.o | Bin 2528 -> 0 bytes libftx/printf/ft_dprintarg.o | Bin 4760 -> 0 bytes libftx/printf/ft_dprintflag.o | Bin 3008 -> 0 bytes libftx/printf/ft_dprintl_base.o | Bin 2904 -> 0 bytes libftx/printf/ft_dprintptr.o | Bin 2928 -> 0 bytes libftx/printf/ft_dprintstrtab.o | Bin 2856 -> 0 bytes libftx/printf/ft_dprintul.o | Bin 2520 -> 0 bytes libftx/printf/ft_dprintul_base.o | Bin 4624 -> 0 bytes libftx/printf/ft_dprintx.o | Bin 2512 -> 0 bytes libftx/printf/ft_eprintf.o | Bin 3360 -> 0 bytes libftx/printf/ft_isarg.o | Bin 2568 -> 0 bytes libftx/printf/ft_isdigit.o | Bin 2176 -> 0 bytes libftx/printf/ft_printf.a | Bin 55904 -> 0 bytes libftx/printf/ft_printf.o | Bin 3344 -> 0 bytes libftx/printf/ft_putchar_fd.o | Bin 2368 -> 0 bytes libftx/printf/ft_putstr_fd.o | Bin 2696 -> 0 bytes libftx/printf/ft_skipflag.o | Bin 2872 -> 0 bytes libftx/printf/ft_strlen.o | Bin 2472 -> 0 bytes libftx/printf/ft_vdprintf.o | Bin 3832 -> 0 bytes main.c | 211 +++---------------- main.o | Bin 22672 -> 0 bytes minishell | Bin 113112 -> 0 bytes minishell.h | 9 +- outfile.c | 137 ++++++------ outfile.o | Bin 17616 -> 0 bytes spacer.c | 115 ++++++++++ syntatics.o | Bin 17256 -> 0 bytes t | 1 - utils/ft_getstr.c | 27 --- utils/ft_is_in_quote.o | Bin 4248 -> 0 bytes utils/ft_quote_remover.c | 43 ++++ ft_split_quoted.c => utils/ft_split_quoted.c | 20 +- utils/ft_strnchr.o | Bin 4088 -> 0 bytes utils/ft_strncpy.o | Bin 3952 -> 0 bytes utils/ft_strreplace.c | 2 +- utils/ft_strreplace.o | Bin 4824 -> 0 bytes utils/ft_strshift.c | 30 +++ utils/utils.h | 7 +- 117 files changed, 613 insertions(+), 375 deletions(-) create mode 100644 .heredoc.c.swp create mode 100644 .infile.c.swp delete mode 100644 .main.c.swp create mode 100644 bozo create mode 100644 bozobozo create mode 100644 cmd.c create mode 100644 cmds.c delete mode 100644 env.o delete mode 100644 execution.o delete mode 100644 file.o delete mode 100644 ft_split_quoted.o delete mode 100644 heredoc.o delete mode 100644 infile.o delete mode 100644 libftx/extra/extra.a delete mode 100644 libftx/extra/ft_contain_only.o delete mode 100644 libftx/extra/ft_freer.o delete mode 100644 libftx/extra/ft_is_in.o delete mode 100644 libftx/extra/ft_random_generator.o delete mode 100644 libftx/extra/ft_strchri.o delete mode 100644 libftx/extra/ft_strcmp.o delete mode 100644 libftx/extra/ft_strfjoin.o delete mode 100644 libftx/extra/ft_strgen.o delete mode 100644 libftx/extra/ft_strmerger.o delete mode 100644 libftx/extra/ft_strndup.o delete mode 100644 libftx/extra/ft_swap.o delete mode 100644 libftx/extra/ft_tabrealloc.o delete mode 100644 libftx/extra/ft_ultoa_base.o delete mode 100644 libftx/gnl/get_next_line.a delete mode 100644 libftx/gnl/get_next_line.o delete mode 100644 libftx/libft/ft_atoi.o delete mode 100644 libftx/libft/ft_bzero.o delete mode 100644 libftx/libft/ft_calloc.o delete mode 100644 libftx/libft/ft_isalnum.o delete mode 100644 libftx/libft/ft_isalpha.o delete mode 100644 libftx/libft/ft_isascii.o delete mode 100644 libftx/libft/ft_isdigit.o delete mode 100644 libftx/libft/ft_isprint.o delete mode 100644 libftx/libft/ft_itoa.o delete mode 100644 libftx/libft/ft_lstadd_back.o delete mode 100644 libftx/libft/ft_lstadd_front.o delete mode 100644 libftx/libft/ft_lstclear.o delete mode 100644 libftx/libft/ft_lstdelone.o delete mode 100644 libftx/libft/ft_lstiter.o delete mode 100644 libftx/libft/ft_lstlast.o delete mode 100644 libftx/libft/ft_lstmap.o delete mode 100644 libftx/libft/ft_lstnew.o delete mode 100644 libftx/libft/ft_lstsize.o delete mode 100644 libftx/libft/ft_memchr.o delete mode 100644 libftx/libft/ft_memcmp.o delete mode 100644 libftx/libft/ft_memcpy.o delete mode 100644 libftx/libft/ft_memmove.o delete mode 100644 libftx/libft/ft_memset.o delete mode 100644 libftx/libft/ft_putchar_fd.o delete mode 100644 libftx/libft/ft_putendl_fd.o delete mode 100644 libftx/libft/ft_putnbr_fd.o delete mode 100644 libftx/libft/ft_putstr_fd.o delete mode 100644 libftx/libft/ft_split.o delete mode 100644 libftx/libft/ft_strchr.o delete mode 100644 libftx/libft/ft_strdup.o delete mode 100644 libftx/libft/ft_striteri.o delete mode 100644 libftx/libft/ft_strjoin.o delete mode 100644 libftx/libft/ft_strlcat.o delete mode 100644 libftx/libft/ft_strlcpy.o delete mode 100644 libftx/libft/ft_strlen.o delete mode 100644 libftx/libft/ft_strmapi.o delete mode 100644 libftx/libft/ft_strncmp.o delete mode 100644 libftx/libft/ft_strnstr.o delete mode 100644 libftx/libft/ft_strrchr.o delete mode 100644 libftx/libft/ft_strtrim.o delete mode 100644 libftx/libft/ft_substr.o delete mode 100644 libftx/libft/ft_tolower.o delete mode 100644 libftx/libft/ft_toupper.o delete mode 100644 libftx/libft/libft.a delete mode 100644 libftx/libftx.a delete mode 100644 libftx/printf/ft_dprintX.o delete mode 100644 libftx/printf/ft_dprintarg.o delete mode 100644 libftx/printf/ft_dprintflag.o delete mode 100644 libftx/printf/ft_dprintl_base.o delete mode 100644 libftx/printf/ft_dprintptr.o delete mode 100644 libftx/printf/ft_dprintstrtab.o delete mode 100644 libftx/printf/ft_dprintul.o delete mode 100644 libftx/printf/ft_dprintul_base.o delete mode 100644 libftx/printf/ft_dprintx.o delete mode 100644 libftx/printf/ft_eprintf.o delete mode 100644 libftx/printf/ft_isarg.o delete mode 100644 libftx/printf/ft_isdigit.o delete mode 100644 libftx/printf/ft_printf.a delete mode 100644 libftx/printf/ft_printf.o delete mode 100644 libftx/printf/ft_putchar_fd.o delete mode 100644 libftx/printf/ft_putstr_fd.o delete mode 100644 libftx/printf/ft_skipflag.o delete mode 100644 libftx/printf/ft_strlen.o delete mode 100644 libftx/printf/ft_vdprintf.o delete mode 100644 main.o delete mode 100755 minishell delete mode 100644 outfile.o create mode 100644 spacer.c delete mode 100644 syntatics.o delete mode 100644 utils/ft_getstr.c delete mode 100644 utils/ft_is_in_quote.o create mode 100644 utils/ft_quote_remover.c rename ft_split_quoted.c => utils/ft_split_quoted.c (81%) delete mode 100644 utils/ft_strnchr.o delete mode 100644 utils/ft_strncpy.o delete mode 100644 utils/ft_strreplace.o create mode 100644 utils/ft_strshift.c diff --git a/.heredoc.c.swp b/.heredoc.c.swp new file mode 100644 index 0000000000000000000000000000000000000000..476a49528d1c71d81b73fcb4f5ad4a08f1705c81 GIT binary patch literal 12288 zcmeI2!D`e%7{{mLC17n)FP@x654%OPn^dERs%917%6U=7AWTHrE3qpIW z)EDsJSv&|ngdThXAHahbpTPgbtc6m&^i=#0{Ft4YZ@=%G-)-61>_579UoLsRz?c={ z)#8un?)kk7)B86>6s2MPTp4@xui@YEy@enwo{sBWjg*(@lcRSg3404cZq;)F!#LG%aoie&6Q0?#{`}m)1|6mI-Kp255i=Xn+Q2fCgxQ z2F{KFQ%;Fpw0o{?`D!~)9h=)FCmNsu8lV9hpaB}70UDqI8lV9hpn)@JAdH2WxhTYI zVE_N0{QmzwBg7Z*8GHcm!CUYK9D+SC0*}E%5C9Kc16RN-_=%j~z*q1Id<5^nA+Yrh z00#}w01eOp4bT7$&;Sk401eQB8&JE;)^|dt|{H^OUE1L_V zXIwW8wKH!+Q9mmTT0nQf#_2|_7 K^YY$HUGWQkhn`aa literal 0 HcmV?d00001 diff --git a/.infile.c.swp b/.infile.c.swp new file mode 100644 index 0000000000000000000000000000000000000000..c2bfbc114ea909bea81034aadb2b06bf28f8c35c GIT binary patch literal 12288 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 diff --git a/Makefile b/Makefile index d33b5a0..1db8453 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -UTILS_SRC = utils/ft_is_in_quote.c utils/ft_strncpy.c utils/ft_strreplace.c utils/ft_strnchr.c utils/ft_getstr.c utils/ft_printn.c -SRCS = ${UTILS_SRC} main.c file.c infile.c outfile.c heredoc.c syntatics.c ft_split_quoted.c env.c execution.c +UTILS_SRC = utils/ft_is_in_quote.c utils/ft_strncpy.c utils/ft_strreplace.c utils/ft_strnchr.c utils/ft_split_quoted.c utils/ft_strshift.c utils/ft_quote_remover.c +SRCS = ${UTILS_SRC} main.c file.c infile.c outfile.c heredoc.c syntatics.c cmd.c cmds.c env.c execution.c spacer.c OBJS = ${SRCS:.c=.o} diff --git a/bozo b/bozo new file mode 100644 index 0000000..89da72d --- /dev/null +++ b/bozo @@ -0,0 +1,5 @@ + +d +d +d +test diff --git a/bozobozo b/bozobozo new file mode 100644 index 0000000..e69de29 diff --git a/cmd.c b/cmd.c new file mode 100644 index 0000000..e6581ef --- /dev/null +++ b/cmd.c @@ -0,0 +1,44 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* cmd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cchauvet args != NULL) + ft_freer_tab_ultimate(1, content->args); + if (content->executable != NULL) + free(content->executable); + free(content); +} + +int ft_cmd_filler(t_list *element, char **args) +{ + t_cmd *content; + size_t i; + + if (args == NULL) + return (1); + content = (t_cmd *)element->content; + i = 0; + while (args[i] != NULL) + { + ft_quote_remover(args[i]); + i++; + } + content->args = args; + content->executable = args[0]; + return (0); +} diff --git a/cmds.c b/cmds.c new file mode 100644 index 0000000..65ee907 --- /dev/null +++ b/cmds.c @@ -0,0 +1,121 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* cmds.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cchauvet args = NULL; + content->executable = NULL; + content->fd_in = -1; + content->fd_out = -1; + current->content = content; + if (!((i + 1) < len)) + { + current->next = NULL; + return (0); + } + current->next = malloc(sizeof(t_list)); + if (current->next == NULL) + ft_lstclear(cmds, ft_cmddel); + current = current->next; + i++; + } + return (0); +} + +int ft_cmds_prep(t_list **cmds, const char *line, int infile, int outfile) +{ + size_t len; + t_cmd *cmd; + t_list *current; + + len = ft_seglen_quoted(line, '|'); + if (len == 0) + return (0); + if (ft_cmds_init(cmds, ft_seglen_quoted(line, '|'))) + { + free(cmds); + return (1); + } + cmd = (t_cmd *)(*cmds)->content; + cmd->fd_in = infile; + current = *cmds; + while (current->next != NULL) + current = current->next; + cmd = (t_cmd *) current->content; + cmd->fd_out = outfile; + return (0); +} + +int ft_cmds_fill(t_list **cmds, const char *line) +{ + char **tab; + char **args; + t_list *current; + size_t i; + + tab = ft_split_quoted(line, '|'); + if (tab == NULL) + return (1); + i = 0; + current = *cmds; + while (tab[i] != NULL) + { + args = ft_split_quoted(tab[i], ' '); + if (ft_cmd_filler(current, args) == 1) + { + ft_lstclear(cmds, ft_cmddel); + ft_freer_tab_ultimate(2, args, tab); + return (1); + } + current = current->next; + i++; + } + ft_freer_tab_ultimate(1, tab); + return (0); +} + +t_list **ft_parse_cmds(char *line) +{ + int infile; + int outfile; + t_list **cmds; + + cmds = malloc(sizeof(t_list *)); + outfile = ft_outfile(line); + infile = ft_infile(line); + if (infile == -2) + return (NULL); + if (ft_syntatic_verif(line) == 1) + return (NULL); + if (ft_cmds_prep(cmds, line, infile, outfile) == 1) + return (NULL); + if (ft_cmds_fill(cmds, line) == 1) + return (NULL); + return (cmds); +} diff --git a/env.c b/env.c index 9b79576..ee5bb27 100644 --- a/env.c +++ b/env.c @@ -6,7 +6,7 @@ /* By: erey-bet +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/02 14:39:56 by erey-bet #+# #+# */ -/* Updated: 2023/02/14 15:21:28 by cchauvet ### ########.fr */ +/* Updated: 2023/02/15 19:58:19 by cchauvet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -113,7 +113,7 @@ char *get_value_by_key(char *key, t_list **head) return (NULL); } -int set_value_by_key(t_list **env, char *key, char *value) +int set_value_key(t_list **env, char *key, char *value) { t_list *current; char *temp; diff --git a/env.o b/env.o deleted file mode 100644 index c59381db45d7a639952112a53a59104d298f647c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20624 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 == -1 || cmd->fd_out == -1) + return (1); pid = fork(); if (pid == -1) return (1); diff --git a/execution.o b/execution.o deleted file mode 100644 index 6a78a99c85f530cf9d81e2176d2a121d26922428..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19768 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 J int ft_file_is_readable(const char *path) { @@ -9,58 +22,58 @@ int ft_file_is_readable(const char *path) if (fd == -1) { ft_eprintf("minishell: %s: No such file or directory\n", path); - return (0); + return (-1); } readable = read(fd, "", 0); if (readable == -1) { ft_eprintf("minishell: %s: Permission denied\n", path); - return (0); + return (-1); } - close(fd); - return (1); + return (fd); } -int ft_file_is_writeable(const char *path) +int ft_file_is_writable(const char *path) { int writeable; int fd; - fd = open(path, O_WRONLY | O_CREAT, 0644); + fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); if (fd == -1) { ft_eprintf("minishell: %s: Permission denied\n", path); - return (0); + return (-1); } writeable = write(fd, "", 0); if (writeable == -1) { ft_eprintf("minishell: %s: Permission denied\n", path); - return (0); + return (-1); } - close(fd); - return (1); + return (fd); } -char *ft_get_file_path(const char *infile) +int ft_file_is_appendable(const char *path) { - size_t i; - size_t n; + int writeable; + int fd; - n = 1; - while (infile[-n] == infile[-1]) - n++; - i = 0; - while (infile[i] == ' ') - i++; - if (infile[i] == '\0' || infile[i] == '>' || infile[i] == '<') + fd = open(path, O_WRONLY | O_CREAT | O_APPEND, 0644); + if (fd == -1) { - ft_eprintf("minishell: syntax error near "); - if ((infile[0] == '<' && n > 3) || (infile[0] == '>' && n > 2)) - ft_eprintf("unexpected token `%c`\n", infile[i - 1]); - else - ft_eprintf("unexpected token `newline`\n"); - return (NULL); + ft_eprintf("minishell: %s: Permission denied\n", path); + return (-1); } - return (ft_getstr(infile, i + 1)); + writeable = write(fd, "", 0); + if (writeable == -1) + { + ft_eprintf("minishell: %s: Permission denied\n", path); + return (-1); + } + return (fd); +} + +int ft_file_is_executable(const char *path) +{ + return (access(path, X_OK) == 0); } diff --git a/file.o b/file.o deleted file mode 100644 index fdeafb9fd6c483a3c610d06cf3c34591d3dde4cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17840 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 QChDIi{SWv(RfYHeALs144FCWD diff --git a/ft_split_quoted.o b/ft_split_quoted.o deleted file mode 100644 index 377f37db82a6b701e493b0d89656610fca7745f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17472 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 diff --git a/heredoc.o b/heredoc.o deleted file mode 100644 index 985bf7648188334b4ddb7a8e99599e8deb2d60eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16320 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 Ll 0) - close(fd); - return (-1); - } + if (fd == -2) + return (-2); + ft_remove_infile(line); return (fd); } diff --git a/infile.o b/infile.o deleted file mode 100644 index 939685e293b9db691ab8f692407f65b06ec1f62e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17576 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 X{Yd-a`?tyZ-_QC#QR+%H+5f)*v>)mG diff --git a/libftx/extra/extra.a b/libftx/extra/extra.a deleted file mode 100644 index b05f88ce84eda19afb3d815ff0dceecd807b97fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44344 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%0DtklS%;N9`--bY>_} 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 diff --git a/libftx/extra/ft_is_in.o b/libftx/extra/ft_is_in.o deleted file mode 100644 index 9ac57679739ba6a8920e6bdd498aeab6abe4b698..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2376 zcmb_d&2JM|5TCc}brKA_PSOu3RTWjO5JFjpkV=6f>I%7p3VLXjUMjHG&e~pKuaUh@ zQ=l|_Rf*tGq#pYR@F(;`LP#9wvB&lgsANurTP2X(nf1(O^DqY_MtW~%elzptz46TY zhtiqP45dIw!3o&b1O?czw&h|h7QsQ!<)zJkiyK=@o8ND3l%6~)^~tt$yR@}bJ==Hg zXU1>*2hPoT4Rr3GeRA|q=hkk-AC;a{!pCpocDvNS@jz{s`j3Ab3|8_ICo&*>FH1Q0hksT44s|^$Smwotq;JoPvmkr zfUE=L09SEkC=rauFQ-erNDYJxfk{zclct;ychk6gaj5l%T6?HnLY6V^k~^qL@`SjK zRwhfPSk7V*E4?u4%~YFSSf5$-JKdli&K#b1=iIs3BfZ#o`06}r3+_iyi^@T_9E5Ha z3Sq5VXtY~?w@|G%yxyuG6&B_Ttso4#4ZqneG=oYlS}XW#QO8RHAqXSrMjgNq+#rBg zy8yic-iUX6)uk^%t>xAJ-DBfFVfo%goEB01>`(3dkH*P8S)+;`fa$2%@8hnNdS>q- zMpeh9k{jaFVwy+_ZaT`!?E1%==vn#f@0M}g8p}4UNfhnRtuYttS^vW_?wq$&&#>^! zVf={w8e$oEIv8OBbNdJ0VK&h+icG*R96=^vcWHDC^{LePacvNj6Lz7T<}n_^>%q zK$;pd5PX*Pw^Dd&RN54{9G%DCjMv3^R!yR0v3_!ZXqmrd?Z z!$%Yk401VN^vkhz8~>K|8Rm5N^!*Er>+b@0#jo`0Wv^1{_^aSXI1}Jj+pU(5)4)a= z3b*4oJ=TM;)=rud+^`+_?x`=9XSn{D&FGer1zys;)I_>qsVE$BkAT&8FXKo3&bw!?u!h_+{+R2e$hK9jH=(S3`(7- zeiOJPUU2#z=yyUWxlo;y6zRSm+D7I7Yeatfy6XAALd-lfpwGrSu7srj1)%#A>G^*~ UOs^gJ{mtM#QjjQ)W<<~bKY$V0v;Y7A diff --git a/libftx/extra/ft_random_generator.o b/libftx/extra/ft_random_generator.o deleted file mode 100644 index a64dbb0eb173ef223a76f23105a0b1e8f5761ff4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3480 zcmbuBU5Fc16oAjnw)F>_Dn3~Hu=wP|3M~k>Aazk;J!j_L-N`unARd@| z?)mOH_iyH&J1=DqJRwUG2$5hHtXP5qO!lqRGj25lL+E)(Z~vmVe$D9Zxm$X>c|*S> z{L**chZ|(HvkR@cg{9=_0W|b0*+qgk&tq|kM!Gn(6+B11ot@WPbMp{zJ%wJKxdpw` zoWC$AoUdfBBc}ekuI^;J7=Kys%+0%_>g_M}4%!cOldUb}*ul;_2fN9Ok(iRb-p*b} z($!m+B@FA{{CsI?X(hHmtp{)D_aD5KzNY_iTW=p)ME6C#^-bpR*Qug8o3ah7Sg(OJ zB;A)7VM=0f{iei_G^_&1NgPhO7nH=Vcsvde(a>pF&1_H-562&gZ{4_W26p-tJ`sG7xbJ9njY7-Y1_uOH{HhciE*?hvnYPU0XvK2EI)rK+ zXVT-!PPS1kv&|UapJUM+i(oJE zr!0Dy$;8wb*bwSCI!c@?&g>!0n~5b_JG~(bKH(L(~J&P=E!I zYb$^+AVd_PjMgjX&>ZYVuJz6;TthzWo2UEkk*v{3_*<*+VdNyVjqU+-Er5Ht zrUZdG3jW6YN8%o5w29NI1#e=VggB)g!CxbYLcAXz!G9!(LOhC(;Fup>Azx|}B2pP~ z|636A7krEdtmB%v=#$W0K2H7Y;r3>(X&?Mw#RHs+{$J$w_Er3M2mDWP`>6mInecFc zf57b{0saZMj|KP_+Hmio_V3G!{P_NZY%&**|;n-oh ziidc;RIE}R>NBQAo)}QYnr77ZV@zG^%b z-4uXp+Hb$mJwwcYHmE&A1&YWsp7rlsL;o=T^C|p(=7;kP2b81e{fi8_f%BhG)A-}u z7HWb|RGfFg#r*wR)P)b}42Ly8#Cp(oZwRB1^W5=UGJFz@e;nJw)<45Hw95l%{e*(+ z--3)>w&CNK20tu6_#xKC_(D@23yaV2kAm(Ezlb=Y^Vlfrem^VhqYCkT-D5L+y31Y6 z@c13e#H)z)3w#zUVf(j(JBsgw_K)r#5ij^@WMT7vn~(n|w)-XMdlDPN#(z3we7ePh shrYB7I zge17G5VIt%NLCOdA_xjD=z@YCJh((X=pH?K+FU#Y51YLOJjAN*S4mHA6vQIk_3Epy z>bP;?W&OWUw3a}_}1`aGn0cu?bwb6du>zNB$&_U6RqW52CtZWwPL>2M~J%e!EFu!*jB zGB>U$#)?4y_Fzcb$}Vpz*|p5p_EpS(kTQ(woIJ@PYnfeS?!Nr9GN{~_8Wvh=;Lc;I zL1jn>Pz_{hCVGbS=}|3ps`v5U`;X2HKXDWwAwZST%rJnM>M->Ym>CWO0J`o4Ep?{1 zw-+F3AdX4Dz$bwZB0*96f^q!y4FamhC|SyjWGO}y-wE~dTxh);S_Go+GQNd+`PIN0 z+#sbd(Hljp>r{3U^~Yf6L^4SM!B|)H&jKGNHv^$k^B^@3X+o3~q@({#rs zCe3kkJpD*Ja8A5AiPn_)C{+Bs=eJ6=mSdK{ax0!yYc_1pDwS%5_Pp&|Qdx@`jF3ip0i}49P8^!uH)VuN1PrK+5vbnHE>aVs$W;XLI%J?$VtF==ui~puT(!N z+ERQJtL?Qc$1T;{W!qXfc_M#eDqVNn_CmVqwymP$d+_fRZ&5O^QdYe_-$+kPQq`_|Mcm{}+5UY>kFV5MXS);Y^PzCV(a@npR9Gt9fL_*OFMfCLiE_D5z(DbTETo>KT zqF>L6?wlCTiGiFr;)~IWIGz)uIdM-;du?5)+Q?~<(60;id!fH1dXSBO{rEl|Bxs%(1DSm0XFX;q5-yGOmb)sMe+xGj2LI= z!EsP18ONPUc-XEmq!W~td|*m%K6C*E0Lw(NRA+KyXkg6TGW+kEEv*|g^u zO0P${3ry<8e4$*%+pyXZiS2Dmz^>&htwO_&1Y%p7IG0~2qF!u}{=c%038Lqd^ZhCh z@TUw&9dAMUi6e~9JJYA-fct^*0Uk(AvGJVbx+VP$saeIjCOYC6abJ<(mmDZ{ockc+ z(LUU#%Vyh<0V&C&AAXY2PyzKDQO2dsitoj58IYRiXHEa092WnBJe>4>QQhHtqw;>M%*NN)a9f@b0?wk0U5P}Efp)_O8 zn2EpRhtL1@A@kGi&Fkm+XA#rR?$Q4~Z{f2qeEu1r^^?Ts-#{#0JK~*_MY%!-3dPZq H;`9Fvg&$Qb diff --git a/libftx/extra/ft_strcmp.o b/libftx/extra/ft_strcmp.o deleted file mode 100644 index 0ed8391828a6f116caac6763b92ed3eac382c769..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2424 zcmbtV&2Jl35TCan#)(s};{-?vLV*HRg|bf4Ahm!>5SY4B%K_lZ zzWBDL6bLCe2eBq7z)xl@FGb=KSm?Q2+4-}wbM2_I(|K^Wd`Onc?ebB@xpZj#GL}X8 zLB&}{d9pBnaQ2Tc%lEBYj}JH**_%gTeS3hWugdrLly!?r-OJ_RHfqdRB&Q!=AfO3Iih7SUW%>BjwL4oq zt<%#sV$IO*c#$?vo)ER!G%{C3&R~yg9Y5^MI9}CXo7r^RL8Il*%rDq;_T230PGp?F zzJS`I{W8?Ul^|?8%?;aul3x!>>#e36lpJTh+Szo&(&9p?+3*{|y6br*uTiUqTP1fZ zY**t*X!s!n^ME032o|6L|LqF&9+UJyQdi#vwN+5lV~=Hbv42k^Mu&*n1aIUEpKEU( z%V^u^0nkFofD`ysO8uQbMvU5yN5wb9cZ+DG-*VkjrZM`nInptUnSImRH>W~#x^6zZ zuY0?urcb_xP5s@}zA;BXh&&4WreQ10HsVnf3S=A292n59p%kfMYp? zbii>-(J9o6iTqKo5R(j}C?~7PR1)5sRuqtmJqCi$vi?K@PpmdPmB1;_S=OInPTlG^ z9p#rEflHj!U1PuV%mt@~AX@IR{ynd;&OdY?zri@o36bRaxTnIW%mt734zU@=>F&w< z&oQ2UFR)kLT4!ygTC26)O|V1U5wM+Bv+3e;un`w6o=LFVu2*GC!>_l%_FJKApMPh0 zHVCWEM__y2W^<*wx{4dTHsJ0xe3t=teWl*6Hr+Te4!ez&!fFlqCr#r2pT5Qv$@!6t zQ#=gc3&1?RB^Kg@$vlet5(_e~f)_+!PO<5nWV*}t519)~`<_8V8YAE57~GaX=4s#4 zh$r_%+<)YzoZ$fa8zMjaG(|MUoc4iSWPTWiAO5Aj+=KoDhsD3h!)Z%G<`O6TEsjsQ z!R6#|CyWv&5bXtG8)^6V8KC|qN#0+u0EJ=w`-?&86ZLNdkHia3--Gm>5Q1H^GA#=)T{A$#HA2k|_n?|F$VJt6h zZjj$-j9o)xBQTa1uNlg!QD0RqQ+B~vGwO?LkbI+^0#?ViDDcK_fpMJ-^lw7){Amu| zL@}1fHjU-U>qg^eqyD{OG^Va6FFzSm>RU+cB_b!h(;Y)~jks@j$8KE3*c*P%?G{(Z z)_tJ9xPh^gL6LP{1RrH`eW%F!PLcb9B0eEh#84;KsnC^BA@TS@8^riA8lw)^aDTRN z-7@M|M_>Fw=};a_bTKuNy0bUYp>%2hktCK;b@X&#Wf0-e z=`H{^yvx**KxoSYpe9bVwY34n_9GIcz@*>c6~zm2|5fkvb@_G*eGyflWGT;)r6iZ} z9*ta>-DMSbEEc)&l5cfGb^rDcKQZ~^Z|XK|8UiJ4!$~s*0BBv6ugY3qJJt@rri91k)X z*R>YRj0a+!hjP_}|JGyhgx&l>m4#`*1rWIMd&e|~~{tN3w_i;34SPFsmaTfKX+r}|!ghifbE$3JSJyGr4 z?Gkigf^MXBhy?L*mXvZ}1`R3L8wI--JqDTLz?+r|&_Eu}nRoOF^nUfaV4b+H44Q;d*Kt_ZxJ+xtT}6J%WP3gMJz zgxmM>mD&owwTJh>k8xbowYY6a_yV{6QHi?XFLHcZ;xBQ#BH4gyN|E5H{tzxm*eujwX|xWPn)^wOeUMlRm?fiE2f>*Jshf_ z=gXy%iIbBva5i&y5Meoma(Lcw-8LQ2ow8@@r=FhbcfD->70_*au9V46PvZ~3%&sIj z;Y<#g#Y~}+EtycLn0WIt`K)c1^WhRW(sXRY%jR&MFVXtH$k&)9{2hy=6R|+MA^^V1 zlZJi|2ovW*&_}r<&auGdnLvLU!skWsVmx7u1H_~E%G-h-j#F*9Cvv^T!4l_*Mdltx zhl~;TPY!-70{JR)b;O(Xzr_2$$OEW9pl z3%rI{v;Hsf`WeY7nSg&Bn${m^QlDnLT;D`YJ#({+%MxDOVsN6^M(UqLu73$JdGCnV R!+#Vu$v~kv`lRIg{{lxwxJLj0 diff --git a/libftx/extra/ft_strgen.o b/libftx/extra/ft_strgen.o deleted file mode 100644 index 261ec45d5b8486417c854aed2d70c4df49444d9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2760 zcmbtWO>7%g5T4!j+qiaOJ4w|h6oDm*xRBi>4HC4_8X?2REgX=7%Aqp;S=%etYp~aD zs0dV8KtiO72#`Sh+$#0LnH#E9MBv;@4jgVQs45BwQQ$m`kYE9R(MNVJFmsT>$Te&0cdP%$Vs3MPGk@RO>JF{#jiJ@w zReq#lh7@XTi+I+q`&`;Q{}WbHl@18e)`z0KqC zz}LU6;5d8t?j9T*aNqFfSez0E=-5ZSZ}op#ymCjGRvu5yGA)%kc`7xn%;3z`G!Cj6 z=$X-Tb6VJ)@kOoQQvlJN_{8^pMcL z!t<%jN9qexx_Sd60PY|agV*t`D9T@{DN^*I@KMZer%g*SUANa{oWI z&ywg<3v5zvAo(ntD6m9<#q{Tx`ok3rEwCgqn5Ckr=oi%l&N&=@%zFp982ouK#swN2 zPV9(V<0tkAi9id_l1wB2;Hmx?qcRUf0$f0DCQ>)}Cdg%ZEcFUqC4XZZlZb02f!tw( zpe-sAANCg-C^Mk~!7p%pBEmCnlX@t^(>Tv?{0P^yv(a68@?ZF~oELTL99t6K<2Yz< zv_GHzZzQF`lUVE|1G{O>2#=x5jySA9OIPcDY+GmdfR} z-2vxY5hu>G2+wgt^nu{z-k~3;=s6d04NlH+g5v1=;nfz1;HkDeCknV5L;*Cp7D|pi zgASRa*c>On5s6&Ou?F(v=6{`&4W2;rr~Z`Z{}^%a`K#zf&s6;OCTb0EZt}0>Wc#{>QH^Uo8|iS3#(l^Xra1}&!Nomh7k2ApG4pg Y0o+7G-aGQ$;!Sy*01D;NkaGQh0I2IDVE_OC diff --git a/libftx/extra/ft_strmerger.o b/libftx/extra/ft_strmerger.o deleted file mode 100644 index 3526a301022e98049e9530ba20b70de95fa4b0b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4104 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 diff --git a/libftx/extra/ft_swap.o b/libftx/extra/ft_swap.o deleted file mode 100644 index bc573bde549ac12fc562fc2d19564c4a6b195d1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3064 zcmb_eO>7%g5T57tuHD+T)0EJbBI-)~sgQLVQt?-cp)#1zf|wn+ zs2)ijvaQs_;bWu6u`0}!o+Kb0HSjv&`#q-oitD? z_Apqfvx!84=8nq})%OtB3zXEc`Evt_h>(wBpxz;*EGx3L){lNdhiGMpqLHntMmFV! z`X>>vJ~_}Qe@1qo*9i435~|b=xk3Mserlkf`VC74dW}$DC!sq02RYlJVPX_I${|X} zb`%y$-Dc3ulgwdFtFwsa+|y7Aik%O<6}Jr8W~Gy@ zwi)v`t^FYUMp3CwXDAuv^~*@FQTG70JUZS9+aRAnkM+) zW<_^}c3ydK@91jZ+Qtk}#Xtcb8{PHmW z9`R`7@;8x>!U_CUO8uTXK#m?Kyp-G|u9&ucgN>ZBo&C4$s55Un&g&yyA%mC=?nw1u~%~s&MufDM`-3h$%C2;HY)ke`7mD8J zaqE}i=cmAhw0`^W61}Y7RpiV$kz|D*%5MmS%&evJaa{i@_m@7@pT1&de>!)q^Y`d) j+cmrfCeObRq$e}`)A?zx9o1!cQr{CmBOSdXX8*qc`r|2h diff --git a/libftx/extra/ft_tabrealloc.o b/libftx/extra/ft_tabrealloc.o deleted file mode 100644 index 973478b0421c4c6f4bbe916bf45ebe5b1edf195d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2912 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 diff --git a/libftx/gnl/get_next_line.a b/libftx/gnl/get_next_line.a deleted file mode 100644 index 7d3ebe911c407ebf42e2e9b3c1cfbfcc5fad0c31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5998 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 diff --git a/libftx/gnl/get_next_line.o b/libftx/gnl/get_next_line.o deleted file mode 100644 index 46741e016025c9f54dfde059777790a7e9391403..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5784 zcmbVQeQaA-6~E8+b!_LuaZIx*GhM~Vb%w~Q{#4ePp1DoZ7%)N!6;caBr} zqojyHRIe~AnzRmSd>WBdmaAkg?w3lbAsEB*k9Ax%Ok6P=Wz{L!I;ia>lbGOj`V!*`JHor=iIM%@AH?(AN_R5ag>Oo9#CyfP^Bh^+VwG09aAZI9?!Pk%{JH4 zt;L(axDWVcYP?Dg+1B`Kwz;^flIQzLePjFQFscI^pu>-tOU>+47=<8Hy?u$^aaSj%^DM ze6sic-d)>|3_rMCsqm-@4;&dLD6~zfh*lx?I5Mo19_>)0NkwSS-DvYbZ*Q+su_T3i z3EM0}6%{kPmDb5dal*(#;CE1QK1-T&w25EXl%k4rEN<$gM?x3sR60jr1g{QVC>rf? z@`HBLXit!)qR-){$JCsdALWYxI7*V-e8OZ0VTuW7sJ$~pwsxjpC(O$<-NBLW;P@zW zoP@h_c9PcSI7OJpv7b3klY?V4bfs*x1D%o2w_82f(aLCktA{%B_>|!=BcUVe_;jOE zZ>00(TxB+W#;w*$^Of}8eVIL(J-hcejB)Rm_CXuX98j}veX8Ov)Thd&ikr!+kxHR9 zQkAS;rW*xSQm3fgOF#SYUin|Tg;Cr>!wYe~ z@T77U2AwMaMIDS z#P@YHdQB&ypFugP!_iqictvlC9@M=PI(||2M-Ra;p<~e^j1$olI&oEp061u&-u4KZ zdP`Hs0eTCj?jZNyUFnkyeNB~+NcP3*f8dy1g6-V$!@>&dX1>})`PZh0&w^hOg1cC zU&8IzkdIL%Z28-Uu+p~b*TWsGJ`5f@raR>()WJ^3X#d^>zZd-)LY}lINz7hB`Exvk zFQFtcdl2O@JcOs&-|RhL&ohp~i0r*{(7NSAd$$`-=S(+z|0ejaft!4I_q_w1-Ty5MQf`xA@{ z&#SCI9KcJgKh7ob&>9kZ$4qmx5nn{Vgsf?h@;N=2H9xe=mSbTsc6*U&gbah#`W%?x|`! z;}TciySoDZ%j|z3fJ?s)2kH`xD~051Gz1Gw;iHGp4bp05S) zA2Xijl9r{tZpQ-n66+@exQvh3g-81JO3mL0c0J{;>ENcIh;5+RkDai<%z zQ@QEss(VIds%|-#spBfGGWq$rITx4b%yg|LZgi2xEgVHpB~;P1`q51 zU2MaI*z+MochjK-8Rd24Y36<|Ra4UU2f5hqSTc;!4}?CAZ3*5P=q$3|Z{oX38x?Yz z*AKO$DxD!D_@Xzm6TgH7!l*0*;_rF4+lx-Q2fAoX(q7(+w!hS=JdCGX``0-Bw*tn1 zihlvS_kWTuH;_HdL;a^Qmi|cp?*&Gjd+^xu1RsWfutC%%zLa#nb!)$iCp7Z`?W-22 z?Rq@8AlN8z#rH2>dzof|)g-t7iH~>{>A%45qS9^sJjV-dfgMSuyNR@y@p~IsFehp< z$d`b>2aEw#{T{yE;+sn!Y!Zj!)076|)A<>Gbe)#j5*}Z+@&1#040mTku4yF1Tf}cm Rl~~+US2$rRD0VRZe*l}hOoadd diff --git a/libftx/libft/ft_atoi.o b/libftx/libft/ft_atoi.o deleted file mode 100644 index 749693b8d35870082c7affedb0f793151c683466..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2952 zcmb_d&2Jl35P!RyStqt*Cr-zo^hPoHSQf64e~(s zUiACkuci8*@g3t%baSN>47=bPonXiX&vk-*E;!i<_PgLf3uN`l9Jn9LyxP-i>Tz~gQj zb_?6;p(a_c`-#J@?0=bPlM{$4WKktA0!1=N?+_?Ockm7Jjdf4^6qzdDSar3*r#-FU zYBBOeTh7&nNb?dyk9-s5099fOnOe!I#g_}|QZ~M3RjT=NDSmoJo7SeMo~^mY(;v^E zHmjXswzHIW%6V;>B}#TRkt-LiYGQdgm#(c@PGWW@QOuX})tpr*BntVA?W}u@p+`jo zvwX>6rB$cGs`!*^4y)#~rT^Fnb$)_gNYaOIF=>53ng|Da_i<1UAw~}o4UWAS8Q7Lz z>Q@y*LKoIVsE0j@Z%LB=iu4mBH+&?~B(Bh)}T){A)>?Z z28`P98q$cXxoOD6H-B zYBMVA!4vQ<+GB0`-EW5&-3N3>_$kbnL8pYO{7p9m5}sa{g7|h164ymV!doW`+>M>wap+NU(_^S8Jz;{5)G&;Na{zwN`@Av ziVv@IebkiYF%f+IF=N~VU ze03$C%_HVH(`Dd!dV0QOmzh>7JC^p!>kCs=C%t@GoKB_{3Twrs^vVieSJ{rRLcU~i zz{)Mzm2}Y(QFx{`tm33I$Ui6&|6k~H%+kKkMAF~*M*LC$oYTD8iS9AN#J&}_Bp1Xv z5V-#=MA6W`pM_tNZ`v^qkRN@&UakwAYWsU4m+Kt#kIC;l|1a?k?nv`#Cx84|G551{@D^7l{skX*z$L(!#ezFFNLp8%1I`hwGW?iL^6A64vgkwU}?ZnotVKE(BI zo1%;Fwui0qb}7`QB#)mH0Ow-;0{#SrZu7g%H5kJ*rIh_U-21z zDqF>fZuJkk)TcYxU!V4ua;D5cvtK0u diff --git a/libftx/libft/ft_bzero.o b/libftx/libft/ft_bzero.o deleted file mode 100644 index 77fec06bd430c62785a632d7fa4702e6f4325b52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2432 zcmb_d-D?v;5TCuvrPb6lO~tQ@1hfcB@7k*12WUmqC?Y6Cd{AOOHqGIEXzs4mf?Dwd ziazMGFM=Sq)IO@gGbbEL6BU3)Z}NEeWyb|uj+63ZBEVn~{a#RBy8 zL!};hVN_~3HE+5!!#jcPd!>m;YWpq^ ztVW|#cA$VckFozyrs}RFN0h(;jb@Y%hesp5xUJ{;e4L z0c+`l#OBTdn=P=BfxiBS*tgAy(ITSuz~Ox1o_1tS_7XavI*%&@=kd!J`#}RmGs53y@nGtIdp#(_5&#hn@!#_+sUM@>Yk52$c%y2-;84R zq@kTOST@qKn29{1xjD#mso>+>)LE>XVUzfrSArsq_!f79>n`leI z;uGlhAF-V);QItF^R|S3M8SQbpHc9uLa!_MU7_0w9tgc8IMtZ06K5(W8jdvH2WFGk zqv>j`UhnW3Fgx6-nIWGI!EE@h%kdK7<#f3laD)=yAnbG}R74~O+iUq?dVa{w`*>TJ^!ot{tW*A_)>5CHknInkR!Byq~E)Ov-_`W{BCSN-#%{*nlY|BBF8t)K26xs2mV(+&~$APu4{;4Y{8 z*(?5qa5VoCe>Sye+Vz7>lm>hF-b=76={rOrpG3TTF9;)&zdz9cZlTbte@_G`&zbs1 zZ-PzR_EC0(L`RPqn^V2QVPc8b$=5clDorstDsD2`;CmO(0 V6x804?U?{ylY&HXbjQ^EzX6^5-Ms(+ diff --git a/libftx/libft/ft_calloc.o b/libftx/libft/ft_calloc.o deleted file mode 100644 index a17b032e83e911d908e02c5e7cc8188d6b668799..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2728 zcmbtVO>Ep$5FXoWC*)^$lR#)Gpp^;&fnq0VN()6H2o{_)aHtfNBB8K9-XGQLt=4u( z11V8cDwcrM91!Bn1&KorT;K)*gu;zmkGUWPi9Z^V>uw6WY5eu-^?4o z_vZQS{QL{5qJS6*Ohd;KD8Q#iN1ut*8OS1Y!EXO#Z~T(8+iUxFJKVE3*7hND^HHSO zoB4e^vz_0Y*lGV@{}Jxn7xH_Vn}g)~K7T+-ettgUVQ6N1ZEuetyPe;~B)gD#=NR+8 zn7M0jVxr7;$m~sIxAO-$*MYt9ZSJ*ilp*Ee^oXvdv-h4#4=KY~w>k>5BU<{Y{tNv8 z+C!kFr~CU+O=U2rZeql+F>@j&JaTe&5KsRl~>48Gf(5&P`9qe)?=|%>sUSN*6WcqL`;B%V(0~7uH+WH zYHrzS`Sqrko0v4m&GE4_VdR{+K8eiM;=|j)2S3Rekt9t?X^;Ksn=%fU%;WUa73_+pzA1k{% z`WRe>)k~nPWR+6`J-xSaN$*FT9vZYv@N7DJOMPz8P~S%ez}E<+;4;1yMfo#5NP>0( zAH@p&7L{+g?s8*nVlvXBg|gxWvg%&R4a*LIAC${Z#jH_Wa*;3-q*S;|C548TQS^bn z-}ND5QGcMKpPthnU)0as(2Y4=Gpc%KN52Qv-bEe#ea1!IKuM1N9X*SV(K%fu$7Nkb zOEE60eOPgvy6gKRL{sqVVK=7+M`ayzYkVY+foN#ZBSVp`!9S0!iJoj1_6LX!C+3az z1hHHH!heZ#P?O+x!C!~*cr$_1l_GF)z4Rd#^$GJtg@nfq7dwX8FYqz8M-%u_pCLxq z2Mxi0GB)8smb4eiRkauw{A+AKA>mcFr&-E*<|Y0*+pkLadu&G?kGh!mHsi|@|3kKO zEUETn{UVQCPp<)H*(rwAr9!dTa+bktIc~uWoRt8~QnS%;u*I3-2Q6xf;;PeXGA|CT zdldw{X5g4FzPvEz2ZhoVFsa*?3gt3hMb%?;x9&L%IJKoptI%+u5nV@}p6h6MMVUA= zT_vV}tr1-*{E`1de1fsbb0t#!#)sr{0kD*NlkO?P#5oo88CFC;2wd(V`qd=Quiz~* zIL-j^XdkI(Xq<>eG`Cz6xqf7Sg{2TOmwp;DM%;4@-VlK-W$rn|yVd_LgXcLQ`lTXQ zuKzS*L=oSKYBav&xQ_+EQp_(T^>4TMOMK|*-bxM;C!~!|p(lCk$)-s-WbRvW{8gDQ z;?E~yNfqBO;5Sg|wtipn`4jt0>qosW;st&MF}Ws$;0rG3J2DbO=F<7-HvgS2^V6Lx s&%cP6Hhu4adH&B36P$>^uXS$9J8V-N^_V>W-<3}$AOHXW diff --git a/libftx/libft/ft_isalnum.o b/libftx/libft/ft_isalnum.o deleted file mode 100644 index 717e49b5aa5c8456a097cb0795f55b8902d2b64b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2256 zcmbuAL2DCH5P;|HW>eePByFv>R-}iDigeS~3fhXMNUEZUR3fDyWs`22#m%N9o0Vt zaNscoNE-)swq<4^g^~Fio1ZtI?CxAbHl5o|z3f6`_{1nB9BO?c75r0{5owIc5i}1(Y7XDJ_PTlC z1=)-kbYZwwb*%Ud2^wQF^!>J5)im}BPH==nx#aD06Ny-D)|l>9}fZn<8gViqCe zmFk&twPM#Z#bViNtlEBNaw1c4Jf~i^T{q)8g_7S4lrj|@&xa!XTV-7N5n4TpcsvK9 znHEEbI}W|V-8g}a9uoR!m`SFeYuCEtS^*;f=p17(f^Q+j&tx|#+C+SWvMl_fmUQm# zpq>&&x~pL%;`2uOve92M^!P0!9WNP)zk+!DhM_x#_TCT;&A?JY(x~?a!WjJ6iyG4p z&arJ+2ffW_M+a=H2+@JMr(LGd?N#!(_6!+kplhI3;a(#i^dK52y@3Meqtd5qK|)-) zdT_i&15SBp9V90M)w;X;dynkgUpU=Y60TbgT(~YZ^GDLZ7vgp44@*ro)w<)7)6uCM z%q6?fSYEUWg_^wzrf)ZWFpJen#m0t~gLS_KX3cgj={sJjsx%pxUe&kF>v!^_b>AvJ z1k-g_D~s0B5?;LJwwbQu*%H|0#Zt|x*h(VoRugOaRsr=|h4lZ*D@>rCJLg-GhyIp< z)Zx}nAt%Ot#Nk^ zS8mF836e4ne_C2Xe+nej$CQ))JXD#Lh1OJvHrHp}FIjm02N^)$rwY$wP5Z;P8uu*< zM#R$kFm$D@=aGGv^DnAN(dO@G?4uF2e_086pJ@L&mHEu+9!D+pj9kz<*T0cp+{u^ZBy`#8o3Af2Xp?P#i!u5Xxpg700 diff --git a/libftx/libft/ft_isalpha.o b/libftx/libft/ft_isalpha.o deleted file mode 100644 index fbdbbb40e783bd6295087106ad2762370cc5d29d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2216 zcmbVNUr!T35TCv4mOq8IfGCI>9v~`)D7n}54=v+a}Q>}`cHki=jd zDw;$AzK1IEL|L4G7<$f6?|j?YI@sStY&3Zg+igVQ>DGZB+v`AS|DnWBd-!B*w+W?B z$wR90qt26YhZo7i#gD9o^+wyc8jYXning%UFo2>V*czVbP@^M}(a6QlJ8d^R0aOl( zfbO&bgnB@Yjz=O9%=7@4cij5&RjAY0~VXZT~%JMS2Qmh55at@WV@yA zw58kG?lq(6m<79ga7Y`_2Kuj-%ErORL#PdF*C69AnT~F)=5#F$2|ME?a)rF%B+}`e zURpEU#PCoeZ`!7lGb}4%nW>Ds?lE5|n6?XP__xY<@>6trB(^yRY(37pn(FFbVK>ep zMvI6p4U^IMbLCcZSeZc&fGk2G=)s*a_B+~4jGBmx`HqD*DpSL82h|wk@x~I5gco>x zjJId_`5E4q;k^sIZ;U50JUqkIaF#0{I4da}^LiOh*s1#=_;pmvtX95Tm01O~N|%ZX zI7T%{1)7#>dV^}KFMqj5h{+5z-u^0bwg~q<5zOI{#QTL#&wz+KrJ0%&%@HMFU_^Zkyir&mC;thM}-zPyaDD_iAmnYJMS zBe#?(>UpDjBsDDH>M78ijXd$n3lyjRfA$PR{oh??nie1Ztpo%QPInA(!sHxD_X#1$ zIg@x?3W8H?FejN_3VTv;$%4Kb8iE-4eii}rJME{S?`1Ul=Ue(-5>5FjfT-}ppOP}s zp8yffG36W}#YdVbwBf@@l=UTV7g#Xt@;Bs>eH`cu>K5U n>g-Vg**30YlJhSCIzLgc{vKk%-jUz70N;~>L~-;+g7yCZbCkX! diff --git a/libftx/libft/ft_isascii.o b/libftx/libft/ft_isascii.o deleted file mode 100644 index 67137bebd9e1bd52ec0556609c82c0807038cef5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2176 zcmbtU&1(};5TBRLrfJh8{j#=JB!`NKbko*~+DffRtS!YurBXx*o9(7qOg56;)KsVy z3PQ19y?ONLpCG7E@ZewK!CSorEYz9gO|x0ogE;Ws%>3r-?Yw!romsjQ5(1b6%tA|J z6yPA-lII%Y93;_magfs;EB6CAZVmdYxyD+@ae{&c>Q6VIug?@nWC@6{9SS*H_ z9^h&oE7~|R75tN~A{1hn6hUzy;>)-zp|`b`*371cVI^0!-D=7x>h^kS!>l+~*-lMN zYUA4Y*yU=&IPqcnJ!tj{Q|+ULpN=m}z+p$lbi6`m!+ zJ)@5~n#A~+)CWDdDrI8yB#795x~alB$*EZjZ#)$Tf>L7-WFN3Y*PYeA)Bx0CDRj#)2LxBSI;5eED`@-+Q$Um zd*^&9dFk&Nkla7qNyG``Ib!!YDe#;z-ot|A6zk7PCcejv^ke4t)zIL_$oI1hcqlnD zzwbpfc;}n_xG9GcNJu~WcMuIVS!0eV=eX3F4a!2B3`oxPnV&*DDE^Ifpzre%$1$h( z#Io1#OAr{~OXow^r{1?fc@AX!HBvmp-_MYXLQww>9EWKahe%ar8#~ G^?w7mCbang diff --git a/libftx/libft/ft_isdigit.o b/libftx/libft/ft_isdigit.o deleted file mode 100644 index 6a91375b9426fecfd7627c8ddff3ad7091420563..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2176 zcmbtU&1(};5TBRLrXOjO^uyX(ksK-_(oI?`YAZD&u~v$QN~DMq^07%4lZ_;smLJX*TPEh(CBcGru<03po|{@7yFLY=sNj>->KK5329(fpFc`#4 z_i@?B>hBzx3jT@9Ncos1Lr@%u@H##f-`iH#va_jvNM#$Q)rjWG8M7E|>b1I2HKTL$ zT3n0IUTkzW=bq1_wV+*sf|WMvd824pS`K1np&lz$D|$Va%at;Xrf$U+=3^DZH0mY2 zT#l8EY{6>T!VwCFX+aMDtumf`oKBAr&(=Y-B4T=|uYV7_aT+;V1bS(>5sJL>-5d_o z&;iX2Tz;6rrx4;-XqW^w5tncr3*V@Nf#VJ;VWEZx8|q+SLk(Y3#|vuUj;aKTs_&C3 z8a@>h*&*J~ZKVD1^T=yg>3*l4Z3UDbn+*kUY&@U)A#zoylfvdJ{BDZ&{$_s+Ee41KS;a_N!Yp&}w=)BjXIS zPzBAbTDrD!H#J+gGP%c~mCMaaI+M@i#VYo=mkm>wgkDM)YMF}eD1y_dVF4?XMY&la z`M=o11kUfy`J(cpzh^>9_i%@iCywWc-4jybIb%M;ij)-V&PiMR9h1_Jh1-|r!p)KI zXBqH7N)~S41>A7XH~Vo@4kQthe)R7kOxgm@qoka1X|tG+g*KUxlIycPfxK7z8|k3^ zC7$}jxty+FyhsmUIv=_|aoz>WvoGVXkl_HoKT{SeUi~|eL&bff{te*bc;@LIdmXhc z$%nY_gxfcVn_l(%CCPQDKK&Kl^;5_xYe!WSFL50s>PkxS1b6*+$hmt*ejAefKn8;1 J=#IGS{|30PwHg2b diff --git a/libftx/libft/ft_isprint.o b/libftx/libft/ft_isprint.o deleted file mode 100644 index bde8775f7dbd8f085de6a098866bfac41f90919e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2168 zcmbtU-%C?*6hGg4cTJt!bXICc?7@f#@0=Nwh8bZdScG9%AhOLncWJwm?QUsg27+WS z*;@}0J@#INy$Ss-L67woDA+mMIeNX_9-;%^`}ux8-}B?UbI;w{_|#2JDG*aI3WrQo zfbG!XeyqM7gBW_w+}ixMxw@Cy`I10&)E zeO!&(G}mw1hWt-6QPM;vq9_hjY#N`s_WJ1|Yh*J*Fq5e|ZZ(lDq@Be?%_>*yl9Nac zngixQ|HW$kF!gK@*^qe&a_+ocSt{F(Yi1$oV_;ZLet%RvkEm@*=*RU_VH8j)Eeo-?{~dg+}J*E_Bn z+N`EwrbbNQa~;(X{M-*Z)DK_Okz*b7BV33MI5z>N1C7T~JApLr$zSgYYLbB_)mue| ziFD7%V~&Q2-p~A`M>lv+aLS`oo?+%^7^znWy~X{7zvx$3m%4f86F&Vh^LswM!aTu9 zHNACHto!c+=7N=}F3zVjnX**_)3uge&wPNHEftFv4lnyv+%lMDtB_`HJGl~=PRX^* zi90j>6*rxI1ZJU7E6%4E7VyhjJmOxk9g77kKc6e7i{m^yE`z=s{ZH~W8#AEXNMRIWy)W7dMRMIEvUkfgY7oEQ2psW61aSqSD z=J(CwVNiV$r4H4ne?@=&8PxQt{Sv}+Tn8reF9OAr`Rl(y&EGrnyUXGSB4`vx--y5d EZzg28asU7T diff --git a/libftx/libft/ft_itoa.o b/libftx/libft/ft_itoa.o deleted file mode 100644 index c75cfcb517cd2e3489490ea6218f1825e5a940d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3472 zcmbtWZ)jUp6hH61+?O=jlC~RL=jxWBLqYq}*2#3%+2NvToie7CZZKm0ye7fqr8Fc2;=+ETr?1d&&I zP?t3+e!>XiwJtCIh@ntAe6Am)E@^vs9aF-c8#jl$ zq;6aWIfAZ=hMI15xJL=^3Ox|IW7EjGhc*HD7|0wNSqH#&tP<55odEn1Ak)C@poDja zLLq<-Ng^b;4HY|44v{Jp+Kp5A1|J_j=wP3SHTK*)jG#_d1R6p~dYUAu_Z=L4@+@r( zN+00J&)Cw|kBQN)+jKvUJVu1PFvg3dkZcLPW^Ad8bl`s%hXBn~$!5&g zaUP}MmpI6d#_ywYAmE3wbk#7c(M&OAY{y`%R4@vayk0EEiiPxqIpZ+l2WUA(f{{*U z3%P;`1;Ydb%2gcGP&F!roS|oRUKs^HOCZno^4QPSx_BffpPUguE?_vb({rI zmSCdcH<7;%)zb1b5vD=9{8MUYT*?*5ha zp#QBWnKH!Ipl*(JY8V=m{LF%f(PorM=m*Ndd8P)RV{(05T#W~hD=oFxixSBpfvD=l`J_CsD z!l!e!sV%*J6MQ4LrLvr+-~dsM6Gm6W3idOik_)HqDsb_Y6Xvc?G#A2!4Tb2Y0ZHI} zjtF#f5D`wjUC=FjBJ8Qd6K!#reYdr`6=HYa1gG^O5^;1#gaqdTf0@g6&vV%y<9OC% zf1JycoYQ*J`-t;$gySOq6qjG~;36-bLn2`>^1kQ5EnMu!haOzy``m*!xcrp|e}l_W z&gn$E*K^o|i@G$9i+Z^T9dZz~te&pslBslhN}mR8N-w4~Q=c(G%altc9s8rZi*oCV zX*XA7+3F;Ba^e(>i85$L+0?a1pBU?_n5oROpcRYLrDQ6b#h#yAWnL^8ItTQ8a$+h~ z(xH?p7Rwn|f739JnM#9JdA>xP-wo(j&Zf*1sRy(HQPlt7Z=RxeYpY9wdN+? zW?B&41BAK1AyN+0fJE1|o4h@M{&4u*27G=e4=Bz*`O)6<*Mc5y_bGBpG00`XES{Hq z+$3Jd&Bfep*WlnuH;8ku?MNGpTsHH>-;v-Vum4`uwX1)U*MEsSQ2hjX>yIHuCjI!h z=?|WN&JE&R=rQ)`ixO{*?)TaeihH6Sd&9MNuB~?-t@rytWmD+vU&mL?RF6r`yt-pZdJA nuUSTR6rUCy<%VJz$)CuZpZ3?gc4Qajm!0!h+VP{1-u(XpD)E_C diff --git a/libftx/libft/ft_lstadd_back.o b/libftx/libft/ft_lstadd_back.o deleted file mode 100644 index 1cf324240e78fca6035f51a59a299b01dfe05f4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2720 zcmb_d&2Jk;6o0epSvzsFcAQcgijWUfNQkV{G*#2ID&Zrrbqj||L8THh>&-g0vR+5_ zIt_)=pzviCBnko~gsP$*;MgNaBsd`P4{(G7QYvu>2c$?Kh4*%6ob}Wkka*I}d%xd% zZ@zZk?DfS9&uNT-6b5HuA4wMAwy|$7MCJnIF>=Z7{bq0dUbK7HcI{qw$KJZO3%R$m z7=q>wot)fD- z79&zzyGfzI#v{_8-sobN-o%bXJDnkw*G`U*ejJ;23L^U}vgb2kY@z{6)ou`Wi>~hk zE5&uM-D$Lf;;|WP+M1p^-i@5c-kd=+Yn^~vSn)fdv%FlXI_|3FLMfy%u# z?sV6^urxbUYBqvKr|$WF$!}C^;YO^Kbikp&Z3Uqhgb;WeA#^H!138?8RN!3!-$CQQ zt&ui$kUA80^&+s1JUenAo%smA!o$c>BZ&_1DKr1B_RN@}xflWPG4d%mfjwjFFLR6( zeLQT;0%iTUeUxZ}Rz1G{BN|a8dXDkY(LZ^?xWp%G9DChZ;Sapb4;p1Ya)zfb@vL#4 z8|WBCM+(_Ynd@hG-nfjRWp0)^GtO%UE+HOqSpPYaDfnY=m`{iPVg}s0xRnDW0v*yS z6=5CjzqyyuQ%H;-oh5P)VarEZgWYifsUB#SzxQI1&%-Ek{UShH&PaS*LujBBVg-_) z68KPprr( z{FcIhAaGCNuM7OC!oMeQQE1w0a=%XtUOk62Sj%3uyHatg)wZ_|R@?I(E2J8YpMaQKnv##ohs_rnxy|H`3A>H-bXp?ui|ojD+!_15~cTtIC;Ni_<}HGy+~fI z8Tv;h@4bwh7UW?;P#k?ve7Yi$Jk71Hi2`U}ByYs3->b1yCn`t5j|%eZer9Z_v8Rw8 zwticXb&){prz2I@k8f=>|1|2P{3P=3BuTX8{8AqkoSGkq%TMDcMdnFeMyIrsabJr3 zBuBOy`(ezjso}Q;F{cb5_b=)9(HM4qcg6ja-nD*oMgVuwP|uEhYoaK>BY;AARAcJ= F{{a5!2_XOg diff --git a/libftx/libft/ft_lstadd_front.o b/libftx/libft/ft_lstadd_front.o deleted file mode 100644 index 8f727c5c73a83129fcb16478e48c9b6b22c9daee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2464 zcmb_c&5smC6o1vd)jRvuGwdoZA0c}oB*yJoR#aFN)*vv9t05$7)PziCW_vzjPY;>y zSr^T&8pFqg#6S!O4F|%BaN^Fi6ES-mBMD{a*cW ze(i!K1Zfd;hF)2kCHhmo(pM98mGbahFAbiT2HP)6gZ^&m=j~m}-(b(b4q__ZIsc+` zCkNOq4NAbzb`xrlyZVRNCyu&v(sm1P9dh@HS%=8VBgXcyGV83)+wRKL>8WD}&K@8d zlVmC4(j1Y@6N9rKkh&3#&k5U|n&KFu+zi?7r8zcE!le5cV;ERT&NiLs=5!K-Wowo# z@daBVKW5$AO0}y1Sl3dk#vpl?O-xRYZHRSxoS|TSkYjus!#YKY{wwP%Ig*L*daWPE z{e^l^4Vw#_elKcw!-eC^-jcVp_-;R0JifCG>xB0nHR4JT#np|CN~6~eW3Nudun`qo z-Hsm>>-AQ(zv;)t6U)U;J8VZSKM0CJyVi)eQZVBQn^7Gb`C&|@Ix9J=i=7v8a`KsUoG+#AG-duP={jX;eJH2Pa>Dr(WLb`v zrEos7EaXX}UNheYKSqDQ9JOrIFz23Sn}$_n@Tl?;ViOnXUU?JdY-a!D&cNv%CZT7u z=#pkWEp;f6*%V0gi^|@g;WMpG+_x;+|7>c~5ruqP*;Bvs8h%CbdY_K6KQZ`iWnVG) z2g(i%o?DqEN@4h&zbN~Aga1j{w+w!u>;;8g(?wVuC8Ud)YS zbS8QAZl}X-rJSR*JMjV^g%H}<`YpRX^Xsq5d67X+J~3fdd5Ky#0K&<=e? z_$@Slwd0#9(GVW8#MK(`dWZ49aRw$AjfOR8v|XhNacP5h=ar|VX`uPQ~?wdM<2 zQOL38p1hR2$3R_I%(0lhXGU=B_narlZz&9CGyW7-vi+nTpQ=l_tO8u+mpt;&=anPg zuH>7Rl&xV$#XZ!7LY-gZQShvr@kdm#^8Q)TaT?25)Oyx$EnDoF1=DvYjlX8PUsixyx=+W2F2npTm*N*B?XWG9=@$)qHc zu&q>AR;zIpT2S%97eRbc@IjG23iS{0pAfd-LwpbxT1d~Cxi@=rjSqqc=AQF?=bU@) zy}9S+z4dc1>6!*YGj!~zKX31M2M1yBD+6kOA!GbjS5vxXMp%4qsY&x*jp@W2O z2$qocIw36;(QoX8)F8 zHNWI`{Hp7e+g25FUaga>x0+5TSFP5|-Jav;R+e+khS%uS9oNmdjY`em36-1+I0;l+ zp6_@*c+QRwos!!?4yPxz<+%TGVF339yTL=eavrpuw03+t8oQ1^!b8Z@M?yyp&n45> z^cQAK-NOiguaJtsGLD+2-AT@nqTdcb%>sGVxMP%HPgXtbi7A~Z5+kLtc>HgcF)y%% z8pF{rx0$}l;%Fv|OfRx&v(6G`k!4P?Sdq<|XIUE2{3&J>F=~@V5TQdi^Gth7H*q21 z)RV_Ak&eJ$!%1EPM(Y}L8~k#Pkq8Wks#Jgt_~!-2Gl7gWe{iPAHSkLZS>wYdhtw8S z!D60IUlMK|2fBREByN$Us3qaI2L|U_ZsK>O8jMxzfgFQpXEI5Ro?Gu z&a3AT1#8Qxbhk_8N~P`ez-l{g+48ALt!k^;q?Y9o9ltI22M-Oi8(ysime=wf>*ZHB z7CU~qdJ!zw?KMl~tu1_Iws|V{ddqXha^1#=aO$O6yWDi-I@pI6miEgP)R&v2{|EUN z=aBEAm{Q{x^=CnFP3I;Hy+6c>do6qgZiqe+yxJ@Dhb7;45%(G=k8y(H=ywdBdenla z+UlB+f}dzW`6N`MQH`bhpmG%a3@61rVgfam`ef4j>zu6f1X@4!sk;70kfV?#{A3yM zJbI^P5%q8F~9WmZpk9@gg%Q-Vasv9$W0?T)YwnM{7Y*1O-|&cTr$P}1^p2k zlg{sV{-}xHna+>i1d%WJcaT%pgcJ;T{jUi~qQ>^nH>v)?g!=SGtM%VN&Nw%0q1wgo iNO(htdbEBLfkOoF0~+etk?%Th%3lefP##UG*1rdds0=Ou diff --git a/libftx/libft/ft_lstdelone.o b/libftx/libft/ft_lstdelone.o deleted file mode 100644 index cd26adad7abedbeab9a3381da836427517aae0ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2648 zcmbtVUyB=66hC(+calw-WSXtD>xwL>RK%TZw-vYBVk26eE>%lmr79(xWG8=gGAWr! zjLK>;Rk|+JiXb8)eG+}~3;0sd58#(5w9tnYUjhp2IWzaBle_UjJdk^S=XcM!=iEEz z-h6!a{L30+Acev6@W7HRz$N1WE`_iJCVH;h+js2Yebe6F8rj>uU3<8-3;AmqbU`?R z{HGk@z2exu_5{J5vm<-Bf{xk9+O>CH9oai4_kOo`wnlf6#PHwD%fGUN?8)3L*K_8> z^SOhpfMsZToYgIyDHx?AdTupyDsy!1%p5?1gC>Y`vj98~q>RI;A~%5KEYowD48;JX zvY_YA&62T#=FCIvD6W#`VHkXeX%bWkq{0(95Mp)MKtj_cOBQ>BES67bUk)O485LSr zBI_$syo!U-CWxY)N|G|Q=TfAf#-DZ)LVSbpY6>{{@^5gMNz**QdbQ^Ty@i@v@fr(# zr|Y*m-omkEYsp$#Jl+c@kA1X^)(Pubs0U@&4>ldQ<2hChieB9>Hal&{FV`Q92)UpCTfi;lCDkL*eQBk$90B@9Vm-`wIV|us>1wp|BT(rai^? zRT8|qUjwX7r`l_jE7fY(>4VjE+=>;@{j+MFcAIXa@bH7Kn2sV^UcCdB*9jc!mDko6 z{h(5N7cAH9x675yO?);Q6W3%S)@^x?Ae?5o-mSD9sCOM4Cf^ealLnP4SpNHM(*Ik& z#}(pzCKvokG|kVF5L&%@^qvqW`&PP_1lW*-(CQtb|Co3`OLtR{M+8BB^!>uO8nxsp zw^|cYaEk^M*&mU$-#2{G}eEX)>|CFfzf(W4c=}6W39~Wybp^nQh zBJSHbiCE^Bn(i}UHGW+*JJlB#87K7_oRm23H;iAF*o5kPHHyEYx?dN>N-UP3+`pvh z`%L@(1JQr-JJb2mTO;Eo-$72T2`RWO^4}mMCaN#JThsF2oRXj3U^V~i$m!?zsEn)l k8_SO(Ugo3vNu(WF06!p5&yMCUh)a2!3>1o^JErFU2NzlQhX4Qo diff --git a/libftx/libft/ft_lstiter.o b/libftx/libft/ft_lstiter.o deleted file mode 100644 index 266717a3b53f348f3faf27a8ac253e5859cd5397..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2496 zcmbtU&u<%55T4!j+t^OCb`x4!icl`70yXO-1d*hu7?sd%R0^sHY7ddIo%Ii~UKe|9 zTu^C63Q`mal^=&5IP}O3{s;I2xN+suLnRJDy+q<*X4W(5`r!*=q_^LE-^{${_dM_2 z*|_qyX&4}8zy)~9L`Afp`o-8SLJl*xyuC->?w@&Y@Ajd$*E{fbZy!MJONA+qUHVWi ziieQ9_X4^58wcM0JBQx>+VD3d=oHi5-p1kM--pAYxBF{;`xoQ5@uD-QEGPf$8Rxh$ zi%Xk1thHQ>%-Y3Mma{&6e){a`H%Rj@Wku zs)8T8MJ}3oeu^M(zLq9@8Hc$BvHvys>uFGws~+GdlchMoR;3q4z4>ZT4(s!Mzte5D z!}+CUchOy3c%>Hymp)%cw&K1DwWt(yqh{oH+$t2pTDQ<>xBPCQT5XhjeLpI!EEihM zu-R?+K~M;qm0C0yL826J3aGZj$PXh3{XqoXQqV*VCnu==#~&4M1K=4(z>!P&4S7#2QN3n<~4htk+e>E+_}t)TT1+OUl?bZCp@h znS{G2rr@vPq?iRqKVU3u!BH=1dg9V0A{JodYW5QH*~I+u*`X#gWYJHqB8^S@sNvB; zn;ij&zQFusLZ{0u_8dEszs{WQIvE{Sa@Xf#_20VG$vh3tdy7%@F7s=e{w?#mrtdQk zHT@p*zNUY|{0mLL!+f5R_LSV$1=jWbg1h5adi7GdQt9}8a3i`wZnfQN(S71zH|iuh z7u=2?lsVK4Yi)4DcI3O4u5K-KqjL2laD$-VDwTJ3@c!4w(t~E`v*0&MwNAO^CuYWH zz{Rzqas}~Li}3&2eVicKS2Ev++$0Z0VAL-Uz3Ze&pGta>9qD7y^Wrd4tv)A(zUTO7 zi~@S@8U}QYa&s&`B$6;acLig~`y;7;@S(iN1rF!M?>qXZIFarNr7SWR_=)ReAEL|p zf+sLAss182C%%beCUt@vTtAkCCxTKZ(k*mQyQ!xSSXh-rM%ll}5jvC3Z;|^) z&WX-1gG1^?r*}gCO(?<7yuRFX(#Z7ODr%F~_a>}QudcrS7HZa&VH@Etjw6%)7lD31 anZEu5)bz8XyjAX>ABmt*9o-Rq{eJ+hZsVQ+ diff --git a/libftx/libft/ft_lstlast.o b/libftx/libft/ft_lstlast.o deleted file mode 100644 index 3d210a298a4fa2cccc7a692401aa3c39eca1b67f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2432 zcmbtV&u<%55T3W|-8f0Jc48k?xN89kV3|(-g-gz&TCxF*9G00bMwaaI z1=HD_zdHZQ#jV2I7XdOB7%XiS0IVDk*yj<(i2ySNWjgcoR0WV-0Mpqj5ZOQq_i$uz zU?kc2xy08WAE98Fq7qXd6H__zGscg%&KOvGNbCkFXvWnUg1qromhd$k#uZ5XyX0?X z!Af#>>w_>J6dQpTwu%RSKkD?t;_8~a;;t;eF-U@|U#uZpci)6&TnnN&@S@mlKq+iS zrFO6DN2Nxi?F|n6xU{}j>UP3T)b@j*6m;s%csPbsDKvUv?1wRg{xF897IdN*aAE?S z9pFE`67B9edZ4M#Zh#u*)unSY*#~&8FQG<*j7|*Raq{ zbruNd=fI&{NWC)d7A@J2+a9;-tU(f)nN!x>+>vG5dzNXpEaOjW7TveK2kb93UiZ^EQbu)_5dNl13m&7BHLok+LQLG6~F{vit+ zlE^6g7a9K}rk>vkAF7-ao!=}DsTaMCn*L5G!MD8rS42{#=Qc1l?f1)a|H?YFK7C#F q^>3BQC^<==NBSqR7ZD2U;ha*UfWdw diff --git a/libftx/libft/ft_lstmap.o b/libftx/libft/ft_lstmap.o deleted file mode 100644 index 3122efbd2af3caea3cf31a96ea9b6f47d22af0fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3152 zcmb_dUuaup6hHUgd^i7^KTYhqbwesR24ZirT5;{Bi)i&WonuTYeUU6lZ<^puQj?pm z6FST4gixp5L>Z{ygAe+qJ}HPY6z6=ZAX0pgz6c#C)VHESJm=o;OOtE*Ab80A&iVbm zbI$kY-gENu zm$xDEN)X-9+=9r}5Sh0pcPa4hmju=(xAnDWcJ#IJ)`s4^y-hQEb8-^{Hr)Z&oPbT7 z-@rf&O8L;DQJwon^(wjyj3<@>8(0*2dj8 zTCEmlp-t?f-qlyXNk0Fz)Gr+k$C(n24jvBoOEDEdj$j%^!lew-UFzdH~?Q*@1ln z5+V2*9}hklZNJJs+jb8vBxFUfgrw&PNs%=iJ@WO1E>v{TEobh6gML88ZdqF z=WG-s1nN2t-gn4Ekx$xRQB;1!Pw)Yv#=*9~AbY|GD*3A4;t-(eAPu1YghQWW!%VJG zu^Pj9Gh3M-UNma;QnfOCd{j$n$&rT|_T=%)qlm_|hoN9)%(_+1E@*j3R0{P(v066j ziG048Z7dpAVr(=~E>%kPqG6f|vy>}XOOD!$gnYGP85IjE#*zi~j9IE%fN4o#ZYaQ< zVM481MVLkW-!^y;oexEN={!hFQR#4>*SC&u?Fe%8kkGq<$HUQA&<+WQeE`l~^&MP3u*akxlBEY zd(^EO56hcIR@m6~c#xB)R4G(Jt5hvRd;09mNZrcjUjWTC7t5LK+#EL2`7U>}R53VV z6f=cdwrq6u6%ALlvN_P|m&&C77x@UYbbh}g=?z|*p9_L(cW>r}s%UOLEXrfPc$Qm*rTf(|n`idlS5S|Ih9d|08$&MFeu~ zjz5chul;|=_kWWI(Ef>X@1Obrxg_!Flu!A``+g^hwpd^2`#I;1KhIw({x@}rh!Z-) zN@0sq8dXk72{1xQHSr-!cuU|z@InyGwf=^r4dAzt6+CPbV{ZEh+KDGlNKIEI) M#s2esW_%J2QG&1z5QOQw-8K6*SqtIgpK z^a3UsHhSi)>b#L(ojN`B%))x;0}1X=|kHhTJDAbLOnIYwD;A=g@m5HZ|+KK8b53`D4DHBA0vfCh@pBm81Q!!g#xn{1PMjBSZO#rO%-}M|j zqOP->L9a(W$Pr=GXLpj(^;-eheh|6#>u+u>hLO{}47TTO_3F;%CO#4Ek#Mi;yG*#9 zdaLjBTLx)C$5I`P%U@vf3rS?H z#-2nz-H%7%OkU&!+CN>Xx_|0d3Za)YE#GtA-86}|tS|a0=G6SNT5Ja1nV1!JasN#T>s+Y=LZ`RpW*Xzo= z4rx(=DlNi_5X}XFKmu<4GmtpI|IjlBjz~E~;^5BgzDZx6+yi2yx8KY+KimTWw1}qw^!V8O8#QY1rk*WX0>xx)ikWit7olQZ4T?}WlS?{^vvZOrwwbRbft9u z%v$yRGXOagbV03E0nFuNX8uhutkqJf1W+gg1r$#qWF-Kms+wVyN>mSEdIn?Hs$^V3 z6Mn>%!-YBN!B3>R`nZgQZZJ!hc7rUf?BFw}@9$)mk6`NiNoviKFYBC{EA&t=reUb) zSEk5U(chgWyogJ`45|JD=_^Gjq_G>FVU!GOZsFx30DCyB`KO5yKohTBcteM5> z$L7q?)blsZV%|5W_Dw6lZWh*&xn@q^Lb$5ySU$^m*>e{iIrwKh$#1~XhR56n91W1d zOP5RX7(nxRTyCN{C)H1Tg&bF)36gi=X(m3Ka#T>}GDs(m_<3QUl6X_-1azZGxXwyu z!W#mqUGk~ldI`^YT!-!pNh^b+`kx9ry=16!{C9%yDDknd2MYhKuG<|cjuwxoeSmKg?-CkW4PcLz?-lS1)s*tl2XbP(_L z2>-7cq(G*`KSR#(TWhAFFNbe7YEC`$7SCRJ<69RdE##fM^l>eR> zPCB0~oX1G_k##xljy&9wLye_ABX?H~XX28SODdnAY5Jp_)V~EWKintkAN^x;KJz|u z>N_C?PsI!I_kcJOHP%IL(*CUp`_tE0-G3c9|9j-r-cejl P%+FIYP$-Y?h`RrCY(?Fl diff --git a/libftx/libft/ft_memchr.o b/libftx/libft/ft_memchr.o deleted file mode 100644 index f1c3326cf967ce2eef3f8fe2ba642f3c8104a233..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2736 zcmbtVO>7%g5T4!juI)Ot69-D$Amjr-0x7#m8c=_r1c8g2wooC0-~hotYkS3d9eLML zD53=-eykuwE*wBY0tr+>B@l;Di64OwqPOJOV=o*c^$<8k;t*zb=Q*1vBZL@fci#8S zH}Ab2zj?k?JbOx26cDDsN!Ue#1=uon$1~w@26CvJEA@Ua^b2myW#jR4W zczvaK^PS>)>9^trX_4J1ohaVOEgz52_0r0@joexym0LTve(YNA%@M(CsO%NDHxG%l z<)0KJHa4&B?Cjut+sM;=+t2@^j3{?yM|CYbeA`%dM9Je0)f}821<>vUEqgMP$p9pB zsMk%@=8c(yTK0J6MCP7Dr$-;g1q>ZjrYI{py$7c5#?15qoG{8l^fNvQd;n5mjfTRp z{CWim)xwuXk(83q$&*n;d4@(x?g4xo>gqy-K8uhWp)Vu!VuZdymsD4u4bjMb5jr2D zJjb34(I_nn>KFJ*g=_1H^bbU#sbcLXv zpzHZg!?SAzly-LK0UxU1cma6ews8Y}8F9XI!JZEwC|AINpj~&o8vM8Y!Y$F~f^y+0 zP?m<3v7uz@ef+U*N1h%s`WfJn?C@Laqx%hY5fuPekxIaG_*N9(1$Ucm^D^)b?pURSym0)Xf)^G z_Zvtj;E$a_Q4RVV+7s5Ile>o_ph4^sh($HPMw9Gb#QE6#Va<^fGwj20cp^DZv=Z@A zi$#Gv#|1ym_&|*B_ZM=9V?51sjPV`psaWx^o?u?g-(Y<7AM~dreV6gm5`T$tMdDv) z9QHkq#ky}Ze^JtZ%J^N0|D5rM5`UTT6^UPF{H?@)#P~;v?=dd0r<%pM8`i|or_QJ_pI@dBs+Hod-6^ZO+?GfbT{VC)NOn%J? zS=Qmz8rnhj)Q2PyeaAHX$$4K1g1uN@_*;=5l>Z4IPV-;#ALD#U2J7*|9Se$e1+^6A zFUax@Cd9oV^y2#k_Hi(%eg!@dqE1x5G(I9<@N_@PdqRr;@BzLj5Hnd@!Pubnj}BO$ uZgqKmy63dBJ8g8Y;nO#9{slq%CzIFz06DpKq`SsVb(sJf<&%m?qJR(uPC?HSD8NFrH=pyTbC5*le75sTwzK+sw$uJC+nK+aU0b~g z$@L+mY+JiT+}Xq-yI~>4x`7&L*7fYR)g>p|h@I^wuMNd;em%P}kMq&g^w#W;7p?8& z`Yi#eizLjwqhx2h$#=KV^|rNrMMCiv?A@KqdwYAm)DcX5mZu&{pXhe1 z-3@E^mG6|aay&7@v_$IG@kCk~)&bNcoE`zt?gA}wDjtsmL=2=2>vKo6#DnpN;`fZ5 z9(i;OfH6=xL;?ED0W*3x?kIK`a|KaoZQ&Qe4{^V~RH1*$HwdXF4jTDlN)Ullawsnn zs3bqek*SxK0_)SjsvfXj4Xn>m>FT8g-%8&bSkL;_Ft@V4HA2i_Q5I3J;yfCoB}r7n z-%Kk>E9v;x#kiz<=AYf7nrf#44YA4wRLYGCmZIZQ>7h3~~BM{K7nz zNL^4LKcuT)AOqlM#3S$$j*6oEl{iF-erNm?v)yXa(ac(Hxjs3a@#lUK&7gRu;}&b} zk`2AXV$o1qUa4f4jcU-611e!8T2f)L!9SU?0arKT2`}?cq> zU*L8_!aLkvm2i4fNHzim;#{9_`+W)jjN6wb{5-d>N%#lc{#L@pdJ`O{nuY6D=D1u> zFiLizU0KW*3Qc<%49{Niz$iBAbsJv^?!;%H*HK_J?OL9D9Jky6!)LKOMbCG z6ad$9YbFsVO!R@E&+&=q6M?71glmeGbCPS9`|Df_C37D@hl~-|;o$cokZYNH67g_< z3i=HWUgZG^&ci3zmm^$L9}-3M9fx6(UoQF+7Z$O;(DZ*tzxbbcyb%uOT!KXW6QMcb zLgM{?RCJ0s!CMKirEo8hFU8}jzF`sP7g!4?{pxp-UkFhrs^0*9B3|J1KFNDR2(oA)Bpeg diff --git a/libftx/libft/ft_memcpy.o b/libftx/libft/ft_memcpy.o deleted file mode 100644 index 98e41b82c274a9a61004b49eeafe2cb9dca2bfc6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2736 zcmbtWPly|36n`_5Z<5_~lWbCI|A^+GR>YmzO;@O`)`&)@X)8rssfQBtXOavilQlC5 z+r?^eQ5p;49u)PUmr_Jey|my#1P=xjSv>W)7ookaCkuk{y_xT8CbJO{AI!Y>`@Q$Q z@0<61?@Qh(oPI%;BoHFO2^b^60_><`JMWo!NMhuQG5F0GT--4Rz1zlMW!u=exC6=e z_G1W|x6zy<^GX3D3U}|UjKM7=aY$jy_^~jgjEINE@xpd;vCBqmcd^rY4NekE}% zems8oz{$)r2LK`rWKNyT0I=l=s3w8f=p&dQwhwK8Fu=@1pd?Pj<8gF+i%$d}4Drgg z$Fsw)50Q`+!4i^QB_t&u!*@j9T%ABoAARQgUiZLSYdb86u9lcs@mV15E)t7U6+p;aEX|`H=%c|7fHD8TKLd|qs zaJp5nq1C}Td$waWY_pcNY~-zVv*dzXt}Fp2?UI!P3;x?O=`#WL`U<4=mqA)fNr(1C zV;|uT-H$vyB(x9kY$El({M?)>4=@7YXQU$V8onh-`ZF;{iZ&J>N$)vb`Xas6>bDn` za-QwgPWNl3TXwb8tC=wVVyqR4?e^fR;NAi!+zNW8i2{MkArPPdb;zX9g3^Kf-X0()GR&eKoJI5#@qVA7 zfs*zW2!4U%eF2_vo7BMoPkEl?_yMkIUBRz@{2%yZoEP&pIQCi(ZNb0Ed9Td_e4q0* zu0{Mh$K4SBF~^reyw~H%iTa5=S9zS!f){b$gz~(_@y!tbImcP9sW!p-)Hxrn+xX;z zRx>NTMyXt>bj?0!uDRxdR_(OgCiXgaI&K%VuGuPcY}xe=Xm-anwHIGnS#aEP^$pOd z-%90L4ezJMM0m@xO-`82QoUPlo8tvw>uH!DFA>xi+NA%#P#uHkQ)E2L4=~-jK?ye? z{_1#_fH?0WHqQ;QPl8VggKO%ja87dl!u{g>aJVb>C_1K%&vWuSF_7zU>=ERtf5LK^ zlb`Yd2@D_#uT)Ry4*|)e_)y3qfq?wQ$6X6>WQzHPevotF@mKlb)c$4s^MRbf&|iax zJKzxW3Tn+CzZwp|#R;l!P{j8O&Ou{Z{j&T(h&oaI=vP{d7d+iJ;WZ%zDSjxo2m~Y? zTS4En`HxPSpUzr%{#TGwPLDdMF5z=e#Q7Hlt)C=3|0l?WYe#Y0eEnY$K%sH8r11QI E1DnDhMF0Q* diff --git a/libftx/libft/ft_memmove.o b/libftx/libft/ft_memmove.o deleted file mode 100644 index 71f160bf41a98b4e21f1fe1e981626c8b157b223..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2952 zcmbtWPiP}$6n`_5Z<01`k|t&C?uztKT@W*AYlU@J*DMlEyQ_#$se;t}nIwbBq+}+w zySVE@P+AMJ^`c%BQE<_NcySj+Dd=G@!d`@W>qTh6!-@wBD)GH1BaeO0oKEZc9xr2NFZ}DzwvXv^Gi0rap`t`qrI2kSlrEb zF5QOs>k~*ra}Ui?GB%XIIR-cP;cU_ZQHS`wppIEY{adL z=CTVGxP{^j;J7WaX5qgrlr{?Eyu~BF_$(-E3FY`mIC2%Q=x)U6BcY3cv$4b*>f@uj zdIK2%zabQY7qC?n<&W4XDY{wwluX-c(T+0p`f4LRGs|s$cp2}|GL~Jcx63B@c8rIG z;<)9qSutu}E)J=Lk!W#+MTaA2SxR4G$0`ils9t57zQBg`Efz+d)X#CPqmH7Ff1^lA zp`KV^+5&cd$OzStFrpg-F}=oOUvo}ufrTDnLknz#7!T`OafuD<+SC$LF-FnPsl&KO zZ#4tjw-F1$uiXJ%ph0gRechT!i9Qe=4SYq%*QvpsX+tYY_&Cz6qLK8?%kL1eq99N* zV%o!>SS3ivCK<-Bmw{-@8433i7!8!9r#PSRwD75nkr1D8%WIAaTaI%|`1c4+`|zLA z1OI@_I5`fl0m$V!jauT4i0Adghp!2|EVSfPaVBYbsyEI%!oL#0spycr<*6S3BjJA> zz^@AbvjBcs_}2qCl_io%-g;-_KOeeZlHj@NBBe?z7r-c+#ddYMP%O60RWMp+yGuph&V{uK^@RrM|0`7B{qI$d_mgImfFWmh~#}&1km~k3a+2>o+#7!`6VqL>oq@!wwzz;DS-v!e-!b?zr@e`#`IIQ zL62epciqEQ#B{wOA|js7$1igK66>Hb==`pU2PN;B&W~!1jF}+vnN?G|L;A- zGlE>ISA*u?9xy-E^5Fc>Bc`42Hc?%{uO~YqUd~7BCy~DA0epf+@a(AXq*&B8IVcoI ILk8#n8$v2cMgRZ+ diff --git a/libftx/libft/ft_memset.o b/libftx/libft/ft_memset.o deleted file mode 100644 index 27378089dae882bc51b1b06fb7c3923ba8c3ccbd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2608 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 diff --git a/libftx/libft/ft_putstr_fd.o b/libftx/libft/ft_putstr_fd.o deleted file mode 100644 index f795861d6dd0ecf4c0a8d608bcac04de9adf9a6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2448 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 diff --git a/libftx/libft/ft_strchr.o b/libftx/libft/ft_strchr.o deleted file mode 100644 index dcad44871ad6791a457410112381896c3be9b4dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2344 zcmbtV&2JM|5TCc}xA}154N0M-pvn>jRI03#0BUJ18bsZiuO5ID4z$tQS%0YOHP~y{ zMJlaIixeSM?WO9W;>@K|PuxIAJpecUi5?J04Yx=f+?m~Z@$zC0RY%%4Z+`QenYZJ4 z>u(FEKQ@E_B?6AZz)~ncO%C=;(RK-JWG)xi{w}V4v%c1OR=inQx9`EtGtcaMkB&UF ze{hh;;Pnl#f1D)yL1BZ!pUkqec>TU8t`*jw-0k=K#71KS^~UFaiEUzUW=5Kssn>U9 zwuxyAz<3MH%+Yi@4Pe@EVg?}PAZ^-O+G%FqPk)f!KYL>4L(DBD7z`21+82@GDppNV zeHe}2aw6L6%OwO10xe-4Kov*eh8*HETtL_hxJu)f%dzFh7Af>~Ntsu0u_!*uB~!3m z>I7jYTlU?cn(cb6cD)&77Z#m)XMXNrCvq-aTSV)Sa~LY&N;_P;~!{?%LH=^Mt})8i9^H$97|2!MteGuKk5}?D#JMLlU39}623WhQ4U;C z6h0T5u!A+>i7N_kByh@egzYz3Q?E9gj{A2QSNW@Kzsp+Z7c_n}_=ug;@aQHW=4yD4 z?XNVPE+|PhTH`Y&&pFSyejadEy;7&T;+9G+uM1A-^+IsU%|^q+(Pt;#r@`!j)AD?m zJ@uf{1Se>Qp7Y74%X96}Eq@7)?{^z3?&>OD)apxgzaDrDc(s*E%WZgr#5mLrRtnt` z>aQE5|G)f%DUx%dGCt%XxupQs)Ssl-Xb`66PWhI2qvlfKQ)t12W9RPf#Q~S<~DTMa>Vx(BQaN)mP`({)+gg zOrZa|q^LNhKSHP4Cwa5U;Z8VoF5MTzF6;Cx1JvK7sP|V`8#lxH_Zx$%Pt?CLd{n%` z>3g7`2_d-1^*dxFMCX>!H?01jL+aC4RIh&?G4pi4iRwFiHbu?90_glCdi`G!(|bp} Q#|+*k1BK$~j_CFO1@VE^SpWb4 diff --git a/libftx/libft/ft_strdup.o b/libftx/libft/ft_strdup.o deleted file mode 100644 index 82b9840c80d08a304ff1deead983007a35db2c5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2824 zcmb_dPiP!v6n`_b-(-_bcJrsy)T%80>&46_F@n~%MkG4fRuLtlhZ6VC?C#*~Y}}a% zv6>pXt(x}IfM7upd+Jf}QctCz7{!BEkMSU+pb&2Xh4|jg`?8bi_8|CRzW3hm{rTSa z=Y8|x+?f|uMFB|)oPw?USr|so1#|s(v-3yZTwmQWudMEDlg(V;G&`Hh zElR||+_u?S-GV#k?|y8D8F6JCTOm#bYt#@}V>ux5@ZPC~ldZ z+lsk9w{>T8Z*Nc9en_P$$u=5xk?)$F@AGHBQ%01>vSUKa4&Qe)JEDy00BR1CYX(|I z_1SSPdpz@O=Gc+>vFDBeqy(r8&5r?ynFFex148>A1uc6jlgZ$|JRTzbhml2@F!!hU zrSL;@xR-;WoE)wrplT8&O?iVfCD+0+rEV-m+WW|ay3q)=5wfB7cBqYBBBuK|gy*9x z`Wnh<0{XAwK%^R>tuGA=<-qlWe8nlb_58Bc_Ux9MpPDu%jme28gU~p2ej2qI<0+{5 zi=N-E21`Z-3U19SG+Ir|D^x0tQm}0Kg_-F>({^pIVL490vCB1oC1Tx3K;Jfa&Ff$Q0I*Q(}i*9Xr&XDwo_|EaEMQHLT1%DLA-Ss7N24)&$5;$}a9IDJI4rSN=q z_#^d&Azl3fJpg`2Ch&HKUyA>y> zTF_l0ZVr;?SF2XdXhf~kuM$S22#Cp~LBZIGU9;%=EGFks4oKvn7 z)sX(=xX&cOT-GW%^*71M_=|k`>HUh6jFbFzG)g({_f5QcVuqye$5H%J(*0WoXn*1) z*DtXPDD>LDalTOUoN524*JZrK>AgwTgb?iT{J)SAqogmrGri`Y>@h#R$;tWYH>#c4 mYav_1Z=Xz#m-|BX6D8;W8Zqe;I`D9toAOuIDUMPm=l>U4zcY#e diff --git a/libftx/libft/ft_striteri.o b/libftx/libft/ft_striteri.o deleted file mode 100644 index 8ecd9453604f82706b9dcbf95c0e9b501d73371a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2600 zcmb`J-HRJl6u{4&$(?+)$?n$H)=J5Pr4`(n-E{?NrCrh0aj8BOR+LiGd`yy|$)sjx z*6m{JLaG=Rv6VhZ1r?Cz^I|!-(&V*b@=d?(P(7% ze=1%6k|r!XzcqmJAWRPk^)!B^N)*f1(Olmn5iejEgvE-88JZSq(# zrQO+#t*fZeyB2%zqvG0~R^-ioM#`YBbYwB(1Js%9C-}`$V$9R2+&ywoG&71!XJEY= zdO=vKwJTn;wBhu8x9gP_m&^roVgC6r>Ri0Jgx<3G0yKiMAN1V7>A7YNEU)2Pt!~Hh zty-;B2{)X;T3)g`uIKtKr`@*NZnY6?#wwW$K45$g8W4KE+w`1z$@Kzoq20wrOfcWw za>@bxw`I}}pP&y4+qwvBbA}y1kj~u3-{5Iv)JW*0;pM{2$J#3g4ebg>0PG@4!6p1M z#{McCBt<_RHfDu>k9K3V+Z&zv#ihuOPR@!?%yPY2JFMfllP87weo(JF4YL&&M^-}= ziC$zpllzk!#yea$nmqL`&-QuVSmW9nf^RrSGt=NX^wxOFu(#5G zg?}W$xv)t+mEbhaS>c}$nhq*xM~pAlTn>k9u>g@?kwsBo%0k}J^{#_Qh^{(B0i zN+ub^Y8-!4_;(flweY`G_@}}z2~B%V?l*cWkg4YYX5FcV&2pt$?KvA@2F_*xX06-l zI9QUR6N?_qp3|-f-}M?@FuiWzn6JOJKJN#W+STNh2a_tKT&dUbJ!wv)wq4H=z-g5m zy-LSPX5zDA;%q^siu!to^#3ED<1op4Cr8~Am*`swgjS1-{#+1~_gIFn2t(d;$!DY? zH07#eQrCB)|GLmpsj((@sElGy2>5U7e->kt^+mZPrv+?@aSF%?;ZqpNQK6}hC}ctS zQtgSn?Qb^~++C5MWMr$cTQR$)hJPWzi^>3U{}NNZ zPdmTc;{M2UqVvmQllhX=QWqx{<)%ock3jM;Ui)tI& gSmgbefYwi<&VLV?dUh1IEsAQF92Cl<8d2x}8x~;)YybcN diff --git a/libftx/libft/ft_strjoin.o b/libftx/libft/ft_strjoin.o deleted file mode 100644 index ec8e4ff7be4960439432d56ef1773e32f8fb4797..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3432 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 F{|EkzPu&0j diff --git a/libftx/libft/ft_strlcpy.o b/libftx/libft/ft_strlcpy.o deleted file mode 100644 index f3e39eb4e1219ccd30a49106fdeeadb96379d272..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2808 zcmbtUO>7%g5T4!jTf1>;J3oYk^5X-g2b8rFf&^_zgOKUQv>Z@_Dx@m-XKk-ouY-3T z(u(jSQ%G8bQlJto0?Glw4Q|{}5Qri!9Jp|6E|pS=L%0Qj6lQkcOE$0R0Ws3<%=gW_ zH}7ZWy1C>+L0|2p!U62jI^guWOKz|Ul z)MPT51c;}R2S_{=DEJ%`$0$1_f}^C>-7a4sr3#vW@;o6W{VM)7_0mF!-V4!Oh^~gH z5h99=sh3_1P#+;+@6aDbHG&(9C*mI<3T$18e};B~2$(5%T)&g8I3>59owwSa-Ey;I z<3`@dk3P}~oMW$zBbqQCg_=L>`E92%ch;yt&aHX5MyqLgxk{x`>daeyZel#wv|Zb4 zSdNo(>~hUt2vuY#I4w-oaXq{4TGg!W`rz5;tXUtbo)0)v8@zTU;K2Tm3xq-16N+-~ zIZzfd%7NZ^Vg*nCUgYQ_p+klzQ<=Bbr}pdWHH-lG6{#4!fPY0%{!Z;DMVE%3lIwVF z+C|QB=9{Bqq#7A`?@Tt z7g@TjXN9TS;8E7A|H3jD(OYENQ5G+Qy)Z;F<#;bW3i9mz6Oa)kj+bf<{)gPHZ zxC`Wp_+^4oyMG^ZNPR?E{=sG^5zkN$avF~zB{C8p_Fm}h4;2W0l;fcY&$vzMo(NC# z9On3bu4y0Jw~6+{cipnTK{cT*=DEW8m!2Qw8T8& zqh(+!zf=apJKH4ve}x{>X#I)#rg?#WEeNjZyrS{|0^&qH3*QtsM1Kfg?h&ffXq}6= zk2pEZi8N}uKYZ!}5j^#aye0~`8AJiJxE4x|okWMsQS2#B%IlY7sXz8w|2Ld$@By@b zhM&BC133!G;}?~`__%9P5^a%R=!2Y-$6w*aPV+}aj1&44I)xpLyB=+ph(nI0enf6g z4*!`Gk446kDfTbuE*g8C-!LyIanE#q^md5xf`0`$c}+-d7xixe*!jt^ZFKFGKfgzQ wsx>)(6*=w17M0l>_-%{H$BTTleiDI01n?yq^4XE^cixn%1W;%kO)2O97t=R1)Bpeg diff --git a/libftx/libft/ft_strlen.o b/libftx/libft/ft_strlen.o deleted file mode 100644 index 3c922402e973bb48ea2a4da80f57d2799797f43b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2464 zcmbtV&u<$=6n?Yo-PmzsI|-DQBIHAXg2--?2B{QOj3BTng#&6)i-fGTJ+@b@*TuVz zLZy^K2vR6Q4F?25qF4Tf-jFy{{0Cf+xFET=aErvjytg}3Pe$f|c+&3o-uHgY%=4S| zC+nBqFcSgWgp);WB+<)#R!(M-%YJ~@_`-F z8^v&D2xjv6Erh~0=|tGr(Z(=JhSg^1N1f^>AH+dFs;;a$%g*xB*xP92-c-@&FnfgC*~)H-;zRQbYq zZO%3>V+6ntNaa!wW9;wJ93aqdfe&+s@ql*khT&#!X=OFl(>}Rbf7~EyhQk(z$?32! zC~?wi@wU^=M!R4TM`D(lm7m?UZ2PKZ+8wL#>yA~lFIvV$t6<-?jCQCC-yBTalZ z>ZqVBWB`(1683S0S3UvoxWZGN7lr+#KgWH3r~Q-2bvu~}o8!tQDON5a0T@m~qMDvq~qT`DyvjiQ%O4sUq_vzK%|*t8rJ=;Z_`aEd4zpcU=#c`R9~eQswz2O@D&Z`d1P2 zBl|@CD=7Jrr|*HjC#2wx*w9@v6wzZF=$p3wnJMej*H!Lcu74Rh^U}DFa0{P@BIjQc cw0{zP{cn-edq;80Vt#%i1BLSFj_B+E16}6sAOHXW diff --git a/libftx/libft/ft_strmapi.o b/libftx/libft/ft_strmapi.o deleted file mode 100644 index c36b41bd33cfdc94652cb0e44dab0d422d3a4104..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3000 zcmbtVO>7%g5T4!jTRV1QJ4q@10c7zP4rHCA0ii^Y<~mwY;sj8e4jEc^eXM z4t`G>Hq%aAnH=ogSi6dmO^U4Ti=f%oo8L)#E7QJtxzp*0*tJlEX4u5Q z4(c7f`QzA`AEZI)f%q^};>kM?#|Nb$6+lj4Ek(n~kUDihi64zU9veA0J$&LIK!}0N zq3K}&Ho3=D6F_MAeo*4aW3d=OM%5bN$$URNl;3>k2+0e30&*LcePV zho2CT6@ii`y+odrSjI6VUzqp2mgki{??Y5fzHrv{28oH@Y1bS2f|R<7gL}@Zq`rrC zgaGv;9Qw$LUZR04j};EZz99!i*4(^s1ZMIL%W0$vX3m;REf{sXQnOOy6WW+IHhQGt z2FKr=KyOle1WL}V?bNHe`HEJ6v{kaxPRe_JT*^WGDrr58b3OiG9Q z!;$y#i0(q19uhhTcru=RM}BHRm9HTKU=yJbyn>@7Nq@%&NYTmSBc&U5o!%yGnhVv@ z@d?*dOjS=aMV(`ZuCt_? zWp}T#d$TN(We7*rlihIWI_qn)7&7E6>sK$bIGTecHjG}DDXT1;Wzj4PsmGZ7^%+dd zvOYv`1{qCBJt;@=g}lJz<5nz#b4C#ry1nFygni$q8g7Z(#zw zjM$K`u6t&PeQ+E8D4&Cx5-$Y!2d@#5V?G>@xr-BrB#KYBL(vv1B;0FoG*E^-sWdQ$#``-re^W0ByO?%+qhdGW1_a~x)Ry6XBx!GJkUpE#& zs~cucbBsj?v_h>~HSj9o47{p%*vqI`r5f){)389ZYL1~j^W4m+?c@rt`g#^L>hRfI zv542<+@3kiie+%XD9@JaxvBxxoN3kyzI^O?4U0RuJnGl0r2nsciWB(1PcfhD-s1pY z34rThlhb`jnE2iWeTo~RuLK_KMf$P&`#|tg{9_;E0P*M?smDkTc*?CEToZ+296ZN) zLIt@;Fc8Fud!B<=MIzThu7-H8^*_(ozrqt}{R9Qqe;;B*5$}nnD=+Ym_L2a&7WIXu zd!SeTUp$}I=NFMD^fU&A?dOg3`Y3vE*F0>Vm+MaP5YKeJmFtY1V-In}A5TES;mc>jofq4kpl X>wk`z;J5@n=zLLa?o%EuDOmqsnH5*f diff --git a/libftx/libft/ft_strncmp.o b/libftx/libft/ft_strncmp.o deleted file mode 100644 index 5af8cfb80bb897b420c7bced671749b734472800..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2840 zcmbtWU1%It6h1SvceDBFZhqRBHda@$+EOx;T~n~t)`+Z5hNg(H5{eS{XZEM=&c@x@ zkQVCSHj-_SredMcmpq6TMW3Yj0}}9|`sh;wzU+(8^g*H^C#jZNn3E8}$fVx;1_9(pKnb7d z?d=6nRP+x9Cr6aeU00Ws*Q$ql3Vh0RHfY`1_9Tgfz<)-5bKfw{e z0T6O_f%C9y}-QW=bh5ADuU=wPMAJ#^UO@IzIMz-Eqd=h$EU% zk3i0zt=Uy8Q=U^Zpjo+^R;ZNCnwH5FQuTS$)+XXwxo8z@1+!GrO2u@}UT_uEty(c} znb|0YRy~EFXxUJUfkW5gU_q&ZD`|&2?&3Lf)`lYdx7F@;-xZ{DFM_ntFOBwfg;sD& z?nj;mNsAuOg!|u>pWPLdf5HfWUyusGX?#kO^jCNnDcVUKl2)%(>5a5fX}&xbi#xW{ zJk4#IR|tC`ho`Q zHrSxS_BhXo!A5L0nqv>-2gH`sx9*ufk-Y_Nj{Q@>`h9Gfs$3~fU>v%+L$_$fRA zKQQ?#w(m6CkL7v{7B|=tgFS4psKI2FNx|bX!`Gu_{IfVm5q{n76rs3h?H-o`?NhzO zrvTo*4x#{FMV}l(Jm{(4;(k$~2eEe+anXo(FQA(+$nyk0#__O+r|*l9ecTZ7$2fj~ zYid_}_s~Afc@gj2Qsm;C_s38A;^#R&<>MDQe%Z&r$MG2-zryi?kN=e83qJmBj<5Lm zC5~5p{D&NW?Bn0(ILbBk#@nAf=ly*EHEX8p`Po!DT{Y)Hwao<^)J&yZHu0Olo%p@+ z+$2z|W+}y8MJrbU)vDO0`uwTnSj|plUIUdb=4>jP#V=WYM|i1dnVc{Sv$<-jYL`Lv`Ik8Pxi`2&>;!V&dnm#;IeC@W3G+Do^g1%aHQhG~8RuB2VFVJku3w-^*wHep&$7Yc3H2-Rc`RVKJpFfG5a&nuF*;_c;BF?`cX#FJq X`L819?;XYId{Ng4pimwy$v^+!<1|Pw diff --git a/libftx/libft/ft_strnstr.o b/libftx/libft/ft_strnstr.o deleted file mode 100644 index 80ab0e169808707220fe37be88390bd2d49944f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3072 zcmbtWU1%It6h5=FceBa1JDZ=TZ7O!Ftpz2sNldj(LS2#3?a)a5i3CC8{>*MhXJ^aq zY#K|Wfi*U1UXp@>C>lhupx}exgAXO3Q1PLSZ+WZ_LIOV2w}3)CXXf5yGHxHl1GD#j z-}%lxch25(ci+{{KO2%H5GKJ{*hPZHF}gcXyVEozP&t-a_&wA3Bb`~8xtCd}Z)6t6 z?q(LXjoH(nymt(R1Tw?gJ!LNGqM3~i3PJhXyCB(yy4 zqIQlhxTu2=gg(ZP7D^cXnlM^Ob#u2wVJug-oq95FW$jXO%Ba@Nik<8qQ2W%r-pA{% zv;Um|M1$%nC^{20r)uM)<{@PlYpKaf*{G%R`N?d3%5YMH1F5oUo3%;9vQn0rD>~EO z0H~y(CDNUj%77 zAsyM*5?#XDK7c$uWK?T-I-Ynx^vwQG&ucAYeq`%_(X&@OsQmS67(yOE_ zYpUGaKj6;Ys-?VYrA#|-)e8pr-V&>XR&xpkqo_`LJ>ME4j!af07Hx~BSxZD`$_VQ$ zvL2ls)0tXi$949^I77ZGQerZW;m9&;ZLk;+xMRrnWkLhypQzpwjBdiqz5~yy~S#+FrW1=2JOvg;}_bmK6 zE_>+*IX2FuMyL&I;qAJ~=XK=5@aJ|D7oPE*_ub=`d86zh5y;RIq+BdFX(k;#i6-iY zk?Zi~b-!!m2Dz3R4sQbZ8}AG) ziO>&m{2(8xvi>Ud1@vy)BlqNe^jbh)=J=%mKh1GAz+d6G65tyg&jk1tju!*`=Nx|- z;OR$$>>F>`soPbKlYFEa`0G&Oe6T(dPzy$`UYf|}a#dpr)T&`+RmYfiK+RXmWdpB| z-K$E7@z&x>FW9t;6)vM2NVO}Dp+5KgSZ~eA=HCL98hs*LDBzV?+7oD*w!sNwa-vwx zmJMGz?0FSaIoTYJZT_b2|w2%d5W_e3F=IVsK^ab!X5*(Mz6Ho5RS0zM1IpFv-<{jc!- z&+-7;KT*N`tH_Z=^d(MR`-C6XF9g9ykzb6||IOml{7a?v{U+kX_%b@h+^@5n9f~H} zd5^p3?=4#AB9A{!z-Qw91=YYwv-&0Z`4itW)sOBt5ij^l$Ti#l4W9pKz!`v0y-)tr zP4d%Uu3-KGa`O3YI%c!@?AQe!FY?j;$prQgz*jg4){cBX^P;R0K%+S7v0(mx04Gp% AfdBvi diff --git a/libftx/libft/ft_strrchr.o b/libftx/libft/ft_strrchr.o deleted file mode 100644 index 4b6be039a0c8b533c5aeebbb0454d07e5bfcae3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2736 zcmbtU-D@0G6hAYwcXpdib~lNptrc1D3o4mOVnka@jL7PAZA8?FD6;Oy?C#*~Y?+yj zFjfk_18|Sc0J^P=IgMp}icK%aB9ns?q!1=;wS)PAajUV>f$~(`9P4Hnn4xjVc{=uBxnVY3Jz#Iu;ZV1 z5ReH}CFMA(Far$=NH60Dr0hI?nY?v2^fp4z4!sXhsq)qvfj8MFrJTo4l4c8LW{K3N z1f$4WfFx6}TIo1`CttP8P9wi&x}Mc`^79MYoHjT6a3=`Pzqf$iqV@>X{gUUqZnf!Z zRnVQfr#IUz)6=WfX1TLw`ugI6-m)CaYnryL+g7FSuZIed;YRYogDO~#4;I*MtlV)t ztKpcnJYk--VU~ROZ)*!T26u2RZM*=|dQLhvo=k1xx!;XA4H7z1cruf_BtJEw%4^5~ z_zs~2yoz5*lK#p}kfPs(L()5*OWV+Gd#yD)zYy5LiRs}<>6TNqJ2ev`JH!)0@%&oN ztZU7%Hx31-PPmelSZ?eOrm96Y{R&GI*_iq)n^1paa*-v~20Mg-WRcAjS@skgKgE(7 zyA$EV2qRfmKYEQxU3m6*2oV(tzuhZnPjQ04XSqKU!5Ozn-4(%U zo|D|ahif|C+kXx1hd3_gZ*u=puH*bdjNjt^i!pqi`{fu;O-|Ad6^ObQxPLK*zsvp2 z82$%o+G( zMEZg=!(_{;w|UGq9nhS%Z)(pxw>s<(M2Wo29y2Zkdr9 z*n1jQ^~)91Z?{PQU-=3rh~7UjpTsZdHv-_A&MPW(zX=ofS;UsPA^Jez@!rW|AbQUQ z?|BX$;Q;aI|KXDsh`_0Kd`(37F<=ev7k3YEmoP9Y|2PM~6p38NxhD`Gwf-gtn>>Nm zPyHER|GkJ2We!JFuJgRhQ4noWUuf#{QTbJV+38)1ipUfCB@7BX%G-)IOC%8Iei-JT zjnhBpz+;hIGR6J{+(l#5`Q6};nfT9ie)L9&e1X4(SbR+g!3|#j2XZ13=eighRsZIQ x`t&x(>(>xd&J5b9F5nmnZwOJ3)=wh*&;$4yjriG7Y?C+TRdP@$kEV>*{|6CN8)*Ol diff --git a/libftx/libft/ft_strtrim.o b/libftx/libft/ft_strtrim.o deleted file mode 100644 index b08e9b278f581cc6c525f4b77e0161f772609731..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3736 zcmbVOYiJx*6h1Svcb~~_ve7nuFFrxd>?XF*)=*P*?RITdD$!7^={{zY#eKwm#8|Di zO(TsfXo|nYAL0W9f9MaX6(v4e8U-KyAs7)Pph6-F>8~!d5YM@D?`AUHAbP^ix!-qQ zbI;72n-`+{?pGBBq$scpmXTxu2E5DbKECXOcJ%CzP5u!Z|0@!kJh~X0tj@>Ak1j&s zqz_$iIS+w}R$9(P>lC!`BY|3U@z{2B;uZlWI?3`mIg!lMB{mtYFT6#IndlrR&^cDy zKlhTu9jjI61Jm{SH;^B%W3qPgt3~Hx<6kHkIJfY_($Z3_c68B9H9k-5EY-#gvz818 zZ5d`U!xH&6GEmyd3$a@NZ0z=aEbx^gZ|@?SF4AqHuE)mDM-H9K=z%RK>1H9Y@3yUTa$y1gBDuLE!}PzANO1AuK^ z0iD+d0k{G{uI`&a^Y8Nc@QHeE;f!|;DlOiTr`@aE%$CC5saH z*+gcw096Cm1-!UvunXUl`x0%QvnD0f5IKvhYUDv&GUom30u>`=i-hqyU=#26%V zaRe_VNbwXD@!xJA;5u{rpd2{>%2=DSp~dBX6(8S5vEu?bQ zv;meTVSiD|m2}$3=)>j=^Qgp;XzLZ`@m^-_&H>h$VR+S?L(KgRb2;P8*UQ>6ED&eT zUgkqubNF2_5^a~zj zYtU~~hTRZnx5b$oYYZ?i2B=6Ys6k7+PcX0dC(gK>r&%jnTH?&p%Un8h;O%%nW$KwH zm{L_4cFEk&s@D(D;($v_c85ohQ1LG$67XjtoHXQ{i6%a5yG;XTr#RNk&*&PP1~lnc z%65cpD=Cg1Uxm*gAGF*jf9H_9aTWiEkSC$-n&XK>;L}5J^hICA!AkPBY39Bj3xCOz zUg8-WUl#a#8-HBj-)#Il0{>~_PYWCpn!Xro|NCsb+}Duc<$eVOx9ahMo;H%zp}|Bl zSu#dJFB!RnUNOchpr?xYyn%C`&W~!6M!4{$rFp2Nt0N-B%#tl+ipz(D>60@GmJtbh zp;$5WJrDMG;lYu55_B4{gNbw+53!*Y$#U6(AqZo5FjGq84ND@NwK^SZi6rW0@?4jS z=|m+#bhq9uclrPIXBcYjugvrueVi!2n5uE5{#u33E#j=-AlduqfpMrBH>{{P#nDrZhlD&C4LhZ%}PbY`z!lG{iAb5#>@BTHRNP3 zaM_SCk#vX6XoK(yMl`E`Sk#wws6L&}_WH+>)AlVDQ60lyL&ikB%uVqm_WI|Mv-ght Q&Wgh_BmziLZF~KH0B0uE=Kufz diff --git a/libftx/libft/ft_substr.o b/libftx/libft/ft_substr.o deleted file mode 100644 index 982ffda32765bf5653852657c5f0d0d4ac27fce3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3312 zcmbtWU1%It6h1SvGdoF|-Az*aD-!S@$!wa&TH9J9vO3u`B1)tbWZj?1?&9oh+?fqY zA#E{Q-7fyr7k%lA3MyD%6cHcPP_?c25W$Ci%!8tZAQ4{z3h|sf_a@uxN)Zp4Irsa{ z&%JZ*y=QYeb?gyUQ9y_SM_~&I7GTZX8jrEz7$neh%5MB@FRl*TjfJ&FebsJEt=NkT zYY>027rpGusdaL`_633F!rHHd>_)29OszJS>}INE-+hHJ2DKpm3eAE+E#^kn!>N_{ zS;jU~E6lOEfXkump1IiB<5I$_^Y>s zPHWA{Ra={Eo!f4Tke9cc*RF1CY%ttNt)pJI7r!2U`jXP8+#VaywOC^3-dLZ~Zvd!q z%%kmq@c}J%sONAGK;$;iVn=&=aHv}t(Ql0H3T=1p9v^scH-Mpo%Bk@IfavIT(2Qd; zfUY~3f*&z|1RnsC?anqfmS2A$p=t*>tynA~YU;v|?8;Mw)c6H_8|wL)5Pc9LH$)$Y z=$R1RgDR??Kh99!=OKEWp?=B&=G*vUa~X>H5steyiD*RohFnl0uC^SGKwDzox(QRc zx);<3^KRBF4$e9?zg+bO_l;P?*6`5&Iy3G&HG*i=x)-K{j9<_BLCwlT(wp{^rE10T zllgopTc34;p`?EEJr{_&i?dnV<&$?PGW;wsWnVd;*lYgtB*A)O;Pc_-5qkA)#%9 zhhmAd>chQ;`Wt!x6woIEpP)fels{v=r08Veqa^EojXpf-y0ev`eIsnlN}LQ!n=E^I zw_b37d2*1PJ9r>-V06eWd-b`YqE}Dm%7K3a7k}OdtXZMpOj{+IynT;wIl=sl6Gm84aRlUnd>(S$Sw=tndk?k=qGOLN!*rGmwR{ZNm zWTH->*G;JRq;(SwVVFp!Ud70?zAdfyqFciFNmtW)93%UX-FZZhr*-X!9z}CnSB=AZ z_X$*KT`?xqZY-);q^#dUA_Bi}$UI?15wei$;1y4RC-T2TB3K1(Lo?U8g=;vDSLmcmD<2U;f za(mi%%5y)*)SyXdBigGf)-UqUGcSPqxE6eo5d5%f`XE;6~@vm`Ql6a~w$!w@t zeQ5pfa{PkCzt8a-5`Tr`cO?EC$8^(4#CN?JLimzv!GFc^cM|_8$3IB?MUDr#rW&`` z`4Z>lx)~-|1t(W8X0o|l&6x$O=D1laaOMKA^3_Vk!9Ka!41_QCZtfVymc8jJ^9pLz zWi787IM$<&O$}ii&OZwlHLy&!P{7}X;&p-8q#RB-rOb3KTXCS0b=_)yYf}7`uyDd4 zn?pTcA^rb__O<=|i;RcpvY?243Q>4&#h5hpd#a_lPsEXou{ZDad`wEd>-3KXoiAC| z`DGIKg8XP7`LbXa51_f}k!3$81IZx!K7e+aqmcJF$^LU|%OU$7L|doz-^B~E!UJgi z^hxsisgID0_)Z)$In594_k!SB%r7+cnNIN&d{eC(#6QX7B{!JwbSOIbz7%pZe7T!x z&hU7uPrHck7u@qW=u|(GJBod#`cY31@q(v5C2E1gP5F$^Uy_Uxgy%4#)BJ-S=BM8V tdHy_d+Odr)sx$a(%0ccZ>O$)$k>~#qIpM<`_-l}#{}#s-M@LGY|8EXEoK64$ diff --git a/libftx/libft/ft_tolower.o b/libftx/libft/ft_tolower.o deleted file mode 100644 index a1107d94c4aceeb3e907afb9857f96af97fe852b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2184 zcmbtUOHUI~6h3#RgFvAz;Dd*eE)XS#DIg{a36_|OB>urQ%XJ*U05T!tEB{E~amJ>PlVIdf*7#ip(+jDY}y zF*wi!3$WumI7iFJC^_AjAthgTA8{A%7DUQF0?FU~4(C5Ql+(u)?;G1pa zHe!1(Z|<*tW5M^kncc6YQmJp}{zulr&IZ~vH4r-06=-3tbpVQvWNTftT@8%*NB!qI zCflxd0H_)$oSJL{@b!Qi81wu6SmO?^%KhrgcW*-dD56Lyf+mGg9I)Ut?yB^&T!C^x)1I+YdC8pdR94(yj1;%4n!IPz^Gz zv9X|a*O^-Hrq*w&&KIp$Z85b@Q)@CcMOPF|RtY=0uOa1wpQWP~d>03=>5y4POD(8? zQ&R&f&~O|^AF8cV{wOz#42`JERm3O}FMR@-qXNPAbN!^mYy3>2Q{pMl2-nYWNsX%Z z7S9*{z+d6KsGH{cgoj_``fU%N=X#h+swvkUOA?$`4M^f1Uj3-$7`v2%tHp zoC91JqMH|576g}~zK|!7uNA+=9rVA%Q-4G*+4XZRvW73+4_zP1-vZ^?;qjMAkszL5 zP%a*7_3sz&pXd|yuK|~c7d(B(HLuDqG>di_Uf&cNYt;{NQq-aP^jGxOpFvKYDmf@t gaaAGaUl0^e@Ydf#&f7cko8{y?QVcMDWTXtzJnO-`CLBy?QfJ!t+GVLR#!24$z4^`8+u7ND7Q1;}Vhn^Z zn1F^RSb!Z*;~cFXqu@u+_>J}N>nr7rSb06R7ujB0DeEs{`~Fud`g~Z%Z9G=?zu87^ zBewVQ*8b`@=6}DN-u+ssRM^ggkF1lOR=X8h4V>s#J6V?(K+=%x@4a%7*1!=8Y0HKr{99#!qjY%`wmc1NF~IuU zkF;!JGfpB$izG_hRWj}iAEaCskCMIyccaiTbf9Y=p!O=a~e&mT0b0plO{2);90de3+ zvF@B?TBQvoR)hNP_NBRSbL9MqN8IBm!0kJV2IqVWzZTwR{;4$Qz#cy#3?Jx1vACb%H`neg|#Fy@et_#j@f%5F|_)DZXL_EKs zY&0c;UX@>H7VS=P`zF!YtbTx#q7K!kzoNT-969-BC5Nzz gt1e>x1wrv7?)qEExqC-`vz&ZK3JS&1H{!1U8~%944FCWD diff --git a/libftx/libft/libft.a b/libftx/libft/libft.a deleted file mode 100644 index c0094b05b30ff4cfa7843d4dc4466540c9a582ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 121404 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 diff --git a/libftx/libftx.a b/libftx/libftx.a deleted file mode 100644 index 0afbcc0535967c36e13991e2662654699745180f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6070 zcmbVPEsz{V6z+-$ut0!7LKT8KA`pn|^w0cVQ4t6PB7!Oqi0sYo&fX1~o!Oe5O~MHT z0ug~gAR-V51OkCTAP|TM1OgF(Kp+qZ1OkDe`1*Hdu5$ETuIk(E?(MI?*YCZ4-S^7t z?NL!(n@snHe?hOS+x^eIJ<4M<UT$k6i?=19yS@ggkx@xCR^p z-vWOT^2Al(ec(&rH$o;a1MdN!0Y4M+W8U65Bx*Ov(ZD)VC-w)4?>=M6_^8`1HTY*@iOo>@CooE zA3vfkrUdwtZ(ZkCM=HBAX>dnPywX%1S zm1Vs!;>(?)Zg+Dt3t#Woh1vs}ZBwZ2F0yKomx{9~jWgO>`3JMs*+#95X3^%2YHxP! z;wWootEFV2habC6UM zG^Ax-)|H*MDDzD19rL7RW)AF?t;4*{@3f8D1=?kyd1y9yyK9sW(19V_BZ9`P!t|M) zwp3BinnSsi?ySnJ*DGi9Y^yBMzixCGbVvF&n|IXR$=N&QZ9Vx;H*cmALk%EDwRo|0 z8LDhr$?2!~f2PBIv)EW;VTsAvTV@xMo_8xP5P__yW_4An?Ctku{>tgACeNFh*^%qa zc4b?vvsO7lkM>83?Mx?HlU2)ljd)afgDh1mVqqk^O{*@OSH0{6L5gGQI&Ti$A*oDK z!<;5}$qwZ@b0OK@);S=*XEIUMLb4-|^7Ld`?p5W7HDhK+4<=Se$&uolG0^ibOxK9jhdT? zj-<@8_~%PKIG(<2`~Kv;Nr+ljsb(iLDdL z=7@&lbCUBxK1U+8cKB`P!?TYNF_((2aY{b(VSMAR*86osW{axYZybl?eZ_^HtGEfJ z<7*BN?0MB(L2b?T+l<=QKMP6ZVzxK+`HJzuy^y5L*1i$C!k%?ybBgQ9%K3Fg($C3M z@JFugX?zAh!&d{{G`2AtvtJt%wO<-Amn{B!UkvgJ7AMZp)@kxK({26f?)~9eph4`4 zu3tB{=SJI1gYM$@>biU0a9Q`n@^WKaj}14B?1k*N`Gl`%LR0&+^XYPG-3nbA?$gj+ zzuue-V_Q?f<n1}#<2>6!;y=G> duhwC|u-N*_%f&Go#8*&e2fQ}(z`EvO@*iLPi_QQ5 diff --git a/libftx/printf/ft_dprintX.o b/libftx/printf/ft_dprintX.o deleted file mode 100644 index f17c096d06e776c6d1079b8fcac1fac601d361be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2528 zcmbVN&2JM|5TEthP8t*ABvlJd)fx!|63Y66&;qR>d<24u03ii&L1t~Q?N!$6$li@y zR6eRyl_DpCDe}e-n{wE%$u3F zGxnYN3uhCC0YU~GhoK}Wz=PEAJQp43U;-@{7uNn>SbdROyS2U+zPfj7{oeemwci(h z6zk`7SXlincm3C5seEYm@F$-hIePNc=`-_Z!I&`iWv5bRHuwH?cEXrU10*a2C)0Dg z%W0wm93&xoH-Om%F^vJ zO0(8sXatq|a@X~PYgP>kexp}tb=pp^P^-1Pg@-nfimu2g44?`%G{xzk8Zk3C6!oc=sDb}f~7 zmPn)Tz$#|{0kI^!+=x+uIsAlM)FwB;77zs!l%`dbCQwD&$%OH3AZ0qK#EsqtF&|fM zn>D~L#>mf9^n3VBeMHgMHwJ_~AJG`@QID}KZA`dY#U$$mpJDku1(!Ps`ar?yo?|S3 z#GLZn{8o6D`gHs#+e=)R<#QT-o8?6f|C(i6!*8P|ImR_toE>#Ts)bv)Y&oPGdStCi19I`&#TSb5cbHXqM>v z%4EtM{e&3BFXK{aiG>Lj#IxitoaRN&s%i9tkHEYN#@L>T!N}zo+K@T}wz=!EPM{{P z{<~a%o*k%udSku*S;WXh-U*Kp71{5;0L&%6aQZ%R{y(#U^%noj?5~-@KN3Jw=m=*Jfita{Q^^caqstlLFtnm+GTKwzu?~>rssqZ9N>g5k)V)ndk1xK@gK*; wr+*JU{td*;3meoXcX4gfpX@L3D1Rc62NJ*|Jm_ynx;}$X*^vB3aOv^i0Br5ycmMzZ diff --git a/libftx/printf/ft_dprintarg.o b/libftx/printf/ft_dprintarg.o deleted file mode 100644 index 2bbcb2d49e4e2638cb8485e4db8f06466fdc62b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4760 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 YasGSAhV~BGO_sPvNhp*@LyGhN3)A0J!~g&Q diff --git a/libftx/printf/ft_dprintl_base.o b/libftx/printf/ft_dprintl_base.o deleted file mode 100644 index 0f75c8d03c7e6d6a775f4af28d1b5d514817c43e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2904 zcmbtVU1%It6h1SvGds<;yPHI6YKtuXAflN~(kN1EnDcoGGePwv<=!kmFDGUwdY-`$lzCRUekyQ|?XcXe*VU0L3M z%=x{@`nj;Vg>usu_B!QZ^cG|;+=u4m4fl}(rWDrt%eSwOBeFpZqp-eOSifnb>Grqd zZa-Xe`*RyH%F6P(mbnn$$HJUGrEm5No9@bw6K8(VhP4ONqo$G0-hD7Vtc@T=&(JOo zMn^X)j*8>T$;=7l%%B`Ny#U?w7E zCofCL(gc*WVXhqdL71zwN`5`J=yiL|j-Q*HaweRK@x!4APM)1YZ`yebYC*BO&~5rb zt5`1eJf{MAzt+n)I&H6)uT&bPaM26$(^L6&({J_~UaOUFHOsYNDKD~W>H>gEL9Gft zv^u!Gco9U411{HvCivwj82Y_t-S?_FBK)_qsR;mgMGCanUI1+=s~y~%v@hZZI)peq zB=i~JL^}JX{`5Xe{|p%bpCgojhw-gx+TZDYq%e){gr@!=?1+#(dZh7CWi&H2WKWrv zHE$YL-Ar6F?NE5O)j(Y{_gl}Iwsq7rFPl0N?3WOoHOCM=glKNoOwO8#d8E`ufEF3L zhSZ~`W<90v!FuFo1NAqECg88FK|uqy3*8kq_yF$$(J>%)>0?0y?mXml!$)H4i{2u3 z2A^y!SDJJ<2jQogKv#+;fS4aRLb@@Ws*<=k+2{}9vwgqNmK72nT~9PnMj|Engwxa^ z*&iu^n{1Q1Cx#RMIQ#dqrmqq2>ZAXHA7Nb9L;WIgBeh-68|;hefVSkHXS}NLKVo0@ zNAl?$lbjRpopt1Qc~`;Dvj2gCzs0^>PpzZ*~%#s#gx{ z#ZtN4^%lYDdaaTZcuN5|l}@|u;UHi}FX(bO%4qtv4mf@%@SJC#pBwK5rOGSdv|5Yp zVyRliAy?nIxnVTSb^!LH?V|NsP2b}UyhgFsEww%3FN6V2sUnWBJ4d5~MFpiYIK5Zf zr2ns6#|7f&S+4gEANXG+z?%9Q7n*;B$@?K=Gi=CnAaV6B(qANw^ zG===hdEZHZwcKB7nj3@iukvM}`r;zf&c&j diff --git a/libftx/printf/ft_dprintptr.o b/libftx/printf/ft_dprintptr.o deleted file mode 100644 index 5b1369493ffa8b88fe6eb934e06afce8baf43c4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2928 zcmbtW-ESL35TCpAT|V46UkK6 z*S?v({F16DAVh(4aOepXAU$wsFNWqKj3aY7*S?$E_%qpF|2x+Xc5@r+yD)m|1Tr=e z`9=iokkQWW{c!ZW_Iq(GtbUHXBCPiy9~;>@@QgG*Ain7oJ@=>69#}fin+8$Kues9 z$KwDo6G;=s;*^$nK7Ka-`0B$EnPy$R1R;kpqJrAnz z-{waPyN@~)<((^_tc@urj|~iN;WnQ_j2cOcy7P9Y}IhWait0B#}_gU7H}6y=}9 z2r2qH*p!}$;=)52qN5jzHmc~u!#lcRys4isDtg>l(6x?!%Gl6{jZ1pWctsx%bQRGl z<1WGr`T(LG9IS+>V!WUZVLg$rul^Fz82q*0Z%~7Sx%3Qc7|~BO(EGu7C~zbChz29~ zpe7;{Qr#9aZlE4xTUKX}z#n1~tv)=I?4M>$D;UDIx8Ic<ZeHv{%7w+Ky%V_L>i7v0kg$_;4`8!?!|ylgMcVKEnBODc|7GZnmmhu7l~; zecOEb)#Yi=w~E)nbez>%o}L?gl@3z{PQGAyc2B%hbp>Frbn@;wpxuJ9rIO#rOvJjp`uBVqEHr13@SP+DPs*hTL$ z{Q}DOLNFH@++u*@=zEJ7Ws31%P*eR3`$B!khPWRB7xS03umy+o@9exKgJ?&&bPu8! zh0HQ|n;c1^+)FstZ~ebAxWoape%j;c`X5G&C~0i6e9Lj4%OKjKzRhoYFv)`$adt5v6Z2FfYZDDb_FG&(P?%e@Q-&;+)X_;XkZ{c!7U{ zSaePZ!OvWOgB(esTzZ%K)t~QEpMLek{6&3w7q!d#byO{E2eQQRVqa+fB+>fcBPKW@ Sfx9KX)Vu6c9Q|dE*8dkLxGUxW diff --git a/libftx/printf/ft_dprintstrtab.o b/libftx/printf/ft_dprintstrtab.o deleted file mode 100644 index b2635fb106201e8cf6317df5d7dfb5f5f8bc3c04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2856 zcmbtW-D@0G6hAYwcXpeP%~$D%5ncSCeK0dgj38}nQ)P7C)e$Rcwpw7^Si%u z?wxz@IlFHaPd%?|8c5OL7~JzD3UD}k&t8bl1sFxK9xJiSh zTg9zdZxrv8HeTE+tX6b&+y6MgLu3#L$R&CA_R0pqU32W zlc$ZG$9G1*^5!nDop_f~3H?eV_QpO+JSX=B%fn9+sVU#|y%4*a<6Ds|I#Z z@7j%4)9u=|TB8!Jx}iNcYd5{X>o#29w|%c#57+ECs;(vgOa*lZFc)BS2Yts~1HXl9 ziGr@T61Yx*I9>0YTMog4|F&M(n|v;4=UxJBZB&~a%H}@6^LP+(dPr#3;Y5D)9sRjs zQ*R>!;5&peP{y~WX@BR3NzpOlquEinL!V{){%Uh-W;V9t{j-yOv%R3^M~(~X=i+{$ zbVJ8+>sBKvm_0gSB*us)G6P#87l}RVV%S_1dl!YiEcTlXF=@_=hZn`*s)*eNr#28mlXUG`*D*%Tk_v# z+)?;c`y`!2?eM>3|AK-`|9u6gMnXdOheXc%dE&yStR?;-`vumt2kCwA8CUlwmj%ml ztIa$I1Y5!lo z#}w&%D>J^z7yB0pu%`V?3-v$3WF5${1vX?IN?ff)`gu&(hvcm>IL!d@=zOUrNe(0` zo?BfL4SmDoP1aJW+-Gq>#fbX|gV$srYnA&9;{Dctjlqi?K_? zkxoh<<_jgynf8xrU&c%P4aC$nQJUX){vXImiOQuu(eL~g`piFsTy_34h#9B0Tc|GL ivm?tKFZYGkPomC$6EVq&3H-XsMfofH6h|r5`Tqfph&x&U diff --git a/libftx/printf/ft_dprintul.o b/libftx/printf/ft_dprintul.o deleted file mode 100644 index 85d8866aa5c6a601925f95b1bcc6cdd8d0125f40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2520 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 diff --git a/libftx/printf/ft_dprintx.o b/libftx/printf/ft_dprintx.o deleted file mode 100644 index 6bcdbb9f71af3d81f3fd164a65e54d3ddafe5070..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2512 zcmbVN-D?wD5TDH^skgCd+Fq_76^)?Whf6mf)^Dj5sm2c!go<3a#7(lBEZuA**_8NE z6$GLBpuXup;G_8DgKy#o`WNUQpwI_jd@ER}GiT2>yQGmyZ{&`v)r(pywXG@FUO835J78h0)yUPz3RvykQFMcS!X6q$7l!=WxX-2y7C0Zx-k9_74Iv21(E^lcWt_#a)j*xwTH} z1yY@uxH}OSY#e+d#-Emr8woo+kMt)*nS11d&izrPR`@#0hwQFt1 z^Ls`Wa-QAEHCj!pldD!6W_RB5bCbnf)A5{6!*bo6>r`yNmlF=Q;tO~I*fsE=>vf#E zXVtQV{9Y=5QY}c@jZ2{QGTQj&flZIGVLK3`MMQmp6Y0$T*vX-!jRq*5!xe`;xNDmB zGd)C%`ix6ca>V)s{jt_$eOOD34}MPUN*+rLUP;8h#**k8SVip55R1c))d&^n{ZF?} zt;-L;4n#o*WmpxZ4ph-b(qU)=*gzz+0Tp$_sFIK98QN`?wp5|6`0bWwnx6q&E2{zF ztP2{%UCfr0d3*_1s~DAf#wVowmxA-11Z`Jvy61?LcS=rqu6-*!a~)y)u(ap6j+9S_ zaPedin+@SNrEG?9oL@oIXCl6TArK)eIpwJ4S&(=*&jDo^!Khi4ZoO<)Ds5{XjJD;P zhHv$JFsiL))56CiEjoT%ssj(lvs++zE#ERuUznZf_-1tu4A-4+md#oXAA7wYrt6j~ zX2)9R?>Zg>R-0q`SqsY?N-h7O@a#s*CtE+U+g)0sq@E|e3C=< zo&m|Jk1Fj#fiQKJNIy**63ZG0m%cj`Q|T}dXDmjJyj`mX#U`Te{?jN%t@sWc~r z5f#KU=g*wp51&<2@dJ;*j0#5BPDNnk@`g5~R>0Qwa4dQ+QT6v^{aNWi^;3_-^&5zh z3HJ$)g7VVu0RxhAeCB%*kMe&l4d{NA*pK;HRPtH1TZ#fBY##;KHTBKXJ?wvo1ckVM zhN!-%{ymi-&k6M}g^T?ezl~T_s#%%PMbxVlw!MzZsQ51<;?uuIIR3wg>E~BzOzz@Z hqmR;`<5B)ZEC&+63p|8-M>=lk7ima-^nVhL{|itI+>8JK diff --git a/libftx/printf/ft_eprintf.o b/libftx/printf/ft_eprintf.o deleted file mode 100644 index 2b649ef24bd33cd7c2f5caddbf1be6ee5924e764..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3360 zcmb_eU1(cn7=BMq{@S!TX{)nyA{GBqq$gcBu}q}~l2*7yC+_oZjYC)l+pF_pIckX=-Lv4 z^UDm*on>(5B7@Zp2JI^h8rKkJo9#^ojavwbW*fE$R)Y-IA`I4t5l(F=r*tf?L>py_ zkG5H*=;|`F&ag_+a~GL)o>hvjU18QbRl*MEFb#HijKTRb17k@UJ-V!nE}T_HpS!4x z#y1kJ2GvWn+N^rZ?xnTHI%};{pR=vTCPA~2AkXIdG=sHC2CL%?+EE7aTZwjK#8x*G z?RX^7jNiBv|7je*1w5Fyd3-TKNyN_*kj4Mb?hueRb>6DPl+xjp)|G$1`39`ecI z$UVEl1Ja-$z@s8L=${^z!}~%{g&y5GGqisvfb0Vgr)Gu#ynF93eZ!dB{}9OGsZb~c z5Kw@;f{!rh*@0lE1L(C4fRH4SPu~ML_yorE4@q*Eg2VloXJ&}1Pok+Pm^(tbL!l|O z;U+#_d@w)TRDDc$zf2sXPiI1gbcj?*DdAi8tSs7A9l`5aImWDk)3)^rvj)l22RJ7P z-oTp(!6ke#!Y}o_hdPNT-20)eLFf}y`hLcj1pUMfhw1$TKGFaaayfk1 zzGacyuS5Jp=+sh`+jwh{u#<##FFrCpLPSO4?UQbg3~~p-k8yj4gZFWr;9dt$dG>Mp zevZ^uXEjiN>>v0iIWOwseq?gc#j`sFxdj)0irZ{Apf2)w`Mi`}{uZ}Sy7&{^e%Hm{ z=Jp3J{wB9Sb@7+EeZj?_=JuB^{v&RG>*7V;?_9iy|Ix*-aQhb*|2?-yIMSLp*Coq& z_j(0DO&iG?-Z#l)#i)Z?G4i@<8H*OEsZya};627Ys#b*$+Yx3lQv$VEvJCa$^9y5D zOHaK9DxGajPp9#g%{q=Tsr59!C+#A3mb_Uscv>T;Wh#2XaD?IMSFx_8ClQYq2>&1X z7}Ge$LJB_Pl5TCvCT}+(V`GaUm5m<$a2b6P?2C1}FYlKWwRDlEvs)Qh%?Xz?0`5f-f zu0a%v3YDU~5Z-v?81VWXNXukoU0I7WoZ;_~EX6|;J_11lWk#=Y1xASLrJahiC zcI8b&2w)O$0gg0A0q$Ezay1pJFprj-8@qq)-Z;E<;}A;U%;3Sj+9UFR_zrFxKc|)? z?bZ%9_G$+=&p_$xWdcws{RZc1hvRNb@@(VQT|rI{{}>L37?T3+)gFELdn4Xy`n|!` zQ}2P87pIDgmRX!TcA_{h7Hj~+L2$vYE}6x%g>!|Mk6&KAcpSjAz>v`8MS$G;m}0{hYV}Ed@<&1rbiFa-jORH(+ z?0{t(OIh!QNw3@p+^}8ldr|Cn!}98yv*N5QpYElHt6!|4w(h(Ntz^rO-Kgy}pc1y? z%67No#g#^5+wJweq_VzN>G+`^Z+k&d3H*918B}&6KTKL9Pe2VC&8HS=$KE0-%FX4o>1Og!rd8ON=Uw zON_3Fk4x#PQIXA(u=3N_E!%#}GVQjN|HYdA(=t%Y+uvDJ$cyK#sq-EU% zgA;jy>m=SF0jJUJbUd6LX%Q!pJkC7)u+;@8>?WRb>Fv$sIB^@-MjZ`K5cE4+ZnKHw z-5&D`{Lqttx4qSh+>SSL!$EK`PvX{*f7(fT)NQ(nOYo|*Dqr#c**?0e{lt-$WYgSX zKys>=O7tBdOzjyuuhNFZ{hMh3b1X<+Laz2LAK#IeqW=XV@}u96CyDVN5TpESxK#R4 zD)?<5Bfh`NSyl~ymC6Syh_Y^bdICl+$D|?mGhsx!zk}GM_urTAFG~k{Kh;=&|BEu_ z3UZb9q~BL6h%)DAPV-H&?mr`kh3=;k`!TPNl6{)}HkOurLCFp&B6{?%<;XgeuCe{?wy<)^Q`p8qOh=9OU= i*-cy{;`w8M{E77Z-y^2ij_eL3c$X9;@|(h?=l>V{4&q4w diff --git a/libftx/printf/ft_isdigit.o b/libftx/printf/ft_isdigit.o deleted file mode 100644 index e6094e703f2370bdbac435bdcf5ab45a524c026b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2176 zcmbtV&ubG=5T3W2P1B~`q-oXGisVock#5o-f~`;^5^JS+s6F4&CK_{nRz=qo4m-b-H{jrAqj@O#Ak?)p9Ww(lWajSfe%swX+Sxu@jJ-LF2WX{Zd&6jb%^p*x?*pEVJG{;wKmEc+ z*(G&Mk=6LQDRq=3!T^$nU?QBEkkzH=jp*gc)v=qC0I~uShgQb`Len6t%h6~QGd;xR zT`AJJE*1P;<`I$vOb(+sV6k=FW$A6Z>v`Ff5abF?+ifO|s&1E)EwkZRbvrpbr=_*@ z%zU$RIQx7Ky#?(Wl-#`K6s@x5Y6hh2l9Q^`Yo?PjjEdfDnQm%fE>*K^%c+>vYN~1# zN^U!~(Xec{|;kRAWn;f9vp6|@mJFAk+6*f zbaS{uFpWE7?58?HiW-TF`EG_!)sex|F3K^cM24D5EPPKHFDbao;j$uqR#;O~FpJ0k zb!VgfD-mCy0p*LumV}hY&+m z*VI<-=VlyNH=co3t+r};y;#JLtK37cTDHjnvyv}0^qT1_g43vB0aq`e-mH=SU)je5 z{`W5OCHYH#F95EC^BqH+Ffm7hp5ca=Gl9p2!8OGObJCH+&$C<$739)f1To@%qu&ma2~WWl)RZ&LeW4P((3SwW7WIWbgLuFAJxNdR zx%|{m{lGrlO%L1fe+!i7fX81a$0y?X1w`Lfzy2Nap%Q(f{te<1@dB?P*6*rE9DI!D zehG37JnUCL!a-4o>eH`cus;0{$ZIEcR4;LzN-~g?;z@$_-ys(49q}G<@B=w06i44k Gu>LQfvb5U( diff --git a/libftx/printf/ft_printf.a b/libftx/printf/ft_printf.a deleted file mode 100644 index cbf2819c85ba38867b2f809ce20d5e2fa0ea2301..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55904 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 ObyNVx!z$%p|NjTl7qf=| diff --git a/libftx/printf/ft_printf.o b/libftx/printf/ft_printf.o deleted file mode 100644 index 0a01be8915747bc3b8c57b7741253e13487a3c42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3344 zcmbtVTWB0*6h1S1O*YxtBwAA|67iNGnN8D*^+K8=YbOx3R8y>2r?b1Wo58)YGrLB` zno3t$*2Po_eb8cGYW1PDFM%Qi1B&&rh>u14V6})yeJd))bN>1N&1AYhhzDlAbH4xF z=D*Dwso5uFNdh4fOu>dFSb#*&hCa>IX-J^woYuUm9sP9)W0bMg%HQkj%Gk;xgR@Hv zPM>0M@;rm(H3scV3>sGuW}EHn3>r5Ov}POD36`S_RuT+WhY^mgDaQ;fu8cM+6hGQ# zl}4ABn01m>8a;iUS!Y?L(UnWgTBSV(c@LMjXu0#>ER_(?YH1S${?#eYpXr?Z=QkS)(U(wti`cfK@?u`$H0`bIc z+u{S#U>HDFksJ(94+r9p#2$^^zjbD4_f~*F2xLyp3;_gpZZbo|m^*wA1maV%SPUSd z0C`34W6-k&!A%Fy>ly$tNg|)VyKwL!jOibe0&xnC_hX)!A*#L$O+~@n3CbOdO`#3H z;1k3L^V7FMAH8l83&&)^k|7-+OH#`C4#>wBT&s={l#d@~*1+4Y^#Zd7$uk5vCkVmF zYY5Rrd@&*{^}L5Vi5&0!z||mj29>^_@FhV%al>(Xe~*te03JQa^s9`Idh~>wJrYzB z6c~-bT)I|rY9pC~QOb|h&8lscOC#GS)d_WCd`FE9Za*@K)=u?7$T@nYYL%Rvnt@~~ zXD8>&Mbl1ZGV?~QZaT@GlgXl0vg~=YP)HW6bk12wx&a%ZfbozkSBr)N7*~b50r`qv z&gE>=fm+G7@+C7n!n`_k89U1r$}j6iHII*JK-J9awox}-OV{g$Ua)LOcZ@vf`kwv! z_Z-xpnRz~?KYMUrO4pG~*Q|nLm4qkOWf5S(f13n=TWIc3q*wQYw2+Xt^+lqz;qO3> z9unFTuqU2)OMbjR9LP%O0`DLdgoF5&BbN4*qBOO1r*!K;;g9i?iJY6*^~iA3dz0lIeAOy*68t2IQ&g0_*|$rJQb3| zkI6k)oT9tQ`$z`i_w{aLfsI|iX*j^o%q9|z07U#0vjbhu6|Mvfdh)Y5MD7qiY`?O| zjn@JG1$0`e%3pX}k+2hlb}v2we1wRTOuT!--H}1=Aoy`^Z}IRUt`pqu;VI9<+`f|| zwbfY$)F1d4Uc`yI^W1MQN5Ru2LNez9`!1^cCb!u(KwbFDd|oO(|0=hS`uNwmP5YBX z+&<^y8{Gcf$A8Fe5hwD0%=vG9{uj9YgO7ig+dupG@3=j} zk=De!E;-Ko*DC^Q)=by%rb(x(W*yY3Suj+`TyQ|ml#4|ZZ!qp*J5@gHMp&g>8PrnQ zG1a|K&5hfRk$DMJI@7w5&EoBvr{i1C-gGOvHQXcxt7P)5=DeP(8bx!{p;xi0W28Z~ zUnvs)U-<|Vc+ZK*XGC4?GeL0V+pELUeMnrm!??;cx5YUY!~V0Z;DGl$3cn~%NPmA4 z@}u?RZGqsaw!bH&;8RYnkl_)(?+zUEbL9Ra-z>j*VoCM;s>pTge}wm+;CZNjx<~x| z-_3JQAbMq%FG|o?P?!SgJ|f*8zmGRX{dq;i3EYi?LihR|>Gn}we48#;;h)(_vB=|h zbr@F>-!JH6sB|ke!5zgq)BMpLA>swUfLyo!FYu&GIPMj{uZ@G<>T6x<(?7&t|7qj` qv+HGqMSMDPm^+Gk)IW)^T?^n0D*m~nF^&Ip*2qAiINDPF`u_ljisz{S diff --git a/libftx/printf/ft_putchar_fd.o b/libftx/printf/ft_putchar_fd.o deleted file mode 100644 index 55544636ae2a462b1eacb2a1cddccfdbe0e91d94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2368 zcmb_cPiqrV5TDH^X>8gwO+;HO5>e?vy6Hcm{%a#ro1!QP6)z>-B%5UEW)qT4Y^$wG zK~hApAHidfdJ<29euw%61P>nc+(Mn%eJ|a8?nQ9my_xyV%$wPH^Y;1ty*mL(0!|Xl z!m-9tfK13G+hPXd=(&{L`JUbW8P9Zn?Q9-)<_}(P9%kRP4nEN#KgjVTN!jhM@#Qbl zpmZsg49T(h>5x9s+)SVq8Uco(DNm0EnRQurd9HW142+LLILPJ__spfBz+2!wDAz6wYW6W*Asb* z{W^;nEh1_Q+=|6t1#b6;E9ijgU0gvJ#a)u5gIGT?YBMg$TOWR&O((i-mItIzq&Jcb z1;RJN`++FNIxar@E@DCWedJ>T`S|8MW|`f)2Si1N9ucy28UCJ)ZL}m@=i5C%Y#CSF zj`D8jm`dY7Sq_gJ!qK&<7k8P-#CS%+ohfyU35Nm4dEQel-1WrZj0>l8ZZe(ML!Iq5 z9_7o-F5*`i&hr{fUl8yurY{NjOQx#=zQOd0fKz{oQuglD=&o~`;bNUVpcJ)ytDIBw z`G(d8rJ)(BVrgp@D1}?Iki~C z2U~_G4c*c_L56N}K&#|R4YjIy$J?vnuq&9?QuD~ytHl2gy~AVN^TSWwVZ-yD1B_GO z+(hr3Fg}mmmSF;)GmeWhK7a=IoN~VuD{6=VL=p5qXF!pAoh-ID-8Th M3KGT98x!;Y0byy(v;Y7A diff --git a/libftx/printf/ft_putstr_fd.o b/libftx/printf/ft_putstr_fd.o deleted file mode 100644 index 918d6ace11644f5de8897ab47e314f7b12434531..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2696 zcmbtW&2Jl35TD)kuHCrtM?&crLY4{zB(hG@AXUYb05WV*+XEt~LIQVfuM;clwXt_C zw=^waie!RBd+mRK!~srx9C~PxDEtF(@XvHDv(kiMQm3+rp) zVGW8q-xr6ZTHD1Pt8#9bz8y>S|AO>~#}M2`U&Oc14F^B=?aqB{LN>6n<-qfUT*bA$^<39!cj`?qx3p|7 znu`l3f^c!^>N098<}*<9ORd1~`0Y}yYE~fc)jIi&X2a>^E0qm9=sJFWWjWudd-cwS zB-(2A1*> z#ApzO^>`tb`AB_f)=)Rm0>DQ+2FGz$6y@*KEHU~5IFyMz@suI$Q^y>?eOl3HW`5HR z?{(A7xH?%2j>(U+`0m zi@2MtTM_&!>tSD_EbQNByc)6pm~~M}MS4rbLU2kRxf zTy8sEFx!r6o4(WY!K^eJ4F`LWEvOIW{>Ba+TaP!Wd$lH*UekBXSI)03bbPzA38w3I z8zsA1#b;xE!rZNU4g=0csn)g|4)0FAj?c$LEbKB9EX1=eTd>apfkIcO9{l4G( z-uu3J?;{@+uD+rw3J6hP2~I760$fO*j+evXGUSlCTHO4j*#9$M+`M&A+%4?URB@|t zP~3WTFZ)9x)jvF+-55h~w{S#r`=3OFy<-1IrMOwx8ze*aE+-$O>|5kPZl|nEsW3+W z5V9K+(pvk!qSJ6{E=Juf9PQI~cuHG^qhkN({M$b%6UzC_6w@-fN6uv?lt~>xH4vQC zmuIxh3+apLr_WxQdhslP#z5uJl_`M4;(*DX1TC|aPNxC%ED$02RH#yCP(>?Y_>b{P z-~*5fPnpNn2QT$)A1a?VY{yBI^|l>GuPUV7u4d;fB^VG8_=x{4!A80 z-tl~=?%CCRIO(k0r2zh0dePpdBL&L(8=&-Z%DJ&*>Qg-C#}KE7giaG)%H%#$Umn-h zU1R|KhEM|D!ndL*e`m%?(bvI8F*|;nwqv?(w>dk%5RSt$Go!OI9k1ecsy4*8iD!i3 z2i2-wGa6BIjhuW@EvvA^==V(Tvr&D8;cpz@mzbv4cbLBO5XjUWHmzS{Gb?O*g^jE* z^%_g)+f4nAWv{a-^v}{NcUW4lvvD*vq~PL8M;*bvP%1;^3q%v}*YU7P?X&;~rZrx^ z10Wh2#4d~2qy}R#D;i!$MZGD@69^2$sg5UO`GnsPF|3kMsG%tO5#1jsUqx`3DfaUT zPGgc$e6(;By+nqDN6i`Glbj>)S#F<+;bAv%`_ULq>s;ja<6P61I4J@gKl3m6^Bfm( z-{JOU318>-s)UPPwG3;b{!0A)RI-L;)Pa^_vFADuH)Gpup6aX+iKczF7~g1VFRm-`n@LU|3SXNHR5$A zmR#qBxg!9s<<6!1jWAKig1*cLqAvt4_fi%o;`J?f_c%Dm0pij3#H%rs8Lla|oD)rr zaj?aCLdo1EoRBf%zR$re;mEbjrM?)J{~-ro=MI!V^`)G@ff!N5K5-a|&Wra;0dOti z3r+n!%>QfdPwU4;_zAs&lVTj_{lfj@7>#A_XA!n0(;sl)g0z6xzkum)*s${}@`4iI zna+>y9^o(WJBZ0SAp|*I)W4Gv6PZi*%dq%2hQy~kS&m;pOuKqaW%eOHC(`5o;#??y Z5;^|2hzU+e;I9Lo{{wE5A1x`z{|A+wN>Ts- diff --git a/libftx/printf/ft_strlen.o b/libftx/printf/ft_strlen.o deleted file mode 100644 index f576670de2992f22614d023ea90dc15548f6d95c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2472 zcmbtV&u<%55T3W|-Pmzs=LeLOR>%ivg+z9fG)SSKk_u8bZQ+1Y)FM^Z+J3fIU9Y3v zbrdS46w*|RB2Zf)Bo2VM@h@;g;(+)gDse$_Z|N-(2Q#z#Uc7m752z#Uely?9ym@at zZ~f)!waXe~Acet27+R7A=o>?QB~e$PjFH!!y?>m&?E`0L`vA(j6Xn*lJEj+y33Ser=`0LESiy>ziy zECS@q$O9D4CIDaI`Z;{ik@Vn1qN}f)NNBob$zq?8#mX+ebK0Yg)QS)c?NK|irpO1T zPj3{>8Y39X=eH0F+oTg=Vn=JeAnsM_z8kbEn>>uXZctfRwC1h(x%0imxo~$8ttIPi zXvWnj4t*Y2b+ChGWVgE=9@+JJ+wE=g*j`$+J6_;LZSMQF@70>|mc0>rLEIdsg5SkT zy&&>h0dG{$36Xb)R}lc$3BiN^w<$WvOY}lvcRmHSHOWq&7|TDzrk+8L9ujIDTq;dI z&_0+jwRMaD_z|gG;$e*aTbcj_`YrHbb}tI)5Vr4ccIFlq6FupZo%YA}g1X;pa2OsA z`+^e1jRtR8?R2yY8gV3gnHl-vK`;)^CGFb6#~D4g3bQjwSkDzy-nE)n@2+ z_;4K@c?&DWZVmB^4&jT-x41-he&mXd7>1uDAyB<1^ywx}&Z7)p5sI8w$xli}AmyrS zlIsWIj|EClV=Z*39K}uua#tn_RAb*nK6_7O_}`)_%Oas9;_y?J$gDuR4-_&lYzdD= z-glA^DCPy8)JZI+K&1AB95Kovn z=X~eqp8GTRY)N+iK={mztxqk^k%5r28VVImRVgmcy^L~M zuT~CKDaMF>X-HofWqq-tR~7wcS-&~|#EQ338JV-wV8rxPb$RvpJJHdo@PW#ot(Wfz z)>@&|OBH>|n7-P5`16(dEz$h0=?j?3o`exQv=F}BR^Ww+7sLx+_7n>eLvRVV<2;As2zayuTs^uK>!WgKnd*& z27>_pFi=$BKASbROG=2~U^99QwLgp^+=Blqe45qmf~oW6@gb#ke(q;>iP!X zK6!R>l{VpM-#NB%N4tfL$+K}=+d^@u9kI20NCR97ht445`NKT_i)4|6=Hw4ke$0`! zZLM~W29lZ2e*;;diZ2^bB|mMoee64E*3e0ltw}yxx*s8bO=@vM8+ed?A&~cJJ!bdbQr2yNkAQ*Gqk<^=l77!itpQ6ZuruN@y|Y$tDUtil{ zNI}8M!+)DHY@iiIl1@Ag(qxO&+0@{l!3FL@j2@yYy&es2JE{Qca`umuwjxt3}GT$W@D6)3d zV)6j8an_&?v(8c0Fu*pV)~OD##$o0kWg+zu7DO$eeviQec5uh@tP90$!`!C{ef${D zF!AO~7&6R)RxLtSm3)FVDy^eT#wZD$L3wV5`5JFg4K33 zz(023ZvQU6s6Mp2@gWzE$F!D5Tu^k6P>dk40)$gf5Y)y6fm7!qy4zv)eI#-cwAqDI zp1oY(!a0>yyM$4Ga2sLLvsOP!|FLC`R4?fHFUp@E_T>sO9zs>c3 zJUE?iq6U6`#Jny#FtmE`uQ@Kxq40m7^9tk8h~SVB2w8z4zz5}GPTE_9NAg0qOoJ3rPHNM zBpQ!nH^kPos!s_ek;bNiroyq*gpfsVTs1;El{GnFjz<#tXvU6Bsagbg}^y|q@-n%Z0M)!Rp zeCK#V`^Oc6pRA#L>pcvPSt`t|BRLYFYo z1kXeD)4k@ce=A~?vlkyXJyRi7+>(s9P`Ex@uH|cH;FjG_oGqBZolL8CRNAx zLkAPntfiRb@uM}w5yboj{2mJRhPqBo2}#V0){l;)h!^|+CSvvKzs{33dyF0x=zP>0 z-}%7|AjYBbo9c}J6k^K3 -void ft_lstdel(void *ptr) -{ - t_cmd *content; - - content = (t_cmd *) ptr; - if (content->args != NULL) - ft_freer_tab_ultimate(1, content->args); - if (content->executable != NULL) - free(content->executable); - free(content); -} - -int ft_cmds_init(t_list **cmds, size_t len) -{ - t_cmd *content; - t_list *current; - size_t i; - - *cmds = malloc(sizeof(t_list)); - current = *cmds; - i = 0; - while (i < len) - { - content = malloc(sizeof(t_cmd)); - if (content == NULL) - { - ft_lstclear(cmds, ft_lstdel); - return (1); - } - content->args = NULL; - content->executable = NULL; - content->fd_in = -1; - content->fd_out = -1; - current->content = content; - if (!((i + 1) < len)) - { - current->next = NULL; - return (0); - } - current->next = malloc(sizeof(t_list)); - if (current->next == NULL) - ft_lstclear(cmds, ft_lstdel); - current = current->next; - i++; - } - return (0); -} - -int ft_cmds_prep(t_list **cmds, const char *line, int infile, int outfile) -{ - size_t len; - t_cmd *cmd; - t_list *current; - - len = ft_seglen_quoted(line, '|'); - if (len == 0) - return (0); - if (ft_cmds_init(cmds, ft_seglen_quoted(line, '|'))) - { - free(cmds); - return (1); - } - cmd = (t_cmd *)(*cmds)->content; - cmd->fd_in = infile; - current = *cmds; - while (current->next != NULL) - current = current->next; - cmd = (t_cmd *) current->content; - cmd->fd_out = outfile; - return (0); -} - -void ft_strshift(char *str, int shift) -{ - size_t i; - - if (shift > 0) - return ; - i = 0; - while (str[i - shift] != '\0') - { - str[i] = str[i - shift]; - i++; - } - str[i + shift] = '\0'; -} - -void ft_quote_remover(char *str) -{ - size_t i; - ssize_t start; - ssize_t stop; - - start = -1; - i = 0; - while (str[i] != '\0') - { - if ((str[i] == '\"' || str[i] == '\'')) - { - if (start == -1) - start = i; - else if (str[i] == str[start]) - { - stop = i; - break ; - } - } - i++; - } - if (start != -1) - { - ft_strshift(str, -1); - str[stop] = '\0'; - } -} - -int ft_cmd_filler(t_list *element, char **args) -{ - t_cmd *content; - size_t i; - - if (args == NULL) - return (1); - content = (t_cmd *)element->content; - i = 0; - while (args[i] != NULL) - { - ft_quote_remover(args[i]); - i++; - } - content->args = args; - //pas free:10 - content->executable = args[0]; - return (0); -} - -int ft_cmds_fill(t_list **cmds, const char *line) -{ - char **tab; - char **args; - t_list *current; - size_t i; - - tab = ft_split_quoted(line, '|'); - if (tab == NULL) - return (1); - i = 0; - current = *cmds; - while (tab[i] != NULL) - { - args = ft_split_quoted(tab[i], ' '); - if (ft_cmd_filler(current, args) == 1) - { - ft_lstclear(cmds, ft_lstdel); - ft_freer_tab_ultimate(2, args, tab); - return (1); - } - current = current->next; - i++; - } - ft_freer_tab_ultimate(1, tab); - return (0); -} - -t_list **ft_parse_cmds(char *line) -{ - int infile; - int outfile; - t_list **cmds; - - cmds = malloc(sizeof(t_list *)); - outfile = ft_outfile(line); - infile = ft_infile(line); - if (ft_syntatic_verif(line) == 1) - return (NULL); - if (ft_cmds_prep(cmds, line, infile, outfile) == 1) - return (NULL); - if (ft_cmds_fill(cmds, line) == 1) - return (NULL); - return (cmds); -} +/* int main(int ac, char **av) */ +/* { */ +/* char *line; */ +/* int fd; */ +/* */ +/* if (ac != 2) */ +/* return (1); */ +/* fd = open(av[1], O_RDONLY); */ +/* line = get_next_line(fd); */ +/* while (line != NULL) */ +/* { */ +/* ft_printf(line); */ +/* line = get_next_line(fd); */ +/* free(line); */ +/* } */ +/* free(line); */ +/* return (0); */ +/* } */ int main(int ac, char **av, char **env) { t_list **cmds; + char *line; t_data data; if (ac == 1) return (1); + line = ft_normalizer(av[1]); + ft_printf("%s\n", line); data.env = init_env(env); if (data.env == NULL) return (1); - cmds = ft_parse_cmds(av[1]); + cmds = ft_parse_cmds(line); if (cmds == NULL) return (1); + ft_printf("%s\n", line); if (ft_cmds_executor(cmds, env) == 1) { ft_lstclear(data.env, env_del); - ft_lstclear(cmds, ft_lstdel); + ft_lstclear(cmds, ft_cmddel); return (1); } ft_lstclear(data.env, env_del); - ft_lstclear(cmds, ft_lstdel); + ft_lstclear(cmds, ft_cmddel); free(cmds); free(data.env); + free(line); return (0); } diff --git a/main.o b/main.o deleted file mode 100644 index 24722c1a05ae7742fb78f31dcbc88d09d18156f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22672 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 c%%xA9LxlcNJp1f6RsX-g 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 LyfIWEl(qgp;k&w( diff --git a/minishell.h b/minishell.h index 6bf32c9..99fa3fc 100644 --- a/minishell.h +++ b/minishell.h @@ -6,7 +6,7 @@ /* By: cchauvet ') + { + ft_eprintf("minishell: %s: must be followed by an infile\n", tab[i]); + return (0); + } + ft_freer_tab_ultimate(1, tab); + return (1); +} + +static int ft_get_outfile(const char *line) { size_t i; - int append; - char *path; + int fd; + char **tab; - path = NULL; - append = 0; - i = 0; - while (line[i] != '\0') + tab = ft_split_quoted(line, ' '); + if (tab == NULL) { - if (line[i] == '>' && ft_is_in_quote(line, i) == 0) - { - i++; - if (line[i] == '>') - { - i++; - append = 1; - } - else - append = 0; - if (path != NULL) - free(path); - path = ft_get_file_path(line + i); - if (path == NULL || ft_file_is_writeable(path) == 0) - { - free(path); - return (-1); - } - } + ft_eprintf("minishell: malloc failed\n"); + return (-2); + } + fd = 0; + i = 0; + while (tab[i + 1] != NULL) + { + if (ft_strcmp(">", tab[i]) == 0) + fd = ft_file_is_writable(ft_quote_remover(tab[i + 1])); + else if (ft_strcmp(">>", tab[i]) == 0) + fd = ft_file_is_appendable(ft_quote_remover(tab[i + 1])); i++; } - if (path == NULL) - return (1); - if (append == 1) - i = open(path, O_APPEND | O_CREAT, 0664); - else - i = open(path, O_WRONLY | O_TRUNC | O_CREAT, 0664); - free(path); - return (i); + ft_freer_tab_ultimate(1, tab); + return (fd); } static int ft_remove_outfile(char *line) { size_t i; - int separator; + size_t y; + char **tab; - i = 0; - while (line[i] != '\0') + tab = ft_split_quoted(line, ' '); + if (tab == NULL) { - if (line[i] == '>' && ft_is_in_quote(line, i) == 0) + ft_eprintf("minishell: malloc failed\n"); + return (1); + } + i = 0; + y = 0; + while (tab[i] != NULL) + { + if (tab[i][0] == '>') { - while (line[i] == '>') - line[i++] = ' '; - while (line[i] == ' ') - i++; - separator = ft_is_in_quote(line, i); - if (separator == 0) - separator = ' '; - else if (separator == 1) - separator = '\''; - else - separator = '\"'; - while (line[i] != separator && line[i] != '\0') - line[i++] = ' '; - if (line[i] != '\0' - && (separator == '\'' || separator == '\"')) - line[i++] = ' '; + ft_strshift(line + y, -1 * (ft_strlen(tab[i]) + 1)); + i++; + ft_strshift(line + y, -1 * (ft_strlen(tab[i]) + 1)); } + else + y = y + ft_strlen(tab[i]); i++; } + ft_freer_tab_ultimate(1, tab); return (0); } @@ -78,12 +96,11 @@ int ft_outfile(char *line) { int fd; + if (ft_outfile_is_valid(line) == 0) + return (-2); fd = ft_get_outfile(line); - if (ft_remove_outfile(line)) - { - if (fd > 0) - close(fd); - return (-1); - } + if (fd == -2) + return (-2); + ft_remove_outfile(line); return (fd); } diff --git a/outfile.o b/outfile.o deleted file mode 100644 index 74a356827724a5484ed9a7ae891cbc421dc32fd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17616 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 diff --git a/spacer.c b/spacer.c new file mode 100644 index 0000000..98cd434 --- /dev/null +++ b/spacer.c @@ -0,0 +1,115 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* spacer.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cchauvet <|", out[i - 1])) + { + while (str[i] == out[i - 1]) + i++; + temp = ft_strreplace(out, " ", i, i); + free(out); + out = temp; + if (out == NULL) + return (NULL); + } + i++; + } + return (out); +} + +static char *ft_spacer_before(const char *str) +{ + char *out; + char *temp; + size_t i; + + out = ft_strdup(str); + if (out == NULL) + return (NULL); + i = 0; + while (out[i + 1] != '\0') + { + if (ft_is_in_quote(out, i)) + continue ; + if (ft_is_in("><|", out[i + 1])) + { + while (out[i] == ' ') + i++; + while (out[i] == out[i + 1]) + i++; + temp = ft_strreplace(out, " ", i + 1, i + 1); + free(out); + out = temp; + if (out == NULL) + return (NULL); + } + i++; + } + return (out); +} + +static void ft_space_simplifier(char *str) +{ + size_t i; + size_t y; + + i = 0; + while (str[i] != '\0') + { + y = 0; + while (str[y + i] == ' ') + y++; + if (ft_is_in_quote(str, i + y)) + { + i = i + y; + continue ; + } + if (y > 1) + { + ft_strshift(str + i, -y + 1); + y--; + } + i++; + } +} + +char *ft_normalizer(char *str) +{ + char *out; + char *temp; + + temp = ft_spacer_after(str); + if (temp == NULL) + return (NULL); + out = ft_spacer_before(temp); + free(temp); + if (out == NULL) + return (NULL); + ft_space_simplifier(out); + return (out); +} diff --git a/syntatics.o b/syntatics.o deleted file mode 100644 index b15b208529a5e09af5b9bb63e84d145bc485ff0d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17256 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 RQ}s`%|Ct5W(f`u_e*lfIQgHwP diff --git a/t b/t index 7f8f011..e69de29 100644 --- a/t +++ b/t @@ -1 +0,0 @@ -7 diff --git a/utils/ft_getstr.c b/utils/ft_getstr.c deleted file mode 100644 index b7f88ca..0000000 --- a/utils/ft_getstr.c +++ /dev/null @@ -1,27 +0,0 @@ -#include "utils.h" - -char *ft_getstr(const char *str, size_t n) -{ - size_t start; - size_t stop; - char c; - int quote; - - start = n; - stop = n; - quote = ft_is_in_quote(str, n); - if (quote == 0) - c = ' '; - else - { - if (quote == 1) - c = '\''; - else - c = '"'; - } - while (str[start - 1] != c && start > 0) - start--; - while (str[stop] != c && str[stop] != '\0') - stop++; - return (ft_strndup(str + start, stop - start)); -} diff --git a/utils/ft_is_in_quote.o b/utils/ft_is_in_quote.o deleted file mode 100644 index 74e622364666a1b443a8e3661e53c8e9bb25cc2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4248 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 diff --git a/utils/ft_strncpy.o b/utils/ft_strncpy.o deleted file mode 100644 index ef6d219ffb00e16635c68bbfaefdbac309654c8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3952 zcmbtWU1%It6uvW?NjBMJH$Sayi0CTST5)HR7?P%cSq$55t(GbT@*>OZ?A_hL-Ptfd zX;QJGRcRW5HS>TigY-E60$PTq4SK)lYL~2{E@lu&!ytV&&7=w?-nuRVPiSRlX7+#*-i;+4X#!eqw_ciiuhdhUy92;IZH zC)p+j86BC-UYdqT!T6Eawy%Qrw8+Gd@e#CXLLWvh>}R=aOFd!p}b>2o&y!n2aR#` zsBSF}c&-KPqbO3hE(|!p%%ZirRZQ7L(fUKC4jXz69V#QrL+PX$smfwwP9squrIj@SLj~A@gE1f@P+j7>+0fAuUY_& z5RaR|6fV~9f5*uZu^k)t(!PRSW{LJLyI?@W-rJ3$AJ!{n7;x4eV{q2K@E6TJ?41jo1!a{h#b*Es*Ago{c(BjF!$ep$jfOG*-co%2-* zzs>okg#W;KU&24-{L2#lKIh+%@O93=CE=o8!cNrxC$1;*6ZlPzeKEe6# zB>W;C9E=?{!&3xn^c=;V!MNBX#K4|`L)QN!g!kZCj-&6Wf1-QqP3VHK`fj+^1?AH< zpXe3SH;G>MJfgd_Vd@oH4r(RaskT7IXtP{)>1vnQbWNv5yG`Krq{0M35Z!7un-m(q z?m*Yoq5DDCg)Yo_cxH9z$1BwJ*ST+6FI8Q$NqH{+XTkHp+KKuKUwKZnzi-a-V-jlQ z0iX~QeOd_K6oj_rSoVM83%bQ&htw$0y5MS zJp_JJl1)-p$dUMex6A{R|Z-Wf$%FET(Jj(5}Z6qW_{sP_x0)5K%%iR8`P~@v@ z{{i4}^?xs>{`krZdvPvtu`$#pk6-5rj{=5oo@|d{ah3esY$0EmzR< z=ga6m0U;;$-v*yqt^8fZHW;$}6$b_y`Mg4h_N7NIXMSb)e5l`nqqib zJDce8gALDV(k%@_R|8c&CQv&=d%)ySnly7Ai^UGU-t_GA*Peo5HeeSdOvl9sMMgCmP_OYD#>95LB2>~DusNV)aXmpLc)66ufZT@0~%NhGozEMTaNg;tdgKvCVen&8ru@SPNN+R?qW z8wSE48pns4RcS{z5B_lX-o==6VENmF-4euTQQ(>I#G&PcL;$E%f zmNyp5Szdg^beVm@9Es<2eZEP5B^1fJDR`c?FXNQ^FS%<*w4=DWMO-Ii)kSX0g&Z zrSx7@LQ~3$efZlNep+dnQhHoPag~Q$rFokoJr4U_k_sg&7o|V=et4E+<}4!zs4R>seURXX{S?b3Q3D3@eSD8yTWjs#Yn}E^0B9 zWZG3doF2mS6tZvSY2aULBH2M;#RF#3wMHWYRVd>;hy_U_NyA zfUShTdQl!*0N=3yzIy?D-XT=;;*r#zp#y_Ehf)W2?>?M7k~*?;a44B#J_W-f#dM)i z(ivdsqsJi)rB!U@`|$63J|z~w4+Lz6jrbK5={vli~KHgzlANA9$`u z`{1joQtN8`2bsK8!1pnkuRJf`>4yaSD@;Br;7lYb0mrW)q^!SG`u%~)MFF2%745vx5C|Onyti?=tyg0dK&;0$ui(N}XK(Lcrf)@;3tB!(`qcuhU`pEL+9r z*vRs8`x$1pRKWjX_$mSamf?KwVH`aBIpJPK67zoU!}IVc!*Q<#_Zv~2<3+gCV0CSO z&2!E+3Tf3f#$2Li(r%ilBaTBbeZ4Uxgul_N1&~tyRA8QxuH|xX%h 0) + return ; + else + { + i = 0; + while (str[i - shift - 1] != '\0') + { + str[i] = str[i - shift]; + i++; + } + } +} diff --git a/utils/utils.h b/utils/utils.h index f1d80b8..57c9c3d 100644 --- a/utils/utils.h +++ b/utils/utils.h @@ -6,7 +6,7 @@ /* By: cchauvet