diff --git a/shcat_c/Makefile b/Makefile similarity index 100% rename from shcat_c/Makefile rename to Makefile diff --git a/shcat_c/Minishell.mk b/Minishell.mk similarity index 100% rename from shcat_c/Minishell.mk rename to Minishell.mk diff --git a/README.md b/README.md deleted file mode 100644 index dcda78c9..00000000 --- a/README.md +++ /dev/null @@ -1 +0,0 @@ -# shcat \ No newline at end of file diff --git a/shcat_c/includes/app/node.h b/includes/app/node.h similarity index 100% rename from shcat_c/includes/app/node.h rename to includes/app/node.h diff --git a/shcat_c/includes/me b/includes/me similarity index 100% rename from shcat_c/includes/me rename to includes/me diff --git a/shcat_c/includes/minishell.h b/includes/minishell.h similarity index 100% rename from shcat_c/includes/minishell.h rename to includes/minishell.h diff --git a/shcat_c/includes/parser b/includes/parser similarity index 100% rename from shcat_c/includes/parser rename to includes/parser diff --git a/shcat_c/includes/type_rust.h b/includes/type_rust.h similarity index 100% rename from shcat_c/includes/type_rust.h rename to includes/type_rust.h diff --git a/shcat_c/libft/ft_bzero.c b/libft/ft_bzero.c similarity index 100% rename from shcat_c/libft/ft_bzero.c rename to libft/ft_bzero.c diff --git a/shcat_c/libft/ft_calloc.c b/libft/ft_calloc.c similarity index 100% rename from shcat_c/libft/ft_calloc.c rename to libft/ft_calloc.c diff --git a/shcat_c/libft/ft_memset.c b/libft/ft_memset.c similarity index 100% rename from shcat_c/libft/ft_memset.c rename to libft/ft_memset.c diff --git a/shcat_c/libft/ft_split.c b/libft/ft_split.c similarity index 100% rename from shcat_c/libft/ft_split.c rename to libft/ft_split.c diff --git a/shcat_c/libft/ft_strcmp.c b/libft/ft_strcmp.c similarity index 100% rename from shcat_c/libft/ft_strcmp.c rename to libft/ft_strcmp.c diff --git a/shcat_c/libft/ft_strdup.c b/libft/ft_strdup.c similarity index 100% rename from shcat_c/libft/ft_strdup.c rename to libft/ft_strdup.c diff --git a/shcat_c/libft/ft_strjoin.c b/libft/ft_strjoin.c similarity index 100% rename from shcat_c/libft/ft_strjoin.c rename to libft/ft_strjoin.c diff --git a/shcat_c/libft/ft_strlcpy.c b/libft/ft_strlcpy.c similarity index 100% rename from shcat_c/libft/ft_strlcpy.c rename to libft/ft_strlcpy.c diff --git a/shcat_c/libft/ft_strlen.c b/libft/ft_strlen.c similarity index 100% rename from shcat_c/libft/ft_strlen.c rename to libft/ft_strlen.c diff --git a/shcat_c/note_raph.txt b/note_raph.txt similarity index 100% rename from shcat_c/note_raph.txt rename to note_raph.txt diff --git a/other/pipex/.clangd b/other/pipex/.clangd deleted file mode 100644 index cde24ec5..00000000 --- a/other/pipex/.clangd +++ /dev/null @@ -1,20 +0,0 @@ -CompileFlags: # Tweak the parse settings - Add: - - "-I/usr/include/" - - "-I/home/maix/school/pipex/mlx/" - - "-I/home/maix/school/pipex/mecstd/include/" - - "-I/home/maix/school/pipex/mecstd/vendor/" - - "-I/home/maix/school/pipex/mecstd/output/include/" - - "-I/home/maix/school/pipex/mecstd/generic_sources/header/" - - "-I/home/maix/school/pipex/include/" - - "-I/home/maix/school/pipex/output/include/" - - "-I/home/maix/school/pipex/generic_sources/header/" - - "-I/home/maiboyer/Documents/ring-1/pipex/vendor/" - - "-I/home/maiboyer/Documents/ring-1/pipex/mecstd/include/" - - "-I/home/maiboyer/Documents/ring-1/pipex/mecstd/vendor/" - - "-I/home/maiboyer/Documents/ring-1/pipex/mecstd/output/include/" - - "-I/home/maiboyer/Documents/ring-1/pipex/mecstd/generic_sources/header/" - - "-I/home/maiboyer/Documents/ring-1/pipex/include/" - - "-I/home/maiboyer/Documents/ring-1/pipex/output/include/" - - "-I/home/maiboyer/Documents/ring-1/pipex/generic_sources/header/" - diff --git a/other/pipex/.gitmodules b/other/pipex/.gitmodules deleted file mode 100644 index 92ca1ba3..00000000 --- a/other/pipex/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "mecstd"] - path = mecstd - url = git@github.com:Maix0/mecstd.git diff --git a/other/pipex/generic_files.list b/other/pipex/generic_files.list deleted file mode 100644 index 51883396..00000000 --- a/other/pipex/generic_files.list +++ /dev/null @@ -1,8 +0,0 @@ -vec/vec_buf_str -vec/vec_buf_str_functions2 -vec/vec_process -vec/vec_process_functions2 -vec/vec_str -vec/vec_str_functions2 -vec/vec_u8 -vec/vec_u8_functions2 diff --git a/other/pipex/include/app/main.h b/other/pipex/include/app/main.h deleted file mode 100644 index bd8f66f1..00000000 --- a/other/pipex/include/app/main.h +++ /dev/null @@ -1,67 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* main.h :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/06 18:51:07 by maiboyer #+# #+# */ -/* Updated: 2024/03/28 12:37:04 by rparodi ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#ifndef MAIN_H -# define MAIN_H - -# include "../me/fs/open.h" -# include "../me/fs/read.h" -# include "me/fs/write.h" -# include "me/gnl/gnl.h" -# include "me/mem/mem_find_bytes.h" -# include "me/mem/mem_move.h" -# include "me/os/pipe.h" -# include "me/os/process.h" -# include "me/printf/printf.h" -# include "me/string/split_literals.h" -# include "me/string/str_clone.h" -# include "me/string/str_len.h" -# include "me/string/str_n_compare.h" -# include "me/string/str_n_find_str.h" -# include "me/vec/vec_process.h" -# include "me/vec/vec_str.h" -# include -# include -# include - -# ifndef BONUS -# define BONUS 0 -# endif - -typedef struct s_pipex_args -{ - t_usize argc; - t_str *argv; - bool here_doc; - t_str here_doc_limiter; - t_file here_doc_fd; - t_vec_str env; - t_file in; - t_file out; - t_vec_process processes; - t_usize min; - t_usize max; -} t_pipex_args; - -void set_here_doc(t_pipex_args *s); -void open_read_file(t_pipex_args *s); -void clone_vec_str_iter_fn(t_usize idx, t_str *s, void *out); -t_vec_str clone_vec_str(t_vec_str *v); -void vec_process_free_ptr(void *s); -t_error spawn_helper(t_pipex_args *s, t_usize idx, t_redirection in, - t_redirection out); -void cleanup(t_pipex_args *s, bool error); -void process_cleanup(t_process elem); -void do_here_doc_thing(t_pipex_args *s); -int main2(t_pipex_args *s); - -#endif /* MAIN_H */ diff --git a/other/pipex/include/me/os/process.h b/other/pipex/include/me/os/process.h deleted file mode 100644 index cccb65c8..00000000 --- a/other/pipex/include/me/os/process.h +++ /dev/null @@ -1,145 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* process.h :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/03 15:43:08 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 18:39:58 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#ifndef PROCESS_H -# define PROCESS_H - -# include "me/types.h" -# include "me/vec/vec_str.h" -# include "me/vec/vec_u8.h" - -typedef t_i32 t_pid; -typedef t_i32 t_exit_code; - -enum e_redirection -{ - R_INHERITED = 0, - R_PIPED = 1, - R_FD = 2, -}; - -union u_redirection -{ - struct s_fd - { - t_file value; - } fd; - struct s_piped - { - } piped; - struct s_inherited - { - } inherited; -}; - -typedef struct s_redirection -{ - enum e_redirection tag; - union u_redirection vals; -} t_redirection; - -static inline t_redirection piped(void) -{ - return ((t_redirection){ - .tag = R_PIPED, - }); -} - -static inline t_redirection inherited(void) -{ - return ((t_redirection){ - .tag = R_INHERITED, - }); -} - -static inline t_redirection fd(t_file fd) -{ - return ((t_redirection){.tag = R_FD, \ - .vals = (union u_redirection){.fd = {.value = fd},}}); -} - -enum e_wrapped_fd_tag -{ - READ_ONLY, - WRITE_ONLY, - READ_WRITE, - INVALID, -}; - -union u_wrapped_fd -{ - struct s_read_only - { - t_file fd; - } ro; - struct s_write_only - { - t_file fd; - } wo; - struct s_read_write - { - t_file fd; - } rw; -}; - -typedef struct s_wrapped_fd -{ - enum e_wrapped_fd_tag tag; - union u_wrapped_fd vals; -} t_wrapped_fd; - -static inline t_wrapped_fd ro(t_file fd) -{ - return ((t_wrapped_fd){.tag = READ_ONLY, - .vals = (union u_wrapped_fd){ - .ro = {.fd = fd}, - }}); -} - -static inline t_wrapped_fd wo(t_file fd) -{ - return ((t_wrapped_fd){.tag = WRITE_ONLY, - .vals = (union u_wrapped_fd){.wo = {.fd = fd}}}); -} - -typedef struct s_spawn_info -{ - t_redirection stdin; - t_redirection stdout; - t_redirection stderr; - t_vec_str arguments; - t_vec_str environement; - t_str binary_path; - void (*forked_free)(void *); - void *forked_free_args; -} t_spawn_info; - -typedef struct s_process -{ - t_wrapped_fd stdin; - t_wrapped_fd stdout; - t_wrapped_fd stderr; - t_pid pid; -} t_process; - -typedef struct s_process_output -{ - t_pid pid; - t_vec_u8 stdout; - t_vec_u8 stderr; - t_exit_code exit_code; -} t_process_output; - -t_error spawn_process(t_spawn_info info, - t_process *process); - -#endif /* PROCESS_H */ diff --git a/other/pipex/input.toml b/other/pipex/input.toml deleted file mode 100644 index 5936aba9..00000000 --- a/other/pipex/input.toml +++ /dev/null @@ -1,56 +0,0 @@ -[definition.vec] -headers = ["mecstd/generic_sources/header/vec_C__PREFIX__.h__TEMPLATE__"] -sources = [ - "mecstd/generic_sources/src/vec_C__PREFIX__.c__TEMPLATE__", - "mecstd/generic_sources/src/vec_C__PREFIX___functions2.c__TEMPLATE__", -] -replace.C__TYPENAME__ = "type" -replace.C__TYPEHEADER__ = "header_include" -replace.C__PREFIX__ = "prefix" -replace.C__PREFIXUP__ = "prefix" - - -[definition.hashmap] -headers = ["mecstd/generic_sources/header/hashmap_C__PREFIX__.h__TEMPLATE__"] -sources = [ - "mecstd/generic_sources/src/hashmap_C__PREFIX__.c__TEMPLATE__", - "mecstd/generic_sources/src/hashmap_C__PREFIX___utils.c__TEMPLATE__", -] -replace.C__VALTYPE__ = "type" -replace.C__KEYTYPE__ = "type" -replace.C__TYPEHEADER__ = "header_include" -replace.C__PREFIX__ = "prefix" -replace.C__PREFIXUP__ = "prefix" - - -[[create.vec]] -sources_output = "src/vec/" -headers_output = "include/me/vec/" -replace.C__TYPENAME__ = "t_u8" -replace.C__TYPEHEADER__ = '' -replace.C__PREFIX__ = "u8" -replace.C__PREFIXUP__ = "U8" - -[[create.vec]] -sources_output = "src/vec/" -headers_output = "include/me/vec/" -replace.C__TYPENAME__ = "t_buffer_str" -replace.C__TYPEHEADER__ = '#include "me/buffered_str/buf_str.h"' -replace.C__PREFIX__ = "buf_str" -replace.C__PREFIXUP__ = "BUF_STR" - -[[create.vec]] -sources_output = "src/vec/" -headers_output = "include/me/vec/" -replace.C__TYPENAME__ = "t_str" -replace.C__TYPEHEADER__ = '' -replace.C__PREFIX__ = "str" -replace.C__PREFIXUP__ = "STR" - -[[create.vec]] -sources_output = "src/vec/" -headers_output = "include/me/vec/" -replace.C__TYPENAME__ = "t_process" -replace.C__TYPEHEADER__ = '#include "me/os/process.h"' -replace.C__PREFIX__ = "process" -replace.C__PREFIXUP__ = "PROCESS" diff --git a/other/pipex/output/include/me/vec/vec_process.h b/other/pipex/output/include/me/vec/vec_process.h deleted file mode 100644 index d423b064..00000000 --- a/other/pipex/output/include/me/vec/vec_process.h +++ /dev/null @@ -1,49 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* vec_process.h :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2023/12/04 18:46:53 by maiboyer #+# #+# */ -/* Updated: 2023/12/09 17:53:00 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#ifndef VEC_PROCESS_H -# define VEC_PROCESS_H - -# include "me/os/process.h" -# include "me/types.h" - -typedef void (*t_free_process_item)(t_process); - -typedef struct s_vec_process -{ - t_free_process_item free_func; - t_usize len; - t_usize capacity; - t_process *buffer; -} t_vec_process; - -t_vec_process vec_process_new(t_usize capacity, - t_free_process_item free_function); -t_error vec_process_push(t_vec_process *vec, t_process element); -t_error vec_process_pop(t_vec_process *vec, t_process *value); -void vec_process_free(t_vec_process vec); -t_error vec_process_reserve(t_vec_process *vec, - t_usize wanted_capacity); -t_error vec_process_find(t_vec_process *vec, - bool (*fn)(const t_process *), t_usize *index); -t_error vec_process_find_starting(t_vec_process *vec, - bool (*fn)(const t_process *), - t_usize starting_index, t_usize *index); -t_error vec_process_all(t_vec_process *vec, - bool (*fn)(const t_process *), bool *result); -t_error vec_process_any(t_vec_process *vec, - bool (*fn)(const t_process *), bool *result); -void vec_process_iter(t_vec_process *vec, - void (*fn)(t_usize index, t_process *value, - void *state), void *state); - -#endif diff --git a/other/pipex/output/include/me/vec/vec_str.h b/other/pipex/output/include/me/vec/vec_str.h deleted file mode 100644 index df7bc7c4..00000000 --- a/other/pipex/output/include/me/vec/vec_str.h +++ /dev/null @@ -1,46 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* vec_str.h :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2023/12/04 18:46:53 by maiboyer #+# #+# */ -/* Updated: 2023/12/09 17:53:00 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#ifndef VEC_STR_H -# define VEC_STR_H - -# include "me/types.h" - -typedef void (*t_free_str_item)(t_str); - -typedef struct s_vec_str -{ - t_free_str_item free_func; - t_usize len; - t_usize capacity; - t_str *buffer; -} t_vec_str; - -t_vec_str vec_str_new(t_usize capacity, - t_free_str_item free_function); -t_error vec_str_push(t_vec_str *vec, t_str element); -t_error vec_str_pop(t_vec_str *vec, t_str *value); -void vec_str_free(t_vec_str vec); -t_error vec_str_reserve(t_vec_str *vec, t_usize wanted_capacity); -t_error vec_str_find(t_vec_str *vec, bool (*fn)(const t_str *), - t_usize *index); -t_error vec_str_find_starting(t_vec_str *vec, - bool (*fn)(const t_str *), t_usize starting_index, - t_usize *index); -t_error vec_str_all(t_vec_str *vec, bool (*fn)(const t_str *), - bool *result); -t_error vec_str_any(t_vec_str *vec, bool (*fn)(const t_str *), - bool *result); -void vec_str_iter(t_vec_str *vec, void (*fn)(t_usize index, - t_str *value, void *state), void *state); - -#endif diff --git a/other/pipex/output/src/vec/vec_process.c b/other/pipex/output/src/vec/vec_process.c deleted file mode 100644 index ed7e552a..00000000 --- a/other/pipex/output/src/vec/vec_process.c +++ /dev/null @@ -1,115 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* vec_process.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2023/12/05 18:46:28 by maiboyer #+# #+# */ -/* Updated: 2023/12/09 17:54:11 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "me/mem/mem_alloc_array.h" -#include "me/mem/mem_copy.h" -#include "me/mem/mem_set_zero.h" -#include "me/types.h" -#include "me/vec/vec_process.h" -#include - -t_vec_process vec_process_new(t_usize capacity, - t_free_process_item free_function) -{ - t_vec_process out; - - out = (t_vec_process){0}; - out.free_func = free_function; - out.buffer = mem_alloc_array(capacity, sizeof(t_process)); - if (out.buffer) - out.capacity = capacity; - return (out); -} - -/// Return true in case of an error -t_error vec_process_push(t_vec_process *vec, t_process element) -{ - t_process *temp_buffer; - size_t new_capacity; - - if (vec == NULL) - return (ERROR); - if (vec->len + 1 > vec->capacity) - { - new_capacity = (vec->capacity * 3) / 2 + 1; - while (vec->len + 1 > new_capacity) - new_capacity = (new_capacity * 3) / 2 + 1; - temp_buffer = mem_alloc_array(new_capacity, sizeof(t_process)); - if (temp_buffer == NULL) - return (ERROR); - mem_copy(temp_buffer, vec->buffer, vec->len * sizeof(t_process)); - free(vec->buffer); - vec->buffer = temp_buffer; - vec->capacity = new_capacity; - } - vec->buffer[vec->len] = element; - vec->len += 1; - return (NO_ERROR); -} - -/// Return true in case of an error -t_error vec_process_reserve(t_vec_process *vec, t_usize wanted_capacity) -{ - t_process *temp_buffer; - size_t new_capacity; - - if (vec == NULL) - return (ERROR); - if (wanted_capacity > vec->capacity) - { - new_capacity = (vec->capacity * 3) / 2 + 1; - while (wanted_capacity > new_capacity) - new_capacity = (new_capacity * 3) / 2 + 1; - temp_buffer = mem_alloc_array(new_capacity, sizeof(t_process)); - if (temp_buffer == NULL) - return (ERROR); - mem_copy(temp_buffer, vec->buffer, vec->len * sizeof(t_process)); - free(vec->buffer); - vec->buffer = temp_buffer; - vec->capacity = new_capacity; - } - return (NO_ERROR); -} - -/// Return true if the vector is empty -/// This function is safe to call with value being NULL -t_error vec_process_pop(t_vec_process *vec, t_process *value) -{ - t_process temp_value; - t_process *ptr; - - if (vec == NULL) - return (ERROR); - ptr = value; - if (vec->len == 0) - return (ERROR); - if (value == NULL) - ptr = &temp_value; - vec->len--; - *ptr = vec->buffer[vec->len]; - mem_set_zero(&vec->buffer[vec->len], sizeof(t_process)); - return (NO_ERROR); -} - -/// This function is safe to call with `free_elem` being NULL -void vec_process_free(t_vec_process vec) -{ - if (vec.free_func) - { - while (vec.len) - { - vec.free_func(vec.buffer[vec.len - 1]); - vec.len--; - } - } - free(vec.buffer); -} diff --git a/other/pipex/output/src/vec/vec_process_functions2.c b/other/pipex/output/src/vec/vec_process_functions2.c deleted file mode 100644 index 9724c0e3..00000000 --- a/other/pipex/output/src/vec/vec_process_functions2.c +++ /dev/null @@ -1,109 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* vec_process.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2023/12/30 17:59:28 by maiboyer #+# #+# */ -/* Updated: 2023/12/30 17:59:28 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "me/mem/mem_alloc_array.h" -#include "me/mem/mem_copy.h" -#include "me/mem/mem_set_zero.h" -#include "me/types.h" -#include "me/vec/vec_process.h" -#include - -t_error vec_process_find(t_vec_process *vec, bool (*fn)(const t_process *), - t_usize *index) -{ - t_usize idx; - - if (vec == NULL || fn == NULL || index == NULL) - return (ERROR); - idx = 0; - while (idx < vec->len) - { - if (fn(&vec->buffer[idx])) - { - *index = idx; - return (NO_ERROR); - } - idx++; - } - return (ERROR); -} - -t_error vec_process_find_starting(t_vec_process *vec, - bool (*fn)(const t_process *), t_usize starting_index, t_usize *index) -{ - t_usize idx; - - if (vec == NULL || fn == NULL || index == NULL) - return (ERROR); - idx = starting_index; - while (idx < vec->len) - { - if (fn(&vec->buffer[idx])) - { - *index = idx; - return (NO_ERROR); - } - idx++; - } - return (ERROR); -} - -t_error vec_process_all(t_vec_process *vec, bool (*fn)(const t_process *), - bool *result) -{ - t_usize idx; - - if (vec == NULL || fn == NULL || result == NULL) - return (ERROR); - idx = 0; - *result = true; - while (*result && idx < vec->len) - { - if (!fn(&vec->buffer[idx])) - *result = false; - idx++; - } - return (ERROR); -} - -t_error vec_process_any(t_vec_process *vec, bool (*fn)(const t_process *), - bool *result) -{ - t_usize idx; - - if (vec == NULL || fn == NULL || result == NULL) - return (ERROR); - idx = 0; - *result = false; - while (*result && idx < vec->len) - { - if (fn(&vec->buffer[idx])) - *result = true; - idx++; - } - return (ERROR); -} - -void vec_process_iter(t_vec_process *vec, void (*fn)(t_usize index, - t_process *value, void *state), void *state) -{ - t_usize idx; - - if (vec == NULL || fn == NULL) - return ; - idx = 0; - while (idx < vec->len) - { - fn(idx, &vec->buffer[idx], state); - idx++; - } -} diff --git a/other/pipex/source_files.list b/other/pipex/source_files.list deleted file mode 100644 index e5bdb2ca..00000000 --- a/other/pipex/source_files.list +++ /dev/null @@ -1,9 +0,0 @@ -app/main -app/main2 -app/main3 -lib/os/pipe -lib/os/process -lib/os/process_inner -lib/os/process_inner2 -lib/string/inner/split_literals_escaped -lib/string/split_literals diff --git a/other/pipex/src/app/main.c b/other/pipex/src/app/main.c deleted file mode 100644 index 6e5428ff..00000000 --- a/other/pipex/src/app/main.c +++ /dev/null @@ -1,119 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* main.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/03 15:35:44 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 18:52:49 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "app/main.h" - -void cleanup(t_pipex_args *s, bool error) -{ - if (s->here_doc) - close(s->here_doc_fd); - close(s->in); - close(s->out); - vec_str_free(s->env); - vec_process_free(s->processes); - if (error) - exit(1); - wait(NULL); - exit(0); -} - -void process_cleanup(t_process elem) -{ - close(elem.stdin.vals.wo.fd); - close(elem.stdout.vals.ro.fd); - close(elem.stderr.vals.ro.fd); -} - -void do_here_doc_thing(t_pipex_args *s) -{ - t_buffer_str line; - t_isize f; - t_usize len; - bool error; - - len = str_len(s->here_doc_limiter); - error = false; - while (!error) - { - line = get_next_line(0, &error); - if (error) - (me_eprintf("Error:\nError when reading stdin!\n"), cleanup(s, - true)); - f = str_n_compare(line.buf, s->here_doc_limiter, len); - if (f == 0 && line.len >= len + 1 && (line.buf[len] == '\0' - || line.buf[len] == '\n')) - { - str_free(line); - break ; - } - write(s->here_doc_fd, line.buf, line.len); - str_free(line); - } - cleanup(s, false); -} - -int main2(t_pipex_args *s) -{ - t_usize p_idx; - - if (s->argc < 2 || s->argc < s->min || s->argc > s->max) - (me_eprintf("Error:\nWrong number of arguments!\n"), s->here_doc - && close(s->here_doc_fd), close(s->in), vec_str_free(s->env), - exit(1)); - s->processes = vec_process_new(s->argc, process_cleanup); - p_idx = s->argc - 2 - (t_usize)(s->here_doc); - if (spawn_helper(s, p_idx--, piped(), fd(s->out))) - (me_eprintf("Error:\nFailed to spawn process!\n"), cleanup(s, true)); - while (p_idx > 1 + (t_usize)s->here_doc) - { - if (spawn_helper(s, p_idx--, piped(), - fd(s->processes.buffer[s->processes.len - 1].stdin.vals.wo.fd))) - (me_eprintf("Error:\nFailed to spawn process!\n"), cleanup(s, - true)); - } - if (spawn_helper(s, p_idx, fd(s->in), - fd(s->processes.buffer[s->processes.len - 1].stdin.vals.wo.fd))) - (me_eprintf("Error:\nFailed to spawn process!\n"), cleanup(s, true)); - if (s->here_doc) - do_here_doc_thing(s); - cleanup(s, false); - return (0); -} - -int main(int argc, t_str argv[], t_str env[]) -{ - t_usize env_idx; - t_pipex_args s; - - s.min = 4; - s.max = 4; - s.argv = argv + 1; - s.argc = argc - 1; - s.here_doc = false; - if (s.argc < 3) - (me_eprintf("Error:\nNot enough arguments!"), exit(1)); - s.env = vec_str_new(128, (t_free_str_item)free); - env_idx = 0; - while (env[env_idx]) - vec_str_push(&s.env, str_clone(env[env_idx++])); - if (BONUS) - s.max = ~0; - if (BONUS && str_n_compare(s.argv[0], "here_doc", 9) == 0) - set_here_doc(&s); - else - open_read_file(&s); - if ((s.here_doc && me_open_create(s.argv[s.argc - 1], &s.out)) - || (!s.here_doc && me_open_truncate(s.argv[s.argc - 1], &s.out))) - (me_eprintf("Error:\n Failed to open output file!\n"), s.here_doc - && close(s.here_doc_fd), close(s.in), vec_str_free(s.env), exit(1)); - return (s.here_doc && s.argv++, main2(&s)); -} diff --git a/other/pipex/src/app/main2.c b/other/pipex/src/app/main2.c deleted file mode 100644 index 13b2e847..00000000 --- a/other/pipex/src/app/main2.c +++ /dev/null @@ -1,47 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* main2.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/06 18:46:52 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 18:55:12 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "app/main.h" - -void set_here_doc(t_pipex_args *s) -{ - t_pipe pipe; - - if (create_pipe(&pipe)) - (vec_str_free(s->env), exit(1)); - s->min = 5; - s->here_doc = true; - s->here_doc_limiter = s->argv[1]; - s->here_doc_fd = pipe.write; - s->in = pipe.read; -} - -void open_read_file(t_pipex_args *s) -{ - if (me_open(s->argv[0], true, false, &s->in)) - (me_eprintf("Error:\nInput file not found!\n"), vec_str_free(s->env), - exit(1)); -} - -void clone_vec_str_iter_fn(t_usize idx, t_str *s, void *out) -{ - vec_str_push(out, str_clone(*s)); -} - -t_vec_str clone_vec_str(t_vec_str *v) -{ - t_vec_str val; - - val = vec_str_new(v->len + 2, (t_free_str_item)free); - vec_str_iter(v, &clone_vec_str_iter_fn, &val); - return (val); -} diff --git a/other/pipex/src/app/main3.c b/other/pipex/src/app/main3.c deleted file mode 100644 index 6184281d..00000000 --- a/other/pipex/src/app/main3.c +++ /dev/null @@ -1,48 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* main3.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/06 18:48:21 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 18:55:33 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "app/main.h" - -void vec_process_free_ptr(void *s) -{ - close(((t_pipex_args *)s)->in); - close(((t_pipex_args *)s)->out); - if (((t_pipex_args *)s)->here_doc) - close(((t_pipex_args *)s)->here_doc_fd); - vec_process_free(((t_pipex_args *)s)->processes); -} - -t_error spawn_helper(t_pipex_args *s, t_usize idx, t_redirection in, - t_redirection out) -{ - t_process o; - t_vec_str args; - t_spawn_info info; - - if (split_literals(s->argv[idx], &args)) - return (ERROR); - info = (t_spawn_info){ - .stdin = in, - .stdout = out, - .stderr = inherited(), - .binary_path = str_clone(args.buffer[0]), - .arguments = args, - .environement = clone_vec_str(&s->env), - .forked_free = vec_process_free_ptr, - .forked_free_args = s, - }; - if (spawn_process( - info, - &o)) - return (ERROR); - return (vec_process_push(&s->processes, o)); -} diff --git a/other/pipex/src/lib/os/process.c b/other/pipex/src/lib/os/process.c deleted file mode 100644 index 55e0d394..00000000 --- a/other/pipex/src/lib/os/process.c +++ /dev/null @@ -1,141 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* process.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/03 16:22:41 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 17:50:47 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "me/buffered_str/buf_str.h" -#include "me/os/pipe.h" -#include "me/os/process.h" -#include "me/string/str_find_chr.h" -#include "me/string/str_n_compare.h" -#include "me/string/str_split.h" -#include "me/types.h" -#include "me/vec/vec_str.h" -#include -#include -#include - -bool find_path(const t_str *s); -bool find_null(const t_str *s); -bool str_start_with(t_const_str s, t_const_str prefix); -t_error handle_redirections(t_spawn_info *info, t_process *process); - -t_error spawn_process_exec(t_spawn_info info, t_process *process) -{ - bool res; - - if (info.forked_free) - info.forked_free(info.forked_free_args); - dup2(info.stdin.vals.fd.value, 0); - dup2(info.stdout.vals.fd.value, 1); - dup2(info.stderr.vals.fd.value, 2); - close(process->stdin.vals.ro.fd); - close(process->stdout.vals.ro.fd); - close(process->stderr.vals.ro.fd); - close(info.stdin.vals.fd.value); - close(info.stdout.vals.fd.value); - close(info.stderr.vals.fd.value); - if (!vec_str_any(&info.arguments, find_null, &res) && res) - vec_str_push(&info.arguments, NULL); - res = false; - if (!vec_str_any(&info.environement, find_null, &res) && res) - vec_str_push(&info.environement, NULL); - execve(info.binary_path, info.arguments.buffer, info.environement.buffer); - return (NO_ERROR); -} - -t_error in_path(t_spawn_info *info, t_process *process, t_const_str path, - t_buffer_str *s) -{ - t_str *splitted_path; - t_usize sp_index; - - splitted_path = str_split(path + 5, ':'); - if (splitted_path == NULL) - return (str_free(*s), ERROR); - sp_index = 0; - while (splitted_path[sp_index]) - { - ((void)(process), str_clear(s)); - push_str_buffer(s, splitted_path[sp_index]); - push_str_buffer(s, "/"); - push_str_buffer(s, info->binary_path); - sp_index++; - if (access(s->buf, X_OK | R_OK) == 0) - break ; - } - sp_index = 0; - while (splitted_path[sp_index]) - free(splitted_path[sp_index++]); - free(splitted_path); - return (NO_ERROR); -} - -t_error find_binary(t_spawn_info *info, t_process *process) -{ - t_usize p_idx; - t_str *splitted_path; - t_buffer_str s; - - (void)(process); - splitted_path = NULL; - s = alloc_new_buffer(256); - if (str_start_with(info->binary_path, "/") - || str_find_chr(info->binary_path, '/') != NULL) - push_str_buffer(&s, info->binary_path); - else - { - if (vec_str_find(&info->environement, find_path, &p_idx)) - return (str_free(s), ERROR); - if (in_path(info, process, info->environement.buffer[p_idx], &s)) - return (ERROR); - } - if (access(s.buf, X_OK | R_OK) == 0) - { - free(info->binary_path); - info->binary_path = s.buf; - return (NO_ERROR); - } - return (str_free(s), ERROR); -} - -static void cleanup(t_spawn_info info, t_process *process, bool cleanup_process) -{ - if (cleanup_process && process->stdin.tag != INVALID) - close(process->stdin.vals.ro.fd); - if (cleanup_process && process->stdout.tag != INVALID) - close(process->stdout.vals.ro.fd); - if (cleanup_process && process->stderr.tag != INVALID) - close(process->stderr.vals.ro.fd); - close(info.stdin.vals.fd.value); - close(info.stdout.vals.fd.value); - close(info.stderr.vals.fd.value); - vec_str_free(info.arguments); - vec_str_free(info.environement); - free(info.binary_path); -} - -t_error spawn_process(t_spawn_info info, t_process *process) -{ - if (handle_redirections(&info, process)) - return (cleanup(info, process, true), ERROR); - if (find_binary(&info, process)) - return (cleanup(info, process, true), ERROR); - process->pid = fork(); - if (process->pid == 0) - (spawn_process_exec(info, process), exit(1)); - else - { - cleanup(info, process, false); - if (process->pid == -1) - return (printf("pid\n"), ERROR); - } - return (NO_ERROR); -} diff --git a/other/pipex/src/lib/os/process_inner2.c b/other/pipex/src/lib/os/process_inner2.c deleted file mode 100644 index dfaf016d..00000000 --- a/other/pipex/src/lib/os/process_inner2.c +++ /dev/null @@ -1,92 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* process_inner2.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 22:27:00 by maiboyer #+# #+# */ -/* Updated: 2024/01/04 23:01:03 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "me/types.h" -#include "me/os/process.h" -#include "me/os/pipe.h" - -void handle_redirections_second(t_spawn_info *info, t_process *process) -{ - (void)(process); - if (info->stdin.tag == R_INHERITED) - { - info->stdin = fd(dup(0)); - process->stdin = ro(dup(0)); - } - if (info->stdout.tag == R_INHERITED) - { - info->stdout = fd(dup(1)); - process->stdout = wo(dup(1)); - } - if (info->stderr.tag == R_INHERITED) - { - info->stderr = fd(dup(2)); - process->stderr = wo(dup(2)); - } -} - -void handle_redirections_fds(t_spawn_info *info, t_process *process) -{ - if (info->stdin.tag == R_FD) - { - info->stdin = fd(dup(info->stdin.vals.fd.value)); - process->stdin = wo(dup(info->stdin.vals.fd.value)); - } - if (info->stdout.tag == R_FD) - { - info->stdout = fd(dup(info->stdout.vals.fd.value)); - process->stdout = ro(dup(info->stdout.vals.fd.value)); - } - if (info->stderr.tag == R_FD) - { - info->stderr = fd(dup(info->stderr.vals.fd.value)); - process->stderr = ro(dup(info->stderr.vals.fd.value)); - } -} - -static inline void redirection_inner(t_spawn_info *info, t_process *process) -{ - process->stderr.tag = INVALID; - process->stdout.tag = INVALID; - process->stdin.tag = INVALID; - handle_redirections_fds(info, process); - handle_redirections_second(info, process); -} - -t_error handle_redirections(t_spawn_info *info, t_process *process) -{ - t_pipe pipe_fd; - - redirection_inner(info, process); - if (info->stdin.tag == R_PIPED) - { - if (create_pipe(&pipe_fd)) - return (ERROR); - process->stdin = wo(pipe_fd.write); - info->stdin = fd(pipe_fd.read); - } - if (info->stdout.tag == R_PIPED) - { - if (create_pipe(&pipe_fd)) - return (ERROR); - process->stdout = ro(pipe_fd.read); - info->stdout = fd(pipe_fd.write); - } - if (info->stderr.tag == R_PIPED) - { - if (create_pipe(&pipe_fd)) - return (ERROR); - process->stderr = ro(pipe_fd.read); - info->stderr = fd(pipe_fd.write); - } - return (NO_ERROR); -} diff --git a/other/pipex/src/lib/string/inner/split_literals_escaped.c b/other/pipex/src/lib/string/inner/split_literals_escaped.c deleted file mode 100644 index fc6c39c0..00000000 --- a/other/pipex/src/lib/string/inner/split_literals_escaped.c +++ /dev/null @@ -1,118 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* split_literals_escaped.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 14:44:48 by maiboyer #+# #+# */ -/* Updated: 2024/01/05 00:06:48 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "me/buffered_str/buf_str.h" -#include "me/char/isspace.h" -#include "me/char/tolower.h" -#include "me/string/inner/inner_split_literals.h" -#include "me/string/split_literals.h" -#include "me/vec/vec_str.h" -#include -#include - -static inline char escape_oct(t_const_str s, t_usize *current_index, - bool *did_escape, t_error *error) -{ - char out; - char first; - - first = s[*current_index]; - out = first - '0'; - (*current_index)++; - first = s[(*current_index)]; - if (first >= '0' && first <= '7') - { - out = out * 8 + (first - '0'); - (*current_index)++; - first = s[(*current_index)]; - if (first >= '0' && first <= '7') - { - out = out * 8 + (first - '0'); - (*current_index)++; - first = s[(*current_index)]; - } - } - return (out); -} - -static inline char escape_hex(t_const_str s, t_usize *current_index, - bool *did_escape, t_error *error) -{ - char out; - char first; - - out = 0; - first = me_tolower(s[++(*current_index)]); - if (first >= '0' && first <= '9') - out = first - '0'; - else if (first >= 'a' && first <= 'f') - out = 10 + first - 'a'; - else - { - (*current_index)--; - return ('\0'); - } - first = me_tolower(s[++(*current_index)]); - if (first >= '0' && first <= '9') - out = out * 16 + first - '0'; - else if (first >= 'a' && first <= 'f') - out = out * 16 + 10 + first - 'a'; - return (out); -} - -char unescape_single(char first) -{ - if (first == '\\') - return ('\\'); - if (first == 'a') - return ('\a'); - if (first == 'b') - return ('\b'); - if (first == 't') - return ('\t'); - if (first == 'n') - return ('\n'); - if (first == 'v') - return ('\v'); - if (first == 'f') - return ('\f'); - if (first == 'r') - return ('\r'); - if (first == 'e') - return ('\e'); - if (first == 'E') - return ('\e'); - return ('\0'); -} - -char unescape(t_const_str s, t_usize *current_index, bool *did_escape, - t_error *error) -{ - char first; - char out; - - *did_escape = false; - if (s[(*current_index)] != '\\') - return (s[(*current_index)]); - (*current_index)++; - first = s[(*current_index)]; - *did_escape = true; - if (unescape_single(first)) - return (unescape_single(first)); - if (first >= '0' && first <= '7') - return (escape_oct(s, current_index, did_escape, error)); - if (first == 'x') - return (escape_hex(s, current_index, did_escape, error)); - *did_escape = false; - (*current_index)--; - return ('\\'); -} diff --git a/other/pipex/src/lib/string/split_literals.c b/other/pipex/src/lib/string/split_literals.c deleted file mode 100644 index c2d86405..00000000 --- a/other/pipex/src/lib/string/split_literals.c +++ /dev/null @@ -1,100 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* split_literals.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: maiboyer +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 14:28:23 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 18:43:33 by maiboyer ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "me/buffered_str/buf_str.h" -#include "me/char/isspace.h" -#include "me/string/inner/inner_split_literals.h" -#include "me/string/split_literals.h" -#include "me/string/str_clone.h" -#include "me/vec/vec_str.h" -#include -#include - -static inline void flip_and_set_false(bool *flip, bool *false_) -{ - *flip = !(*flip); - *false_ = false; -} - -static inline bool is_word_splitter(char c, t_str prefix) -{ - (void)(prefix); - return (c == ' ' || c == '\n' || c == '\t'); -} - -static inline char set_thingy(t_const_str s, t_usize *idx, bool *esc, - bool *lit_sq) -{ - char c; - bool error; - - if (!lit_sq) - { - (*idx)++; - c = unescape(s, idx, esc, &error); - } - else - { - (*idx)++; - c = s[*idx]; - } - return (c); -} - -static inline void yes(t_const_str s, t_usize *idx, t_buffer_str *temp, - t_usize *len) -{ - t_booleans b; - char c; - - b.lit_sq = false; - b.lit_dq = false; - c = unescape(s, idx, &b.esc, &b.error); - while (c != '\0' && !b.esc && is_word_splitter(c, "\t@")) - c = unescape(s, ((*idx)++, idx), &b.esc, &b.error); - while (c != '\0') - { - if (((!b.lit_sq && !b.lit_dq && !b.esc) && is_word_splitter(c, "."))) - break ; - b.append = true; - if (c == '\'' && !b.esc && !b.lit_dq) - (flip_and_set_false(&b.lit_sq, &b.append), (*len)++); - if (c == '"' && !b.esc && !b.lit_sq) - (flip_and_set_false(&b.lit_dq, &b.append), (*len)++); - if (b.append) - (push_str_char(temp, c), (*len)++); - c = set_thingy(s, idx, &b.esc, &b.lit_sq); - } -} - -t_error split_literals(t_const_str s, t_vec_str *out) -{ - t_usize idx; - t_usize len; - t_buffer_str temp; - - *out = vec_str_new(16, (t_free_str_item)free); - temp = alloc_new_buffer(64); - idx = 0; - while (s[idx]) - { - len = 0; - yes(s, &idx, &temp, &len); - if (len == 0) - continue ; - if (vec_str_push(out, temp.buf)) - return (str_free(temp), vec_str_free(*out), ERROR); - temp = alloc_new_buffer(64); - } - str_free(temp); - return (NO_ERROR); -} diff --git a/other/pipex/subject.txt b/other/pipex/subject.txt deleted file mode 100644 index b83d7478..00000000 --- a/other/pipex/subject.txt +++ /dev/null @@ -1,225 +0,0 @@ - Pipex - - - - - Summary: -This project will let you discover in detail a UNIX mechanism that you already know - by using it in your program. - - Version: 3 -Contents -I Foreword 2 - -II Common Instructions 3 - -III Mandatory part 5 - III.1 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 - III.2 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 - -IV Bonus part 7 - -V Submission and peer-evaluation 8 - - - - - 1 -Chapter I - -Foreword - -Cristina: "Go dance salsa somewhere :)" - - - - - 2 -Chapter II - -Common Instructions - - • Your project must be written in C. - - • Your project must be written in accordance with the Norm. If you have bonus - files/functions, they are included in the norm check and you will receive a 0 if there - is a norm error inside. - - • Your functions should not quit unexpectedly (segmentation fault, bus error, double - free, etc) apart from undefined behaviors. If this happens, your project will be - considered non functional and will receive a 0 during the evaluation. - - • All heap allocated memory space must be properly freed when necessary. No leaks - will be tolerated. - - • If the subject requires it, you must submit a Makefile which will compile your - source files to the required output with the flags -Wall, -Wextra and -Werror, use - cc, and your Makefile must not relink. - - • Your Makefile must at least contain the rules $(NAME), all, clean, fclean and - re. - - • To turn in bonuses to your project, you must include a rule bonus to your Makefile, - which will add all the various headers, librairies or functions that are forbidden on - the main part of the project. Bonuses must be in a different file _bonus.{c/h} if - the subject does not specify anything else. Mandatory and bonus part evaluation - is done separately. - - • If your project allows you to use your libft, you must copy its sources and its - associated Makefile in a libft folder with its associated Makefile. Your project’s - Makefile must compile the library by using its Makefile, then compile the project. - - • We encourage you to create test programs for your project even though this work - won’t have to be submitted and won’t be graded. It will give you a chance - to easily test your work and your peers’ work. You will find those tests especially - useful during your defence. Indeed, during defence, you are free to use your tests - and/or the tests of the peer you are evaluating. - - • Submit your work to your assigned git repository. Only the work in the git reposi- - tory will be graded. If Deepthought is assigned to grade your work, it will be done - - - 3 -Pipex - - - after your peer-evaluations. If an error happens in any section of your work during - Deepthought’s grading, the evaluation will stop. - - - - - 4 -Chapter III - -Mandatory part - - Program name pipex - Turn in files Makefile, *.h, *.c - Makefile NAME, all, clean, fclean, re - Arguments file1 cmd1 cmd2 file2 - External functs. - - • open, close, read, write, - malloc, free, perror, - strerror, access, dup, dup2, - execve, exit, fork, pipe, - unlink, wait, waitpid - • ft_printf and any equivalent - YOU coded - - Libft authorized Yes - Description This project is about handling pipes. - - - - Your program will be executed as follows: - - ./pipex file1 cmd1 cmd2 file2 - - - It must take 4 arguments: - - • file1 and file2 are file names. - • cmd1 and cmd2 are shell commands with their parameters. - - - It must behave exactly the same as the shell command below: - - $> < file1 cmd1 | cmd2 > file2 - - - - - 5 -Pipex - - -III.1 Examples - $> ./pipex infile "ls -l" "wc -l" outfile - -Should behave like: < infile ls -l | wc -l > outfile - - - $> ./pipex infile "grep a1" "wc -w" outfile - -Should behave like: < infile grep a1 | wc -w > outfile - - - - -III.2 Requirements -Your project must comply with the following rules: - - • You have to turn in a Makefile which will compile your source files. It must not - relink. - - • You have to handle errors thoroughly. In no way your program should quit unex- - pectedly (segmentation fault, bus error, double free, and so forth). - - • Your program mustn’t have memory leaks. - - • If you have any doubt, handle the errors like the shell command: - < file1 cmd1 | cmd2 > file2 - - - - - 6 -Chapter IV - -Bonus part - -You will get extra points if you: - - • Handle multiple pipes. - - This: - $> ./pipex file1 cmd1 cmd2 cmd3 ... cmdn file2 - - - Should behave like: - < file1 cmd1 | cmd2 | cmd3 ... | cmdn > file2 - - - - - • Support « and » when the first parameter is "here_doc". - - This: - $> ./pipex here_doc LIMITER cmd cmd1 file - - - Should behave like: - cmd << LIMITER | cmd1 >> file - - - - - The bonus part will only be assessed if the mandatory part is - PERFECT. Perfect means the mandatory part has been integrally done - and works without malfunctioning. If you have not passed ALL the - mandatory requirements, your bonus part will not be evaluated at all. - - - - - 7 -Chapter V - -Submission and peer-evaluation - -Turn in your assignment in your Git repository as usual. Only the work inside your -repository will be evaluated during the defense. Don’t hesitate to double check the -names of your files to ensure they are correct. - - - - - file.bfe:VACsSfsWN1cy33ROeASsmsgnY0o0sDMJev7zFHhw - QS8mvM8V5xQQpLc6cDCFXDWTiFzZ2H9skYkiJ/DpQtnM/uZ0 - - - - - 8 diff --git a/shcat_c/parser/Filelist.mk b/parser/Filelist.mk similarity index 100% rename from shcat_c/parser/Filelist.mk rename to parser/Filelist.mk diff --git a/shcat_c/parser/Makefile b/parser/Makefile similarity index 100% rename from shcat_c/parser/Makefile rename to parser/Makefile diff --git a/shcat_c/parser/create_language.c b/parser/create_language.c similarity index 100% rename from shcat_c/parser/create_language.c rename to parser/create_language.c diff --git a/shcat_c/parser/includes/alloc.h b/parser/includes/alloc.h similarity index 100% rename from shcat_c/parser/includes/alloc.h rename to parser/includes/alloc.h diff --git a/shcat_c/parser/includes/api.h b/parser/includes/api.h similarity index 100% rename from shcat_c/parser/includes/api.h rename to parser/includes/api.h diff --git a/shcat_c/parser/includes/array.h b/parser/includes/array.h similarity index 100% rename from shcat_c/parser/includes/array.h rename to parser/includes/array.h diff --git a/shcat_c/parser/includes/lexer.h b/parser/includes/lexer.h similarity index 100% rename from shcat_c/parser/includes/lexer.h rename to parser/includes/lexer.h diff --git a/shcat_c/parser/includes/parser.h b/parser/includes/parser.h similarity index 100% rename from shcat_c/parser/includes/parser.h rename to parser/includes/parser.h diff --git a/shcat_c/parser/includes/parser_raw_types.h b/parser/includes/parser_raw_types.h similarity index 100% rename from shcat_c/parser/includes/parser_raw_types.h rename to parser/includes/parser_raw_types.h diff --git a/shcat_c/parser/parse_types.h b/parser/parse_types.h similarity index 100% rename from shcat_c/parser/parse_types.h rename to parser/parse_types.h diff --git a/shcat_c/parser/src/array.h b/parser/src/array.h similarity index 100% rename from shcat_c/parser/src/array.h rename to parser/src/array.h diff --git a/shcat_c/parser/src/error_costs.h b/parser/src/error_costs.h similarity index 100% rename from shcat_c/parser/src/error_costs.h rename to parser/src/error_costs.h diff --git a/shcat_c/parser/src/host.h b/parser/src/host.h similarity index 100% rename from shcat_c/parser/src/host.h rename to parser/src/host.h diff --git a/shcat_c/parser/src/language.c b/parser/src/language.c similarity index 100% rename from shcat_c/parser/src/language.c rename to parser/src/language.c diff --git a/shcat_c/parser/src/language.h b/parser/src/language.h similarity index 100% rename from shcat_c/parser/src/language.h rename to parser/src/language.h diff --git a/shcat_c/parser/src/length.h b/parser/src/length.h similarity index 100% rename from shcat_c/parser/src/length.h rename to parser/src/length.h diff --git a/shcat_c/parser/src/lexer.c b/parser/src/lexer.c similarity index 100% rename from shcat_c/parser/src/lexer.c rename to parser/src/lexer.c diff --git a/shcat_c/parser/src/lexer.h b/parser/src/lexer.h similarity index 100% rename from shcat_c/parser/src/lexer.h rename to parser/src/lexer.h diff --git a/shcat_c/parser/src/node.c b/parser/src/node.c similarity index 100% rename from shcat_c/parser/src/node.c rename to parser/src/node.c diff --git a/shcat_c/parser/src/parser.c b/parser/src/parser.c similarity index 100% rename from shcat_c/parser/src/parser.c rename to parser/src/parser.c diff --git a/shcat_c/parser/src/parser.h b/parser/src/parser.h similarity index 100% rename from shcat_c/parser/src/parser.h rename to parser/src/parser.h diff --git a/shcat_c/parser/src/point.h b/parser/src/point.h similarity index 100% rename from shcat_c/parser/src/point.h rename to parser/src/point.h diff --git a/shcat_c/parser/src/reduce_action.h b/parser/src/reduce_action.h similarity index 100% rename from shcat_c/parser/src/reduce_action.h rename to parser/src/reduce_action.h diff --git a/shcat_c/parser/src/reusable_node.h b/parser/src/reusable_node.h similarity index 100% rename from shcat_c/parser/src/reusable_node.h rename to parser/src/reusable_node.h diff --git a/shcat_c/parser/src/scanner.c b/parser/src/scanner.c similarity index 100% rename from shcat_c/parser/src/scanner.c rename to parser/src/scanner.c diff --git a/shcat_c/parser/src/stack.c b/parser/src/stack.c similarity index 100% rename from shcat_c/parser/src/stack.c rename to parser/src/stack.c diff --git a/shcat_c/parser/src/stack.h b/parser/src/stack.h similarity index 100% rename from shcat_c/parser/src/stack.h rename to parser/src/stack.h diff --git a/shcat_c/parser/src/subtree.c b/parser/src/subtree.c similarity index 100% rename from shcat_c/parser/src/subtree.c rename to parser/src/subtree.c diff --git a/shcat_c/parser/src/subtree.h b/parser/src/subtree.h similarity index 100% rename from shcat_c/parser/src/subtree.h rename to parser/src/subtree.h diff --git a/shcat_c/parser/src/tree.c b/parser/src/tree.c similarity index 100% rename from shcat_c/parser/src/tree.c rename to parser/src/tree.c diff --git a/shcat_c/parser/src/tree.h b/parser/src/tree.h similarity index 100% rename from shcat_c/parser/src/tree.h rename to parser/src/tree.h diff --git a/shcat_c/parser/src/tree_cursor.c b/parser/src/tree_cursor.c similarity index 100% rename from shcat_c/parser/src/tree_cursor.c rename to parser/src/tree_cursor.c diff --git a/shcat_c/parser/src/tree_cursor.h b/parser/src/tree_cursor.h similarity index 100% rename from shcat_c/parser/src/tree_cursor.h rename to parser/src/tree_cursor.h diff --git a/shcat_c/parser/static/alias_sequences/alias_sequences.h b/parser/static/alias_sequences/alias_sequences.h similarity index 100% rename from shcat_c/parser/static/alias_sequences/alias_sequences.h rename to parser/static/alias_sequences/alias_sequences.h diff --git a/shcat_c/parser/static/alias_sequences/alias_sequences_0.c b/parser/static/alias_sequences/alias_sequences_0.c similarity index 100% rename from shcat_c/parser/static/alias_sequences/alias_sequences_0.c rename to parser/static/alias_sequences/alias_sequences_0.c diff --git a/shcat_c/parser/static/char_set/charset_inline.h b/parser/static/char_set/charset_inline.h similarity index 100% rename from shcat_c/parser/static/char_set/charset_inline.h rename to parser/static/char_set/charset_inline.h diff --git a/shcat_c/parser/static/create/create_alias_sequences.c b/parser/static/create/create_alias_sequences.c similarity index 100% rename from shcat_c/parser/static/create/create_alias_sequences.c rename to parser/static/create/create_alias_sequences.c diff --git a/shcat_c/parser/static/create/create_external_scanner_states.c b/parser/static/create/create_external_scanner_states.c similarity index 100% rename from shcat_c/parser/static/create/create_external_scanner_states.c rename to parser/static/create/create_external_scanner_states.c diff --git a/shcat_c/parser/static/create/create_external_scanner_symbol_map.c b/parser/static/create/create_external_scanner_symbol_map.c similarity index 100% rename from shcat_c/parser/static/create/create_external_scanner_symbol_map.c rename to parser/static/create/create_external_scanner_symbol_map.c diff --git a/shcat_c/parser/static/create/create_field_map_entries.c b/parser/static/create/create_field_map_entries.c similarity index 100% rename from shcat_c/parser/static/create/create_field_map_entries.c rename to parser/static/create/create_field_map_entries.c diff --git a/shcat_c/parser/static/create/create_field_map_slices.c b/parser/static/create/create_field_map_slices.c similarity index 100% rename from shcat_c/parser/static/create/create_field_map_slices.c rename to parser/static/create/create_field_map_slices.c diff --git a/shcat_c/parser/static/create/create_field_names.c b/parser/static/create/create_field_names.c similarity index 100% rename from shcat_c/parser/static/create/create_field_names.c rename to parser/static/create/create_field_names.c diff --git a/shcat_c/parser/static/create/create_lex_keywords.c b/parser/static/create/create_lex_keywords.c similarity index 100% rename from shcat_c/parser/static/create/create_lex_keywords.c rename to parser/static/create/create_lex_keywords.c diff --git a/shcat_c/parser/static/create/create_lex_modes.c b/parser/static/create/create_lex_modes.c similarity index 100% rename from shcat_c/parser/static/create/create_lex_modes.c rename to parser/static/create/create_lex_modes.c diff --git a/shcat_c/parser/static/create/create_lex_normal.c b/parser/static/create/create_lex_normal.c similarity index 100% rename from shcat_c/parser/static/create/create_lex_normal.c rename to parser/static/create/create_lex_normal.c diff --git a/shcat_c/parser/static/create/create_non_terminal_alias_map.c b/parser/static/create/create_non_terminal_alias_map.c similarity index 100% rename from shcat_c/parser/static/create/create_non_terminal_alias_map.c rename to parser/static/create/create_non_terminal_alias_map.c diff --git a/shcat_c/parser/static/create/create_parse_actions_entries.c b/parser/static/create/create_parse_actions_entries.c similarity index 100% rename from shcat_c/parser/static/create/create_parse_actions_entries.c rename to parser/static/create/create_parse_actions_entries.c diff --git a/shcat_c/parser/static/create/create_parse_table.c b/parser/static/create/create_parse_table.c similarity index 100% rename from shcat_c/parser/static/create/create_parse_table.c rename to parser/static/create/create_parse_table.c diff --git a/shcat_c/parser/static/create/create_primary_state_ids.c b/parser/static/create/create_primary_state_ids.c similarity index 100% rename from shcat_c/parser/static/create/create_primary_state_ids.c rename to parser/static/create/create_primary_state_ids.c diff --git a/shcat_c/parser/static/create/create_small_parse_table.c b/parser/static/create/create_small_parse_table.c similarity index 100% rename from shcat_c/parser/static/create/create_small_parse_table.c rename to parser/static/create/create_small_parse_table.c diff --git a/shcat_c/parser/static/create/create_small_parse_table_map.c b/parser/static/create/create_small_parse_table_map.c similarity index 100% rename from shcat_c/parser/static/create/create_small_parse_table_map.c rename to parser/static/create/create_small_parse_table_map.c diff --git a/shcat_c/parser/static/create/create_symbols_metadata.c b/parser/static/create/create_symbols_metadata.c similarity index 100% rename from shcat_c/parser/static/create/create_symbols_metadata.c rename to parser/static/create/create_symbols_metadata.c diff --git a/shcat_c/parser/static/create/create_symbols_names.c b/parser/static/create/create_symbols_names.c similarity index 100% rename from shcat_c/parser/static/create/create_symbols_names.c rename to parser/static/create/create_symbols_names.c diff --git a/shcat_c/parser/static/create/create_unique_symbols_map.c b/parser/static/create/create_unique_symbols_map.c similarity index 100% rename from shcat_c/parser/static/create/create_unique_symbols_map.c rename to parser/static/create/create_unique_symbols_map.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states.h b/parser/static/external_scanner_states/external_scanner_states.h similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states.h rename to parser/static/external_scanner_states/external_scanner_states.h diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_0.c b/parser/static/external_scanner_states/external_scanner_states_0.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_0.c rename to parser/static/external_scanner_states/external_scanner_states_0.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_1.c b/parser/static/external_scanner_states/external_scanner_states_1.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_1.c rename to parser/static/external_scanner_states/external_scanner_states_1.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_2.c b/parser/static/external_scanner_states/external_scanner_states_2.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_2.c rename to parser/static/external_scanner_states/external_scanner_states_2.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_3.c b/parser/static/external_scanner_states/external_scanner_states_3.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_3.c rename to parser/static/external_scanner_states/external_scanner_states_3.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_4.c b/parser/static/external_scanner_states/external_scanner_states_4.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_4.c rename to parser/static/external_scanner_states/external_scanner_states_4.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_5.c b/parser/static/external_scanner_states/external_scanner_states_5.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_5.c rename to parser/static/external_scanner_states/external_scanner_states_5.c diff --git a/shcat_c/parser/static/external_scanner_states/external_scanner_states_6.c b/parser/static/external_scanner_states/external_scanner_states_6.c similarity index 100% rename from shcat_c/parser/static/external_scanner_states/external_scanner_states_6.c rename to parser/static/external_scanner_states/external_scanner_states_6.c diff --git a/shcat_c/parser/static/external_scanner_symbol_map/external_scanner_symbol_map.h b/parser/static/external_scanner_symbol_map/external_scanner_symbol_map.h similarity index 100% rename from shcat_c/parser/static/external_scanner_symbol_map/external_scanner_symbol_map.h rename to parser/static/external_scanner_symbol_map/external_scanner_symbol_map.h diff --git a/shcat_c/parser/static/external_scanner_symbol_map/external_scanner_symbol_map_0.c b/parser/static/external_scanner_symbol_map/external_scanner_symbol_map_0.c similarity index 100% rename from shcat_c/parser/static/external_scanner_symbol_map/external_scanner_symbol_map_0.c rename to parser/static/external_scanner_symbol_map/external_scanner_symbol_map_0.c diff --git a/shcat_c/parser/static/field_map_entries/field_map_entries.h b/parser/static/field_map_entries/field_map_entries.h similarity index 100% rename from shcat_c/parser/static/field_map_entries/field_map_entries.h rename to parser/static/field_map_entries/field_map_entries.h diff --git a/shcat_c/parser/static/field_map_entries/field_map_entries_0.c b/parser/static/field_map_entries/field_map_entries_0.c similarity index 100% rename from shcat_c/parser/static/field_map_entries/field_map_entries_0.c rename to parser/static/field_map_entries/field_map_entries_0.c diff --git a/shcat_c/parser/static/field_map_entries/field_map_entries_1.c b/parser/static/field_map_entries/field_map_entries_1.c similarity index 100% rename from shcat_c/parser/static/field_map_entries/field_map_entries_1.c rename to parser/static/field_map_entries/field_map_entries_1.c diff --git a/shcat_c/parser/static/field_map_entries/field_map_entries_2.c b/parser/static/field_map_entries/field_map_entries_2.c similarity index 100% rename from shcat_c/parser/static/field_map_entries/field_map_entries_2.c rename to parser/static/field_map_entries/field_map_entries_2.c diff --git a/shcat_c/parser/static/field_map_slices/field_map_slices.h b/parser/static/field_map_slices/field_map_slices.h similarity index 100% rename from shcat_c/parser/static/field_map_slices/field_map_slices.h rename to parser/static/field_map_slices/field_map_slices.h diff --git a/shcat_c/parser/static/field_map_slices/field_map_slices_0.c b/parser/static/field_map_slices/field_map_slices_0.c similarity index 100% rename from shcat_c/parser/static/field_map_slices/field_map_slices_0.c rename to parser/static/field_map_slices/field_map_slices_0.c diff --git a/shcat_c/parser/static/field_map_slices/field_map_slices_1.c b/parser/static/field_map_slices/field_map_slices_1.c similarity index 100% rename from shcat_c/parser/static/field_map_slices/field_map_slices_1.c rename to parser/static/field_map_slices/field_map_slices_1.c diff --git a/shcat_c/parser/static/field_names/field_names.h b/parser/static/field_names/field_names.h similarity index 100% rename from shcat_c/parser/static/field_names/field_names.h rename to parser/static/field_names/field_names.h diff --git a/shcat_c/parser/static/field_names/field_names_0.c b/parser/static/field_names/field_names_0.c similarity index 100% rename from shcat_c/parser/static/field_names/field_names_0.c rename to parser/static/field_names/field_names_0.c diff --git a/shcat_c/parser/static/headers/constants.h b/parser/static/headers/constants.h similarity index 100% rename from shcat_c/parser/static/headers/constants.h rename to parser/static/headers/constants.h diff --git a/shcat_c/parser/static/headers/external_scanner_symbol_identifiers.h b/parser/static/headers/external_scanner_symbol_identifiers.h similarity index 100% rename from shcat_c/parser/static/headers/external_scanner_symbol_identifiers.h rename to parser/static/headers/external_scanner_symbol_identifiers.h diff --git a/shcat_c/parser/static/headers/field_identifiers.h b/parser/static/headers/field_identifiers.h similarity index 100% rename from shcat_c/parser/static/headers/field_identifiers.h rename to parser/static/headers/field_identifiers.h diff --git a/shcat_c/parser/static/headers/symbols.h b/parser/static/headers/symbols.h similarity index 100% rename from shcat_c/parser/static/headers/symbols.h rename to parser/static/headers/symbols.h diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array.h b/parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array.h rename to parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array.h diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array_0.c b/parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array_0.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array_0.c rename to parser/static/lex_funcs/lex_keywords/create_table/lex_keywords_array_0.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/inline.h b/parser/static/lex_funcs/lex_keywords/inline.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/inline.h rename to parser/static/lex_funcs/lex_keywords/inline.h diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/lex_keywords_funcs.h b/parser/static/lex_funcs/lex_keywords/lex_keywords_funcs.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/lex_keywords_funcs.h rename to parser/static/lex_funcs/lex_keywords/lex_keywords_funcs.h diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/main_func.c b/parser/static/lex_funcs/lex_keywords/main_func.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/main_func.c rename to parser/static/lex_funcs/lex_keywords/main_func.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_0.c b/parser/static/lex_funcs/lex_keywords/state_0.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_0.c rename to parser/static/lex_funcs/lex_keywords/state_0.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_0_bis.c b/parser/static/lex_funcs/lex_keywords/state_0_bis.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_0_bis.c rename to parser/static/lex_funcs/lex_keywords/state_0_bis.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_1.c b/parser/static/lex_funcs/lex_keywords/state_1.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_1.c rename to parser/static/lex_funcs/lex_keywords/state_1.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_10.c b/parser/static/lex_funcs/lex_keywords/state_10.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_10.c rename to parser/static/lex_funcs/lex_keywords/state_10.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_11.c b/parser/static/lex_funcs/lex_keywords/state_11.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_11.c rename to parser/static/lex_funcs/lex_keywords/state_11.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_12.c b/parser/static/lex_funcs/lex_keywords/state_12.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_12.c rename to parser/static/lex_funcs/lex_keywords/state_12.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_13.c b/parser/static/lex_funcs/lex_keywords/state_13.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_13.c rename to parser/static/lex_funcs/lex_keywords/state_13.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_14.c b/parser/static/lex_funcs/lex_keywords/state_14.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_14.c rename to parser/static/lex_funcs/lex_keywords/state_14.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_15.c b/parser/static/lex_funcs/lex_keywords/state_15.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_15.c rename to parser/static/lex_funcs/lex_keywords/state_15.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_16.c b/parser/static/lex_funcs/lex_keywords/state_16.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_16.c rename to parser/static/lex_funcs/lex_keywords/state_16.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_17.c b/parser/static/lex_funcs/lex_keywords/state_17.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_17.c rename to parser/static/lex_funcs/lex_keywords/state_17.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_18.c b/parser/static/lex_funcs/lex_keywords/state_18.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_18.c rename to parser/static/lex_funcs/lex_keywords/state_18.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_19.c b/parser/static/lex_funcs/lex_keywords/state_19.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_19.c rename to parser/static/lex_funcs/lex_keywords/state_19.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_2.c b/parser/static/lex_funcs/lex_keywords/state_2.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_2.c rename to parser/static/lex_funcs/lex_keywords/state_2.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_3.c b/parser/static/lex_funcs/lex_keywords/state_3.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_3.c rename to parser/static/lex_funcs/lex_keywords/state_3.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_4.c b/parser/static/lex_funcs/lex_keywords/state_4.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_4.c rename to parser/static/lex_funcs/lex_keywords/state_4.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_4_bis.c b/parser/static/lex_funcs/lex_keywords/state_4_bis.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_4_bis.c rename to parser/static/lex_funcs/lex_keywords/state_4_bis.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_5.c b/parser/static/lex_funcs/lex_keywords/state_5.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_5.c rename to parser/static/lex_funcs/lex_keywords/state_5.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_6.c b/parser/static/lex_funcs/lex_keywords/state_6.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_6.c rename to parser/static/lex_funcs/lex_keywords/state_6.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_7.c b/parser/static/lex_funcs/lex_keywords/state_7.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_7.c rename to parser/static/lex_funcs/lex_keywords/state_7.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_8.c b/parser/static/lex_funcs/lex_keywords/state_8.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_8.c rename to parser/static/lex_funcs/lex_keywords/state_8.c diff --git a/shcat_c/parser/static/lex_funcs/lex_keywords/state_9.c b/parser/static/lex_funcs/lex_keywords/state_9.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_keywords/state_9.c rename to parser/static/lex_funcs/lex_keywords/state_9.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array.h b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array.h rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_0.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_0.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_0.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_0.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_1.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_1.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_1.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_1.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_2.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_2.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_2.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_2.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_3.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_3.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_3.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_3.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_4.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_4.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_4.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_4.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_5.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_5.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_5.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_5.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_6.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_6.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_6.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_6.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_7.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_7.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_7.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_7.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_8.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_8.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_8.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_8.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_9.c b/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_9.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_9.c rename to parser/static/lex_funcs/lex_normal/create_table/lex_normal_array_9.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline.h b/parser/static/lex_funcs/lex_normal/inline.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline.h rename to parser/static/lex_funcs/lex_normal/inline.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl0.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl0.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl0.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl0.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl1.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl1.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl1.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl1.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl10.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl10.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl10.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl10.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl11.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl11.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl11.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl11.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl12.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl12.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl12.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl12.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl13.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl13.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl13.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl13.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl14.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl14.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl14.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl14.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl15.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl15.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl15.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl15.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl16.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl16.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl16.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl16.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl17.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl17.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl17.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl17.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl18.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl18.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl18.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl18.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl19.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl19.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl19.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl19.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl2.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl2.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl2.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl2.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl20.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl20.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl20.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl20.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl21.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl21.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl21.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl21.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl22.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl22.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl22.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl22.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl23.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl23.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl23.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl23.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl24.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl24.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl24.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl24.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl25.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl25.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl25.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl25.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl26.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl26.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl26.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl26.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl27.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl27.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl27.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl27.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl28.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl28.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl28.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl28.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl29.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl29.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl29.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl29.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl3.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl3.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl3.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl3.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl30.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl30.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl30.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl30.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl31.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl31.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl31.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl31.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl32.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl32.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl32.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl32.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl33.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl33.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl33.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl33.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl34.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl34.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl34.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl34.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl35.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl35.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl35.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl35.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl36.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl36.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl36.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl36.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl37.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl37.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl37.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl37.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl38.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl38.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl38.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl38.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl39.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl39.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl39.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl39.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl4.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl4.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl4.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl4.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl40.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl40.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl40.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl40.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl41.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl41.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl41.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl41.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl42.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl42.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl42.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl42.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl43.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl43.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl43.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl43.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl44.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl44.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl44.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl44.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl45.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl45.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl45.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl45.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl46.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl46.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl46.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl46.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl5.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl5.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl5.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl5.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl6.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl6.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl6.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl6.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl7.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl7.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl7.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl7.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl8.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl8.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl8.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl8.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl9.h b/parser/static/lex_funcs/lex_normal/inline/inline_impl9.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/inline/inline_impl9.h rename to parser/static/lex_funcs/lex_normal/inline/inline_impl9.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/lex_normal_funcs.h b/parser/static/lex_funcs/lex_normal/lex_normal_funcs.h similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/lex_normal_funcs.h rename to parser/static/lex_funcs/lex_normal/lex_normal_funcs.h diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/main_func.c b/parser/static/lex_funcs/lex_normal/main_func.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/main_func.c rename to parser/static/lex_funcs/lex_normal/main_func.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_0.c b/parser/static/lex_funcs/lex_normal/state_0.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_0.c rename to parser/static/lex_funcs/lex_normal/state_0.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_1.c b/parser/static/lex_funcs/lex_normal/state_1.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_1.c rename to parser/static/lex_funcs/lex_normal/state_1.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_10.c b/parser/static/lex_funcs/lex_normal/state_10.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_10.c rename to parser/static/lex_funcs/lex_normal/state_10.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_100.c b/parser/static/lex_funcs/lex_normal/state_100.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_100.c rename to parser/static/lex_funcs/lex_normal/state_100.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_101.c b/parser/static/lex_funcs/lex_normal/state_101.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_101.c rename to parser/static/lex_funcs/lex_normal/state_101.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_102.c b/parser/static/lex_funcs/lex_normal/state_102.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_102.c rename to parser/static/lex_funcs/lex_normal/state_102.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_103.c b/parser/static/lex_funcs/lex_normal/state_103.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_103.c rename to parser/static/lex_funcs/lex_normal/state_103.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_104.c b/parser/static/lex_funcs/lex_normal/state_104.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_104.c rename to parser/static/lex_funcs/lex_normal/state_104.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_105.c b/parser/static/lex_funcs/lex_normal/state_105.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_105.c rename to parser/static/lex_funcs/lex_normal/state_105.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_106.c b/parser/static/lex_funcs/lex_normal/state_106.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_106.c rename to parser/static/lex_funcs/lex_normal/state_106.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_107.c b/parser/static/lex_funcs/lex_normal/state_107.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_107.c rename to parser/static/lex_funcs/lex_normal/state_107.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_108.c b/parser/static/lex_funcs/lex_normal/state_108.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_108.c rename to parser/static/lex_funcs/lex_normal/state_108.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_109.c b/parser/static/lex_funcs/lex_normal/state_109.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_109.c rename to parser/static/lex_funcs/lex_normal/state_109.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_11.c b/parser/static/lex_funcs/lex_normal/state_11.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_11.c rename to parser/static/lex_funcs/lex_normal/state_11.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_110.c b/parser/static/lex_funcs/lex_normal/state_110.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_110.c rename to parser/static/lex_funcs/lex_normal/state_110.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_111.c b/parser/static/lex_funcs/lex_normal/state_111.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_111.c rename to parser/static/lex_funcs/lex_normal/state_111.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_112.c b/parser/static/lex_funcs/lex_normal/state_112.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_112.c rename to parser/static/lex_funcs/lex_normal/state_112.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_113.c b/parser/static/lex_funcs/lex_normal/state_113.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_113.c rename to parser/static/lex_funcs/lex_normal/state_113.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_114.c b/parser/static/lex_funcs/lex_normal/state_114.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_114.c rename to parser/static/lex_funcs/lex_normal/state_114.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_115.c b/parser/static/lex_funcs/lex_normal/state_115.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_115.c rename to parser/static/lex_funcs/lex_normal/state_115.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_116.c b/parser/static/lex_funcs/lex_normal/state_116.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_116.c rename to parser/static/lex_funcs/lex_normal/state_116.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_117.c b/parser/static/lex_funcs/lex_normal/state_117.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_117.c rename to parser/static/lex_funcs/lex_normal/state_117.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_118.c b/parser/static/lex_funcs/lex_normal/state_118.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_118.c rename to parser/static/lex_funcs/lex_normal/state_118.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_119.c b/parser/static/lex_funcs/lex_normal/state_119.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_119.c rename to parser/static/lex_funcs/lex_normal/state_119.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_12.c b/parser/static/lex_funcs/lex_normal/state_12.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_12.c rename to parser/static/lex_funcs/lex_normal/state_12.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_120.c b/parser/static/lex_funcs/lex_normal/state_120.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_120.c rename to parser/static/lex_funcs/lex_normal/state_120.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_121.c b/parser/static/lex_funcs/lex_normal/state_121.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_121.c rename to parser/static/lex_funcs/lex_normal/state_121.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_122.c b/parser/static/lex_funcs/lex_normal/state_122.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_122.c rename to parser/static/lex_funcs/lex_normal/state_122.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_123.c b/parser/static/lex_funcs/lex_normal/state_123.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_123.c rename to parser/static/lex_funcs/lex_normal/state_123.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_124.c b/parser/static/lex_funcs/lex_normal/state_124.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_124.c rename to parser/static/lex_funcs/lex_normal/state_124.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_125.c b/parser/static/lex_funcs/lex_normal/state_125.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_125.c rename to parser/static/lex_funcs/lex_normal/state_125.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_126.c b/parser/static/lex_funcs/lex_normal/state_126.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_126.c rename to parser/static/lex_funcs/lex_normal/state_126.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_127.c b/parser/static/lex_funcs/lex_normal/state_127.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_127.c rename to parser/static/lex_funcs/lex_normal/state_127.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_128.c b/parser/static/lex_funcs/lex_normal/state_128.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_128.c rename to parser/static/lex_funcs/lex_normal/state_128.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_129.c b/parser/static/lex_funcs/lex_normal/state_129.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_129.c rename to parser/static/lex_funcs/lex_normal/state_129.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_13.c b/parser/static/lex_funcs/lex_normal/state_13.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_13.c rename to parser/static/lex_funcs/lex_normal/state_13.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_130.c b/parser/static/lex_funcs/lex_normal/state_130.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_130.c rename to parser/static/lex_funcs/lex_normal/state_130.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_131.c b/parser/static/lex_funcs/lex_normal/state_131.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_131.c rename to parser/static/lex_funcs/lex_normal/state_131.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_132.c b/parser/static/lex_funcs/lex_normal/state_132.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_132.c rename to parser/static/lex_funcs/lex_normal/state_132.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_133.c b/parser/static/lex_funcs/lex_normal/state_133.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_133.c rename to parser/static/lex_funcs/lex_normal/state_133.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_134.c b/parser/static/lex_funcs/lex_normal/state_134.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_134.c rename to parser/static/lex_funcs/lex_normal/state_134.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_135.c b/parser/static/lex_funcs/lex_normal/state_135.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_135.c rename to parser/static/lex_funcs/lex_normal/state_135.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_136.c b/parser/static/lex_funcs/lex_normal/state_136.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_136.c rename to parser/static/lex_funcs/lex_normal/state_136.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_137.c b/parser/static/lex_funcs/lex_normal/state_137.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_137.c rename to parser/static/lex_funcs/lex_normal/state_137.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_138.c b/parser/static/lex_funcs/lex_normal/state_138.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_138.c rename to parser/static/lex_funcs/lex_normal/state_138.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_139.c b/parser/static/lex_funcs/lex_normal/state_139.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_139.c rename to parser/static/lex_funcs/lex_normal/state_139.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_14.c b/parser/static/lex_funcs/lex_normal/state_14.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_14.c rename to parser/static/lex_funcs/lex_normal/state_14.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_140.c b/parser/static/lex_funcs/lex_normal/state_140.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_140.c rename to parser/static/lex_funcs/lex_normal/state_140.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_141.c b/parser/static/lex_funcs/lex_normal/state_141.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_141.c rename to parser/static/lex_funcs/lex_normal/state_141.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_142.c b/parser/static/lex_funcs/lex_normal/state_142.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_142.c rename to parser/static/lex_funcs/lex_normal/state_142.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_143.c b/parser/static/lex_funcs/lex_normal/state_143.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_143.c rename to parser/static/lex_funcs/lex_normal/state_143.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_144.c b/parser/static/lex_funcs/lex_normal/state_144.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_144.c rename to parser/static/lex_funcs/lex_normal/state_144.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_145.c b/parser/static/lex_funcs/lex_normal/state_145.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_145.c rename to parser/static/lex_funcs/lex_normal/state_145.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_146.c b/parser/static/lex_funcs/lex_normal/state_146.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_146.c rename to parser/static/lex_funcs/lex_normal/state_146.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_147.c b/parser/static/lex_funcs/lex_normal/state_147.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_147.c rename to parser/static/lex_funcs/lex_normal/state_147.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_148.c b/parser/static/lex_funcs/lex_normal/state_148.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_148.c rename to parser/static/lex_funcs/lex_normal/state_148.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_149.c b/parser/static/lex_funcs/lex_normal/state_149.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_149.c rename to parser/static/lex_funcs/lex_normal/state_149.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_15.c b/parser/static/lex_funcs/lex_normal/state_15.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_15.c rename to parser/static/lex_funcs/lex_normal/state_15.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_150.c b/parser/static/lex_funcs/lex_normal/state_150.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_150.c rename to parser/static/lex_funcs/lex_normal/state_150.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_151.c b/parser/static/lex_funcs/lex_normal/state_151.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_151.c rename to parser/static/lex_funcs/lex_normal/state_151.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_152.c b/parser/static/lex_funcs/lex_normal/state_152.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_152.c rename to parser/static/lex_funcs/lex_normal/state_152.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_153.c b/parser/static/lex_funcs/lex_normal/state_153.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_153.c rename to parser/static/lex_funcs/lex_normal/state_153.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_154.c b/parser/static/lex_funcs/lex_normal/state_154.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_154.c rename to parser/static/lex_funcs/lex_normal/state_154.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_155.c b/parser/static/lex_funcs/lex_normal/state_155.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_155.c rename to parser/static/lex_funcs/lex_normal/state_155.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_156.c b/parser/static/lex_funcs/lex_normal/state_156.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_156.c rename to parser/static/lex_funcs/lex_normal/state_156.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_157.c b/parser/static/lex_funcs/lex_normal/state_157.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_157.c rename to parser/static/lex_funcs/lex_normal/state_157.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_158.c b/parser/static/lex_funcs/lex_normal/state_158.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_158.c rename to parser/static/lex_funcs/lex_normal/state_158.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_159.c b/parser/static/lex_funcs/lex_normal/state_159.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_159.c rename to parser/static/lex_funcs/lex_normal/state_159.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_16.c b/parser/static/lex_funcs/lex_normal/state_16.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_16.c rename to parser/static/lex_funcs/lex_normal/state_16.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_160.c b/parser/static/lex_funcs/lex_normal/state_160.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_160.c rename to parser/static/lex_funcs/lex_normal/state_160.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_161.c b/parser/static/lex_funcs/lex_normal/state_161.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_161.c rename to parser/static/lex_funcs/lex_normal/state_161.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_162.c b/parser/static/lex_funcs/lex_normal/state_162.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_162.c rename to parser/static/lex_funcs/lex_normal/state_162.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_163.c b/parser/static/lex_funcs/lex_normal/state_163.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_163.c rename to parser/static/lex_funcs/lex_normal/state_163.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_164.c b/parser/static/lex_funcs/lex_normal/state_164.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_164.c rename to parser/static/lex_funcs/lex_normal/state_164.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_165.c b/parser/static/lex_funcs/lex_normal/state_165.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_165.c rename to parser/static/lex_funcs/lex_normal/state_165.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_166.c b/parser/static/lex_funcs/lex_normal/state_166.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_166.c rename to parser/static/lex_funcs/lex_normal/state_166.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_167.c b/parser/static/lex_funcs/lex_normal/state_167.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_167.c rename to parser/static/lex_funcs/lex_normal/state_167.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_168.c b/parser/static/lex_funcs/lex_normal/state_168.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_168.c rename to parser/static/lex_funcs/lex_normal/state_168.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_169.c b/parser/static/lex_funcs/lex_normal/state_169.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_169.c rename to parser/static/lex_funcs/lex_normal/state_169.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_17.c b/parser/static/lex_funcs/lex_normal/state_17.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_17.c rename to parser/static/lex_funcs/lex_normal/state_17.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_170.c b/parser/static/lex_funcs/lex_normal/state_170.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_170.c rename to parser/static/lex_funcs/lex_normal/state_170.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_171.c b/parser/static/lex_funcs/lex_normal/state_171.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_171.c rename to parser/static/lex_funcs/lex_normal/state_171.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_172.c b/parser/static/lex_funcs/lex_normal/state_172.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_172.c rename to parser/static/lex_funcs/lex_normal/state_172.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_173.c b/parser/static/lex_funcs/lex_normal/state_173.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_173.c rename to parser/static/lex_funcs/lex_normal/state_173.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_174.c b/parser/static/lex_funcs/lex_normal/state_174.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_174.c rename to parser/static/lex_funcs/lex_normal/state_174.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_175.c b/parser/static/lex_funcs/lex_normal/state_175.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_175.c rename to parser/static/lex_funcs/lex_normal/state_175.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_176.c b/parser/static/lex_funcs/lex_normal/state_176.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_176.c rename to parser/static/lex_funcs/lex_normal/state_176.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_177.c b/parser/static/lex_funcs/lex_normal/state_177.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_177.c rename to parser/static/lex_funcs/lex_normal/state_177.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_178.c b/parser/static/lex_funcs/lex_normal/state_178.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_178.c rename to parser/static/lex_funcs/lex_normal/state_178.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_179.c b/parser/static/lex_funcs/lex_normal/state_179.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_179.c rename to parser/static/lex_funcs/lex_normal/state_179.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_18.c b/parser/static/lex_funcs/lex_normal/state_18.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_18.c rename to parser/static/lex_funcs/lex_normal/state_18.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_180.c b/parser/static/lex_funcs/lex_normal/state_180.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_180.c rename to parser/static/lex_funcs/lex_normal/state_180.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_181.c b/parser/static/lex_funcs/lex_normal/state_181.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_181.c rename to parser/static/lex_funcs/lex_normal/state_181.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_182.c b/parser/static/lex_funcs/lex_normal/state_182.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_182.c rename to parser/static/lex_funcs/lex_normal/state_182.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_183.c b/parser/static/lex_funcs/lex_normal/state_183.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_183.c rename to parser/static/lex_funcs/lex_normal/state_183.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_184.c b/parser/static/lex_funcs/lex_normal/state_184.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_184.c rename to parser/static/lex_funcs/lex_normal/state_184.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_185.c b/parser/static/lex_funcs/lex_normal/state_185.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_185.c rename to parser/static/lex_funcs/lex_normal/state_185.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_186.c b/parser/static/lex_funcs/lex_normal/state_186.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_186.c rename to parser/static/lex_funcs/lex_normal/state_186.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_187.c b/parser/static/lex_funcs/lex_normal/state_187.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_187.c rename to parser/static/lex_funcs/lex_normal/state_187.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_188.c b/parser/static/lex_funcs/lex_normal/state_188.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_188.c rename to parser/static/lex_funcs/lex_normal/state_188.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_189.c b/parser/static/lex_funcs/lex_normal/state_189.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_189.c rename to parser/static/lex_funcs/lex_normal/state_189.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_19.c b/parser/static/lex_funcs/lex_normal/state_19.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_19.c rename to parser/static/lex_funcs/lex_normal/state_19.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_190.c b/parser/static/lex_funcs/lex_normal/state_190.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_190.c rename to parser/static/lex_funcs/lex_normal/state_190.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_191.c b/parser/static/lex_funcs/lex_normal/state_191.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_191.c rename to parser/static/lex_funcs/lex_normal/state_191.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_2.c b/parser/static/lex_funcs/lex_normal/state_2.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_2.c rename to parser/static/lex_funcs/lex_normal/state_2.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_20.c b/parser/static/lex_funcs/lex_normal/state_20.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_20.c rename to parser/static/lex_funcs/lex_normal/state_20.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_21.c b/parser/static/lex_funcs/lex_normal/state_21.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_21.c rename to parser/static/lex_funcs/lex_normal/state_21.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_22.c b/parser/static/lex_funcs/lex_normal/state_22.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_22.c rename to parser/static/lex_funcs/lex_normal/state_22.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_23.c b/parser/static/lex_funcs/lex_normal/state_23.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_23.c rename to parser/static/lex_funcs/lex_normal/state_23.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_24.c b/parser/static/lex_funcs/lex_normal/state_24.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_24.c rename to parser/static/lex_funcs/lex_normal/state_24.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_25.c b/parser/static/lex_funcs/lex_normal/state_25.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_25.c rename to parser/static/lex_funcs/lex_normal/state_25.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_26.c b/parser/static/lex_funcs/lex_normal/state_26.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_26.c rename to parser/static/lex_funcs/lex_normal/state_26.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_27.c b/parser/static/lex_funcs/lex_normal/state_27.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_27.c rename to parser/static/lex_funcs/lex_normal/state_27.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_28.c b/parser/static/lex_funcs/lex_normal/state_28.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_28.c rename to parser/static/lex_funcs/lex_normal/state_28.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_29.c b/parser/static/lex_funcs/lex_normal/state_29.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_29.c rename to parser/static/lex_funcs/lex_normal/state_29.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_3.c b/parser/static/lex_funcs/lex_normal/state_3.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_3.c rename to parser/static/lex_funcs/lex_normal/state_3.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_30.c b/parser/static/lex_funcs/lex_normal/state_30.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_30.c rename to parser/static/lex_funcs/lex_normal/state_30.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_31.c b/parser/static/lex_funcs/lex_normal/state_31.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_31.c rename to parser/static/lex_funcs/lex_normal/state_31.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_32.c b/parser/static/lex_funcs/lex_normal/state_32.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_32.c rename to parser/static/lex_funcs/lex_normal/state_32.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_33.c b/parser/static/lex_funcs/lex_normal/state_33.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_33.c rename to parser/static/lex_funcs/lex_normal/state_33.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_34.c b/parser/static/lex_funcs/lex_normal/state_34.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_34.c rename to parser/static/lex_funcs/lex_normal/state_34.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_35.c b/parser/static/lex_funcs/lex_normal/state_35.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_35.c rename to parser/static/lex_funcs/lex_normal/state_35.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_36.c b/parser/static/lex_funcs/lex_normal/state_36.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_36.c rename to parser/static/lex_funcs/lex_normal/state_36.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_37.c b/parser/static/lex_funcs/lex_normal/state_37.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_37.c rename to parser/static/lex_funcs/lex_normal/state_37.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_38.c b/parser/static/lex_funcs/lex_normal/state_38.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_38.c rename to parser/static/lex_funcs/lex_normal/state_38.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_39.c b/parser/static/lex_funcs/lex_normal/state_39.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_39.c rename to parser/static/lex_funcs/lex_normal/state_39.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_4.c b/parser/static/lex_funcs/lex_normal/state_4.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_4.c rename to parser/static/lex_funcs/lex_normal/state_4.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_40.c b/parser/static/lex_funcs/lex_normal/state_40.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_40.c rename to parser/static/lex_funcs/lex_normal/state_40.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_41.c b/parser/static/lex_funcs/lex_normal/state_41.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_41.c rename to parser/static/lex_funcs/lex_normal/state_41.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_42.c b/parser/static/lex_funcs/lex_normal/state_42.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_42.c rename to parser/static/lex_funcs/lex_normal/state_42.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_43.c b/parser/static/lex_funcs/lex_normal/state_43.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_43.c rename to parser/static/lex_funcs/lex_normal/state_43.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_44.c b/parser/static/lex_funcs/lex_normal/state_44.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_44.c rename to parser/static/lex_funcs/lex_normal/state_44.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_45.c b/parser/static/lex_funcs/lex_normal/state_45.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_45.c rename to parser/static/lex_funcs/lex_normal/state_45.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_46.c b/parser/static/lex_funcs/lex_normal/state_46.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_46.c rename to parser/static/lex_funcs/lex_normal/state_46.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_47.c b/parser/static/lex_funcs/lex_normal/state_47.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_47.c rename to parser/static/lex_funcs/lex_normal/state_47.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_48.c b/parser/static/lex_funcs/lex_normal/state_48.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_48.c rename to parser/static/lex_funcs/lex_normal/state_48.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_49.c b/parser/static/lex_funcs/lex_normal/state_49.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_49.c rename to parser/static/lex_funcs/lex_normal/state_49.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_5.c b/parser/static/lex_funcs/lex_normal/state_5.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_5.c rename to parser/static/lex_funcs/lex_normal/state_5.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_50.c b/parser/static/lex_funcs/lex_normal/state_50.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_50.c rename to parser/static/lex_funcs/lex_normal/state_50.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_51.c b/parser/static/lex_funcs/lex_normal/state_51.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_51.c rename to parser/static/lex_funcs/lex_normal/state_51.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_52.c b/parser/static/lex_funcs/lex_normal/state_52.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_52.c rename to parser/static/lex_funcs/lex_normal/state_52.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_53.c b/parser/static/lex_funcs/lex_normal/state_53.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_53.c rename to parser/static/lex_funcs/lex_normal/state_53.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_54.c b/parser/static/lex_funcs/lex_normal/state_54.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_54.c rename to parser/static/lex_funcs/lex_normal/state_54.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_55.c b/parser/static/lex_funcs/lex_normal/state_55.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_55.c rename to parser/static/lex_funcs/lex_normal/state_55.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_56.c b/parser/static/lex_funcs/lex_normal/state_56.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_56.c rename to parser/static/lex_funcs/lex_normal/state_56.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_57.c b/parser/static/lex_funcs/lex_normal/state_57.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_57.c rename to parser/static/lex_funcs/lex_normal/state_57.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_58.c b/parser/static/lex_funcs/lex_normal/state_58.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_58.c rename to parser/static/lex_funcs/lex_normal/state_58.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_59.c b/parser/static/lex_funcs/lex_normal/state_59.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_59.c rename to parser/static/lex_funcs/lex_normal/state_59.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_6.c b/parser/static/lex_funcs/lex_normal/state_6.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_6.c rename to parser/static/lex_funcs/lex_normal/state_6.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_60.c b/parser/static/lex_funcs/lex_normal/state_60.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_60.c rename to parser/static/lex_funcs/lex_normal/state_60.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_61.c b/parser/static/lex_funcs/lex_normal/state_61.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_61.c rename to parser/static/lex_funcs/lex_normal/state_61.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_62.c b/parser/static/lex_funcs/lex_normal/state_62.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_62.c rename to parser/static/lex_funcs/lex_normal/state_62.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_63.c b/parser/static/lex_funcs/lex_normal/state_63.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_63.c rename to parser/static/lex_funcs/lex_normal/state_63.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_64.c b/parser/static/lex_funcs/lex_normal/state_64.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_64.c rename to parser/static/lex_funcs/lex_normal/state_64.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_65.c b/parser/static/lex_funcs/lex_normal/state_65.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_65.c rename to parser/static/lex_funcs/lex_normal/state_65.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_66.c b/parser/static/lex_funcs/lex_normal/state_66.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_66.c rename to parser/static/lex_funcs/lex_normal/state_66.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_67.c b/parser/static/lex_funcs/lex_normal/state_67.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_67.c rename to parser/static/lex_funcs/lex_normal/state_67.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_68.c b/parser/static/lex_funcs/lex_normal/state_68.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_68.c rename to parser/static/lex_funcs/lex_normal/state_68.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_69.c b/parser/static/lex_funcs/lex_normal/state_69.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_69.c rename to parser/static/lex_funcs/lex_normal/state_69.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_7.c b/parser/static/lex_funcs/lex_normal/state_7.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_7.c rename to parser/static/lex_funcs/lex_normal/state_7.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_70.c b/parser/static/lex_funcs/lex_normal/state_70.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_70.c rename to parser/static/lex_funcs/lex_normal/state_70.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_71.c b/parser/static/lex_funcs/lex_normal/state_71.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_71.c rename to parser/static/lex_funcs/lex_normal/state_71.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_72.c b/parser/static/lex_funcs/lex_normal/state_72.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_72.c rename to parser/static/lex_funcs/lex_normal/state_72.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_73.c b/parser/static/lex_funcs/lex_normal/state_73.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_73.c rename to parser/static/lex_funcs/lex_normal/state_73.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_74.c b/parser/static/lex_funcs/lex_normal/state_74.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_74.c rename to parser/static/lex_funcs/lex_normal/state_74.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_75.c b/parser/static/lex_funcs/lex_normal/state_75.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_75.c rename to parser/static/lex_funcs/lex_normal/state_75.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_76.c b/parser/static/lex_funcs/lex_normal/state_76.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_76.c rename to parser/static/lex_funcs/lex_normal/state_76.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_77.c b/parser/static/lex_funcs/lex_normal/state_77.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_77.c rename to parser/static/lex_funcs/lex_normal/state_77.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_78.c b/parser/static/lex_funcs/lex_normal/state_78.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_78.c rename to parser/static/lex_funcs/lex_normal/state_78.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_79.c b/parser/static/lex_funcs/lex_normal/state_79.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_79.c rename to parser/static/lex_funcs/lex_normal/state_79.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_8.c b/parser/static/lex_funcs/lex_normal/state_8.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_8.c rename to parser/static/lex_funcs/lex_normal/state_8.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_80.c b/parser/static/lex_funcs/lex_normal/state_80.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_80.c rename to parser/static/lex_funcs/lex_normal/state_80.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_81.c b/parser/static/lex_funcs/lex_normal/state_81.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_81.c rename to parser/static/lex_funcs/lex_normal/state_81.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_82.c b/parser/static/lex_funcs/lex_normal/state_82.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_82.c rename to parser/static/lex_funcs/lex_normal/state_82.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_83.c b/parser/static/lex_funcs/lex_normal/state_83.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_83.c rename to parser/static/lex_funcs/lex_normal/state_83.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_84.c b/parser/static/lex_funcs/lex_normal/state_84.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_84.c rename to parser/static/lex_funcs/lex_normal/state_84.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_85.c b/parser/static/lex_funcs/lex_normal/state_85.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_85.c rename to parser/static/lex_funcs/lex_normal/state_85.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_86.c b/parser/static/lex_funcs/lex_normal/state_86.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_86.c rename to parser/static/lex_funcs/lex_normal/state_86.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_87.c b/parser/static/lex_funcs/lex_normal/state_87.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_87.c rename to parser/static/lex_funcs/lex_normal/state_87.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_88.c b/parser/static/lex_funcs/lex_normal/state_88.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_88.c rename to parser/static/lex_funcs/lex_normal/state_88.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_89.c b/parser/static/lex_funcs/lex_normal/state_89.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_89.c rename to parser/static/lex_funcs/lex_normal/state_89.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_9.c b/parser/static/lex_funcs/lex_normal/state_9.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_9.c rename to parser/static/lex_funcs/lex_normal/state_9.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_90.c b/parser/static/lex_funcs/lex_normal/state_90.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_90.c rename to parser/static/lex_funcs/lex_normal/state_90.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_91.c b/parser/static/lex_funcs/lex_normal/state_91.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_91.c rename to parser/static/lex_funcs/lex_normal/state_91.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_92.c b/parser/static/lex_funcs/lex_normal/state_92.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_92.c rename to parser/static/lex_funcs/lex_normal/state_92.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_93.c b/parser/static/lex_funcs/lex_normal/state_93.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_93.c rename to parser/static/lex_funcs/lex_normal/state_93.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_94.c b/parser/static/lex_funcs/lex_normal/state_94.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_94.c rename to parser/static/lex_funcs/lex_normal/state_94.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_95.c b/parser/static/lex_funcs/lex_normal/state_95.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_95.c rename to parser/static/lex_funcs/lex_normal/state_95.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_96.c b/parser/static/lex_funcs/lex_normal/state_96.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_96.c rename to parser/static/lex_funcs/lex_normal/state_96.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_97.c b/parser/static/lex_funcs/lex_normal/state_97.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_97.c rename to parser/static/lex_funcs/lex_normal/state_97.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_98.c b/parser/static/lex_funcs/lex_normal/state_98.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_98.c rename to parser/static/lex_funcs/lex_normal/state_98.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_99.c b/parser/static/lex_funcs/lex_normal/state_99.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_99.c rename to parser/static/lex_funcs/lex_normal/state_99.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_helper.c b/parser/static/lex_funcs/lex_normal/state_helper.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_helper.c rename to parser/static/lex_funcs/lex_normal/state_helper.c diff --git a/shcat_c/parser/static/lex_funcs/lex_normal/state_helper2.c b/parser/static/lex_funcs/lex_normal/state_helper2.c similarity index 100% rename from shcat_c/parser/static/lex_funcs/lex_normal/state_helper2.c rename to parser/static/lex_funcs/lex_normal/state_helper2.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes.h b/parser/static/lex_modes/lex_modes.h similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes.h rename to parser/static/lex_modes/lex_modes.h diff --git a/shcat_c/parser/static/lex_modes/lex_modes_0.c b/parser/static/lex_modes/lex_modes_0.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_0.c rename to parser/static/lex_modes/lex_modes_0.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_1.c b/parser/static/lex_modes/lex_modes_1.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_1.c rename to parser/static/lex_modes/lex_modes_1.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_10.c b/parser/static/lex_modes/lex_modes_10.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_10.c rename to parser/static/lex_modes/lex_modes_10.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_11.c b/parser/static/lex_modes/lex_modes_11.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_11.c rename to parser/static/lex_modes/lex_modes_11.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_12.c b/parser/static/lex_modes/lex_modes_12.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_12.c rename to parser/static/lex_modes/lex_modes_12.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_13.c b/parser/static/lex_modes/lex_modes_13.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_13.c rename to parser/static/lex_modes/lex_modes_13.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_14.c b/parser/static/lex_modes/lex_modes_14.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_14.c rename to parser/static/lex_modes/lex_modes_14.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_15.c b/parser/static/lex_modes/lex_modes_15.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_15.c rename to parser/static/lex_modes/lex_modes_15.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_16.c b/parser/static/lex_modes/lex_modes_16.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_16.c rename to parser/static/lex_modes/lex_modes_16.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_17.c b/parser/static/lex_modes/lex_modes_17.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_17.c rename to parser/static/lex_modes/lex_modes_17.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_18.c b/parser/static/lex_modes/lex_modes_18.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_18.c rename to parser/static/lex_modes/lex_modes_18.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_19.c b/parser/static/lex_modes/lex_modes_19.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_19.c rename to parser/static/lex_modes/lex_modes_19.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_2.c b/parser/static/lex_modes/lex_modes_2.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_2.c rename to parser/static/lex_modes/lex_modes_2.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_20.c b/parser/static/lex_modes/lex_modes_20.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_20.c rename to parser/static/lex_modes/lex_modes_20.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_21.c b/parser/static/lex_modes/lex_modes_21.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_21.c rename to parser/static/lex_modes/lex_modes_21.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_22.c b/parser/static/lex_modes/lex_modes_22.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_22.c rename to parser/static/lex_modes/lex_modes_22.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_23.c b/parser/static/lex_modes/lex_modes_23.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_23.c rename to parser/static/lex_modes/lex_modes_23.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_24.c b/parser/static/lex_modes/lex_modes_24.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_24.c rename to parser/static/lex_modes/lex_modes_24.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_25.c b/parser/static/lex_modes/lex_modes_25.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_25.c rename to parser/static/lex_modes/lex_modes_25.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_26.c b/parser/static/lex_modes/lex_modes_26.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_26.c rename to parser/static/lex_modes/lex_modes_26.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_27.c b/parser/static/lex_modes/lex_modes_27.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_27.c rename to parser/static/lex_modes/lex_modes_27.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_28.c b/parser/static/lex_modes/lex_modes_28.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_28.c rename to parser/static/lex_modes/lex_modes_28.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_29.c b/parser/static/lex_modes/lex_modes_29.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_29.c rename to parser/static/lex_modes/lex_modes_29.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_3.c b/parser/static/lex_modes/lex_modes_3.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_3.c rename to parser/static/lex_modes/lex_modes_3.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_30.c b/parser/static/lex_modes/lex_modes_30.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_30.c rename to parser/static/lex_modes/lex_modes_30.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_31.c b/parser/static/lex_modes/lex_modes_31.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_31.c rename to parser/static/lex_modes/lex_modes_31.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_32.c b/parser/static/lex_modes/lex_modes_32.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_32.c rename to parser/static/lex_modes/lex_modes_32.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_33.c b/parser/static/lex_modes/lex_modes_33.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_33.c rename to parser/static/lex_modes/lex_modes_33.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_34.c b/parser/static/lex_modes/lex_modes_34.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_34.c rename to parser/static/lex_modes/lex_modes_34.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_35.c b/parser/static/lex_modes/lex_modes_35.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_35.c rename to parser/static/lex_modes/lex_modes_35.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_36.c b/parser/static/lex_modes/lex_modes_36.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_36.c rename to parser/static/lex_modes/lex_modes_36.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_37.c b/parser/static/lex_modes/lex_modes_37.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_37.c rename to parser/static/lex_modes/lex_modes_37.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_38.c b/parser/static/lex_modes/lex_modes_38.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_38.c rename to parser/static/lex_modes/lex_modes_38.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_39.c b/parser/static/lex_modes/lex_modes_39.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_39.c rename to parser/static/lex_modes/lex_modes_39.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_4.c b/parser/static/lex_modes/lex_modes_4.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_4.c rename to parser/static/lex_modes/lex_modes_4.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_40.c b/parser/static/lex_modes/lex_modes_40.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_40.c rename to parser/static/lex_modes/lex_modes_40.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_41.c b/parser/static/lex_modes/lex_modes_41.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_41.c rename to parser/static/lex_modes/lex_modes_41.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_42.c b/parser/static/lex_modes/lex_modes_42.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_42.c rename to parser/static/lex_modes/lex_modes_42.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_43.c b/parser/static/lex_modes/lex_modes_43.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_43.c rename to parser/static/lex_modes/lex_modes_43.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_44.c b/parser/static/lex_modes/lex_modes_44.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_44.c rename to parser/static/lex_modes/lex_modes_44.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_45.c b/parser/static/lex_modes/lex_modes_45.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_45.c rename to parser/static/lex_modes/lex_modes_45.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_46.c b/parser/static/lex_modes/lex_modes_46.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_46.c rename to parser/static/lex_modes/lex_modes_46.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_47.c b/parser/static/lex_modes/lex_modes_47.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_47.c rename to parser/static/lex_modes/lex_modes_47.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_48.c b/parser/static/lex_modes/lex_modes_48.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_48.c rename to parser/static/lex_modes/lex_modes_48.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_49.c b/parser/static/lex_modes/lex_modes_49.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_49.c rename to parser/static/lex_modes/lex_modes_49.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_5.c b/parser/static/lex_modes/lex_modes_5.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_5.c rename to parser/static/lex_modes/lex_modes_5.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_50.c b/parser/static/lex_modes/lex_modes_50.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_50.c rename to parser/static/lex_modes/lex_modes_50.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_51.c b/parser/static/lex_modes/lex_modes_51.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_51.c rename to parser/static/lex_modes/lex_modes_51.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_52.c b/parser/static/lex_modes/lex_modes_52.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_52.c rename to parser/static/lex_modes/lex_modes_52.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_53.c b/parser/static/lex_modes/lex_modes_53.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_53.c rename to parser/static/lex_modes/lex_modes_53.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_54.c b/parser/static/lex_modes/lex_modes_54.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_54.c rename to parser/static/lex_modes/lex_modes_54.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_55.c b/parser/static/lex_modes/lex_modes_55.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_55.c rename to parser/static/lex_modes/lex_modes_55.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_56.c b/parser/static/lex_modes/lex_modes_56.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_56.c rename to parser/static/lex_modes/lex_modes_56.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_57.c b/parser/static/lex_modes/lex_modes_57.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_57.c rename to parser/static/lex_modes/lex_modes_57.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_58.c b/parser/static/lex_modes/lex_modes_58.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_58.c rename to parser/static/lex_modes/lex_modes_58.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_59.c b/parser/static/lex_modes/lex_modes_59.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_59.c rename to parser/static/lex_modes/lex_modes_59.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_6.c b/parser/static/lex_modes/lex_modes_6.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_6.c rename to parser/static/lex_modes/lex_modes_6.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_60.c b/parser/static/lex_modes/lex_modes_60.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_60.c rename to parser/static/lex_modes/lex_modes_60.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_61.c b/parser/static/lex_modes/lex_modes_61.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_61.c rename to parser/static/lex_modes/lex_modes_61.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_62.c b/parser/static/lex_modes/lex_modes_62.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_62.c rename to parser/static/lex_modes/lex_modes_62.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_63.c b/parser/static/lex_modes/lex_modes_63.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_63.c rename to parser/static/lex_modes/lex_modes_63.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_64.c b/parser/static/lex_modes/lex_modes_64.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_64.c rename to parser/static/lex_modes/lex_modes_64.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_65.c b/parser/static/lex_modes/lex_modes_65.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_65.c rename to parser/static/lex_modes/lex_modes_65.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_66.c b/parser/static/lex_modes/lex_modes_66.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_66.c rename to parser/static/lex_modes/lex_modes_66.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_67.c b/parser/static/lex_modes/lex_modes_67.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_67.c rename to parser/static/lex_modes/lex_modes_67.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_68.c b/parser/static/lex_modes/lex_modes_68.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_68.c rename to parser/static/lex_modes/lex_modes_68.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_69.c b/parser/static/lex_modes/lex_modes_69.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_69.c rename to parser/static/lex_modes/lex_modes_69.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_7.c b/parser/static/lex_modes/lex_modes_7.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_7.c rename to parser/static/lex_modes/lex_modes_7.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_70.c b/parser/static/lex_modes/lex_modes_70.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_70.c rename to parser/static/lex_modes/lex_modes_70.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_71.c b/parser/static/lex_modes/lex_modes_71.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_71.c rename to parser/static/lex_modes/lex_modes_71.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_72.c b/parser/static/lex_modes/lex_modes_72.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_72.c rename to parser/static/lex_modes/lex_modes_72.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_73.c b/parser/static/lex_modes/lex_modes_73.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_73.c rename to parser/static/lex_modes/lex_modes_73.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_74.c b/parser/static/lex_modes/lex_modes_74.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_74.c rename to parser/static/lex_modes/lex_modes_74.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_75.c b/parser/static/lex_modes/lex_modes_75.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_75.c rename to parser/static/lex_modes/lex_modes_75.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_76.c b/parser/static/lex_modes/lex_modes_76.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_76.c rename to parser/static/lex_modes/lex_modes_76.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_8.c b/parser/static/lex_modes/lex_modes_8.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_8.c rename to parser/static/lex_modes/lex_modes_8.c diff --git a/shcat_c/parser/static/lex_modes/lex_modes_9.c b/parser/static/lex_modes/lex_modes_9.c similarity index 100% rename from shcat_c/parser/static/lex_modes/lex_modes_9.c rename to parser/static/lex_modes/lex_modes_9.c diff --git a/shcat_c/parser/static/non_terminal_alias_map/non_terminal_alias_map.h b/parser/static/non_terminal_alias_map/non_terminal_alias_map.h similarity index 100% rename from shcat_c/parser/static/non_terminal_alias_map/non_terminal_alias_map.h rename to parser/static/non_terminal_alias_map/non_terminal_alias_map.h diff --git a/shcat_c/parser/static/non_terminal_alias_map/non_terminal_alias_map_0.c b/parser/static/non_terminal_alias_map/non_terminal_alias_map_0.c similarity index 100% rename from shcat_c/parser/static/non_terminal_alias_map/non_terminal_alias_map_0.c rename to parser/static/non_terminal_alias_map/non_terminal_alias_map_0.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries.h b/parser/static/parse_actions_entries/parse_actions_entries.h similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries.h rename to parser/static/parse_actions_entries/parse_actions_entries.h diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_0.c b/parser/static/parse_actions_entries/parse_actions_entries_0.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_0.c rename to parser/static/parse_actions_entries/parse_actions_entries_0.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_1.c b/parser/static/parse_actions_entries/parse_actions_entries_1.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_1.c rename to parser/static/parse_actions_entries/parse_actions_entries_1.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_10.c b/parser/static/parse_actions_entries/parse_actions_entries_10.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_10.c rename to parser/static/parse_actions_entries/parse_actions_entries_10.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_100.c b/parser/static/parse_actions_entries/parse_actions_entries_100.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_100.c rename to parser/static/parse_actions_entries/parse_actions_entries_100.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_101.c b/parser/static/parse_actions_entries/parse_actions_entries_101.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_101.c rename to parser/static/parse_actions_entries/parse_actions_entries_101.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_102.c b/parser/static/parse_actions_entries/parse_actions_entries_102.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_102.c rename to parser/static/parse_actions_entries/parse_actions_entries_102.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_103.c b/parser/static/parse_actions_entries/parse_actions_entries_103.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_103.c rename to parser/static/parse_actions_entries/parse_actions_entries_103.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_104.c b/parser/static/parse_actions_entries/parse_actions_entries_104.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_104.c rename to parser/static/parse_actions_entries/parse_actions_entries_104.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_105.c b/parser/static/parse_actions_entries/parse_actions_entries_105.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_105.c rename to parser/static/parse_actions_entries/parse_actions_entries_105.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_106.c b/parser/static/parse_actions_entries/parse_actions_entries_106.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_106.c rename to parser/static/parse_actions_entries/parse_actions_entries_106.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_107.c b/parser/static/parse_actions_entries/parse_actions_entries_107.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_107.c rename to parser/static/parse_actions_entries/parse_actions_entries_107.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_108.c b/parser/static/parse_actions_entries/parse_actions_entries_108.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_108.c rename to parser/static/parse_actions_entries/parse_actions_entries_108.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_109.c b/parser/static/parse_actions_entries/parse_actions_entries_109.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_109.c rename to parser/static/parse_actions_entries/parse_actions_entries_109.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_11.c b/parser/static/parse_actions_entries/parse_actions_entries_11.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_11.c rename to parser/static/parse_actions_entries/parse_actions_entries_11.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_110.c b/parser/static/parse_actions_entries/parse_actions_entries_110.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_110.c rename to parser/static/parse_actions_entries/parse_actions_entries_110.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_111.c b/parser/static/parse_actions_entries/parse_actions_entries_111.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_111.c rename to parser/static/parse_actions_entries/parse_actions_entries_111.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_112.c b/parser/static/parse_actions_entries/parse_actions_entries_112.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_112.c rename to parser/static/parse_actions_entries/parse_actions_entries_112.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_113.c b/parser/static/parse_actions_entries/parse_actions_entries_113.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_113.c rename to parser/static/parse_actions_entries/parse_actions_entries_113.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_114.c b/parser/static/parse_actions_entries/parse_actions_entries_114.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_114.c rename to parser/static/parse_actions_entries/parse_actions_entries_114.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_115.c b/parser/static/parse_actions_entries/parse_actions_entries_115.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_115.c rename to parser/static/parse_actions_entries/parse_actions_entries_115.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_116.c b/parser/static/parse_actions_entries/parse_actions_entries_116.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_116.c rename to parser/static/parse_actions_entries/parse_actions_entries_116.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_117.c b/parser/static/parse_actions_entries/parse_actions_entries_117.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_117.c rename to parser/static/parse_actions_entries/parse_actions_entries_117.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_118.c b/parser/static/parse_actions_entries/parse_actions_entries_118.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_118.c rename to parser/static/parse_actions_entries/parse_actions_entries_118.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_119.c b/parser/static/parse_actions_entries/parse_actions_entries_119.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_119.c rename to parser/static/parse_actions_entries/parse_actions_entries_119.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_12.c b/parser/static/parse_actions_entries/parse_actions_entries_12.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_12.c rename to parser/static/parse_actions_entries/parse_actions_entries_12.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_120.c b/parser/static/parse_actions_entries/parse_actions_entries_120.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_120.c rename to parser/static/parse_actions_entries/parse_actions_entries_120.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_121.c b/parser/static/parse_actions_entries/parse_actions_entries_121.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_121.c rename to parser/static/parse_actions_entries/parse_actions_entries_121.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_122.c b/parser/static/parse_actions_entries/parse_actions_entries_122.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_122.c rename to parser/static/parse_actions_entries/parse_actions_entries_122.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_123.c b/parser/static/parse_actions_entries/parse_actions_entries_123.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_123.c rename to parser/static/parse_actions_entries/parse_actions_entries_123.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_124.c b/parser/static/parse_actions_entries/parse_actions_entries_124.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_124.c rename to parser/static/parse_actions_entries/parse_actions_entries_124.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_125.c b/parser/static/parse_actions_entries/parse_actions_entries_125.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_125.c rename to parser/static/parse_actions_entries/parse_actions_entries_125.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_126.c b/parser/static/parse_actions_entries/parse_actions_entries_126.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_126.c rename to parser/static/parse_actions_entries/parse_actions_entries_126.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_127.c b/parser/static/parse_actions_entries/parse_actions_entries_127.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_127.c rename to parser/static/parse_actions_entries/parse_actions_entries_127.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_128.c b/parser/static/parse_actions_entries/parse_actions_entries_128.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_128.c rename to parser/static/parse_actions_entries/parse_actions_entries_128.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_129.c b/parser/static/parse_actions_entries/parse_actions_entries_129.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_129.c rename to parser/static/parse_actions_entries/parse_actions_entries_129.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_13.c b/parser/static/parse_actions_entries/parse_actions_entries_13.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_13.c rename to parser/static/parse_actions_entries/parse_actions_entries_13.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_130.c b/parser/static/parse_actions_entries/parse_actions_entries_130.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_130.c rename to parser/static/parse_actions_entries/parse_actions_entries_130.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_131.c b/parser/static/parse_actions_entries/parse_actions_entries_131.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_131.c rename to parser/static/parse_actions_entries/parse_actions_entries_131.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_132.c b/parser/static/parse_actions_entries/parse_actions_entries_132.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_132.c rename to parser/static/parse_actions_entries/parse_actions_entries_132.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_133.c b/parser/static/parse_actions_entries/parse_actions_entries_133.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_133.c rename to parser/static/parse_actions_entries/parse_actions_entries_133.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_134.c b/parser/static/parse_actions_entries/parse_actions_entries_134.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_134.c rename to parser/static/parse_actions_entries/parse_actions_entries_134.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_135.c b/parser/static/parse_actions_entries/parse_actions_entries_135.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_135.c rename to parser/static/parse_actions_entries/parse_actions_entries_135.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_136.c b/parser/static/parse_actions_entries/parse_actions_entries_136.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_136.c rename to parser/static/parse_actions_entries/parse_actions_entries_136.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_137.c b/parser/static/parse_actions_entries/parse_actions_entries_137.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_137.c rename to parser/static/parse_actions_entries/parse_actions_entries_137.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_138.c b/parser/static/parse_actions_entries/parse_actions_entries_138.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_138.c rename to parser/static/parse_actions_entries/parse_actions_entries_138.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_139.c b/parser/static/parse_actions_entries/parse_actions_entries_139.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_139.c rename to parser/static/parse_actions_entries/parse_actions_entries_139.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_14.c b/parser/static/parse_actions_entries/parse_actions_entries_14.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_14.c rename to parser/static/parse_actions_entries/parse_actions_entries_14.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_140.c b/parser/static/parse_actions_entries/parse_actions_entries_140.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_140.c rename to parser/static/parse_actions_entries/parse_actions_entries_140.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_141.c b/parser/static/parse_actions_entries/parse_actions_entries_141.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_141.c rename to parser/static/parse_actions_entries/parse_actions_entries_141.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_142.c b/parser/static/parse_actions_entries/parse_actions_entries_142.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_142.c rename to parser/static/parse_actions_entries/parse_actions_entries_142.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_143.c b/parser/static/parse_actions_entries/parse_actions_entries_143.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_143.c rename to parser/static/parse_actions_entries/parse_actions_entries_143.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_144.c b/parser/static/parse_actions_entries/parse_actions_entries_144.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_144.c rename to parser/static/parse_actions_entries/parse_actions_entries_144.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_145.c b/parser/static/parse_actions_entries/parse_actions_entries_145.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_145.c rename to parser/static/parse_actions_entries/parse_actions_entries_145.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_146.c b/parser/static/parse_actions_entries/parse_actions_entries_146.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_146.c rename to parser/static/parse_actions_entries/parse_actions_entries_146.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_147.c b/parser/static/parse_actions_entries/parse_actions_entries_147.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_147.c rename to parser/static/parse_actions_entries/parse_actions_entries_147.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_148.c b/parser/static/parse_actions_entries/parse_actions_entries_148.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_148.c rename to parser/static/parse_actions_entries/parse_actions_entries_148.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_149.c b/parser/static/parse_actions_entries/parse_actions_entries_149.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_149.c rename to parser/static/parse_actions_entries/parse_actions_entries_149.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_15.c b/parser/static/parse_actions_entries/parse_actions_entries_15.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_15.c rename to parser/static/parse_actions_entries/parse_actions_entries_15.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_150.c b/parser/static/parse_actions_entries/parse_actions_entries_150.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_150.c rename to parser/static/parse_actions_entries/parse_actions_entries_150.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_151.c b/parser/static/parse_actions_entries/parse_actions_entries_151.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_151.c rename to parser/static/parse_actions_entries/parse_actions_entries_151.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_152.c b/parser/static/parse_actions_entries/parse_actions_entries_152.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_152.c rename to parser/static/parse_actions_entries/parse_actions_entries_152.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_153.c b/parser/static/parse_actions_entries/parse_actions_entries_153.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_153.c rename to parser/static/parse_actions_entries/parse_actions_entries_153.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_154.c b/parser/static/parse_actions_entries/parse_actions_entries_154.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_154.c rename to parser/static/parse_actions_entries/parse_actions_entries_154.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_155.c b/parser/static/parse_actions_entries/parse_actions_entries_155.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_155.c rename to parser/static/parse_actions_entries/parse_actions_entries_155.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_156.c b/parser/static/parse_actions_entries/parse_actions_entries_156.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_156.c rename to parser/static/parse_actions_entries/parse_actions_entries_156.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_157.c b/parser/static/parse_actions_entries/parse_actions_entries_157.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_157.c rename to parser/static/parse_actions_entries/parse_actions_entries_157.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_158.c b/parser/static/parse_actions_entries/parse_actions_entries_158.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_158.c rename to parser/static/parse_actions_entries/parse_actions_entries_158.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_159.c b/parser/static/parse_actions_entries/parse_actions_entries_159.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_159.c rename to parser/static/parse_actions_entries/parse_actions_entries_159.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_16.c b/parser/static/parse_actions_entries/parse_actions_entries_16.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_16.c rename to parser/static/parse_actions_entries/parse_actions_entries_16.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_160.c b/parser/static/parse_actions_entries/parse_actions_entries_160.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_160.c rename to parser/static/parse_actions_entries/parse_actions_entries_160.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_161.c b/parser/static/parse_actions_entries/parse_actions_entries_161.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_161.c rename to parser/static/parse_actions_entries/parse_actions_entries_161.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_162.c b/parser/static/parse_actions_entries/parse_actions_entries_162.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_162.c rename to parser/static/parse_actions_entries/parse_actions_entries_162.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_163.c b/parser/static/parse_actions_entries/parse_actions_entries_163.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_163.c rename to parser/static/parse_actions_entries/parse_actions_entries_163.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_164.c b/parser/static/parse_actions_entries/parse_actions_entries_164.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_164.c rename to parser/static/parse_actions_entries/parse_actions_entries_164.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_165.c b/parser/static/parse_actions_entries/parse_actions_entries_165.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_165.c rename to parser/static/parse_actions_entries/parse_actions_entries_165.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_166.c b/parser/static/parse_actions_entries/parse_actions_entries_166.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_166.c rename to parser/static/parse_actions_entries/parse_actions_entries_166.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_167.c b/parser/static/parse_actions_entries/parse_actions_entries_167.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_167.c rename to parser/static/parse_actions_entries/parse_actions_entries_167.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_17.c b/parser/static/parse_actions_entries/parse_actions_entries_17.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_17.c rename to parser/static/parse_actions_entries/parse_actions_entries_17.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_18.c b/parser/static/parse_actions_entries/parse_actions_entries_18.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_18.c rename to parser/static/parse_actions_entries/parse_actions_entries_18.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_19.c b/parser/static/parse_actions_entries/parse_actions_entries_19.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_19.c rename to parser/static/parse_actions_entries/parse_actions_entries_19.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_2.c b/parser/static/parse_actions_entries/parse_actions_entries_2.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_2.c rename to parser/static/parse_actions_entries/parse_actions_entries_2.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_20.c b/parser/static/parse_actions_entries/parse_actions_entries_20.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_20.c rename to parser/static/parse_actions_entries/parse_actions_entries_20.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_21.c b/parser/static/parse_actions_entries/parse_actions_entries_21.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_21.c rename to parser/static/parse_actions_entries/parse_actions_entries_21.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_22.c b/parser/static/parse_actions_entries/parse_actions_entries_22.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_22.c rename to parser/static/parse_actions_entries/parse_actions_entries_22.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_23.c b/parser/static/parse_actions_entries/parse_actions_entries_23.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_23.c rename to parser/static/parse_actions_entries/parse_actions_entries_23.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_24.c b/parser/static/parse_actions_entries/parse_actions_entries_24.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_24.c rename to parser/static/parse_actions_entries/parse_actions_entries_24.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_25.c b/parser/static/parse_actions_entries/parse_actions_entries_25.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_25.c rename to parser/static/parse_actions_entries/parse_actions_entries_25.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_26.c b/parser/static/parse_actions_entries/parse_actions_entries_26.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_26.c rename to parser/static/parse_actions_entries/parse_actions_entries_26.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_27.c b/parser/static/parse_actions_entries/parse_actions_entries_27.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_27.c rename to parser/static/parse_actions_entries/parse_actions_entries_27.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_28.c b/parser/static/parse_actions_entries/parse_actions_entries_28.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_28.c rename to parser/static/parse_actions_entries/parse_actions_entries_28.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_29.c b/parser/static/parse_actions_entries/parse_actions_entries_29.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_29.c rename to parser/static/parse_actions_entries/parse_actions_entries_29.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_3.c b/parser/static/parse_actions_entries/parse_actions_entries_3.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_3.c rename to parser/static/parse_actions_entries/parse_actions_entries_3.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_30.c b/parser/static/parse_actions_entries/parse_actions_entries_30.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_30.c rename to parser/static/parse_actions_entries/parse_actions_entries_30.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_31.c b/parser/static/parse_actions_entries/parse_actions_entries_31.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_31.c rename to parser/static/parse_actions_entries/parse_actions_entries_31.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_32.c b/parser/static/parse_actions_entries/parse_actions_entries_32.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_32.c rename to parser/static/parse_actions_entries/parse_actions_entries_32.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_33.c b/parser/static/parse_actions_entries/parse_actions_entries_33.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_33.c rename to parser/static/parse_actions_entries/parse_actions_entries_33.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_34.c b/parser/static/parse_actions_entries/parse_actions_entries_34.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_34.c rename to parser/static/parse_actions_entries/parse_actions_entries_34.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_35.c b/parser/static/parse_actions_entries/parse_actions_entries_35.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_35.c rename to parser/static/parse_actions_entries/parse_actions_entries_35.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_36.c b/parser/static/parse_actions_entries/parse_actions_entries_36.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_36.c rename to parser/static/parse_actions_entries/parse_actions_entries_36.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_37.c b/parser/static/parse_actions_entries/parse_actions_entries_37.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_37.c rename to parser/static/parse_actions_entries/parse_actions_entries_37.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_38.c b/parser/static/parse_actions_entries/parse_actions_entries_38.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_38.c rename to parser/static/parse_actions_entries/parse_actions_entries_38.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_39.c b/parser/static/parse_actions_entries/parse_actions_entries_39.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_39.c rename to parser/static/parse_actions_entries/parse_actions_entries_39.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_4.c b/parser/static/parse_actions_entries/parse_actions_entries_4.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_4.c rename to parser/static/parse_actions_entries/parse_actions_entries_4.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_40.c b/parser/static/parse_actions_entries/parse_actions_entries_40.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_40.c rename to parser/static/parse_actions_entries/parse_actions_entries_40.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_41.c b/parser/static/parse_actions_entries/parse_actions_entries_41.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_41.c rename to parser/static/parse_actions_entries/parse_actions_entries_41.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_42.c b/parser/static/parse_actions_entries/parse_actions_entries_42.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_42.c rename to parser/static/parse_actions_entries/parse_actions_entries_42.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_43.c b/parser/static/parse_actions_entries/parse_actions_entries_43.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_43.c rename to parser/static/parse_actions_entries/parse_actions_entries_43.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_44.c b/parser/static/parse_actions_entries/parse_actions_entries_44.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_44.c rename to parser/static/parse_actions_entries/parse_actions_entries_44.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_45.c b/parser/static/parse_actions_entries/parse_actions_entries_45.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_45.c rename to parser/static/parse_actions_entries/parse_actions_entries_45.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_46.c b/parser/static/parse_actions_entries/parse_actions_entries_46.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_46.c rename to parser/static/parse_actions_entries/parse_actions_entries_46.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_47.c b/parser/static/parse_actions_entries/parse_actions_entries_47.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_47.c rename to parser/static/parse_actions_entries/parse_actions_entries_47.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_48.c b/parser/static/parse_actions_entries/parse_actions_entries_48.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_48.c rename to parser/static/parse_actions_entries/parse_actions_entries_48.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_49.c b/parser/static/parse_actions_entries/parse_actions_entries_49.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_49.c rename to parser/static/parse_actions_entries/parse_actions_entries_49.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_5.c b/parser/static/parse_actions_entries/parse_actions_entries_5.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_5.c rename to parser/static/parse_actions_entries/parse_actions_entries_5.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_50.c b/parser/static/parse_actions_entries/parse_actions_entries_50.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_50.c rename to parser/static/parse_actions_entries/parse_actions_entries_50.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_51.c b/parser/static/parse_actions_entries/parse_actions_entries_51.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_51.c rename to parser/static/parse_actions_entries/parse_actions_entries_51.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_52.c b/parser/static/parse_actions_entries/parse_actions_entries_52.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_52.c rename to parser/static/parse_actions_entries/parse_actions_entries_52.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_53.c b/parser/static/parse_actions_entries/parse_actions_entries_53.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_53.c rename to parser/static/parse_actions_entries/parse_actions_entries_53.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_54.c b/parser/static/parse_actions_entries/parse_actions_entries_54.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_54.c rename to parser/static/parse_actions_entries/parse_actions_entries_54.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_55.c b/parser/static/parse_actions_entries/parse_actions_entries_55.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_55.c rename to parser/static/parse_actions_entries/parse_actions_entries_55.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_56.c b/parser/static/parse_actions_entries/parse_actions_entries_56.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_56.c rename to parser/static/parse_actions_entries/parse_actions_entries_56.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_57.c b/parser/static/parse_actions_entries/parse_actions_entries_57.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_57.c rename to parser/static/parse_actions_entries/parse_actions_entries_57.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_58.c b/parser/static/parse_actions_entries/parse_actions_entries_58.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_58.c rename to parser/static/parse_actions_entries/parse_actions_entries_58.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_59.c b/parser/static/parse_actions_entries/parse_actions_entries_59.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_59.c rename to parser/static/parse_actions_entries/parse_actions_entries_59.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_6.c b/parser/static/parse_actions_entries/parse_actions_entries_6.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_6.c rename to parser/static/parse_actions_entries/parse_actions_entries_6.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_60.c b/parser/static/parse_actions_entries/parse_actions_entries_60.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_60.c rename to parser/static/parse_actions_entries/parse_actions_entries_60.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_61.c b/parser/static/parse_actions_entries/parse_actions_entries_61.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_61.c rename to parser/static/parse_actions_entries/parse_actions_entries_61.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_62.c b/parser/static/parse_actions_entries/parse_actions_entries_62.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_62.c rename to parser/static/parse_actions_entries/parse_actions_entries_62.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_63.c b/parser/static/parse_actions_entries/parse_actions_entries_63.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_63.c rename to parser/static/parse_actions_entries/parse_actions_entries_63.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_64.c b/parser/static/parse_actions_entries/parse_actions_entries_64.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_64.c rename to parser/static/parse_actions_entries/parse_actions_entries_64.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_65.c b/parser/static/parse_actions_entries/parse_actions_entries_65.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_65.c rename to parser/static/parse_actions_entries/parse_actions_entries_65.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_66.c b/parser/static/parse_actions_entries/parse_actions_entries_66.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_66.c rename to parser/static/parse_actions_entries/parse_actions_entries_66.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_67.c b/parser/static/parse_actions_entries/parse_actions_entries_67.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_67.c rename to parser/static/parse_actions_entries/parse_actions_entries_67.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_68.c b/parser/static/parse_actions_entries/parse_actions_entries_68.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_68.c rename to parser/static/parse_actions_entries/parse_actions_entries_68.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_69.c b/parser/static/parse_actions_entries/parse_actions_entries_69.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_69.c rename to parser/static/parse_actions_entries/parse_actions_entries_69.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_7.c b/parser/static/parse_actions_entries/parse_actions_entries_7.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_7.c rename to parser/static/parse_actions_entries/parse_actions_entries_7.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_70.c b/parser/static/parse_actions_entries/parse_actions_entries_70.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_70.c rename to parser/static/parse_actions_entries/parse_actions_entries_70.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_71.c b/parser/static/parse_actions_entries/parse_actions_entries_71.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_71.c rename to parser/static/parse_actions_entries/parse_actions_entries_71.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_72.c b/parser/static/parse_actions_entries/parse_actions_entries_72.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_72.c rename to parser/static/parse_actions_entries/parse_actions_entries_72.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_73.c b/parser/static/parse_actions_entries/parse_actions_entries_73.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_73.c rename to parser/static/parse_actions_entries/parse_actions_entries_73.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_74.c b/parser/static/parse_actions_entries/parse_actions_entries_74.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_74.c rename to parser/static/parse_actions_entries/parse_actions_entries_74.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_75.c b/parser/static/parse_actions_entries/parse_actions_entries_75.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_75.c rename to parser/static/parse_actions_entries/parse_actions_entries_75.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_76.c b/parser/static/parse_actions_entries/parse_actions_entries_76.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_76.c rename to parser/static/parse_actions_entries/parse_actions_entries_76.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_77.c b/parser/static/parse_actions_entries/parse_actions_entries_77.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_77.c rename to parser/static/parse_actions_entries/parse_actions_entries_77.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_78.c b/parser/static/parse_actions_entries/parse_actions_entries_78.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_78.c rename to parser/static/parse_actions_entries/parse_actions_entries_78.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_79.c b/parser/static/parse_actions_entries/parse_actions_entries_79.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_79.c rename to parser/static/parse_actions_entries/parse_actions_entries_79.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_8.c b/parser/static/parse_actions_entries/parse_actions_entries_8.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_8.c rename to parser/static/parse_actions_entries/parse_actions_entries_8.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_80.c b/parser/static/parse_actions_entries/parse_actions_entries_80.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_80.c rename to parser/static/parse_actions_entries/parse_actions_entries_80.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_81.c b/parser/static/parse_actions_entries/parse_actions_entries_81.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_81.c rename to parser/static/parse_actions_entries/parse_actions_entries_81.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_82.c b/parser/static/parse_actions_entries/parse_actions_entries_82.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_82.c rename to parser/static/parse_actions_entries/parse_actions_entries_82.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_83.c b/parser/static/parse_actions_entries/parse_actions_entries_83.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_83.c rename to parser/static/parse_actions_entries/parse_actions_entries_83.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_84.c b/parser/static/parse_actions_entries/parse_actions_entries_84.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_84.c rename to parser/static/parse_actions_entries/parse_actions_entries_84.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_85.c b/parser/static/parse_actions_entries/parse_actions_entries_85.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_85.c rename to parser/static/parse_actions_entries/parse_actions_entries_85.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_86.c b/parser/static/parse_actions_entries/parse_actions_entries_86.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_86.c rename to parser/static/parse_actions_entries/parse_actions_entries_86.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_87.c b/parser/static/parse_actions_entries/parse_actions_entries_87.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_87.c rename to parser/static/parse_actions_entries/parse_actions_entries_87.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_88.c b/parser/static/parse_actions_entries/parse_actions_entries_88.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_88.c rename to parser/static/parse_actions_entries/parse_actions_entries_88.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_89.c b/parser/static/parse_actions_entries/parse_actions_entries_89.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_89.c rename to parser/static/parse_actions_entries/parse_actions_entries_89.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_9.c b/parser/static/parse_actions_entries/parse_actions_entries_9.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_9.c rename to parser/static/parse_actions_entries/parse_actions_entries_9.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_90.c b/parser/static/parse_actions_entries/parse_actions_entries_90.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_90.c rename to parser/static/parse_actions_entries/parse_actions_entries_90.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_91.c b/parser/static/parse_actions_entries/parse_actions_entries_91.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_91.c rename to parser/static/parse_actions_entries/parse_actions_entries_91.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_92.c b/parser/static/parse_actions_entries/parse_actions_entries_92.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_92.c rename to parser/static/parse_actions_entries/parse_actions_entries_92.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_93.c b/parser/static/parse_actions_entries/parse_actions_entries_93.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_93.c rename to parser/static/parse_actions_entries/parse_actions_entries_93.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_94.c b/parser/static/parse_actions_entries/parse_actions_entries_94.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_94.c rename to parser/static/parse_actions_entries/parse_actions_entries_94.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_95.c b/parser/static/parse_actions_entries/parse_actions_entries_95.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_95.c rename to parser/static/parse_actions_entries/parse_actions_entries_95.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_96.c b/parser/static/parse_actions_entries/parse_actions_entries_96.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_96.c rename to parser/static/parse_actions_entries/parse_actions_entries_96.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_97.c b/parser/static/parse_actions_entries/parse_actions_entries_97.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_97.c rename to parser/static/parse_actions_entries/parse_actions_entries_97.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_98.c b/parser/static/parse_actions_entries/parse_actions_entries_98.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_98.c rename to parser/static/parse_actions_entries/parse_actions_entries_98.c diff --git a/shcat_c/parser/static/parse_actions_entries/parse_actions_entries_99.c b/parser/static/parse_actions_entries/parse_actions_entries_99.c similarity index 100% rename from shcat_c/parser/static/parse_actions_entries/parse_actions_entries_99.c rename to parser/static/parse_actions_entries/parse_actions_entries_99.c diff --git a/shcat_c/parser/static/parse_table/parse_table.h b/parser/static/parse_table/parse_table.h similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table.h rename to parser/static/parse_table/parse_table.h diff --git a/shcat_c/parser/static/parse_table/parse_table_0.c b/parser/static/parse_table/parse_table_0.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_0.c rename to parser/static/parse_table/parse_table_0.c diff --git a/shcat_c/parser/static/parse_table/parse_table_1.c b/parser/static/parse_table/parse_table_1.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_1.c rename to parser/static/parse_table/parse_table_1.c diff --git a/shcat_c/parser/static/parse_table/parse_table_10.c b/parser/static/parse_table/parse_table_10.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_10.c rename to parser/static/parse_table/parse_table_10.c diff --git a/shcat_c/parser/static/parse_table/parse_table_100.c b/parser/static/parse_table/parse_table_100.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_100.c rename to parser/static/parse_table/parse_table_100.c diff --git a/shcat_c/parser/static/parse_table/parse_table_101.c b/parser/static/parse_table/parse_table_101.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_101.c rename to parser/static/parse_table/parse_table_101.c diff --git a/shcat_c/parser/static/parse_table/parse_table_102.c b/parser/static/parse_table/parse_table_102.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_102.c rename to parser/static/parse_table/parse_table_102.c diff --git a/shcat_c/parser/static/parse_table/parse_table_103.c b/parser/static/parse_table/parse_table_103.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_103.c rename to parser/static/parse_table/parse_table_103.c diff --git a/shcat_c/parser/static/parse_table/parse_table_104.c b/parser/static/parse_table/parse_table_104.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_104.c rename to parser/static/parse_table/parse_table_104.c diff --git a/shcat_c/parser/static/parse_table/parse_table_105.c b/parser/static/parse_table/parse_table_105.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_105.c rename to parser/static/parse_table/parse_table_105.c diff --git a/shcat_c/parser/static/parse_table/parse_table_106.c b/parser/static/parse_table/parse_table_106.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_106.c rename to parser/static/parse_table/parse_table_106.c diff --git a/shcat_c/parser/static/parse_table/parse_table_107.c b/parser/static/parse_table/parse_table_107.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_107.c rename to parser/static/parse_table/parse_table_107.c diff --git a/shcat_c/parser/static/parse_table/parse_table_108.c b/parser/static/parse_table/parse_table_108.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_108.c rename to parser/static/parse_table/parse_table_108.c diff --git a/shcat_c/parser/static/parse_table/parse_table_109.c b/parser/static/parse_table/parse_table_109.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_109.c rename to parser/static/parse_table/parse_table_109.c diff --git a/shcat_c/parser/static/parse_table/parse_table_11.c b/parser/static/parse_table/parse_table_11.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_11.c rename to parser/static/parse_table/parse_table_11.c diff --git a/shcat_c/parser/static/parse_table/parse_table_110.c b/parser/static/parse_table/parse_table_110.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_110.c rename to parser/static/parse_table/parse_table_110.c diff --git a/shcat_c/parser/static/parse_table/parse_table_111.c b/parser/static/parse_table/parse_table_111.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_111.c rename to parser/static/parse_table/parse_table_111.c diff --git a/shcat_c/parser/static/parse_table/parse_table_112.c b/parser/static/parse_table/parse_table_112.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_112.c rename to parser/static/parse_table/parse_table_112.c diff --git a/shcat_c/parser/static/parse_table/parse_table_113.c b/parser/static/parse_table/parse_table_113.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_113.c rename to parser/static/parse_table/parse_table_113.c diff --git a/shcat_c/parser/static/parse_table/parse_table_114.c b/parser/static/parse_table/parse_table_114.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_114.c rename to parser/static/parse_table/parse_table_114.c diff --git a/shcat_c/parser/static/parse_table/parse_table_115.c b/parser/static/parse_table/parse_table_115.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_115.c rename to parser/static/parse_table/parse_table_115.c diff --git a/shcat_c/parser/static/parse_table/parse_table_116.c b/parser/static/parse_table/parse_table_116.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_116.c rename to parser/static/parse_table/parse_table_116.c diff --git a/shcat_c/parser/static/parse_table/parse_table_117.c b/parser/static/parse_table/parse_table_117.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_117.c rename to parser/static/parse_table/parse_table_117.c diff --git a/shcat_c/parser/static/parse_table/parse_table_118.c b/parser/static/parse_table/parse_table_118.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_118.c rename to parser/static/parse_table/parse_table_118.c diff --git a/shcat_c/parser/static/parse_table/parse_table_119.c b/parser/static/parse_table/parse_table_119.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_119.c rename to parser/static/parse_table/parse_table_119.c diff --git a/shcat_c/parser/static/parse_table/parse_table_12.c b/parser/static/parse_table/parse_table_12.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_12.c rename to parser/static/parse_table/parse_table_12.c diff --git a/shcat_c/parser/static/parse_table/parse_table_120.c b/parser/static/parse_table/parse_table_120.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_120.c rename to parser/static/parse_table/parse_table_120.c diff --git a/shcat_c/parser/static/parse_table/parse_table_121.c b/parser/static/parse_table/parse_table_121.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_121.c rename to parser/static/parse_table/parse_table_121.c diff --git a/shcat_c/parser/static/parse_table/parse_table_122.c b/parser/static/parse_table/parse_table_122.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_122.c rename to parser/static/parse_table/parse_table_122.c diff --git a/shcat_c/parser/static/parse_table/parse_table_123.c b/parser/static/parse_table/parse_table_123.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_123.c rename to parser/static/parse_table/parse_table_123.c diff --git a/shcat_c/parser/static/parse_table/parse_table_124.c b/parser/static/parse_table/parse_table_124.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_124.c rename to parser/static/parse_table/parse_table_124.c diff --git a/shcat_c/parser/static/parse_table/parse_table_125.c b/parser/static/parse_table/parse_table_125.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_125.c rename to parser/static/parse_table/parse_table_125.c diff --git a/shcat_c/parser/static/parse_table/parse_table_126.c b/parser/static/parse_table/parse_table_126.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_126.c rename to parser/static/parse_table/parse_table_126.c diff --git a/shcat_c/parser/static/parse_table/parse_table_127.c b/parser/static/parse_table/parse_table_127.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_127.c rename to parser/static/parse_table/parse_table_127.c diff --git a/shcat_c/parser/static/parse_table/parse_table_128.c b/parser/static/parse_table/parse_table_128.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_128.c rename to parser/static/parse_table/parse_table_128.c diff --git a/shcat_c/parser/static/parse_table/parse_table_129.c b/parser/static/parse_table/parse_table_129.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_129.c rename to parser/static/parse_table/parse_table_129.c diff --git a/shcat_c/parser/static/parse_table/parse_table_13.c b/parser/static/parse_table/parse_table_13.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_13.c rename to parser/static/parse_table/parse_table_13.c diff --git a/shcat_c/parser/static/parse_table/parse_table_130.c b/parser/static/parse_table/parse_table_130.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_130.c rename to parser/static/parse_table/parse_table_130.c diff --git a/shcat_c/parser/static/parse_table/parse_table_131.c b/parser/static/parse_table/parse_table_131.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_131.c rename to parser/static/parse_table/parse_table_131.c diff --git a/shcat_c/parser/static/parse_table/parse_table_132.c b/parser/static/parse_table/parse_table_132.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_132.c rename to parser/static/parse_table/parse_table_132.c diff --git a/shcat_c/parser/static/parse_table/parse_table_133.c b/parser/static/parse_table/parse_table_133.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_133.c rename to parser/static/parse_table/parse_table_133.c diff --git a/shcat_c/parser/static/parse_table/parse_table_134.c b/parser/static/parse_table/parse_table_134.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_134.c rename to parser/static/parse_table/parse_table_134.c diff --git a/shcat_c/parser/static/parse_table/parse_table_135.c b/parser/static/parse_table/parse_table_135.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_135.c rename to parser/static/parse_table/parse_table_135.c diff --git a/shcat_c/parser/static/parse_table/parse_table_136.c b/parser/static/parse_table/parse_table_136.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_136.c rename to parser/static/parse_table/parse_table_136.c diff --git a/shcat_c/parser/static/parse_table/parse_table_137.c b/parser/static/parse_table/parse_table_137.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_137.c rename to parser/static/parse_table/parse_table_137.c diff --git a/shcat_c/parser/static/parse_table/parse_table_138.c b/parser/static/parse_table/parse_table_138.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_138.c rename to parser/static/parse_table/parse_table_138.c diff --git a/shcat_c/parser/static/parse_table/parse_table_139.c b/parser/static/parse_table/parse_table_139.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_139.c rename to parser/static/parse_table/parse_table_139.c diff --git a/shcat_c/parser/static/parse_table/parse_table_14.c b/parser/static/parse_table/parse_table_14.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_14.c rename to parser/static/parse_table/parse_table_14.c diff --git a/shcat_c/parser/static/parse_table/parse_table_140.c b/parser/static/parse_table/parse_table_140.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_140.c rename to parser/static/parse_table/parse_table_140.c diff --git a/shcat_c/parser/static/parse_table/parse_table_141.c b/parser/static/parse_table/parse_table_141.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_141.c rename to parser/static/parse_table/parse_table_141.c diff --git a/shcat_c/parser/static/parse_table/parse_table_142.c b/parser/static/parse_table/parse_table_142.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_142.c rename to parser/static/parse_table/parse_table_142.c diff --git a/shcat_c/parser/static/parse_table/parse_table_143.c b/parser/static/parse_table/parse_table_143.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_143.c rename to parser/static/parse_table/parse_table_143.c diff --git a/shcat_c/parser/static/parse_table/parse_table_144.c b/parser/static/parse_table/parse_table_144.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_144.c rename to parser/static/parse_table/parse_table_144.c diff --git a/shcat_c/parser/static/parse_table/parse_table_145.c b/parser/static/parse_table/parse_table_145.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_145.c rename to parser/static/parse_table/parse_table_145.c diff --git a/shcat_c/parser/static/parse_table/parse_table_146.c b/parser/static/parse_table/parse_table_146.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_146.c rename to parser/static/parse_table/parse_table_146.c diff --git a/shcat_c/parser/static/parse_table/parse_table_147.c b/parser/static/parse_table/parse_table_147.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_147.c rename to parser/static/parse_table/parse_table_147.c diff --git a/shcat_c/parser/static/parse_table/parse_table_148.c b/parser/static/parse_table/parse_table_148.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_148.c rename to parser/static/parse_table/parse_table_148.c diff --git a/shcat_c/parser/static/parse_table/parse_table_149.c b/parser/static/parse_table/parse_table_149.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_149.c rename to parser/static/parse_table/parse_table_149.c diff --git a/shcat_c/parser/static/parse_table/parse_table_15.c b/parser/static/parse_table/parse_table_15.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_15.c rename to parser/static/parse_table/parse_table_15.c diff --git a/shcat_c/parser/static/parse_table/parse_table_150.c b/parser/static/parse_table/parse_table_150.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_150.c rename to parser/static/parse_table/parse_table_150.c diff --git a/shcat_c/parser/static/parse_table/parse_table_151.c b/parser/static/parse_table/parse_table_151.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_151.c rename to parser/static/parse_table/parse_table_151.c diff --git a/shcat_c/parser/static/parse_table/parse_table_152.c b/parser/static/parse_table/parse_table_152.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_152.c rename to parser/static/parse_table/parse_table_152.c diff --git a/shcat_c/parser/static/parse_table/parse_table_153.c b/parser/static/parse_table/parse_table_153.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_153.c rename to parser/static/parse_table/parse_table_153.c diff --git a/shcat_c/parser/static/parse_table/parse_table_154.c b/parser/static/parse_table/parse_table_154.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_154.c rename to parser/static/parse_table/parse_table_154.c diff --git a/shcat_c/parser/static/parse_table/parse_table_155.c b/parser/static/parse_table/parse_table_155.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_155.c rename to parser/static/parse_table/parse_table_155.c diff --git a/shcat_c/parser/static/parse_table/parse_table_156.c b/parser/static/parse_table/parse_table_156.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_156.c rename to parser/static/parse_table/parse_table_156.c diff --git a/shcat_c/parser/static/parse_table/parse_table_157.c b/parser/static/parse_table/parse_table_157.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_157.c rename to parser/static/parse_table/parse_table_157.c diff --git a/shcat_c/parser/static/parse_table/parse_table_158.c b/parser/static/parse_table/parse_table_158.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_158.c rename to parser/static/parse_table/parse_table_158.c diff --git a/shcat_c/parser/static/parse_table/parse_table_159.c b/parser/static/parse_table/parse_table_159.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_159.c rename to parser/static/parse_table/parse_table_159.c diff --git a/shcat_c/parser/static/parse_table/parse_table_16.c b/parser/static/parse_table/parse_table_16.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_16.c rename to parser/static/parse_table/parse_table_16.c diff --git a/shcat_c/parser/static/parse_table/parse_table_160.c b/parser/static/parse_table/parse_table_160.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_160.c rename to parser/static/parse_table/parse_table_160.c diff --git a/shcat_c/parser/static/parse_table/parse_table_161.c b/parser/static/parse_table/parse_table_161.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_161.c rename to parser/static/parse_table/parse_table_161.c diff --git a/shcat_c/parser/static/parse_table/parse_table_162.c b/parser/static/parse_table/parse_table_162.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_162.c rename to parser/static/parse_table/parse_table_162.c diff --git a/shcat_c/parser/static/parse_table/parse_table_163.c b/parser/static/parse_table/parse_table_163.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_163.c rename to parser/static/parse_table/parse_table_163.c diff --git a/shcat_c/parser/static/parse_table/parse_table_164.c b/parser/static/parse_table/parse_table_164.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_164.c rename to parser/static/parse_table/parse_table_164.c diff --git a/shcat_c/parser/static/parse_table/parse_table_165.c b/parser/static/parse_table/parse_table_165.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_165.c rename to parser/static/parse_table/parse_table_165.c diff --git a/shcat_c/parser/static/parse_table/parse_table_166.c b/parser/static/parse_table/parse_table_166.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_166.c rename to parser/static/parse_table/parse_table_166.c diff --git a/shcat_c/parser/static/parse_table/parse_table_167.c b/parser/static/parse_table/parse_table_167.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_167.c rename to parser/static/parse_table/parse_table_167.c diff --git a/shcat_c/parser/static/parse_table/parse_table_168.c b/parser/static/parse_table/parse_table_168.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_168.c rename to parser/static/parse_table/parse_table_168.c diff --git a/shcat_c/parser/static/parse_table/parse_table_169.c b/parser/static/parse_table/parse_table_169.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_169.c rename to parser/static/parse_table/parse_table_169.c diff --git a/shcat_c/parser/static/parse_table/parse_table_17.c b/parser/static/parse_table/parse_table_17.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_17.c rename to parser/static/parse_table/parse_table_17.c diff --git a/shcat_c/parser/static/parse_table/parse_table_170.c b/parser/static/parse_table/parse_table_170.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_170.c rename to parser/static/parse_table/parse_table_170.c diff --git a/shcat_c/parser/static/parse_table/parse_table_171.c b/parser/static/parse_table/parse_table_171.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_171.c rename to parser/static/parse_table/parse_table_171.c diff --git a/shcat_c/parser/static/parse_table/parse_table_172.c b/parser/static/parse_table/parse_table_172.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_172.c rename to parser/static/parse_table/parse_table_172.c diff --git a/shcat_c/parser/static/parse_table/parse_table_173.c b/parser/static/parse_table/parse_table_173.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_173.c rename to parser/static/parse_table/parse_table_173.c diff --git a/shcat_c/parser/static/parse_table/parse_table_174.c b/parser/static/parse_table/parse_table_174.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_174.c rename to parser/static/parse_table/parse_table_174.c diff --git a/shcat_c/parser/static/parse_table/parse_table_175.c b/parser/static/parse_table/parse_table_175.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_175.c rename to parser/static/parse_table/parse_table_175.c diff --git a/shcat_c/parser/static/parse_table/parse_table_176.c b/parser/static/parse_table/parse_table_176.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_176.c rename to parser/static/parse_table/parse_table_176.c diff --git a/shcat_c/parser/static/parse_table/parse_table_177.c b/parser/static/parse_table/parse_table_177.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_177.c rename to parser/static/parse_table/parse_table_177.c diff --git a/shcat_c/parser/static/parse_table/parse_table_178.c b/parser/static/parse_table/parse_table_178.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_178.c rename to parser/static/parse_table/parse_table_178.c diff --git a/shcat_c/parser/static/parse_table/parse_table_179.c b/parser/static/parse_table/parse_table_179.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_179.c rename to parser/static/parse_table/parse_table_179.c diff --git a/shcat_c/parser/static/parse_table/parse_table_18.c b/parser/static/parse_table/parse_table_18.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_18.c rename to parser/static/parse_table/parse_table_18.c diff --git a/shcat_c/parser/static/parse_table/parse_table_180.c b/parser/static/parse_table/parse_table_180.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_180.c rename to parser/static/parse_table/parse_table_180.c diff --git a/shcat_c/parser/static/parse_table/parse_table_181.c b/parser/static/parse_table/parse_table_181.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_181.c rename to parser/static/parse_table/parse_table_181.c diff --git a/shcat_c/parser/static/parse_table/parse_table_182.c b/parser/static/parse_table/parse_table_182.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_182.c rename to parser/static/parse_table/parse_table_182.c diff --git a/shcat_c/parser/static/parse_table/parse_table_183.c b/parser/static/parse_table/parse_table_183.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_183.c rename to parser/static/parse_table/parse_table_183.c diff --git a/shcat_c/parser/static/parse_table/parse_table_184.c b/parser/static/parse_table/parse_table_184.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_184.c rename to parser/static/parse_table/parse_table_184.c diff --git a/shcat_c/parser/static/parse_table/parse_table_185.c b/parser/static/parse_table/parse_table_185.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_185.c rename to parser/static/parse_table/parse_table_185.c diff --git a/shcat_c/parser/static/parse_table/parse_table_186.c b/parser/static/parse_table/parse_table_186.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_186.c rename to parser/static/parse_table/parse_table_186.c diff --git a/shcat_c/parser/static/parse_table/parse_table_187.c b/parser/static/parse_table/parse_table_187.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_187.c rename to parser/static/parse_table/parse_table_187.c diff --git a/shcat_c/parser/static/parse_table/parse_table_188.c b/parser/static/parse_table/parse_table_188.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_188.c rename to parser/static/parse_table/parse_table_188.c diff --git a/shcat_c/parser/static/parse_table/parse_table_189.c b/parser/static/parse_table/parse_table_189.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_189.c rename to parser/static/parse_table/parse_table_189.c diff --git a/shcat_c/parser/static/parse_table/parse_table_19.c b/parser/static/parse_table/parse_table_19.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_19.c rename to parser/static/parse_table/parse_table_19.c diff --git a/shcat_c/parser/static/parse_table/parse_table_190.c b/parser/static/parse_table/parse_table_190.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_190.c rename to parser/static/parse_table/parse_table_190.c diff --git a/shcat_c/parser/static/parse_table/parse_table_191.c b/parser/static/parse_table/parse_table_191.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_191.c rename to parser/static/parse_table/parse_table_191.c diff --git a/shcat_c/parser/static/parse_table/parse_table_192.c b/parser/static/parse_table/parse_table_192.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_192.c rename to parser/static/parse_table/parse_table_192.c diff --git a/shcat_c/parser/static/parse_table/parse_table_193.c b/parser/static/parse_table/parse_table_193.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_193.c rename to parser/static/parse_table/parse_table_193.c diff --git a/shcat_c/parser/static/parse_table/parse_table_194.c b/parser/static/parse_table/parse_table_194.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_194.c rename to parser/static/parse_table/parse_table_194.c diff --git a/shcat_c/parser/static/parse_table/parse_table_195.c b/parser/static/parse_table/parse_table_195.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_195.c rename to parser/static/parse_table/parse_table_195.c diff --git a/shcat_c/parser/static/parse_table/parse_table_196.c b/parser/static/parse_table/parse_table_196.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_196.c rename to parser/static/parse_table/parse_table_196.c diff --git a/shcat_c/parser/static/parse_table/parse_table_197.c b/parser/static/parse_table/parse_table_197.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_197.c rename to parser/static/parse_table/parse_table_197.c diff --git a/shcat_c/parser/static/parse_table/parse_table_198.c b/parser/static/parse_table/parse_table_198.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_198.c rename to parser/static/parse_table/parse_table_198.c diff --git a/shcat_c/parser/static/parse_table/parse_table_199.c b/parser/static/parse_table/parse_table_199.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_199.c rename to parser/static/parse_table/parse_table_199.c diff --git a/shcat_c/parser/static/parse_table/parse_table_2.c b/parser/static/parse_table/parse_table_2.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_2.c rename to parser/static/parse_table/parse_table_2.c diff --git a/shcat_c/parser/static/parse_table/parse_table_20.c b/parser/static/parse_table/parse_table_20.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_20.c rename to parser/static/parse_table/parse_table_20.c diff --git a/shcat_c/parser/static/parse_table/parse_table_200.c b/parser/static/parse_table/parse_table_200.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_200.c rename to parser/static/parse_table/parse_table_200.c diff --git a/shcat_c/parser/static/parse_table/parse_table_201.c b/parser/static/parse_table/parse_table_201.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_201.c rename to parser/static/parse_table/parse_table_201.c diff --git a/shcat_c/parser/static/parse_table/parse_table_202.c b/parser/static/parse_table/parse_table_202.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_202.c rename to parser/static/parse_table/parse_table_202.c diff --git a/shcat_c/parser/static/parse_table/parse_table_203.c b/parser/static/parse_table/parse_table_203.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_203.c rename to parser/static/parse_table/parse_table_203.c diff --git a/shcat_c/parser/static/parse_table/parse_table_204.c b/parser/static/parse_table/parse_table_204.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_204.c rename to parser/static/parse_table/parse_table_204.c diff --git a/shcat_c/parser/static/parse_table/parse_table_205.c b/parser/static/parse_table/parse_table_205.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_205.c rename to parser/static/parse_table/parse_table_205.c diff --git a/shcat_c/parser/static/parse_table/parse_table_206.c b/parser/static/parse_table/parse_table_206.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_206.c rename to parser/static/parse_table/parse_table_206.c diff --git a/shcat_c/parser/static/parse_table/parse_table_207.c b/parser/static/parse_table/parse_table_207.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_207.c rename to parser/static/parse_table/parse_table_207.c diff --git a/shcat_c/parser/static/parse_table/parse_table_208.c b/parser/static/parse_table/parse_table_208.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_208.c rename to parser/static/parse_table/parse_table_208.c diff --git a/shcat_c/parser/static/parse_table/parse_table_209.c b/parser/static/parse_table/parse_table_209.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_209.c rename to parser/static/parse_table/parse_table_209.c diff --git a/shcat_c/parser/static/parse_table/parse_table_21.c b/parser/static/parse_table/parse_table_21.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_21.c rename to parser/static/parse_table/parse_table_21.c diff --git a/shcat_c/parser/static/parse_table/parse_table_210.c b/parser/static/parse_table/parse_table_210.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_210.c rename to parser/static/parse_table/parse_table_210.c diff --git a/shcat_c/parser/static/parse_table/parse_table_211.c b/parser/static/parse_table/parse_table_211.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_211.c rename to parser/static/parse_table/parse_table_211.c diff --git a/shcat_c/parser/static/parse_table/parse_table_212.c b/parser/static/parse_table/parse_table_212.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_212.c rename to parser/static/parse_table/parse_table_212.c diff --git a/shcat_c/parser/static/parse_table/parse_table_213.c b/parser/static/parse_table/parse_table_213.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_213.c rename to parser/static/parse_table/parse_table_213.c diff --git a/shcat_c/parser/static/parse_table/parse_table_214.c b/parser/static/parse_table/parse_table_214.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_214.c rename to parser/static/parse_table/parse_table_214.c diff --git a/shcat_c/parser/static/parse_table/parse_table_215.c b/parser/static/parse_table/parse_table_215.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_215.c rename to parser/static/parse_table/parse_table_215.c diff --git a/shcat_c/parser/static/parse_table/parse_table_216.c b/parser/static/parse_table/parse_table_216.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_216.c rename to parser/static/parse_table/parse_table_216.c diff --git a/shcat_c/parser/static/parse_table/parse_table_217.c b/parser/static/parse_table/parse_table_217.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_217.c rename to parser/static/parse_table/parse_table_217.c diff --git a/shcat_c/parser/static/parse_table/parse_table_218.c b/parser/static/parse_table/parse_table_218.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_218.c rename to parser/static/parse_table/parse_table_218.c diff --git a/shcat_c/parser/static/parse_table/parse_table_219.c b/parser/static/parse_table/parse_table_219.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_219.c rename to parser/static/parse_table/parse_table_219.c diff --git a/shcat_c/parser/static/parse_table/parse_table_22.c b/parser/static/parse_table/parse_table_22.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_22.c rename to parser/static/parse_table/parse_table_22.c diff --git a/shcat_c/parser/static/parse_table/parse_table_220.c b/parser/static/parse_table/parse_table_220.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_220.c rename to parser/static/parse_table/parse_table_220.c diff --git a/shcat_c/parser/static/parse_table/parse_table_221.c b/parser/static/parse_table/parse_table_221.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_221.c rename to parser/static/parse_table/parse_table_221.c diff --git a/shcat_c/parser/static/parse_table/parse_table_222.c b/parser/static/parse_table/parse_table_222.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_222.c rename to parser/static/parse_table/parse_table_222.c diff --git a/shcat_c/parser/static/parse_table/parse_table_223.c b/parser/static/parse_table/parse_table_223.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_223.c rename to parser/static/parse_table/parse_table_223.c diff --git a/shcat_c/parser/static/parse_table/parse_table_224.c b/parser/static/parse_table/parse_table_224.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_224.c rename to parser/static/parse_table/parse_table_224.c diff --git a/shcat_c/parser/static/parse_table/parse_table_225.c b/parser/static/parse_table/parse_table_225.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_225.c rename to parser/static/parse_table/parse_table_225.c diff --git a/shcat_c/parser/static/parse_table/parse_table_226.c b/parser/static/parse_table/parse_table_226.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_226.c rename to parser/static/parse_table/parse_table_226.c diff --git a/shcat_c/parser/static/parse_table/parse_table_227.c b/parser/static/parse_table/parse_table_227.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_227.c rename to parser/static/parse_table/parse_table_227.c diff --git a/shcat_c/parser/static/parse_table/parse_table_228.c b/parser/static/parse_table/parse_table_228.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_228.c rename to parser/static/parse_table/parse_table_228.c diff --git a/shcat_c/parser/static/parse_table/parse_table_229.c b/parser/static/parse_table/parse_table_229.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_229.c rename to parser/static/parse_table/parse_table_229.c diff --git a/shcat_c/parser/static/parse_table/parse_table_23.c b/parser/static/parse_table/parse_table_23.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_23.c rename to parser/static/parse_table/parse_table_23.c diff --git a/shcat_c/parser/static/parse_table/parse_table_230.c b/parser/static/parse_table/parse_table_230.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_230.c rename to parser/static/parse_table/parse_table_230.c diff --git a/shcat_c/parser/static/parse_table/parse_table_231.c b/parser/static/parse_table/parse_table_231.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_231.c rename to parser/static/parse_table/parse_table_231.c diff --git a/shcat_c/parser/static/parse_table/parse_table_232.c b/parser/static/parse_table/parse_table_232.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_232.c rename to parser/static/parse_table/parse_table_232.c diff --git a/shcat_c/parser/static/parse_table/parse_table_233.c b/parser/static/parse_table/parse_table_233.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_233.c rename to parser/static/parse_table/parse_table_233.c diff --git a/shcat_c/parser/static/parse_table/parse_table_234.c b/parser/static/parse_table/parse_table_234.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_234.c rename to parser/static/parse_table/parse_table_234.c diff --git a/shcat_c/parser/static/parse_table/parse_table_235.c b/parser/static/parse_table/parse_table_235.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_235.c rename to parser/static/parse_table/parse_table_235.c diff --git a/shcat_c/parser/static/parse_table/parse_table_236.c b/parser/static/parse_table/parse_table_236.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_236.c rename to parser/static/parse_table/parse_table_236.c diff --git a/shcat_c/parser/static/parse_table/parse_table_237.c b/parser/static/parse_table/parse_table_237.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_237.c rename to parser/static/parse_table/parse_table_237.c diff --git a/shcat_c/parser/static/parse_table/parse_table_238.c b/parser/static/parse_table/parse_table_238.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_238.c rename to parser/static/parse_table/parse_table_238.c diff --git a/shcat_c/parser/static/parse_table/parse_table_239.c b/parser/static/parse_table/parse_table_239.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_239.c rename to parser/static/parse_table/parse_table_239.c diff --git a/shcat_c/parser/static/parse_table/parse_table_24.c b/parser/static/parse_table/parse_table_24.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_24.c rename to parser/static/parse_table/parse_table_24.c diff --git a/shcat_c/parser/static/parse_table/parse_table_240.c b/parser/static/parse_table/parse_table_240.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_240.c rename to parser/static/parse_table/parse_table_240.c diff --git a/shcat_c/parser/static/parse_table/parse_table_241.c b/parser/static/parse_table/parse_table_241.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_241.c rename to parser/static/parse_table/parse_table_241.c diff --git a/shcat_c/parser/static/parse_table/parse_table_242.c b/parser/static/parse_table/parse_table_242.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_242.c rename to parser/static/parse_table/parse_table_242.c diff --git a/shcat_c/parser/static/parse_table/parse_table_243.c b/parser/static/parse_table/parse_table_243.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_243.c rename to parser/static/parse_table/parse_table_243.c diff --git a/shcat_c/parser/static/parse_table/parse_table_244.c b/parser/static/parse_table/parse_table_244.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_244.c rename to parser/static/parse_table/parse_table_244.c diff --git a/shcat_c/parser/static/parse_table/parse_table_245.c b/parser/static/parse_table/parse_table_245.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_245.c rename to parser/static/parse_table/parse_table_245.c diff --git a/shcat_c/parser/static/parse_table/parse_table_246.c b/parser/static/parse_table/parse_table_246.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_246.c rename to parser/static/parse_table/parse_table_246.c diff --git a/shcat_c/parser/static/parse_table/parse_table_247.c b/parser/static/parse_table/parse_table_247.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_247.c rename to parser/static/parse_table/parse_table_247.c diff --git a/shcat_c/parser/static/parse_table/parse_table_248.c b/parser/static/parse_table/parse_table_248.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_248.c rename to parser/static/parse_table/parse_table_248.c diff --git a/shcat_c/parser/static/parse_table/parse_table_249.c b/parser/static/parse_table/parse_table_249.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_249.c rename to parser/static/parse_table/parse_table_249.c diff --git a/shcat_c/parser/static/parse_table/parse_table_25.c b/parser/static/parse_table/parse_table_25.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_25.c rename to parser/static/parse_table/parse_table_25.c diff --git a/shcat_c/parser/static/parse_table/parse_table_250.c b/parser/static/parse_table/parse_table_250.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_250.c rename to parser/static/parse_table/parse_table_250.c diff --git a/shcat_c/parser/static/parse_table/parse_table_251.c b/parser/static/parse_table/parse_table_251.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_251.c rename to parser/static/parse_table/parse_table_251.c diff --git a/shcat_c/parser/static/parse_table/parse_table_252.c b/parser/static/parse_table/parse_table_252.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_252.c rename to parser/static/parse_table/parse_table_252.c diff --git a/shcat_c/parser/static/parse_table/parse_table_253.c b/parser/static/parse_table/parse_table_253.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_253.c rename to parser/static/parse_table/parse_table_253.c diff --git a/shcat_c/parser/static/parse_table/parse_table_254.c b/parser/static/parse_table/parse_table_254.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_254.c rename to parser/static/parse_table/parse_table_254.c diff --git a/shcat_c/parser/static/parse_table/parse_table_255.c b/parser/static/parse_table/parse_table_255.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_255.c rename to parser/static/parse_table/parse_table_255.c diff --git a/shcat_c/parser/static/parse_table/parse_table_256.c b/parser/static/parse_table/parse_table_256.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_256.c rename to parser/static/parse_table/parse_table_256.c diff --git a/shcat_c/parser/static/parse_table/parse_table_257.c b/parser/static/parse_table/parse_table_257.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_257.c rename to parser/static/parse_table/parse_table_257.c diff --git a/shcat_c/parser/static/parse_table/parse_table_258.c b/parser/static/parse_table/parse_table_258.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_258.c rename to parser/static/parse_table/parse_table_258.c diff --git a/shcat_c/parser/static/parse_table/parse_table_259.c b/parser/static/parse_table/parse_table_259.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_259.c rename to parser/static/parse_table/parse_table_259.c diff --git a/shcat_c/parser/static/parse_table/parse_table_26.c b/parser/static/parse_table/parse_table_26.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_26.c rename to parser/static/parse_table/parse_table_26.c diff --git a/shcat_c/parser/static/parse_table/parse_table_260.c b/parser/static/parse_table/parse_table_260.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_260.c rename to parser/static/parse_table/parse_table_260.c diff --git a/shcat_c/parser/static/parse_table/parse_table_261.c b/parser/static/parse_table/parse_table_261.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_261.c rename to parser/static/parse_table/parse_table_261.c diff --git a/shcat_c/parser/static/parse_table/parse_table_262.c b/parser/static/parse_table/parse_table_262.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_262.c rename to parser/static/parse_table/parse_table_262.c diff --git a/shcat_c/parser/static/parse_table/parse_table_263.c b/parser/static/parse_table/parse_table_263.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_263.c rename to parser/static/parse_table/parse_table_263.c diff --git a/shcat_c/parser/static/parse_table/parse_table_264.c b/parser/static/parse_table/parse_table_264.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_264.c rename to parser/static/parse_table/parse_table_264.c diff --git a/shcat_c/parser/static/parse_table/parse_table_265.c b/parser/static/parse_table/parse_table_265.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_265.c rename to parser/static/parse_table/parse_table_265.c diff --git a/shcat_c/parser/static/parse_table/parse_table_266.c b/parser/static/parse_table/parse_table_266.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_266.c rename to parser/static/parse_table/parse_table_266.c diff --git a/shcat_c/parser/static/parse_table/parse_table_267.c b/parser/static/parse_table/parse_table_267.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_267.c rename to parser/static/parse_table/parse_table_267.c diff --git a/shcat_c/parser/static/parse_table/parse_table_268.c b/parser/static/parse_table/parse_table_268.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_268.c rename to parser/static/parse_table/parse_table_268.c diff --git a/shcat_c/parser/static/parse_table/parse_table_269.c b/parser/static/parse_table/parse_table_269.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_269.c rename to parser/static/parse_table/parse_table_269.c diff --git a/shcat_c/parser/static/parse_table/parse_table_27.c b/parser/static/parse_table/parse_table_27.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_27.c rename to parser/static/parse_table/parse_table_27.c diff --git a/shcat_c/parser/static/parse_table/parse_table_270.c b/parser/static/parse_table/parse_table_270.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_270.c rename to parser/static/parse_table/parse_table_270.c diff --git a/shcat_c/parser/static/parse_table/parse_table_271.c b/parser/static/parse_table/parse_table_271.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_271.c rename to parser/static/parse_table/parse_table_271.c diff --git a/shcat_c/parser/static/parse_table/parse_table_272.c b/parser/static/parse_table/parse_table_272.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_272.c rename to parser/static/parse_table/parse_table_272.c diff --git a/shcat_c/parser/static/parse_table/parse_table_273.c b/parser/static/parse_table/parse_table_273.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_273.c rename to parser/static/parse_table/parse_table_273.c diff --git a/shcat_c/parser/static/parse_table/parse_table_274.c b/parser/static/parse_table/parse_table_274.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_274.c rename to parser/static/parse_table/parse_table_274.c diff --git a/shcat_c/parser/static/parse_table/parse_table_275.c b/parser/static/parse_table/parse_table_275.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_275.c rename to parser/static/parse_table/parse_table_275.c diff --git a/shcat_c/parser/static/parse_table/parse_table_276.c b/parser/static/parse_table/parse_table_276.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_276.c rename to parser/static/parse_table/parse_table_276.c diff --git a/shcat_c/parser/static/parse_table/parse_table_277.c b/parser/static/parse_table/parse_table_277.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_277.c rename to parser/static/parse_table/parse_table_277.c diff --git a/shcat_c/parser/static/parse_table/parse_table_278.c b/parser/static/parse_table/parse_table_278.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_278.c rename to parser/static/parse_table/parse_table_278.c diff --git a/shcat_c/parser/static/parse_table/parse_table_279.c b/parser/static/parse_table/parse_table_279.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_279.c rename to parser/static/parse_table/parse_table_279.c diff --git a/shcat_c/parser/static/parse_table/parse_table_28.c b/parser/static/parse_table/parse_table_28.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_28.c rename to parser/static/parse_table/parse_table_28.c diff --git a/shcat_c/parser/static/parse_table/parse_table_280.c b/parser/static/parse_table/parse_table_280.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_280.c rename to parser/static/parse_table/parse_table_280.c diff --git a/shcat_c/parser/static/parse_table/parse_table_281.c b/parser/static/parse_table/parse_table_281.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_281.c rename to parser/static/parse_table/parse_table_281.c diff --git a/shcat_c/parser/static/parse_table/parse_table_282.c b/parser/static/parse_table/parse_table_282.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_282.c rename to parser/static/parse_table/parse_table_282.c diff --git a/shcat_c/parser/static/parse_table/parse_table_283.c b/parser/static/parse_table/parse_table_283.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_283.c rename to parser/static/parse_table/parse_table_283.c diff --git a/shcat_c/parser/static/parse_table/parse_table_284.c b/parser/static/parse_table/parse_table_284.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_284.c rename to parser/static/parse_table/parse_table_284.c diff --git a/shcat_c/parser/static/parse_table/parse_table_285.c b/parser/static/parse_table/parse_table_285.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_285.c rename to parser/static/parse_table/parse_table_285.c diff --git a/shcat_c/parser/static/parse_table/parse_table_286.c b/parser/static/parse_table/parse_table_286.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_286.c rename to parser/static/parse_table/parse_table_286.c diff --git a/shcat_c/parser/static/parse_table/parse_table_287.c b/parser/static/parse_table/parse_table_287.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_287.c rename to parser/static/parse_table/parse_table_287.c diff --git a/shcat_c/parser/static/parse_table/parse_table_288.c b/parser/static/parse_table/parse_table_288.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_288.c rename to parser/static/parse_table/parse_table_288.c diff --git a/shcat_c/parser/static/parse_table/parse_table_289.c b/parser/static/parse_table/parse_table_289.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_289.c rename to parser/static/parse_table/parse_table_289.c diff --git a/shcat_c/parser/static/parse_table/parse_table_29.c b/parser/static/parse_table/parse_table_29.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_29.c rename to parser/static/parse_table/parse_table_29.c diff --git a/shcat_c/parser/static/parse_table/parse_table_290.c b/parser/static/parse_table/parse_table_290.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_290.c rename to parser/static/parse_table/parse_table_290.c diff --git a/shcat_c/parser/static/parse_table/parse_table_291.c b/parser/static/parse_table/parse_table_291.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_291.c rename to parser/static/parse_table/parse_table_291.c diff --git a/shcat_c/parser/static/parse_table/parse_table_292.c b/parser/static/parse_table/parse_table_292.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_292.c rename to parser/static/parse_table/parse_table_292.c diff --git a/shcat_c/parser/static/parse_table/parse_table_293.c b/parser/static/parse_table/parse_table_293.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_293.c rename to parser/static/parse_table/parse_table_293.c diff --git a/shcat_c/parser/static/parse_table/parse_table_294.c b/parser/static/parse_table/parse_table_294.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_294.c rename to parser/static/parse_table/parse_table_294.c diff --git a/shcat_c/parser/static/parse_table/parse_table_295.c b/parser/static/parse_table/parse_table_295.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_295.c rename to parser/static/parse_table/parse_table_295.c diff --git a/shcat_c/parser/static/parse_table/parse_table_296.c b/parser/static/parse_table/parse_table_296.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_296.c rename to parser/static/parse_table/parse_table_296.c diff --git a/shcat_c/parser/static/parse_table/parse_table_297.c b/parser/static/parse_table/parse_table_297.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_297.c rename to parser/static/parse_table/parse_table_297.c diff --git a/shcat_c/parser/static/parse_table/parse_table_298.c b/parser/static/parse_table/parse_table_298.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_298.c rename to parser/static/parse_table/parse_table_298.c diff --git a/shcat_c/parser/static/parse_table/parse_table_299.c b/parser/static/parse_table/parse_table_299.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_299.c rename to parser/static/parse_table/parse_table_299.c diff --git a/shcat_c/parser/static/parse_table/parse_table_3.c b/parser/static/parse_table/parse_table_3.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_3.c rename to parser/static/parse_table/parse_table_3.c diff --git a/shcat_c/parser/static/parse_table/parse_table_30.c b/parser/static/parse_table/parse_table_30.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_30.c rename to parser/static/parse_table/parse_table_30.c diff --git a/shcat_c/parser/static/parse_table/parse_table_300.c b/parser/static/parse_table/parse_table_300.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_300.c rename to parser/static/parse_table/parse_table_300.c diff --git a/shcat_c/parser/static/parse_table/parse_table_301.c b/parser/static/parse_table/parse_table_301.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_301.c rename to parser/static/parse_table/parse_table_301.c diff --git a/shcat_c/parser/static/parse_table/parse_table_302.c b/parser/static/parse_table/parse_table_302.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_302.c rename to parser/static/parse_table/parse_table_302.c diff --git a/shcat_c/parser/static/parse_table/parse_table_303.c b/parser/static/parse_table/parse_table_303.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_303.c rename to parser/static/parse_table/parse_table_303.c diff --git a/shcat_c/parser/static/parse_table/parse_table_304.c b/parser/static/parse_table/parse_table_304.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_304.c rename to parser/static/parse_table/parse_table_304.c diff --git a/shcat_c/parser/static/parse_table/parse_table_305.c b/parser/static/parse_table/parse_table_305.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_305.c rename to parser/static/parse_table/parse_table_305.c diff --git a/shcat_c/parser/static/parse_table/parse_table_306.c b/parser/static/parse_table/parse_table_306.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_306.c rename to parser/static/parse_table/parse_table_306.c diff --git a/shcat_c/parser/static/parse_table/parse_table_307.c b/parser/static/parse_table/parse_table_307.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_307.c rename to parser/static/parse_table/parse_table_307.c diff --git a/shcat_c/parser/static/parse_table/parse_table_308.c b/parser/static/parse_table/parse_table_308.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_308.c rename to parser/static/parse_table/parse_table_308.c diff --git a/shcat_c/parser/static/parse_table/parse_table_309.c b/parser/static/parse_table/parse_table_309.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_309.c rename to parser/static/parse_table/parse_table_309.c diff --git a/shcat_c/parser/static/parse_table/parse_table_31.c b/parser/static/parse_table/parse_table_31.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_31.c rename to parser/static/parse_table/parse_table_31.c diff --git a/shcat_c/parser/static/parse_table/parse_table_310.c b/parser/static/parse_table/parse_table_310.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_310.c rename to parser/static/parse_table/parse_table_310.c diff --git a/shcat_c/parser/static/parse_table/parse_table_311.c b/parser/static/parse_table/parse_table_311.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_311.c rename to parser/static/parse_table/parse_table_311.c diff --git a/shcat_c/parser/static/parse_table/parse_table_312.c b/parser/static/parse_table/parse_table_312.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_312.c rename to parser/static/parse_table/parse_table_312.c diff --git a/shcat_c/parser/static/parse_table/parse_table_313.c b/parser/static/parse_table/parse_table_313.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_313.c rename to parser/static/parse_table/parse_table_313.c diff --git a/shcat_c/parser/static/parse_table/parse_table_314.c b/parser/static/parse_table/parse_table_314.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_314.c rename to parser/static/parse_table/parse_table_314.c diff --git a/shcat_c/parser/static/parse_table/parse_table_315.c b/parser/static/parse_table/parse_table_315.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_315.c rename to parser/static/parse_table/parse_table_315.c diff --git a/shcat_c/parser/static/parse_table/parse_table_316.c b/parser/static/parse_table/parse_table_316.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_316.c rename to parser/static/parse_table/parse_table_316.c diff --git a/shcat_c/parser/static/parse_table/parse_table_317.c b/parser/static/parse_table/parse_table_317.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_317.c rename to parser/static/parse_table/parse_table_317.c diff --git a/shcat_c/parser/static/parse_table/parse_table_318.c b/parser/static/parse_table/parse_table_318.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_318.c rename to parser/static/parse_table/parse_table_318.c diff --git a/shcat_c/parser/static/parse_table/parse_table_319.c b/parser/static/parse_table/parse_table_319.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_319.c rename to parser/static/parse_table/parse_table_319.c diff --git a/shcat_c/parser/static/parse_table/parse_table_32.c b/parser/static/parse_table/parse_table_32.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_32.c rename to parser/static/parse_table/parse_table_32.c diff --git a/shcat_c/parser/static/parse_table/parse_table_320.c b/parser/static/parse_table/parse_table_320.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_320.c rename to parser/static/parse_table/parse_table_320.c diff --git a/shcat_c/parser/static/parse_table/parse_table_321.c b/parser/static/parse_table/parse_table_321.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_321.c rename to parser/static/parse_table/parse_table_321.c diff --git a/shcat_c/parser/static/parse_table/parse_table_322.c b/parser/static/parse_table/parse_table_322.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_322.c rename to parser/static/parse_table/parse_table_322.c diff --git a/shcat_c/parser/static/parse_table/parse_table_323.c b/parser/static/parse_table/parse_table_323.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_323.c rename to parser/static/parse_table/parse_table_323.c diff --git a/shcat_c/parser/static/parse_table/parse_table_324.c b/parser/static/parse_table/parse_table_324.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_324.c rename to parser/static/parse_table/parse_table_324.c diff --git a/shcat_c/parser/static/parse_table/parse_table_325.c b/parser/static/parse_table/parse_table_325.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_325.c rename to parser/static/parse_table/parse_table_325.c diff --git a/shcat_c/parser/static/parse_table/parse_table_326.c b/parser/static/parse_table/parse_table_326.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_326.c rename to parser/static/parse_table/parse_table_326.c diff --git a/shcat_c/parser/static/parse_table/parse_table_327.c b/parser/static/parse_table/parse_table_327.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_327.c rename to parser/static/parse_table/parse_table_327.c diff --git a/shcat_c/parser/static/parse_table/parse_table_328.c b/parser/static/parse_table/parse_table_328.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_328.c rename to parser/static/parse_table/parse_table_328.c diff --git a/shcat_c/parser/static/parse_table/parse_table_329.c b/parser/static/parse_table/parse_table_329.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_329.c rename to parser/static/parse_table/parse_table_329.c diff --git a/shcat_c/parser/static/parse_table/parse_table_33.c b/parser/static/parse_table/parse_table_33.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_33.c rename to parser/static/parse_table/parse_table_33.c diff --git a/shcat_c/parser/static/parse_table/parse_table_330.c b/parser/static/parse_table/parse_table_330.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_330.c rename to parser/static/parse_table/parse_table_330.c diff --git a/shcat_c/parser/static/parse_table/parse_table_331.c b/parser/static/parse_table/parse_table_331.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_331.c rename to parser/static/parse_table/parse_table_331.c diff --git a/shcat_c/parser/static/parse_table/parse_table_332.c b/parser/static/parse_table/parse_table_332.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_332.c rename to parser/static/parse_table/parse_table_332.c diff --git a/shcat_c/parser/static/parse_table/parse_table_333.c b/parser/static/parse_table/parse_table_333.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_333.c rename to parser/static/parse_table/parse_table_333.c diff --git a/shcat_c/parser/static/parse_table/parse_table_334.c b/parser/static/parse_table/parse_table_334.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_334.c rename to parser/static/parse_table/parse_table_334.c diff --git a/shcat_c/parser/static/parse_table/parse_table_335.c b/parser/static/parse_table/parse_table_335.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_335.c rename to parser/static/parse_table/parse_table_335.c diff --git a/shcat_c/parser/static/parse_table/parse_table_336.c b/parser/static/parse_table/parse_table_336.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_336.c rename to parser/static/parse_table/parse_table_336.c diff --git a/shcat_c/parser/static/parse_table/parse_table_337.c b/parser/static/parse_table/parse_table_337.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_337.c rename to parser/static/parse_table/parse_table_337.c diff --git a/shcat_c/parser/static/parse_table/parse_table_338.c b/parser/static/parse_table/parse_table_338.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_338.c rename to parser/static/parse_table/parse_table_338.c diff --git a/shcat_c/parser/static/parse_table/parse_table_339.c b/parser/static/parse_table/parse_table_339.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_339.c rename to parser/static/parse_table/parse_table_339.c diff --git a/shcat_c/parser/static/parse_table/parse_table_34.c b/parser/static/parse_table/parse_table_34.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_34.c rename to parser/static/parse_table/parse_table_34.c diff --git a/shcat_c/parser/static/parse_table/parse_table_340.c b/parser/static/parse_table/parse_table_340.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_340.c rename to parser/static/parse_table/parse_table_340.c diff --git a/shcat_c/parser/static/parse_table/parse_table_341.c b/parser/static/parse_table/parse_table_341.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_341.c rename to parser/static/parse_table/parse_table_341.c diff --git a/shcat_c/parser/static/parse_table/parse_table_342.c b/parser/static/parse_table/parse_table_342.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_342.c rename to parser/static/parse_table/parse_table_342.c diff --git a/shcat_c/parser/static/parse_table/parse_table_343.c b/parser/static/parse_table/parse_table_343.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_343.c rename to parser/static/parse_table/parse_table_343.c diff --git a/shcat_c/parser/static/parse_table/parse_table_344.c b/parser/static/parse_table/parse_table_344.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_344.c rename to parser/static/parse_table/parse_table_344.c diff --git a/shcat_c/parser/static/parse_table/parse_table_345.c b/parser/static/parse_table/parse_table_345.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_345.c rename to parser/static/parse_table/parse_table_345.c diff --git a/shcat_c/parser/static/parse_table/parse_table_346.c b/parser/static/parse_table/parse_table_346.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_346.c rename to parser/static/parse_table/parse_table_346.c diff --git a/shcat_c/parser/static/parse_table/parse_table_347.c b/parser/static/parse_table/parse_table_347.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_347.c rename to parser/static/parse_table/parse_table_347.c diff --git a/shcat_c/parser/static/parse_table/parse_table_348.c b/parser/static/parse_table/parse_table_348.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_348.c rename to parser/static/parse_table/parse_table_348.c diff --git a/shcat_c/parser/static/parse_table/parse_table_349.c b/parser/static/parse_table/parse_table_349.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_349.c rename to parser/static/parse_table/parse_table_349.c diff --git a/shcat_c/parser/static/parse_table/parse_table_35.c b/parser/static/parse_table/parse_table_35.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_35.c rename to parser/static/parse_table/parse_table_35.c diff --git a/shcat_c/parser/static/parse_table/parse_table_350.c b/parser/static/parse_table/parse_table_350.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_350.c rename to parser/static/parse_table/parse_table_350.c diff --git a/shcat_c/parser/static/parse_table/parse_table_351.c b/parser/static/parse_table/parse_table_351.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_351.c rename to parser/static/parse_table/parse_table_351.c diff --git a/shcat_c/parser/static/parse_table/parse_table_352.c b/parser/static/parse_table/parse_table_352.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_352.c rename to parser/static/parse_table/parse_table_352.c diff --git a/shcat_c/parser/static/parse_table/parse_table_353.c b/parser/static/parse_table/parse_table_353.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_353.c rename to parser/static/parse_table/parse_table_353.c diff --git a/shcat_c/parser/static/parse_table/parse_table_354.c b/parser/static/parse_table/parse_table_354.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_354.c rename to parser/static/parse_table/parse_table_354.c diff --git a/shcat_c/parser/static/parse_table/parse_table_355.c b/parser/static/parse_table/parse_table_355.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_355.c rename to parser/static/parse_table/parse_table_355.c diff --git a/shcat_c/parser/static/parse_table/parse_table_356.c b/parser/static/parse_table/parse_table_356.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_356.c rename to parser/static/parse_table/parse_table_356.c diff --git a/shcat_c/parser/static/parse_table/parse_table_357.c b/parser/static/parse_table/parse_table_357.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_357.c rename to parser/static/parse_table/parse_table_357.c diff --git a/shcat_c/parser/static/parse_table/parse_table_358.c b/parser/static/parse_table/parse_table_358.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_358.c rename to parser/static/parse_table/parse_table_358.c diff --git a/shcat_c/parser/static/parse_table/parse_table_359.c b/parser/static/parse_table/parse_table_359.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_359.c rename to parser/static/parse_table/parse_table_359.c diff --git a/shcat_c/parser/static/parse_table/parse_table_36.c b/parser/static/parse_table/parse_table_36.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_36.c rename to parser/static/parse_table/parse_table_36.c diff --git a/shcat_c/parser/static/parse_table/parse_table_360.c b/parser/static/parse_table/parse_table_360.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_360.c rename to parser/static/parse_table/parse_table_360.c diff --git a/shcat_c/parser/static/parse_table/parse_table_361.c b/parser/static/parse_table/parse_table_361.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_361.c rename to parser/static/parse_table/parse_table_361.c diff --git a/shcat_c/parser/static/parse_table/parse_table_362.c b/parser/static/parse_table/parse_table_362.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_362.c rename to parser/static/parse_table/parse_table_362.c diff --git a/shcat_c/parser/static/parse_table/parse_table_363.c b/parser/static/parse_table/parse_table_363.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_363.c rename to parser/static/parse_table/parse_table_363.c diff --git a/shcat_c/parser/static/parse_table/parse_table_364.c b/parser/static/parse_table/parse_table_364.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_364.c rename to parser/static/parse_table/parse_table_364.c diff --git a/shcat_c/parser/static/parse_table/parse_table_365.c b/parser/static/parse_table/parse_table_365.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_365.c rename to parser/static/parse_table/parse_table_365.c diff --git a/shcat_c/parser/static/parse_table/parse_table_366.c b/parser/static/parse_table/parse_table_366.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_366.c rename to parser/static/parse_table/parse_table_366.c diff --git a/shcat_c/parser/static/parse_table/parse_table_367.c b/parser/static/parse_table/parse_table_367.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_367.c rename to parser/static/parse_table/parse_table_367.c diff --git a/shcat_c/parser/static/parse_table/parse_table_368.c b/parser/static/parse_table/parse_table_368.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_368.c rename to parser/static/parse_table/parse_table_368.c diff --git a/shcat_c/parser/static/parse_table/parse_table_369.c b/parser/static/parse_table/parse_table_369.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_369.c rename to parser/static/parse_table/parse_table_369.c diff --git a/shcat_c/parser/static/parse_table/parse_table_37.c b/parser/static/parse_table/parse_table_37.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_37.c rename to parser/static/parse_table/parse_table_37.c diff --git a/shcat_c/parser/static/parse_table/parse_table_370.c b/parser/static/parse_table/parse_table_370.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_370.c rename to parser/static/parse_table/parse_table_370.c diff --git a/shcat_c/parser/static/parse_table/parse_table_371.c b/parser/static/parse_table/parse_table_371.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_371.c rename to parser/static/parse_table/parse_table_371.c diff --git a/shcat_c/parser/static/parse_table/parse_table_372.c b/parser/static/parse_table/parse_table_372.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_372.c rename to parser/static/parse_table/parse_table_372.c diff --git a/shcat_c/parser/static/parse_table/parse_table_373.c b/parser/static/parse_table/parse_table_373.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_373.c rename to parser/static/parse_table/parse_table_373.c diff --git a/shcat_c/parser/static/parse_table/parse_table_374.c b/parser/static/parse_table/parse_table_374.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_374.c rename to parser/static/parse_table/parse_table_374.c diff --git a/shcat_c/parser/static/parse_table/parse_table_375.c b/parser/static/parse_table/parse_table_375.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_375.c rename to parser/static/parse_table/parse_table_375.c diff --git a/shcat_c/parser/static/parse_table/parse_table_376.c b/parser/static/parse_table/parse_table_376.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_376.c rename to parser/static/parse_table/parse_table_376.c diff --git a/shcat_c/parser/static/parse_table/parse_table_377.c b/parser/static/parse_table/parse_table_377.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_377.c rename to parser/static/parse_table/parse_table_377.c diff --git a/shcat_c/parser/static/parse_table/parse_table_378.c b/parser/static/parse_table/parse_table_378.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_378.c rename to parser/static/parse_table/parse_table_378.c diff --git a/shcat_c/parser/static/parse_table/parse_table_379.c b/parser/static/parse_table/parse_table_379.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_379.c rename to parser/static/parse_table/parse_table_379.c diff --git a/shcat_c/parser/static/parse_table/parse_table_38.c b/parser/static/parse_table/parse_table_38.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_38.c rename to parser/static/parse_table/parse_table_38.c diff --git a/shcat_c/parser/static/parse_table/parse_table_380.c b/parser/static/parse_table/parse_table_380.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_380.c rename to parser/static/parse_table/parse_table_380.c diff --git a/shcat_c/parser/static/parse_table/parse_table_381.c b/parser/static/parse_table/parse_table_381.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_381.c rename to parser/static/parse_table/parse_table_381.c diff --git a/shcat_c/parser/static/parse_table/parse_table_382.c b/parser/static/parse_table/parse_table_382.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_382.c rename to parser/static/parse_table/parse_table_382.c diff --git a/shcat_c/parser/static/parse_table/parse_table_383.c b/parser/static/parse_table/parse_table_383.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_383.c rename to parser/static/parse_table/parse_table_383.c diff --git a/shcat_c/parser/static/parse_table/parse_table_384.c b/parser/static/parse_table/parse_table_384.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_384.c rename to parser/static/parse_table/parse_table_384.c diff --git a/shcat_c/parser/static/parse_table/parse_table_385.c b/parser/static/parse_table/parse_table_385.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_385.c rename to parser/static/parse_table/parse_table_385.c diff --git a/shcat_c/parser/static/parse_table/parse_table_386.c b/parser/static/parse_table/parse_table_386.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_386.c rename to parser/static/parse_table/parse_table_386.c diff --git a/shcat_c/parser/static/parse_table/parse_table_387.c b/parser/static/parse_table/parse_table_387.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_387.c rename to parser/static/parse_table/parse_table_387.c diff --git a/shcat_c/parser/static/parse_table/parse_table_388.c b/parser/static/parse_table/parse_table_388.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_388.c rename to parser/static/parse_table/parse_table_388.c diff --git a/shcat_c/parser/static/parse_table/parse_table_389.c b/parser/static/parse_table/parse_table_389.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_389.c rename to parser/static/parse_table/parse_table_389.c diff --git a/shcat_c/parser/static/parse_table/parse_table_39.c b/parser/static/parse_table/parse_table_39.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_39.c rename to parser/static/parse_table/parse_table_39.c diff --git a/shcat_c/parser/static/parse_table/parse_table_390.c b/parser/static/parse_table/parse_table_390.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_390.c rename to parser/static/parse_table/parse_table_390.c diff --git a/shcat_c/parser/static/parse_table/parse_table_391.c b/parser/static/parse_table/parse_table_391.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_391.c rename to parser/static/parse_table/parse_table_391.c diff --git a/shcat_c/parser/static/parse_table/parse_table_392.c b/parser/static/parse_table/parse_table_392.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_392.c rename to parser/static/parse_table/parse_table_392.c diff --git a/shcat_c/parser/static/parse_table/parse_table_393.c b/parser/static/parse_table/parse_table_393.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_393.c rename to parser/static/parse_table/parse_table_393.c diff --git a/shcat_c/parser/static/parse_table/parse_table_394.c b/parser/static/parse_table/parse_table_394.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_394.c rename to parser/static/parse_table/parse_table_394.c diff --git a/shcat_c/parser/static/parse_table/parse_table_395.c b/parser/static/parse_table/parse_table_395.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_395.c rename to parser/static/parse_table/parse_table_395.c diff --git a/shcat_c/parser/static/parse_table/parse_table_396.c b/parser/static/parse_table/parse_table_396.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_396.c rename to parser/static/parse_table/parse_table_396.c diff --git a/shcat_c/parser/static/parse_table/parse_table_397.c b/parser/static/parse_table/parse_table_397.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_397.c rename to parser/static/parse_table/parse_table_397.c diff --git a/shcat_c/parser/static/parse_table/parse_table_398.c b/parser/static/parse_table/parse_table_398.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_398.c rename to parser/static/parse_table/parse_table_398.c diff --git a/shcat_c/parser/static/parse_table/parse_table_399.c b/parser/static/parse_table/parse_table_399.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_399.c rename to parser/static/parse_table/parse_table_399.c diff --git a/shcat_c/parser/static/parse_table/parse_table_4.c b/parser/static/parse_table/parse_table_4.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_4.c rename to parser/static/parse_table/parse_table_4.c diff --git a/shcat_c/parser/static/parse_table/parse_table_40.c b/parser/static/parse_table/parse_table_40.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_40.c rename to parser/static/parse_table/parse_table_40.c diff --git a/shcat_c/parser/static/parse_table/parse_table_400.c b/parser/static/parse_table/parse_table_400.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_400.c rename to parser/static/parse_table/parse_table_400.c diff --git a/shcat_c/parser/static/parse_table/parse_table_401.c b/parser/static/parse_table/parse_table_401.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_401.c rename to parser/static/parse_table/parse_table_401.c diff --git a/shcat_c/parser/static/parse_table/parse_table_402.c b/parser/static/parse_table/parse_table_402.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_402.c rename to parser/static/parse_table/parse_table_402.c diff --git a/shcat_c/parser/static/parse_table/parse_table_403.c b/parser/static/parse_table/parse_table_403.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_403.c rename to parser/static/parse_table/parse_table_403.c diff --git a/shcat_c/parser/static/parse_table/parse_table_404.c b/parser/static/parse_table/parse_table_404.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_404.c rename to parser/static/parse_table/parse_table_404.c diff --git a/shcat_c/parser/static/parse_table/parse_table_405.c b/parser/static/parse_table/parse_table_405.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_405.c rename to parser/static/parse_table/parse_table_405.c diff --git a/shcat_c/parser/static/parse_table/parse_table_406.c b/parser/static/parse_table/parse_table_406.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_406.c rename to parser/static/parse_table/parse_table_406.c diff --git a/shcat_c/parser/static/parse_table/parse_table_407.c b/parser/static/parse_table/parse_table_407.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_407.c rename to parser/static/parse_table/parse_table_407.c diff --git a/shcat_c/parser/static/parse_table/parse_table_408.c b/parser/static/parse_table/parse_table_408.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_408.c rename to parser/static/parse_table/parse_table_408.c diff --git a/shcat_c/parser/static/parse_table/parse_table_409.c b/parser/static/parse_table/parse_table_409.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_409.c rename to parser/static/parse_table/parse_table_409.c diff --git a/shcat_c/parser/static/parse_table/parse_table_41.c b/parser/static/parse_table/parse_table_41.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_41.c rename to parser/static/parse_table/parse_table_41.c diff --git a/shcat_c/parser/static/parse_table/parse_table_410.c b/parser/static/parse_table/parse_table_410.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_410.c rename to parser/static/parse_table/parse_table_410.c diff --git a/shcat_c/parser/static/parse_table/parse_table_411.c b/parser/static/parse_table/parse_table_411.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_411.c rename to parser/static/parse_table/parse_table_411.c diff --git a/shcat_c/parser/static/parse_table/parse_table_412.c b/parser/static/parse_table/parse_table_412.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_412.c rename to parser/static/parse_table/parse_table_412.c diff --git a/shcat_c/parser/static/parse_table/parse_table_413.c b/parser/static/parse_table/parse_table_413.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_413.c rename to parser/static/parse_table/parse_table_413.c diff --git a/shcat_c/parser/static/parse_table/parse_table_414.c b/parser/static/parse_table/parse_table_414.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_414.c rename to parser/static/parse_table/parse_table_414.c diff --git a/shcat_c/parser/static/parse_table/parse_table_415.c b/parser/static/parse_table/parse_table_415.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_415.c rename to parser/static/parse_table/parse_table_415.c diff --git a/shcat_c/parser/static/parse_table/parse_table_416.c b/parser/static/parse_table/parse_table_416.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_416.c rename to parser/static/parse_table/parse_table_416.c diff --git a/shcat_c/parser/static/parse_table/parse_table_417.c b/parser/static/parse_table/parse_table_417.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_417.c rename to parser/static/parse_table/parse_table_417.c diff --git a/shcat_c/parser/static/parse_table/parse_table_418.c b/parser/static/parse_table/parse_table_418.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_418.c rename to parser/static/parse_table/parse_table_418.c diff --git a/shcat_c/parser/static/parse_table/parse_table_419.c b/parser/static/parse_table/parse_table_419.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_419.c rename to parser/static/parse_table/parse_table_419.c diff --git a/shcat_c/parser/static/parse_table/parse_table_42.c b/parser/static/parse_table/parse_table_42.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_42.c rename to parser/static/parse_table/parse_table_42.c diff --git a/shcat_c/parser/static/parse_table/parse_table_420.c b/parser/static/parse_table/parse_table_420.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_420.c rename to parser/static/parse_table/parse_table_420.c diff --git a/shcat_c/parser/static/parse_table/parse_table_421.c b/parser/static/parse_table/parse_table_421.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_421.c rename to parser/static/parse_table/parse_table_421.c diff --git a/shcat_c/parser/static/parse_table/parse_table_422.c b/parser/static/parse_table/parse_table_422.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_422.c rename to parser/static/parse_table/parse_table_422.c diff --git a/shcat_c/parser/static/parse_table/parse_table_423.c b/parser/static/parse_table/parse_table_423.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_423.c rename to parser/static/parse_table/parse_table_423.c diff --git a/shcat_c/parser/static/parse_table/parse_table_424.c b/parser/static/parse_table/parse_table_424.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_424.c rename to parser/static/parse_table/parse_table_424.c diff --git a/shcat_c/parser/static/parse_table/parse_table_425.c b/parser/static/parse_table/parse_table_425.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_425.c rename to parser/static/parse_table/parse_table_425.c diff --git a/shcat_c/parser/static/parse_table/parse_table_426.c b/parser/static/parse_table/parse_table_426.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_426.c rename to parser/static/parse_table/parse_table_426.c diff --git a/shcat_c/parser/static/parse_table/parse_table_427.c b/parser/static/parse_table/parse_table_427.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_427.c rename to parser/static/parse_table/parse_table_427.c diff --git a/shcat_c/parser/static/parse_table/parse_table_428.c b/parser/static/parse_table/parse_table_428.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_428.c rename to parser/static/parse_table/parse_table_428.c diff --git a/shcat_c/parser/static/parse_table/parse_table_429.c b/parser/static/parse_table/parse_table_429.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_429.c rename to parser/static/parse_table/parse_table_429.c diff --git a/shcat_c/parser/static/parse_table/parse_table_43.c b/parser/static/parse_table/parse_table_43.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_43.c rename to parser/static/parse_table/parse_table_43.c diff --git a/shcat_c/parser/static/parse_table/parse_table_430.c b/parser/static/parse_table/parse_table_430.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_430.c rename to parser/static/parse_table/parse_table_430.c diff --git a/shcat_c/parser/static/parse_table/parse_table_431.c b/parser/static/parse_table/parse_table_431.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_431.c rename to parser/static/parse_table/parse_table_431.c diff --git a/shcat_c/parser/static/parse_table/parse_table_432.c b/parser/static/parse_table/parse_table_432.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_432.c rename to parser/static/parse_table/parse_table_432.c diff --git a/shcat_c/parser/static/parse_table/parse_table_433.c b/parser/static/parse_table/parse_table_433.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_433.c rename to parser/static/parse_table/parse_table_433.c diff --git a/shcat_c/parser/static/parse_table/parse_table_434.c b/parser/static/parse_table/parse_table_434.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_434.c rename to parser/static/parse_table/parse_table_434.c diff --git a/shcat_c/parser/static/parse_table/parse_table_435.c b/parser/static/parse_table/parse_table_435.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_435.c rename to parser/static/parse_table/parse_table_435.c diff --git a/shcat_c/parser/static/parse_table/parse_table_436.c b/parser/static/parse_table/parse_table_436.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_436.c rename to parser/static/parse_table/parse_table_436.c diff --git a/shcat_c/parser/static/parse_table/parse_table_437.c b/parser/static/parse_table/parse_table_437.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_437.c rename to parser/static/parse_table/parse_table_437.c diff --git a/shcat_c/parser/static/parse_table/parse_table_438.c b/parser/static/parse_table/parse_table_438.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_438.c rename to parser/static/parse_table/parse_table_438.c diff --git a/shcat_c/parser/static/parse_table/parse_table_439.c b/parser/static/parse_table/parse_table_439.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_439.c rename to parser/static/parse_table/parse_table_439.c diff --git a/shcat_c/parser/static/parse_table/parse_table_44.c b/parser/static/parse_table/parse_table_44.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_44.c rename to parser/static/parse_table/parse_table_44.c diff --git a/shcat_c/parser/static/parse_table/parse_table_440.c b/parser/static/parse_table/parse_table_440.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_440.c rename to parser/static/parse_table/parse_table_440.c diff --git a/shcat_c/parser/static/parse_table/parse_table_441.c b/parser/static/parse_table/parse_table_441.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_441.c rename to parser/static/parse_table/parse_table_441.c diff --git a/shcat_c/parser/static/parse_table/parse_table_442.c b/parser/static/parse_table/parse_table_442.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_442.c rename to parser/static/parse_table/parse_table_442.c diff --git a/shcat_c/parser/static/parse_table/parse_table_443.c b/parser/static/parse_table/parse_table_443.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_443.c rename to parser/static/parse_table/parse_table_443.c diff --git a/shcat_c/parser/static/parse_table/parse_table_444.c b/parser/static/parse_table/parse_table_444.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_444.c rename to parser/static/parse_table/parse_table_444.c diff --git a/shcat_c/parser/static/parse_table/parse_table_445.c b/parser/static/parse_table/parse_table_445.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_445.c rename to parser/static/parse_table/parse_table_445.c diff --git a/shcat_c/parser/static/parse_table/parse_table_446.c b/parser/static/parse_table/parse_table_446.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_446.c rename to parser/static/parse_table/parse_table_446.c diff --git a/shcat_c/parser/static/parse_table/parse_table_447.c b/parser/static/parse_table/parse_table_447.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_447.c rename to parser/static/parse_table/parse_table_447.c diff --git a/shcat_c/parser/static/parse_table/parse_table_448.c b/parser/static/parse_table/parse_table_448.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_448.c rename to parser/static/parse_table/parse_table_448.c diff --git a/shcat_c/parser/static/parse_table/parse_table_449.c b/parser/static/parse_table/parse_table_449.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_449.c rename to parser/static/parse_table/parse_table_449.c diff --git a/shcat_c/parser/static/parse_table/parse_table_45.c b/parser/static/parse_table/parse_table_45.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_45.c rename to parser/static/parse_table/parse_table_45.c diff --git a/shcat_c/parser/static/parse_table/parse_table_450.c b/parser/static/parse_table/parse_table_450.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_450.c rename to parser/static/parse_table/parse_table_450.c diff --git a/shcat_c/parser/static/parse_table/parse_table_451.c b/parser/static/parse_table/parse_table_451.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_451.c rename to parser/static/parse_table/parse_table_451.c diff --git a/shcat_c/parser/static/parse_table/parse_table_452.c b/parser/static/parse_table/parse_table_452.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_452.c rename to parser/static/parse_table/parse_table_452.c diff --git a/shcat_c/parser/static/parse_table/parse_table_453.c b/parser/static/parse_table/parse_table_453.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_453.c rename to parser/static/parse_table/parse_table_453.c diff --git a/shcat_c/parser/static/parse_table/parse_table_454.c b/parser/static/parse_table/parse_table_454.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_454.c rename to parser/static/parse_table/parse_table_454.c diff --git a/shcat_c/parser/static/parse_table/parse_table_455.c b/parser/static/parse_table/parse_table_455.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_455.c rename to parser/static/parse_table/parse_table_455.c diff --git a/shcat_c/parser/static/parse_table/parse_table_456.c b/parser/static/parse_table/parse_table_456.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_456.c rename to parser/static/parse_table/parse_table_456.c diff --git a/shcat_c/parser/static/parse_table/parse_table_457.c b/parser/static/parse_table/parse_table_457.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_457.c rename to parser/static/parse_table/parse_table_457.c diff --git a/shcat_c/parser/static/parse_table/parse_table_458.c b/parser/static/parse_table/parse_table_458.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_458.c rename to parser/static/parse_table/parse_table_458.c diff --git a/shcat_c/parser/static/parse_table/parse_table_459.c b/parser/static/parse_table/parse_table_459.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_459.c rename to parser/static/parse_table/parse_table_459.c diff --git a/shcat_c/parser/static/parse_table/parse_table_46.c b/parser/static/parse_table/parse_table_46.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_46.c rename to parser/static/parse_table/parse_table_46.c diff --git a/shcat_c/parser/static/parse_table/parse_table_460.c b/parser/static/parse_table/parse_table_460.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_460.c rename to parser/static/parse_table/parse_table_460.c diff --git a/shcat_c/parser/static/parse_table/parse_table_461.c b/parser/static/parse_table/parse_table_461.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_461.c rename to parser/static/parse_table/parse_table_461.c diff --git a/shcat_c/parser/static/parse_table/parse_table_462.c b/parser/static/parse_table/parse_table_462.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_462.c rename to parser/static/parse_table/parse_table_462.c diff --git a/shcat_c/parser/static/parse_table/parse_table_463.c b/parser/static/parse_table/parse_table_463.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_463.c rename to parser/static/parse_table/parse_table_463.c diff --git a/shcat_c/parser/static/parse_table/parse_table_464.c b/parser/static/parse_table/parse_table_464.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_464.c rename to parser/static/parse_table/parse_table_464.c diff --git a/shcat_c/parser/static/parse_table/parse_table_465.c b/parser/static/parse_table/parse_table_465.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_465.c rename to parser/static/parse_table/parse_table_465.c diff --git a/shcat_c/parser/static/parse_table/parse_table_466.c b/parser/static/parse_table/parse_table_466.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_466.c rename to parser/static/parse_table/parse_table_466.c diff --git a/shcat_c/parser/static/parse_table/parse_table_47.c b/parser/static/parse_table/parse_table_47.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_47.c rename to parser/static/parse_table/parse_table_47.c diff --git a/shcat_c/parser/static/parse_table/parse_table_48.c b/parser/static/parse_table/parse_table_48.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_48.c rename to parser/static/parse_table/parse_table_48.c diff --git a/shcat_c/parser/static/parse_table/parse_table_49.c b/parser/static/parse_table/parse_table_49.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_49.c rename to parser/static/parse_table/parse_table_49.c diff --git a/shcat_c/parser/static/parse_table/parse_table_5.c b/parser/static/parse_table/parse_table_5.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_5.c rename to parser/static/parse_table/parse_table_5.c diff --git a/shcat_c/parser/static/parse_table/parse_table_50.c b/parser/static/parse_table/parse_table_50.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_50.c rename to parser/static/parse_table/parse_table_50.c diff --git a/shcat_c/parser/static/parse_table/parse_table_51.c b/parser/static/parse_table/parse_table_51.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_51.c rename to parser/static/parse_table/parse_table_51.c diff --git a/shcat_c/parser/static/parse_table/parse_table_52.c b/parser/static/parse_table/parse_table_52.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_52.c rename to parser/static/parse_table/parse_table_52.c diff --git a/shcat_c/parser/static/parse_table/parse_table_53.c b/parser/static/parse_table/parse_table_53.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_53.c rename to parser/static/parse_table/parse_table_53.c diff --git a/shcat_c/parser/static/parse_table/parse_table_54.c b/parser/static/parse_table/parse_table_54.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_54.c rename to parser/static/parse_table/parse_table_54.c diff --git a/shcat_c/parser/static/parse_table/parse_table_55.c b/parser/static/parse_table/parse_table_55.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_55.c rename to parser/static/parse_table/parse_table_55.c diff --git a/shcat_c/parser/static/parse_table/parse_table_56.c b/parser/static/parse_table/parse_table_56.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_56.c rename to parser/static/parse_table/parse_table_56.c diff --git a/shcat_c/parser/static/parse_table/parse_table_57.c b/parser/static/parse_table/parse_table_57.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_57.c rename to parser/static/parse_table/parse_table_57.c diff --git a/shcat_c/parser/static/parse_table/parse_table_58.c b/parser/static/parse_table/parse_table_58.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_58.c rename to parser/static/parse_table/parse_table_58.c diff --git a/shcat_c/parser/static/parse_table/parse_table_59.c b/parser/static/parse_table/parse_table_59.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_59.c rename to parser/static/parse_table/parse_table_59.c diff --git a/shcat_c/parser/static/parse_table/parse_table_6.c b/parser/static/parse_table/parse_table_6.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_6.c rename to parser/static/parse_table/parse_table_6.c diff --git a/shcat_c/parser/static/parse_table/parse_table_60.c b/parser/static/parse_table/parse_table_60.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_60.c rename to parser/static/parse_table/parse_table_60.c diff --git a/shcat_c/parser/static/parse_table/parse_table_61.c b/parser/static/parse_table/parse_table_61.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_61.c rename to parser/static/parse_table/parse_table_61.c diff --git a/shcat_c/parser/static/parse_table/parse_table_62.c b/parser/static/parse_table/parse_table_62.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_62.c rename to parser/static/parse_table/parse_table_62.c diff --git a/shcat_c/parser/static/parse_table/parse_table_63.c b/parser/static/parse_table/parse_table_63.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_63.c rename to parser/static/parse_table/parse_table_63.c diff --git a/shcat_c/parser/static/parse_table/parse_table_64.c b/parser/static/parse_table/parse_table_64.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_64.c rename to parser/static/parse_table/parse_table_64.c diff --git a/shcat_c/parser/static/parse_table/parse_table_65.c b/parser/static/parse_table/parse_table_65.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_65.c rename to parser/static/parse_table/parse_table_65.c diff --git a/shcat_c/parser/static/parse_table/parse_table_66.c b/parser/static/parse_table/parse_table_66.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_66.c rename to parser/static/parse_table/parse_table_66.c diff --git a/shcat_c/parser/static/parse_table/parse_table_67.c b/parser/static/parse_table/parse_table_67.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_67.c rename to parser/static/parse_table/parse_table_67.c diff --git a/shcat_c/parser/static/parse_table/parse_table_68.c b/parser/static/parse_table/parse_table_68.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_68.c rename to parser/static/parse_table/parse_table_68.c diff --git a/shcat_c/parser/static/parse_table/parse_table_69.c b/parser/static/parse_table/parse_table_69.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_69.c rename to parser/static/parse_table/parse_table_69.c diff --git a/shcat_c/parser/static/parse_table/parse_table_7.c b/parser/static/parse_table/parse_table_7.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_7.c rename to parser/static/parse_table/parse_table_7.c diff --git a/shcat_c/parser/static/parse_table/parse_table_70.c b/parser/static/parse_table/parse_table_70.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_70.c rename to parser/static/parse_table/parse_table_70.c diff --git a/shcat_c/parser/static/parse_table/parse_table_71.c b/parser/static/parse_table/parse_table_71.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_71.c rename to parser/static/parse_table/parse_table_71.c diff --git a/shcat_c/parser/static/parse_table/parse_table_72.c b/parser/static/parse_table/parse_table_72.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_72.c rename to parser/static/parse_table/parse_table_72.c diff --git a/shcat_c/parser/static/parse_table/parse_table_73.c b/parser/static/parse_table/parse_table_73.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_73.c rename to parser/static/parse_table/parse_table_73.c diff --git a/shcat_c/parser/static/parse_table/parse_table_74.c b/parser/static/parse_table/parse_table_74.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_74.c rename to parser/static/parse_table/parse_table_74.c diff --git a/shcat_c/parser/static/parse_table/parse_table_75.c b/parser/static/parse_table/parse_table_75.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_75.c rename to parser/static/parse_table/parse_table_75.c diff --git a/shcat_c/parser/static/parse_table/parse_table_76.c b/parser/static/parse_table/parse_table_76.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_76.c rename to parser/static/parse_table/parse_table_76.c diff --git a/shcat_c/parser/static/parse_table/parse_table_77.c b/parser/static/parse_table/parse_table_77.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_77.c rename to parser/static/parse_table/parse_table_77.c diff --git a/shcat_c/parser/static/parse_table/parse_table_78.c b/parser/static/parse_table/parse_table_78.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_78.c rename to parser/static/parse_table/parse_table_78.c diff --git a/shcat_c/parser/static/parse_table/parse_table_79.c b/parser/static/parse_table/parse_table_79.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_79.c rename to parser/static/parse_table/parse_table_79.c diff --git a/shcat_c/parser/static/parse_table/parse_table_8.c b/parser/static/parse_table/parse_table_8.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_8.c rename to parser/static/parse_table/parse_table_8.c diff --git a/shcat_c/parser/static/parse_table/parse_table_80.c b/parser/static/parse_table/parse_table_80.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_80.c rename to parser/static/parse_table/parse_table_80.c diff --git a/shcat_c/parser/static/parse_table/parse_table_81.c b/parser/static/parse_table/parse_table_81.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_81.c rename to parser/static/parse_table/parse_table_81.c diff --git a/shcat_c/parser/static/parse_table/parse_table_82.c b/parser/static/parse_table/parse_table_82.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_82.c rename to parser/static/parse_table/parse_table_82.c diff --git a/shcat_c/parser/static/parse_table/parse_table_83.c b/parser/static/parse_table/parse_table_83.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_83.c rename to parser/static/parse_table/parse_table_83.c diff --git a/shcat_c/parser/static/parse_table/parse_table_84.c b/parser/static/parse_table/parse_table_84.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_84.c rename to parser/static/parse_table/parse_table_84.c diff --git a/shcat_c/parser/static/parse_table/parse_table_85.c b/parser/static/parse_table/parse_table_85.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_85.c rename to parser/static/parse_table/parse_table_85.c diff --git a/shcat_c/parser/static/parse_table/parse_table_86.c b/parser/static/parse_table/parse_table_86.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_86.c rename to parser/static/parse_table/parse_table_86.c diff --git a/shcat_c/parser/static/parse_table/parse_table_87.c b/parser/static/parse_table/parse_table_87.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_87.c rename to parser/static/parse_table/parse_table_87.c diff --git a/shcat_c/parser/static/parse_table/parse_table_88.c b/parser/static/parse_table/parse_table_88.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_88.c rename to parser/static/parse_table/parse_table_88.c diff --git a/shcat_c/parser/static/parse_table/parse_table_89.c b/parser/static/parse_table/parse_table_89.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_89.c rename to parser/static/parse_table/parse_table_89.c diff --git a/shcat_c/parser/static/parse_table/parse_table_9.c b/parser/static/parse_table/parse_table_9.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_9.c rename to parser/static/parse_table/parse_table_9.c diff --git a/shcat_c/parser/static/parse_table/parse_table_90.c b/parser/static/parse_table/parse_table_90.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_90.c rename to parser/static/parse_table/parse_table_90.c diff --git a/shcat_c/parser/static/parse_table/parse_table_91.c b/parser/static/parse_table/parse_table_91.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_91.c rename to parser/static/parse_table/parse_table_91.c diff --git a/shcat_c/parser/static/parse_table/parse_table_92.c b/parser/static/parse_table/parse_table_92.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_92.c rename to parser/static/parse_table/parse_table_92.c diff --git a/shcat_c/parser/static/parse_table/parse_table_93.c b/parser/static/parse_table/parse_table_93.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_93.c rename to parser/static/parse_table/parse_table_93.c diff --git a/shcat_c/parser/static/parse_table/parse_table_94.c b/parser/static/parse_table/parse_table_94.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_94.c rename to parser/static/parse_table/parse_table_94.c diff --git a/shcat_c/parser/static/parse_table/parse_table_95.c b/parser/static/parse_table/parse_table_95.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_95.c rename to parser/static/parse_table/parse_table_95.c diff --git a/shcat_c/parser/static/parse_table/parse_table_96.c b/parser/static/parse_table/parse_table_96.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_96.c rename to parser/static/parse_table/parse_table_96.c diff --git a/shcat_c/parser/static/parse_table/parse_table_97.c b/parser/static/parse_table/parse_table_97.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_97.c rename to parser/static/parse_table/parse_table_97.c diff --git a/shcat_c/parser/static/parse_table/parse_table_98.c b/parser/static/parse_table/parse_table_98.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_98.c rename to parser/static/parse_table/parse_table_98.c diff --git a/shcat_c/parser/static/parse_table/parse_table_99.c b/parser/static/parse_table/parse_table_99.c similarity index 100% rename from shcat_c/parser/static/parse_table/parse_table_99.c rename to parser/static/parse_table/parse_table_99.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids.h b/parser/static/primary_state_ids/primary_state_ids.h similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids.h rename to parser/static/primary_state_ids/primary_state_ids.h diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_0.c b/parser/static/primary_state_ids/primary_state_ids_0.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_0.c rename to parser/static/primary_state_ids/primary_state_ids_0.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_1.c b/parser/static/primary_state_ids/primary_state_ids_1.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_1.c rename to parser/static/primary_state_ids/primary_state_ids_1.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_10.c b/parser/static/primary_state_ids/primary_state_ids_10.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_10.c rename to parser/static/primary_state_ids/primary_state_ids_10.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_11.c b/parser/static/primary_state_ids/primary_state_ids_11.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_11.c rename to parser/static/primary_state_ids/primary_state_ids_11.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_12.c b/parser/static/primary_state_ids/primary_state_ids_12.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_12.c rename to parser/static/primary_state_ids/primary_state_ids_12.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_13.c b/parser/static/primary_state_ids/primary_state_ids_13.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_13.c rename to parser/static/primary_state_ids/primary_state_ids_13.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_14.c b/parser/static/primary_state_ids/primary_state_ids_14.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_14.c rename to parser/static/primary_state_ids/primary_state_ids_14.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_15.c b/parser/static/primary_state_ids/primary_state_ids_15.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_15.c rename to parser/static/primary_state_ids/primary_state_ids_15.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_16.c b/parser/static/primary_state_ids/primary_state_ids_16.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_16.c rename to parser/static/primary_state_ids/primary_state_ids_16.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_17.c b/parser/static/primary_state_ids/primary_state_ids_17.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_17.c rename to parser/static/primary_state_ids/primary_state_ids_17.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_18.c b/parser/static/primary_state_ids/primary_state_ids_18.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_18.c rename to parser/static/primary_state_ids/primary_state_ids_18.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_19.c b/parser/static/primary_state_ids/primary_state_ids_19.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_19.c rename to parser/static/primary_state_ids/primary_state_ids_19.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_2.c b/parser/static/primary_state_ids/primary_state_ids_2.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_2.c rename to parser/static/primary_state_ids/primary_state_ids_2.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_20.c b/parser/static/primary_state_ids/primary_state_ids_20.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_20.c rename to parser/static/primary_state_ids/primary_state_ids_20.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_21.c b/parser/static/primary_state_ids/primary_state_ids_21.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_21.c rename to parser/static/primary_state_ids/primary_state_ids_21.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_22.c b/parser/static/primary_state_ids/primary_state_ids_22.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_22.c rename to parser/static/primary_state_ids/primary_state_ids_22.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_23.c b/parser/static/primary_state_ids/primary_state_ids_23.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_23.c rename to parser/static/primary_state_ids/primary_state_ids_23.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_24.c b/parser/static/primary_state_ids/primary_state_ids_24.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_24.c rename to parser/static/primary_state_ids/primary_state_ids_24.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_25.c b/parser/static/primary_state_ids/primary_state_ids_25.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_25.c rename to parser/static/primary_state_ids/primary_state_ids_25.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_26.c b/parser/static/primary_state_ids/primary_state_ids_26.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_26.c rename to parser/static/primary_state_ids/primary_state_ids_26.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_27.c b/parser/static/primary_state_ids/primary_state_ids_27.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_27.c rename to parser/static/primary_state_ids/primary_state_ids_27.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_28.c b/parser/static/primary_state_ids/primary_state_ids_28.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_28.c rename to parser/static/primary_state_ids/primary_state_ids_28.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_29.c b/parser/static/primary_state_ids/primary_state_ids_29.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_29.c rename to parser/static/primary_state_ids/primary_state_ids_29.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_3.c b/parser/static/primary_state_ids/primary_state_ids_3.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_3.c rename to parser/static/primary_state_ids/primary_state_ids_3.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_30.c b/parser/static/primary_state_ids/primary_state_ids_30.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_30.c rename to parser/static/primary_state_ids/primary_state_ids_30.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_31.c b/parser/static/primary_state_ids/primary_state_ids_31.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_31.c rename to parser/static/primary_state_ids/primary_state_ids_31.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_32.c b/parser/static/primary_state_ids/primary_state_ids_32.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_32.c rename to parser/static/primary_state_ids/primary_state_ids_32.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_33.c b/parser/static/primary_state_ids/primary_state_ids_33.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_33.c rename to parser/static/primary_state_ids/primary_state_ids_33.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_34.c b/parser/static/primary_state_ids/primary_state_ids_34.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_34.c rename to parser/static/primary_state_ids/primary_state_ids_34.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_35.c b/parser/static/primary_state_ids/primary_state_ids_35.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_35.c rename to parser/static/primary_state_ids/primary_state_ids_35.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_36.c b/parser/static/primary_state_ids/primary_state_ids_36.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_36.c rename to parser/static/primary_state_ids/primary_state_ids_36.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_37.c b/parser/static/primary_state_ids/primary_state_ids_37.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_37.c rename to parser/static/primary_state_ids/primary_state_ids_37.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_38.c b/parser/static/primary_state_ids/primary_state_ids_38.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_38.c rename to parser/static/primary_state_ids/primary_state_ids_38.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_39.c b/parser/static/primary_state_ids/primary_state_ids_39.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_39.c rename to parser/static/primary_state_ids/primary_state_ids_39.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_4.c b/parser/static/primary_state_ids/primary_state_ids_4.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_4.c rename to parser/static/primary_state_ids/primary_state_ids_4.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_40.c b/parser/static/primary_state_ids/primary_state_ids_40.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_40.c rename to parser/static/primary_state_ids/primary_state_ids_40.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_41.c b/parser/static/primary_state_ids/primary_state_ids_41.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_41.c rename to parser/static/primary_state_ids/primary_state_ids_41.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_42.c b/parser/static/primary_state_ids/primary_state_ids_42.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_42.c rename to parser/static/primary_state_ids/primary_state_ids_42.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_43.c b/parser/static/primary_state_ids/primary_state_ids_43.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_43.c rename to parser/static/primary_state_ids/primary_state_ids_43.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_44.c b/parser/static/primary_state_ids/primary_state_ids_44.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_44.c rename to parser/static/primary_state_ids/primary_state_ids_44.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_45.c b/parser/static/primary_state_ids/primary_state_ids_45.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_45.c rename to parser/static/primary_state_ids/primary_state_ids_45.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_46.c b/parser/static/primary_state_ids/primary_state_ids_46.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_46.c rename to parser/static/primary_state_ids/primary_state_ids_46.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_47.c b/parser/static/primary_state_ids/primary_state_ids_47.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_47.c rename to parser/static/primary_state_ids/primary_state_ids_47.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_48.c b/parser/static/primary_state_ids/primary_state_ids_48.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_48.c rename to parser/static/primary_state_ids/primary_state_ids_48.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_49.c b/parser/static/primary_state_ids/primary_state_ids_49.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_49.c rename to parser/static/primary_state_ids/primary_state_ids_49.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_5.c b/parser/static/primary_state_ids/primary_state_ids_5.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_5.c rename to parser/static/primary_state_ids/primary_state_ids_5.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_50.c b/parser/static/primary_state_ids/primary_state_ids_50.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_50.c rename to parser/static/primary_state_ids/primary_state_ids_50.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_51.c b/parser/static/primary_state_ids/primary_state_ids_51.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_51.c rename to parser/static/primary_state_ids/primary_state_ids_51.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_52.c b/parser/static/primary_state_ids/primary_state_ids_52.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_52.c rename to parser/static/primary_state_ids/primary_state_ids_52.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_53.c b/parser/static/primary_state_ids/primary_state_ids_53.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_53.c rename to parser/static/primary_state_ids/primary_state_ids_53.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_54.c b/parser/static/primary_state_ids/primary_state_ids_54.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_54.c rename to parser/static/primary_state_ids/primary_state_ids_54.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_55.c b/parser/static/primary_state_ids/primary_state_ids_55.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_55.c rename to parser/static/primary_state_ids/primary_state_ids_55.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_56.c b/parser/static/primary_state_ids/primary_state_ids_56.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_56.c rename to parser/static/primary_state_ids/primary_state_ids_56.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_57.c b/parser/static/primary_state_ids/primary_state_ids_57.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_57.c rename to parser/static/primary_state_ids/primary_state_ids_57.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_58.c b/parser/static/primary_state_ids/primary_state_ids_58.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_58.c rename to parser/static/primary_state_ids/primary_state_ids_58.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_59.c b/parser/static/primary_state_ids/primary_state_ids_59.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_59.c rename to parser/static/primary_state_ids/primary_state_ids_59.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_6.c b/parser/static/primary_state_ids/primary_state_ids_6.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_6.c rename to parser/static/primary_state_ids/primary_state_ids_6.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_60.c b/parser/static/primary_state_ids/primary_state_ids_60.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_60.c rename to parser/static/primary_state_ids/primary_state_ids_60.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_61.c b/parser/static/primary_state_ids/primary_state_ids_61.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_61.c rename to parser/static/primary_state_ids/primary_state_ids_61.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_62.c b/parser/static/primary_state_ids/primary_state_ids_62.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_62.c rename to parser/static/primary_state_ids/primary_state_ids_62.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_63.c b/parser/static/primary_state_ids/primary_state_ids_63.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_63.c rename to parser/static/primary_state_ids/primary_state_ids_63.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_64.c b/parser/static/primary_state_ids/primary_state_ids_64.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_64.c rename to parser/static/primary_state_ids/primary_state_ids_64.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_65.c b/parser/static/primary_state_ids/primary_state_ids_65.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_65.c rename to parser/static/primary_state_ids/primary_state_ids_65.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_66.c b/parser/static/primary_state_ids/primary_state_ids_66.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_66.c rename to parser/static/primary_state_ids/primary_state_ids_66.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_67.c b/parser/static/primary_state_ids/primary_state_ids_67.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_67.c rename to parser/static/primary_state_ids/primary_state_ids_67.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_68.c b/parser/static/primary_state_ids/primary_state_ids_68.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_68.c rename to parser/static/primary_state_ids/primary_state_ids_68.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_69.c b/parser/static/primary_state_ids/primary_state_ids_69.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_69.c rename to parser/static/primary_state_ids/primary_state_ids_69.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_7.c b/parser/static/primary_state_ids/primary_state_ids_7.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_7.c rename to parser/static/primary_state_ids/primary_state_ids_7.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_70.c b/parser/static/primary_state_ids/primary_state_ids_70.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_70.c rename to parser/static/primary_state_ids/primary_state_ids_70.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_71.c b/parser/static/primary_state_ids/primary_state_ids_71.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_71.c rename to parser/static/primary_state_ids/primary_state_ids_71.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_72.c b/parser/static/primary_state_ids/primary_state_ids_72.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_72.c rename to parser/static/primary_state_ids/primary_state_ids_72.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_73.c b/parser/static/primary_state_ids/primary_state_ids_73.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_73.c rename to parser/static/primary_state_ids/primary_state_ids_73.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_74.c b/parser/static/primary_state_ids/primary_state_ids_74.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_74.c rename to parser/static/primary_state_ids/primary_state_ids_74.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_75.c b/parser/static/primary_state_ids/primary_state_ids_75.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_75.c rename to parser/static/primary_state_ids/primary_state_ids_75.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_76.c b/parser/static/primary_state_ids/primary_state_ids_76.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_76.c rename to parser/static/primary_state_ids/primary_state_ids_76.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_8.c b/parser/static/primary_state_ids/primary_state_ids_8.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_8.c rename to parser/static/primary_state_ids/primary_state_ids_8.c diff --git a/shcat_c/parser/static/primary_state_ids/primary_state_ids_9.c b/parser/static/primary_state_ids/primary_state_ids_9.c similarity index 100% rename from shcat_c/parser/static/primary_state_ids/primary_state_ids_9.c rename to parser/static/primary_state_ids/primary_state_ids_9.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table.h b/parser/static/small_parse_table/small_parse_table.h similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table.h rename to parser/static/small_parse_table/small_parse_table.h diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_0.c b/parser/static/small_parse_table/small_parse_table_0.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_0.c rename to parser/static/small_parse_table/small_parse_table_0.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1.c b/parser/static/small_parse_table/small_parse_table_1.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1.c rename to parser/static/small_parse_table/small_parse_table_1.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_10.c b/parser/static/small_parse_table/small_parse_table_10.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_10.c rename to parser/static/small_parse_table/small_parse_table_10.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_100.c b/parser/static/small_parse_table/small_parse_table_100.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_100.c rename to parser/static/small_parse_table/small_parse_table_100.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1000.c b/parser/static/small_parse_table/small_parse_table_1000.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1000.c rename to parser/static/small_parse_table/small_parse_table_1000.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1001.c b/parser/static/small_parse_table/small_parse_table_1001.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1001.c rename to parser/static/small_parse_table/small_parse_table_1001.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1002.c b/parser/static/small_parse_table/small_parse_table_1002.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1002.c rename to parser/static/small_parse_table/small_parse_table_1002.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1003.c b/parser/static/small_parse_table/small_parse_table_1003.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1003.c rename to parser/static/small_parse_table/small_parse_table_1003.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1004.c b/parser/static/small_parse_table/small_parse_table_1004.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1004.c rename to parser/static/small_parse_table/small_parse_table_1004.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1005.c b/parser/static/small_parse_table/small_parse_table_1005.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1005.c rename to parser/static/small_parse_table/small_parse_table_1005.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1006.c b/parser/static/small_parse_table/small_parse_table_1006.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1006.c rename to parser/static/small_parse_table/small_parse_table_1006.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1007.c b/parser/static/small_parse_table/small_parse_table_1007.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1007.c rename to parser/static/small_parse_table/small_parse_table_1007.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1008.c b/parser/static/small_parse_table/small_parse_table_1008.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1008.c rename to parser/static/small_parse_table/small_parse_table_1008.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1009.c b/parser/static/small_parse_table/small_parse_table_1009.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1009.c rename to parser/static/small_parse_table/small_parse_table_1009.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_101.c b/parser/static/small_parse_table/small_parse_table_101.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_101.c rename to parser/static/small_parse_table/small_parse_table_101.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1010.c b/parser/static/small_parse_table/small_parse_table_1010.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1010.c rename to parser/static/small_parse_table/small_parse_table_1010.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1011.c b/parser/static/small_parse_table/small_parse_table_1011.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1011.c rename to parser/static/small_parse_table/small_parse_table_1011.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1012.c b/parser/static/small_parse_table/small_parse_table_1012.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1012.c rename to parser/static/small_parse_table/small_parse_table_1012.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1013.c b/parser/static/small_parse_table/small_parse_table_1013.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1013.c rename to parser/static/small_parse_table/small_parse_table_1013.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1014.c b/parser/static/small_parse_table/small_parse_table_1014.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1014.c rename to parser/static/small_parse_table/small_parse_table_1014.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1015.c b/parser/static/small_parse_table/small_parse_table_1015.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1015.c rename to parser/static/small_parse_table/small_parse_table_1015.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1016.c b/parser/static/small_parse_table/small_parse_table_1016.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1016.c rename to parser/static/small_parse_table/small_parse_table_1016.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1017.c b/parser/static/small_parse_table/small_parse_table_1017.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1017.c rename to parser/static/small_parse_table/small_parse_table_1017.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1018.c b/parser/static/small_parse_table/small_parse_table_1018.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1018.c rename to parser/static/small_parse_table/small_parse_table_1018.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1019.c b/parser/static/small_parse_table/small_parse_table_1019.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1019.c rename to parser/static/small_parse_table/small_parse_table_1019.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_102.c b/parser/static/small_parse_table/small_parse_table_102.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_102.c rename to parser/static/small_parse_table/small_parse_table_102.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1020.c b/parser/static/small_parse_table/small_parse_table_1020.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1020.c rename to parser/static/small_parse_table/small_parse_table_1020.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1021.c b/parser/static/small_parse_table/small_parse_table_1021.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1021.c rename to parser/static/small_parse_table/small_parse_table_1021.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1022.c b/parser/static/small_parse_table/small_parse_table_1022.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1022.c rename to parser/static/small_parse_table/small_parse_table_1022.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1023.c b/parser/static/small_parse_table/small_parse_table_1023.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1023.c rename to parser/static/small_parse_table/small_parse_table_1023.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1024.c b/parser/static/small_parse_table/small_parse_table_1024.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1024.c rename to parser/static/small_parse_table/small_parse_table_1024.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1025.c b/parser/static/small_parse_table/small_parse_table_1025.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1025.c rename to parser/static/small_parse_table/small_parse_table_1025.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1026.c b/parser/static/small_parse_table/small_parse_table_1026.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1026.c rename to parser/static/small_parse_table/small_parse_table_1026.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1027.c b/parser/static/small_parse_table/small_parse_table_1027.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1027.c rename to parser/static/small_parse_table/small_parse_table_1027.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1028.c b/parser/static/small_parse_table/small_parse_table_1028.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1028.c rename to parser/static/small_parse_table/small_parse_table_1028.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1029.c b/parser/static/small_parse_table/small_parse_table_1029.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1029.c rename to parser/static/small_parse_table/small_parse_table_1029.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_103.c b/parser/static/small_parse_table/small_parse_table_103.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_103.c rename to parser/static/small_parse_table/small_parse_table_103.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1030.c b/parser/static/small_parse_table/small_parse_table_1030.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1030.c rename to parser/static/small_parse_table/small_parse_table_1030.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1031.c b/parser/static/small_parse_table/small_parse_table_1031.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1031.c rename to parser/static/small_parse_table/small_parse_table_1031.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1032.c b/parser/static/small_parse_table/small_parse_table_1032.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1032.c rename to parser/static/small_parse_table/small_parse_table_1032.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1033.c b/parser/static/small_parse_table/small_parse_table_1033.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1033.c rename to parser/static/small_parse_table/small_parse_table_1033.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1034.c b/parser/static/small_parse_table/small_parse_table_1034.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1034.c rename to parser/static/small_parse_table/small_parse_table_1034.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1035.c b/parser/static/small_parse_table/small_parse_table_1035.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1035.c rename to parser/static/small_parse_table/small_parse_table_1035.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1036.c b/parser/static/small_parse_table/small_parse_table_1036.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1036.c rename to parser/static/small_parse_table/small_parse_table_1036.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1037.c b/parser/static/small_parse_table/small_parse_table_1037.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1037.c rename to parser/static/small_parse_table/small_parse_table_1037.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1038.c b/parser/static/small_parse_table/small_parse_table_1038.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1038.c rename to parser/static/small_parse_table/small_parse_table_1038.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1039.c b/parser/static/small_parse_table/small_parse_table_1039.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1039.c rename to parser/static/small_parse_table/small_parse_table_1039.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_104.c b/parser/static/small_parse_table/small_parse_table_104.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_104.c rename to parser/static/small_parse_table/small_parse_table_104.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1040.c b/parser/static/small_parse_table/small_parse_table_1040.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1040.c rename to parser/static/small_parse_table/small_parse_table_1040.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1041.c b/parser/static/small_parse_table/small_parse_table_1041.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1041.c rename to parser/static/small_parse_table/small_parse_table_1041.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1042.c b/parser/static/small_parse_table/small_parse_table_1042.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1042.c rename to parser/static/small_parse_table/small_parse_table_1042.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1043.c b/parser/static/small_parse_table/small_parse_table_1043.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1043.c rename to parser/static/small_parse_table/small_parse_table_1043.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1044.c b/parser/static/small_parse_table/small_parse_table_1044.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1044.c rename to parser/static/small_parse_table/small_parse_table_1044.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1045.c b/parser/static/small_parse_table/small_parse_table_1045.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1045.c rename to parser/static/small_parse_table/small_parse_table_1045.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1046.c b/parser/static/small_parse_table/small_parse_table_1046.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1046.c rename to parser/static/small_parse_table/small_parse_table_1046.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1047.c b/parser/static/small_parse_table/small_parse_table_1047.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1047.c rename to parser/static/small_parse_table/small_parse_table_1047.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1048.c b/parser/static/small_parse_table/small_parse_table_1048.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1048.c rename to parser/static/small_parse_table/small_parse_table_1048.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1049.c b/parser/static/small_parse_table/small_parse_table_1049.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1049.c rename to parser/static/small_parse_table/small_parse_table_1049.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_105.c b/parser/static/small_parse_table/small_parse_table_105.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_105.c rename to parser/static/small_parse_table/small_parse_table_105.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1050.c b/parser/static/small_parse_table/small_parse_table_1050.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1050.c rename to parser/static/small_parse_table/small_parse_table_1050.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1051.c b/parser/static/small_parse_table/small_parse_table_1051.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1051.c rename to parser/static/small_parse_table/small_parse_table_1051.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1052.c b/parser/static/small_parse_table/small_parse_table_1052.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1052.c rename to parser/static/small_parse_table/small_parse_table_1052.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1053.c b/parser/static/small_parse_table/small_parse_table_1053.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1053.c rename to parser/static/small_parse_table/small_parse_table_1053.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1054.c b/parser/static/small_parse_table/small_parse_table_1054.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1054.c rename to parser/static/small_parse_table/small_parse_table_1054.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1055.c b/parser/static/small_parse_table/small_parse_table_1055.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1055.c rename to parser/static/small_parse_table/small_parse_table_1055.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1056.c b/parser/static/small_parse_table/small_parse_table_1056.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1056.c rename to parser/static/small_parse_table/small_parse_table_1056.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1057.c b/parser/static/small_parse_table/small_parse_table_1057.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1057.c rename to parser/static/small_parse_table/small_parse_table_1057.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1058.c b/parser/static/small_parse_table/small_parse_table_1058.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1058.c rename to parser/static/small_parse_table/small_parse_table_1058.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1059.c b/parser/static/small_parse_table/small_parse_table_1059.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1059.c rename to parser/static/small_parse_table/small_parse_table_1059.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_106.c b/parser/static/small_parse_table/small_parse_table_106.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_106.c rename to parser/static/small_parse_table/small_parse_table_106.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1060.c b/parser/static/small_parse_table/small_parse_table_1060.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1060.c rename to parser/static/small_parse_table/small_parse_table_1060.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1061.c b/parser/static/small_parse_table/small_parse_table_1061.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1061.c rename to parser/static/small_parse_table/small_parse_table_1061.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1062.c b/parser/static/small_parse_table/small_parse_table_1062.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1062.c rename to parser/static/small_parse_table/small_parse_table_1062.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1063.c b/parser/static/small_parse_table/small_parse_table_1063.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1063.c rename to parser/static/small_parse_table/small_parse_table_1063.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1064.c b/parser/static/small_parse_table/small_parse_table_1064.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1064.c rename to parser/static/small_parse_table/small_parse_table_1064.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1065.c b/parser/static/small_parse_table/small_parse_table_1065.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1065.c rename to parser/static/small_parse_table/small_parse_table_1065.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1066.c b/parser/static/small_parse_table/small_parse_table_1066.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1066.c rename to parser/static/small_parse_table/small_parse_table_1066.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1067.c b/parser/static/small_parse_table/small_parse_table_1067.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1067.c rename to parser/static/small_parse_table/small_parse_table_1067.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1068.c b/parser/static/small_parse_table/small_parse_table_1068.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1068.c rename to parser/static/small_parse_table/small_parse_table_1068.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1069.c b/parser/static/small_parse_table/small_parse_table_1069.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1069.c rename to parser/static/small_parse_table/small_parse_table_1069.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_107.c b/parser/static/small_parse_table/small_parse_table_107.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_107.c rename to parser/static/small_parse_table/small_parse_table_107.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1070.c b/parser/static/small_parse_table/small_parse_table_1070.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1070.c rename to parser/static/small_parse_table/small_parse_table_1070.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1071.c b/parser/static/small_parse_table/small_parse_table_1071.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1071.c rename to parser/static/small_parse_table/small_parse_table_1071.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1072.c b/parser/static/small_parse_table/small_parse_table_1072.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1072.c rename to parser/static/small_parse_table/small_parse_table_1072.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1073.c b/parser/static/small_parse_table/small_parse_table_1073.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1073.c rename to parser/static/small_parse_table/small_parse_table_1073.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1074.c b/parser/static/small_parse_table/small_parse_table_1074.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1074.c rename to parser/static/small_parse_table/small_parse_table_1074.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1075.c b/parser/static/small_parse_table/small_parse_table_1075.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1075.c rename to parser/static/small_parse_table/small_parse_table_1075.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1076.c b/parser/static/small_parse_table/small_parse_table_1076.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1076.c rename to parser/static/small_parse_table/small_parse_table_1076.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1077.c b/parser/static/small_parse_table/small_parse_table_1077.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1077.c rename to parser/static/small_parse_table/small_parse_table_1077.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1078.c b/parser/static/small_parse_table/small_parse_table_1078.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1078.c rename to parser/static/small_parse_table/small_parse_table_1078.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1079.c b/parser/static/small_parse_table/small_parse_table_1079.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1079.c rename to parser/static/small_parse_table/small_parse_table_1079.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_108.c b/parser/static/small_parse_table/small_parse_table_108.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_108.c rename to parser/static/small_parse_table/small_parse_table_108.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1080.c b/parser/static/small_parse_table/small_parse_table_1080.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1080.c rename to parser/static/small_parse_table/small_parse_table_1080.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1081.c b/parser/static/small_parse_table/small_parse_table_1081.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1081.c rename to parser/static/small_parse_table/small_parse_table_1081.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1082.c b/parser/static/small_parse_table/small_parse_table_1082.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1082.c rename to parser/static/small_parse_table/small_parse_table_1082.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1083.c b/parser/static/small_parse_table/small_parse_table_1083.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1083.c rename to parser/static/small_parse_table/small_parse_table_1083.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1084.c b/parser/static/small_parse_table/small_parse_table_1084.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1084.c rename to parser/static/small_parse_table/small_parse_table_1084.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1085.c b/parser/static/small_parse_table/small_parse_table_1085.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1085.c rename to parser/static/small_parse_table/small_parse_table_1085.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1086.c b/parser/static/small_parse_table/small_parse_table_1086.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1086.c rename to parser/static/small_parse_table/small_parse_table_1086.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1087.c b/parser/static/small_parse_table/small_parse_table_1087.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1087.c rename to parser/static/small_parse_table/small_parse_table_1087.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1088.c b/parser/static/small_parse_table/small_parse_table_1088.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1088.c rename to parser/static/small_parse_table/small_parse_table_1088.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1089.c b/parser/static/small_parse_table/small_parse_table_1089.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1089.c rename to parser/static/small_parse_table/small_parse_table_1089.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_109.c b/parser/static/small_parse_table/small_parse_table_109.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_109.c rename to parser/static/small_parse_table/small_parse_table_109.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1090.c b/parser/static/small_parse_table/small_parse_table_1090.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1090.c rename to parser/static/small_parse_table/small_parse_table_1090.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1091.c b/parser/static/small_parse_table/small_parse_table_1091.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1091.c rename to parser/static/small_parse_table/small_parse_table_1091.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1092.c b/parser/static/small_parse_table/small_parse_table_1092.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1092.c rename to parser/static/small_parse_table/small_parse_table_1092.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1093.c b/parser/static/small_parse_table/small_parse_table_1093.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1093.c rename to parser/static/small_parse_table/small_parse_table_1093.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1094.c b/parser/static/small_parse_table/small_parse_table_1094.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1094.c rename to parser/static/small_parse_table/small_parse_table_1094.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1095.c b/parser/static/small_parse_table/small_parse_table_1095.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1095.c rename to parser/static/small_parse_table/small_parse_table_1095.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1096.c b/parser/static/small_parse_table/small_parse_table_1096.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1096.c rename to parser/static/small_parse_table/small_parse_table_1096.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1097.c b/parser/static/small_parse_table/small_parse_table_1097.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1097.c rename to parser/static/small_parse_table/small_parse_table_1097.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1098.c b/parser/static/small_parse_table/small_parse_table_1098.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1098.c rename to parser/static/small_parse_table/small_parse_table_1098.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1099.c b/parser/static/small_parse_table/small_parse_table_1099.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1099.c rename to parser/static/small_parse_table/small_parse_table_1099.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_11.c b/parser/static/small_parse_table/small_parse_table_11.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_11.c rename to parser/static/small_parse_table/small_parse_table_11.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_110.c b/parser/static/small_parse_table/small_parse_table_110.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_110.c rename to parser/static/small_parse_table/small_parse_table_110.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1100.c b/parser/static/small_parse_table/small_parse_table_1100.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1100.c rename to parser/static/small_parse_table/small_parse_table_1100.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1101.c b/parser/static/small_parse_table/small_parse_table_1101.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1101.c rename to parser/static/small_parse_table/small_parse_table_1101.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1102.c b/parser/static/small_parse_table/small_parse_table_1102.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1102.c rename to parser/static/small_parse_table/small_parse_table_1102.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1103.c b/parser/static/small_parse_table/small_parse_table_1103.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1103.c rename to parser/static/small_parse_table/small_parse_table_1103.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1104.c b/parser/static/small_parse_table/small_parse_table_1104.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1104.c rename to parser/static/small_parse_table/small_parse_table_1104.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1105.c b/parser/static/small_parse_table/small_parse_table_1105.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1105.c rename to parser/static/small_parse_table/small_parse_table_1105.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1106.c b/parser/static/small_parse_table/small_parse_table_1106.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1106.c rename to parser/static/small_parse_table/small_parse_table_1106.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1107.c b/parser/static/small_parse_table/small_parse_table_1107.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1107.c rename to parser/static/small_parse_table/small_parse_table_1107.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1108.c b/parser/static/small_parse_table/small_parse_table_1108.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1108.c rename to parser/static/small_parse_table/small_parse_table_1108.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1109.c b/parser/static/small_parse_table/small_parse_table_1109.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1109.c rename to parser/static/small_parse_table/small_parse_table_1109.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_111.c b/parser/static/small_parse_table/small_parse_table_111.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_111.c rename to parser/static/small_parse_table/small_parse_table_111.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1110.c b/parser/static/small_parse_table/small_parse_table_1110.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1110.c rename to parser/static/small_parse_table/small_parse_table_1110.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1111.c b/parser/static/small_parse_table/small_parse_table_1111.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1111.c rename to parser/static/small_parse_table/small_parse_table_1111.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1112.c b/parser/static/small_parse_table/small_parse_table_1112.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1112.c rename to parser/static/small_parse_table/small_parse_table_1112.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1113.c b/parser/static/small_parse_table/small_parse_table_1113.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1113.c rename to parser/static/small_parse_table/small_parse_table_1113.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1114.c b/parser/static/small_parse_table/small_parse_table_1114.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1114.c rename to parser/static/small_parse_table/small_parse_table_1114.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1115.c b/parser/static/small_parse_table/small_parse_table_1115.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1115.c rename to parser/static/small_parse_table/small_parse_table_1115.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1116.c b/parser/static/small_parse_table/small_parse_table_1116.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1116.c rename to parser/static/small_parse_table/small_parse_table_1116.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1117.c b/parser/static/small_parse_table/small_parse_table_1117.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1117.c rename to parser/static/small_parse_table/small_parse_table_1117.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1118.c b/parser/static/small_parse_table/small_parse_table_1118.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1118.c rename to parser/static/small_parse_table/small_parse_table_1118.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1119.c b/parser/static/small_parse_table/small_parse_table_1119.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1119.c rename to parser/static/small_parse_table/small_parse_table_1119.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_112.c b/parser/static/small_parse_table/small_parse_table_112.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_112.c rename to parser/static/small_parse_table/small_parse_table_112.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1120.c b/parser/static/small_parse_table/small_parse_table_1120.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1120.c rename to parser/static/small_parse_table/small_parse_table_1120.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1121.c b/parser/static/small_parse_table/small_parse_table_1121.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1121.c rename to parser/static/small_parse_table/small_parse_table_1121.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1122.c b/parser/static/small_parse_table/small_parse_table_1122.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1122.c rename to parser/static/small_parse_table/small_parse_table_1122.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1123.c b/parser/static/small_parse_table/small_parse_table_1123.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1123.c rename to parser/static/small_parse_table/small_parse_table_1123.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1124.c b/parser/static/small_parse_table/small_parse_table_1124.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1124.c rename to parser/static/small_parse_table/small_parse_table_1124.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1125.c b/parser/static/small_parse_table/small_parse_table_1125.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1125.c rename to parser/static/small_parse_table/small_parse_table_1125.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1126.c b/parser/static/small_parse_table/small_parse_table_1126.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1126.c rename to parser/static/small_parse_table/small_parse_table_1126.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1127.c b/parser/static/small_parse_table/small_parse_table_1127.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1127.c rename to parser/static/small_parse_table/small_parse_table_1127.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1128.c b/parser/static/small_parse_table/small_parse_table_1128.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1128.c rename to parser/static/small_parse_table/small_parse_table_1128.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1129.c b/parser/static/small_parse_table/small_parse_table_1129.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1129.c rename to parser/static/small_parse_table/small_parse_table_1129.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_113.c b/parser/static/small_parse_table/small_parse_table_113.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_113.c rename to parser/static/small_parse_table/small_parse_table_113.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1130.c b/parser/static/small_parse_table/small_parse_table_1130.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1130.c rename to parser/static/small_parse_table/small_parse_table_1130.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1131.c b/parser/static/small_parse_table/small_parse_table_1131.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1131.c rename to parser/static/small_parse_table/small_parse_table_1131.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1132.c b/parser/static/small_parse_table/small_parse_table_1132.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1132.c rename to parser/static/small_parse_table/small_parse_table_1132.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1133.c b/parser/static/small_parse_table/small_parse_table_1133.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1133.c rename to parser/static/small_parse_table/small_parse_table_1133.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1134.c b/parser/static/small_parse_table/small_parse_table_1134.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1134.c rename to parser/static/small_parse_table/small_parse_table_1134.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1135.c b/parser/static/small_parse_table/small_parse_table_1135.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1135.c rename to parser/static/small_parse_table/small_parse_table_1135.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1136.c b/parser/static/small_parse_table/small_parse_table_1136.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1136.c rename to parser/static/small_parse_table/small_parse_table_1136.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1137.c b/parser/static/small_parse_table/small_parse_table_1137.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1137.c rename to parser/static/small_parse_table/small_parse_table_1137.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1138.c b/parser/static/small_parse_table/small_parse_table_1138.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1138.c rename to parser/static/small_parse_table/small_parse_table_1138.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1139.c b/parser/static/small_parse_table/small_parse_table_1139.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1139.c rename to parser/static/small_parse_table/small_parse_table_1139.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_114.c b/parser/static/small_parse_table/small_parse_table_114.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_114.c rename to parser/static/small_parse_table/small_parse_table_114.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1140.c b/parser/static/small_parse_table/small_parse_table_1140.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1140.c rename to parser/static/small_parse_table/small_parse_table_1140.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1141.c b/parser/static/small_parse_table/small_parse_table_1141.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1141.c rename to parser/static/small_parse_table/small_parse_table_1141.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1142.c b/parser/static/small_parse_table/small_parse_table_1142.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1142.c rename to parser/static/small_parse_table/small_parse_table_1142.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1143.c b/parser/static/small_parse_table/small_parse_table_1143.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1143.c rename to parser/static/small_parse_table/small_parse_table_1143.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1144.c b/parser/static/small_parse_table/small_parse_table_1144.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1144.c rename to parser/static/small_parse_table/small_parse_table_1144.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1145.c b/parser/static/small_parse_table/small_parse_table_1145.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1145.c rename to parser/static/small_parse_table/small_parse_table_1145.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1146.c b/parser/static/small_parse_table/small_parse_table_1146.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1146.c rename to parser/static/small_parse_table/small_parse_table_1146.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1147.c b/parser/static/small_parse_table/small_parse_table_1147.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1147.c rename to parser/static/small_parse_table/small_parse_table_1147.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1148.c b/parser/static/small_parse_table/small_parse_table_1148.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1148.c rename to parser/static/small_parse_table/small_parse_table_1148.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1149.c b/parser/static/small_parse_table/small_parse_table_1149.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1149.c rename to parser/static/small_parse_table/small_parse_table_1149.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_115.c b/parser/static/small_parse_table/small_parse_table_115.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_115.c rename to parser/static/small_parse_table/small_parse_table_115.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1150.c b/parser/static/small_parse_table/small_parse_table_1150.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1150.c rename to parser/static/small_parse_table/small_parse_table_1150.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1151.c b/parser/static/small_parse_table/small_parse_table_1151.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1151.c rename to parser/static/small_parse_table/small_parse_table_1151.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1152.c b/parser/static/small_parse_table/small_parse_table_1152.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1152.c rename to parser/static/small_parse_table/small_parse_table_1152.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1153.c b/parser/static/small_parse_table/small_parse_table_1153.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1153.c rename to parser/static/small_parse_table/small_parse_table_1153.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1154.c b/parser/static/small_parse_table/small_parse_table_1154.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1154.c rename to parser/static/small_parse_table/small_parse_table_1154.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1155.c b/parser/static/small_parse_table/small_parse_table_1155.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1155.c rename to parser/static/small_parse_table/small_parse_table_1155.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1156.c b/parser/static/small_parse_table/small_parse_table_1156.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1156.c rename to parser/static/small_parse_table/small_parse_table_1156.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1157.c b/parser/static/small_parse_table/small_parse_table_1157.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1157.c rename to parser/static/small_parse_table/small_parse_table_1157.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1158.c b/parser/static/small_parse_table/small_parse_table_1158.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1158.c rename to parser/static/small_parse_table/small_parse_table_1158.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1159.c b/parser/static/small_parse_table/small_parse_table_1159.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1159.c rename to parser/static/small_parse_table/small_parse_table_1159.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_116.c b/parser/static/small_parse_table/small_parse_table_116.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_116.c rename to parser/static/small_parse_table/small_parse_table_116.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1160.c b/parser/static/small_parse_table/small_parse_table_1160.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1160.c rename to parser/static/small_parse_table/small_parse_table_1160.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1161.c b/parser/static/small_parse_table/small_parse_table_1161.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1161.c rename to parser/static/small_parse_table/small_parse_table_1161.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1162.c b/parser/static/small_parse_table/small_parse_table_1162.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1162.c rename to parser/static/small_parse_table/small_parse_table_1162.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1163.c b/parser/static/small_parse_table/small_parse_table_1163.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1163.c rename to parser/static/small_parse_table/small_parse_table_1163.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1164.c b/parser/static/small_parse_table/small_parse_table_1164.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1164.c rename to parser/static/small_parse_table/small_parse_table_1164.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1165.c b/parser/static/small_parse_table/small_parse_table_1165.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1165.c rename to parser/static/small_parse_table/small_parse_table_1165.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1166.c b/parser/static/small_parse_table/small_parse_table_1166.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1166.c rename to parser/static/small_parse_table/small_parse_table_1166.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1167.c b/parser/static/small_parse_table/small_parse_table_1167.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1167.c rename to parser/static/small_parse_table/small_parse_table_1167.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1168.c b/parser/static/small_parse_table/small_parse_table_1168.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1168.c rename to parser/static/small_parse_table/small_parse_table_1168.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1169.c b/parser/static/small_parse_table/small_parse_table_1169.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1169.c rename to parser/static/small_parse_table/small_parse_table_1169.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_117.c b/parser/static/small_parse_table/small_parse_table_117.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_117.c rename to parser/static/small_parse_table/small_parse_table_117.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1170.c b/parser/static/small_parse_table/small_parse_table_1170.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1170.c rename to parser/static/small_parse_table/small_parse_table_1170.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1171.c b/parser/static/small_parse_table/small_parse_table_1171.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1171.c rename to parser/static/small_parse_table/small_parse_table_1171.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1172.c b/parser/static/small_parse_table/small_parse_table_1172.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1172.c rename to parser/static/small_parse_table/small_parse_table_1172.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1173.c b/parser/static/small_parse_table/small_parse_table_1173.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1173.c rename to parser/static/small_parse_table/small_parse_table_1173.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1174.c b/parser/static/small_parse_table/small_parse_table_1174.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1174.c rename to parser/static/small_parse_table/small_parse_table_1174.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1175.c b/parser/static/small_parse_table/small_parse_table_1175.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1175.c rename to parser/static/small_parse_table/small_parse_table_1175.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1176.c b/parser/static/small_parse_table/small_parse_table_1176.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1176.c rename to parser/static/small_parse_table/small_parse_table_1176.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1177.c b/parser/static/small_parse_table/small_parse_table_1177.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1177.c rename to parser/static/small_parse_table/small_parse_table_1177.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1178.c b/parser/static/small_parse_table/small_parse_table_1178.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1178.c rename to parser/static/small_parse_table/small_parse_table_1178.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1179.c b/parser/static/small_parse_table/small_parse_table_1179.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1179.c rename to parser/static/small_parse_table/small_parse_table_1179.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_118.c b/parser/static/small_parse_table/small_parse_table_118.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_118.c rename to parser/static/small_parse_table/small_parse_table_118.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1180.c b/parser/static/small_parse_table/small_parse_table_1180.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1180.c rename to parser/static/small_parse_table/small_parse_table_1180.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1181.c b/parser/static/small_parse_table/small_parse_table_1181.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1181.c rename to parser/static/small_parse_table/small_parse_table_1181.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1182.c b/parser/static/small_parse_table/small_parse_table_1182.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1182.c rename to parser/static/small_parse_table/small_parse_table_1182.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1183.c b/parser/static/small_parse_table/small_parse_table_1183.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1183.c rename to parser/static/small_parse_table/small_parse_table_1183.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1184.c b/parser/static/small_parse_table/small_parse_table_1184.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1184.c rename to parser/static/small_parse_table/small_parse_table_1184.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1185.c b/parser/static/small_parse_table/small_parse_table_1185.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1185.c rename to parser/static/small_parse_table/small_parse_table_1185.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1186.c b/parser/static/small_parse_table/small_parse_table_1186.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1186.c rename to parser/static/small_parse_table/small_parse_table_1186.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1187.c b/parser/static/small_parse_table/small_parse_table_1187.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1187.c rename to parser/static/small_parse_table/small_parse_table_1187.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1188.c b/parser/static/small_parse_table/small_parse_table_1188.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1188.c rename to parser/static/small_parse_table/small_parse_table_1188.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1189.c b/parser/static/small_parse_table/small_parse_table_1189.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1189.c rename to parser/static/small_parse_table/small_parse_table_1189.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_119.c b/parser/static/small_parse_table/small_parse_table_119.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_119.c rename to parser/static/small_parse_table/small_parse_table_119.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1190.c b/parser/static/small_parse_table/small_parse_table_1190.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1190.c rename to parser/static/small_parse_table/small_parse_table_1190.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1191.c b/parser/static/small_parse_table/small_parse_table_1191.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1191.c rename to parser/static/small_parse_table/small_parse_table_1191.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1192.c b/parser/static/small_parse_table/small_parse_table_1192.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1192.c rename to parser/static/small_parse_table/small_parse_table_1192.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1193.c b/parser/static/small_parse_table/small_parse_table_1193.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1193.c rename to parser/static/small_parse_table/small_parse_table_1193.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1194.c b/parser/static/small_parse_table/small_parse_table_1194.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1194.c rename to parser/static/small_parse_table/small_parse_table_1194.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1195.c b/parser/static/small_parse_table/small_parse_table_1195.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1195.c rename to parser/static/small_parse_table/small_parse_table_1195.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1196.c b/parser/static/small_parse_table/small_parse_table_1196.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1196.c rename to parser/static/small_parse_table/small_parse_table_1196.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1197.c b/parser/static/small_parse_table/small_parse_table_1197.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1197.c rename to parser/static/small_parse_table/small_parse_table_1197.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1198.c b/parser/static/small_parse_table/small_parse_table_1198.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1198.c rename to parser/static/small_parse_table/small_parse_table_1198.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1199.c b/parser/static/small_parse_table/small_parse_table_1199.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1199.c rename to parser/static/small_parse_table/small_parse_table_1199.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_12.c b/parser/static/small_parse_table/small_parse_table_12.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_12.c rename to parser/static/small_parse_table/small_parse_table_12.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_120.c b/parser/static/small_parse_table/small_parse_table_120.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_120.c rename to parser/static/small_parse_table/small_parse_table_120.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1200.c b/parser/static/small_parse_table/small_parse_table_1200.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1200.c rename to parser/static/small_parse_table/small_parse_table_1200.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1201.c b/parser/static/small_parse_table/small_parse_table_1201.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1201.c rename to parser/static/small_parse_table/small_parse_table_1201.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1202.c b/parser/static/small_parse_table/small_parse_table_1202.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1202.c rename to parser/static/small_parse_table/small_parse_table_1202.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1203.c b/parser/static/small_parse_table/small_parse_table_1203.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1203.c rename to parser/static/small_parse_table/small_parse_table_1203.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1204.c b/parser/static/small_parse_table/small_parse_table_1204.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1204.c rename to parser/static/small_parse_table/small_parse_table_1204.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1205.c b/parser/static/small_parse_table/small_parse_table_1205.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1205.c rename to parser/static/small_parse_table/small_parse_table_1205.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1206.c b/parser/static/small_parse_table/small_parse_table_1206.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1206.c rename to parser/static/small_parse_table/small_parse_table_1206.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1207.c b/parser/static/small_parse_table/small_parse_table_1207.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1207.c rename to parser/static/small_parse_table/small_parse_table_1207.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1208.c b/parser/static/small_parse_table/small_parse_table_1208.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1208.c rename to parser/static/small_parse_table/small_parse_table_1208.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1209.c b/parser/static/small_parse_table/small_parse_table_1209.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1209.c rename to parser/static/small_parse_table/small_parse_table_1209.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_121.c b/parser/static/small_parse_table/small_parse_table_121.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_121.c rename to parser/static/small_parse_table/small_parse_table_121.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1210.c b/parser/static/small_parse_table/small_parse_table_1210.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1210.c rename to parser/static/small_parse_table/small_parse_table_1210.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1211.c b/parser/static/small_parse_table/small_parse_table_1211.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1211.c rename to parser/static/small_parse_table/small_parse_table_1211.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1212.c b/parser/static/small_parse_table/small_parse_table_1212.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1212.c rename to parser/static/small_parse_table/small_parse_table_1212.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1213.c b/parser/static/small_parse_table/small_parse_table_1213.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1213.c rename to parser/static/small_parse_table/small_parse_table_1213.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1214.c b/parser/static/small_parse_table/small_parse_table_1214.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1214.c rename to parser/static/small_parse_table/small_parse_table_1214.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1215.c b/parser/static/small_parse_table/small_parse_table_1215.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1215.c rename to parser/static/small_parse_table/small_parse_table_1215.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1216.c b/parser/static/small_parse_table/small_parse_table_1216.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1216.c rename to parser/static/small_parse_table/small_parse_table_1216.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1217.c b/parser/static/small_parse_table/small_parse_table_1217.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1217.c rename to parser/static/small_parse_table/small_parse_table_1217.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1218.c b/parser/static/small_parse_table/small_parse_table_1218.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1218.c rename to parser/static/small_parse_table/small_parse_table_1218.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1219.c b/parser/static/small_parse_table/small_parse_table_1219.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1219.c rename to parser/static/small_parse_table/small_parse_table_1219.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_122.c b/parser/static/small_parse_table/small_parse_table_122.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_122.c rename to parser/static/small_parse_table/small_parse_table_122.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1220.c b/parser/static/small_parse_table/small_parse_table_1220.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1220.c rename to parser/static/small_parse_table/small_parse_table_1220.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1221.c b/parser/static/small_parse_table/small_parse_table_1221.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1221.c rename to parser/static/small_parse_table/small_parse_table_1221.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1222.c b/parser/static/small_parse_table/small_parse_table_1222.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1222.c rename to parser/static/small_parse_table/small_parse_table_1222.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1223.c b/parser/static/small_parse_table/small_parse_table_1223.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1223.c rename to parser/static/small_parse_table/small_parse_table_1223.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1224.c b/parser/static/small_parse_table/small_parse_table_1224.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1224.c rename to parser/static/small_parse_table/small_parse_table_1224.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1225.c b/parser/static/small_parse_table/small_parse_table_1225.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1225.c rename to parser/static/small_parse_table/small_parse_table_1225.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1226.c b/parser/static/small_parse_table/small_parse_table_1226.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1226.c rename to parser/static/small_parse_table/small_parse_table_1226.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1227.c b/parser/static/small_parse_table/small_parse_table_1227.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1227.c rename to parser/static/small_parse_table/small_parse_table_1227.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1228.c b/parser/static/small_parse_table/small_parse_table_1228.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1228.c rename to parser/static/small_parse_table/small_parse_table_1228.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1229.c b/parser/static/small_parse_table/small_parse_table_1229.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1229.c rename to parser/static/small_parse_table/small_parse_table_1229.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_123.c b/parser/static/small_parse_table/small_parse_table_123.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_123.c rename to parser/static/small_parse_table/small_parse_table_123.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1230.c b/parser/static/small_parse_table/small_parse_table_1230.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1230.c rename to parser/static/small_parse_table/small_parse_table_1230.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1231.c b/parser/static/small_parse_table/small_parse_table_1231.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1231.c rename to parser/static/small_parse_table/small_parse_table_1231.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1232.c b/parser/static/small_parse_table/small_parse_table_1232.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1232.c rename to parser/static/small_parse_table/small_parse_table_1232.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1233.c b/parser/static/small_parse_table/small_parse_table_1233.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1233.c rename to parser/static/small_parse_table/small_parse_table_1233.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1234.c b/parser/static/small_parse_table/small_parse_table_1234.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1234.c rename to parser/static/small_parse_table/small_parse_table_1234.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1235.c b/parser/static/small_parse_table/small_parse_table_1235.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1235.c rename to parser/static/small_parse_table/small_parse_table_1235.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1236.c b/parser/static/small_parse_table/small_parse_table_1236.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1236.c rename to parser/static/small_parse_table/small_parse_table_1236.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1237.c b/parser/static/small_parse_table/small_parse_table_1237.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1237.c rename to parser/static/small_parse_table/small_parse_table_1237.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1238.c b/parser/static/small_parse_table/small_parse_table_1238.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1238.c rename to parser/static/small_parse_table/small_parse_table_1238.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1239.c b/parser/static/small_parse_table/small_parse_table_1239.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1239.c rename to parser/static/small_parse_table/small_parse_table_1239.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_124.c b/parser/static/small_parse_table/small_parse_table_124.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_124.c rename to parser/static/small_parse_table/small_parse_table_124.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1240.c b/parser/static/small_parse_table/small_parse_table_1240.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1240.c rename to parser/static/small_parse_table/small_parse_table_1240.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1241.c b/parser/static/small_parse_table/small_parse_table_1241.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1241.c rename to parser/static/small_parse_table/small_parse_table_1241.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1242.c b/parser/static/small_parse_table/small_parse_table_1242.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1242.c rename to parser/static/small_parse_table/small_parse_table_1242.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1243.c b/parser/static/small_parse_table/small_parse_table_1243.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1243.c rename to parser/static/small_parse_table/small_parse_table_1243.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1244.c b/parser/static/small_parse_table/small_parse_table_1244.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1244.c rename to parser/static/small_parse_table/small_parse_table_1244.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1245.c b/parser/static/small_parse_table/small_parse_table_1245.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1245.c rename to parser/static/small_parse_table/small_parse_table_1245.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1246.c b/parser/static/small_parse_table/small_parse_table_1246.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1246.c rename to parser/static/small_parse_table/small_parse_table_1246.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1247.c b/parser/static/small_parse_table/small_parse_table_1247.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1247.c rename to parser/static/small_parse_table/small_parse_table_1247.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1248.c b/parser/static/small_parse_table/small_parse_table_1248.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1248.c rename to parser/static/small_parse_table/small_parse_table_1248.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1249.c b/parser/static/small_parse_table/small_parse_table_1249.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1249.c rename to parser/static/small_parse_table/small_parse_table_1249.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_125.c b/parser/static/small_parse_table/small_parse_table_125.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_125.c rename to parser/static/small_parse_table/small_parse_table_125.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1250.c b/parser/static/small_parse_table/small_parse_table_1250.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1250.c rename to parser/static/small_parse_table/small_parse_table_1250.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1251.c b/parser/static/small_parse_table/small_parse_table_1251.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1251.c rename to parser/static/small_parse_table/small_parse_table_1251.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1252.c b/parser/static/small_parse_table/small_parse_table_1252.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1252.c rename to parser/static/small_parse_table/small_parse_table_1252.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1253.c b/parser/static/small_parse_table/small_parse_table_1253.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1253.c rename to parser/static/small_parse_table/small_parse_table_1253.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1254.c b/parser/static/small_parse_table/small_parse_table_1254.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1254.c rename to parser/static/small_parse_table/small_parse_table_1254.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1255.c b/parser/static/small_parse_table/small_parse_table_1255.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1255.c rename to parser/static/small_parse_table/small_parse_table_1255.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1256.c b/parser/static/small_parse_table/small_parse_table_1256.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1256.c rename to parser/static/small_parse_table/small_parse_table_1256.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1257.c b/parser/static/small_parse_table/small_parse_table_1257.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1257.c rename to parser/static/small_parse_table/small_parse_table_1257.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1258.c b/parser/static/small_parse_table/small_parse_table_1258.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1258.c rename to parser/static/small_parse_table/small_parse_table_1258.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1259.c b/parser/static/small_parse_table/small_parse_table_1259.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1259.c rename to parser/static/small_parse_table/small_parse_table_1259.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_126.c b/parser/static/small_parse_table/small_parse_table_126.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_126.c rename to parser/static/small_parse_table/small_parse_table_126.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1260.c b/parser/static/small_parse_table/small_parse_table_1260.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1260.c rename to parser/static/small_parse_table/small_parse_table_1260.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1261.c b/parser/static/small_parse_table/small_parse_table_1261.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1261.c rename to parser/static/small_parse_table/small_parse_table_1261.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1262.c b/parser/static/small_parse_table/small_parse_table_1262.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1262.c rename to parser/static/small_parse_table/small_parse_table_1262.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1263.c b/parser/static/small_parse_table/small_parse_table_1263.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1263.c rename to parser/static/small_parse_table/small_parse_table_1263.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1264.c b/parser/static/small_parse_table/small_parse_table_1264.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1264.c rename to parser/static/small_parse_table/small_parse_table_1264.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1265.c b/parser/static/small_parse_table/small_parse_table_1265.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1265.c rename to parser/static/small_parse_table/small_parse_table_1265.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1266.c b/parser/static/small_parse_table/small_parse_table_1266.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1266.c rename to parser/static/small_parse_table/small_parse_table_1266.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1267.c b/parser/static/small_parse_table/small_parse_table_1267.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1267.c rename to parser/static/small_parse_table/small_parse_table_1267.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1268.c b/parser/static/small_parse_table/small_parse_table_1268.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1268.c rename to parser/static/small_parse_table/small_parse_table_1268.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1269.c b/parser/static/small_parse_table/small_parse_table_1269.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1269.c rename to parser/static/small_parse_table/small_parse_table_1269.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_127.c b/parser/static/small_parse_table/small_parse_table_127.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_127.c rename to parser/static/small_parse_table/small_parse_table_127.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1270.c b/parser/static/small_parse_table/small_parse_table_1270.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1270.c rename to parser/static/small_parse_table/small_parse_table_1270.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1271.c b/parser/static/small_parse_table/small_parse_table_1271.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1271.c rename to parser/static/small_parse_table/small_parse_table_1271.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1272.c b/parser/static/small_parse_table/small_parse_table_1272.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1272.c rename to parser/static/small_parse_table/small_parse_table_1272.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1273.c b/parser/static/small_parse_table/small_parse_table_1273.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1273.c rename to parser/static/small_parse_table/small_parse_table_1273.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1274.c b/parser/static/small_parse_table/small_parse_table_1274.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1274.c rename to parser/static/small_parse_table/small_parse_table_1274.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1275.c b/parser/static/small_parse_table/small_parse_table_1275.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1275.c rename to parser/static/small_parse_table/small_parse_table_1275.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1276.c b/parser/static/small_parse_table/small_parse_table_1276.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1276.c rename to parser/static/small_parse_table/small_parse_table_1276.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1277.c b/parser/static/small_parse_table/small_parse_table_1277.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1277.c rename to parser/static/small_parse_table/small_parse_table_1277.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1278.c b/parser/static/small_parse_table/small_parse_table_1278.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1278.c rename to parser/static/small_parse_table/small_parse_table_1278.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1279.c b/parser/static/small_parse_table/small_parse_table_1279.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1279.c rename to parser/static/small_parse_table/small_parse_table_1279.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_128.c b/parser/static/small_parse_table/small_parse_table_128.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_128.c rename to parser/static/small_parse_table/small_parse_table_128.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1280.c b/parser/static/small_parse_table/small_parse_table_1280.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1280.c rename to parser/static/small_parse_table/small_parse_table_1280.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1281.c b/parser/static/small_parse_table/small_parse_table_1281.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1281.c rename to parser/static/small_parse_table/small_parse_table_1281.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1282.c b/parser/static/small_parse_table/small_parse_table_1282.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1282.c rename to parser/static/small_parse_table/small_parse_table_1282.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1283.c b/parser/static/small_parse_table/small_parse_table_1283.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1283.c rename to parser/static/small_parse_table/small_parse_table_1283.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1284.c b/parser/static/small_parse_table/small_parse_table_1284.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1284.c rename to parser/static/small_parse_table/small_parse_table_1284.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1285.c b/parser/static/small_parse_table/small_parse_table_1285.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1285.c rename to parser/static/small_parse_table/small_parse_table_1285.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1286.c b/parser/static/small_parse_table/small_parse_table_1286.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1286.c rename to parser/static/small_parse_table/small_parse_table_1286.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1287.c b/parser/static/small_parse_table/small_parse_table_1287.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1287.c rename to parser/static/small_parse_table/small_parse_table_1287.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1288.c b/parser/static/small_parse_table/small_parse_table_1288.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1288.c rename to parser/static/small_parse_table/small_parse_table_1288.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1289.c b/parser/static/small_parse_table/small_parse_table_1289.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1289.c rename to parser/static/small_parse_table/small_parse_table_1289.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_129.c b/parser/static/small_parse_table/small_parse_table_129.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_129.c rename to parser/static/small_parse_table/small_parse_table_129.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1290.c b/parser/static/small_parse_table/small_parse_table_1290.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1290.c rename to parser/static/small_parse_table/small_parse_table_1290.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1291.c b/parser/static/small_parse_table/small_parse_table_1291.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1291.c rename to parser/static/small_parse_table/small_parse_table_1291.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1292.c b/parser/static/small_parse_table/small_parse_table_1292.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1292.c rename to parser/static/small_parse_table/small_parse_table_1292.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1293.c b/parser/static/small_parse_table/small_parse_table_1293.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1293.c rename to parser/static/small_parse_table/small_parse_table_1293.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1294.c b/parser/static/small_parse_table/small_parse_table_1294.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1294.c rename to parser/static/small_parse_table/small_parse_table_1294.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1295.c b/parser/static/small_parse_table/small_parse_table_1295.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1295.c rename to parser/static/small_parse_table/small_parse_table_1295.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1296.c b/parser/static/small_parse_table/small_parse_table_1296.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1296.c rename to parser/static/small_parse_table/small_parse_table_1296.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1297.c b/parser/static/small_parse_table/small_parse_table_1297.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1297.c rename to parser/static/small_parse_table/small_parse_table_1297.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1298.c b/parser/static/small_parse_table/small_parse_table_1298.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1298.c rename to parser/static/small_parse_table/small_parse_table_1298.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1299.c b/parser/static/small_parse_table/small_parse_table_1299.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1299.c rename to parser/static/small_parse_table/small_parse_table_1299.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_13.c b/parser/static/small_parse_table/small_parse_table_13.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_13.c rename to parser/static/small_parse_table/small_parse_table_13.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_130.c b/parser/static/small_parse_table/small_parse_table_130.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_130.c rename to parser/static/small_parse_table/small_parse_table_130.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1300.c b/parser/static/small_parse_table/small_parse_table_1300.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1300.c rename to parser/static/small_parse_table/small_parse_table_1300.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1301.c b/parser/static/small_parse_table/small_parse_table_1301.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1301.c rename to parser/static/small_parse_table/small_parse_table_1301.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1302.c b/parser/static/small_parse_table/small_parse_table_1302.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1302.c rename to parser/static/small_parse_table/small_parse_table_1302.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1303.c b/parser/static/small_parse_table/small_parse_table_1303.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1303.c rename to parser/static/small_parse_table/small_parse_table_1303.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1304.c b/parser/static/small_parse_table/small_parse_table_1304.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1304.c rename to parser/static/small_parse_table/small_parse_table_1304.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1305.c b/parser/static/small_parse_table/small_parse_table_1305.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1305.c rename to parser/static/small_parse_table/small_parse_table_1305.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1306.c b/parser/static/small_parse_table/small_parse_table_1306.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1306.c rename to parser/static/small_parse_table/small_parse_table_1306.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1307.c b/parser/static/small_parse_table/small_parse_table_1307.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1307.c rename to parser/static/small_parse_table/small_parse_table_1307.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1308.c b/parser/static/small_parse_table/small_parse_table_1308.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1308.c rename to parser/static/small_parse_table/small_parse_table_1308.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1309.c b/parser/static/small_parse_table/small_parse_table_1309.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1309.c rename to parser/static/small_parse_table/small_parse_table_1309.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_131.c b/parser/static/small_parse_table/small_parse_table_131.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_131.c rename to parser/static/small_parse_table/small_parse_table_131.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1310.c b/parser/static/small_parse_table/small_parse_table_1310.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1310.c rename to parser/static/small_parse_table/small_parse_table_1310.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1311.c b/parser/static/small_parse_table/small_parse_table_1311.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1311.c rename to parser/static/small_parse_table/small_parse_table_1311.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1312.c b/parser/static/small_parse_table/small_parse_table_1312.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1312.c rename to parser/static/small_parse_table/small_parse_table_1312.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1313.c b/parser/static/small_parse_table/small_parse_table_1313.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1313.c rename to parser/static/small_parse_table/small_parse_table_1313.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1314.c b/parser/static/small_parse_table/small_parse_table_1314.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1314.c rename to parser/static/small_parse_table/small_parse_table_1314.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1315.c b/parser/static/small_parse_table/small_parse_table_1315.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1315.c rename to parser/static/small_parse_table/small_parse_table_1315.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1316.c b/parser/static/small_parse_table/small_parse_table_1316.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1316.c rename to parser/static/small_parse_table/small_parse_table_1316.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1317.c b/parser/static/small_parse_table/small_parse_table_1317.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1317.c rename to parser/static/small_parse_table/small_parse_table_1317.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1318.c b/parser/static/small_parse_table/small_parse_table_1318.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1318.c rename to parser/static/small_parse_table/small_parse_table_1318.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1319.c b/parser/static/small_parse_table/small_parse_table_1319.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1319.c rename to parser/static/small_parse_table/small_parse_table_1319.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_132.c b/parser/static/small_parse_table/small_parse_table_132.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_132.c rename to parser/static/small_parse_table/small_parse_table_132.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1320.c b/parser/static/small_parse_table/small_parse_table_1320.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1320.c rename to parser/static/small_parse_table/small_parse_table_1320.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1321.c b/parser/static/small_parse_table/small_parse_table_1321.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1321.c rename to parser/static/small_parse_table/small_parse_table_1321.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1322.c b/parser/static/small_parse_table/small_parse_table_1322.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1322.c rename to parser/static/small_parse_table/small_parse_table_1322.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1323.c b/parser/static/small_parse_table/small_parse_table_1323.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1323.c rename to parser/static/small_parse_table/small_parse_table_1323.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1324.c b/parser/static/small_parse_table/small_parse_table_1324.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1324.c rename to parser/static/small_parse_table/small_parse_table_1324.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1325.c b/parser/static/small_parse_table/small_parse_table_1325.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1325.c rename to parser/static/small_parse_table/small_parse_table_1325.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1326.c b/parser/static/small_parse_table/small_parse_table_1326.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1326.c rename to parser/static/small_parse_table/small_parse_table_1326.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1327.c b/parser/static/small_parse_table/small_parse_table_1327.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1327.c rename to parser/static/small_parse_table/small_parse_table_1327.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1328.c b/parser/static/small_parse_table/small_parse_table_1328.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1328.c rename to parser/static/small_parse_table/small_parse_table_1328.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1329.c b/parser/static/small_parse_table/small_parse_table_1329.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1329.c rename to parser/static/small_parse_table/small_parse_table_1329.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_133.c b/parser/static/small_parse_table/small_parse_table_133.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_133.c rename to parser/static/small_parse_table/small_parse_table_133.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1330.c b/parser/static/small_parse_table/small_parse_table_1330.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1330.c rename to parser/static/small_parse_table/small_parse_table_1330.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1331.c b/parser/static/small_parse_table/small_parse_table_1331.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1331.c rename to parser/static/small_parse_table/small_parse_table_1331.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1332.c b/parser/static/small_parse_table/small_parse_table_1332.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1332.c rename to parser/static/small_parse_table/small_parse_table_1332.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1333.c b/parser/static/small_parse_table/small_parse_table_1333.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1333.c rename to parser/static/small_parse_table/small_parse_table_1333.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1334.c b/parser/static/small_parse_table/small_parse_table_1334.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1334.c rename to parser/static/small_parse_table/small_parse_table_1334.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1335.c b/parser/static/small_parse_table/small_parse_table_1335.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1335.c rename to parser/static/small_parse_table/small_parse_table_1335.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1336.c b/parser/static/small_parse_table/small_parse_table_1336.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1336.c rename to parser/static/small_parse_table/small_parse_table_1336.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1337.c b/parser/static/small_parse_table/small_parse_table_1337.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1337.c rename to parser/static/small_parse_table/small_parse_table_1337.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1338.c b/parser/static/small_parse_table/small_parse_table_1338.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1338.c rename to parser/static/small_parse_table/small_parse_table_1338.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1339.c b/parser/static/small_parse_table/small_parse_table_1339.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1339.c rename to parser/static/small_parse_table/small_parse_table_1339.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_134.c b/parser/static/small_parse_table/small_parse_table_134.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_134.c rename to parser/static/small_parse_table/small_parse_table_134.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1340.c b/parser/static/small_parse_table/small_parse_table_1340.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1340.c rename to parser/static/small_parse_table/small_parse_table_1340.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1341.c b/parser/static/small_parse_table/small_parse_table_1341.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1341.c rename to parser/static/small_parse_table/small_parse_table_1341.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1342.c b/parser/static/small_parse_table/small_parse_table_1342.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1342.c rename to parser/static/small_parse_table/small_parse_table_1342.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1343.c b/parser/static/small_parse_table/small_parse_table_1343.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1343.c rename to parser/static/small_parse_table/small_parse_table_1343.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1344.c b/parser/static/small_parse_table/small_parse_table_1344.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1344.c rename to parser/static/small_parse_table/small_parse_table_1344.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1345.c b/parser/static/small_parse_table/small_parse_table_1345.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1345.c rename to parser/static/small_parse_table/small_parse_table_1345.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1346.c b/parser/static/small_parse_table/small_parse_table_1346.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1346.c rename to parser/static/small_parse_table/small_parse_table_1346.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1347.c b/parser/static/small_parse_table/small_parse_table_1347.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1347.c rename to parser/static/small_parse_table/small_parse_table_1347.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1348.c b/parser/static/small_parse_table/small_parse_table_1348.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1348.c rename to parser/static/small_parse_table/small_parse_table_1348.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1349.c b/parser/static/small_parse_table/small_parse_table_1349.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1349.c rename to parser/static/small_parse_table/small_parse_table_1349.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_135.c b/parser/static/small_parse_table/small_parse_table_135.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_135.c rename to parser/static/small_parse_table/small_parse_table_135.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1350.c b/parser/static/small_parse_table/small_parse_table_1350.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1350.c rename to parser/static/small_parse_table/small_parse_table_1350.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1351.c b/parser/static/small_parse_table/small_parse_table_1351.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1351.c rename to parser/static/small_parse_table/small_parse_table_1351.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1352.c b/parser/static/small_parse_table/small_parse_table_1352.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1352.c rename to parser/static/small_parse_table/small_parse_table_1352.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1353.c b/parser/static/small_parse_table/small_parse_table_1353.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1353.c rename to parser/static/small_parse_table/small_parse_table_1353.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1354.c b/parser/static/small_parse_table/small_parse_table_1354.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1354.c rename to parser/static/small_parse_table/small_parse_table_1354.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1355.c b/parser/static/small_parse_table/small_parse_table_1355.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1355.c rename to parser/static/small_parse_table/small_parse_table_1355.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1356.c b/parser/static/small_parse_table/small_parse_table_1356.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1356.c rename to parser/static/small_parse_table/small_parse_table_1356.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1357.c b/parser/static/small_parse_table/small_parse_table_1357.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1357.c rename to parser/static/small_parse_table/small_parse_table_1357.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1358.c b/parser/static/small_parse_table/small_parse_table_1358.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1358.c rename to parser/static/small_parse_table/small_parse_table_1358.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1359.c b/parser/static/small_parse_table/small_parse_table_1359.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1359.c rename to parser/static/small_parse_table/small_parse_table_1359.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_136.c b/parser/static/small_parse_table/small_parse_table_136.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_136.c rename to parser/static/small_parse_table/small_parse_table_136.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1360.c b/parser/static/small_parse_table/small_parse_table_1360.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1360.c rename to parser/static/small_parse_table/small_parse_table_1360.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1361.c b/parser/static/small_parse_table/small_parse_table_1361.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1361.c rename to parser/static/small_parse_table/small_parse_table_1361.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1362.c b/parser/static/small_parse_table/small_parse_table_1362.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1362.c rename to parser/static/small_parse_table/small_parse_table_1362.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1363.c b/parser/static/small_parse_table/small_parse_table_1363.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1363.c rename to parser/static/small_parse_table/small_parse_table_1363.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1364.c b/parser/static/small_parse_table/small_parse_table_1364.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1364.c rename to parser/static/small_parse_table/small_parse_table_1364.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1365.c b/parser/static/small_parse_table/small_parse_table_1365.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1365.c rename to parser/static/small_parse_table/small_parse_table_1365.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1366.c b/parser/static/small_parse_table/small_parse_table_1366.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1366.c rename to parser/static/small_parse_table/small_parse_table_1366.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1367.c b/parser/static/small_parse_table/small_parse_table_1367.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1367.c rename to parser/static/small_parse_table/small_parse_table_1367.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1368.c b/parser/static/small_parse_table/small_parse_table_1368.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1368.c rename to parser/static/small_parse_table/small_parse_table_1368.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1369.c b/parser/static/small_parse_table/small_parse_table_1369.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1369.c rename to parser/static/small_parse_table/small_parse_table_1369.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_137.c b/parser/static/small_parse_table/small_parse_table_137.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_137.c rename to parser/static/small_parse_table/small_parse_table_137.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1370.c b/parser/static/small_parse_table/small_parse_table_1370.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1370.c rename to parser/static/small_parse_table/small_parse_table_1370.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1371.c b/parser/static/small_parse_table/small_parse_table_1371.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1371.c rename to parser/static/small_parse_table/small_parse_table_1371.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1372.c b/parser/static/small_parse_table/small_parse_table_1372.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1372.c rename to parser/static/small_parse_table/small_parse_table_1372.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1373.c b/parser/static/small_parse_table/small_parse_table_1373.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1373.c rename to parser/static/small_parse_table/small_parse_table_1373.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1374.c b/parser/static/small_parse_table/small_parse_table_1374.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1374.c rename to parser/static/small_parse_table/small_parse_table_1374.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1375.c b/parser/static/small_parse_table/small_parse_table_1375.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1375.c rename to parser/static/small_parse_table/small_parse_table_1375.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1376.c b/parser/static/small_parse_table/small_parse_table_1376.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1376.c rename to parser/static/small_parse_table/small_parse_table_1376.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1377.c b/parser/static/small_parse_table/small_parse_table_1377.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1377.c rename to parser/static/small_parse_table/small_parse_table_1377.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1378.c b/parser/static/small_parse_table/small_parse_table_1378.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1378.c rename to parser/static/small_parse_table/small_parse_table_1378.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1379.c b/parser/static/small_parse_table/small_parse_table_1379.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1379.c rename to parser/static/small_parse_table/small_parse_table_1379.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_138.c b/parser/static/small_parse_table/small_parse_table_138.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_138.c rename to parser/static/small_parse_table/small_parse_table_138.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1380.c b/parser/static/small_parse_table/small_parse_table_1380.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1380.c rename to parser/static/small_parse_table/small_parse_table_1380.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1381.c b/parser/static/small_parse_table/small_parse_table_1381.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1381.c rename to parser/static/small_parse_table/small_parse_table_1381.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1382.c b/parser/static/small_parse_table/small_parse_table_1382.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1382.c rename to parser/static/small_parse_table/small_parse_table_1382.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1383.c b/parser/static/small_parse_table/small_parse_table_1383.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1383.c rename to parser/static/small_parse_table/small_parse_table_1383.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1384.c b/parser/static/small_parse_table/small_parse_table_1384.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1384.c rename to parser/static/small_parse_table/small_parse_table_1384.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1385.c b/parser/static/small_parse_table/small_parse_table_1385.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1385.c rename to parser/static/small_parse_table/small_parse_table_1385.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1386.c b/parser/static/small_parse_table/small_parse_table_1386.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1386.c rename to parser/static/small_parse_table/small_parse_table_1386.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1387.c b/parser/static/small_parse_table/small_parse_table_1387.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1387.c rename to parser/static/small_parse_table/small_parse_table_1387.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1388.c b/parser/static/small_parse_table/small_parse_table_1388.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1388.c rename to parser/static/small_parse_table/small_parse_table_1388.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1389.c b/parser/static/small_parse_table/small_parse_table_1389.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1389.c rename to parser/static/small_parse_table/small_parse_table_1389.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_139.c b/parser/static/small_parse_table/small_parse_table_139.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_139.c rename to parser/static/small_parse_table/small_parse_table_139.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1390.c b/parser/static/small_parse_table/small_parse_table_1390.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1390.c rename to parser/static/small_parse_table/small_parse_table_1390.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1391.c b/parser/static/small_parse_table/small_parse_table_1391.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1391.c rename to parser/static/small_parse_table/small_parse_table_1391.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1392.c b/parser/static/small_parse_table/small_parse_table_1392.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1392.c rename to parser/static/small_parse_table/small_parse_table_1392.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1393.c b/parser/static/small_parse_table/small_parse_table_1393.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1393.c rename to parser/static/small_parse_table/small_parse_table_1393.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1394.c b/parser/static/small_parse_table/small_parse_table_1394.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1394.c rename to parser/static/small_parse_table/small_parse_table_1394.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1395.c b/parser/static/small_parse_table/small_parse_table_1395.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1395.c rename to parser/static/small_parse_table/small_parse_table_1395.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1396.c b/parser/static/small_parse_table/small_parse_table_1396.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1396.c rename to parser/static/small_parse_table/small_parse_table_1396.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1397.c b/parser/static/small_parse_table/small_parse_table_1397.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1397.c rename to parser/static/small_parse_table/small_parse_table_1397.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1398.c b/parser/static/small_parse_table/small_parse_table_1398.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1398.c rename to parser/static/small_parse_table/small_parse_table_1398.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1399.c b/parser/static/small_parse_table/small_parse_table_1399.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1399.c rename to parser/static/small_parse_table/small_parse_table_1399.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_14.c b/parser/static/small_parse_table/small_parse_table_14.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_14.c rename to parser/static/small_parse_table/small_parse_table_14.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_140.c b/parser/static/small_parse_table/small_parse_table_140.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_140.c rename to parser/static/small_parse_table/small_parse_table_140.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1400.c b/parser/static/small_parse_table/small_parse_table_1400.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1400.c rename to parser/static/small_parse_table/small_parse_table_1400.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1401.c b/parser/static/small_parse_table/small_parse_table_1401.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1401.c rename to parser/static/small_parse_table/small_parse_table_1401.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1402.c b/parser/static/small_parse_table/small_parse_table_1402.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1402.c rename to parser/static/small_parse_table/small_parse_table_1402.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1403.c b/parser/static/small_parse_table/small_parse_table_1403.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1403.c rename to parser/static/small_parse_table/small_parse_table_1403.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1404.c b/parser/static/small_parse_table/small_parse_table_1404.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1404.c rename to parser/static/small_parse_table/small_parse_table_1404.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1405.c b/parser/static/small_parse_table/small_parse_table_1405.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1405.c rename to parser/static/small_parse_table/small_parse_table_1405.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1406.c b/parser/static/small_parse_table/small_parse_table_1406.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1406.c rename to parser/static/small_parse_table/small_parse_table_1406.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1407.c b/parser/static/small_parse_table/small_parse_table_1407.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1407.c rename to parser/static/small_parse_table/small_parse_table_1407.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1408.c b/parser/static/small_parse_table/small_parse_table_1408.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1408.c rename to parser/static/small_parse_table/small_parse_table_1408.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1409.c b/parser/static/small_parse_table/small_parse_table_1409.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1409.c rename to parser/static/small_parse_table/small_parse_table_1409.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_141.c b/parser/static/small_parse_table/small_parse_table_141.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_141.c rename to parser/static/small_parse_table/small_parse_table_141.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1410.c b/parser/static/small_parse_table/small_parse_table_1410.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1410.c rename to parser/static/small_parse_table/small_parse_table_1410.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1411.c b/parser/static/small_parse_table/small_parse_table_1411.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1411.c rename to parser/static/small_parse_table/small_parse_table_1411.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1412.c b/parser/static/small_parse_table/small_parse_table_1412.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1412.c rename to parser/static/small_parse_table/small_parse_table_1412.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1413.c b/parser/static/small_parse_table/small_parse_table_1413.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1413.c rename to parser/static/small_parse_table/small_parse_table_1413.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1414.c b/parser/static/small_parse_table/small_parse_table_1414.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1414.c rename to parser/static/small_parse_table/small_parse_table_1414.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1415.c b/parser/static/small_parse_table/small_parse_table_1415.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1415.c rename to parser/static/small_parse_table/small_parse_table_1415.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1416.c b/parser/static/small_parse_table/small_parse_table_1416.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1416.c rename to parser/static/small_parse_table/small_parse_table_1416.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1417.c b/parser/static/small_parse_table/small_parse_table_1417.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1417.c rename to parser/static/small_parse_table/small_parse_table_1417.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1418.c b/parser/static/small_parse_table/small_parse_table_1418.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1418.c rename to parser/static/small_parse_table/small_parse_table_1418.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1419.c b/parser/static/small_parse_table/small_parse_table_1419.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1419.c rename to parser/static/small_parse_table/small_parse_table_1419.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_142.c b/parser/static/small_parse_table/small_parse_table_142.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_142.c rename to parser/static/small_parse_table/small_parse_table_142.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1420.c b/parser/static/small_parse_table/small_parse_table_1420.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1420.c rename to parser/static/small_parse_table/small_parse_table_1420.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1421.c b/parser/static/small_parse_table/small_parse_table_1421.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1421.c rename to parser/static/small_parse_table/small_parse_table_1421.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1422.c b/parser/static/small_parse_table/small_parse_table_1422.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1422.c rename to parser/static/small_parse_table/small_parse_table_1422.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1423.c b/parser/static/small_parse_table/small_parse_table_1423.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1423.c rename to parser/static/small_parse_table/small_parse_table_1423.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1424.c b/parser/static/small_parse_table/small_parse_table_1424.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1424.c rename to parser/static/small_parse_table/small_parse_table_1424.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1425.c b/parser/static/small_parse_table/small_parse_table_1425.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1425.c rename to parser/static/small_parse_table/small_parse_table_1425.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1426.c b/parser/static/small_parse_table/small_parse_table_1426.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1426.c rename to parser/static/small_parse_table/small_parse_table_1426.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1427.c b/parser/static/small_parse_table/small_parse_table_1427.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1427.c rename to parser/static/small_parse_table/small_parse_table_1427.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1428.c b/parser/static/small_parse_table/small_parse_table_1428.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1428.c rename to parser/static/small_parse_table/small_parse_table_1428.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1429.c b/parser/static/small_parse_table/small_parse_table_1429.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1429.c rename to parser/static/small_parse_table/small_parse_table_1429.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_143.c b/parser/static/small_parse_table/small_parse_table_143.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_143.c rename to parser/static/small_parse_table/small_parse_table_143.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1430.c b/parser/static/small_parse_table/small_parse_table_1430.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1430.c rename to parser/static/small_parse_table/small_parse_table_1430.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1431.c b/parser/static/small_parse_table/small_parse_table_1431.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1431.c rename to parser/static/small_parse_table/small_parse_table_1431.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1432.c b/parser/static/small_parse_table/small_parse_table_1432.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1432.c rename to parser/static/small_parse_table/small_parse_table_1432.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1433.c b/parser/static/small_parse_table/small_parse_table_1433.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1433.c rename to parser/static/small_parse_table/small_parse_table_1433.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1434.c b/parser/static/small_parse_table/small_parse_table_1434.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1434.c rename to parser/static/small_parse_table/small_parse_table_1434.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1435.c b/parser/static/small_parse_table/small_parse_table_1435.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1435.c rename to parser/static/small_parse_table/small_parse_table_1435.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1436.c b/parser/static/small_parse_table/small_parse_table_1436.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1436.c rename to parser/static/small_parse_table/small_parse_table_1436.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1437.c b/parser/static/small_parse_table/small_parse_table_1437.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1437.c rename to parser/static/small_parse_table/small_parse_table_1437.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1438.c b/parser/static/small_parse_table/small_parse_table_1438.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1438.c rename to parser/static/small_parse_table/small_parse_table_1438.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1439.c b/parser/static/small_parse_table/small_parse_table_1439.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1439.c rename to parser/static/small_parse_table/small_parse_table_1439.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_144.c b/parser/static/small_parse_table/small_parse_table_144.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_144.c rename to parser/static/small_parse_table/small_parse_table_144.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1440.c b/parser/static/small_parse_table/small_parse_table_1440.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1440.c rename to parser/static/small_parse_table/small_parse_table_1440.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1441.c b/parser/static/small_parse_table/small_parse_table_1441.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1441.c rename to parser/static/small_parse_table/small_parse_table_1441.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1442.c b/parser/static/small_parse_table/small_parse_table_1442.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1442.c rename to parser/static/small_parse_table/small_parse_table_1442.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1443.c b/parser/static/small_parse_table/small_parse_table_1443.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1443.c rename to parser/static/small_parse_table/small_parse_table_1443.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1444.c b/parser/static/small_parse_table/small_parse_table_1444.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1444.c rename to parser/static/small_parse_table/small_parse_table_1444.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1445.c b/parser/static/small_parse_table/small_parse_table_1445.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1445.c rename to parser/static/small_parse_table/small_parse_table_1445.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1446.c b/parser/static/small_parse_table/small_parse_table_1446.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1446.c rename to parser/static/small_parse_table/small_parse_table_1446.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1447.c b/parser/static/small_parse_table/small_parse_table_1447.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1447.c rename to parser/static/small_parse_table/small_parse_table_1447.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1448.c b/parser/static/small_parse_table/small_parse_table_1448.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1448.c rename to parser/static/small_parse_table/small_parse_table_1448.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1449.c b/parser/static/small_parse_table/small_parse_table_1449.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1449.c rename to parser/static/small_parse_table/small_parse_table_1449.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_145.c b/parser/static/small_parse_table/small_parse_table_145.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_145.c rename to parser/static/small_parse_table/small_parse_table_145.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1450.c b/parser/static/small_parse_table/small_parse_table_1450.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1450.c rename to parser/static/small_parse_table/small_parse_table_1450.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1451.c b/parser/static/small_parse_table/small_parse_table_1451.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1451.c rename to parser/static/small_parse_table/small_parse_table_1451.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1452.c b/parser/static/small_parse_table/small_parse_table_1452.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1452.c rename to parser/static/small_parse_table/small_parse_table_1452.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1453.c b/parser/static/small_parse_table/small_parse_table_1453.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1453.c rename to parser/static/small_parse_table/small_parse_table_1453.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1454.c b/parser/static/small_parse_table/small_parse_table_1454.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1454.c rename to parser/static/small_parse_table/small_parse_table_1454.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1455.c b/parser/static/small_parse_table/small_parse_table_1455.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1455.c rename to parser/static/small_parse_table/small_parse_table_1455.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1456.c b/parser/static/small_parse_table/small_parse_table_1456.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1456.c rename to parser/static/small_parse_table/small_parse_table_1456.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1457.c b/parser/static/small_parse_table/small_parse_table_1457.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1457.c rename to parser/static/small_parse_table/small_parse_table_1457.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1458.c b/parser/static/small_parse_table/small_parse_table_1458.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1458.c rename to parser/static/small_parse_table/small_parse_table_1458.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1459.c b/parser/static/small_parse_table/small_parse_table_1459.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1459.c rename to parser/static/small_parse_table/small_parse_table_1459.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_146.c b/parser/static/small_parse_table/small_parse_table_146.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_146.c rename to parser/static/small_parse_table/small_parse_table_146.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1460.c b/parser/static/small_parse_table/small_parse_table_1460.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1460.c rename to parser/static/small_parse_table/small_parse_table_1460.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1461.c b/parser/static/small_parse_table/small_parse_table_1461.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1461.c rename to parser/static/small_parse_table/small_parse_table_1461.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1462.c b/parser/static/small_parse_table/small_parse_table_1462.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1462.c rename to parser/static/small_parse_table/small_parse_table_1462.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1463.c b/parser/static/small_parse_table/small_parse_table_1463.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1463.c rename to parser/static/small_parse_table/small_parse_table_1463.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1464.c b/parser/static/small_parse_table/small_parse_table_1464.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1464.c rename to parser/static/small_parse_table/small_parse_table_1464.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1465.c b/parser/static/small_parse_table/small_parse_table_1465.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1465.c rename to parser/static/small_parse_table/small_parse_table_1465.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1466.c b/parser/static/small_parse_table/small_parse_table_1466.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1466.c rename to parser/static/small_parse_table/small_parse_table_1466.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1467.c b/parser/static/small_parse_table/small_parse_table_1467.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1467.c rename to parser/static/small_parse_table/small_parse_table_1467.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1468.c b/parser/static/small_parse_table/small_parse_table_1468.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1468.c rename to parser/static/small_parse_table/small_parse_table_1468.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1469.c b/parser/static/small_parse_table/small_parse_table_1469.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1469.c rename to parser/static/small_parse_table/small_parse_table_1469.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_147.c b/parser/static/small_parse_table/small_parse_table_147.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_147.c rename to parser/static/small_parse_table/small_parse_table_147.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1470.c b/parser/static/small_parse_table/small_parse_table_1470.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1470.c rename to parser/static/small_parse_table/small_parse_table_1470.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1471.c b/parser/static/small_parse_table/small_parse_table_1471.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1471.c rename to parser/static/small_parse_table/small_parse_table_1471.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1472.c b/parser/static/small_parse_table/small_parse_table_1472.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1472.c rename to parser/static/small_parse_table/small_parse_table_1472.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1473.c b/parser/static/small_parse_table/small_parse_table_1473.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1473.c rename to parser/static/small_parse_table/small_parse_table_1473.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1474.c b/parser/static/small_parse_table/small_parse_table_1474.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1474.c rename to parser/static/small_parse_table/small_parse_table_1474.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1475.c b/parser/static/small_parse_table/small_parse_table_1475.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1475.c rename to parser/static/small_parse_table/small_parse_table_1475.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1476.c b/parser/static/small_parse_table/small_parse_table_1476.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1476.c rename to parser/static/small_parse_table/small_parse_table_1476.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1477.c b/parser/static/small_parse_table/small_parse_table_1477.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1477.c rename to parser/static/small_parse_table/small_parse_table_1477.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1478.c b/parser/static/small_parse_table/small_parse_table_1478.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1478.c rename to parser/static/small_parse_table/small_parse_table_1478.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1479.c b/parser/static/small_parse_table/small_parse_table_1479.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1479.c rename to parser/static/small_parse_table/small_parse_table_1479.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_148.c b/parser/static/small_parse_table/small_parse_table_148.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_148.c rename to parser/static/small_parse_table/small_parse_table_148.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1480.c b/parser/static/small_parse_table/small_parse_table_1480.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1480.c rename to parser/static/small_parse_table/small_parse_table_1480.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1481.c b/parser/static/small_parse_table/small_parse_table_1481.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1481.c rename to parser/static/small_parse_table/small_parse_table_1481.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1482.c b/parser/static/small_parse_table/small_parse_table_1482.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1482.c rename to parser/static/small_parse_table/small_parse_table_1482.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1483.c b/parser/static/small_parse_table/small_parse_table_1483.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1483.c rename to parser/static/small_parse_table/small_parse_table_1483.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1484.c b/parser/static/small_parse_table/small_parse_table_1484.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1484.c rename to parser/static/small_parse_table/small_parse_table_1484.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1485.c b/parser/static/small_parse_table/small_parse_table_1485.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1485.c rename to parser/static/small_parse_table/small_parse_table_1485.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1486.c b/parser/static/small_parse_table/small_parse_table_1486.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1486.c rename to parser/static/small_parse_table/small_parse_table_1486.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1487.c b/parser/static/small_parse_table/small_parse_table_1487.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1487.c rename to parser/static/small_parse_table/small_parse_table_1487.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1488.c b/parser/static/small_parse_table/small_parse_table_1488.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1488.c rename to parser/static/small_parse_table/small_parse_table_1488.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1489.c b/parser/static/small_parse_table/small_parse_table_1489.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1489.c rename to parser/static/small_parse_table/small_parse_table_1489.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_149.c b/parser/static/small_parse_table/small_parse_table_149.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_149.c rename to parser/static/small_parse_table/small_parse_table_149.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1490.c b/parser/static/small_parse_table/small_parse_table_1490.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1490.c rename to parser/static/small_parse_table/small_parse_table_1490.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1491.c b/parser/static/small_parse_table/small_parse_table_1491.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1491.c rename to parser/static/small_parse_table/small_parse_table_1491.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1492.c b/parser/static/small_parse_table/small_parse_table_1492.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1492.c rename to parser/static/small_parse_table/small_parse_table_1492.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1493.c b/parser/static/small_parse_table/small_parse_table_1493.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1493.c rename to parser/static/small_parse_table/small_parse_table_1493.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1494.c b/parser/static/small_parse_table/small_parse_table_1494.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1494.c rename to parser/static/small_parse_table/small_parse_table_1494.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1495.c b/parser/static/small_parse_table/small_parse_table_1495.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1495.c rename to parser/static/small_parse_table/small_parse_table_1495.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1496.c b/parser/static/small_parse_table/small_parse_table_1496.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1496.c rename to parser/static/small_parse_table/small_parse_table_1496.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1497.c b/parser/static/small_parse_table/small_parse_table_1497.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1497.c rename to parser/static/small_parse_table/small_parse_table_1497.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1498.c b/parser/static/small_parse_table/small_parse_table_1498.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1498.c rename to parser/static/small_parse_table/small_parse_table_1498.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1499.c b/parser/static/small_parse_table/small_parse_table_1499.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1499.c rename to parser/static/small_parse_table/small_parse_table_1499.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_15.c b/parser/static/small_parse_table/small_parse_table_15.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_15.c rename to parser/static/small_parse_table/small_parse_table_15.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_150.c b/parser/static/small_parse_table/small_parse_table_150.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_150.c rename to parser/static/small_parse_table/small_parse_table_150.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1500.c b/parser/static/small_parse_table/small_parse_table_1500.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1500.c rename to parser/static/small_parse_table/small_parse_table_1500.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1501.c b/parser/static/small_parse_table/small_parse_table_1501.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1501.c rename to parser/static/small_parse_table/small_parse_table_1501.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1502.c b/parser/static/small_parse_table/small_parse_table_1502.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1502.c rename to parser/static/small_parse_table/small_parse_table_1502.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1503.c b/parser/static/small_parse_table/small_parse_table_1503.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1503.c rename to parser/static/small_parse_table/small_parse_table_1503.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1504.c b/parser/static/small_parse_table/small_parse_table_1504.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1504.c rename to parser/static/small_parse_table/small_parse_table_1504.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1505.c b/parser/static/small_parse_table/small_parse_table_1505.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1505.c rename to parser/static/small_parse_table/small_parse_table_1505.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1506.c b/parser/static/small_parse_table/small_parse_table_1506.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1506.c rename to parser/static/small_parse_table/small_parse_table_1506.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1507.c b/parser/static/small_parse_table/small_parse_table_1507.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1507.c rename to parser/static/small_parse_table/small_parse_table_1507.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1508.c b/parser/static/small_parse_table/small_parse_table_1508.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1508.c rename to parser/static/small_parse_table/small_parse_table_1508.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1509.c b/parser/static/small_parse_table/small_parse_table_1509.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1509.c rename to parser/static/small_parse_table/small_parse_table_1509.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_151.c b/parser/static/small_parse_table/small_parse_table_151.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_151.c rename to parser/static/small_parse_table/small_parse_table_151.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1510.c b/parser/static/small_parse_table/small_parse_table_1510.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1510.c rename to parser/static/small_parse_table/small_parse_table_1510.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1511.c b/parser/static/small_parse_table/small_parse_table_1511.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1511.c rename to parser/static/small_parse_table/small_parse_table_1511.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1512.c b/parser/static/small_parse_table/small_parse_table_1512.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1512.c rename to parser/static/small_parse_table/small_parse_table_1512.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1513.c b/parser/static/small_parse_table/small_parse_table_1513.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1513.c rename to parser/static/small_parse_table/small_parse_table_1513.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1514.c b/parser/static/small_parse_table/small_parse_table_1514.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1514.c rename to parser/static/small_parse_table/small_parse_table_1514.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1515.c b/parser/static/small_parse_table/small_parse_table_1515.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1515.c rename to parser/static/small_parse_table/small_parse_table_1515.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1516.c b/parser/static/small_parse_table/small_parse_table_1516.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1516.c rename to parser/static/small_parse_table/small_parse_table_1516.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1517.c b/parser/static/small_parse_table/small_parse_table_1517.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1517.c rename to parser/static/small_parse_table/small_parse_table_1517.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1518.c b/parser/static/small_parse_table/small_parse_table_1518.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1518.c rename to parser/static/small_parse_table/small_parse_table_1518.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1519.c b/parser/static/small_parse_table/small_parse_table_1519.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1519.c rename to parser/static/small_parse_table/small_parse_table_1519.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_152.c b/parser/static/small_parse_table/small_parse_table_152.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_152.c rename to parser/static/small_parse_table/small_parse_table_152.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1520.c b/parser/static/small_parse_table/small_parse_table_1520.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1520.c rename to parser/static/small_parse_table/small_parse_table_1520.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1521.c b/parser/static/small_parse_table/small_parse_table_1521.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1521.c rename to parser/static/small_parse_table/small_parse_table_1521.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1522.c b/parser/static/small_parse_table/small_parse_table_1522.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1522.c rename to parser/static/small_parse_table/small_parse_table_1522.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1523.c b/parser/static/small_parse_table/small_parse_table_1523.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1523.c rename to parser/static/small_parse_table/small_parse_table_1523.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1524.c b/parser/static/small_parse_table/small_parse_table_1524.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1524.c rename to parser/static/small_parse_table/small_parse_table_1524.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1525.c b/parser/static/small_parse_table/small_parse_table_1525.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1525.c rename to parser/static/small_parse_table/small_parse_table_1525.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1526.c b/parser/static/small_parse_table/small_parse_table_1526.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1526.c rename to parser/static/small_parse_table/small_parse_table_1526.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1527.c b/parser/static/small_parse_table/small_parse_table_1527.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1527.c rename to parser/static/small_parse_table/small_parse_table_1527.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1528.c b/parser/static/small_parse_table/small_parse_table_1528.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1528.c rename to parser/static/small_parse_table/small_parse_table_1528.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1529.c b/parser/static/small_parse_table/small_parse_table_1529.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1529.c rename to parser/static/small_parse_table/small_parse_table_1529.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_153.c b/parser/static/small_parse_table/small_parse_table_153.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_153.c rename to parser/static/small_parse_table/small_parse_table_153.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1530.c b/parser/static/small_parse_table/small_parse_table_1530.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1530.c rename to parser/static/small_parse_table/small_parse_table_1530.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1531.c b/parser/static/small_parse_table/small_parse_table_1531.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1531.c rename to parser/static/small_parse_table/small_parse_table_1531.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1532.c b/parser/static/small_parse_table/small_parse_table_1532.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1532.c rename to parser/static/small_parse_table/small_parse_table_1532.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1533.c b/parser/static/small_parse_table/small_parse_table_1533.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1533.c rename to parser/static/small_parse_table/small_parse_table_1533.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1534.c b/parser/static/small_parse_table/small_parse_table_1534.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1534.c rename to parser/static/small_parse_table/small_parse_table_1534.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1535.c b/parser/static/small_parse_table/small_parse_table_1535.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1535.c rename to parser/static/small_parse_table/small_parse_table_1535.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1536.c b/parser/static/small_parse_table/small_parse_table_1536.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1536.c rename to parser/static/small_parse_table/small_parse_table_1536.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1537.c b/parser/static/small_parse_table/small_parse_table_1537.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1537.c rename to parser/static/small_parse_table/small_parse_table_1537.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1538.c b/parser/static/small_parse_table/small_parse_table_1538.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1538.c rename to parser/static/small_parse_table/small_parse_table_1538.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1539.c b/parser/static/small_parse_table/small_parse_table_1539.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1539.c rename to parser/static/small_parse_table/small_parse_table_1539.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_154.c b/parser/static/small_parse_table/small_parse_table_154.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_154.c rename to parser/static/small_parse_table/small_parse_table_154.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1540.c b/parser/static/small_parse_table/small_parse_table_1540.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1540.c rename to parser/static/small_parse_table/small_parse_table_1540.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1541.c b/parser/static/small_parse_table/small_parse_table_1541.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1541.c rename to parser/static/small_parse_table/small_parse_table_1541.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1542.c b/parser/static/small_parse_table/small_parse_table_1542.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1542.c rename to parser/static/small_parse_table/small_parse_table_1542.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1543.c b/parser/static/small_parse_table/small_parse_table_1543.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1543.c rename to parser/static/small_parse_table/small_parse_table_1543.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1544.c b/parser/static/small_parse_table/small_parse_table_1544.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1544.c rename to parser/static/small_parse_table/small_parse_table_1544.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1545.c b/parser/static/small_parse_table/small_parse_table_1545.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1545.c rename to parser/static/small_parse_table/small_parse_table_1545.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1546.c b/parser/static/small_parse_table/small_parse_table_1546.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1546.c rename to parser/static/small_parse_table/small_parse_table_1546.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1547.c b/parser/static/small_parse_table/small_parse_table_1547.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1547.c rename to parser/static/small_parse_table/small_parse_table_1547.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1548.c b/parser/static/small_parse_table/small_parse_table_1548.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1548.c rename to parser/static/small_parse_table/small_parse_table_1548.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1549.c b/parser/static/small_parse_table/small_parse_table_1549.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1549.c rename to parser/static/small_parse_table/small_parse_table_1549.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_155.c b/parser/static/small_parse_table/small_parse_table_155.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_155.c rename to parser/static/small_parse_table/small_parse_table_155.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1550.c b/parser/static/small_parse_table/small_parse_table_1550.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1550.c rename to parser/static/small_parse_table/small_parse_table_1550.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1551.c b/parser/static/small_parse_table/small_parse_table_1551.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1551.c rename to parser/static/small_parse_table/small_parse_table_1551.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1552.c b/parser/static/small_parse_table/small_parse_table_1552.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1552.c rename to parser/static/small_parse_table/small_parse_table_1552.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1553.c b/parser/static/small_parse_table/small_parse_table_1553.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1553.c rename to parser/static/small_parse_table/small_parse_table_1553.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1554.c b/parser/static/small_parse_table/small_parse_table_1554.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1554.c rename to parser/static/small_parse_table/small_parse_table_1554.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1555.c b/parser/static/small_parse_table/small_parse_table_1555.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1555.c rename to parser/static/small_parse_table/small_parse_table_1555.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1556.c b/parser/static/small_parse_table/small_parse_table_1556.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1556.c rename to parser/static/small_parse_table/small_parse_table_1556.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1557.c b/parser/static/small_parse_table/small_parse_table_1557.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1557.c rename to parser/static/small_parse_table/small_parse_table_1557.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1558.c b/parser/static/small_parse_table/small_parse_table_1558.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1558.c rename to parser/static/small_parse_table/small_parse_table_1558.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1559.c b/parser/static/small_parse_table/small_parse_table_1559.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1559.c rename to parser/static/small_parse_table/small_parse_table_1559.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_156.c b/parser/static/small_parse_table/small_parse_table_156.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_156.c rename to parser/static/small_parse_table/small_parse_table_156.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1560.c b/parser/static/small_parse_table/small_parse_table_1560.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1560.c rename to parser/static/small_parse_table/small_parse_table_1560.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1561.c b/parser/static/small_parse_table/small_parse_table_1561.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1561.c rename to parser/static/small_parse_table/small_parse_table_1561.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1562.c b/parser/static/small_parse_table/small_parse_table_1562.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1562.c rename to parser/static/small_parse_table/small_parse_table_1562.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1563.c b/parser/static/small_parse_table/small_parse_table_1563.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1563.c rename to parser/static/small_parse_table/small_parse_table_1563.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1564.c b/parser/static/small_parse_table/small_parse_table_1564.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1564.c rename to parser/static/small_parse_table/small_parse_table_1564.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1565.c b/parser/static/small_parse_table/small_parse_table_1565.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1565.c rename to parser/static/small_parse_table/small_parse_table_1565.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1566.c b/parser/static/small_parse_table/small_parse_table_1566.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1566.c rename to parser/static/small_parse_table/small_parse_table_1566.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1567.c b/parser/static/small_parse_table/small_parse_table_1567.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1567.c rename to parser/static/small_parse_table/small_parse_table_1567.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1568.c b/parser/static/small_parse_table/small_parse_table_1568.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1568.c rename to parser/static/small_parse_table/small_parse_table_1568.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1569.c b/parser/static/small_parse_table/small_parse_table_1569.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1569.c rename to parser/static/small_parse_table/small_parse_table_1569.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_157.c b/parser/static/small_parse_table/small_parse_table_157.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_157.c rename to parser/static/small_parse_table/small_parse_table_157.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1570.c b/parser/static/small_parse_table/small_parse_table_1570.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1570.c rename to parser/static/small_parse_table/small_parse_table_1570.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1571.c b/parser/static/small_parse_table/small_parse_table_1571.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1571.c rename to parser/static/small_parse_table/small_parse_table_1571.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1572.c b/parser/static/small_parse_table/small_parse_table_1572.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1572.c rename to parser/static/small_parse_table/small_parse_table_1572.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1573.c b/parser/static/small_parse_table/small_parse_table_1573.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1573.c rename to parser/static/small_parse_table/small_parse_table_1573.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1574.c b/parser/static/small_parse_table/small_parse_table_1574.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1574.c rename to parser/static/small_parse_table/small_parse_table_1574.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1575.c b/parser/static/small_parse_table/small_parse_table_1575.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1575.c rename to parser/static/small_parse_table/small_parse_table_1575.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1576.c b/parser/static/small_parse_table/small_parse_table_1576.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1576.c rename to parser/static/small_parse_table/small_parse_table_1576.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1577.c b/parser/static/small_parse_table/small_parse_table_1577.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1577.c rename to parser/static/small_parse_table/small_parse_table_1577.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1578.c b/parser/static/small_parse_table/small_parse_table_1578.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1578.c rename to parser/static/small_parse_table/small_parse_table_1578.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1579.c b/parser/static/small_parse_table/small_parse_table_1579.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1579.c rename to parser/static/small_parse_table/small_parse_table_1579.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_158.c b/parser/static/small_parse_table/small_parse_table_158.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_158.c rename to parser/static/small_parse_table/small_parse_table_158.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1580.c b/parser/static/small_parse_table/small_parse_table_1580.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1580.c rename to parser/static/small_parse_table/small_parse_table_1580.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1581.c b/parser/static/small_parse_table/small_parse_table_1581.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1581.c rename to parser/static/small_parse_table/small_parse_table_1581.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1582.c b/parser/static/small_parse_table/small_parse_table_1582.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1582.c rename to parser/static/small_parse_table/small_parse_table_1582.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1583.c b/parser/static/small_parse_table/small_parse_table_1583.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1583.c rename to parser/static/small_parse_table/small_parse_table_1583.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1584.c b/parser/static/small_parse_table/small_parse_table_1584.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1584.c rename to parser/static/small_parse_table/small_parse_table_1584.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1585.c b/parser/static/small_parse_table/small_parse_table_1585.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1585.c rename to parser/static/small_parse_table/small_parse_table_1585.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1586.c b/parser/static/small_parse_table/small_parse_table_1586.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1586.c rename to parser/static/small_parse_table/small_parse_table_1586.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1587.c b/parser/static/small_parse_table/small_parse_table_1587.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1587.c rename to parser/static/small_parse_table/small_parse_table_1587.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1588.c b/parser/static/small_parse_table/small_parse_table_1588.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1588.c rename to parser/static/small_parse_table/small_parse_table_1588.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1589.c b/parser/static/small_parse_table/small_parse_table_1589.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1589.c rename to parser/static/small_parse_table/small_parse_table_1589.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_159.c b/parser/static/small_parse_table/small_parse_table_159.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_159.c rename to parser/static/small_parse_table/small_parse_table_159.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1590.c b/parser/static/small_parse_table/small_parse_table_1590.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1590.c rename to parser/static/small_parse_table/small_parse_table_1590.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1591.c b/parser/static/small_parse_table/small_parse_table_1591.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1591.c rename to parser/static/small_parse_table/small_parse_table_1591.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1592.c b/parser/static/small_parse_table/small_parse_table_1592.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1592.c rename to parser/static/small_parse_table/small_parse_table_1592.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1593.c b/parser/static/small_parse_table/small_parse_table_1593.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1593.c rename to parser/static/small_parse_table/small_parse_table_1593.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1594.c b/parser/static/small_parse_table/small_parse_table_1594.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1594.c rename to parser/static/small_parse_table/small_parse_table_1594.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1595.c b/parser/static/small_parse_table/small_parse_table_1595.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1595.c rename to parser/static/small_parse_table/small_parse_table_1595.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1596.c b/parser/static/small_parse_table/small_parse_table_1596.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1596.c rename to parser/static/small_parse_table/small_parse_table_1596.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1597.c b/parser/static/small_parse_table/small_parse_table_1597.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1597.c rename to parser/static/small_parse_table/small_parse_table_1597.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1598.c b/parser/static/small_parse_table/small_parse_table_1598.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1598.c rename to parser/static/small_parse_table/small_parse_table_1598.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1599.c b/parser/static/small_parse_table/small_parse_table_1599.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1599.c rename to parser/static/small_parse_table/small_parse_table_1599.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_16.c b/parser/static/small_parse_table/small_parse_table_16.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_16.c rename to parser/static/small_parse_table/small_parse_table_16.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_160.c b/parser/static/small_parse_table/small_parse_table_160.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_160.c rename to parser/static/small_parse_table/small_parse_table_160.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1600.c b/parser/static/small_parse_table/small_parse_table_1600.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1600.c rename to parser/static/small_parse_table/small_parse_table_1600.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1601.c b/parser/static/small_parse_table/small_parse_table_1601.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1601.c rename to parser/static/small_parse_table/small_parse_table_1601.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1602.c b/parser/static/small_parse_table/small_parse_table_1602.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1602.c rename to parser/static/small_parse_table/small_parse_table_1602.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1603.c b/parser/static/small_parse_table/small_parse_table_1603.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1603.c rename to parser/static/small_parse_table/small_parse_table_1603.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1604.c b/parser/static/small_parse_table/small_parse_table_1604.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1604.c rename to parser/static/small_parse_table/small_parse_table_1604.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1605.c b/parser/static/small_parse_table/small_parse_table_1605.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1605.c rename to parser/static/small_parse_table/small_parse_table_1605.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1606.c b/parser/static/small_parse_table/small_parse_table_1606.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1606.c rename to parser/static/small_parse_table/small_parse_table_1606.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1607.c b/parser/static/small_parse_table/small_parse_table_1607.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1607.c rename to parser/static/small_parse_table/small_parse_table_1607.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1608.c b/parser/static/small_parse_table/small_parse_table_1608.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1608.c rename to parser/static/small_parse_table/small_parse_table_1608.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1609.c b/parser/static/small_parse_table/small_parse_table_1609.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1609.c rename to parser/static/small_parse_table/small_parse_table_1609.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_161.c b/parser/static/small_parse_table/small_parse_table_161.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_161.c rename to parser/static/small_parse_table/small_parse_table_161.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1610.c b/parser/static/small_parse_table/small_parse_table_1610.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1610.c rename to parser/static/small_parse_table/small_parse_table_1610.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1611.c b/parser/static/small_parse_table/small_parse_table_1611.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1611.c rename to parser/static/small_parse_table/small_parse_table_1611.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1612.c b/parser/static/small_parse_table/small_parse_table_1612.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1612.c rename to parser/static/small_parse_table/small_parse_table_1612.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1613.c b/parser/static/small_parse_table/small_parse_table_1613.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1613.c rename to parser/static/small_parse_table/small_parse_table_1613.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1614.c b/parser/static/small_parse_table/small_parse_table_1614.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1614.c rename to parser/static/small_parse_table/small_parse_table_1614.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1615.c b/parser/static/small_parse_table/small_parse_table_1615.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1615.c rename to parser/static/small_parse_table/small_parse_table_1615.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1616.c b/parser/static/small_parse_table/small_parse_table_1616.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1616.c rename to parser/static/small_parse_table/small_parse_table_1616.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1617.c b/parser/static/small_parse_table/small_parse_table_1617.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1617.c rename to parser/static/small_parse_table/small_parse_table_1617.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1618.c b/parser/static/small_parse_table/small_parse_table_1618.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1618.c rename to parser/static/small_parse_table/small_parse_table_1618.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1619.c b/parser/static/small_parse_table/small_parse_table_1619.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1619.c rename to parser/static/small_parse_table/small_parse_table_1619.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_162.c b/parser/static/small_parse_table/small_parse_table_162.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_162.c rename to parser/static/small_parse_table/small_parse_table_162.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1620.c b/parser/static/small_parse_table/small_parse_table_1620.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1620.c rename to parser/static/small_parse_table/small_parse_table_1620.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1621.c b/parser/static/small_parse_table/small_parse_table_1621.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1621.c rename to parser/static/small_parse_table/small_parse_table_1621.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1622.c b/parser/static/small_parse_table/small_parse_table_1622.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1622.c rename to parser/static/small_parse_table/small_parse_table_1622.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1623.c b/parser/static/small_parse_table/small_parse_table_1623.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1623.c rename to parser/static/small_parse_table/small_parse_table_1623.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1624.c b/parser/static/small_parse_table/small_parse_table_1624.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1624.c rename to parser/static/small_parse_table/small_parse_table_1624.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1625.c b/parser/static/small_parse_table/small_parse_table_1625.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1625.c rename to parser/static/small_parse_table/small_parse_table_1625.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1626.c b/parser/static/small_parse_table/small_parse_table_1626.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1626.c rename to parser/static/small_parse_table/small_parse_table_1626.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1627.c b/parser/static/small_parse_table/small_parse_table_1627.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1627.c rename to parser/static/small_parse_table/small_parse_table_1627.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1628.c b/parser/static/small_parse_table/small_parse_table_1628.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1628.c rename to parser/static/small_parse_table/small_parse_table_1628.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1629.c b/parser/static/small_parse_table/small_parse_table_1629.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1629.c rename to parser/static/small_parse_table/small_parse_table_1629.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_163.c b/parser/static/small_parse_table/small_parse_table_163.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_163.c rename to parser/static/small_parse_table/small_parse_table_163.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1630.c b/parser/static/small_parse_table/small_parse_table_1630.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1630.c rename to parser/static/small_parse_table/small_parse_table_1630.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1631.c b/parser/static/small_parse_table/small_parse_table_1631.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1631.c rename to parser/static/small_parse_table/small_parse_table_1631.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1632.c b/parser/static/small_parse_table/small_parse_table_1632.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1632.c rename to parser/static/small_parse_table/small_parse_table_1632.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1633.c b/parser/static/small_parse_table/small_parse_table_1633.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1633.c rename to parser/static/small_parse_table/small_parse_table_1633.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1634.c b/parser/static/small_parse_table/small_parse_table_1634.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1634.c rename to parser/static/small_parse_table/small_parse_table_1634.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1635.c b/parser/static/small_parse_table/small_parse_table_1635.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1635.c rename to parser/static/small_parse_table/small_parse_table_1635.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1636.c b/parser/static/small_parse_table/small_parse_table_1636.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1636.c rename to parser/static/small_parse_table/small_parse_table_1636.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1637.c b/parser/static/small_parse_table/small_parse_table_1637.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1637.c rename to parser/static/small_parse_table/small_parse_table_1637.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1638.c b/parser/static/small_parse_table/small_parse_table_1638.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1638.c rename to parser/static/small_parse_table/small_parse_table_1638.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1639.c b/parser/static/small_parse_table/small_parse_table_1639.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1639.c rename to parser/static/small_parse_table/small_parse_table_1639.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_164.c b/parser/static/small_parse_table/small_parse_table_164.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_164.c rename to parser/static/small_parse_table/small_parse_table_164.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1640.c b/parser/static/small_parse_table/small_parse_table_1640.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1640.c rename to parser/static/small_parse_table/small_parse_table_1640.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1641.c b/parser/static/small_parse_table/small_parse_table_1641.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1641.c rename to parser/static/small_parse_table/small_parse_table_1641.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1642.c b/parser/static/small_parse_table/small_parse_table_1642.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1642.c rename to parser/static/small_parse_table/small_parse_table_1642.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1643.c b/parser/static/small_parse_table/small_parse_table_1643.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1643.c rename to parser/static/small_parse_table/small_parse_table_1643.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1644.c b/parser/static/small_parse_table/small_parse_table_1644.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1644.c rename to parser/static/small_parse_table/small_parse_table_1644.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1645.c b/parser/static/small_parse_table/small_parse_table_1645.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1645.c rename to parser/static/small_parse_table/small_parse_table_1645.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1646.c b/parser/static/small_parse_table/small_parse_table_1646.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1646.c rename to parser/static/small_parse_table/small_parse_table_1646.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1647.c b/parser/static/small_parse_table/small_parse_table_1647.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1647.c rename to parser/static/small_parse_table/small_parse_table_1647.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1648.c b/parser/static/small_parse_table/small_parse_table_1648.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1648.c rename to parser/static/small_parse_table/small_parse_table_1648.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1649.c b/parser/static/small_parse_table/small_parse_table_1649.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1649.c rename to parser/static/small_parse_table/small_parse_table_1649.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_165.c b/parser/static/small_parse_table/small_parse_table_165.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_165.c rename to parser/static/small_parse_table/small_parse_table_165.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1650.c b/parser/static/small_parse_table/small_parse_table_1650.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1650.c rename to parser/static/small_parse_table/small_parse_table_1650.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1651.c b/parser/static/small_parse_table/small_parse_table_1651.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1651.c rename to parser/static/small_parse_table/small_parse_table_1651.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1652.c b/parser/static/small_parse_table/small_parse_table_1652.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1652.c rename to parser/static/small_parse_table/small_parse_table_1652.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1653.c b/parser/static/small_parse_table/small_parse_table_1653.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1653.c rename to parser/static/small_parse_table/small_parse_table_1653.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1654.c b/parser/static/small_parse_table/small_parse_table_1654.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1654.c rename to parser/static/small_parse_table/small_parse_table_1654.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1655.c b/parser/static/small_parse_table/small_parse_table_1655.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1655.c rename to parser/static/small_parse_table/small_parse_table_1655.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1656.c b/parser/static/small_parse_table/small_parse_table_1656.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1656.c rename to parser/static/small_parse_table/small_parse_table_1656.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1657.c b/parser/static/small_parse_table/small_parse_table_1657.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1657.c rename to parser/static/small_parse_table/small_parse_table_1657.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1658.c b/parser/static/small_parse_table/small_parse_table_1658.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1658.c rename to parser/static/small_parse_table/small_parse_table_1658.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1659.c b/parser/static/small_parse_table/small_parse_table_1659.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1659.c rename to parser/static/small_parse_table/small_parse_table_1659.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_166.c b/parser/static/small_parse_table/small_parse_table_166.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_166.c rename to parser/static/small_parse_table/small_parse_table_166.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1660.c b/parser/static/small_parse_table/small_parse_table_1660.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1660.c rename to parser/static/small_parse_table/small_parse_table_1660.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1661.c b/parser/static/small_parse_table/small_parse_table_1661.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1661.c rename to parser/static/small_parse_table/small_parse_table_1661.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1662.c b/parser/static/small_parse_table/small_parse_table_1662.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1662.c rename to parser/static/small_parse_table/small_parse_table_1662.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1663.c b/parser/static/small_parse_table/small_parse_table_1663.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1663.c rename to parser/static/small_parse_table/small_parse_table_1663.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1664.c b/parser/static/small_parse_table/small_parse_table_1664.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1664.c rename to parser/static/small_parse_table/small_parse_table_1664.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1665.c b/parser/static/small_parse_table/small_parse_table_1665.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1665.c rename to parser/static/small_parse_table/small_parse_table_1665.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1666.c b/parser/static/small_parse_table/small_parse_table_1666.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1666.c rename to parser/static/small_parse_table/small_parse_table_1666.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1667.c b/parser/static/small_parse_table/small_parse_table_1667.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1667.c rename to parser/static/small_parse_table/small_parse_table_1667.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1668.c b/parser/static/small_parse_table/small_parse_table_1668.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1668.c rename to parser/static/small_parse_table/small_parse_table_1668.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1669.c b/parser/static/small_parse_table/small_parse_table_1669.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1669.c rename to parser/static/small_parse_table/small_parse_table_1669.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_167.c b/parser/static/small_parse_table/small_parse_table_167.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_167.c rename to parser/static/small_parse_table/small_parse_table_167.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1670.c b/parser/static/small_parse_table/small_parse_table_1670.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1670.c rename to parser/static/small_parse_table/small_parse_table_1670.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1671.c b/parser/static/small_parse_table/small_parse_table_1671.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1671.c rename to parser/static/small_parse_table/small_parse_table_1671.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1672.c b/parser/static/small_parse_table/small_parse_table_1672.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1672.c rename to parser/static/small_parse_table/small_parse_table_1672.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1673.c b/parser/static/small_parse_table/small_parse_table_1673.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1673.c rename to parser/static/small_parse_table/small_parse_table_1673.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1674.c b/parser/static/small_parse_table/small_parse_table_1674.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1674.c rename to parser/static/small_parse_table/small_parse_table_1674.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1675.c b/parser/static/small_parse_table/small_parse_table_1675.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1675.c rename to parser/static/small_parse_table/small_parse_table_1675.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1676.c b/parser/static/small_parse_table/small_parse_table_1676.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1676.c rename to parser/static/small_parse_table/small_parse_table_1676.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1677.c b/parser/static/small_parse_table/small_parse_table_1677.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1677.c rename to parser/static/small_parse_table/small_parse_table_1677.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1678.c b/parser/static/small_parse_table/small_parse_table_1678.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1678.c rename to parser/static/small_parse_table/small_parse_table_1678.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1679.c b/parser/static/small_parse_table/small_parse_table_1679.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1679.c rename to parser/static/small_parse_table/small_parse_table_1679.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_168.c b/parser/static/small_parse_table/small_parse_table_168.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_168.c rename to parser/static/small_parse_table/small_parse_table_168.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1680.c b/parser/static/small_parse_table/small_parse_table_1680.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1680.c rename to parser/static/small_parse_table/small_parse_table_1680.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1681.c b/parser/static/small_parse_table/small_parse_table_1681.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1681.c rename to parser/static/small_parse_table/small_parse_table_1681.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1682.c b/parser/static/small_parse_table/small_parse_table_1682.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1682.c rename to parser/static/small_parse_table/small_parse_table_1682.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1683.c b/parser/static/small_parse_table/small_parse_table_1683.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1683.c rename to parser/static/small_parse_table/small_parse_table_1683.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1684.c b/parser/static/small_parse_table/small_parse_table_1684.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1684.c rename to parser/static/small_parse_table/small_parse_table_1684.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1685.c b/parser/static/small_parse_table/small_parse_table_1685.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1685.c rename to parser/static/small_parse_table/small_parse_table_1685.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1686.c b/parser/static/small_parse_table/small_parse_table_1686.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1686.c rename to parser/static/small_parse_table/small_parse_table_1686.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1687.c b/parser/static/small_parse_table/small_parse_table_1687.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1687.c rename to parser/static/small_parse_table/small_parse_table_1687.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1688.c b/parser/static/small_parse_table/small_parse_table_1688.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1688.c rename to parser/static/small_parse_table/small_parse_table_1688.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1689.c b/parser/static/small_parse_table/small_parse_table_1689.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1689.c rename to parser/static/small_parse_table/small_parse_table_1689.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_169.c b/parser/static/small_parse_table/small_parse_table_169.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_169.c rename to parser/static/small_parse_table/small_parse_table_169.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1690.c b/parser/static/small_parse_table/small_parse_table_1690.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1690.c rename to parser/static/small_parse_table/small_parse_table_1690.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1691.c b/parser/static/small_parse_table/small_parse_table_1691.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1691.c rename to parser/static/small_parse_table/small_parse_table_1691.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1692.c b/parser/static/small_parse_table/small_parse_table_1692.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1692.c rename to parser/static/small_parse_table/small_parse_table_1692.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1693.c b/parser/static/small_parse_table/small_parse_table_1693.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1693.c rename to parser/static/small_parse_table/small_parse_table_1693.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1694.c b/parser/static/small_parse_table/small_parse_table_1694.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1694.c rename to parser/static/small_parse_table/small_parse_table_1694.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1695.c b/parser/static/small_parse_table/small_parse_table_1695.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1695.c rename to parser/static/small_parse_table/small_parse_table_1695.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1696.c b/parser/static/small_parse_table/small_parse_table_1696.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1696.c rename to parser/static/small_parse_table/small_parse_table_1696.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1697.c b/parser/static/small_parse_table/small_parse_table_1697.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1697.c rename to parser/static/small_parse_table/small_parse_table_1697.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1698.c b/parser/static/small_parse_table/small_parse_table_1698.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1698.c rename to parser/static/small_parse_table/small_parse_table_1698.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1699.c b/parser/static/small_parse_table/small_parse_table_1699.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1699.c rename to parser/static/small_parse_table/small_parse_table_1699.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_17.c b/parser/static/small_parse_table/small_parse_table_17.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_17.c rename to parser/static/small_parse_table/small_parse_table_17.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_170.c b/parser/static/small_parse_table/small_parse_table_170.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_170.c rename to parser/static/small_parse_table/small_parse_table_170.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1700.c b/parser/static/small_parse_table/small_parse_table_1700.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1700.c rename to parser/static/small_parse_table/small_parse_table_1700.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1701.c b/parser/static/small_parse_table/small_parse_table_1701.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1701.c rename to parser/static/small_parse_table/small_parse_table_1701.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1702.c b/parser/static/small_parse_table/small_parse_table_1702.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1702.c rename to parser/static/small_parse_table/small_parse_table_1702.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1703.c b/parser/static/small_parse_table/small_parse_table_1703.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1703.c rename to parser/static/small_parse_table/small_parse_table_1703.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1704.c b/parser/static/small_parse_table/small_parse_table_1704.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1704.c rename to parser/static/small_parse_table/small_parse_table_1704.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1705.c b/parser/static/small_parse_table/small_parse_table_1705.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1705.c rename to parser/static/small_parse_table/small_parse_table_1705.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1706.c b/parser/static/small_parse_table/small_parse_table_1706.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1706.c rename to parser/static/small_parse_table/small_parse_table_1706.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1707.c b/parser/static/small_parse_table/small_parse_table_1707.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1707.c rename to parser/static/small_parse_table/small_parse_table_1707.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1708.c b/parser/static/small_parse_table/small_parse_table_1708.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1708.c rename to parser/static/small_parse_table/small_parse_table_1708.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1709.c b/parser/static/small_parse_table/small_parse_table_1709.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1709.c rename to parser/static/small_parse_table/small_parse_table_1709.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_171.c b/parser/static/small_parse_table/small_parse_table_171.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_171.c rename to parser/static/small_parse_table/small_parse_table_171.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1710.c b/parser/static/small_parse_table/small_parse_table_1710.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1710.c rename to parser/static/small_parse_table/small_parse_table_1710.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1711.c b/parser/static/small_parse_table/small_parse_table_1711.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1711.c rename to parser/static/small_parse_table/small_parse_table_1711.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1712.c b/parser/static/small_parse_table/small_parse_table_1712.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1712.c rename to parser/static/small_parse_table/small_parse_table_1712.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1713.c b/parser/static/small_parse_table/small_parse_table_1713.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1713.c rename to parser/static/small_parse_table/small_parse_table_1713.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1714.c b/parser/static/small_parse_table/small_parse_table_1714.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1714.c rename to parser/static/small_parse_table/small_parse_table_1714.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1715.c b/parser/static/small_parse_table/small_parse_table_1715.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1715.c rename to parser/static/small_parse_table/small_parse_table_1715.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1716.c b/parser/static/small_parse_table/small_parse_table_1716.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1716.c rename to parser/static/small_parse_table/small_parse_table_1716.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1717.c b/parser/static/small_parse_table/small_parse_table_1717.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1717.c rename to parser/static/small_parse_table/small_parse_table_1717.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1718.c b/parser/static/small_parse_table/small_parse_table_1718.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1718.c rename to parser/static/small_parse_table/small_parse_table_1718.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1719.c b/parser/static/small_parse_table/small_parse_table_1719.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1719.c rename to parser/static/small_parse_table/small_parse_table_1719.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_172.c b/parser/static/small_parse_table/small_parse_table_172.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_172.c rename to parser/static/small_parse_table/small_parse_table_172.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1720.c b/parser/static/small_parse_table/small_parse_table_1720.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1720.c rename to parser/static/small_parse_table/small_parse_table_1720.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1721.c b/parser/static/small_parse_table/small_parse_table_1721.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1721.c rename to parser/static/small_parse_table/small_parse_table_1721.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1722.c b/parser/static/small_parse_table/small_parse_table_1722.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1722.c rename to parser/static/small_parse_table/small_parse_table_1722.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1723.c b/parser/static/small_parse_table/small_parse_table_1723.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1723.c rename to parser/static/small_parse_table/small_parse_table_1723.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1724.c b/parser/static/small_parse_table/small_parse_table_1724.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1724.c rename to parser/static/small_parse_table/small_parse_table_1724.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1725.c b/parser/static/small_parse_table/small_parse_table_1725.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1725.c rename to parser/static/small_parse_table/small_parse_table_1725.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1726.c b/parser/static/small_parse_table/small_parse_table_1726.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1726.c rename to parser/static/small_parse_table/small_parse_table_1726.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1727.c b/parser/static/small_parse_table/small_parse_table_1727.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1727.c rename to parser/static/small_parse_table/small_parse_table_1727.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1728.c b/parser/static/small_parse_table/small_parse_table_1728.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1728.c rename to parser/static/small_parse_table/small_parse_table_1728.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1729.c b/parser/static/small_parse_table/small_parse_table_1729.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1729.c rename to parser/static/small_parse_table/small_parse_table_1729.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_173.c b/parser/static/small_parse_table/small_parse_table_173.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_173.c rename to parser/static/small_parse_table/small_parse_table_173.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1730.c b/parser/static/small_parse_table/small_parse_table_1730.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1730.c rename to parser/static/small_parse_table/small_parse_table_1730.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1731.c b/parser/static/small_parse_table/small_parse_table_1731.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1731.c rename to parser/static/small_parse_table/small_parse_table_1731.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1732.c b/parser/static/small_parse_table/small_parse_table_1732.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1732.c rename to parser/static/small_parse_table/small_parse_table_1732.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1733.c b/parser/static/small_parse_table/small_parse_table_1733.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1733.c rename to parser/static/small_parse_table/small_parse_table_1733.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1734.c b/parser/static/small_parse_table/small_parse_table_1734.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1734.c rename to parser/static/small_parse_table/small_parse_table_1734.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1735.c b/parser/static/small_parse_table/small_parse_table_1735.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1735.c rename to parser/static/small_parse_table/small_parse_table_1735.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1736.c b/parser/static/small_parse_table/small_parse_table_1736.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1736.c rename to parser/static/small_parse_table/small_parse_table_1736.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1737.c b/parser/static/small_parse_table/small_parse_table_1737.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1737.c rename to parser/static/small_parse_table/small_parse_table_1737.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1738.c b/parser/static/small_parse_table/small_parse_table_1738.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1738.c rename to parser/static/small_parse_table/small_parse_table_1738.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1739.c b/parser/static/small_parse_table/small_parse_table_1739.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1739.c rename to parser/static/small_parse_table/small_parse_table_1739.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_174.c b/parser/static/small_parse_table/small_parse_table_174.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_174.c rename to parser/static/small_parse_table/small_parse_table_174.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1740.c b/parser/static/small_parse_table/small_parse_table_1740.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1740.c rename to parser/static/small_parse_table/small_parse_table_1740.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1741.c b/parser/static/small_parse_table/small_parse_table_1741.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1741.c rename to parser/static/small_parse_table/small_parse_table_1741.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1742.c b/parser/static/small_parse_table/small_parse_table_1742.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1742.c rename to parser/static/small_parse_table/small_parse_table_1742.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1743.c b/parser/static/small_parse_table/small_parse_table_1743.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1743.c rename to parser/static/small_parse_table/small_parse_table_1743.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1744.c b/parser/static/small_parse_table/small_parse_table_1744.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1744.c rename to parser/static/small_parse_table/small_parse_table_1744.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1745.c b/parser/static/small_parse_table/small_parse_table_1745.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1745.c rename to parser/static/small_parse_table/small_parse_table_1745.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1746.c b/parser/static/small_parse_table/small_parse_table_1746.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1746.c rename to parser/static/small_parse_table/small_parse_table_1746.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1747.c b/parser/static/small_parse_table/small_parse_table_1747.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1747.c rename to parser/static/small_parse_table/small_parse_table_1747.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1748.c b/parser/static/small_parse_table/small_parse_table_1748.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1748.c rename to parser/static/small_parse_table/small_parse_table_1748.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1749.c b/parser/static/small_parse_table/small_parse_table_1749.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1749.c rename to parser/static/small_parse_table/small_parse_table_1749.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_175.c b/parser/static/small_parse_table/small_parse_table_175.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_175.c rename to parser/static/small_parse_table/small_parse_table_175.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1750.c b/parser/static/small_parse_table/small_parse_table_1750.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1750.c rename to parser/static/small_parse_table/small_parse_table_1750.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1751.c b/parser/static/small_parse_table/small_parse_table_1751.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1751.c rename to parser/static/small_parse_table/small_parse_table_1751.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1752.c b/parser/static/small_parse_table/small_parse_table_1752.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1752.c rename to parser/static/small_parse_table/small_parse_table_1752.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1753.c b/parser/static/small_parse_table/small_parse_table_1753.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1753.c rename to parser/static/small_parse_table/small_parse_table_1753.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1754.c b/parser/static/small_parse_table/small_parse_table_1754.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1754.c rename to parser/static/small_parse_table/small_parse_table_1754.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1755.c b/parser/static/small_parse_table/small_parse_table_1755.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1755.c rename to parser/static/small_parse_table/small_parse_table_1755.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1756.c b/parser/static/small_parse_table/small_parse_table_1756.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1756.c rename to parser/static/small_parse_table/small_parse_table_1756.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1757.c b/parser/static/small_parse_table/small_parse_table_1757.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1757.c rename to parser/static/small_parse_table/small_parse_table_1757.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1758.c b/parser/static/small_parse_table/small_parse_table_1758.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1758.c rename to parser/static/small_parse_table/small_parse_table_1758.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1759.c b/parser/static/small_parse_table/small_parse_table_1759.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1759.c rename to parser/static/small_parse_table/small_parse_table_1759.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_176.c b/parser/static/small_parse_table/small_parse_table_176.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_176.c rename to parser/static/small_parse_table/small_parse_table_176.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1760.c b/parser/static/small_parse_table/small_parse_table_1760.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1760.c rename to parser/static/small_parse_table/small_parse_table_1760.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1761.c b/parser/static/small_parse_table/small_parse_table_1761.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1761.c rename to parser/static/small_parse_table/small_parse_table_1761.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1762.c b/parser/static/small_parse_table/small_parse_table_1762.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1762.c rename to parser/static/small_parse_table/small_parse_table_1762.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1763.c b/parser/static/small_parse_table/small_parse_table_1763.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1763.c rename to parser/static/small_parse_table/small_parse_table_1763.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1764.c b/parser/static/small_parse_table/small_parse_table_1764.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1764.c rename to parser/static/small_parse_table/small_parse_table_1764.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1765.c b/parser/static/small_parse_table/small_parse_table_1765.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1765.c rename to parser/static/small_parse_table/small_parse_table_1765.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1766.c b/parser/static/small_parse_table/small_parse_table_1766.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1766.c rename to parser/static/small_parse_table/small_parse_table_1766.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1767.c b/parser/static/small_parse_table/small_parse_table_1767.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1767.c rename to parser/static/small_parse_table/small_parse_table_1767.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1768.c b/parser/static/small_parse_table/small_parse_table_1768.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1768.c rename to parser/static/small_parse_table/small_parse_table_1768.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1769.c b/parser/static/small_parse_table/small_parse_table_1769.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1769.c rename to parser/static/small_parse_table/small_parse_table_1769.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_177.c b/parser/static/small_parse_table/small_parse_table_177.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_177.c rename to parser/static/small_parse_table/small_parse_table_177.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1770.c b/parser/static/small_parse_table/small_parse_table_1770.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1770.c rename to parser/static/small_parse_table/small_parse_table_1770.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1771.c b/parser/static/small_parse_table/small_parse_table_1771.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1771.c rename to parser/static/small_parse_table/small_parse_table_1771.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1772.c b/parser/static/small_parse_table/small_parse_table_1772.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1772.c rename to parser/static/small_parse_table/small_parse_table_1772.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1773.c b/parser/static/small_parse_table/small_parse_table_1773.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1773.c rename to parser/static/small_parse_table/small_parse_table_1773.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1774.c b/parser/static/small_parse_table/small_parse_table_1774.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1774.c rename to parser/static/small_parse_table/small_parse_table_1774.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1775.c b/parser/static/small_parse_table/small_parse_table_1775.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1775.c rename to parser/static/small_parse_table/small_parse_table_1775.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1776.c b/parser/static/small_parse_table/small_parse_table_1776.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1776.c rename to parser/static/small_parse_table/small_parse_table_1776.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1777.c b/parser/static/small_parse_table/small_parse_table_1777.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1777.c rename to parser/static/small_parse_table/small_parse_table_1777.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1778.c b/parser/static/small_parse_table/small_parse_table_1778.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1778.c rename to parser/static/small_parse_table/small_parse_table_1778.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1779.c b/parser/static/small_parse_table/small_parse_table_1779.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1779.c rename to parser/static/small_parse_table/small_parse_table_1779.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_178.c b/parser/static/small_parse_table/small_parse_table_178.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_178.c rename to parser/static/small_parse_table/small_parse_table_178.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1780.c b/parser/static/small_parse_table/small_parse_table_1780.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1780.c rename to parser/static/small_parse_table/small_parse_table_1780.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1781.c b/parser/static/small_parse_table/small_parse_table_1781.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1781.c rename to parser/static/small_parse_table/small_parse_table_1781.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1782.c b/parser/static/small_parse_table/small_parse_table_1782.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1782.c rename to parser/static/small_parse_table/small_parse_table_1782.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1783.c b/parser/static/small_parse_table/small_parse_table_1783.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1783.c rename to parser/static/small_parse_table/small_parse_table_1783.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1784.c b/parser/static/small_parse_table/small_parse_table_1784.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1784.c rename to parser/static/small_parse_table/small_parse_table_1784.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1785.c b/parser/static/small_parse_table/small_parse_table_1785.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1785.c rename to parser/static/small_parse_table/small_parse_table_1785.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1786.c b/parser/static/small_parse_table/small_parse_table_1786.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1786.c rename to parser/static/small_parse_table/small_parse_table_1786.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1787.c b/parser/static/small_parse_table/small_parse_table_1787.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1787.c rename to parser/static/small_parse_table/small_parse_table_1787.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1788.c b/parser/static/small_parse_table/small_parse_table_1788.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1788.c rename to parser/static/small_parse_table/small_parse_table_1788.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1789.c b/parser/static/small_parse_table/small_parse_table_1789.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1789.c rename to parser/static/small_parse_table/small_parse_table_1789.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_179.c b/parser/static/small_parse_table/small_parse_table_179.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_179.c rename to parser/static/small_parse_table/small_parse_table_179.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1790.c b/parser/static/small_parse_table/small_parse_table_1790.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1790.c rename to parser/static/small_parse_table/small_parse_table_1790.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1791.c b/parser/static/small_parse_table/small_parse_table_1791.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1791.c rename to parser/static/small_parse_table/small_parse_table_1791.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1792.c b/parser/static/small_parse_table/small_parse_table_1792.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1792.c rename to parser/static/small_parse_table/small_parse_table_1792.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1793.c b/parser/static/small_parse_table/small_parse_table_1793.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1793.c rename to parser/static/small_parse_table/small_parse_table_1793.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1794.c b/parser/static/small_parse_table/small_parse_table_1794.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1794.c rename to parser/static/small_parse_table/small_parse_table_1794.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1795.c b/parser/static/small_parse_table/small_parse_table_1795.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1795.c rename to parser/static/small_parse_table/small_parse_table_1795.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1796.c b/parser/static/small_parse_table/small_parse_table_1796.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1796.c rename to parser/static/small_parse_table/small_parse_table_1796.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1797.c b/parser/static/small_parse_table/small_parse_table_1797.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1797.c rename to parser/static/small_parse_table/small_parse_table_1797.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1798.c b/parser/static/small_parse_table/small_parse_table_1798.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1798.c rename to parser/static/small_parse_table/small_parse_table_1798.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1799.c b/parser/static/small_parse_table/small_parse_table_1799.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1799.c rename to parser/static/small_parse_table/small_parse_table_1799.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_18.c b/parser/static/small_parse_table/small_parse_table_18.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_18.c rename to parser/static/small_parse_table/small_parse_table_18.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_180.c b/parser/static/small_parse_table/small_parse_table_180.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_180.c rename to parser/static/small_parse_table/small_parse_table_180.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1800.c b/parser/static/small_parse_table/small_parse_table_1800.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1800.c rename to parser/static/small_parse_table/small_parse_table_1800.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1801.c b/parser/static/small_parse_table/small_parse_table_1801.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1801.c rename to parser/static/small_parse_table/small_parse_table_1801.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1802.c b/parser/static/small_parse_table/small_parse_table_1802.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1802.c rename to parser/static/small_parse_table/small_parse_table_1802.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1803.c b/parser/static/small_parse_table/small_parse_table_1803.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1803.c rename to parser/static/small_parse_table/small_parse_table_1803.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1804.c b/parser/static/small_parse_table/small_parse_table_1804.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1804.c rename to parser/static/small_parse_table/small_parse_table_1804.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1805.c b/parser/static/small_parse_table/small_parse_table_1805.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1805.c rename to parser/static/small_parse_table/small_parse_table_1805.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1806.c b/parser/static/small_parse_table/small_parse_table_1806.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1806.c rename to parser/static/small_parse_table/small_parse_table_1806.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1807.c b/parser/static/small_parse_table/small_parse_table_1807.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1807.c rename to parser/static/small_parse_table/small_parse_table_1807.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1808.c b/parser/static/small_parse_table/small_parse_table_1808.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1808.c rename to parser/static/small_parse_table/small_parse_table_1808.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1809.c b/parser/static/small_parse_table/small_parse_table_1809.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1809.c rename to parser/static/small_parse_table/small_parse_table_1809.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_181.c b/parser/static/small_parse_table/small_parse_table_181.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_181.c rename to parser/static/small_parse_table/small_parse_table_181.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1810.c b/parser/static/small_parse_table/small_parse_table_1810.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1810.c rename to parser/static/small_parse_table/small_parse_table_1810.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1811.c b/parser/static/small_parse_table/small_parse_table_1811.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1811.c rename to parser/static/small_parse_table/small_parse_table_1811.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1812.c b/parser/static/small_parse_table/small_parse_table_1812.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1812.c rename to parser/static/small_parse_table/small_parse_table_1812.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1813.c b/parser/static/small_parse_table/small_parse_table_1813.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1813.c rename to parser/static/small_parse_table/small_parse_table_1813.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1814.c b/parser/static/small_parse_table/small_parse_table_1814.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1814.c rename to parser/static/small_parse_table/small_parse_table_1814.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1815.c b/parser/static/small_parse_table/small_parse_table_1815.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1815.c rename to parser/static/small_parse_table/small_parse_table_1815.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1816.c b/parser/static/small_parse_table/small_parse_table_1816.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1816.c rename to parser/static/small_parse_table/small_parse_table_1816.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1817.c b/parser/static/small_parse_table/small_parse_table_1817.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1817.c rename to parser/static/small_parse_table/small_parse_table_1817.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1818.c b/parser/static/small_parse_table/small_parse_table_1818.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1818.c rename to parser/static/small_parse_table/small_parse_table_1818.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1819.c b/parser/static/small_parse_table/small_parse_table_1819.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1819.c rename to parser/static/small_parse_table/small_parse_table_1819.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_182.c b/parser/static/small_parse_table/small_parse_table_182.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_182.c rename to parser/static/small_parse_table/small_parse_table_182.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1820.c b/parser/static/small_parse_table/small_parse_table_1820.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1820.c rename to parser/static/small_parse_table/small_parse_table_1820.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1821.c b/parser/static/small_parse_table/small_parse_table_1821.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1821.c rename to parser/static/small_parse_table/small_parse_table_1821.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1822.c b/parser/static/small_parse_table/small_parse_table_1822.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1822.c rename to parser/static/small_parse_table/small_parse_table_1822.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1823.c b/parser/static/small_parse_table/small_parse_table_1823.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1823.c rename to parser/static/small_parse_table/small_parse_table_1823.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1824.c b/parser/static/small_parse_table/small_parse_table_1824.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1824.c rename to parser/static/small_parse_table/small_parse_table_1824.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1825.c b/parser/static/small_parse_table/small_parse_table_1825.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1825.c rename to parser/static/small_parse_table/small_parse_table_1825.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1826.c b/parser/static/small_parse_table/small_parse_table_1826.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1826.c rename to parser/static/small_parse_table/small_parse_table_1826.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1827.c b/parser/static/small_parse_table/small_parse_table_1827.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1827.c rename to parser/static/small_parse_table/small_parse_table_1827.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1828.c b/parser/static/small_parse_table/small_parse_table_1828.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1828.c rename to parser/static/small_parse_table/small_parse_table_1828.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1829.c b/parser/static/small_parse_table/small_parse_table_1829.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1829.c rename to parser/static/small_parse_table/small_parse_table_1829.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_183.c b/parser/static/small_parse_table/small_parse_table_183.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_183.c rename to parser/static/small_parse_table/small_parse_table_183.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1830.c b/parser/static/small_parse_table/small_parse_table_1830.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1830.c rename to parser/static/small_parse_table/small_parse_table_1830.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1831.c b/parser/static/small_parse_table/small_parse_table_1831.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1831.c rename to parser/static/small_parse_table/small_parse_table_1831.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1832.c b/parser/static/small_parse_table/small_parse_table_1832.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1832.c rename to parser/static/small_parse_table/small_parse_table_1832.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1833.c b/parser/static/small_parse_table/small_parse_table_1833.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1833.c rename to parser/static/small_parse_table/small_parse_table_1833.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1834.c b/parser/static/small_parse_table/small_parse_table_1834.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1834.c rename to parser/static/small_parse_table/small_parse_table_1834.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1835.c b/parser/static/small_parse_table/small_parse_table_1835.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1835.c rename to parser/static/small_parse_table/small_parse_table_1835.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1836.c b/parser/static/small_parse_table/small_parse_table_1836.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1836.c rename to parser/static/small_parse_table/small_parse_table_1836.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1837.c b/parser/static/small_parse_table/small_parse_table_1837.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1837.c rename to parser/static/small_parse_table/small_parse_table_1837.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1838.c b/parser/static/small_parse_table/small_parse_table_1838.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1838.c rename to parser/static/small_parse_table/small_parse_table_1838.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1839.c b/parser/static/small_parse_table/small_parse_table_1839.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1839.c rename to parser/static/small_parse_table/small_parse_table_1839.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_184.c b/parser/static/small_parse_table/small_parse_table_184.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_184.c rename to parser/static/small_parse_table/small_parse_table_184.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1840.c b/parser/static/small_parse_table/small_parse_table_1840.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1840.c rename to parser/static/small_parse_table/small_parse_table_1840.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1841.c b/parser/static/small_parse_table/small_parse_table_1841.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1841.c rename to parser/static/small_parse_table/small_parse_table_1841.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1842.c b/parser/static/small_parse_table/small_parse_table_1842.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1842.c rename to parser/static/small_parse_table/small_parse_table_1842.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1843.c b/parser/static/small_parse_table/small_parse_table_1843.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1843.c rename to parser/static/small_parse_table/small_parse_table_1843.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1844.c b/parser/static/small_parse_table/small_parse_table_1844.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1844.c rename to parser/static/small_parse_table/small_parse_table_1844.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1845.c b/parser/static/small_parse_table/small_parse_table_1845.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1845.c rename to parser/static/small_parse_table/small_parse_table_1845.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1846.c b/parser/static/small_parse_table/small_parse_table_1846.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1846.c rename to parser/static/small_parse_table/small_parse_table_1846.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1847.c b/parser/static/small_parse_table/small_parse_table_1847.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1847.c rename to parser/static/small_parse_table/small_parse_table_1847.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1848.c b/parser/static/small_parse_table/small_parse_table_1848.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1848.c rename to parser/static/small_parse_table/small_parse_table_1848.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1849.c b/parser/static/small_parse_table/small_parse_table_1849.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1849.c rename to parser/static/small_parse_table/small_parse_table_1849.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_185.c b/parser/static/small_parse_table/small_parse_table_185.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_185.c rename to parser/static/small_parse_table/small_parse_table_185.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1850.c b/parser/static/small_parse_table/small_parse_table_1850.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1850.c rename to parser/static/small_parse_table/small_parse_table_1850.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1851.c b/parser/static/small_parse_table/small_parse_table_1851.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1851.c rename to parser/static/small_parse_table/small_parse_table_1851.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1852.c b/parser/static/small_parse_table/small_parse_table_1852.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1852.c rename to parser/static/small_parse_table/small_parse_table_1852.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1853.c b/parser/static/small_parse_table/small_parse_table_1853.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1853.c rename to parser/static/small_parse_table/small_parse_table_1853.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1854.c b/parser/static/small_parse_table/small_parse_table_1854.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1854.c rename to parser/static/small_parse_table/small_parse_table_1854.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1855.c b/parser/static/small_parse_table/small_parse_table_1855.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1855.c rename to parser/static/small_parse_table/small_parse_table_1855.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1856.c b/parser/static/small_parse_table/small_parse_table_1856.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1856.c rename to parser/static/small_parse_table/small_parse_table_1856.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1857.c b/parser/static/small_parse_table/small_parse_table_1857.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1857.c rename to parser/static/small_parse_table/small_parse_table_1857.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1858.c b/parser/static/small_parse_table/small_parse_table_1858.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1858.c rename to parser/static/small_parse_table/small_parse_table_1858.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1859.c b/parser/static/small_parse_table/small_parse_table_1859.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1859.c rename to parser/static/small_parse_table/small_parse_table_1859.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_186.c b/parser/static/small_parse_table/small_parse_table_186.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_186.c rename to parser/static/small_parse_table/small_parse_table_186.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1860.c b/parser/static/small_parse_table/small_parse_table_1860.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1860.c rename to parser/static/small_parse_table/small_parse_table_1860.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1861.c b/parser/static/small_parse_table/small_parse_table_1861.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1861.c rename to parser/static/small_parse_table/small_parse_table_1861.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1862.c b/parser/static/small_parse_table/small_parse_table_1862.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1862.c rename to parser/static/small_parse_table/small_parse_table_1862.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1863.c b/parser/static/small_parse_table/small_parse_table_1863.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1863.c rename to parser/static/small_parse_table/small_parse_table_1863.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1864.c b/parser/static/small_parse_table/small_parse_table_1864.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1864.c rename to parser/static/small_parse_table/small_parse_table_1864.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1865.c b/parser/static/small_parse_table/small_parse_table_1865.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1865.c rename to parser/static/small_parse_table/small_parse_table_1865.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1866.c b/parser/static/small_parse_table/small_parse_table_1866.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1866.c rename to parser/static/small_parse_table/small_parse_table_1866.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1867.c b/parser/static/small_parse_table/small_parse_table_1867.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1867.c rename to parser/static/small_parse_table/small_parse_table_1867.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1868.c b/parser/static/small_parse_table/small_parse_table_1868.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1868.c rename to parser/static/small_parse_table/small_parse_table_1868.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1869.c b/parser/static/small_parse_table/small_parse_table_1869.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1869.c rename to parser/static/small_parse_table/small_parse_table_1869.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_187.c b/parser/static/small_parse_table/small_parse_table_187.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_187.c rename to parser/static/small_parse_table/small_parse_table_187.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1870.c b/parser/static/small_parse_table/small_parse_table_1870.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1870.c rename to parser/static/small_parse_table/small_parse_table_1870.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1871.c b/parser/static/small_parse_table/small_parse_table_1871.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1871.c rename to parser/static/small_parse_table/small_parse_table_1871.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1872.c b/parser/static/small_parse_table/small_parse_table_1872.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1872.c rename to parser/static/small_parse_table/small_parse_table_1872.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1873.c b/parser/static/small_parse_table/small_parse_table_1873.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1873.c rename to parser/static/small_parse_table/small_parse_table_1873.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1874.c b/parser/static/small_parse_table/small_parse_table_1874.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1874.c rename to parser/static/small_parse_table/small_parse_table_1874.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1875.c b/parser/static/small_parse_table/small_parse_table_1875.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1875.c rename to parser/static/small_parse_table/small_parse_table_1875.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1876.c b/parser/static/small_parse_table/small_parse_table_1876.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1876.c rename to parser/static/small_parse_table/small_parse_table_1876.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1877.c b/parser/static/small_parse_table/small_parse_table_1877.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1877.c rename to parser/static/small_parse_table/small_parse_table_1877.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1878.c b/parser/static/small_parse_table/small_parse_table_1878.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1878.c rename to parser/static/small_parse_table/small_parse_table_1878.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1879.c b/parser/static/small_parse_table/small_parse_table_1879.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1879.c rename to parser/static/small_parse_table/small_parse_table_1879.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_188.c b/parser/static/small_parse_table/small_parse_table_188.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_188.c rename to parser/static/small_parse_table/small_parse_table_188.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1880.c b/parser/static/small_parse_table/small_parse_table_1880.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1880.c rename to parser/static/small_parse_table/small_parse_table_1880.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1881.c b/parser/static/small_parse_table/small_parse_table_1881.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1881.c rename to parser/static/small_parse_table/small_parse_table_1881.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1882.c b/parser/static/small_parse_table/small_parse_table_1882.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1882.c rename to parser/static/small_parse_table/small_parse_table_1882.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1883.c b/parser/static/small_parse_table/small_parse_table_1883.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1883.c rename to parser/static/small_parse_table/small_parse_table_1883.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1884.c b/parser/static/small_parse_table/small_parse_table_1884.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1884.c rename to parser/static/small_parse_table/small_parse_table_1884.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1885.c b/parser/static/small_parse_table/small_parse_table_1885.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1885.c rename to parser/static/small_parse_table/small_parse_table_1885.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1886.c b/parser/static/small_parse_table/small_parse_table_1886.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1886.c rename to parser/static/small_parse_table/small_parse_table_1886.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1887.c b/parser/static/small_parse_table/small_parse_table_1887.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1887.c rename to parser/static/small_parse_table/small_parse_table_1887.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1888.c b/parser/static/small_parse_table/small_parse_table_1888.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1888.c rename to parser/static/small_parse_table/small_parse_table_1888.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1889.c b/parser/static/small_parse_table/small_parse_table_1889.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1889.c rename to parser/static/small_parse_table/small_parse_table_1889.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_189.c b/parser/static/small_parse_table/small_parse_table_189.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_189.c rename to parser/static/small_parse_table/small_parse_table_189.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1890.c b/parser/static/small_parse_table/small_parse_table_1890.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1890.c rename to parser/static/small_parse_table/small_parse_table_1890.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1891.c b/parser/static/small_parse_table/small_parse_table_1891.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1891.c rename to parser/static/small_parse_table/small_parse_table_1891.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1892.c b/parser/static/small_parse_table/small_parse_table_1892.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1892.c rename to parser/static/small_parse_table/small_parse_table_1892.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1893.c b/parser/static/small_parse_table/small_parse_table_1893.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1893.c rename to parser/static/small_parse_table/small_parse_table_1893.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1894.c b/parser/static/small_parse_table/small_parse_table_1894.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1894.c rename to parser/static/small_parse_table/small_parse_table_1894.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1895.c b/parser/static/small_parse_table/small_parse_table_1895.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1895.c rename to parser/static/small_parse_table/small_parse_table_1895.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1896.c b/parser/static/small_parse_table/small_parse_table_1896.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1896.c rename to parser/static/small_parse_table/small_parse_table_1896.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1897.c b/parser/static/small_parse_table/small_parse_table_1897.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1897.c rename to parser/static/small_parse_table/small_parse_table_1897.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1898.c b/parser/static/small_parse_table/small_parse_table_1898.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1898.c rename to parser/static/small_parse_table/small_parse_table_1898.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1899.c b/parser/static/small_parse_table/small_parse_table_1899.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1899.c rename to parser/static/small_parse_table/small_parse_table_1899.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_19.c b/parser/static/small_parse_table/small_parse_table_19.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_19.c rename to parser/static/small_parse_table/small_parse_table_19.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_190.c b/parser/static/small_parse_table/small_parse_table_190.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_190.c rename to parser/static/small_parse_table/small_parse_table_190.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1900.c b/parser/static/small_parse_table/small_parse_table_1900.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1900.c rename to parser/static/small_parse_table/small_parse_table_1900.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1901.c b/parser/static/small_parse_table/small_parse_table_1901.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1901.c rename to parser/static/small_parse_table/small_parse_table_1901.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1902.c b/parser/static/small_parse_table/small_parse_table_1902.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1902.c rename to parser/static/small_parse_table/small_parse_table_1902.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1903.c b/parser/static/small_parse_table/small_parse_table_1903.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1903.c rename to parser/static/small_parse_table/small_parse_table_1903.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1904.c b/parser/static/small_parse_table/small_parse_table_1904.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1904.c rename to parser/static/small_parse_table/small_parse_table_1904.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1905.c b/parser/static/small_parse_table/small_parse_table_1905.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1905.c rename to parser/static/small_parse_table/small_parse_table_1905.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1906.c b/parser/static/small_parse_table/small_parse_table_1906.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1906.c rename to parser/static/small_parse_table/small_parse_table_1906.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1907.c b/parser/static/small_parse_table/small_parse_table_1907.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1907.c rename to parser/static/small_parse_table/small_parse_table_1907.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1908.c b/parser/static/small_parse_table/small_parse_table_1908.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1908.c rename to parser/static/small_parse_table/small_parse_table_1908.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1909.c b/parser/static/small_parse_table/small_parse_table_1909.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1909.c rename to parser/static/small_parse_table/small_parse_table_1909.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_191.c b/parser/static/small_parse_table/small_parse_table_191.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_191.c rename to parser/static/small_parse_table/small_parse_table_191.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1910.c b/parser/static/small_parse_table/small_parse_table_1910.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1910.c rename to parser/static/small_parse_table/small_parse_table_1910.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1911.c b/parser/static/small_parse_table/small_parse_table_1911.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1911.c rename to parser/static/small_parse_table/small_parse_table_1911.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1912.c b/parser/static/small_parse_table/small_parse_table_1912.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1912.c rename to parser/static/small_parse_table/small_parse_table_1912.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1913.c b/parser/static/small_parse_table/small_parse_table_1913.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1913.c rename to parser/static/small_parse_table/small_parse_table_1913.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1914.c b/parser/static/small_parse_table/small_parse_table_1914.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1914.c rename to parser/static/small_parse_table/small_parse_table_1914.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1915.c b/parser/static/small_parse_table/small_parse_table_1915.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1915.c rename to parser/static/small_parse_table/small_parse_table_1915.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1916.c b/parser/static/small_parse_table/small_parse_table_1916.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1916.c rename to parser/static/small_parse_table/small_parse_table_1916.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1917.c b/parser/static/small_parse_table/small_parse_table_1917.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1917.c rename to parser/static/small_parse_table/small_parse_table_1917.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1918.c b/parser/static/small_parse_table/small_parse_table_1918.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1918.c rename to parser/static/small_parse_table/small_parse_table_1918.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1919.c b/parser/static/small_parse_table/small_parse_table_1919.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1919.c rename to parser/static/small_parse_table/small_parse_table_1919.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_192.c b/parser/static/small_parse_table/small_parse_table_192.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_192.c rename to parser/static/small_parse_table/small_parse_table_192.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1920.c b/parser/static/small_parse_table/small_parse_table_1920.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1920.c rename to parser/static/small_parse_table/small_parse_table_1920.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1921.c b/parser/static/small_parse_table/small_parse_table_1921.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1921.c rename to parser/static/small_parse_table/small_parse_table_1921.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1922.c b/parser/static/small_parse_table/small_parse_table_1922.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1922.c rename to parser/static/small_parse_table/small_parse_table_1922.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1923.c b/parser/static/small_parse_table/small_parse_table_1923.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1923.c rename to parser/static/small_parse_table/small_parse_table_1923.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1924.c b/parser/static/small_parse_table/small_parse_table_1924.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1924.c rename to parser/static/small_parse_table/small_parse_table_1924.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1925.c b/parser/static/small_parse_table/small_parse_table_1925.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1925.c rename to parser/static/small_parse_table/small_parse_table_1925.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1926.c b/parser/static/small_parse_table/small_parse_table_1926.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1926.c rename to parser/static/small_parse_table/small_parse_table_1926.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1927.c b/parser/static/small_parse_table/small_parse_table_1927.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1927.c rename to parser/static/small_parse_table/small_parse_table_1927.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1928.c b/parser/static/small_parse_table/small_parse_table_1928.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1928.c rename to parser/static/small_parse_table/small_parse_table_1928.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1929.c b/parser/static/small_parse_table/small_parse_table_1929.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1929.c rename to parser/static/small_parse_table/small_parse_table_1929.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_193.c b/parser/static/small_parse_table/small_parse_table_193.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_193.c rename to parser/static/small_parse_table/small_parse_table_193.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1930.c b/parser/static/small_parse_table/small_parse_table_1930.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1930.c rename to parser/static/small_parse_table/small_parse_table_1930.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1931.c b/parser/static/small_parse_table/small_parse_table_1931.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1931.c rename to parser/static/small_parse_table/small_parse_table_1931.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1932.c b/parser/static/small_parse_table/small_parse_table_1932.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1932.c rename to parser/static/small_parse_table/small_parse_table_1932.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1933.c b/parser/static/small_parse_table/small_parse_table_1933.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1933.c rename to parser/static/small_parse_table/small_parse_table_1933.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1934.c b/parser/static/small_parse_table/small_parse_table_1934.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1934.c rename to parser/static/small_parse_table/small_parse_table_1934.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1935.c b/parser/static/small_parse_table/small_parse_table_1935.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1935.c rename to parser/static/small_parse_table/small_parse_table_1935.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1936.c b/parser/static/small_parse_table/small_parse_table_1936.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1936.c rename to parser/static/small_parse_table/small_parse_table_1936.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1937.c b/parser/static/small_parse_table/small_parse_table_1937.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1937.c rename to parser/static/small_parse_table/small_parse_table_1937.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1938.c b/parser/static/small_parse_table/small_parse_table_1938.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1938.c rename to parser/static/small_parse_table/small_parse_table_1938.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1939.c b/parser/static/small_parse_table/small_parse_table_1939.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1939.c rename to parser/static/small_parse_table/small_parse_table_1939.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_194.c b/parser/static/small_parse_table/small_parse_table_194.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_194.c rename to parser/static/small_parse_table/small_parse_table_194.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1940.c b/parser/static/small_parse_table/small_parse_table_1940.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1940.c rename to parser/static/small_parse_table/small_parse_table_1940.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1941.c b/parser/static/small_parse_table/small_parse_table_1941.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1941.c rename to parser/static/small_parse_table/small_parse_table_1941.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1942.c b/parser/static/small_parse_table/small_parse_table_1942.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1942.c rename to parser/static/small_parse_table/small_parse_table_1942.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1943.c b/parser/static/small_parse_table/small_parse_table_1943.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1943.c rename to parser/static/small_parse_table/small_parse_table_1943.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1944.c b/parser/static/small_parse_table/small_parse_table_1944.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1944.c rename to parser/static/small_parse_table/small_parse_table_1944.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1945.c b/parser/static/small_parse_table/small_parse_table_1945.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1945.c rename to parser/static/small_parse_table/small_parse_table_1945.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1946.c b/parser/static/small_parse_table/small_parse_table_1946.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1946.c rename to parser/static/small_parse_table/small_parse_table_1946.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1947.c b/parser/static/small_parse_table/small_parse_table_1947.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1947.c rename to parser/static/small_parse_table/small_parse_table_1947.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1948.c b/parser/static/small_parse_table/small_parse_table_1948.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1948.c rename to parser/static/small_parse_table/small_parse_table_1948.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1949.c b/parser/static/small_parse_table/small_parse_table_1949.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1949.c rename to parser/static/small_parse_table/small_parse_table_1949.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_195.c b/parser/static/small_parse_table/small_parse_table_195.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_195.c rename to parser/static/small_parse_table/small_parse_table_195.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1950.c b/parser/static/small_parse_table/small_parse_table_1950.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1950.c rename to parser/static/small_parse_table/small_parse_table_1950.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1951.c b/parser/static/small_parse_table/small_parse_table_1951.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1951.c rename to parser/static/small_parse_table/small_parse_table_1951.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1952.c b/parser/static/small_parse_table/small_parse_table_1952.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1952.c rename to parser/static/small_parse_table/small_parse_table_1952.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1953.c b/parser/static/small_parse_table/small_parse_table_1953.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1953.c rename to parser/static/small_parse_table/small_parse_table_1953.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1954.c b/parser/static/small_parse_table/small_parse_table_1954.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1954.c rename to parser/static/small_parse_table/small_parse_table_1954.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1955.c b/parser/static/small_parse_table/small_parse_table_1955.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1955.c rename to parser/static/small_parse_table/small_parse_table_1955.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1956.c b/parser/static/small_parse_table/small_parse_table_1956.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1956.c rename to parser/static/small_parse_table/small_parse_table_1956.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1957.c b/parser/static/small_parse_table/small_parse_table_1957.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1957.c rename to parser/static/small_parse_table/small_parse_table_1957.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1958.c b/parser/static/small_parse_table/small_parse_table_1958.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1958.c rename to parser/static/small_parse_table/small_parse_table_1958.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1959.c b/parser/static/small_parse_table/small_parse_table_1959.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1959.c rename to parser/static/small_parse_table/small_parse_table_1959.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_196.c b/parser/static/small_parse_table/small_parse_table_196.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_196.c rename to parser/static/small_parse_table/small_parse_table_196.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1960.c b/parser/static/small_parse_table/small_parse_table_1960.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1960.c rename to parser/static/small_parse_table/small_parse_table_1960.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1961.c b/parser/static/small_parse_table/small_parse_table_1961.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1961.c rename to parser/static/small_parse_table/small_parse_table_1961.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1962.c b/parser/static/small_parse_table/small_parse_table_1962.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1962.c rename to parser/static/small_parse_table/small_parse_table_1962.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1963.c b/parser/static/small_parse_table/small_parse_table_1963.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1963.c rename to parser/static/small_parse_table/small_parse_table_1963.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1964.c b/parser/static/small_parse_table/small_parse_table_1964.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1964.c rename to parser/static/small_parse_table/small_parse_table_1964.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1965.c b/parser/static/small_parse_table/small_parse_table_1965.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1965.c rename to parser/static/small_parse_table/small_parse_table_1965.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1966.c b/parser/static/small_parse_table/small_parse_table_1966.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1966.c rename to parser/static/small_parse_table/small_parse_table_1966.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1967.c b/parser/static/small_parse_table/small_parse_table_1967.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1967.c rename to parser/static/small_parse_table/small_parse_table_1967.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1968.c b/parser/static/small_parse_table/small_parse_table_1968.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1968.c rename to parser/static/small_parse_table/small_parse_table_1968.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1969.c b/parser/static/small_parse_table/small_parse_table_1969.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1969.c rename to parser/static/small_parse_table/small_parse_table_1969.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_197.c b/parser/static/small_parse_table/small_parse_table_197.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_197.c rename to parser/static/small_parse_table/small_parse_table_197.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1970.c b/parser/static/small_parse_table/small_parse_table_1970.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1970.c rename to parser/static/small_parse_table/small_parse_table_1970.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1971.c b/parser/static/small_parse_table/small_parse_table_1971.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1971.c rename to parser/static/small_parse_table/small_parse_table_1971.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1972.c b/parser/static/small_parse_table/small_parse_table_1972.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1972.c rename to parser/static/small_parse_table/small_parse_table_1972.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1973.c b/parser/static/small_parse_table/small_parse_table_1973.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1973.c rename to parser/static/small_parse_table/small_parse_table_1973.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1974.c b/parser/static/small_parse_table/small_parse_table_1974.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1974.c rename to parser/static/small_parse_table/small_parse_table_1974.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1975.c b/parser/static/small_parse_table/small_parse_table_1975.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1975.c rename to parser/static/small_parse_table/small_parse_table_1975.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1976.c b/parser/static/small_parse_table/small_parse_table_1976.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1976.c rename to parser/static/small_parse_table/small_parse_table_1976.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1977.c b/parser/static/small_parse_table/small_parse_table_1977.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1977.c rename to parser/static/small_parse_table/small_parse_table_1977.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1978.c b/parser/static/small_parse_table/small_parse_table_1978.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1978.c rename to parser/static/small_parse_table/small_parse_table_1978.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1979.c b/parser/static/small_parse_table/small_parse_table_1979.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1979.c rename to parser/static/small_parse_table/small_parse_table_1979.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_198.c b/parser/static/small_parse_table/small_parse_table_198.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_198.c rename to parser/static/small_parse_table/small_parse_table_198.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1980.c b/parser/static/small_parse_table/small_parse_table_1980.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1980.c rename to parser/static/small_parse_table/small_parse_table_1980.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1981.c b/parser/static/small_parse_table/small_parse_table_1981.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1981.c rename to parser/static/small_parse_table/small_parse_table_1981.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1982.c b/parser/static/small_parse_table/small_parse_table_1982.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1982.c rename to parser/static/small_parse_table/small_parse_table_1982.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1983.c b/parser/static/small_parse_table/small_parse_table_1983.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1983.c rename to parser/static/small_parse_table/small_parse_table_1983.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1984.c b/parser/static/small_parse_table/small_parse_table_1984.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1984.c rename to parser/static/small_parse_table/small_parse_table_1984.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1985.c b/parser/static/small_parse_table/small_parse_table_1985.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1985.c rename to parser/static/small_parse_table/small_parse_table_1985.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1986.c b/parser/static/small_parse_table/small_parse_table_1986.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1986.c rename to parser/static/small_parse_table/small_parse_table_1986.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1987.c b/parser/static/small_parse_table/small_parse_table_1987.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1987.c rename to parser/static/small_parse_table/small_parse_table_1987.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1988.c b/parser/static/small_parse_table/small_parse_table_1988.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1988.c rename to parser/static/small_parse_table/small_parse_table_1988.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1989.c b/parser/static/small_parse_table/small_parse_table_1989.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1989.c rename to parser/static/small_parse_table/small_parse_table_1989.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_199.c b/parser/static/small_parse_table/small_parse_table_199.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_199.c rename to parser/static/small_parse_table/small_parse_table_199.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1990.c b/parser/static/small_parse_table/small_parse_table_1990.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1990.c rename to parser/static/small_parse_table/small_parse_table_1990.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1991.c b/parser/static/small_parse_table/small_parse_table_1991.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1991.c rename to parser/static/small_parse_table/small_parse_table_1991.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1992.c b/parser/static/small_parse_table/small_parse_table_1992.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1992.c rename to parser/static/small_parse_table/small_parse_table_1992.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1993.c b/parser/static/small_parse_table/small_parse_table_1993.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1993.c rename to parser/static/small_parse_table/small_parse_table_1993.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1994.c b/parser/static/small_parse_table/small_parse_table_1994.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1994.c rename to parser/static/small_parse_table/small_parse_table_1994.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1995.c b/parser/static/small_parse_table/small_parse_table_1995.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1995.c rename to parser/static/small_parse_table/small_parse_table_1995.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1996.c b/parser/static/small_parse_table/small_parse_table_1996.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1996.c rename to parser/static/small_parse_table/small_parse_table_1996.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1997.c b/parser/static/small_parse_table/small_parse_table_1997.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1997.c rename to parser/static/small_parse_table/small_parse_table_1997.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1998.c b/parser/static/small_parse_table/small_parse_table_1998.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1998.c rename to parser/static/small_parse_table/small_parse_table_1998.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_1999.c b/parser/static/small_parse_table/small_parse_table_1999.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_1999.c rename to parser/static/small_parse_table/small_parse_table_1999.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2.c b/parser/static/small_parse_table/small_parse_table_2.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2.c rename to parser/static/small_parse_table/small_parse_table_2.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_20.c b/parser/static/small_parse_table/small_parse_table_20.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_20.c rename to parser/static/small_parse_table/small_parse_table_20.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_200.c b/parser/static/small_parse_table/small_parse_table_200.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_200.c rename to parser/static/small_parse_table/small_parse_table_200.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2000.c b/parser/static/small_parse_table/small_parse_table_2000.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2000.c rename to parser/static/small_parse_table/small_parse_table_2000.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2001.c b/parser/static/small_parse_table/small_parse_table_2001.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2001.c rename to parser/static/small_parse_table/small_parse_table_2001.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2002.c b/parser/static/small_parse_table/small_parse_table_2002.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2002.c rename to parser/static/small_parse_table/small_parse_table_2002.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2003.c b/parser/static/small_parse_table/small_parse_table_2003.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2003.c rename to parser/static/small_parse_table/small_parse_table_2003.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2004.c b/parser/static/small_parse_table/small_parse_table_2004.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2004.c rename to parser/static/small_parse_table/small_parse_table_2004.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2005.c b/parser/static/small_parse_table/small_parse_table_2005.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2005.c rename to parser/static/small_parse_table/small_parse_table_2005.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2006.c b/parser/static/small_parse_table/small_parse_table_2006.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2006.c rename to parser/static/small_parse_table/small_parse_table_2006.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2007.c b/parser/static/small_parse_table/small_parse_table_2007.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2007.c rename to parser/static/small_parse_table/small_parse_table_2007.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2008.c b/parser/static/small_parse_table/small_parse_table_2008.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2008.c rename to parser/static/small_parse_table/small_parse_table_2008.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2009.c b/parser/static/small_parse_table/small_parse_table_2009.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2009.c rename to parser/static/small_parse_table/small_parse_table_2009.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_201.c b/parser/static/small_parse_table/small_parse_table_201.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_201.c rename to parser/static/small_parse_table/small_parse_table_201.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2010.c b/parser/static/small_parse_table/small_parse_table_2010.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2010.c rename to parser/static/small_parse_table/small_parse_table_2010.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2011.c b/parser/static/small_parse_table/small_parse_table_2011.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2011.c rename to parser/static/small_parse_table/small_parse_table_2011.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2012.c b/parser/static/small_parse_table/small_parse_table_2012.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2012.c rename to parser/static/small_parse_table/small_parse_table_2012.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2013.c b/parser/static/small_parse_table/small_parse_table_2013.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2013.c rename to parser/static/small_parse_table/small_parse_table_2013.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2014.c b/parser/static/small_parse_table/small_parse_table_2014.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2014.c rename to parser/static/small_parse_table/small_parse_table_2014.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2015.c b/parser/static/small_parse_table/small_parse_table_2015.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2015.c rename to parser/static/small_parse_table/small_parse_table_2015.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2016.c b/parser/static/small_parse_table/small_parse_table_2016.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2016.c rename to parser/static/small_parse_table/small_parse_table_2016.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2017.c b/parser/static/small_parse_table/small_parse_table_2017.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2017.c rename to parser/static/small_parse_table/small_parse_table_2017.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2018.c b/parser/static/small_parse_table/small_parse_table_2018.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2018.c rename to parser/static/small_parse_table/small_parse_table_2018.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2019.c b/parser/static/small_parse_table/small_parse_table_2019.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2019.c rename to parser/static/small_parse_table/small_parse_table_2019.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_202.c b/parser/static/small_parse_table/small_parse_table_202.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_202.c rename to parser/static/small_parse_table/small_parse_table_202.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2020.c b/parser/static/small_parse_table/small_parse_table_2020.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2020.c rename to parser/static/small_parse_table/small_parse_table_2020.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2021.c b/parser/static/small_parse_table/small_parse_table_2021.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2021.c rename to parser/static/small_parse_table/small_parse_table_2021.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2022.c b/parser/static/small_parse_table/small_parse_table_2022.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2022.c rename to parser/static/small_parse_table/small_parse_table_2022.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2023.c b/parser/static/small_parse_table/small_parse_table_2023.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2023.c rename to parser/static/small_parse_table/small_parse_table_2023.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2024.c b/parser/static/small_parse_table/small_parse_table_2024.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2024.c rename to parser/static/small_parse_table/small_parse_table_2024.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2025.c b/parser/static/small_parse_table/small_parse_table_2025.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2025.c rename to parser/static/small_parse_table/small_parse_table_2025.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2026.c b/parser/static/small_parse_table/small_parse_table_2026.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2026.c rename to parser/static/small_parse_table/small_parse_table_2026.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2027.c b/parser/static/small_parse_table/small_parse_table_2027.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2027.c rename to parser/static/small_parse_table/small_parse_table_2027.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2028.c b/parser/static/small_parse_table/small_parse_table_2028.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2028.c rename to parser/static/small_parse_table/small_parse_table_2028.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2029.c b/parser/static/small_parse_table/small_parse_table_2029.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2029.c rename to parser/static/small_parse_table/small_parse_table_2029.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_203.c b/parser/static/small_parse_table/small_parse_table_203.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_203.c rename to parser/static/small_parse_table/small_parse_table_203.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2030.c b/parser/static/small_parse_table/small_parse_table_2030.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2030.c rename to parser/static/small_parse_table/small_parse_table_2030.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2031.c b/parser/static/small_parse_table/small_parse_table_2031.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2031.c rename to parser/static/small_parse_table/small_parse_table_2031.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2032.c b/parser/static/small_parse_table/small_parse_table_2032.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2032.c rename to parser/static/small_parse_table/small_parse_table_2032.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2033.c b/parser/static/small_parse_table/small_parse_table_2033.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2033.c rename to parser/static/small_parse_table/small_parse_table_2033.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2034.c b/parser/static/small_parse_table/small_parse_table_2034.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2034.c rename to parser/static/small_parse_table/small_parse_table_2034.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2035.c b/parser/static/small_parse_table/small_parse_table_2035.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2035.c rename to parser/static/small_parse_table/small_parse_table_2035.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2036.c b/parser/static/small_parse_table/small_parse_table_2036.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2036.c rename to parser/static/small_parse_table/small_parse_table_2036.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2037.c b/parser/static/small_parse_table/small_parse_table_2037.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2037.c rename to parser/static/small_parse_table/small_parse_table_2037.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2038.c b/parser/static/small_parse_table/small_parse_table_2038.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2038.c rename to parser/static/small_parse_table/small_parse_table_2038.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2039.c b/parser/static/small_parse_table/small_parse_table_2039.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2039.c rename to parser/static/small_parse_table/small_parse_table_2039.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_204.c b/parser/static/small_parse_table/small_parse_table_204.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_204.c rename to parser/static/small_parse_table/small_parse_table_204.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2040.c b/parser/static/small_parse_table/small_parse_table_2040.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2040.c rename to parser/static/small_parse_table/small_parse_table_2040.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2041.c b/parser/static/small_parse_table/small_parse_table_2041.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2041.c rename to parser/static/small_parse_table/small_parse_table_2041.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2042.c b/parser/static/small_parse_table/small_parse_table_2042.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2042.c rename to parser/static/small_parse_table/small_parse_table_2042.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2043.c b/parser/static/small_parse_table/small_parse_table_2043.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2043.c rename to parser/static/small_parse_table/small_parse_table_2043.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2044.c b/parser/static/small_parse_table/small_parse_table_2044.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2044.c rename to parser/static/small_parse_table/small_parse_table_2044.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2045.c b/parser/static/small_parse_table/small_parse_table_2045.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2045.c rename to parser/static/small_parse_table/small_parse_table_2045.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2046.c b/parser/static/small_parse_table/small_parse_table_2046.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2046.c rename to parser/static/small_parse_table/small_parse_table_2046.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2047.c b/parser/static/small_parse_table/small_parse_table_2047.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2047.c rename to parser/static/small_parse_table/small_parse_table_2047.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2048.c b/parser/static/small_parse_table/small_parse_table_2048.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2048.c rename to parser/static/small_parse_table/small_parse_table_2048.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2049.c b/parser/static/small_parse_table/small_parse_table_2049.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2049.c rename to parser/static/small_parse_table/small_parse_table_2049.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_205.c b/parser/static/small_parse_table/small_parse_table_205.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_205.c rename to parser/static/small_parse_table/small_parse_table_205.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2050.c b/parser/static/small_parse_table/small_parse_table_2050.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2050.c rename to parser/static/small_parse_table/small_parse_table_2050.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2051.c b/parser/static/small_parse_table/small_parse_table_2051.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2051.c rename to parser/static/small_parse_table/small_parse_table_2051.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2052.c b/parser/static/small_parse_table/small_parse_table_2052.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2052.c rename to parser/static/small_parse_table/small_parse_table_2052.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2053.c b/parser/static/small_parse_table/small_parse_table_2053.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2053.c rename to parser/static/small_parse_table/small_parse_table_2053.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2054.c b/parser/static/small_parse_table/small_parse_table_2054.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2054.c rename to parser/static/small_parse_table/small_parse_table_2054.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2055.c b/parser/static/small_parse_table/small_parse_table_2055.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2055.c rename to parser/static/small_parse_table/small_parse_table_2055.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2056.c b/parser/static/small_parse_table/small_parse_table_2056.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2056.c rename to parser/static/small_parse_table/small_parse_table_2056.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2057.c b/parser/static/small_parse_table/small_parse_table_2057.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2057.c rename to parser/static/small_parse_table/small_parse_table_2057.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2058.c b/parser/static/small_parse_table/small_parse_table_2058.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2058.c rename to parser/static/small_parse_table/small_parse_table_2058.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2059.c b/parser/static/small_parse_table/small_parse_table_2059.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2059.c rename to parser/static/small_parse_table/small_parse_table_2059.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_206.c b/parser/static/small_parse_table/small_parse_table_206.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_206.c rename to parser/static/small_parse_table/small_parse_table_206.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2060.c b/parser/static/small_parse_table/small_parse_table_2060.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2060.c rename to parser/static/small_parse_table/small_parse_table_2060.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2061.c b/parser/static/small_parse_table/small_parse_table_2061.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2061.c rename to parser/static/small_parse_table/small_parse_table_2061.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2062.c b/parser/static/small_parse_table/small_parse_table_2062.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2062.c rename to parser/static/small_parse_table/small_parse_table_2062.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2063.c b/parser/static/small_parse_table/small_parse_table_2063.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2063.c rename to parser/static/small_parse_table/small_parse_table_2063.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2064.c b/parser/static/small_parse_table/small_parse_table_2064.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2064.c rename to parser/static/small_parse_table/small_parse_table_2064.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2065.c b/parser/static/small_parse_table/small_parse_table_2065.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2065.c rename to parser/static/small_parse_table/small_parse_table_2065.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2066.c b/parser/static/small_parse_table/small_parse_table_2066.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2066.c rename to parser/static/small_parse_table/small_parse_table_2066.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2067.c b/parser/static/small_parse_table/small_parse_table_2067.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2067.c rename to parser/static/small_parse_table/small_parse_table_2067.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2068.c b/parser/static/small_parse_table/small_parse_table_2068.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2068.c rename to parser/static/small_parse_table/small_parse_table_2068.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2069.c b/parser/static/small_parse_table/small_parse_table_2069.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2069.c rename to parser/static/small_parse_table/small_parse_table_2069.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_207.c b/parser/static/small_parse_table/small_parse_table_207.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_207.c rename to parser/static/small_parse_table/small_parse_table_207.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2070.c b/parser/static/small_parse_table/small_parse_table_2070.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2070.c rename to parser/static/small_parse_table/small_parse_table_2070.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2071.c b/parser/static/small_parse_table/small_parse_table_2071.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2071.c rename to parser/static/small_parse_table/small_parse_table_2071.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2072.c b/parser/static/small_parse_table/small_parse_table_2072.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2072.c rename to parser/static/small_parse_table/small_parse_table_2072.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2073.c b/parser/static/small_parse_table/small_parse_table_2073.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2073.c rename to parser/static/small_parse_table/small_parse_table_2073.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2074.c b/parser/static/small_parse_table/small_parse_table_2074.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2074.c rename to parser/static/small_parse_table/small_parse_table_2074.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2075.c b/parser/static/small_parse_table/small_parse_table_2075.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2075.c rename to parser/static/small_parse_table/small_parse_table_2075.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2076.c b/parser/static/small_parse_table/small_parse_table_2076.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2076.c rename to parser/static/small_parse_table/small_parse_table_2076.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2077.c b/parser/static/small_parse_table/small_parse_table_2077.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2077.c rename to parser/static/small_parse_table/small_parse_table_2077.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2078.c b/parser/static/small_parse_table/small_parse_table_2078.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2078.c rename to parser/static/small_parse_table/small_parse_table_2078.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2079.c b/parser/static/small_parse_table/small_parse_table_2079.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2079.c rename to parser/static/small_parse_table/small_parse_table_2079.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_208.c b/parser/static/small_parse_table/small_parse_table_208.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_208.c rename to parser/static/small_parse_table/small_parse_table_208.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2080.c b/parser/static/small_parse_table/small_parse_table_2080.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2080.c rename to parser/static/small_parse_table/small_parse_table_2080.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2081.c b/parser/static/small_parse_table/small_parse_table_2081.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2081.c rename to parser/static/small_parse_table/small_parse_table_2081.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2082.c b/parser/static/small_parse_table/small_parse_table_2082.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2082.c rename to parser/static/small_parse_table/small_parse_table_2082.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2083.c b/parser/static/small_parse_table/small_parse_table_2083.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2083.c rename to parser/static/small_parse_table/small_parse_table_2083.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2084.c b/parser/static/small_parse_table/small_parse_table_2084.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2084.c rename to parser/static/small_parse_table/small_parse_table_2084.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2085.c b/parser/static/small_parse_table/small_parse_table_2085.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2085.c rename to parser/static/small_parse_table/small_parse_table_2085.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2086.c b/parser/static/small_parse_table/small_parse_table_2086.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2086.c rename to parser/static/small_parse_table/small_parse_table_2086.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2087.c b/parser/static/small_parse_table/small_parse_table_2087.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2087.c rename to parser/static/small_parse_table/small_parse_table_2087.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2088.c b/parser/static/small_parse_table/small_parse_table_2088.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2088.c rename to parser/static/small_parse_table/small_parse_table_2088.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2089.c b/parser/static/small_parse_table/small_parse_table_2089.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2089.c rename to parser/static/small_parse_table/small_parse_table_2089.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_209.c b/parser/static/small_parse_table/small_parse_table_209.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_209.c rename to parser/static/small_parse_table/small_parse_table_209.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2090.c b/parser/static/small_parse_table/small_parse_table_2090.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2090.c rename to parser/static/small_parse_table/small_parse_table_2090.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2091.c b/parser/static/small_parse_table/small_parse_table_2091.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2091.c rename to parser/static/small_parse_table/small_parse_table_2091.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2092.c b/parser/static/small_parse_table/small_parse_table_2092.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2092.c rename to parser/static/small_parse_table/small_parse_table_2092.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2093.c b/parser/static/small_parse_table/small_parse_table_2093.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2093.c rename to parser/static/small_parse_table/small_parse_table_2093.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2094.c b/parser/static/small_parse_table/small_parse_table_2094.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2094.c rename to parser/static/small_parse_table/small_parse_table_2094.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2095.c b/parser/static/small_parse_table/small_parse_table_2095.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2095.c rename to parser/static/small_parse_table/small_parse_table_2095.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2096.c b/parser/static/small_parse_table/small_parse_table_2096.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2096.c rename to parser/static/small_parse_table/small_parse_table_2096.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2097.c b/parser/static/small_parse_table/small_parse_table_2097.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2097.c rename to parser/static/small_parse_table/small_parse_table_2097.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2098.c b/parser/static/small_parse_table/small_parse_table_2098.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2098.c rename to parser/static/small_parse_table/small_parse_table_2098.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2099.c b/parser/static/small_parse_table/small_parse_table_2099.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2099.c rename to parser/static/small_parse_table/small_parse_table_2099.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_21.c b/parser/static/small_parse_table/small_parse_table_21.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_21.c rename to parser/static/small_parse_table/small_parse_table_21.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_210.c b/parser/static/small_parse_table/small_parse_table_210.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_210.c rename to parser/static/small_parse_table/small_parse_table_210.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2100.c b/parser/static/small_parse_table/small_parse_table_2100.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2100.c rename to parser/static/small_parse_table/small_parse_table_2100.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2101.c b/parser/static/small_parse_table/small_parse_table_2101.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2101.c rename to parser/static/small_parse_table/small_parse_table_2101.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2102.c b/parser/static/small_parse_table/small_parse_table_2102.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2102.c rename to parser/static/small_parse_table/small_parse_table_2102.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2103.c b/parser/static/small_parse_table/small_parse_table_2103.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2103.c rename to parser/static/small_parse_table/small_parse_table_2103.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2104.c b/parser/static/small_parse_table/small_parse_table_2104.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2104.c rename to parser/static/small_parse_table/small_parse_table_2104.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2105.c b/parser/static/small_parse_table/small_parse_table_2105.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2105.c rename to parser/static/small_parse_table/small_parse_table_2105.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2106.c b/parser/static/small_parse_table/small_parse_table_2106.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2106.c rename to parser/static/small_parse_table/small_parse_table_2106.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2107.c b/parser/static/small_parse_table/small_parse_table_2107.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2107.c rename to parser/static/small_parse_table/small_parse_table_2107.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2108.c b/parser/static/small_parse_table/small_parse_table_2108.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2108.c rename to parser/static/small_parse_table/small_parse_table_2108.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2109.c b/parser/static/small_parse_table/small_parse_table_2109.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2109.c rename to parser/static/small_parse_table/small_parse_table_2109.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_211.c b/parser/static/small_parse_table/small_parse_table_211.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_211.c rename to parser/static/small_parse_table/small_parse_table_211.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2110.c b/parser/static/small_parse_table/small_parse_table_2110.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2110.c rename to parser/static/small_parse_table/small_parse_table_2110.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2111.c b/parser/static/small_parse_table/small_parse_table_2111.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2111.c rename to parser/static/small_parse_table/small_parse_table_2111.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2112.c b/parser/static/small_parse_table/small_parse_table_2112.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2112.c rename to parser/static/small_parse_table/small_parse_table_2112.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2113.c b/parser/static/small_parse_table/small_parse_table_2113.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2113.c rename to parser/static/small_parse_table/small_parse_table_2113.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2114.c b/parser/static/small_parse_table/small_parse_table_2114.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2114.c rename to parser/static/small_parse_table/small_parse_table_2114.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2115.c b/parser/static/small_parse_table/small_parse_table_2115.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2115.c rename to parser/static/small_parse_table/small_parse_table_2115.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2116.c b/parser/static/small_parse_table/small_parse_table_2116.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2116.c rename to parser/static/small_parse_table/small_parse_table_2116.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2117.c b/parser/static/small_parse_table/small_parse_table_2117.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2117.c rename to parser/static/small_parse_table/small_parse_table_2117.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2118.c b/parser/static/small_parse_table/small_parse_table_2118.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2118.c rename to parser/static/small_parse_table/small_parse_table_2118.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2119.c b/parser/static/small_parse_table/small_parse_table_2119.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2119.c rename to parser/static/small_parse_table/small_parse_table_2119.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_212.c b/parser/static/small_parse_table/small_parse_table_212.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_212.c rename to parser/static/small_parse_table/small_parse_table_212.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2120.c b/parser/static/small_parse_table/small_parse_table_2120.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2120.c rename to parser/static/small_parse_table/small_parse_table_2120.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2121.c b/parser/static/small_parse_table/small_parse_table_2121.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2121.c rename to parser/static/small_parse_table/small_parse_table_2121.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2122.c b/parser/static/small_parse_table/small_parse_table_2122.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2122.c rename to parser/static/small_parse_table/small_parse_table_2122.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2123.c b/parser/static/small_parse_table/small_parse_table_2123.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2123.c rename to parser/static/small_parse_table/small_parse_table_2123.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2124.c b/parser/static/small_parse_table/small_parse_table_2124.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2124.c rename to parser/static/small_parse_table/small_parse_table_2124.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2125.c b/parser/static/small_parse_table/small_parse_table_2125.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2125.c rename to parser/static/small_parse_table/small_parse_table_2125.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2126.c b/parser/static/small_parse_table/small_parse_table_2126.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2126.c rename to parser/static/small_parse_table/small_parse_table_2126.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2127.c b/parser/static/small_parse_table/small_parse_table_2127.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2127.c rename to parser/static/small_parse_table/small_parse_table_2127.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2128.c b/parser/static/small_parse_table/small_parse_table_2128.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2128.c rename to parser/static/small_parse_table/small_parse_table_2128.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2129.c b/parser/static/small_parse_table/small_parse_table_2129.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2129.c rename to parser/static/small_parse_table/small_parse_table_2129.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_213.c b/parser/static/small_parse_table/small_parse_table_213.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_213.c rename to parser/static/small_parse_table/small_parse_table_213.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2130.c b/parser/static/small_parse_table/small_parse_table_2130.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2130.c rename to parser/static/small_parse_table/small_parse_table_2130.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2131.c b/parser/static/small_parse_table/small_parse_table_2131.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2131.c rename to parser/static/small_parse_table/small_parse_table_2131.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2132.c b/parser/static/small_parse_table/small_parse_table_2132.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2132.c rename to parser/static/small_parse_table/small_parse_table_2132.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2133.c b/parser/static/small_parse_table/small_parse_table_2133.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2133.c rename to parser/static/small_parse_table/small_parse_table_2133.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2134.c b/parser/static/small_parse_table/small_parse_table_2134.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2134.c rename to parser/static/small_parse_table/small_parse_table_2134.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2135.c b/parser/static/small_parse_table/small_parse_table_2135.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2135.c rename to parser/static/small_parse_table/small_parse_table_2135.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2136.c b/parser/static/small_parse_table/small_parse_table_2136.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2136.c rename to parser/static/small_parse_table/small_parse_table_2136.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2137.c b/parser/static/small_parse_table/small_parse_table_2137.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2137.c rename to parser/static/small_parse_table/small_parse_table_2137.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2138.c b/parser/static/small_parse_table/small_parse_table_2138.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2138.c rename to parser/static/small_parse_table/small_parse_table_2138.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2139.c b/parser/static/small_parse_table/small_parse_table_2139.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2139.c rename to parser/static/small_parse_table/small_parse_table_2139.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_214.c b/parser/static/small_parse_table/small_parse_table_214.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_214.c rename to parser/static/small_parse_table/small_parse_table_214.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2140.c b/parser/static/small_parse_table/small_parse_table_2140.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2140.c rename to parser/static/small_parse_table/small_parse_table_2140.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2141.c b/parser/static/small_parse_table/small_parse_table_2141.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2141.c rename to parser/static/small_parse_table/small_parse_table_2141.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2142.c b/parser/static/small_parse_table/small_parse_table_2142.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2142.c rename to parser/static/small_parse_table/small_parse_table_2142.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2143.c b/parser/static/small_parse_table/small_parse_table_2143.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2143.c rename to parser/static/small_parse_table/small_parse_table_2143.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2144.c b/parser/static/small_parse_table/small_parse_table_2144.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2144.c rename to parser/static/small_parse_table/small_parse_table_2144.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2145.c b/parser/static/small_parse_table/small_parse_table_2145.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2145.c rename to parser/static/small_parse_table/small_parse_table_2145.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2146.c b/parser/static/small_parse_table/small_parse_table_2146.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2146.c rename to parser/static/small_parse_table/small_parse_table_2146.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2147.c b/parser/static/small_parse_table/small_parse_table_2147.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2147.c rename to parser/static/small_parse_table/small_parse_table_2147.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2148.c b/parser/static/small_parse_table/small_parse_table_2148.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2148.c rename to parser/static/small_parse_table/small_parse_table_2148.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2149.c b/parser/static/small_parse_table/small_parse_table_2149.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2149.c rename to parser/static/small_parse_table/small_parse_table_2149.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_215.c b/parser/static/small_parse_table/small_parse_table_215.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_215.c rename to parser/static/small_parse_table/small_parse_table_215.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2150.c b/parser/static/small_parse_table/small_parse_table_2150.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2150.c rename to parser/static/small_parse_table/small_parse_table_2150.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2151.c b/parser/static/small_parse_table/small_parse_table_2151.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2151.c rename to parser/static/small_parse_table/small_parse_table_2151.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2152.c b/parser/static/small_parse_table/small_parse_table_2152.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2152.c rename to parser/static/small_parse_table/small_parse_table_2152.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2153.c b/parser/static/small_parse_table/small_parse_table_2153.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2153.c rename to parser/static/small_parse_table/small_parse_table_2153.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2154.c b/parser/static/small_parse_table/small_parse_table_2154.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2154.c rename to parser/static/small_parse_table/small_parse_table_2154.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2155.c b/parser/static/small_parse_table/small_parse_table_2155.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2155.c rename to parser/static/small_parse_table/small_parse_table_2155.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2156.c b/parser/static/small_parse_table/small_parse_table_2156.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2156.c rename to parser/static/small_parse_table/small_parse_table_2156.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2157.c b/parser/static/small_parse_table/small_parse_table_2157.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2157.c rename to parser/static/small_parse_table/small_parse_table_2157.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2158.c b/parser/static/small_parse_table/small_parse_table_2158.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2158.c rename to parser/static/small_parse_table/small_parse_table_2158.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2159.c b/parser/static/small_parse_table/small_parse_table_2159.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2159.c rename to parser/static/small_parse_table/small_parse_table_2159.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_216.c b/parser/static/small_parse_table/small_parse_table_216.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_216.c rename to parser/static/small_parse_table/small_parse_table_216.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2160.c b/parser/static/small_parse_table/small_parse_table_2160.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2160.c rename to parser/static/small_parse_table/small_parse_table_2160.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2161.c b/parser/static/small_parse_table/small_parse_table_2161.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2161.c rename to parser/static/small_parse_table/small_parse_table_2161.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2162.c b/parser/static/small_parse_table/small_parse_table_2162.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2162.c rename to parser/static/small_parse_table/small_parse_table_2162.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2163.c b/parser/static/small_parse_table/small_parse_table_2163.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2163.c rename to parser/static/small_parse_table/small_parse_table_2163.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2164.c b/parser/static/small_parse_table/small_parse_table_2164.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2164.c rename to parser/static/small_parse_table/small_parse_table_2164.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2165.c b/parser/static/small_parse_table/small_parse_table_2165.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2165.c rename to parser/static/small_parse_table/small_parse_table_2165.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2166.c b/parser/static/small_parse_table/small_parse_table_2166.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2166.c rename to parser/static/small_parse_table/small_parse_table_2166.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2167.c b/parser/static/small_parse_table/small_parse_table_2167.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2167.c rename to parser/static/small_parse_table/small_parse_table_2167.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2168.c b/parser/static/small_parse_table/small_parse_table_2168.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2168.c rename to parser/static/small_parse_table/small_parse_table_2168.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2169.c b/parser/static/small_parse_table/small_parse_table_2169.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2169.c rename to parser/static/small_parse_table/small_parse_table_2169.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_217.c b/parser/static/small_parse_table/small_parse_table_217.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_217.c rename to parser/static/small_parse_table/small_parse_table_217.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2170.c b/parser/static/small_parse_table/small_parse_table_2170.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2170.c rename to parser/static/small_parse_table/small_parse_table_2170.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2171.c b/parser/static/small_parse_table/small_parse_table_2171.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2171.c rename to parser/static/small_parse_table/small_parse_table_2171.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2172.c b/parser/static/small_parse_table/small_parse_table_2172.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2172.c rename to parser/static/small_parse_table/small_parse_table_2172.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2173.c b/parser/static/small_parse_table/small_parse_table_2173.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2173.c rename to parser/static/small_parse_table/small_parse_table_2173.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2174.c b/parser/static/small_parse_table/small_parse_table_2174.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2174.c rename to parser/static/small_parse_table/small_parse_table_2174.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2175.c b/parser/static/small_parse_table/small_parse_table_2175.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2175.c rename to parser/static/small_parse_table/small_parse_table_2175.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2176.c b/parser/static/small_parse_table/small_parse_table_2176.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2176.c rename to parser/static/small_parse_table/small_parse_table_2176.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2177.c b/parser/static/small_parse_table/small_parse_table_2177.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2177.c rename to parser/static/small_parse_table/small_parse_table_2177.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2178.c b/parser/static/small_parse_table/small_parse_table_2178.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2178.c rename to parser/static/small_parse_table/small_parse_table_2178.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2179.c b/parser/static/small_parse_table/small_parse_table_2179.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2179.c rename to parser/static/small_parse_table/small_parse_table_2179.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_218.c b/parser/static/small_parse_table/small_parse_table_218.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_218.c rename to parser/static/small_parse_table/small_parse_table_218.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2180.c b/parser/static/small_parse_table/small_parse_table_2180.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2180.c rename to parser/static/small_parse_table/small_parse_table_2180.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2181.c b/parser/static/small_parse_table/small_parse_table_2181.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2181.c rename to parser/static/small_parse_table/small_parse_table_2181.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2182.c b/parser/static/small_parse_table/small_parse_table_2182.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2182.c rename to parser/static/small_parse_table/small_parse_table_2182.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2183.c b/parser/static/small_parse_table/small_parse_table_2183.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2183.c rename to parser/static/small_parse_table/small_parse_table_2183.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2184.c b/parser/static/small_parse_table/small_parse_table_2184.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2184.c rename to parser/static/small_parse_table/small_parse_table_2184.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2185.c b/parser/static/small_parse_table/small_parse_table_2185.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2185.c rename to parser/static/small_parse_table/small_parse_table_2185.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2186.c b/parser/static/small_parse_table/small_parse_table_2186.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2186.c rename to parser/static/small_parse_table/small_parse_table_2186.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2187.c b/parser/static/small_parse_table/small_parse_table_2187.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2187.c rename to parser/static/small_parse_table/small_parse_table_2187.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2188.c b/parser/static/small_parse_table/small_parse_table_2188.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2188.c rename to parser/static/small_parse_table/small_parse_table_2188.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2189.c b/parser/static/small_parse_table/small_parse_table_2189.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2189.c rename to parser/static/small_parse_table/small_parse_table_2189.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_219.c b/parser/static/small_parse_table/small_parse_table_219.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_219.c rename to parser/static/small_parse_table/small_parse_table_219.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2190.c b/parser/static/small_parse_table/small_parse_table_2190.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2190.c rename to parser/static/small_parse_table/small_parse_table_2190.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2191.c b/parser/static/small_parse_table/small_parse_table_2191.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2191.c rename to parser/static/small_parse_table/small_parse_table_2191.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2192.c b/parser/static/small_parse_table/small_parse_table_2192.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2192.c rename to parser/static/small_parse_table/small_parse_table_2192.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2193.c b/parser/static/small_parse_table/small_parse_table_2193.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2193.c rename to parser/static/small_parse_table/small_parse_table_2193.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2194.c b/parser/static/small_parse_table/small_parse_table_2194.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2194.c rename to parser/static/small_parse_table/small_parse_table_2194.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2195.c b/parser/static/small_parse_table/small_parse_table_2195.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2195.c rename to parser/static/small_parse_table/small_parse_table_2195.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2196.c b/parser/static/small_parse_table/small_parse_table_2196.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2196.c rename to parser/static/small_parse_table/small_parse_table_2196.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2197.c b/parser/static/small_parse_table/small_parse_table_2197.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2197.c rename to parser/static/small_parse_table/small_parse_table_2197.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2198.c b/parser/static/small_parse_table/small_parse_table_2198.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2198.c rename to parser/static/small_parse_table/small_parse_table_2198.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2199.c b/parser/static/small_parse_table/small_parse_table_2199.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2199.c rename to parser/static/small_parse_table/small_parse_table_2199.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_22.c b/parser/static/small_parse_table/small_parse_table_22.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_22.c rename to parser/static/small_parse_table/small_parse_table_22.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_220.c b/parser/static/small_parse_table/small_parse_table_220.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_220.c rename to parser/static/small_parse_table/small_parse_table_220.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2200.c b/parser/static/small_parse_table/small_parse_table_2200.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2200.c rename to parser/static/small_parse_table/small_parse_table_2200.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2201.c b/parser/static/small_parse_table/small_parse_table_2201.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2201.c rename to parser/static/small_parse_table/small_parse_table_2201.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2202.c b/parser/static/small_parse_table/small_parse_table_2202.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2202.c rename to parser/static/small_parse_table/small_parse_table_2202.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2203.c b/parser/static/small_parse_table/small_parse_table_2203.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2203.c rename to parser/static/small_parse_table/small_parse_table_2203.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2204.c b/parser/static/small_parse_table/small_parse_table_2204.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2204.c rename to parser/static/small_parse_table/small_parse_table_2204.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2205.c b/parser/static/small_parse_table/small_parse_table_2205.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2205.c rename to parser/static/small_parse_table/small_parse_table_2205.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2206.c b/parser/static/small_parse_table/small_parse_table_2206.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2206.c rename to parser/static/small_parse_table/small_parse_table_2206.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2207.c b/parser/static/small_parse_table/small_parse_table_2207.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2207.c rename to parser/static/small_parse_table/small_parse_table_2207.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2208.c b/parser/static/small_parse_table/small_parse_table_2208.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2208.c rename to parser/static/small_parse_table/small_parse_table_2208.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2209.c b/parser/static/small_parse_table/small_parse_table_2209.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2209.c rename to parser/static/small_parse_table/small_parse_table_2209.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_221.c b/parser/static/small_parse_table/small_parse_table_221.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_221.c rename to parser/static/small_parse_table/small_parse_table_221.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2210.c b/parser/static/small_parse_table/small_parse_table_2210.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2210.c rename to parser/static/small_parse_table/small_parse_table_2210.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2211.c b/parser/static/small_parse_table/small_parse_table_2211.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2211.c rename to parser/static/small_parse_table/small_parse_table_2211.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2212.c b/parser/static/small_parse_table/small_parse_table_2212.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2212.c rename to parser/static/small_parse_table/small_parse_table_2212.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2213.c b/parser/static/small_parse_table/small_parse_table_2213.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2213.c rename to parser/static/small_parse_table/small_parse_table_2213.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2214.c b/parser/static/small_parse_table/small_parse_table_2214.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2214.c rename to parser/static/small_parse_table/small_parse_table_2214.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2215.c b/parser/static/small_parse_table/small_parse_table_2215.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2215.c rename to parser/static/small_parse_table/small_parse_table_2215.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2216.c b/parser/static/small_parse_table/small_parse_table_2216.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2216.c rename to parser/static/small_parse_table/small_parse_table_2216.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2217.c b/parser/static/small_parse_table/small_parse_table_2217.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2217.c rename to parser/static/small_parse_table/small_parse_table_2217.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2218.c b/parser/static/small_parse_table/small_parse_table_2218.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2218.c rename to parser/static/small_parse_table/small_parse_table_2218.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2219.c b/parser/static/small_parse_table/small_parse_table_2219.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2219.c rename to parser/static/small_parse_table/small_parse_table_2219.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_222.c b/parser/static/small_parse_table/small_parse_table_222.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_222.c rename to parser/static/small_parse_table/small_parse_table_222.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2220.c b/parser/static/small_parse_table/small_parse_table_2220.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2220.c rename to parser/static/small_parse_table/small_parse_table_2220.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2221.c b/parser/static/small_parse_table/small_parse_table_2221.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2221.c rename to parser/static/small_parse_table/small_parse_table_2221.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2222.c b/parser/static/small_parse_table/small_parse_table_2222.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2222.c rename to parser/static/small_parse_table/small_parse_table_2222.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2223.c b/parser/static/small_parse_table/small_parse_table_2223.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2223.c rename to parser/static/small_parse_table/small_parse_table_2223.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2224.c b/parser/static/small_parse_table/small_parse_table_2224.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2224.c rename to parser/static/small_parse_table/small_parse_table_2224.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2225.c b/parser/static/small_parse_table/small_parse_table_2225.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2225.c rename to parser/static/small_parse_table/small_parse_table_2225.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2226.c b/parser/static/small_parse_table/small_parse_table_2226.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2226.c rename to parser/static/small_parse_table/small_parse_table_2226.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2227.c b/parser/static/small_parse_table/small_parse_table_2227.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2227.c rename to parser/static/small_parse_table/small_parse_table_2227.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2228.c b/parser/static/small_parse_table/small_parse_table_2228.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2228.c rename to parser/static/small_parse_table/small_parse_table_2228.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2229.c b/parser/static/small_parse_table/small_parse_table_2229.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2229.c rename to parser/static/small_parse_table/small_parse_table_2229.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_223.c b/parser/static/small_parse_table/small_parse_table_223.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_223.c rename to parser/static/small_parse_table/small_parse_table_223.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2230.c b/parser/static/small_parse_table/small_parse_table_2230.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2230.c rename to parser/static/small_parse_table/small_parse_table_2230.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2231.c b/parser/static/small_parse_table/small_parse_table_2231.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2231.c rename to parser/static/small_parse_table/small_parse_table_2231.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2232.c b/parser/static/small_parse_table/small_parse_table_2232.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2232.c rename to parser/static/small_parse_table/small_parse_table_2232.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2233.c b/parser/static/small_parse_table/small_parse_table_2233.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2233.c rename to parser/static/small_parse_table/small_parse_table_2233.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2234.c b/parser/static/small_parse_table/small_parse_table_2234.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2234.c rename to parser/static/small_parse_table/small_parse_table_2234.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2235.c b/parser/static/small_parse_table/small_parse_table_2235.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2235.c rename to parser/static/small_parse_table/small_parse_table_2235.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2236.c b/parser/static/small_parse_table/small_parse_table_2236.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2236.c rename to parser/static/small_parse_table/small_parse_table_2236.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2237.c b/parser/static/small_parse_table/small_parse_table_2237.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2237.c rename to parser/static/small_parse_table/small_parse_table_2237.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2238.c b/parser/static/small_parse_table/small_parse_table_2238.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2238.c rename to parser/static/small_parse_table/small_parse_table_2238.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2239.c b/parser/static/small_parse_table/small_parse_table_2239.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2239.c rename to parser/static/small_parse_table/small_parse_table_2239.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_224.c b/parser/static/small_parse_table/small_parse_table_224.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_224.c rename to parser/static/small_parse_table/small_parse_table_224.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2240.c b/parser/static/small_parse_table/small_parse_table_2240.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2240.c rename to parser/static/small_parse_table/small_parse_table_2240.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2241.c b/parser/static/small_parse_table/small_parse_table_2241.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2241.c rename to parser/static/small_parse_table/small_parse_table_2241.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2242.c b/parser/static/small_parse_table/small_parse_table_2242.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2242.c rename to parser/static/small_parse_table/small_parse_table_2242.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2243.c b/parser/static/small_parse_table/small_parse_table_2243.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2243.c rename to parser/static/small_parse_table/small_parse_table_2243.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2244.c b/parser/static/small_parse_table/small_parse_table_2244.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2244.c rename to parser/static/small_parse_table/small_parse_table_2244.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2245.c b/parser/static/small_parse_table/small_parse_table_2245.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2245.c rename to parser/static/small_parse_table/small_parse_table_2245.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2246.c b/parser/static/small_parse_table/small_parse_table_2246.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2246.c rename to parser/static/small_parse_table/small_parse_table_2246.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2247.c b/parser/static/small_parse_table/small_parse_table_2247.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2247.c rename to parser/static/small_parse_table/small_parse_table_2247.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2248.c b/parser/static/small_parse_table/small_parse_table_2248.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2248.c rename to parser/static/small_parse_table/small_parse_table_2248.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2249.c b/parser/static/small_parse_table/small_parse_table_2249.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2249.c rename to parser/static/small_parse_table/small_parse_table_2249.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_225.c b/parser/static/small_parse_table/small_parse_table_225.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_225.c rename to parser/static/small_parse_table/small_parse_table_225.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2250.c b/parser/static/small_parse_table/small_parse_table_2250.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2250.c rename to parser/static/small_parse_table/small_parse_table_2250.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2251.c b/parser/static/small_parse_table/small_parse_table_2251.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2251.c rename to parser/static/small_parse_table/small_parse_table_2251.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2252.c b/parser/static/small_parse_table/small_parse_table_2252.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2252.c rename to parser/static/small_parse_table/small_parse_table_2252.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2253.c b/parser/static/small_parse_table/small_parse_table_2253.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2253.c rename to parser/static/small_parse_table/small_parse_table_2253.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2254.c b/parser/static/small_parse_table/small_parse_table_2254.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2254.c rename to parser/static/small_parse_table/small_parse_table_2254.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2255.c b/parser/static/small_parse_table/small_parse_table_2255.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2255.c rename to parser/static/small_parse_table/small_parse_table_2255.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2256.c b/parser/static/small_parse_table/small_parse_table_2256.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2256.c rename to parser/static/small_parse_table/small_parse_table_2256.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2257.c b/parser/static/small_parse_table/small_parse_table_2257.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2257.c rename to parser/static/small_parse_table/small_parse_table_2257.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2258.c b/parser/static/small_parse_table/small_parse_table_2258.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2258.c rename to parser/static/small_parse_table/small_parse_table_2258.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2259.c b/parser/static/small_parse_table/small_parse_table_2259.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2259.c rename to parser/static/small_parse_table/small_parse_table_2259.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_226.c b/parser/static/small_parse_table/small_parse_table_226.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_226.c rename to parser/static/small_parse_table/small_parse_table_226.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2260.c b/parser/static/small_parse_table/small_parse_table_2260.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2260.c rename to parser/static/small_parse_table/small_parse_table_2260.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2261.c b/parser/static/small_parse_table/small_parse_table_2261.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2261.c rename to parser/static/small_parse_table/small_parse_table_2261.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2262.c b/parser/static/small_parse_table/small_parse_table_2262.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2262.c rename to parser/static/small_parse_table/small_parse_table_2262.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2263.c b/parser/static/small_parse_table/small_parse_table_2263.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2263.c rename to parser/static/small_parse_table/small_parse_table_2263.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2264.c b/parser/static/small_parse_table/small_parse_table_2264.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2264.c rename to parser/static/small_parse_table/small_parse_table_2264.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2265.c b/parser/static/small_parse_table/small_parse_table_2265.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2265.c rename to parser/static/small_parse_table/small_parse_table_2265.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2266.c b/parser/static/small_parse_table/small_parse_table_2266.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2266.c rename to parser/static/small_parse_table/small_parse_table_2266.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2267.c b/parser/static/small_parse_table/small_parse_table_2267.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2267.c rename to parser/static/small_parse_table/small_parse_table_2267.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2268.c b/parser/static/small_parse_table/small_parse_table_2268.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2268.c rename to parser/static/small_parse_table/small_parse_table_2268.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2269.c b/parser/static/small_parse_table/small_parse_table_2269.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2269.c rename to parser/static/small_parse_table/small_parse_table_2269.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_227.c b/parser/static/small_parse_table/small_parse_table_227.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_227.c rename to parser/static/small_parse_table/small_parse_table_227.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2270.c b/parser/static/small_parse_table/small_parse_table_2270.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2270.c rename to parser/static/small_parse_table/small_parse_table_2270.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2271.c b/parser/static/small_parse_table/small_parse_table_2271.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2271.c rename to parser/static/small_parse_table/small_parse_table_2271.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2272.c b/parser/static/small_parse_table/small_parse_table_2272.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2272.c rename to parser/static/small_parse_table/small_parse_table_2272.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2273.c b/parser/static/small_parse_table/small_parse_table_2273.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2273.c rename to parser/static/small_parse_table/small_parse_table_2273.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2274.c b/parser/static/small_parse_table/small_parse_table_2274.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2274.c rename to parser/static/small_parse_table/small_parse_table_2274.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2275.c b/parser/static/small_parse_table/small_parse_table_2275.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2275.c rename to parser/static/small_parse_table/small_parse_table_2275.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2276.c b/parser/static/small_parse_table/small_parse_table_2276.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2276.c rename to parser/static/small_parse_table/small_parse_table_2276.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2277.c b/parser/static/small_parse_table/small_parse_table_2277.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2277.c rename to parser/static/small_parse_table/small_parse_table_2277.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2278.c b/parser/static/small_parse_table/small_parse_table_2278.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2278.c rename to parser/static/small_parse_table/small_parse_table_2278.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2279.c b/parser/static/small_parse_table/small_parse_table_2279.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2279.c rename to parser/static/small_parse_table/small_parse_table_2279.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_228.c b/parser/static/small_parse_table/small_parse_table_228.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_228.c rename to parser/static/small_parse_table/small_parse_table_228.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2280.c b/parser/static/small_parse_table/small_parse_table_2280.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2280.c rename to parser/static/small_parse_table/small_parse_table_2280.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2281.c b/parser/static/small_parse_table/small_parse_table_2281.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2281.c rename to parser/static/small_parse_table/small_parse_table_2281.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2282.c b/parser/static/small_parse_table/small_parse_table_2282.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2282.c rename to parser/static/small_parse_table/small_parse_table_2282.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2283.c b/parser/static/small_parse_table/small_parse_table_2283.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2283.c rename to parser/static/small_parse_table/small_parse_table_2283.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2284.c b/parser/static/small_parse_table/small_parse_table_2284.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2284.c rename to parser/static/small_parse_table/small_parse_table_2284.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2285.c b/parser/static/small_parse_table/small_parse_table_2285.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2285.c rename to parser/static/small_parse_table/small_parse_table_2285.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2286.c b/parser/static/small_parse_table/small_parse_table_2286.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2286.c rename to parser/static/small_parse_table/small_parse_table_2286.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2287.c b/parser/static/small_parse_table/small_parse_table_2287.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2287.c rename to parser/static/small_parse_table/small_parse_table_2287.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2288.c b/parser/static/small_parse_table/small_parse_table_2288.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2288.c rename to parser/static/small_parse_table/small_parse_table_2288.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2289.c b/parser/static/small_parse_table/small_parse_table_2289.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2289.c rename to parser/static/small_parse_table/small_parse_table_2289.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_229.c b/parser/static/small_parse_table/small_parse_table_229.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_229.c rename to parser/static/small_parse_table/small_parse_table_229.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2290.c b/parser/static/small_parse_table/small_parse_table_2290.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2290.c rename to parser/static/small_parse_table/small_parse_table_2290.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2291.c b/parser/static/small_parse_table/small_parse_table_2291.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2291.c rename to parser/static/small_parse_table/small_parse_table_2291.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2292.c b/parser/static/small_parse_table/small_parse_table_2292.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2292.c rename to parser/static/small_parse_table/small_parse_table_2292.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2293.c b/parser/static/small_parse_table/small_parse_table_2293.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2293.c rename to parser/static/small_parse_table/small_parse_table_2293.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2294.c b/parser/static/small_parse_table/small_parse_table_2294.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2294.c rename to parser/static/small_parse_table/small_parse_table_2294.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2295.c b/parser/static/small_parse_table/small_parse_table_2295.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2295.c rename to parser/static/small_parse_table/small_parse_table_2295.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2296.c b/parser/static/small_parse_table/small_parse_table_2296.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2296.c rename to parser/static/small_parse_table/small_parse_table_2296.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2297.c b/parser/static/small_parse_table/small_parse_table_2297.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2297.c rename to parser/static/small_parse_table/small_parse_table_2297.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2298.c b/parser/static/small_parse_table/small_parse_table_2298.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2298.c rename to parser/static/small_parse_table/small_parse_table_2298.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2299.c b/parser/static/small_parse_table/small_parse_table_2299.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2299.c rename to parser/static/small_parse_table/small_parse_table_2299.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_23.c b/parser/static/small_parse_table/small_parse_table_23.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_23.c rename to parser/static/small_parse_table/small_parse_table_23.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_230.c b/parser/static/small_parse_table/small_parse_table_230.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_230.c rename to parser/static/small_parse_table/small_parse_table_230.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2300.c b/parser/static/small_parse_table/small_parse_table_2300.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2300.c rename to parser/static/small_parse_table/small_parse_table_2300.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2301.c b/parser/static/small_parse_table/small_parse_table_2301.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2301.c rename to parser/static/small_parse_table/small_parse_table_2301.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2302.c b/parser/static/small_parse_table/small_parse_table_2302.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2302.c rename to parser/static/small_parse_table/small_parse_table_2302.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2303.c b/parser/static/small_parse_table/small_parse_table_2303.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2303.c rename to parser/static/small_parse_table/small_parse_table_2303.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2304.c b/parser/static/small_parse_table/small_parse_table_2304.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2304.c rename to parser/static/small_parse_table/small_parse_table_2304.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2305.c b/parser/static/small_parse_table/small_parse_table_2305.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2305.c rename to parser/static/small_parse_table/small_parse_table_2305.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2306.c b/parser/static/small_parse_table/small_parse_table_2306.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2306.c rename to parser/static/small_parse_table/small_parse_table_2306.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2307.c b/parser/static/small_parse_table/small_parse_table_2307.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2307.c rename to parser/static/small_parse_table/small_parse_table_2307.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2308.c b/parser/static/small_parse_table/small_parse_table_2308.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2308.c rename to parser/static/small_parse_table/small_parse_table_2308.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2309.c b/parser/static/small_parse_table/small_parse_table_2309.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2309.c rename to parser/static/small_parse_table/small_parse_table_2309.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_231.c b/parser/static/small_parse_table/small_parse_table_231.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_231.c rename to parser/static/small_parse_table/small_parse_table_231.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2310.c b/parser/static/small_parse_table/small_parse_table_2310.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2310.c rename to parser/static/small_parse_table/small_parse_table_2310.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2311.c b/parser/static/small_parse_table/small_parse_table_2311.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2311.c rename to parser/static/small_parse_table/small_parse_table_2311.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2312.c b/parser/static/small_parse_table/small_parse_table_2312.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2312.c rename to parser/static/small_parse_table/small_parse_table_2312.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2313.c b/parser/static/small_parse_table/small_parse_table_2313.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2313.c rename to parser/static/small_parse_table/small_parse_table_2313.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2314.c b/parser/static/small_parse_table/small_parse_table_2314.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2314.c rename to parser/static/small_parse_table/small_parse_table_2314.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2315.c b/parser/static/small_parse_table/small_parse_table_2315.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2315.c rename to parser/static/small_parse_table/small_parse_table_2315.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2316.c b/parser/static/small_parse_table/small_parse_table_2316.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2316.c rename to parser/static/small_parse_table/small_parse_table_2316.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2317.c b/parser/static/small_parse_table/small_parse_table_2317.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2317.c rename to parser/static/small_parse_table/small_parse_table_2317.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2318.c b/parser/static/small_parse_table/small_parse_table_2318.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2318.c rename to parser/static/small_parse_table/small_parse_table_2318.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2319.c b/parser/static/small_parse_table/small_parse_table_2319.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2319.c rename to parser/static/small_parse_table/small_parse_table_2319.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_232.c b/parser/static/small_parse_table/small_parse_table_232.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_232.c rename to parser/static/small_parse_table/small_parse_table_232.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2320.c b/parser/static/small_parse_table/small_parse_table_2320.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2320.c rename to parser/static/small_parse_table/small_parse_table_2320.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2321.c b/parser/static/small_parse_table/small_parse_table_2321.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2321.c rename to parser/static/small_parse_table/small_parse_table_2321.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2322.c b/parser/static/small_parse_table/small_parse_table_2322.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2322.c rename to parser/static/small_parse_table/small_parse_table_2322.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2323.c b/parser/static/small_parse_table/small_parse_table_2323.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2323.c rename to parser/static/small_parse_table/small_parse_table_2323.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2324.c b/parser/static/small_parse_table/small_parse_table_2324.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2324.c rename to parser/static/small_parse_table/small_parse_table_2324.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2325.c b/parser/static/small_parse_table/small_parse_table_2325.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2325.c rename to parser/static/small_parse_table/small_parse_table_2325.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2326.c b/parser/static/small_parse_table/small_parse_table_2326.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2326.c rename to parser/static/small_parse_table/small_parse_table_2326.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2327.c b/parser/static/small_parse_table/small_parse_table_2327.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2327.c rename to parser/static/small_parse_table/small_parse_table_2327.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2328.c b/parser/static/small_parse_table/small_parse_table_2328.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2328.c rename to parser/static/small_parse_table/small_parse_table_2328.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2329.c b/parser/static/small_parse_table/small_parse_table_2329.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2329.c rename to parser/static/small_parse_table/small_parse_table_2329.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_233.c b/parser/static/small_parse_table/small_parse_table_233.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_233.c rename to parser/static/small_parse_table/small_parse_table_233.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2330.c b/parser/static/small_parse_table/small_parse_table_2330.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2330.c rename to parser/static/small_parse_table/small_parse_table_2330.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2331.c b/parser/static/small_parse_table/small_parse_table_2331.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2331.c rename to parser/static/small_parse_table/small_parse_table_2331.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2332.c b/parser/static/small_parse_table/small_parse_table_2332.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2332.c rename to parser/static/small_parse_table/small_parse_table_2332.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2333.c b/parser/static/small_parse_table/small_parse_table_2333.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2333.c rename to parser/static/small_parse_table/small_parse_table_2333.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2334.c b/parser/static/small_parse_table/small_parse_table_2334.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2334.c rename to parser/static/small_parse_table/small_parse_table_2334.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2335.c b/parser/static/small_parse_table/small_parse_table_2335.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2335.c rename to parser/static/small_parse_table/small_parse_table_2335.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2336.c b/parser/static/small_parse_table/small_parse_table_2336.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2336.c rename to parser/static/small_parse_table/small_parse_table_2336.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2337.c b/parser/static/small_parse_table/small_parse_table_2337.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2337.c rename to parser/static/small_parse_table/small_parse_table_2337.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2338.c b/parser/static/small_parse_table/small_parse_table_2338.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2338.c rename to parser/static/small_parse_table/small_parse_table_2338.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2339.c b/parser/static/small_parse_table/small_parse_table_2339.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2339.c rename to parser/static/small_parse_table/small_parse_table_2339.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_234.c b/parser/static/small_parse_table/small_parse_table_234.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_234.c rename to parser/static/small_parse_table/small_parse_table_234.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2340.c b/parser/static/small_parse_table/small_parse_table_2340.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2340.c rename to parser/static/small_parse_table/small_parse_table_2340.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2341.c b/parser/static/small_parse_table/small_parse_table_2341.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2341.c rename to parser/static/small_parse_table/small_parse_table_2341.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2342.c b/parser/static/small_parse_table/small_parse_table_2342.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2342.c rename to parser/static/small_parse_table/small_parse_table_2342.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2343.c b/parser/static/small_parse_table/small_parse_table_2343.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2343.c rename to parser/static/small_parse_table/small_parse_table_2343.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2344.c b/parser/static/small_parse_table/small_parse_table_2344.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2344.c rename to parser/static/small_parse_table/small_parse_table_2344.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2345.c b/parser/static/small_parse_table/small_parse_table_2345.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2345.c rename to parser/static/small_parse_table/small_parse_table_2345.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2346.c b/parser/static/small_parse_table/small_parse_table_2346.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2346.c rename to parser/static/small_parse_table/small_parse_table_2346.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2347.c b/parser/static/small_parse_table/small_parse_table_2347.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2347.c rename to parser/static/small_parse_table/small_parse_table_2347.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2348.c b/parser/static/small_parse_table/small_parse_table_2348.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2348.c rename to parser/static/small_parse_table/small_parse_table_2348.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2349.c b/parser/static/small_parse_table/small_parse_table_2349.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2349.c rename to parser/static/small_parse_table/small_parse_table_2349.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_235.c b/parser/static/small_parse_table/small_parse_table_235.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_235.c rename to parser/static/small_parse_table/small_parse_table_235.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2350.c b/parser/static/small_parse_table/small_parse_table_2350.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2350.c rename to parser/static/small_parse_table/small_parse_table_2350.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2351.c b/parser/static/small_parse_table/small_parse_table_2351.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2351.c rename to parser/static/small_parse_table/small_parse_table_2351.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2352.c b/parser/static/small_parse_table/small_parse_table_2352.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2352.c rename to parser/static/small_parse_table/small_parse_table_2352.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2353.c b/parser/static/small_parse_table/small_parse_table_2353.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2353.c rename to parser/static/small_parse_table/small_parse_table_2353.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2354.c b/parser/static/small_parse_table/small_parse_table_2354.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2354.c rename to parser/static/small_parse_table/small_parse_table_2354.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2355.c b/parser/static/small_parse_table/small_parse_table_2355.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2355.c rename to parser/static/small_parse_table/small_parse_table_2355.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2356.c b/parser/static/small_parse_table/small_parse_table_2356.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2356.c rename to parser/static/small_parse_table/small_parse_table_2356.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2357.c b/parser/static/small_parse_table/small_parse_table_2357.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2357.c rename to parser/static/small_parse_table/small_parse_table_2357.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2358.c b/parser/static/small_parse_table/small_parse_table_2358.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2358.c rename to parser/static/small_parse_table/small_parse_table_2358.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2359.c b/parser/static/small_parse_table/small_parse_table_2359.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2359.c rename to parser/static/small_parse_table/small_parse_table_2359.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_236.c b/parser/static/small_parse_table/small_parse_table_236.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_236.c rename to parser/static/small_parse_table/small_parse_table_236.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2360.c b/parser/static/small_parse_table/small_parse_table_2360.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2360.c rename to parser/static/small_parse_table/small_parse_table_2360.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2361.c b/parser/static/small_parse_table/small_parse_table_2361.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2361.c rename to parser/static/small_parse_table/small_parse_table_2361.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2362.c b/parser/static/small_parse_table/small_parse_table_2362.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2362.c rename to parser/static/small_parse_table/small_parse_table_2362.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2363.c b/parser/static/small_parse_table/small_parse_table_2363.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2363.c rename to parser/static/small_parse_table/small_parse_table_2363.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2364.c b/parser/static/small_parse_table/small_parse_table_2364.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2364.c rename to parser/static/small_parse_table/small_parse_table_2364.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2365.c b/parser/static/small_parse_table/small_parse_table_2365.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2365.c rename to parser/static/small_parse_table/small_parse_table_2365.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2366.c b/parser/static/small_parse_table/small_parse_table_2366.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2366.c rename to parser/static/small_parse_table/small_parse_table_2366.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2367.c b/parser/static/small_parse_table/small_parse_table_2367.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2367.c rename to parser/static/small_parse_table/small_parse_table_2367.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2368.c b/parser/static/small_parse_table/small_parse_table_2368.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2368.c rename to parser/static/small_parse_table/small_parse_table_2368.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2369.c b/parser/static/small_parse_table/small_parse_table_2369.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2369.c rename to parser/static/small_parse_table/small_parse_table_2369.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_237.c b/parser/static/small_parse_table/small_parse_table_237.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_237.c rename to parser/static/small_parse_table/small_parse_table_237.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2370.c b/parser/static/small_parse_table/small_parse_table_2370.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2370.c rename to parser/static/small_parse_table/small_parse_table_2370.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2371.c b/parser/static/small_parse_table/small_parse_table_2371.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2371.c rename to parser/static/small_parse_table/small_parse_table_2371.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2372.c b/parser/static/small_parse_table/small_parse_table_2372.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2372.c rename to parser/static/small_parse_table/small_parse_table_2372.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2373.c b/parser/static/small_parse_table/small_parse_table_2373.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2373.c rename to parser/static/small_parse_table/small_parse_table_2373.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2374.c b/parser/static/small_parse_table/small_parse_table_2374.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2374.c rename to parser/static/small_parse_table/small_parse_table_2374.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2375.c b/parser/static/small_parse_table/small_parse_table_2375.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2375.c rename to parser/static/small_parse_table/small_parse_table_2375.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2376.c b/parser/static/small_parse_table/small_parse_table_2376.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2376.c rename to parser/static/small_parse_table/small_parse_table_2376.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2377.c b/parser/static/small_parse_table/small_parse_table_2377.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2377.c rename to parser/static/small_parse_table/small_parse_table_2377.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2378.c b/parser/static/small_parse_table/small_parse_table_2378.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2378.c rename to parser/static/small_parse_table/small_parse_table_2378.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2379.c b/parser/static/small_parse_table/small_parse_table_2379.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2379.c rename to parser/static/small_parse_table/small_parse_table_2379.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_238.c b/parser/static/small_parse_table/small_parse_table_238.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_238.c rename to parser/static/small_parse_table/small_parse_table_238.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2380.c b/parser/static/small_parse_table/small_parse_table_2380.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2380.c rename to parser/static/small_parse_table/small_parse_table_2380.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2381.c b/parser/static/small_parse_table/small_parse_table_2381.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2381.c rename to parser/static/small_parse_table/small_parse_table_2381.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2382.c b/parser/static/small_parse_table/small_parse_table_2382.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2382.c rename to parser/static/small_parse_table/small_parse_table_2382.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2383.c b/parser/static/small_parse_table/small_parse_table_2383.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2383.c rename to parser/static/small_parse_table/small_parse_table_2383.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2384.c b/parser/static/small_parse_table/small_parse_table_2384.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2384.c rename to parser/static/small_parse_table/small_parse_table_2384.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2385.c b/parser/static/small_parse_table/small_parse_table_2385.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2385.c rename to parser/static/small_parse_table/small_parse_table_2385.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2386.c b/parser/static/small_parse_table/small_parse_table_2386.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2386.c rename to parser/static/small_parse_table/small_parse_table_2386.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2387.c b/parser/static/small_parse_table/small_parse_table_2387.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2387.c rename to parser/static/small_parse_table/small_parse_table_2387.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2388.c b/parser/static/small_parse_table/small_parse_table_2388.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2388.c rename to parser/static/small_parse_table/small_parse_table_2388.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2389.c b/parser/static/small_parse_table/small_parse_table_2389.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2389.c rename to parser/static/small_parse_table/small_parse_table_2389.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_239.c b/parser/static/small_parse_table/small_parse_table_239.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_239.c rename to parser/static/small_parse_table/small_parse_table_239.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2390.c b/parser/static/small_parse_table/small_parse_table_2390.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2390.c rename to parser/static/small_parse_table/small_parse_table_2390.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2391.c b/parser/static/small_parse_table/small_parse_table_2391.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2391.c rename to parser/static/small_parse_table/small_parse_table_2391.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2392.c b/parser/static/small_parse_table/small_parse_table_2392.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2392.c rename to parser/static/small_parse_table/small_parse_table_2392.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2393.c b/parser/static/small_parse_table/small_parse_table_2393.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2393.c rename to parser/static/small_parse_table/small_parse_table_2393.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2394.c b/parser/static/small_parse_table/small_parse_table_2394.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2394.c rename to parser/static/small_parse_table/small_parse_table_2394.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2395.c b/parser/static/small_parse_table/small_parse_table_2395.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2395.c rename to parser/static/small_parse_table/small_parse_table_2395.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2396.c b/parser/static/small_parse_table/small_parse_table_2396.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2396.c rename to parser/static/small_parse_table/small_parse_table_2396.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2397.c b/parser/static/small_parse_table/small_parse_table_2397.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2397.c rename to parser/static/small_parse_table/small_parse_table_2397.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2398.c b/parser/static/small_parse_table/small_parse_table_2398.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2398.c rename to parser/static/small_parse_table/small_parse_table_2398.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2399.c b/parser/static/small_parse_table/small_parse_table_2399.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2399.c rename to parser/static/small_parse_table/small_parse_table_2399.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_24.c b/parser/static/small_parse_table/small_parse_table_24.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_24.c rename to parser/static/small_parse_table/small_parse_table_24.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_240.c b/parser/static/small_parse_table/small_parse_table_240.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_240.c rename to parser/static/small_parse_table/small_parse_table_240.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2400.c b/parser/static/small_parse_table/small_parse_table_2400.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2400.c rename to parser/static/small_parse_table/small_parse_table_2400.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2401.c b/parser/static/small_parse_table/small_parse_table_2401.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2401.c rename to parser/static/small_parse_table/small_parse_table_2401.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2402.c b/parser/static/small_parse_table/small_parse_table_2402.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2402.c rename to parser/static/small_parse_table/small_parse_table_2402.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2403.c b/parser/static/small_parse_table/small_parse_table_2403.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2403.c rename to parser/static/small_parse_table/small_parse_table_2403.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2404.c b/parser/static/small_parse_table/small_parse_table_2404.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2404.c rename to parser/static/small_parse_table/small_parse_table_2404.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2405.c b/parser/static/small_parse_table/small_parse_table_2405.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2405.c rename to parser/static/small_parse_table/small_parse_table_2405.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2406.c b/parser/static/small_parse_table/small_parse_table_2406.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2406.c rename to parser/static/small_parse_table/small_parse_table_2406.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2407.c b/parser/static/small_parse_table/small_parse_table_2407.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2407.c rename to parser/static/small_parse_table/small_parse_table_2407.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2408.c b/parser/static/small_parse_table/small_parse_table_2408.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2408.c rename to parser/static/small_parse_table/small_parse_table_2408.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2409.c b/parser/static/small_parse_table/small_parse_table_2409.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2409.c rename to parser/static/small_parse_table/small_parse_table_2409.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_241.c b/parser/static/small_parse_table/small_parse_table_241.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_241.c rename to parser/static/small_parse_table/small_parse_table_241.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2410.c b/parser/static/small_parse_table/small_parse_table_2410.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2410.c rename to parser/static/small_parse_table/small_parse_table_2410.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2411.c b/parser/static/small_parse_table/small_parse_table_2411.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2411.c rename to parser/static/small_parse_table/small_parse_table_2411.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2412.c b/parser/static/small_parse_table/small_parse_table_2412.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2412.c rename to parser/static/small_parse_table/small_parse_table_2412.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2413.c b/parser/static/small_parse_table/small_parse_table_2413.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2413.c rename to parser/static/small_parse_table/small_parse_table_2413.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2414.c b/parser/static/small_parse_table/small_parse_table_2414.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2414.c rename to parser/static/small_parse_table/small_parse_table_2414.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2415.c b/parser/static/small_parse_table/small_parse_table_2415.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2415.c rename to parser/static/small_parse_table/small_parse_table_2415.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2416.c b/parser/static/small_parse_table/small_parse_table_2416.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2416.c rename to parser/static/small_parse_table/small_parse_table_2416.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2417.c b/parser/static/small_parse_table/small_parse_table_2417.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2417.c rename to parser/static/small_parse_table/small_parse_table_2417.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2418.c b/parser/static/small_parse_table/small_parse_table_2418.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2418.c rename to parser/static/small_parse_table/small_parse_table_2418.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2419.c b/parser/static/small_parse_table/small_parse_table_2419.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2419.c rename to parser/static/small_parse_table/small_parse_table_2419.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_242.c b/parser/static/small_parse_table/small_parse_table_242.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_242.c rename to parser/static/small_parse_table/small_parse_table_242.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2420.c b/parser/static/small_parse_table/small_parse_table_2420.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2420.c rename to parser/static/small_parse_table/small_parse_table_2420.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2421.c b/parser/static/small_parse_table/small_parse_table_2421.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2421.c rename to parser/static/small_parse_table/small_parse_table_2421.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2422.c b/parser/static/small_parse_table/small_parse_table_2422.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2422.c rename to parser/static/small_parse_table/small_parse_table_2422.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2423.c b/parser/static/small_parse_table/small_parse_table_2423.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2423.c rename to parser/static/small_parse_table/small_parse_table_2423.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2424.c b/parser/static/small_parse_table/small_parse_table_2424.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2424.c rename to parser/static/small_parse_table/small_parse_table_2424.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2425.c b/parser/static/small_parse_table/small_parse_table_2425.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2425.c rename to parser/static/small_parse_table/small_parse_table_2425.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2426.c b/parser/static/small_parse_table/small_parse_table_2426.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2426.c rename to parser/static/small_parse_table/small_parse_table_2426.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2427.c b/parser/static/small_parse_table/small_parse_table_2427.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2427.c rename to parser/static/small_parse_table/small_parse_table_2427.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2428.c b/parser/static/small_parse_table/small_parse_table_2428.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2428.c rename to parser/static/small_parse_table/small_parse_table_2428.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2429.c b/parser/static/small_parse_table/small_parse_table_2429.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2429.c rename to parser/static/small_parse_table/small_parse_table_2429.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_243.c b/parser/static/small_parse_table/small_parse_table_243.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_243.c rename to parser/static/small_parse_table/small_parse_table_243.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2430.c b/parser/static/small_parse_table/small_parse_table_2430.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2430.c rename to parser/static/small_parse_table/small_parse_table_2430.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2431.c b/parser/static/small_parse_table/small_parse_table_2431.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2431.c rename to parser/static/small_parse_table/small_parse_table_2431.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2432.c b/parser/static/small_parse_table/small_parse_table_2432.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2432.c rename to parser/static/small_parse_table/small_parse_table_2432.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2433.c b/parser/static/small_parse_table/small_parse_table_2433.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2433.c rename to parser/static/small_parse_table/small_parse_table_2433.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2434.c b/parser/static/small_parse_table/small_parse_table_2434.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2434.c rename to parser/static/small_parse_table/small_parse_table_2434.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2435.c b/parser/static/small_parse_table/small_parse_table_2435.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2435.c rename to parser/static/small_parse_table/small_parse_table_2435.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2436.c b/parser/static/small_parse_table/small_parse_table_2436.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2436.c rename to parser/static/small_parse_table/small_parse_table_2436.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2437.c b/parser/static/small_parse_table/small_parse_table_2437.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2437.c rename to parser/static/small_parse_table/small_parse_table_2437.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2438.c b/parser/static/small_parse_table/small_parse_table_2438.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2438.c rename to parser/static/small_parse_table/small_parse_table_2438.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2439.c b/parser/static/small_parse_table/small_parse_table_2439.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2439.c rename to parser/static/small_parse_table/small_parse_table_2439.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_244.c b/parser/static/small_parse_table/small_parse_table_244.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_244.c rename to parser/static/small_parse_table/small_parse_table_244.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2440.c b/parser/static/small_parse_table/small_parse_table_2440.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2440.c rename to parser/static/small_parse_table/small_parse_table_2440.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2441.c b/parser/static/small_parse_table/small_parse_table_2441.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2441.c rename to parser/static/small_parse_table/small_parse_table_2441.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2442.c b/parser/static/small_parse_table/small_parse_table_2442.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2442.c rename to parser/static/small_parse_table/small_parse_table_2442.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2443.c b/parser/static/small_parse_table/small_parse_table_2443.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2443.c rename to parser/static/small_parse_table/small_parse_table_2443.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2444.c b/parser/static/small_parse_table/small_parse_table_2444.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2444.c rename to parser/static/small_parse_table/small_parse_table_2444.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2445.c b/parser/static/small_parse_table/small_parse_table_2445.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2445.c rename to parser/static/small_parse_table/small_parse_table_2445.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2446.c b/parser/static/small_parse_table/small_parse_table_2446.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2446.c rename to parser/static/small_parse_table/small_parse_table_2446.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2447.c b/parser/static/small_parse_table/small_parse_table_2447.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2447.c rename to parser/static/small_parse_table/small_parse_table_2447.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2448.c b/parser/static/small_parse_table/small_parse_table_2448.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2448.c rename to parser/static/small_parse_table/small_parse_table_2448.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2449.c b/parser/static/small_parse_table/small_parse_table_2449.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2449.c rename to parser/static/small_parse_table/small_parse_table_2449.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_245.c b/parser/static/small_parse_table/small_parse_table_245.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_245.c rename to parser/static/small_parse_table/small_parse_table_245.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2450.c b/parser/static/small_parse_table/small_parse_table_2450.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2450.c rename to parser/static/small_parse_table/small_parse_table_2450.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2451.c b/parser/static/small_parse_table/small_parse_table_2451.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2451.c rename to parser/static/small_parse_table/small_parse_table_2451.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2452.c b/parser/static/small_parse_table/small_parse_table_2452.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2452.c rename to parser/static/small_parse_table/small_parse_table_2452.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2453.c b/parser/static/small_parse_table/small_parse_table_2453.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2453.c rename to parser/static/small_parse_table/small_parse_table_2453.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2454.c b/parser/static/small_parse_table/small_parse_table_2454.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2454.c rename to parser/static/small_parse_table/small_parse_table_2454.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2455.c b/parser/static/small_parse_table/small_parse_table_2455.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2455.c rename to parser/static/small_parse_table/small_parse_table_2455.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2456.c b/parser/static/small_parse_table/small_parse_table_2456.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2456.c rename to parser/static/small_parse_table/small_parse_table_2456.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2457.c b/parser/static/small_parse_table/small_parse_table_2457.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2457.c rename to parser/static/small_parse_table/small_parse_table_2457.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2458.c b/parser/static/small_parse_table/small_parse_table_2458.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2458.c rename to parser/static/small_parse_table/small_parse_table_2458.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2459.c b/parser/static/small_parse_table/small_parse_table_2459.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2459.c rename to parser/static/small_parse_table/small_parse_table_2459.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_246.c b/parser/static/small_parse_table/small_parse_table_246.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_246.c rename to parser/static/small_parse_table/small_parse_table_246.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2460.c b/parser/static/small_parse_table/small_parse_table_2460.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2460.c rename to parser/static/small_parse_table/small_parse_table_2460.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2461.c b/parser/static/small_parse_table/small_parse_table_2461.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2461.c rename to parser/static/small_parse_table/small_parse_table_2461.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2462.c b/parser/static/small_parse_table/small_parse_table_2462.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2462.c rename to parser/static/small_parse_table/small_parse_table_2462.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2463.c b/parser/static/small_parse_table/small_parse_table_2463.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2463.c rename to parser/static/small_parse_table/small_parse_table_2463.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2464.c b/parser/static/small_parse_table/small_parse_table_2464.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2464.c rename to parser/static/small_parse_table/small_parse_table_2464.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2465.c b/parser/static/small_parse_table/small_parse_table_2465.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2465.c rename to parser/static/small_parse_table/small_parse_table_2465.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2466.c b/parser/static/small_parse_table/small_parse_table_2466.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2466.c rename to parser/static/small_parse_table/small_parse_table_2466.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2467.c b/parser/static/small_parse_table/small_parse_table_2467.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2467.c rename to parser/static/small_parse_table/small_parse_table_2467.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2468.c b/parser/static/small_parse_table/small_parse_table_2468.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2468.c rename to parser/static/small_parse_table/small_parse_table_2468.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2469.c b/parser/static/small_parse_table/small_parse_table_2469.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2469.c rename to parser/static/small_parse_table/small_parse_table_2469.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_247.c b/parser/static/small_parse_table/small_parse_table_247.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_247.c rename to parser/static/small_parse_table/small_parse_table_247.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2470.c b/parser/static/small_parse_table/small_parse_table_2470.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2470.c rename to parser/static/small_parse_table/small_parse_table_2470.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2471.c b/parser/static/small_parse_table/small_parse_table_2471.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2471.c rename to parser/static/small_parse_table/small_parse_table_2471.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2472.c b/parser/static/small_parse_table/small_parse_table_2472.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2472.c rename to parser/static/small_parse_table/small_parse_table_2472.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2473.c b/parser/static/small_parse_table/small_parse_table_2473.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2473.c rename to parser/static/small_parse_table/small_parse_table_2473.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2474.c b/parser/static/small_parse_table/small_parse_table_2474.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2474.c rename to parser/static/small_parse_table/small_parse_table_2474.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2475.c b/parser/static/small_parse_table/small_parse_table_2475.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2475.c rename to parser/static/small_parse_table/small_parse_table_2475.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2476.c b/parser/static/small_parse_table/small_parse_table_2476.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2476.c rename to parser/static/small_parse_table/small_parse_table_2476.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2477.c b/parser/static/small_parse_table/small_parse_table_2477.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2477.c rename to parser/static/small_parse_table/small_parse_table_2477.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2478.c b/parser/static/small_parse_table/small_parse_table_2478.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2478.c rename to parser/static/small_parse_table/small_parse_table_2478.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2479.c b/parser/static/small_parse_table/small_parse_table_2479.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2479.c rename to parser/static/small_parse_table/small_parse_table_2479.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_248.c b/parser/static/small_parse_table/small_parse_table_248.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_248.c rename to parser/static/small_parse_table/small_parse_table_248.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2480.c b/parser/static/small_parse_table/small_parse_table_2480.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2480.c rename to parser/static/small_parse_table/small_parse_table_2480.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2481.c b/parser/static/small_parse_table/small_parse_table_2481.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2481.c rename to parser/static/small_parse_table/small_parse_table_2481.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2482.c b/parser/static/small_parse_table/small_parse_table_2482.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2482.c rename to parser/static/small_parse_table/small_parse_table_2482.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2483.c b/parser/static/small_parse_table/small_parse_table_2483.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2483.c rename to parser/static/small_parse_table/small_parse_table_2483.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2484.c b/parser/static/small_parse_table/small_parse_table_2484.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2484.c rename to parser/static/small_parse_table/small_parse_table_2484.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2485.c b/parser/static/small_parse_table/small_parse_table_2485.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2485.c rename to parser/static/small_parse_table/small_parse_table_2485.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2486.c b/parser/static/small_parse_table/small_parse_table_2486.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2486.c rename to parser/static/small_parse_table/small_parse_table_2486.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2487.c b/parser/static/small_parse_table/small_parse_table_2487.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2487.c rename to parser/static/small_parse_table/small_parse_table_2487.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2488.c b/parser/static/small_parse_table/small_parse_table_2488.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2488.c rename to parser/static/small_parse_table/small_parse_table_2488.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2489.c b/parser/static/small_parse_table/small_parse_table_2489.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2489.c rename to parser/static/small_parse_table/small_parse_table_2489.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_249.c b/parser/static/small_parse_table/small_parse_table_249.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_249.c rename to parser/static/small_parse_table/small_parse_table_249.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2490.c b/parser/static/small_parse_table/small_parse_table_2490.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2490.c rename to parser/static/small_parse_table/small_parse_table_2490.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2491.c b/parser/static/small_parse_table/small_parse_table_2491.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2491.c rename to parser/static/small_parse_table/small_parse_table_2491.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2492.c b/parser/static/small_parse_table/small_parse_table_2492.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2492.c rename to parser/static/small_parse_table/small_parse_table_2492.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2493.c b/parser/static/small_parse_table/small_parse_table_2493.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2493.c rename to parser/static/small_parse_table/small_parse_table_2493.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2494.c b/parser/static/small_parse_table/small_parse_table_2494.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2494.c rename to parser/static/small_parse_table/small_parse_table_2494.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2495.c b/parser/static/small_parse_table/small_parse_table_2495.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2495.c rename to parser/static/small_parse_table/small_parse_table_2495.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2496.c b/parser/static/small_parse_table/small_parse_table_2496.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2496.c rename to parser/static/small_parse_table/small_parse_table_2496.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2497.c b/parser/static/small_parse_table/small_parse_table_2497.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2497.c rename to parser/static/small_parse_table/small_parse_table_2497.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2498.c b/parser/static/small_parse_table/small_parse_table_2498.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2498.c rename to parser/static/small_parse_table/small_parse_table_2498.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2499.c b/parser/static/small_parse_table/small_parse_table_2499.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2499.c rename to parser/static/small_parse_table/small_parse_table_2499.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_25.c b/parser/static/small_parse_table/small_parse_table_25.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_25.c rename to parser/static/small_parse_table/small_parse_table_25.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_250.c b/parser/static/small_parse_table/small_parse_table_250.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_250.c rename to parser/static/small_parse_table/small_parse_table_250.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2500.c b/parser/static/small_parse_table/small_parse_table_2500.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2500.c rename to parser/static/small_parse_table/small_parse_table_2500.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2501.c b/parser/static/small_parse_table/small_parse_table_2501.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2501.c rename to parser/static/small_parse_table/small_parse_table_2501.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2502.c b/parser/static/small_parse_table/small_parse_table_2502.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2502.c rename to parser/static/small_parse_table/small_parse_table_2502.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2503.c b/parser/static/small_parse_table/small_parse_table_2503.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2503.c rename to parser/static/small_parse_table/small_parse_table_2503.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2504.c b/parser/static/small_parse_table/small_parse_table_2504.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2504.c rename to parser/static/small_parse_table/small_parse_table_2504.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2505.c b/parser/static/small_parse_table/small_parse_table_2505.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2505.c rename to parser/static/small_parse_table/small_parse_table_2505.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2506.c b/parser/static/small_parse_table/small_parse_table_2506.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2506.c rename to parser/static/small_parse_table/small_parse_table_2506.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2507.c b/parser/static/small_parse_table/small_parse_table_2507.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2507.c rename to parser/static/small_parse_table/small_parse_table_2507.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2508.c b/parser/static/small_parse_table/small_parse_table_2508.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2508.c rename to parser/static/small_parse_table/small_parse_table_2508.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2509.c b/parser/static/small_parse_table/small_parse_table_2509.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2509.c rename to parser/static/small_parse_table/small_parse_table_2509.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_251.c b/parser/static/small_parse_table/small_parse_table_251.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_251.c rename to parser/static/small_parse_table/small_parse_table_251.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2510.c b/parser/static/small_parse_table/small_parse_table_2510.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2510.c rename to parser/static/small_parse_table/small_parse_table_2510.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2511.c b/parser/static/small_parse_table/small_parse_table_2511.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2511.c rename to parser/static/small_parse_table/small_parse_table_2511.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2512.c b/parser/static/small_parse_table/small_parse_table_2512.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2512.c rename to parser/static/small_parse_table/small_parse_table_2512.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2513.c b/parser/static/small_parse_table/small_parse_table_2513.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2513.c rename to parser/static/small_parse_table/small_parse_table_2513.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2514.c b/parser/static/small_parse_table/small_parse_table_2514.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2514.c rename to parser/static/small_parse_table/small_parse_table_2514.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2515.c b/parser/static/small_parse_table/small_parse_table_2515.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2515.c rename to parser/static/small_parse_table/small_parse_table_2515.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2516.c b/parser/static/small_parse_table/small_parse_table_2516.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2516.c rename to parser/static/small_parse_table/small_parse_table_2516.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2517.c b/parser/static/small_parse_table/small_parse_table_2517.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2517.c rename to parser/static/small_parse_table/small_parse_table_2517.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2518.c b/parser/static/small_parse_table/small_parse_table_2518.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2518.c rename to parser/static/small_parse_table/small_parse_table_2518.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2519.c b/parser/static/small_parse_table/small_parse_table_2519.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2519.c rename to parser/static/small_parse_table/small_parse_table_2519.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_252.c b/parser/static/small_parse_table/small_parse_table_252.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_252.c rename to parser/static/small_parse_table/small_parse_table_252.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2520.c b/parser/static/small_parse_table/small_parse_table_2520.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2520.c rename to parser/static/small_parse_table/small_parse_table_2520.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2521.c b/parser/static/small_parse_table/small_parse_table_2521.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2521.c rename to parser/static/small_parse_table/small_parse_table_2521.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2522.c b/parser/static/small_parse_table/small_parse_table_2522.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2522.c rename to parser/static/small_parse_table/small_parse_table_2522.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2523.c b/parser/static/small_parse_table/small_parse_table_2523.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2523.c rename to parser/static/small_parse_table/small_parse_table_2523.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2524.c b/parser/static/small_parse_table/small_parse_table_2524.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2524.c rename to parser/static/small_parse_table/small_parse_table_2524.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2525.c b/parser/static/small_parse_table/small_parse_table_2525.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2525.c rename to parser/static/small_parse_table/small_parse_table_2525.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2526.c b/parser/static/small_parse_table/small_parse_table_2526.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2526.c rename to parser/static/small_parse_table/small_parse_table_2526.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2527.c b/parser/static/small_parse_table/small_parse_table_2527.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2527.c rename to parser/static/small_parse_table/small_parse_table_2527.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2528.c b/parser/static/small_parse_table/small_parse_table_2528.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2528.c rename to parser/static/small_parse_table/small_parse_table_2528.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2529.c b/parser/static/small_parse_table/small_parse_table_2529.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2529.c rename to parser/static/small_parse_table/small_parse_table_2529.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_253.c b/parser/static/small_parse_table/small_parse_table_253.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_253.c rename to parser/static/small_parse_table/small_parse_table_253.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2530.c b/parser/static/small_parse_table/small_parse_table_2530.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2530.c rename to parser/static/small_parse_table/small_parse_table_2530.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2531.c b/parser/static/small_parse_table/small_parse_table_2531.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2531.c rename to parser/static/small_parse_table/small_parse_table_2531.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2532.c b/parser/static/small_parse_table/small_parse_table_2532.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2532.c rename to parser/static/small_parse_table/small_parse_table_2532.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2533.c b/parser/static/small_parse_table/small_parse_table_2533.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2533.c rename to parser/static/small_parse_table/small_parse_table_2533.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2534.c b/parser/static/small_parse_table/small_parse_table_2534.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2534.c rename to parser/static/small_parse_table/small_parse_table_2534.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2535.c b/parser/static/small_parse_table/small_parse_table_2535.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2535.c rename to parser/static/small_parse_table/small_parse_table_2535.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2536.c b/parser/static/small_parse_table/small_parse_table_2536.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2536.c rename to parser/static/small_parse_table/small_parse_table_2536.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2537.c b/parser/static/small_parse_table/small_parse_table_2537.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2537.c rename to parser/static/small_parse_table/small_parse_table_2537.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2538.c b/parser/static/small_parse_table/small_parse_table_2538.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2538.c rename to parser/static/small_parse_table/small_parse_table_2538.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2539.c b/parser/static/small_parse_table/small_parse_table_2539.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2539.c rename to parser/static/small_parse_table/small_parse_table_2539.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_254.c b/parser/static/small_parse_table/small_parse_table_254.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_254.c rename to parser/static/small_parse_table/small_parse_table_254.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2540.c b/parser/static/small_parse_table/small_parse_table_2540.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2540.c rename to parser/static/small_parse_table/small_parse_table_2540.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2541.c b/parser/static/small_parse_table/small_parse_table_2541.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2541.c rename to parser/static/small_parse_table/small_parse_table_2541.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2542.c b/parser/static/small_parse_table/small_parse_table_2542.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2542.c rename to parser/static/small_parse_table/small_parse_table_2542.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2543.c b/parser/static/small_parse_table/small_parse_table_2543.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2543.c rename to parser/static/small_parse_table/small_parse_table_2543.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2544.c b/parser/static/small_parse_table/small_parse_table_2544.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2544.c rename to parser/static/small_parse_table/small_parse_table_2544.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2545.c b/parser/static/small_parse_table/small_parse_table_2545.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2545.c rename to parser/static/small_parse_table/small_parse_table_2545.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2546.c b/parser/static/small_parse_table/small_parse_table_2546.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2546.c rename to parser/static/small_parse_table/small_parse_table_2546.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2547.c b/parser/static/small_parse_table/small_parse_table_2547.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2547.c rename to parser/static/small_parse_table/small_parse_table_2547.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2548.c b/parser/static/small_parse_table/small_parse_table_2548.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2548.c rename to parser/static/small_parse_table/small_parse_table_2548.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2549.c b/parser/static/small_parse_table/small_parse_table_2549.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2549.c rename to parser/static/small_parse_table/small_parse_table_2549.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_255.c b/parser/static/small_parse_table/small_parse_table_255.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_255.c rename to parser/static/small_parse_table/small_parse_table_255.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2550.c b/parser/static/small_parse_table/small_parse_table_2550.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2550.c rename to parser/static/small_parse_table/small_parse_table_2550.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2551.c b/parser/static/small_parse_table/small_parse_table_2551.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2551.c rename to parser/static/small_parse_table/small_parse_table_2551.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2552.c b/parser/static/small_parse_table/small_parse_table_2552.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2552.c rename to parser/static/small_parse_table/small_parse_table_2552.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2553.c b/parser/static/small_parse_table/small_parse_table_2553.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2553.c rename to parser/static/small_parse_table/small_parse_table_2553.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2554.c b/parser/static/small_parse_table/small_parse_table_2554.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2554.c rename to parser/static/small_parse_table/small_parse_table_2554.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2555.c b/parser/static/small_parse_table/small_parse_table_2555.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2555.c rename to parser/static/small_parse_table/small_parse_table_2555.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2556.c b/parser/static/small_parse_table/small_parse_table_2556.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2556.c rename to parser/static/small_parse_table/small_parse_table_2556.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2557.c b/parser/static/small_parse_table/small_parse_table_2557.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2557.c rename to parser/static/small_parse_table/small_parse_table_2557.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2558.c b/parser/static/small_parse_table/small_parse_table_2558.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2558.c rename to parser/static/small_parse_table/small_parse_table_2558.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2559.c b/parser/static/small_parse_table/small_parse_table_2559.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2559.c rename to parser/static/small_parse_table/small_parse_table_2559.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_256.c b/parser/static/small_parse_table/small_parse_table_256.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_256.c rename to parser/static/small_parse_table/small_parse_table_256.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2560.c b/parser/static/small_parse_table/small_parse_table_2560.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2560.c rename to parser/static/small_parse_table/small_parse_table_2560.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2561.c b/parser/static/small_parse_table/small_parse_table_2561.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2561.c rename to parser/static/small_parse_table/small_parse_table_2561.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2562.c b/parser/static/small_parse_table/small_parse_table_2562.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2562.c rename to parser/static/small_parse_table/small_parse_table_2562.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2563.c b/parser/static/small_parse_table/small_parse_table_2563.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2563.c rename to parser/static/small_parse_table/small_parse_table_2563.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2564.c b/parser/static/small_parse_table/small_parse_table_2564.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2564.c rename to parser/static/small_parse_table/small_parse_table_2564.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2565.c b/parser/static/small_parse_table/small_parse_table_2565.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2565.c rename to parser/static/small_parse_table/small_parse_table_2565.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2566.c b/parser/static/small_parse_table/small_parse_table_2566.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2566.c rename to parser/static/small_parse_table/small_parse_table_2566.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2567.c b/parser/static/small_parse_table/small_parse_table_2567.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2567.c rename to parser/static/small_parse_table/small_parse_table_2567.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2568.c b/parser/static/small_parse_table/small_parse_table_2568.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2568.c rename to parser/static/small_parse_table/small_parse_table_2568.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2569.c b/parser/static/small_parse_table/small_parse_table_2569.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2569.c rename to parser/static/small_parse_table/small_parse_table_2569.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_257.c b/parser/static/small_parse_table/small_parse_table_257.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_257.c rename to parser/static/small_parse_table/small_parse_table_257.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2570.c b/parser/static/small_parse_table/small_parse_table_2570.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2570.c rename to parser/static/small_parse_table/small_parse_table_2570.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2571.c b/parser/static/small_parse_table/small_parse_table_2571.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2571.c rename to parser/static/small_parse_table/small_parse_table_2571.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2572.c b/parser/static/small_parse_table/small_parse_table_2572.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2572.c rename to parser/static/small_parse_table/small_parse_table_2572.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2573.c b/parser/static/small_parse_table/small_parse_table_2573.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2573.c rename to parser/static/small_parse_table/small_parse_table_2573.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2574.c b/parser/static/small_parse_table/small_parse_table_2574.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2574.c rename to parser/static/small_parse_table/small_parse_table_2574.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2575.c b/parser/static/small_parse_table/small_parse_table_2575.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2575.c rename to parser/static/small_parse_table/small_parse_table_2575.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2576.c b/parser/static/small_parse_table/small_parse_table_2576.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2576.c rename to parser/static/small_parse_table/small_parse_table_2576.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2577.c b/parser/static/small_parse_table/small_parse_table_2577.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2577.c rename to parser/static/small_parse_table/small_parse_table_2577.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2578.c b/parser/static/small_parse_table/small_parse_table_2578.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2578.c rename to parser/static/small_parse_table/small_parse_table_2578.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2579.c b/parser/static/small_parse_table/small_parse_table_2579.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2579.c rename to parser/static/small_parse_table/small_parse_table_2579.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_258.c b/parser/static/small_parse_table/small_parse_table_258.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_258.c rename to parser/static/small_parse_table/small_parse_table_258.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2580.c b/parser/static/small_parse_table/small_parse_table_2580.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2580.c rename to parser/static/small_parse_table/small_parse_table_2580.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2581.c b/parser/static/small_parse_table/small_parse_table_2581.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2581.c rename to parser/static/small_parse_table/small_parse_table_2581.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2582.c b/parser/static/small_parse_table/small_parse_table_2582.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2582.c rename to parser/static/small_parse_table/small_parse_table_2582.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2583.c b/parser/static/small_parse_table/small_parse_table_2583.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2583.c rename to parser/static/small_parse_table/small_parse_table_2583.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2584.c b/parser/static/small_parse_table/small_parse_table_2584.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2584.c rename to parser/static/small_parse_table/small_parse_table_2584.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2585.c b/parser/static/small_parse_table/small_parse_table_2585.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2585.c rename to parser/static/small_parse_table/small_parse_table_2585.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2586.c b/parser/static/small_parse_table/small_parse_table_2586.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2586.c rename to parser/static/small_parse_table/small_parse_table_2586.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2587.c b/parser/static/small_parse_table/small_parse_table_2587.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2587.c rename to parser/static/small_parse_table/small_parse_table_2587.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2588.c b/parser/static/small_parse_table/small_parse_table_2588.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2588.c rename to parser/static/small_parse_table/small_parse_table_2588.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2589.c b/parser/static/small_parse_table/small_parse_table_2589.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2589.c rename to parser/static/small_parse_table/small_parse_table_2589.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_259.c b/parser/static/small_parse_table/small_parse_table_259.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_259.c rename to parser/static/small_parse_table/small_parse_table_259.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2590.c b/parser/static/small_parse_table/small_parse_table_2590.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2590.c rename to parser/static/small_parse_table/small_parse_table_2590.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2591.c b/parser/static/small_parse_table/small_parse_table_2591.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2591.c rename to parser/static/small_parse_table/small_parse_table_2591.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2592.c b/parser/static/small_parse_table/small_parse_table_2592.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2592.c rename to parser/static/small_parse_table/small_parse_table_2592.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2593.c b/parser/static/small_parse_table/small_parse_table_2593.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2593.c rename to parser/static/small_parse_table/small_parse_table_2593.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2594.c b/parser/static/small_parse_table/small_parse_table_2594.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2594.c rename to parser/static/small_parse_table/small_parse_table_2594.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2595.c b/parser/static/small_parse_table/small_parse_table_2595.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2595.c rename to parser/static/small_parse_table/small_parse_table_2595.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2596.c b/parser/static/small_parse_table/small_parse_table_2596.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2596.c rename to parser/static/small_parse_table/small_parse_table_2596.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2597.c b/parser/static/small_parse_table/small_parse_table_2597.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2597.c rename to parser/static/small_parse_table/small_parse_table_2597.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2598.c b/parser/static/small_parse_table/small_parse_table_2598.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2598.c rename to parser/static/small_parse_table/small_parse_table_2598.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2599.c b/parser/static/small_parse_table/small_parse_table_2599.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2599.c rename to parser/static/small_parse_table/small_parse_table_2599.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_26.c b/parser/static/small_parse_table/small_parse_table_26.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_26.c rename to parser/static/small_parse_table/small_parse_table_26.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_260.c b/parser/static/small_parse_table/small_parse_table_260.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_260.c rename to parser/static/small_parse_table/small_parse_table_260.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2600.c b/parser/static/small_parse_table/small_parse_table_2600.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2600.c rename to parser/static/small_parse_table/small_parse_table_2600.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2601.c b/parser/static/small_parse_table/small_parse_table_2601.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2601.c rename to parser/static/small_parse_table/small_parse_table_2601.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2602.c b/parser/static/small_parse_table/small_parse_table_2602.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2602.c rename to parser/static/small_parse_table/small_parse_table_2602.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2603.c b/parser/static/small_parse_table/small_parse_table_2603.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2603.c rename to parser/static/small_parse_table/small_parse_table_2603.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2604.c b/parser/static/small_parse_table/small_parse_table_2604.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2604.c rename to parser/static/small_parse_table/small_parse_table_2604.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2605.c b/parser/static/small_parse_table/small_parse_table_2605.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2605.c rename to parser/static/small_parse_table/small_parse_table_2605.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2606.c b/parser/static/small_parse_table/small_parse_table_2606.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2606.c rename to parser/static/small_parse_table/small_parse_table_2606.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2607.c b/parser/static/small_parse_table/small_parse_table_2607.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2607.c rename to parser/static/small_parse_table/small_parse_table_2607.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2608.c b/parser/static/small_parse_table/small_parse_table_2608.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2608.c rename to parser/static/small_parse_table/small_parse_table_2608.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2609.c b/parser/static/small_parse_table/small_parse_table_2609.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2609.c rename to parser/static/small_parse_table/small_parse_table_2609.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_261.c b/parser/static/small_parse_table/small_parse_table_261.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_261.c rename to parser/static/small_parse_table/small_parse_table_261.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2610.c b/parser/static/small_parse_table/small_parse_table_2610.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2610.c rename to parser/static/small_parse_table/small_parse_table_2610.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2611.c b/parser/static/small_parse_table/small_parse_table_2611.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2611.c rename to parser/static/small_parse_table/small_parse_table_2611.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2612.c b/parser/static/small_parse_table/small_parse_table_2612.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2612.c rename to parser/static/small_parse_table/small_parse_table_2612.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2613.c b/parser/static/small_parse_table/small_parse_table_2613.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2613.c rename to parser/static/small_parse_table/small_parse_table_2613.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2614.c b/parser/static/small_parse_table/small_parse_table_2614.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2614.c rename to parser/static/small_parse_table/small_parse_table_2614.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2615.c b/parser/static/small_parse_table/small_parse_table_2615.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2615.c rename to parser/static/small_parse_table/small_parse_table_2615.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2616.c b/parser/static/small_parse_table/small_parse_table_2616.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2616.c rename to parser/static/small_parse_table/small_parse_table_2616.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2617.c b/parser/static/small_parse_table/small_parse_table_2617.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2617.c rename to parser/static/small_parse_table/small_parse_table_2617.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2618.c b/parser/static/small_parse_table/small_parse_table_2618.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2618.c rename to parser/static/small_parse_table/small_parse_table_2618.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2619.c b/parser/static/small_parse_table/small_parse_table_2619.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2619.c rename to parser/static/small_parse_table/small_parse_table_2619.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_262.c b/parser/static/small_parse_table/small_parse_table_262.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_262.c rename to parser/static/small_parse_table/small_parse_table_262.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2620.c b/parser/static/small_parse_table/small_parse_table_2620.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2620.c rename to parser/static/small_parse_table/small_parse_table_2620.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2621.c b/parser/static/small_parse_table/small_parse_table_2621.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2621.c rename to parser/static/small_parse_table/small_parse_table_2621.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2622.c b/parser/static/small_parse_table/small_parse_table_2622.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2622.c rename to parser/static/small_parse_table/small_parse_table_2622.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2623.c b/parser/static/small_parse_table/small_parse_table_2623.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2623.c rename to parser/static/small_parse_table/small_parse_table_2623.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2624.c b/parser/static/small_parse_table/small_parse_table_2624.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2624.c rename to parser/static/small_parse_table/small_parse_table_2624.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2625.c b/parser/static/small_parse_table/small_parse_table_2625.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2625.c rename to parser/static/small_parse_table/small_parse_table_2625.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2626.c b/parser/static/small_parse_table/small_parse_table_2626.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2626.c rename to parser/static/small_parse_table/small_parse_table_2626.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2627.c b/parser/static/small_parse_table/small_parse_table_2627.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2627.c rename to parser/static/small_parse_table/small_parse_table_2627.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2628.c b/parser/static/small_parse_table/small_parse_table_2628.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2628.c rename to parser/static/small_parse_table/small_parse_table_2628.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2629.c b/parser/static/small_parse_table/small_parse_table_2629.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2629.c rename to parser/static/small_parse_table/small_parse_table_2629.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_263.c b/parser/static/small_parse_table/small_parse_table_263.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_263.c rename to parser/static/small_parse_table/small_parse_table_263.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2630.c b/parser/static/small_parse_table/small_parse_table_2630.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2630.c rename to parser/static/small_parse_table/small_parse_table_2630.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2631.c b/parser/static/small_parse_table/small_parse_table_2631.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2631.c rename to parser/static/small_parse_table/small_parse_table_2631.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2632.c b/parser/static/small_parse_table/small_parse_table_2632.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2632.c rename to parser/static/small_parse_table/small_parse_table_2632.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2633.c b/parser/static/small_parse_table/small_parse_table_2633.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2633.c rename to parser/static/small_parse_table/small_parse_table_2633.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2634.c b/parser/static/small_parse_table/small_parse_table_2634.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2634.c rename to parser/static/small_parse_table/small_parse_table_2634.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2635.c b/parser/static/small_parse_table/small_parse_table_2635.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2635.c rename to parser/static/small_parse_table/small_parse_table_2635.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2636.c b/parser/static/small_parse_table/small_parse_table_2636.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2636.c rename to parser/static/small_parse_table/small_parse_table_2636.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2637.c b/parser/static/small_parse_table/small_parse_table_2637.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2637.c rename to parser/static/small_parse_table/small_parse_table_2637.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2638.c b/parser/static/small_parse_table/small_parse_table_2638.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2638.c rename to parser/static/small_parse_table/small_parse_table_2638.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2639.c b/parser/static/small_parse_table/small_parse_table_2639.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2639.c rename to parser/static/small_parse_table/small_parse_table_2639.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_264.c b/parser/static/small_parse_table/small_parse_table_264.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_264.c rename to parser/static/small_parse_table/small_parse_table_264.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2640.c b/parser/static/small_parse_table/small_parse_table_2640.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2640.c rename to parser/static/small_parse_table/small_parse_table_2640.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2641.c b/parser/static/small_parse_table/small_parse_table_2641.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2641.c rename to parser/static/small_parse_table/small_parse_table_2641.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2642.c b/parser/static/small_parse_table/small_parse_table_2642.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2642.c rename to parser/static/small_parse_table/small_parse_table_2642.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2643.c b/parser/static/small_parse_table/small_parse_table_2643.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2643.c rename to parser/static/small_parse_table/small_parse_table_2643.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2644.c b/parser/static/small_parse_table/small_parse_table_2644.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2644.c rename to parser/static/small_parse_table/small_parse_table_2644.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2645.c b/parser/static/small_parse_table/small_parse_table_2645.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2645.c rename to parser/static/small_parse_table/small_parse_table_2645.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2646.c b/parser/static/small_parse_table/small_parse_table_2646.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2646.c rename to parser/static/small_parse_table/small_parse_table_2646.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2647.c b/parser/static/small_parse_table/small_parse_table_2647.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2647.c rename to parser/static/small_parse_table/small_parse_table_2647.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2648.c b/parser/static/small_parse_table/small_parse_table_2648.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2648.c rename to parser/static/small_parse_table/small_parse_table_2648.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2649.c b/parser/static/small_parse_table/small_parse_table_2649.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2649.c rename to parser/static/small_parse_table/small_parse_table_2649.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_265.c b/parser/static/small_parse_table/small_parse_table_265.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_265.c rename to parser/static/small_parse_table/small_parse_table_265.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2650.c b/parser/static/small_parse_table/small_parse_table_2650.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2650.c rename to parser/static/small_parse_table/small_parse_table_2650.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2651.c b/parser/static/small_parse_table/small_parse_table_2651.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2651.c rename to parser/static/small_parse_table/small_parse_table_2651.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2652.c b/parser/static/small_parse_table/small_parse_table_2652.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2652.c rename to parser/static/small_parse_table/small_parse_table_2652.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2653.c b/parser/static/small_parse_table/small_parse_table_2653.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2653.c rename to parser/static/small_parse_table/small_parse_table_2653.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2654.c b/parser/static/small_parse_table/small_parse_table_2654.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2654.c rename to parser/static/small_parse_table/small_parse_table_2654.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2655.c b/parser/static/small_parse_table/small_parse_table_2655.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2655.c rename to parser/static/small_parse_table/small_parse_table_2655.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2656.c b/parser/static/small_parse_table/small_parse_table_2656.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2656.c rename to parser/static/small_parse_table/small_parse_table_2656.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2657.c b/parser/static/small_parse_table/small_parse_table_2657.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2657.c rename to parser/static/small_parse_table/small_parse_table_2657.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2658.c b/parser/static/small_parse_table/small_parse_table_2658.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2658.c rename to parser/static/small_parse_table/small_parse_table_2658.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2659.c b/parser/static/small_parse_table/small_parse_table_2659.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2659.c rename to parser/static/small_parse_table/small_parse_table_2659.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_266.c b/parser/static/small_parse_table/small_parse_table_266.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_266.c rename to parser/static/small_parse_table/small_parse_table_266.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2660.c b/parser/static/small_parse_table/small_parse_table_2660.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2660.c rename to parser/static/small_parse_table/small_parse_table_2660.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2661.c b/parser/static/small_parse_table/small_parse_table_2661.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2661.c rename to parser/static/small_parse_table/small_parse_table_2661.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2662.c b/parser/static/small_parse_table/small_parse_table_2662.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2662.c rename to parser/static/small_parse_table/small_parse_table_2662.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2663.c b/parser/static/small_parse_table/small_parse_table_2663.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2663.c rename to parser/static/small_parse_table/small_parse_table_2663.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2664.c b/parser/static/small_parse_table/small_parse_table_2664.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2664.c rename to parser/static/small_parse_table/small_parse_table_2664.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2665.c b/parser/static/small_parse_table/small_parse_table_2665.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2665.c rename to parser/static/small_parse_table/small_parse_table_2665.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2666.c b/parser/static/small_parse_table/small_parse_table_2666.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2666.c rename to parser/static/small_parse_table/small_parse_table_2666.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2667.c b/parser/static/small_parse_table/small_parse_table_2667.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2667.c rename to parser/static/small_parse_table/small_parse_table_2667.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2668.c b/parser/static/small_parse_table/small_parse_table_2668.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2668.c rename to parser/static/small_parse_table/small_parse_table_2668.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2669.c b/parser/static/small_parse_table/small_parse_table_2669.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2669.c rename to parser/static/small_parse_table/small_parse_table_2669.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_267.c b/parser/static/small_parse_table/small_parse_table_267.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_267.c rename to parser/static/small_parse_table/small_parse_table_267.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2670.c b/parser/static/small_parse_table/small_parse_table_2670.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2670.c rename to parser/static/small_parse_table/small_parse_table_2670.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2671.c b/parser/static/small_parse_table/small_parse_table_2671.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2671.c rename to parser/static/small_parse_table/small_parse_table_2671.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2672.c b/parser/static/small_parse_table/small_parse_table_2672.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2672.c rename to parser/static/small_parse_table/small_parse_table_2672.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2673.c b/parser/static/small_parse_table/small_parse_table_2673.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2673.c rename to parser/static/small_parse_table/small_parse_table_2673.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2674.c b/parser/static/small_parse_table/small_parse_table_2674.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2674.c rename to parser/static/small_parse_table/small_parse_table_2674.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2675.c b/parser/static/small_parse_table/small_parse_table_2675.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2675.c rename to parser/static/small_parse_table/small_parse_table_2675.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2676.c b/parser/static/small_parse_table/small_parse_table_2676.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2676.c rename to parser/static/small_parse_table/small_parse_table_2676.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2677.c b/parser/static/small_parse_table/small_parse_table_2677.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2677.c rename to parser/static/small_parse_table/small_parse_table_2677.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2678.c b/parser/static/small_parse_table/small_parse_table_2678.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2678.c rename to parser/static/small_parse_table/small_parse_table_2678.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2679.c b/parser/static/small_parse_table/small_parse_table_2679.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2679.c rename to parser/static/small_parse_table/small_parse_table_2679.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_268.c b/parser/static/small_parse_table/small_parse_table_268.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_268.c rename to parser/static/small_parse_table/small_parse_table_268.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2680.c b/parser/static/small_parse_table/small_parse_table_2680.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2680.c rename to parser/static/small_parse_table/small_parse_table_2680.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2681.c b/parser/static/small_parse_table/small_parse_table_2681.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2681.c rename to parser/static/small_parse_table/small_parse_table_2681.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2682.c b/parser/static/small_parse_table/small_parse_table_2682.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2682.c rename to parser/static/small_parse_table/small_parse_table_2682.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2683.c b/parser/static/small_parse_table/small_parse_table_2683.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2683.c rename to parser/static/small_parse_table/small_parse_table_2683.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2684.c b/parser/static/small_parse_table/small_parse_table_2684.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2684.c rename to parser/static/small_parse_table/small_parse_table_2684.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2685.c b/parser/static/small_parse_table/small_parse_table_2685.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2685.c rename to parser/static/small_parse_table/small_parse_table_2685.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2686.c b/parser/static/small_parse_table/small_parse_table_2686.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2686.c rename to parser/static/small_parse_table/small_parse_table_2686.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2687.c b/parser/static/small_parse_table/small_parse_table_2687.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2687.c rename to parser/static/small_parse_table/small_parse_table_2687.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2688.c b/parser/static/small_parse_table/small_parse_table_2688.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2688.c rename to parser/static/small_parse_table/small_parse_table_2688.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2689.c b/parser/static/small_parse_table/small_parse_table_2689.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2689.c rename to parser/static/small_parse_table/small_parse_table_2689.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_269.c b/parser/static/small_parse_table/small_parse_table_269.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_269.c rename to parser/static/small_parse_table/small_parse_table_269.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2690.c b/parser/static/small_parse_table/small_parse_table_2690.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2690.c rename to parser/static/small_parse_table/small_parse_table_2690.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2691.c b/parser/static/small_parse_table/small_parse_table_2691.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2691.c rename to parser/static/small_parse_table/small_parse_table_2691.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2692.c b/parser/static/small_parse_table/small_parse_table_2692.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2692.c rename to parser/static/small_parse_table/small_parse_table_2692.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2693.c b/parser/static/small_parse_table/small_parse_table_2693.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2693.c rename to parser/static/small_parse_table/small_parse_table_2693.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2694.c b/parser/static/small_parse_table/small_parse_table_2694.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2694.c rename to parser/static/small_parse_table/small_parse_table_2694.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2695.c b/parser/static/small_parse_table/small_parse_table_2695.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2695.c rename to parser/static/small_parse_table/small_parse_table_2695.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2696.c b/parser/static/small_parse_table/small_parse_table_2696.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2696.c rename to parser/static/small_parse_table/small_parse_table_2696.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2697.c b/parser/static/small_parse_table/small_parse_table_2697.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2697.c rename to parser/static/small_parse_table/small_parse_table_2697.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2698.c b/parser/static/small_parse_table/small_parse_table_2698.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2698.c rename to parser/static/small_parse_table/small_parse_table_2698.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2699.c b/parser/static/small_parse_table/small_parse_table_2699.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2699.c rename to parser/static/small_parse_table/small_parse_table_2699.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_27.c b/parser/static/small_parse_table/small_parse_table_27.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_27.c rename to parser/static/small_parse_table/small_parse_table_27.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_270.c b/parser/static/small_parse_table/small_parse_table_270.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_270.c rename to parser/static/small_parse_table/small_parse_table_270.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2700.c b/parser/static/small_parse_table/small_parse_table_2700.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2700.c rename to parser/static/small_parse_table/small_parse_table_2700.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2701.c b/parser/static/small_parse_table/small_parse_table_2701.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2701.c rename to parser/static/small_parse_table/small_parse_table_2701.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2702.c b/parser/static/small_parse_table/small_parse_table_2702.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2702.c rename to parser/static/small_parse_table/small_parse_table_2702.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2703.c b/parser/static/small_parse_table/small_parse_table_2703.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2703.c rename to parser/static/small_parse_table/small_parse_table_2703.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2704.c b/parser/static/small_parse_table/small_parse_table_2704.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2704.c rename to parser/static/small_parse_table/small_parse_table_2704.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2705.c b/parser/static/small_parse_table/small_parse_table_2705.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2705.c rename to parser/static/small_parse_table/small_parse_table_2705.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2706.c b/parser/static/small_parse_table/small_parse_table_2706.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2706.c rename to parser/static/small_parse_table/small_parse_table_2706.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2707.c b/parser/static/small_parse_table/small_parse_table_2707.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2707.c rename to parser/static/small_parse_table/small_parse_table_2707.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2708.c b/parser/static/small_parse_table/small_parse_table_2708.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2708.c rename to parser/static/small_parse_table/small_parse_table_2708.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2709.c b/parser/static/small_parse_table/small_parse_table_2709.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2709.c rename to parser/static/small_parse_table/small_parse_table_2709.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_271.c b/parser/static/small_parse_table/small_parse_table_271.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_271.c rename to parser/static/small_parse_table/small_parse_table_271.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2710.c b/parser/static/small_parse_table/small_parse_table_2710.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2710.c rename to parser/static/small_parse_table/small_parse_table_2710.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2711.c b/parser/static/small_parse_table/small_parse_table_2711.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2711.c rename to parser/static/small_parse_table/small_parse_table_2711.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2712.c b/parser/static/small_parse_table/small_parse_table_2712.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2712.c rename to parser/static/small_parse_table/small_parse_table_2712.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2713.c b/parser/static/small_parse_table/small_parse_table_2713.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2713.c rename to parser/static/small_parse_table/small_parse_table_2713.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2714.c b/parser/static/small_parse_table/small_parse_table_2714.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2714.c rename to parser/static/small_parse_table/small_parse_table_2714.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2715.c b/parser/static/small_parse_table/small_parse_table_2715.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2715.c rename to parser/static/small_parse_table/small_parse_table_2715.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2716.c b/parser/static/small_parse_table/small_parse_table_2716.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2716.c rename to parser/static/small_parse_table/small_parse_table_2716.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2717.c b/parser/static/small_parse_table/small_parse_table_2717.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2717.c rename to parser/static/small_parse_table/small_parse_table_2717.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2718.c b/parser/static/small_parse_table/small_parse_table_2718.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2718.c rename to parser/static/small_parse_table/small_parse_table_2718.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2719.c b/parser/static/small_parse_table/small_parse_table_2719.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2719.c rename to parser/static/small_parse_table/small_parse_table_2719.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_272.c b/parser/static/small_parse_table/small_parse_table_272.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_272.c rename to parser/static/small_parse_table/small_parse_table_272.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2720.c b/parser/static/small_parse_table/small_parse_table_2720.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2720.c rename to parser/static/small_parse_table/small_parse_table_2720.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2721.c b/parser/static/small_parse_table/small_parse_table_2721.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2721.c rename to parser/static/small_parse_table/small_parse_table_2721.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2722.c b/parser/static/small_parse_table/small_parse_table_2722.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2722.c rename to parser/static/small_parse_table/small_parse_table_2722.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2723.c b/parser/static/small_parse_table/small_parse_table_2723.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2723.c rename to parser/static/small_parse_table/small_parse_table_2723.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2724.c b/parser/static/small_parse_table/small_parse_table_2724.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2724.c rename to parser/static/small_parse_table/small_parse_table_2724.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2725.c b/parser/static/small_parse_table/small_parse_table_2725.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2725.c rename to parser/static/small_parse_table/small_parse_table_2725.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2726.c b/parser/static/small_parse_table/small_parse_table_2726.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2726.c rename to parser/static/small_parse_table/small_parse_table_2726.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2727.c b/parser/static/small_parse_table/small_parse_table_2727.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2727.c rename to parser/static/small_parse_table/small_parse_table_2727.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2728.c b/parser/static/small_parse_table/small_parse_table_2728.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2728.c rename to parser/static/small_parse_table/small_parse_table_2728.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2729.c b/parser/static/small_parse_table/small_parse_table_2729.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2729.c rename to parser/static/small_parse_table/small_parse_table_2729.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_273.c b/parser/static/small_parse_table/small_parse_table_273.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_273.c rename to parser/static/small_parse_table/small_parse_table_273.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2730.c b/parser/static/small_parse_table/small_parse_table_2730.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2730.c rename to parser/static/small_parse_table/small_parse_table_2730.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2731.c b/parser/static/small_parse_table/small_parse_table_2731.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2731.c rename to parser/static/small_parse_table/small_parse_table_2731.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2732.c b/parser/static/small_parse_table/small_parse_table_2732.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2732.c rename to parser/static/small_parse_table/small_parse_table_2732.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2733.c b/parser/static/small_parse_table/small_parse_table_2733.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2733.c rename to parser/static/small_parse_table/small_parse_table_2733.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2734.c b/parser/static/small_parse_table/small_parse_table_2734.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2734.c rename to parser/static/small_parse_table/small_parse_table_2734.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2735.c b/parser/static/small_parse_table/small_parse_table_2735.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2735.c rename to parser/static/small_parse_table/small_parse_table_2735.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2736.c b/parser/static/small_parse_table/small_parse_table_2736.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2736.c rename to parser/static/small_parse_table/small_parse_table_2736.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2737.c b/parser/static/small_parse_table/small_parse_table_2737.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2737.c rename to parser/static/small_parse_table/small_parse_table_2737.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2738.c b/parser/static/small_parse_table/small_parse_table_2738.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2738.c rename to parser/static/small_parse_table/small_parse_table_2738.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2739.c b/parser/static/small_parse_table/small_parse_table_2739.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2739.c rename to parser/static/small_parse_table/small_parse_table_2739.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_274.c b/parser/static/small_parse_table/small_parse_table_274.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_274.c rename to parser/static/small_parse_table/small_parse_table_274.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2740.c b/parser/static/small_parse_table/small_parse_table_2740.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2740.c rename to parser/static/small_parse_table/small_parse_table_2740.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2741.c b/parser/static/small_parse_table/small_parse_table_2741.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2741.c rename to parser/static/small_parse_table/small_parse_table_2741.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2742.c b/parser/static/small_parse_table/small_parse_table_2742.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2742.c rename to parser/static/small_parse_table/small_parse_table_2742.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2743.c b/parser/static/small_parse_table/small_parse_table_2743.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2743.c rename to parser/static/small_parse_table/small_parse_table_2743.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2744.c b/parser/static/small_parse_table/small_parse_table_2744.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2744.c rename to parser/static/small_parse_table/small_parse_table_2744.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2745.c b/parser/static/small_parse_table/small_parse_table_2745.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2745.c rename to parser/static/small_parse_table/small_parse_table_2745.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2746.c b/parser/static/small_parse_table/small_parse_table_2746.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2746.c rename to parser/static/small_parse_table/small_parse_table_2746.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2747.c b/parser/static/small_parse_table/small_parse_table_2747.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2747.c rename to parser/static/small_parse_table/small_parse_table_2747.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2748.c b/parser/static/small_parse_table/small_parse_table_2748.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2748.c rename to parser/static/small_parse_table/small_parse_table_2748.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2749.c b/parser/static/small_parse_table/small_parse_table_2749.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2749.c rename to parser/static/small_parse_table/small_parse_table_2749.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_275.c b/parser/static/small_parse_table/small_parse_table_275.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_275.c rename to parser/static/small_parse_table/small_parse_table_275.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2750.c b/parser/static/small_parse_table/small_parse_table_2750.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2750.c rename to parser/static/small_parse_table/small_parse_table_2750.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2751.c b/parser/static/small_parse_table/small_parse_table_2751.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2751.c rename to parser/static/small_parse_table/small_parse_table_2751.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2752.c b/parser/static/small_parse_table/small_parse_table_2752.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2752.c rename to parser/static/small_parse_table/small_parse_table_2752.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2753.c b/parser/static/small_parse_table/small_parse_table_2753.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2753.c rename to parser/static/small_parse_table/small_parse_table_2753.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2754.c b/parser/static/small_parse_table/small_parse_table_2754.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2754.c rename to parser/static/small_parse_table/small_parse_table_2754.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2755.c b/parser/static/small_parse_table/small_parse_table_2755.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2755.c rename to parser/static/small_parse_table/small_parse_table_2755.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2756.c b/parser/static/small_parse_table/small_parse_table_2756.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2756.c rename to parser/static/small_parse_table/small_parse_table_2756.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2757.c b/parser/static/small_parse_table/small_parse_table_2757.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2757.c rename to parser/static/small_parse_table/small_parse_table_2757.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2758.c b/parser/static/small_parse_table/small_parse_table_2758.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2758.c rename to parser/static/small_parse_table/small_parse_table_2758.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2759.c b/parser/static/small_parse_table/small_parse_table_2759.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2759.c rename to parser/static/small_parse_table/small_parse_table_2759.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_276.c b/parser/static/small_parse_table/small_parse_table_276.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_276.c rename to parser/static/small_parse_table/small_parse_table_276.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2760.c b/parser/static/small_parse_table/small_parse_table_2760.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2760.c rename to parser/static/small_parse_table/small_parse_table_2760.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2761.c b/parser/static/small_parse_table/small_parse_table_2761.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2761.c rename to parser/static/small_parse_table/small_parse_table_2761.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2762.c b/parser/static/small_parse_table/small_parse_table_2762.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2762.c rename to parser/static/small_parse_table/small_parse_table_2762.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2763.c b/parser/static/small_parse_table/small_parse_table_2763.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2763.c rename to parser/static/small_parse_table/small_parse_table_2763.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2764.c b/parser/static/small_parse_table/small_parse_table_2764.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2764.c rename to parser/static/small_parse_table/small_parse_table_2764.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2765.c b/parser/static/small_parse_table/small_parse_table_2765.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2765.c rename to parser/static/small_parse_table/small_parse_table_2765.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2766.c b/parser/static/small_parse_table/small_parse_table_2766.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2766.c rename to parser/static/small_parse_table/small_parse_table_2766.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2767.c b/parser/static/small_parse_table/small_parse_table_2767.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2767.c rename to parser/static/small_parse_table/small_parse_table_2767.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2768.c b/parser/static/small_parse_table/small_parse_table_2768.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2768.c rename to parser/static/small_parse_table/small_parse_table_2768.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2769.c b/parser/static/small_parse_table/small_parse_table_2769.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2769.c rename to parser/static/small_parse_table/small_parse_table_2769.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_277.c b/parser/static/small_parse_table/small_parse_table_277.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_277.c rename to parser/static/small_parse_table/small_parse_table_277.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2770.c b/parser/static/small_parse_table/small_parse_table_2770.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2770.c rename to parser/static/small_parse_table/small_parse_table_2770.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2771.c b/parser/static/small_parse_table/small_parse_table_2771.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2771.c rename to parser/static/small_parse_table/small_parse_table_2771.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2772.c b/parser/static/small_parse_table/small_parse_table_2772.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2772.c rename to parser/static/small_parse_table/small_parse_table_2772.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2773.c b/parser/static/small_parse_table/small_parse_table_2773.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2773.c rename to parser/static/small_parse_table/small_parse_table_2773.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2774.c b/parser/static/small_parse_table/small_parse_table_2774.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2774.c rename to parser/static/small_parse_table/small_parse_table_2774.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2775.c b/parser/static/small_parse_table/small_parse_table_2775.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2775.c rename to parser/static/small_parse_table/small_parse_table_2775.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2776.c b/parser/static/small_parse_table/small_parse_table_2776.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2776.c rename to parser/static/small_parse_table/small_parse_table_2776.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2777.c b/parser/static/small_parse_table/small_parse_table_2777.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2777.c rename to parser/static/small_parse_table/small_parse_table_2777.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2778.c b/parser/static/small_parse_table/small_parse_table_2778.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2778.c rename to parser/static/small_parse_table/small_parse_table_2778.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2779.c b/parser/static/small_parse_table/small_parse_table_2779.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2779.c rename to parser/static/small_parse_table/small_parse_table_2779.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_278.c b/parser/static/small_parse_table/small_parse_table_278.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_278.c rename to parser/static/small_parse_table/small_parse_table_278.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2780.c b/parser/static/small_parse_table/small_parse_table_2780.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2780.c rename to parser/static/small_parse_table/small_parse_table_2780.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2781.c b/parser/static/small_parse_table/small_parse_table_2781.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2781.c rename to parser/static/small_parse_table/small_parse_table_2781.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2782.c b/parser/static/small_parse_table/small_parse_table_2782.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2782.c rename to parser/static/small_parse_table/small_parse_table_2782.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2783.c b/parser/static/small_parse_table/small_parse_table_2783.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2783.c rename to parser/static/small_parse_table/small_parse_table_2783.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2784.c b/parser/static/small_parse_table/small_parse_table_2784.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2784.c rename to parser/static/small_parse_table/small_parse_table_2784.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2785.c b/parser/static/small_parse_table/small_parse_table_2785.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2785.c rename to parser/static/small_parse_table/small_parse_table_2785.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2786.c b/parser/static/small_parse_table/small_parse_table_2786.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2786.c rename to parser/static/small_parse_table/small_parse_table_2786.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2787.c b/parser/static/small_parse_table/small_parse_table_2787.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2787.c rename to parser/static/small_parse_table/small_parse_table_2787.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2788.c b/parser/static/small_parse_table/small_parse_table_2788.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2788.c rename to parser/static/small_parse_table/small_parse_table_2788.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2789.c b/parser/static/small_parse_table/small_parse_table_2789.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2789.c rename to parser/static/small_parse_table/small_parse_table_2789.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_279.c b/parser/static/small_parse_table/small_parse_table_279.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_279.c rename to parser/static/small_parse_table/small_parse_table_279.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2790.c b/parser/static/small_parse_table/small_parse_table_2790.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2790.c rename to parser/static/small_parse_table/small_parse_table_2790.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2791.c b/parser/static/small_parse_table/small_parse_table_2791.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2791.c rename to parser/static/small_parse_table/small_parse_table_2791.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2792.c b/parser/static/small_parse_table/small_parse_table_2792.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2792.c rename to parser/static/small_parse_table/small_parse_table_2792.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2793.c b/parser/static/small_parse_table/small_parse_table_2793.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2793.c rename to parser/static/small_parse_table/small_parse_table_2793.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2794.c b/parser/static/small_parse_table/small_parse_table_2794.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2794.c rename to parser/static/small_parse_table/small_parse_table_2794.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2795.c b/parser/static/small_parse_table/small_parse_table_2795.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2795.c rename to parser/static/small_parse_table/small_parse_table_2795.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2796.c b/parser/static/small_parse_table/small_parse_table_2796.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2796.c rename to parser/static/small_parse_table/small_parse_table_2796.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2797.c b/parser/static/small_parse_table/small_parse_table_2797.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2797.c rename to parser/static/small_parse_table/small_parse_table_2797.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2798.c b/parser/static/small_parse_table/small_parse_table_2798.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2798.c rename to parser/static/small_parse_table/small_parse_table_2798.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2799.c b/parser/static/small_parse_table/small_parse_table_2799.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2799.c rename to parser/static/small_parse_table/small_parse_table_2799.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_28.c b/parser/static/small_parse_table/small_parse_table_28.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_28.c rename to parser/static/small_parse_table/small_parse_table_28.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_280.c b/parser/static/small_parse_table/small_parse_table_280.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_280.c rename to parser/static/small_parse_table/small_parse_table_280.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2800.c b/parser/static/small_parse_table/small_parse_table_2800.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2800.c rename to parser/static/small_parse_table/small_parse_table_2800.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2801.c b/parser/static/small_parse_table/small_parse_table_2801.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2801.c rename to parser/static/small_parse_table/small_parse_table_2801.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2802.c b/parser/static/small_parse_table/small_parse_table_2802.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2802.c rename to parser/static/small_parse_table/small_parse_table_2802.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2803.c b/parser/static/small_parse_table/small_parse_table_2803.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2803.c rename to parser/static/small_parse_table/small_parse_table_2803.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2804.c b/parser/static/small_parse_table/small_parse_table_2804.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2804.c rename to parser/static/small_parse_table/small_parse_table_2804.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2805.c b/parser/static/small_parse_table/small_parse_table_2805.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2805.c rename to parser/static/small_parse_table/small_parse_table_2805.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2806.c b/parser/static/small_parse_table/small_parse_table_2806.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2806.c rename to parser/static/small_parse_table/small_parse_table_2806.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2807.c b/parser/static/small_parse_table/small_parse_table_2807.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2807.c rename to parser/static/small_parse_table/small_parse_table_2807.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2808.c b/parser/static/small_parse_table/small_parse_table_2808.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2808.c rename to parser/static/small_parse_table/small_parse_table_2808.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2809.c b/parser/static/small_parse_table/small_parse_table_2809.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2809.c rename to parser/static/small_parse_table/small_parse_table_2809.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_281.c b/parser/static/small_parse_table/small_parse_table_281.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_281.c rename to parser/static/small_parse_table/small_parse_table_281.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2810.c b/parser/static/small_parse_table/small_parse_table_2810.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2810.c rename to parser/static/small_parse_table/small_parse_table_2810.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2811.c b/parser/static/small_parse_table/small_parse_table_2811.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2811.c rename to parser/static/small_parse_table/small_parse_table_2811.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2812.c b/parser/static/small_parse_table/small_parse_table_2812.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2812.c rename to parser/static/small_parse_table/small_parse_table_2812.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2813.c b/parser/static/small_parse_table/small_parse_table_2813.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2813.c rename to parser/static/small_parse_table/small_parse_table_2813.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2814.c b/parser/static/small_parse_table/small_parse_table_2814.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2814.c rename to parser/static/small_parse_table/small_parse_table_2814.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2815.c b/parser/static/small_parse_table/small_parse_table_2815.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2815.c rename to parser/static/small_parse_table/small_parse_table_2815.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2816.c b/parser/static/small_parse_table/small_parse_table_2816.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2816.c rename to parser/static/small_parse_table/small_parse_table_2816.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2817.c b/parser/static/small_parse_table/small_parse_table_2817.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2817.c rename to parser/static/small_parse_table/small_parse_table_2817.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2818.c b/parser/static/small_parse_table/small_parse_table_2818.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2818.c rename to parser/static/small_parse_table/small_parse_table_2818.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2819.c b/parser/static/small_parse_table/small_parse_table_2819.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2819.c rename to parser/static/small_parse_table/small_parse_table_2819.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_282.c b/parser/static/small_parse_table/small_parse_table_282.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_282.c rename to parser/static/small_parse_table/small_parse_table_282.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2820.c b/parser/static/small_parse_table/small_parse_table_2820.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2820.c rename to parser/static/small_parse_table/small_parse_table_2820.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2821.c b/parser/static/small_parse_table/small_parse_table_2821.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2821.c rename to parser/static/small_parse_table/small_parse_table_2821.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2822.c b/parser/static/small_parse_table/small_parse_table_2822.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2822.c rename to parser/static/small_parse_table/small_parse_table_2822.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2823.c b/parser/static/small_parse_table/small_parse_table_2823.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2823.c rename to parser/static/small_parse_table/small_parse_table_2823.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2824.c b/parser/static/small_parse_table/small_parse_table_2824.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2824.c rename to parser/static/small_parse_table/small_parse_table_2824.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2825.c b/parser/static/small_parse_table/small_parse_table_2825.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2825.c rename to parser/static/small_parse_table/small_parse_table_2825.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2826.c b/parser/static/small_parse_table/small_parse_table_2826.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2826.c rename to parser/static/small_parse_table/small_parse_table_2826.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2827.c b/parser/static/small_parse_table/small_parse_table_2827.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2827.c rename to parser/static/small_parse_table/small_parse_table_2827.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2828.c b/parser/static/small_parse_table/small_parse_table_2828.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2828.c rename to parser/static/small_parse_table/small_parse_table_2828.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2829.c b/parser/static/small_parse_table/small_parse_table_2829.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2829.c rename to parser/static/small_parse_table/small_parse_table_2829.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_283.c b/parser/static/small_parse_table/small_parse_table_283.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_283.c rename to parser/static/small_parse_table/small_parse_table_283.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2830.c b/parser/static/small_parse_table/small_parse_table_2830.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2830.c rename to parser/static/small_parse_table/small_parse_table_2830.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2831.c b/parser/static/small_parse_table/small_parse_table_2831.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2831.c rename to parser/static/small_parse_table/small_parse_table_2831.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2832.c b/parser/static/small_parse_table/small_parse_table_2832.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2832.c rename to parser/static/small_parse_table/small_parse_table_2832.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2833.c b/parser/static/small_parse_table/small_parse_table_2833.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2833.c rename to parser/static/small_parse_table/small_parse_table_2833.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2834.c b/parser/static/small_parse_table/small_parse_table_2834.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2834.c rename to parser/static/small_parse_table/small_parse_table_2834.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2835.c b/parser/static/small_parse_table/small_parse_table_2835.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2835.c rename to parser/static/small_parse_table/small_parse_table_2835.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2836.c b/parser/static/small_parse_table/small_parse_table_2836.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2836.c rename to parser/static/small_parse_table/small_parse_table_2836.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2837.c b/parser/static/small_parse_table/small_parse_table_2837.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2837.c rename to parser/static/small_parse_table/small_parse_table_2837.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2838.c b/parser/static/small_parse_table/small_parse_table_2838.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2838.c rename to parser/static/small_parse_table/small_parse_table_2838.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2839.c b/parser/static/small_parse_table/small_parse_table_2839.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2839.c rename to parser/static/small_parse_table/small_parse_table_2839.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_284.c b/parser/static/small_parse_table/small_parse_table_284.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_284.c rename to parser/static/small_parse_table/small_parse_table_284.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2840.c b/parser/static/small_parse_table/small_parse_table_2840.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2840.c rename to parser/static/small_parse_table/small_parse_table_2840.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2841.c b/parser/static/small_parse_table/small_parse_table_2841.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2841.c rename to parser/static/small_parse_table/small_parse_table_2841.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2842.c b/parser/static/small_parse_table/small_parse_table_2842.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2842.c rename to parser/static/small_parse_table/small_parse_table_2842.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2843.c b/parser/static/small_parse_table/small_parse_table_2843.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2843.c rename to parser/static/small_parse_table/small_parse_table_2843.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2844.c b/parser/static/small_parse_table/small_parse_table_2844.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2844.c rename to parser/static/small_parse_table/small_parse_table_2844.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2845.c b/parser/static/small_parse_table/small_parse_table_2845.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2845.c rename to parser/static/small_parse_table/small_parse_table_2845.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2846.c b/parser/static/small_parse_table/small_parse_table_2846.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2846.c rename to parser/static/small_parse_table/small_parse_table_2846.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2847.c b/parser/static/small_parse_table/small_parse_table_2847.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2847.c rename to parser/static/small_parse_table/small_parse_table_2847.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2848.c b/parser/static/small_parse_table/small_parse_table_2848.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2848.c rename to parser/static/small_parse_table/small_parse_table_2848.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2849.c b/parser/static/small_parse_table/small_parse_table_2849.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2849.c rename to parser/static/small_parse_table/small_parse_table_2849.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_285.c b/parser/static/small_parse_table/small_parse_table_285.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_285.c rename to parser/static/small_parse_table/small_parse_table_285.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2850.c b/parser/static/small_parse_table/small_parse_table_2850.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2850.c rename to parser/static/small_parse_table/small_parse_table_2850.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2851.c b/parser/static/small_parse_table/small_parse_table_2851.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2851.c rename to parser/static/small_parse_table/small_parse_table_2851.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2852.c b/parser/static/small_parse_table/small_parse_table_2852.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2852.c rename to parser/static/small_parse_table/small_parse_table_2852.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2853.c b/parser/static/small_parse_table/small_parse_table_2853.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2853.c rename to parser/static/small_parse_table/small_parse_table_2853.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2854.c b/parser/static/small_parse_table/small_parse_table_2854.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2854.c rename to parser/static/small_parse_table/small_parse_table_2854.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2855.c b/parser/static/small_parse_table/small_parse_table_2855.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2855.c rename to parser/static/small_parse_table/small_parse_table_2855.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2856.c b/parser/static/small_parse_table/small_parse_table_2856.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2856.c rename to parser/static/small_parse_table/small_parse_table_2856.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2857.c b/parser/static/small_parse_table/small_parse_table_2857.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2857.c rename to parser/static/small_parse_table/small_parse_table_2857.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2858.c b/parser/static/small_parse_table/small_parse_table_2858.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2858.c rename to parser/static/small_parse_table/small_parse_table_2858.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2859.c b/parser/static/small_parse_table/small_parse_table_2859.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2859.c rename to parser/static/small_parse_table/small_parse_table_2859.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_286.c b/parser/static/small_parse_table/small_parse_table_286.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_286.c rename to parser/static/small_parse_table/small_parse_table_286.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2860.c b/parser/static/small_parse_table/small_parse_table_2860.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2860.c rename to parser/static/small_parse_table/small_parse_table_2860.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2861.c b/parser/static/small_parse_table/small_parse_table_2861.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2861.c rename to parser/static/small_parse_table/small_parse_table_2861.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2862.c b/parser/static/small_parse_table/small_parse_table_2862.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2862.c rename to parser/static/small_parse_table/small_parse_table_2862.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2863.c b/parser/static/small_parse_table/small_parse_table_2863.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2863.c rename to parser/static/small_parse_table/small_parse_table_2863.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2864.c b/parser/static/small_parse_table/small_parse_table_2864.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2864.c rename to parser/static/small_parse_table/small_parse_table_2864.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2865.c b/parser/static/small_parse_table/small_parse_table_2865.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2865.c rename to parser/static/small_parse_table/small_parse_table_2865.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2866.c b/parser/static/small_parse_table/small_parse_table_2866.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2866.c rename to parser/static/small_parse_table/small_parse_table_2866.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2867.c b/parser/static/small_parse_table/small_parse_table_2867.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2867.c rename to parser/static/small_parse_table/small_parse_table_2867.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2868.c b/parser/static/small_parse_table/small_parse_table_2868.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2868.c rename to parser/static/small_parse_table/small_parse_table_2868.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2869.c b/parser/static/small_parse_table/small_parse_table_2869.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2869.c rename to parser/static/small_parse_table/small_parse_table_2869.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_287.c b/parser/static/small_parse_table/small_parse_table_287.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_287.c rename to parser/static/small_parse_table/small_parse_table_287.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2870.c b/parser/static/small_parse_table/small_parse_table_2870.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2870.c rename to parser/static/small_parse_table/small_parse_table_2870.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2871.c b/parser/static/small_parse_table/small_parse_table_2871.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2871.c rename to parser/static/small_parse_table/small_parse_table_2871.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2872.c b/parser/static/small_parse_table/small_parse_table_2872.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2872.c rename to parser/static/small_parse_table/small_parse_table_2872.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2873.c b/parser/static/small_parse_table/small_parse_table_2873.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2873.c rename to parser/static/small_parse_table/small_parse_table_2873.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2874.c b/parser/static/small_parse_table/small_parse_table_2874.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2874.c rename to parser/static/small_parse_table/small_parse_table_2874.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2875.c b/parser/static/small_parse_table/small_parse_table_2875.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2875.c rename to parser/static/small_parse_table/small_parse_table_2875.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2876.c b/parser/static/small_parse_table/small_parse_table_2876.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2876.c rename to parser/static/small_parse_table/small_parse_table_2876.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2877.c b/parser/static/small_parse_table/small_parse_table_2877.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2877.c rename to parser/static/small_parse_table/small_parse_table_2877.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2878.c b/parser/static/small_parse_table/small_parse_table_2878.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2878.c rename to parser/static/small_parse_table/small_parse_table_2878.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2879.c b/parser/static/small_parse_table/small_parse_table_2879.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2879.c rename to parser/static/small_parse_table/small_parse_table_2879.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_288.c b/parser/static/small_parse_table/small_parse_table_288.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_288.c rename to parser/static/small_parse_table/small_parse_table_288.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2880.c b/parser/static/small_parse_table/small_parse_table_2880.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2880.c rename to parser/static/small_parse_table/small_parse_table_2880.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2881.c b/parser/static/small_parse_table/small_parse_table_2881.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2881.c rename to parser/static/small_parse_table/small_parse_table_2881.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2882.c b/parser/static/small_parse_table/small_parse_table_2882.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2882.c rename to parser/static/small_parse_table/small_parse_table_2882.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2883.c b/parser/static/small_parse_table/small_parse_table_2883.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2883.c rename to parser/static/small_parse_table/small_parse_table_2883.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2884.c b/parser/static/small_parse_table/small_parse_table_2884.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2884.c rename to parser/static/small_parse_table/small_parse_table_2884.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2885.c b/parser/static/small_parse_table/small_parse_table_2885.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2885.c rename to parser/static/small_parse_table/small_parse_table_2885.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2886.c b/parser/static/small_parse_table/small_parse_table_2886.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2886.c rename to parser/static/small_parse_table/small_parse_table_2886.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2887.c b/parser/static/small_parse_table/small_parse_table_2887.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2887.c rename to parser/static/small_parse_table/small_parse_table_2887.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2888.c b/parser/static/small_parse_table/small_parse_table_2888.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2888.c rename to parser/static/small_parse_table/small_parse_table_2888.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2889.c b/parser/static/small_parse_table/small_parse_table_2889.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2889.c rename to parser/static/small_parse_table/small_parse_table_2889.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_289.c b/parser/static/small_parse_table/small_parse_table_289.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_289.c rename to parser/static/small_parse_table/small_parse_table_289.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2890.c b/parser/static/small_parse_table/small_parse_table_2890.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2890.c rename to parser/static/small_parse_table/small_parse_table_2890.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2891.c b/parser/static/small_parse_table/small_parse_table_2891.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2891.c rename to parser/static/small_parse_table/small_parse_table_2891.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2892.c b/parser/static/small_parse_table/small_parse_table_2892.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2892.c rename to parser/static/small_parse_table/small_parse_table_2892.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2893.c b/parser/static/small_parse_table/small_parse_table_2893.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2893.c rename to parser/static/small_parse_table/small_parse_table_2893.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2894.c b/parser/static/small_parse_table/small_parse_table_2894.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2894.c rename to parser/static/small_parse_table/small_parse_table_2894.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2895.c b/parser/static/small_parse_table/small_parse_table_2895.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2895.c rename to parser/static/small_parse_table/small_parse_table_2895.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2896.c b/parser/static/small_parse_table/small_parse_table_2896.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2896.c rename to parser/static/small_parse_table/small_parse_table_2896.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2897.c b/parser/static/small_parse_table/small_parse_table_2897.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2897.c rename to parser/static/small_parse_table/small_parse_table_2897.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2898.c b/parser/static/small_parse_table/small_parse_table_2898.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2898.c rename to parser/static/small_parse_table/small_parse_table_2898.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2899.c b/parser/static/small_parse_table/small_parse_table_2899.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2899.c rename to parser/static/small_parse_table/small_parse_table_2899.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_29.c b/parser/static/small_parse_table/small_parse_table_29.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_29.c rename to parser/static/small_parse_table/small_parse_table_29.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_290.c b/parser/static/small_parse_table/small_parse_table_290.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_290.c rename to parser/static/small_parse_table/small_parse_table_290.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2900.c b/parser/static/small_parse_table/small_parse_table_2900.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2900.c rename to parser/static/small_parse_table/small_parse_table_2900.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2901.c b/parser/static/small_parse_table/small_parse_table_2901.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2901.c rename to parser/static/small_parse_table/small_parse_table_2901.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2902.c b/parser/static/small_parse_table/small_parse_table_2902.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2902.c rename to parser/static/small_parse_table/small_parse_table_2902.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2903.c b/parser/static/small_parse_table/small_parse_table_2903.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2903.c rename to parser/static/small_parse_table/small_parse_table_2903.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2904.c b/parser/static/small_parse_table/small_parse_table_2904.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2904.c rename to parser/static/small_parse_table/small_parse_table_2904.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2905.c b/parser/static/small_parse_table/small_parse_table_2905.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2905.c rename to parser/static/small_parse_table/small_parse_table_2905.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2906.c b/parser/static/small_parse_table/small_parse_table_2906.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2906.c rename to parser/static/small_parse_table/small_parse_table_2906.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2907.c b/parser/static/small_parse_table/small_parse_table_2907.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2907.c rename to parser/static/small_parse_table/small_parse_table_2907.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2908.c b/parser/static/small_parse_table/small_parse_table_2908.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2908.c rename to parser/static/small_parse_table/small_parse_table_2908.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2909.c b/parser/static/small_parse_table/small_parse_table_2909.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2909.c rename to parser/static/small_parse_table/small_parse_table_2909.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_291.c b/parser/static/small_parse_table/small_parse_table_291.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_291.c rename to parser/static/small_parse_table/small_parse_table_291.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2910.c b/parser/static/small_parse_table/small_parse_table_2910.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2910.c rename to parser/static/small_parse_table/small_parse_table_2910.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2911.c b/parser/static/small_parse_table/small_parse_table_2911.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2911.c rename to parser/static/small_parse_table/small_parse_table_2911.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2912.c b/parser/static/small_parse_table/small_parse_table_2912.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2912.c rename to parser/static/small_parse_table/small_parse_table_2912.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2913.c b/parser/static/small_parse_table/small_parse_table_2913.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2913.c rename to parser/static/small_parse_table/small_parse_table_2913.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2914.c b/parser/static/small_parse_table/small_parse_table_2914.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2914.c rename to parser/static/small_parse_table/small_parse_table_2914.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2915.c b/parser/static/small_parse_table/small_parse_table_2915.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2915.c rename to parser/static/small_parse_table/small_parse_table_2915.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2916.c b/parser/static/small_parse_table/small_parse_table_2916.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2916.c rename to parser/static/small_parse_table/small_parse_table_2916.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2917.c b/parser/static/small_parse_table/small_parse_table_2917.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2917.c rename to parser/static/small_parse_table/small_parse_table_2917.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2918.c b/parser/static/small_parse_table/small_parse_table_2918.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2918.c rename to parser/static/small_parse_table/small_parse_table_2918.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2919.c b/parser/static/small_parse_table/small_parse_table_2919.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2919.c rename to parser/static/small_parse_table/small_parse_table_2919.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_292.c b/parser/static/small_parse_table/small_parse_table_292.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_292.c rename to parser/static/small_parse_table/small_parse_table_292.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2920.c b/parser/static/small_parse_table/small_parse_table_2920.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2920.c rename to parser/static/small_parse_table/small_parse_table_2920.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2921.c b/parser/static/small_parse_table/small_parse_table_2921.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2921.c rename to parser/static/small_parse_table/small_parse_table_2921.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2922.c b/parser/static/small_parse_table/small_parse_table_2922.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2922.c rename to parser/static/small_parse_table/small_parse_table_2922.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2923.c b/parser/static/small_parse_table/small_parse_table_2923.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2923.c rename to parser/static/small_parse_table/small_parse_table_2923.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2924.c b/parser/static/small_parse_table/small_parse_table_2924.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2924.c rename to parser/static/small_parse_table/small_parse_table_2924.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2925.c b/parser/static/small_parse_table/small_parse_table_2925.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2925.c rename to parser/static/small_parse_table/small_parse_table_2925.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2926.c b/parser/static/small_parse_table/small_parse_table_2926.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2926.c rename to parser/static/small_parse_table/small_parse_table_2926.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2927.c b/parser/static/small_parse_table/small_parse_table_2927.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2927.c rename to parser/static/small_parse_table/small_parse_table_2927.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2928.c b/parser/static/small_parse_table/small_parse_table_2928.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2928.c rename to parser/static/small_parse_table/small_parse_table_2928.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2929.c b/parser/static/small_parse_table/small_parse_table_2929.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2929.c rename to parser/static/small_parse_table/small_parse_table_2929.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_293.c b/parser/static/small_parse_table/small_parse_table_293.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_293.c rename to parser/static/small_parse_table/small_parse_table_293.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2930.c b/parser/static/small_parse_table/small_parse_table_2930.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2930.c rename to parser/static/small_parse_table/small_parse_table_2930.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2931.c b/parser/static/small_parse_table/small_parse_table_2931.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2931.c rename to parser/static/small_parse_table/small_parse_table_2931.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2932.c b/parser/static/small_parse_table/small_parse_table_2932.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2932.c rename to parser/static/small_parse_table/small_parse_table_2932.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2933.c b/parser/static/small_parse_table/small_parse_table_2933.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2933.c rename to parser/static/small_parse_table/small_parse_table_2933.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2934.c b/parser/static/small_parse_table/small_parse_table_2934.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2934.c rename to parser/static/small_parse_table/small_parse_table_2934.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2935.c b/parser/static/small_parse_table/small_parse_table_2935.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2935.c rename to parser/static/small_parse_table/small_parse_table_2935.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2936.c b/parser/static/small_parse_table/small_parse_table_2936.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2936.c rename to parser/static/small_parse_table/small_parse_table_2936.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2937.c b/parser/static/small_parse_table/small_parse_table_2937.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2937.c rename to parser/static/small_parse_table/small_parse_table_2937.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2938.c b/parser/static/small_parse_table/small_parse_table_2938.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2938.c rename to parser/static/small_parse_table/small_parse_table_2938.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2939.c b/parser/static/small_parse_table/small_parse_table_2939.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2939.c rename to parser/static/small_parse_table/small_parse_table_2939.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_294.c b/parser/static/small_parse_table/small_parse_table_294.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_294.c rename to parser/static/small_parse_table/small_parse_table_294.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2940.c b/parser/static/small_parse_table/small_parse_table_2940.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2940.c rename to parser/static/small_parse_table/small_parse_table_2940.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2941.c b/parser/static/small_parse_table/small_parse_table_2941.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2941.c rename to parser/static/small_parse_table/small_parse_table_2941.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2942.c b/parser/static/small_parse_table/small_parse_table_2942.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2942.c rename to parser/static/small_parse_table/small_parse_table_2942.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2943.c b/parser/static/small_parse_table/small_parse_table_2943.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2943.c rename to parser/static/small_parse_table/small_parse_table_2943.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2944.c b/parser/static/small_parse_table/small_parse_table_2944.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2944.c rename to parser/static/small_parse_table/small_parse_table_2944.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2945.c b/parser/static/small_parse_table/small_parse_table_2945.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2945.c rename to parser/static/small_parse_table/small_parse_table_2945.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2946.c b/parser/static/small_parse_table/small_parse_table_2946.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2946.c rename to parser/static/small_parse_table/small_parse_table_2946.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2947.c b/parser/static/small_parse_table/small_parse_table_2947.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2947.c rename to parser/static/small_parse_table/small_parse_table_2947.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2948.c b/parser/static/small_parse_table/small_parse_table_2948.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2948.c rename to parser/static/small_parse_table/small_parse_table_2948.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2949.c b/parser/static/small_parse_table/small_parse_table_2949.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2949.c rename to parser/static/small_parse_table/small_parse_table_2949.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_295.c b/parser/static/small_parse_table/small_parse_table_295.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_295.c rename to parser/static/small_parse_table/small_parse_table_295.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2950.c b/parser/static/small_parse_table/small_parse_table_2950.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2950.c rename to parser/static/small_parse_table/small_parse_table_2950.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2951.c b/parser/static/small_parse_table/small_parse_table_2951.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2951.c rename to parser/static/small_parse_table/small_parse_table_2951.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2952.c b/parser/static/small_parse_table/small_parse_table_2952.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2952.c rename to parser/static/small_parse_table/small_parse_table_2952.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2953.c b/parser/static/small_parse_table/small_parse_table_2953.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2953.c rename to parser/static/small_parse_table/small_parse_table_2953.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2954.c b/parser/static/small_parse_table/small_parse_table_2954.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2954.c rename to parser/static/small_parse_table/small_parse_table_2954.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2955.c b/parser/static/small_parse_table/small_parse_table_2955.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2955.c rename to parser/static/small_parse_table/small_parse_table_2955.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2956.c b/parser/static/small_parse_table/small_parse_table_2956.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2956.c rename to parser/static/small_parse_table/small_parse_table_2956.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2957.c b/parser/static/small_parse_table/small_parse_table_2957.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2957.c rename to parser/static/small_parse_table/small_parse_table_2957.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2958.c b/parser/static/small_parse_table/small_parse_table_2958.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2958.c rename to parser/static/small_parse_table/small_parse_table_2958.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2959.c b/parser/static/small_parse_table/small_parse_table_2959.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2959.c rename to parser/static/small_parse_table/small_parse_table_2959.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_296.c b/parser/static/small_parse_table/small_parse_table_296.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_296.c rename to parser/static/small_parse_table/small_parse_table_296.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2960.c b/parser/static/small_parse_table/small_parse_table_2960.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2960.c rename to parser/static/small_parse_table/small_parse_table_2960.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2961.c b/parser/static/small_parse_table/small_parse_table_2961.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2961.c rename to parser/static/small_parse_table/small_parse_table_2961.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2962.c b/parser/static/small_parse_table/small_parse_table_2962.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2962.c rename to parser/static/small_parse_table/small_parse_table_2962.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2963.c b/parser/static/small_parse_table/small_parse_table_2963.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2963.c rename to parser/static/small_parse_table/small_parse_table_2963.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2964.c b/parser/static/small_parse_table/small_parse_table_2964.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2964.c rename to parser/static/small_parse_table/small_parse_table_2964.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2965.c b/parser/static/small_parse_table/small_parse_table_2965.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2965.c rename to parser/static/small_parse_table/small_parse_table_2965.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2966.c b/parser/static/small_parse_table/small_parse_table_2966.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2966.c rename to parser/static/small_parse_table/small_parse_table_2966.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2967.c b/parser/static/small_parse_table/small_parse_table_2967.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2967.c rename to parser/static/small_parse_table/small_parse_table_2967.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2968.c b/parser/static/small_parse_table/small_parse_table_2968.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2968.c rename to parser/static/small_parse_table/small_parse_table_2968.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2969.c b/parser/static/small_parse_table/small_parse_table_2969.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2969.c rename to parser/static/small_parse_table/small_parse_table_2969.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_297.c b/parser/static/small_parse_table/small_parse_table_297.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_297.c rename to parser/static/small_parse_table/small_parse_table_297.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2970.c b/parser/static/small_parse_table/small_parse_table_2970.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2970.c rename to parser/static/small_parse_table/small_parse_table_2970.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2971.c b/parser/static/small_parse_table/small_parse_table_2971.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2971.c rename to parser/static/small_parse_table/small_parse_table_2971.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2972.c b/parser/static/small_parse_table/small_parse_table_2972.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2972.c rename to parser/static/small_parse_table/small_parse_table_2972.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2973.c b/parser/static/small_parse_table/small_parse_table_2973.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2973.c rename to parser/static/small_parse_table/small_parse_table_2973.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2974.c b/parser/static/small_parse_table/small_parse_table_2974.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2974.c rename to parser/static/small_parse_table/small_parse_table_2974.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2975.c b/parser/static/small_parse_table/small_parse_table_2975.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2975.c rename to parser/static/small_parse_table/small_parse_table_2975.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2976.c b/parser/static/small_parse_table/small_parse_table_2976.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2976.c rename to parser/static/small_parse_table/small_parse_table_2976.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2977.c b/parser/static/small_parse_table/small_parse_table_2977.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2977.c rename to parser/static/small_parse_table/small_parse_table_2977.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2978.c b/parser/static/small_parse_table/small_parse_table_2978.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2978.c rename to parser/static/small_parse_table/small_parse_table_2978.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2979.c b/parser/static/small_parse_table/small_parse_table_2979.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2979.c rename to parser/static/small_parse_table/small_parse_table_2979.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_298.c b/parser/static/small_parse_table/small_parse_table_298.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_298.c rename to parser/static/small_parse_table/small_parse_table_298.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2980.c b/parser/static/small_parse_table/small_parse_table_2980.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2980.c rename to parser/static/small_parse_table/small_parse_table_2980.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2981.c b/parser/static/small_parse_table/small_parse_table_2981.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2981.c rename to parser/static/small_parse_table/small_parse_table_2981.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2982.c b/parser/static/small_parse_table/small_parse_table_2982.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2982.c rename to parser/static/small_parse_table/small_parse_table_2982.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2983.c b/parser/static/small_parse_table/small_parse_table_2983.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2983.c rename to parser/static/small_parse_table/small_parse_table_2983.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2984.c b/parser/static/small_parse_table/small_parse_table_2984.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2984.c rename to parser/static/small_parse_table/small_parse_table_2984.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2985.c b/parser/static/small_parse_table/small_parse_table_2985.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2985.c rename to parser/static/small_parse_table/small_parse_table_2985.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2986.c b/parser/static/small_parse_table/small_parse_table_2986.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2986.c rename to parser/static/small_parse_table/small_parse_table_2986.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2987.c b/parser/static/small_parse_table/small_parse_table_2987.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2987.c rename to parser/static/small_parse_table/small_parse_table_2987.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2988.c b/parser/static/small_parse_table/small_parse_table_2988.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2988.c rename to parser/static/small_parse_table/small_parse_table_2988.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2989.c b/parser/static/small_parse_table/small_parse_table_2989.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2989.c rename to parser/static/small_parse_table/small_parse_table_2989.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_299.c b/parser/static/small_parse_table/small_parse_table_299.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_299.c rename to parser/static/small_parse_table/small_parse_table_299.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2990.c b/parser/static/small_parse_table/small_parse_table_2990.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2990.c rename to parser/static/small_parse_table/small_parse_table_2990.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2991.c b/parser/static/small_parse_table/small_parse_table_2991.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2991.c rename to parser/static/small_parse_table/small_parse_table_2991.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2992.c b/parser/static/small_parse_table/small_parse_table_2992.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2992.c rename to parser/static/small_parse_table/small_parse_table_2992.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2993.c b/parser/static/small_parse_table/small_parse_table_2993.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2993.c rename to parser/static/small_parse_table/small_parse_table_2993.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2994.c b/parser/static/small_parse_table/small_parse_table_2994.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2994.c rename to parser/static/small_parse_table/small_parse_table_2994.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2995.c b/parser/static/small_parse_table/small_parse_table_2995.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2995.c rename to parser/static/small_parse_table/small_parse_table_2995.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2996.c b/parser/static/small_parse_table/small_parse_table_2996.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2996.c rename to parser/static/small_parse_table/small_parse_table_2996.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2997.c b/parser/static/small_parse_table/small_parse_table_2997.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2997.c rename to parser/static/small_parse_table/small_parse_table_2997.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2998.c b/parser/static/small_parse_table/small_parse_table_2998.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2998.c rename to parser/static/small_parse_table/small_parse_table_2998.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_2999.c b/parser/static/small_parse_table/small_parse_table_2999.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_2999.c rename to parser/static/small_parse_table/small_parse_table_2999.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3.c b/parser/static/small_parse_table/small_parse_table_3.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3.c rename to parser/static/small_parse_table/small_parse_table_3.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_30.c b/parser/static/small_parse_table/small_parse_table_30.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_30.c rename to parser/static/small_parse_table/small_parse_table_30.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_300.c b/parser/static/small_parse_table/small_parse_table_300.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_300.c rename to parser/static/small_parse_table/small_parse_table_300.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3000.c b/parser/static/small_parse_table/small_parse_table_3000.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3000.c rename to parser/static/small_parse_table/small_parse_table_3000.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3001.c b/parser/static/small_parse_table/small_parse_table_3001.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3001.c rename to parser/static/small_parse_table/small_parse_table_3001.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3002.c b/parser/static/small_parse_table/small_parse_table_3002.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3002.c rename to parser/static/small_parse_table/small_parse_table_3002.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3003.c b/parser/static/small_parse_table/small_parse_table_3003.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3003.c rename to parser/static/small_parse_table/small_parse_table_3003.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3004.c b/parser/static/small_parse_table/small_parse_table_3004.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3004.c rename to parser/static/small_parse_table/small_parse_table_3004.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3005.c b/parser/static/small_parse_table/small_parse_table_3005.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3005.c rename to parser/static/small_parse_table/small_parse_table_3005.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3006.c b/parser/static/small_parse_table/small_parse_table_3006.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3006.c rename to parser/static/small_parse_table/small_parse_table_3006.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3007.c b/parser/static/small_parse_table/small_parse_table_3007.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3007.c rename to parser/static/small_parse_table/small_parse_table_3007.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3008.c b/parser/static/small_parse_table/small_parse_table_3008.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3008.c rename to parser/static/small_parse_table/small_parse_table_3008.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3009.c b/parser/static/small_parse_table/small_parse_table_3009.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3009.c rename to parser/static/small_parse_table/small_parse_table_3009.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_301.c b/parser/static/small_parse_table/small_parse_table_301.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_301.c rename to parser/static/small_parse_table/small_parse_table_301.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3010.c b/parser/static/small_parse_table/small_parse_table_3010.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3010.c rename to parser/static/small_parse_table/small_parse_table_3010.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3011.c b/parser/static/small_parse_table/small_parse_table_3011.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3011.c rename to parser/static/small_parse_table/small_parse_table_3011.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3012.c b/parser/static/small_parse_table/small_parse_table_3012.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3012.c rename to parser/static/small_parse_table/small_parse_table_3012.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3013.c b/parser/static/small_parse_table/small_parse_table_3013.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3013.c rename to parser/static/small_parse_table/small_parse_table_3013.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3014.c b/parser/static/small_parse_table/small_parse_table_3014.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3014.c rename to parser/static/small_parse_table/small_parse_table_3014.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3015.c b/parser/static/small_parse_table/small_parse_table_3015.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3015.c rename to parser/static/small_parse_table/small_parse_table_3015.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3016.c b/parser/static/small_parse_table/small_parse_table_3016.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3016.c rename to parser/static/small_parse_table/small_parse_table_3016.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3017.c b/parser/static/small_parse_table/small_parse_table_3017.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3017.c rename to parser/static/small_parse_table/small_parse_table_3017.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3018.c b/parser/static/small_parse_table/small_parse_table_3018.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3018.c rename to parser/static/small_parse_table/small_parse_table_3018.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3019.c b/parser/static/small_parse_table/small_parse_table_3019.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3019.c rename to parser/static/small_parse_table/small_parse_table_3019.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_302.c b/parser/static/small_parse_table/small_parse_table_302.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_302.c rename to parser/static/small_parse_table/small_parse_table_302.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3020.c b/parser/static/small_parse_table/small_parse_table_3020.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3020.c rename to parser/static/small_parse_table/small_parse_table_3020.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3021.c b/parser/static/small_parse_table/small_parse_table_3021.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3021.c rename to parser/static/small_parse_table/small_parse_table_3021.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3022.c b/parser/static/small_parse_table/small_parse_table_3022.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3022.c rename to parser/static/small_parse_table/small_parse_table_3022.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3023.c b/parser/static/small_parse_table/small_parse_table_3023.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3023.c rename to parser/static/small_parse_table/small_parse_table_3023.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3024.c b/parser/static/small_parse_table/small_parse_table_3024.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3024.c rename to parser/static/small_parse_table/small_parse_table_3024.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3025.c b/parser/static/small_parse_table/small_parse_table_3025.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3025.c rename to parser/static/small_parse_table/small_parse_table_3025.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3026.c b/parser/static/small_parse_table/small_parse_table_3026.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3026.c rename to parser/static/small_parse_table/small_parse_table_3026.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3027.c b/parser/static/small_parse_table/small_parse_table_3027.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3027.c rename to parser/static/small_parse_table/small_parse_table_3027.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3028.c b/parser/static/small_parse_table/small_parse_table_3028.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3028.c rename to parser/static/small_parse_table/small_parse_table_3028.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3029.c b/parser/static/small_parse_table/small_parse_table_3029.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3029.c rename to parser/static/small_parse_table/small_parse_table_3029.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_303.c b/parser/static/small_parse_table/small_parse_table_303.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_303.c rename to parser/static/small_parse_table/small_parse_table_303.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3030.c b/parser/static/small_parse_table/small_parse_table_3030.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3030.c rename to parser/static/small_parse_table/small_parse_table_3030.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3031.c b/parser/static/small_parse_table/small_parse_table_3031.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3031.c rename to parser/static/small_parse_table/small_parse_table_3031.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3032.c b/parser/static/small_parse_table/small_parse_table_3032.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3032.c rename to parser/static/small_parse_table/small_parse_table_3032.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3033.c b/parser/static/small_parse_table/small_parse_table_3033.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3033.c rename to parser/static/small_parse_table/small_parse_table_3033.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3034.c b/parser/static/small_parse_table/small_parse_table_3034.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3034.c rename to parser/static/small_parse_table/small_parse_table_3034.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3035.c b/parser/static/small_parse_table/small_parse_table_3035.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3035.c rename to parser/static/small_parse_table/small_parse_table_3035.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3036.c b/parser/static/small_parse_table/small_parse_table_3036.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3036.c rename to parser/static/small_parse_table/small_parse_table_3036.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3037.c b/parser/static/small_parse_table/small_parse_table_3037.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3037.c rename to parser/static/small_parse_table/small_parse_table_3037.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3038.c b/parser/static/small_parse_table/small_parse_table_3038.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3038.c rename to parser/static/small_parse_table/small_parse_table_3038.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3039.c b/parser/static/small_parse_table/small_parse_table_3039.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3039.c rename to parser/static/small_parse_table/small_parse_table_3039.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_304.c b/parser/static/small_parse_table/small_parse_table_304.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_304.c rename to parser/static/small_parse_table/small_parse_table_304.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3040.c b/parser/static/small_parse_table/small_parse_table_3040.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3040.c rename to parser/static/small_parse_table/small_parse_table_3040.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3041.c b/parser/static/small_parse_table/small_parse_table_3041.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3041.c rename to parser/static/small_parse_table/small_parse_table_3041.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3042.c b/parser/static/small_parse_table/small_parse_table_3042.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3042.c rename to parser/static/small_parse_table/small_parse_table_3042.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3043.c b/parser/static/small_parse_table/small_parse_table_3043.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3043.c rename to parser/static/small_parse_table/small_parse_table_3043.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3044.c b/parser/static/small_parse_table/small_parse_table_3044.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3044.c rename to parser/static/small_parse_table/small_parse_table_3044.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3045.c b/parser/static/small_parse_table/small_parse_table_3045.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3045.c rename to parser/static/small_parse_table/small_parse_table_3045.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3046.c b/parser/static/small_parse_table/small_parse_table_3046.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3046.c rename to parser/static/small_parse_table/small_parse_table_3046.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3047.c b/parser/static/small_parse_table/small_parse_table_3047.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3047.c rename to parser/static/small_parse_table/small_parse_table_3047.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3048.c b/parser/static/small_parse_table/small_parse_table_3048.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3048.c rename to parser/static/small_parse_table/small_parse_table_3048.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3049.c b/parser/static/small_parse_table/small_parse_table_3049.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3049.c rename to parser/static/small_parse_table/small_parse_table_3049.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_305.c b/parser/static/small_parse_table/small_parse_table_305.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_305.c rename to parser/static/small_parse_table/small_parse_table_305.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3050.c b/parser/static/small_parse_table/small_parse_table_3050.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3050.c rename to parser/static/small_parse_table/small_parse_table_3050.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3051.c b/parser/static/small_parse_table/small_parse_table_3051.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3051.c rename to parser/static/small_parse_table/small_parse_table_3051.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3052.c b/parser/static/small_parse_table/small_parse_table_3052.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3052.c rename to parser/static/small_parse_table/small_parse_table_3052.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3053.c b/parser/static/small_parse_table/small_parse_table_3053.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3053.c rename to parser/static/small_parse_table/small_parse_table_3053.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3054.c b/parser/static/small_parse_table/small_parse_table_3054.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3054.c rename to parser/static/small_parse_table/small_parse_table_3054.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3055.c b/parser/static/small_parse_table/small_parse_table_3055.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3055.c rename to parser/static/small_parse_table/small_parse_table_3055.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3056.c b/parser/static/small_parse_table/small_parse_table_3056.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3056.c rename to parser/static/small_parse_table/small_parse_table_3056.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3057.c b/parser/static/small_parse_table/small_parse_table_3057.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3057.c rename to parser/static/small_parse_table/small_parse_table_3057.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3058.c b/parser/static/small_parse_table/small_parse_table_3058.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3058.c rename to parser/static/small_parse_table/small_parse_table_3058.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3059.c b/parser/static/small_parse_table/small_parse_table_3059.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3059.c rename to parser/static/small_parse_table/small_parse_table_3059.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_306.c b/parser/static/small_parse_table/small_parse_table_306.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_306.c rename to parser/static/small_parse_table/small_parse_table_306.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3060.c b/parser/static/small_parse_table/small_parse_table_3060.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3060.c rename to parser/static/small_parse_table/small_parse_table_3060.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3061.c b/parser/static/small_parse_table/small_parse_table_3061.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3061.c rename to parser/static/small_parse_table/small_parse_table_3061.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3062.c b/parser/static/small_parse_table/small_parse_table_3062.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3062.c rename to parser/static/small_parse_table/small_parse_table_3062.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3063.c b/parser/static/small_parse_table/small_parse_table_3063.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3063.c rename to parser/static/small_parse_table/small_parse_table_3063.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3064.c b/parser/static/small_parse_table/small_parse_table_3064.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3064.c rename to parser/static/small_parse_table/small_parse_table_3064.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3065.c b/parser/static/small_parse_table/small_parse_table_3065.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3065.c rename to parser/static/small_parse_table/small_parse_table_3065.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3066.c b/parser/static/small_parse_table/small_parse_table_3066.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3066.c rename to parser/static/small_parse_table/small_parse_table_3066.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3067.c b/parser/static/small_parse_table/small_parse_table_3067.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3067.c rename to parser/static/small_parse_table/small_parse_table_3067.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3068.c b/parser/static/small_parse_table/small_parse_table_3068.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3068.c rename to parser/static/small_parse_table/small_parse_table_3068.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3069.c b/parser/static/small_parse_table/small_parse_table_3069.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3069.c rename to parser/static/small_parse_table/small_parse_table_3069.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_307.c b/parser/static/small_parse_table/small_parse_table_307.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_307.c rename to parser/static/small_parse_table/small_parse_table_307.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3070.c b/parser/static/small_parse_table/small_parse_table_3070.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3070.c rename to parser/static/small_parse_table/small_parse_table_3070.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3071.c b/parser/static/small_parse_table/small_parse_table_3071.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3071.c rename to parser/static/small_parse_table/small_parse_table_3071.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3072.c b/parser/static/small_parse_table/small_parse_table_3072.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3072.c rename to parser/static/small_parse_table/small_parse_table_3072.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3073.c b/parser/static/small_parse_table/small_parse_table_3073.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3073.c rename to parser/static/small_parse_table/small_parse_table_3073.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3074.c b/parser/static/small_parse_table/small_parse_table_3074.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3074.c rename to parser/static/small_parse_table/small_parse_table_3074.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3075.c b/parser/static/small_parse_table/small_parse_table_3075.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3075.c rename to parser/static/small_parse_table/small_parse_table_3075.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3076.c b/parser/static/small_parse_table/small_parse_table_3076.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3076.c rename to parser/static/small_parse_table/small_parse_table_3076.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3077.c b/parser/static/small_parse_table/small_parse_table_3077.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3077.c rename to parser/static/small_parse_table/small_parse_table_3077.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3078.c b/parser/static/small_parse_table/small_parse_table_3078.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3078.c rename to parser/static/small_parse_table/small_parse_table_3078.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3079.c b/parser/static/small_parse_table/small_parse_table_3079.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3079.c rename to parser/static/small_parse_table/small_parse_table_3079.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_308.c b/parser/static/small_parse_table/small_parse_table_308.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_308.c rename to parser/static/small_parse_table/small_parse_table_308.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3080.c b/parser/static/small_parse_table/small_parse_table_3080.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3080.c rename to parser/static/small_parse_table/small_parse_table_3080.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3081.c b/parser/static/small_parse_table/small_parse_table_3081.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3081.c rename to parser/static/small_parse_table/small_parse_table_3081.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3082.c b/parser/static/small_parse_table/small_parse_table_3082.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3082.c rename to parser/static/small_parse_table/small_parse_table_3082.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3083.c b/parser/static/small_parse_table/small_parse_table_3083.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3083.c rename to parser/static/small_parse_table/small_parse_table_3083.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3084.c b/parser/static/small_parse_table/small_parse_table_3084.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3084.c rename to parser/static/small_parse_table/small_parse_table_3084.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3085.c b/parser/static/small_parse_table/small_parse_table_3085.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3085.c rename to parser/static/small_parse_table/small_parse_table_3085.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3086.c b/parser/static/small_parse_table/small_parse_table_3086.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3086.c rename to parser/static/small_parse_table/small_parse_table_3086.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3087.c b/parser/static/small_parse_table/small_parse_table_3087.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3087.c rename to parser/static/small_parse_table/small_parse_table_3087.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3088.c b/parser/static/small_parse_table/small_parse_table_3088.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3088.c rename to parser/static/small_parse_table/small_parse_table_3088.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3089.c b/parser/static/small_parse_table/small_parse_table_3089.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3089.c rename to parser/static/small_parse_table/small_parse_table_3089.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_309.c b/parser/static/small_parse_table/small_parse_table_309.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_309.c rename to parser/static/small_parse_table/small_parse_table_309.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3090.c b/parser/static/small_parse_table/small_parse_table_3090.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3090.c rename to parser/static/small_parse_table/small_parse_table_3090.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3091.c b/parser/static/small_parse_table/small_parse_table_3091.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3091.c rename to parser/static/small_parse_table/small_parse_table_3091.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3092.c b/parser/static/small_parse_table/small_parse_table_3092.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3092.c rename to parser/static/small_parse_table/small_parse_table_3092.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3093.c b/parser/static/small_parse_table/small_parse_table_3093.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3093.c rename to parser/static/small_parse_table/small_parse_table_3093.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3094.c b/parser/static/small_parse_table/small_parse_table_3094.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3094.c rename to parser/static/small_parse_table/small_parse_table_3094.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3095.c b/parser/static/small_parse_table/small_parse_table_3095.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3095.c rename to parser/static/small_parse_table/small_parse_table_3095.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3096.c b/parser/static/small_parse_table/small_parse_table_3096.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3096.c rename to parser/static/small_parse_table/small_parse_table_3096.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3097.c b/parser/static/small_parse_table/small_parse_table_3097.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3097.c rename to parser/static/small_parse_table/small_parse_table_3097.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3098.c b/parser/static/small_parse_table/small_parse_table_3098.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3098.c rename to parser/static/small_parse_table/small_parse_table_3098.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3099.c b/parser/static/small_parse_table/small_parse_table_3099.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3099.c rename to parser/static/small_parse_table/small_parse_table_3099.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_31.c b/parser/static/small_parse_table/small_parse_table_31.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_31.c rename to parser/static/small_parse_table/small_parse_table_31.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_310.c b/parser/static/small_parse_table/small_parse_table_310.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_310.c rename to parser/static/small_parse_table/small_parse_table_310.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3100.c b/parser/static/small_parse_table/small_parse_table_3100.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3100.c rename to parser/static/small_parse_table/small_parse_table_3100.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3101.c b/parser/static/small_parse_table/small_parse_table_3101.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3101.c rename to parser/static/small_parse_table/small_parse_table_3101.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3102.c b/parser/static/small_parse_table/small_parse_table_3102.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3102.c rename to parser/static/small_parse_table/small_parse_table_3102.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3103.c b/parser/static/small_parse_table/small_parse_table_3103.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3103.c rename to parser/static/small_parse_table/small_parse_table_3103.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3104.c b/parser/static/small_parse_table/small_parse_table_3104.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3104.c rename to parser/static/small_parse_table/small_parse_table_3104.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3105.c b/parser/static/small_parse_table/small_parse_table_3105.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3105.c rename to parser/static/small_parse_table/small_parse_table_3105.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3106.c b/parser/static/small_parse_table/small_parse_table_3106.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3106.c rename to parser/static/small_parse_table/small_parse_table_3106.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3107.c b/parser/static/small_parse_table/small_parse_table_3107.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3107.c rename to parser/static/small_parse_table/small_parse_table_3107.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3108.c b/parser/static/small_parse_table/small_parse_table_3108.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3108.c rename to parser/static/small_parse_table/small_parse_table_3108.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3109.c b/parser/static/small_parse_table/small_parse_table_3109.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3109.c rename to parser/static/small_parse_table/small_parse_table_3109.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_311.c b/parser/static/small_parse_table/small_parse_table_311.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_311.c rename to parser/static/small_parse_table/small_parse_table_311.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3110.c b/parser/static/small_parse_table/small_parse_table_3110.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3110.c rename to parser/static/small_parse_table/small_parse_table_3110.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3111.c b/parser/static/small_parse_table/small_parse_table_3111.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3111.c rename to parser/static/small_parse_table/small_parse_table_3111.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3112.c b/parser/static/small_parse_table/small_parse_table_3112.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3112.c rename to parser/static/small_parse_table/small_parse_table_3112.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3113.c b/parser/static/small_parse_table/small_parse_table_3113.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3113.c rename to parser/static/small_parse_table/small_parse_table_3113.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3114.c b/parser/static/small_parse_table/small_parse_table_3114.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3114.c rename to parser/static/small_parse_table/small_parse_table_3114.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3115.c b/parser/static/small_parse_table/small_parse_table_3115.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3115.c rename to parser/static/small_parse_table/small_parse_table_3115.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3116.c b/parser/static/small_parse_table/small_parse_table_3116.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3116.c rename to parser/static/small_parse_table/small_parse_table_3116.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3117.c b/parser/static/small_parse_table/small_parse_table_3117.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3117.c rename to parser/static/small_parse_table/small_parse_table_3117.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3118.c b/parser/static/small_parse_table/small_parse_table_3118.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3118.c rename to parser/static/small_parse_table/small_parse_table_3118.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3119.c b/parser/static/small_parse_table/small_parse_table_3119.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3119.c rename to parser/static/small_parse_table/small_parse_table_3119.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_312.c b/parser/static/small_parse_table/small_parse_table_312.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_312.c rename to parser/static/small_parse_table/small_parse_table_312.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3120.c b/parser/static/small_parse_table/small_parse_table_3120.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3120.c rename to parser/static/small_parse_table/small_parse_table_3120.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3121.c b/parser/static/small_parse_table/small_parse_table_3121.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3121.c rename to parser/static/small_parse_table/small_parse_table_3121.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3122.c b/parser/static/small_parse_table/small_parse_table_3122.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3122.c rename to parser/static/small_parse_table/small_parse_table_3122.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3123.c b/parser/static/small_parse_table/small_parse_table_3123.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3123.c rename to parser/static/small_parse_table/small_parse_table_3123.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3124.c b/parser/static/small_parse_table/small_parse_table_3124.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3124.c rename to parser/static/small_parse_table/small_parse_table_3124.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3125.c b/parser/static/small_parse_table/small_parse_table_3125.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3125.c rename to parser/static/small_parse_table/small_parse_table_3125.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3126.c b/parser/static/small_parse_table/small_parse_table_3126.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3126.c rename to parser/static/small_parse_table/small_parse_table_3126.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3127.c b/parser/static/small_parse_table/small_parse_table_3127.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3127.c rename to parser/static/small_parse_table/small_parse_table_3127.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3128.c b/parser/static/small_parse_table/small_parse_table_3128.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3128.c rename to parser/static/small_parse_table/small_parse_table_3128.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3129.c b/parser/static/small_parse_table/small_parse_table_3129.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3129.c rename to parser/static/small_parse_table/small_parse_table_3129.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_313.c b/parser/static/small_parse_table/small_parse_table_313.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_313.c rename to parser/static/small_parse_table/small_parse_table_313.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3130.c b/parser/static/small_parse_table/small_parse_table_3130.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3130.c rename to parser/static/small_parse_table/small_parse_table_3130.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3131.c b/parser/static/small_parse_table/small_parse_table_3131.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3131.c rename to parser/static/small_parse_table/small_parse_table_3131.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3132.c b/parser/static/small_parse_table/small_parse_table_3132.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3132.c rename to parser/static/small_parse_table/small_parse_table_3132.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3133.c b/parser/static/small_parse_table/small_parse_table_3133.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3133.c rename to parser/static/small_parse_table/small_parse_table_3133.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3134.c b/parser/static/small_parse_table/small_parse_table_3134.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3134.c rename to parser/static/small_parse_table/small_parse_table_3134.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3135.c b/parser/static/small_parse_table/small_parse_table_3135.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3135.c rename to parser/static/small_parse_table/small_parse_table_3135.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3136.c b/parser/static/small_parse_table/small_parse_table_3136.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3136.c rename to parser/static/small_parse_table/small_parse_table_3136.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3137.c b/parser/static/small_parse_table/small_parse_table_3137.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3137.c rename to parser/static/small_parse_table/small_parse_table_3137.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3138.c b/parser/static/small_parse_table/small_parse_table_3138.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3138.c rename to parser/static/small_parse_table/small_parse_table_3138.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3139.c b/parser/static/small_parse_table/small_parse_table_3139.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3139.c rename to parser/static/small_parse_table/small_parse_table_3139.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_314.c b/parser/static/small_parse_table/small_parse_table_314.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_314.c rename to parser/static/small_parse_table/small_parse_table_314.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3140.c b/parser/static/small_parse_table/small_parse_table_3140.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3140.c rename to parser/static/small_parse_table/small_parse_table_3140.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3141.c b/parser/static/small_parse_table/small_parse_table_3141.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3141.c rename to parser/static/small_parse_table/small_parse_table_3141.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3142.c b/parser/static/small_parse_table/small_parse_table_3142.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3142.c rename to parser/static/small_parse_table/small_parse_table_3142.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3143.c b/parser/static/small_parse_table/small_parse_table_3143.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3143.c rename to parser/static/small_parse_table/small_parse_table_3143.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3144.c b/parser/static/small_parse_table/small_parse_table_3144.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3144.c rename to parser/static/small_parse_table/small_parse_table_3144.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3145.c b/parser/static/small_parse_table/small_parse_table_3145.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3145.c rename to parser/static/small_parse_table/small_parse_table_3145.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3146.c b/parser/static/small_parse_table/small_parse_table_3146.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3146.c rename to parser/static/small_parse_table/small_parse_table_3146.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3147.c b/parser/static/small_parse_table/small_parse_table_3147.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3147.c rename to parser/static/small_parse_table/small_parse_table_3147.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3148.c b/parser/static/small_parse_table/small_parse_table_3148.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3148.c rename to parser/static/small_parse_table/small_parse_table_3148.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3149.c b/parser/static/small_parse_table/small_parse_table_3149.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3149.c rename to parser/static/small_parse_table/small_parse_table_3149.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_315.c b/parser/static/small_parse_table/small_parse_table_315.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_315.c rename to parser/static/small_parse_table/small_parse_table_315.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3150.c b/parser/static/small_parse_table/small_parse_table_3150.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3150.c rename to parser/static/small_parse_table/small_parse_table_3150.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3151.c b/parser/static/small_parse_table/small_parse_table_3151.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3151.c rename to parser/static/small_parse_table/small_parse_table_3151.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3152.c b/parser/static/small_parse_table/small_parse_table_3152.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3152.c rename to parser/static/small_parse_table/small_parse_table_3152.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3153.c b/parser/static/small_parse_table/small_parse_table_3153.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3153.c rename to parser/static/small_parse_table/small_parse_table_3153.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3154.c b/parser/static/small_parse_table/small_parse_table_3154.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3154.c rename to parser/static/small_parse_table/small_parse_table_3154.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3155.c b/parser/static/small_parse_table/small_parse_table_3155.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3155.c rename to parser/static/small_parse_table/small_parse_table_3155.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3156.c b/parser/static/small_parse_table/small_parse_table_3156.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3156.c rename to parser/static/small_parse_table/small_parse_table_3156.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3157.c b/parser/static/small_parse_table/small_parse_table_3157.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3157.c rename to parser/static/small_parse_table/small_parse_table_3157.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3158.c b/parser/static/small_parse_table/small_parse_table_3158.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3158.c rename to parser/static/small_parse_table/small_parse_table_3158.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3159.c b/parser/static/small_parse_table/small_parse_table_3159.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3159.c rename to parser/static/small_parse_table/small_parse_table_3159.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_316.c b/parser/static/small_parse_table/small_parse_table_316.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_316.c rename to parser/static/small_parse_table/small_parse_table_316.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3160.c b/parser/static/small_parse_table/small_parse_table_3160.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3160.c rename to parser/static/small_parse_table/small_parse_table_3160.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3161.c b/parser/static/small_parse_table/small_parse_table_3161.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3161.c rename to parser/static/small_parse_table/small_parse_table_3161.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3162.c b/parser/static/small_parse_table/small_parse_table_3162.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3162.c rename to parser/static/small_parse_table/small_parse_table_3162.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3163.c b/parser/static/small_parse_table/small_parse_table_3163.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3163.c rename to parser/static/small_parse_table/small_parse_table_3163.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3164.c b/parser/static/small_parse_table/small_parse_table_3164.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3164.c rename to parser/static/small_parse_table/small_parse_table_3164.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3165.c b/parser/static/small_parse_table/small_parse_table_3165.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3165.c rename to parser/static/small_parse_table/small_parse_table_3165.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3166.c b/parser/static/small_parse_table/small_parse_table_3166.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3166.c rename to parser/static/small_parse_table/small_parse_table_3166.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3167.c b/parser/static/small_parse_table/small_parse_table_3167.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3167.c rename to parser/static/small_parse_table/small_parse_table_3167.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3168.c b/parser/static/small_parse_table/small_parse_table_3168.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3168.c rename to parser/static/small_parse_table/small_parse_table_3168.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3169.c b/parser/static/small_parse_table/small_parse_table_3169.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3169.c rename to parser/static/small_parse_table/small_parse_table_3169.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_317.c b/parser/static/small_parse_table/small_parse_table_317.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_317.c rename to parser/static/small_parse_table/small_parse_table_317.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3170.c b/parser/static/small_parse_table/small_parse_table_3170.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3170.c rename to parser/static/small_parse_table/small_parse_table_3170.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3171.c b/parser/static/small_parse_table/small_parse_table_3171.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3171.c rename to parser/static/small_parse_table/small_parse_table_3171.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3172.c b/parser/static/small_parse_table/small_parse_table_3172.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3172.c rename to parser/static/small_parse_table/small_parse_table_3172.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3173.c b/parser/static/small_parse_table/small_parse_table_3173.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3173.c rename to parser/static/small_parse_table/small_parse_table_3173.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3174.c b/parser/static/small_parse_table/small_parse_table_3174.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3174.c rename to parser/static/small_parse_table/small_parse_table_3174.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3175.c b/parser/static/small_parse_table/small_parse_table_3175.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3175.c rename to parser/static/small_parse_table/small_parse_table_3175.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3176.c b/parser/static/small_parse_table/small_parse_table_3176.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3176.c rename to parser/static/small_parse_table/small_parse_table_3176.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3177.c b/parser/static/small_parse_table/small_parse_table_3177.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3177.c rename to parser/static/small_parse_table/small_parse_table_3177.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3178.c b/parser/static/small_parse_table/small_parse_table_3178.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3178.c rename to parser/static/small_parse_table/small_parse_table_3178.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3179.c b/parser/static/small_parse_table/small_parse_table_3179.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3179.c rename to parser/static/small_parse_table/small_parse_table_3179.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_318.c b/parser/static/small_parse_table/small_parse_table_318.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_318.c rename to parser/static/small_parse_table/small_parse_table_318.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3180.c b/parser/static/small_parse_table/small_parse_table_3180.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3180.c rename to parser/static/small_parse_table/small_parse_table_3180.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3181.c b/parser/static/small_parse_table/small_parse_table_3181.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3181.c rename to parser/static/small_parse_table/small_parse_table_3181.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3182.c b/parser/static/small_parse_table/small_parse_table_3182.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3182.c rename to parser/static/small_parse_table/small_parse_table_3182.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3183.c b/parser/static/small_parse_table/small_parse_table_3183.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3183.c rename to parser/static/small_parse_table/small_parse_table_3183.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3184.c b/parser/static/small_parse_table/small_parse_table_3184.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3184.c rename to parser/static/small_parse_table/small_parse_table_3184.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3185.c b/parser/static/small_parse_table/small_parse_table_3185.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3185.c rename to parser/static/small_parse_table/small_parse_table_3185.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3186.c b/parser/static/small_parse_table/small_parse_table_3186.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3186.c rename to parser/static/small_parse_table/small_parse_table_3186.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3187.c b/parser/static/small_parse_table/small_parse_table_3187.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3187.c rename to parser/static/small_parse_table/small_parse_table_3187.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3188.c b/parser/static/small_parse_table/small_parse_table_3188.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3188.c rename to parser/static/small_parse_table/small_parse_table_3188.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3189.c b/parser/static/small_parse_table/small_parse_table_3189.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3189.c rename to parser/static/small_parse_table/small_parse_table_3189.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_319.c b/parser/static/small_parse_table/small_parse_table_319.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_319.c rename to parser/static/small_parse_table/small_parse_table_319.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3190.c b/parser/static/small_parse_table/small_parse_table_3190.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3190.c rename to parser/static/small_parse_table/small_parse_table_3190.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3191.c b/parser/static/small_parse_table/small_parse_table_3191.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3191.c rename to parser/static/small_parse_table/small_parse_table_3191.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3192.c b/parser/static/small_parse_table/small_parse_table_3192.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3192.c rename to parser/static/small_parse_table/small_parse_table_3192.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3193.c b/parser/static/small_parse_table/small_parse_table_3193.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3193.c rename to parser/static/small_parse_table/small_parse_table_3193.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3194.c b/parser/static/small_parse_table/small_parse_table_3194.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3194.c rename to parser/static/small_parse_table/small_parse_table_3194.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3195.c b/parser/static/small_parse_table/small_parse_table_3195.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3195.c rename to parser/static/small_parse_table/small_parse_table_3195.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3196.c b/parser/static/small_parse_table/small_parse_table_3196.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3196.c rename to parser/static/small_parse_table/small_parse_table_3196.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3197.c b/parser/static/small_parse_table/small_parse_table_3197.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3197.c rename to parser/static/small_parse_table/small_parse_table_3197.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3198.c b/parser/static/small_parse_table/small_parse_table_3198.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3198.c rename to parser/static/small_parse_table/small_parse_table_3198.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3199.c b/parser/static/small_parse_table/small_parse_table_3199.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3199.c rename to parser/static/small_parse_table/small_parse_table_3199.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_32.c b/parser/static/small_parse_table/small_parse_table_32.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_32.c rename to parser/static/small_parse_table/small_parse_table_32.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_320.c b/parser/static/small_parse_table/small_parse_table_320.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_320.c rename to parser/static/small_parse_table/small_parse_table_320.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3200.c b/parser/static/small_parse_table/small_parse_table_3200.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3200.c rename to parser/static/small_parse_table/small_parse_table_3200.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3201.c b/parser/static/small_parse_table/small_parse_table_3201.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3201.c rename to parser/static/small_parse_table/small_parse_table_3201.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3202.c b/parser/static/small_parse_table/small_parse_table_3202.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3202.c rename to parser/static/small_parse_table/small_parse_table_3202.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3203.c b/parser/static/small_parse_table/small_parse_table_3203.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3203.c rename to parser/static/small_parse_table/small_parse_table_3203.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3204.c b/parser/static/small_parse_table/small_parse_table_3204.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3204.c rename to parser/static/small_parse_table/small_parse_table_3204.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3205.c b/parser/static/small_parse_table/small_parse_table_3205.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3205.c rename to parser/static/small_parse_table/small_parse_table_3205.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3206.c b/parser/static/small_parse_table/small_parse_table_3206.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3206.c rename to parser/static/small_parse_table/small_parse_table_3206.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3207.c b/parser/static/small_parse_table/small_parse_table_3207.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3207.c rename to parser/static/small_parse_table/small_parse_table_3207.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3208.c b/parser/static/small_parse_table/small_parse_table_3208.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3208.c rename to parser/static/small_parse_table/small_parse_table_3208.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3209.c b/parser/static/small_parse_table/small_parse_table_3209.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3209.c rename to parser/static/small_parse_table/small_parse_table_3209.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_321.c b/parser/static/small_parse_table/small_parse_table_321.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_321.c rename to parser/static/small_parse_table/small_parse_table_321.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3210.c b/parser/static/small_parse_table/small_parse_table_3210.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3210.c rename to parser/static/small_parse_table/small_parse_table_3210.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3211.c b/parser/static/small_parse_table/small_parse_table_3211.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3211.c rename to parser/static/small_parse_table/small_parse_table_3211.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3212.c b/parser/static/small_parse_table/small_parse_table_3212.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3212.c rename to parser/static/small_parse_table/small_parse_table_3212.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3213.c b/parser/static/small_parse_table/small_parse_table_3213.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3213.c rename to parser/static/small_parse_table/small_parse_table_3213.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3214.c b/parser/static/small_parse_table/small_parse_table_3214.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3214.c rename to parser/static/small_parse_table/small_parse_table_3214.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3215.c b/parser/static/small_parse_table/small_parse_table_3215.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3215.c rename to parser/static/small_parse_table/small_parse_table_3215.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3216.c b/parser/static/small_parse_table/small_parse_table_3216.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3216.c rename to parser/static/small_parse_table/small_parse_table_3216.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3217.c b/parser/static/small_parse_table/small_parse_table_3217.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3217.c rename to parser/static/small_parse_table/small_parse_table_3217.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3218.c b/parser/static/small_parse_table/small_parse_table_3218.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3218.c rename to parser/static/small_parse_table/small_parse_table_3218.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3219.c b/parser/static/small_parse_table/small_parse_table_3219.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3219.c rename to parser/static/small_parse_table/small_parse_table_3219.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_322.c b/parser/static/small_parse_table/small_parse_table_322.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_322.c rename to parser/static/small_parse_table/small_parse_table_322.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3220.c b/parser/static/small_parse_table/small_parse_table_3220.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3220.c rename to parser/static/small_parse_table/small_parse_table_3220.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3221.c b/parser/static/small_parse_table/small_parse_table_3221.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3221.c rename to parser/static/small_parse_table/small_parse_table_3221.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3222.c b/parser/static/small_parse_table/small_parse_table_3222.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3222.c rename to parser/static/small_parse_table/small_parse_table_3222.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3223.c b/parser/static/small_parse_table/small_parse_table_3223.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3223.c rename to parser/static/small_parse_table/small_parse_table_3223.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3224.c b/parser/static/small_parse_table/small_parse_table_3224.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3224.c rename to parser/static/small_parse_table/small_parse_table_3224.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3225.c b/parser/static/small_parse_table/small_parse_table_3225.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3225.c rename to parser/static/small_parse_table/small_parse_table_3225.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3226.c b/parser/static/small_parse_table/small_parse_table_3226.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3226.c rename to parser/static/small_parse_table/small_parse_table_3226.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3227.c b/parser/static/small_parse_table/small_parse_table_3227.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3227.c rename to parser/static/small_parse_table/small_parse_table_3227.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3228.c b/parser/static/small_parse_table/small_parse_table_3228.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3228.c rename to parser/static/small_parse_table/small_parse_table_3228.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3229.c b/parser/static/small_parse_table/small_parse_table_3229.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3229.c rename to parser/static/small_parse_table/small_parse_table_3229.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_323.c b/parser/static/small_parse_table/small_parse_table_323.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_323.c rename to parser/static/small_parse_table/small_parse_table_323.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3230.c b/parser/static/small_parse_table/small_parse_table_3230.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3230.c rename to parser/static/small_parse_table/small_parse_table_3230.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3231.c b/parser/static/small_parse_table/small_parse_table_3231.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3231.c rename to parser/static/small_parse_table/small_parse_table_3231.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3232.c b/parser/static/small_parse_table/small_parse_table_3232.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3232.c rename to parser/static/small_parse_table/small_parse_table_3232.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3233.c b/parser/static/small_parse_table/small_parse_table_3233.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3233.c rename to parser/static/small_parse_table/small_parse_table_3233.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3234.c b/parser/static/small_parse_table/small_parse_table_3234.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3234.c rename to parser/static/small_parse_table/small_parse_table_3234.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3235.c b/parser/static/small_parse_table/small_parse_table_3235.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3235.c rename to parser/static/small_parse_table/small_parse_table_3235.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3236.c b/parser/static/small_parse_table/small_parse_table_3236.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3236.c rename to parser/static/small_parse_table/small_parse_table_3236.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3237.c b/parser/static/small_parse_table/small_parse_table_3237.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3237.c rename to parser/static/small_parse_table/small_parse_table_3237.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3238.c b/parser/static/small_parse_table/small_parse_table_3238.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3238.c rename to parser/static/small_parse_table/small_parse_table_3238.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3239.c b/parser/static/small_parse_table/small_parse_table_3239.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3239.c rename to parser/static/small_parse_table/small_parse_table_3239.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_324.c b/parser/static/small_parse_table/small_parse_table_324.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_324.c rename to parser/static/small_parse_table/small_parse_table_324.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3240.c b/parser/static/small_parse_table/small_parse_table_3240.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3240.c rename to parser/static/small_parse_table/small_parse_table_3240.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3241.c b/parser/static/small_parse_table/small_parse_table_3241.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3241.c rename to parser/static/small_parse_table/small_parse_table_3241.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3242.c b/parser/static/small_parse_table/small_parse_table_3242.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3242.c rename to parser/static/small_parse_table/small_parse_table_3242.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_3243.c b/parser/static/small_parse_table/small_parse_table_3243.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_3243.c rename to parser/static/small_parse_table/small_parse_table_3243.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_325.c b/parser/static/small_parse_table/small_parse_table_325.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_325.c rename to parser/static/small_parse_table/small_parse_table_325.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_326.c b/parser/static/small_parse_table/small_parse_table_326.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_326.c rename to parser/static/small_parse_table/small_parse_table_326.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_327.c b/parser/static/small_parse_table/small_parse_table_327.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_327.c rename to parser/static/small_parse_table/small_parse_table_327.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_328.c b/parser/static/small_parse_table/small_parse_table_328.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_328.c rename to parser/static/small_parse_table/small_parse_table_328.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_329.c b/parser/static/small_parse_table/small_parse_table_329.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_329.c rename to parser/static/small_parse_table/small_parse_table_329.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_33.c b/parser/static/small_parse_table/small_parse_table_33.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_33.c rename to parser/static/small_parse_table/small_parse_table_33.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_330.c b/parser/static/small_parse_table/small_parse_table_330.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_330.c rename to parser/static/small_parse_table/small_parse_table_330.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_331.c b/parser/static/small_parse_table/small_parse_table_331.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_331.c rename to parser/static/small_parse_table/small_parse_table_331.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_332.c b/parser/static/small_parse_table/small_parse_table_332.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_332.c rename to parser/static/small_parse_table/small_parse_table_332.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_333.c b/parser/static/small_parse_table/small_parse_table_333.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_333.c rename to parser/static/small_parse_table/small_parse_table_333.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_334.c b/parser/static/small_parse_table/small_parse_table_334.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_334.c rename to parser/static/small_parse_table/small_parse_table_334.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_335.c b/parser/static/small_parse_table/small_parse_table_335.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_335.c rename to parser/static/small_parse_table/small_parse_table_335.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_336.c b/parser/static/small_parse_table/small_parse_table_336.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_336.c rename to parser/static/small_parse_table/small_parse_table_336.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_337.c b/parser/static/small_parse_table/small_parse_table_337.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_337.c rename to parser/static/small_parse_table/small_parse_table_337.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_338.c b/parser/static/small_parse_table/small_parse_table_338.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_338.c rename to parser/static/small_parse_table/small_parse_table_338.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_339.c b/parser/static/small_parse_table/small_parse_table_339.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_339.c rename to parser/static/small_parse_table/small_parse_table_339.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_34.c b/parser/static/small_parse_table/small_parse_table_34.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_34.c rename to parser/static/small_parse_table/small_parse_table_34.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_340.c b/parser/static/small_parse_table/small_parse_table_340.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_340.c rename to parser/static/small_parse_table/small_parse_table_340.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_341.c b/parser/static/small_parse_table/small_parse_table_341.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_341.c rename to parser/static/small_parse_table/small_parse_table_341.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_342.c b/parser/static/small_parse_table/small_parse_table_342.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_342.c rename to parser/static/small_parse_table/small_parse_table_342.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_343.c b/parser/static/small_parse_table/small_parse_table_343.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_343.c rename to parser/static/small_parse_table/small_parse_table_343.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_344.c b/parser/static/small_parse_table/small_parse_table_344.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_344.c rename to parser/static/small_parse_table/small_parse_table_344.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_345.c b/parser/static/small_parse_table/small_parse_table_345.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_345.c rename to parser/static/small_parse_table/small_parse_table_345.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_346.c b/parser/static/small_parse_table/small_parse_table_346.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_346.c rename to parser/static/small_parse_table/small_parse_table_346.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_347.c b/parser/static/small_parse_table/small_parse_table_347.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_347.c rename to parser/static/small_parse_table/small_parse_table_347.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_348.c b/parser/static/small_parse_table/small_parse_table_348.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_348.c rename to parser/static/small_parse_table/small_parse_table_348.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_349.c b/parser/static/small_parse_table/small_parse_table_349.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_349.c rename to parser/static/small_parse_table/small_parse_table_349.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_35.c b/parser/static/small_parse_table/small_parse_table_35.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_35.c rename to parser/static/small_parse_table/small_parse_table_35.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_350.c b/parser/static/small_parse_table/small_parse_table_350.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_350.c rename to parser/static/small_parse_table/small_parse_table_350.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_351.c b/parser/static/small_parse_table/small_parse_table_351.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_351.c rename to parser/static/small_parse_table/small_parse_table_351.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_352.c b/parser/static/small_parse_table/small_parse_table_352.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_352.c rename to parser/static/small_parse_table/small_parse_table_352.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_353.c b/parser/static/small_parse_table/small_parse_table_353.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_353.c rename to parser/static/small_parse_table/small_parse_table_353.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_354.c b/parser/static/small_parse_table/small_parse_table_354.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_354.c rename to parser/static/small_parse_table/small_parse_table_354.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_355.c b/parser/static/small_parse_table/small_parse_table_355.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_355.c rename to parser/static/small_parse_table/small_parse_table_355.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_356.c b/parser/static/small_parse_table/small_parse_table_356.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_356.c rename to parser/static/small_parse_table/small_parse_table_356.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_357.c b/parser/static/small_parse_table/small_parse_table_357.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_357.c rename to parser/static/small_parse_table/small_parse_table_357.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_358.c b/parser/static/small_parse_table/small_parse_table_358.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_358.c rename to parser/static/small_parse_table/small_parse_table_358.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_359.c b/parser/static/small_parse_table/small_parse_table_359.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_359.c rename to parser/static/small_parse_table/small_parse_table_359.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_36.c b/parser/static/small_parse_table/small_parse_table_36.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_36.c rename to parser/static/small_parse_table/small_parse_table_36.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_360.c b/parser/static/small_parse_table/small_parse_table_360.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_360.c rename to parser/static/small_parse_table/small_parse_table_360.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_361.c b/parser/static/small_parse_table/small_parse_table_361.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_361.c rename to parser/static/small_parse_table/small_parse_table_361.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_362.c b/parser/static/small_parse_table/small_parse_table_362.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_362.c rename to parser/static/small_parse_table/small_parse_table_362.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_363.c b/parser/static/small_parse_table/small_parse_table_363.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_363.c rename to parser/static/small_parse_table/small_parse_table_363.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_364.c b/parser/static/small_parse_table/small_parse_table_364.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_364.c rename to parser/static/small_parse_table/small_parse_table_364.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_365.c b/parser/static/small_parse_table/small_parse_table_365.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_365.c rename to parser/static/small_parse_table/small_parse_table_365.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_366.c b/parser/static/small_parse_table/small_parse_table_366.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_366.c rename to parser/static/small_parse_table/small_parse_table_366.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_367.c b/parser/static/small_parse_table/small_parse_table_367.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_367.c rename to parser/static/small_parse_table/small_parse_table_367.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_368.c b/parser/static/small_parse_table/small_parse_table_368.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_368.c rename to parser/static/small_parse_table/small_parse_table_368.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_369.c b/parser/static/small_parse_table/small_parse_table_369.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_369.c rename to parser/static/small_parse_table/small_parse_table_369.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_37.c b/parser/static/small_parse_table/small_parse_table_37.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_37.c rename to parser/static/small_parse_table/small_parse_table_37.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_370.c b/parser/static/small_parse_table/small_parse_table_370.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_370.c rename to parser/static/small_parse_table/small_parse_table_370.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_371.c b/parser/static/small_parse_table/small_parse_table_371.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_371.c rename to parser/static/small_parse_table/small_parse_table_371.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_372.c b/parser/static/small_parse_table/small_parse_table_372.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_372.c rename to parser/static/small_parse_table/small_parse_table_372.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_373.c b/parser/static/small_parse_table/small_parse_table_373.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_373.c rename to parser/static/small_parse_table/small_parse_table_373.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_374.c b/parser/static/small_parse_table/small_parse_table_374.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_374.c rename to parser/static/small_parse_table/small_parse_table_374.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_375.c b/parser/static/small_parse_table/small_parse_table_375.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_375.c rename to parser/static/small_parse_table/small_parse_table_375.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_376.c b/parser/static/small_parse_table/small_parse_table_376.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_376.c rename to parser/static/small_parse_table/small_parse_table_376.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_377.c b/parser/static/small_parse_table/small_parse_table_377.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_377.c rename to parser/static/small_parse_table/small_parse_table_377.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_378.c b/parser/static/small_parse_table/small_parse_table_378.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_378.c rename to parser/static/small_parse_table/small_parse_table_378.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_379.c b/parser/static/small_parse_table/small_parse_table_379.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_379.c rename to parser/static/small_parse_table/small_parse_table_379.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_38.c b/parser/static/small_parse_table/small_parse_table_38.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_38.c rename to parser/static/small_parse_table/small_parse_table_38.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_380.c b/parser/static/small_parse_table/small_parse_table_380.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_380.c rename to parser/static/small_parse_table/small_parse_table_380.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_381.c b/parser/static/small_parse_table/small_parse_table_381.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_381.c rename to parser/static/small_parse_table/small_parse_table_381.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_382.c b/parser/static/small_parse_table/small_parse_table_382.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_382.c rename to parser/static/small_parse_table/small_parse_table_382.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_383.c b/parser/static/small_parse_table/small_parse_table_383.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_383.c rename to parser/static/small_parse_table/small_parse_table_383.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_384.c b/parser/static/small_parse_table/small_parse_table_384.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_384.c rename to parser/static/small_parse_table/small_parse_table_384.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_385.c b/parser/static/small_parse_table/small_parse_table_385.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_385.c rename to parser/static/small_parse_table/small_parse_table_385.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_386.c b/parser/static/small_parse_table/small_parse_table_386.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_386.c rename to parser/static/small_parse_table/small_parse_table_386.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_387.c b/parser/static/small_parse_table/small_parse_table_387.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_387.c rename to parser/static/small_parse_table/small_parse_table_387.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_388.c b/parser/static/small_parse_table/small_parse_table_388.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_388.c rename to parser/static/small_parse_table/small_parse_table_388.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_389.c b/parser/static/small_parse_table/small_parse_table_389.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_389.c rename to parser/static/small_parse_table/small_parse_table_389.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_39.c b/parser/static/small_parse_table/small_parse_table_39.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_39.c rename to parser/static/small_parse_table/small_parse_table_39.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_390.c b/parser/static/small_parse_table/small_parse_table_390.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_390.c rename to parser/static/small_parse_table/small_parse_table_390.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_391.c b/parser/static/small_parse_table/small_parse_table_391.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_391.c rename to parser/static/small_parse_table/small_parse_table_391.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_392.c b/parser/static/small_parse_table/small_parse_table_392.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_392.c rename to parser/static/small_parse_table/small_parse_table_392.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_393.c b/parser/static/small_parse_table/small_parse_table_393.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_393.c rename to parser/static/small_parse_table/small_parse_table_393.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_394.c b/parser/static/small_parse_table/small_parse_table_394.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_394.c rename to parser/static/small_parse_table/small_parse_table_394.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_395.c b/parser/static/small_parse_table/small_parse_table_395.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_395.c rename to parser/static/small_parse_table/small_parse_table_395.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_396.c b/parser/static/small_parse_table/small_parse_table_396.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_396.c rename to parser/static/small_parse_table/small_parse_table_396.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_397.c b/parser/static/small_parse_table/small_parse_table_397.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_397.c rename to parser/static/small_parse_table/small_parse_table_397.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_398.c b/parser/static/small_parse_table/small_parse_table_398.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_398.c rename to parser/static/small_parse_table/small_parse_table_398.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_399.c b/parser/static/small_parse_table/small_parse_table_399.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_399.c rename to parser/static/small_parse_table/small_parse_table_399.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_4.c b/parser/static/small_parse_table/small_parse_table_4.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_4.c rename to parser/static/small_parse_table/small_parse_table_4.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_40.c b/parser/static/small_parse_table/small_parse_table_40.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_40.c rename to parser/static/small_parse_table/small_parse_table_40.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_400.c b/parser/static/small_parse_table/small_parse_table_400.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_400.c rename to parser/static/small_parse_table/small_parse_table_400.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_401.c b/parser/static/small_parse_table/small_parse_table_401.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_401.c rename to parser/static/small_parse_table/small_parse_table_401.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_402.c b/parser/static/small_parse_table/small_parse_table_402.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_402.c rename to parser/static/small_parse_table/small_parse_table_402.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_403.c b/parser/static/small_parse_table/small_parse_table_403.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_403.c rename to parser/static/small_parse_table/small_parse_table_403.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_404.c b/parser/static/small_parse_table/small_parse_table_404.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_404.c rename to parser/static/small_parse_table/small_parse_table_404.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_405.c b/parser/static/small_parse_table/small_parse_table_405.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_405.c rename to parser/static/small_parse_table/small_parse_table_405.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_406.c b/parser/static/small_parse_table/small_parse_table_406.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_406.c rename to parser/static/small_parse_table/small_parse_table_406.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_407.c b/parser/static/small_parse_table/small_parse_table_407.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_407.c rename to parser/static/small_parse_table/small_parse_table_407.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_408.c b/parser/static/small_parse_table/small_parse_table_408.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_408.c rename to parser/static/small_parse_table/small_parse_table_408.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_409.c b/parser/static/small_parse_table/small_parse_table_409.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_409.c rename to parser/static/small_parse_table/small_parse_table_409.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_41.c b/parser/static/small_parse_table/small_parse_table_41.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_41.c rename to parser/static/small_parse_table/small_parse_table_41.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_410.c b/parser/static/small_parse_table/small_parse_table_410.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_410.c rename to parser/static/small_parse_table/small_parse_table_410.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_411.c b/parser/static/small_parse_table/small_parse_table_411.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_411.c rename to parser/static/small_parse_table/small_parse_table_411.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_412.c b/parser/static/small_parse_table/small_parse_table_412.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_412.c rename to parser/static/small_parse_table/small_parse_table_412.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_413.c b/parser/static/small_parse_table/small_parse_table_413.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_413.c rename to parser/static/small_parse_table/small_parse_table_413.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_414.c b/parser/static/small_parse_table/small_parse_table_414.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_414.c rename to parser/static/small_parse_table/small_parse_table_414.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_415.c b/parser/static/small_parse_table/small_parse_table_415.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_415.c rename to parser/static/small_parse_table/small_parse_table_415.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_416.c b/parser/static/small_parse_table/small_parse_table_416.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_416.c rename to parser/static/small_parse_table/small_parse_table_416.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_417.c b/parser/static/small_parse_table/small_parse_table_417.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_417.c rename to parser/static/small_parse_table/small_parse_table_417.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_418.c b/parser/static/small_parse_table/small_parse_table_418.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_418.c rename to parser/static/small_parse_table/small_parse_table_418.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_419.c b/parser/static/small_parse_table/small_parse_table_419.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_419.c rename to parser/static/small_parse_table/small_parse_table_419.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_42.c b/parser/static/small_parse_table/small_parse_table_42.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_42.c rename to parser/static/small_parse_table/small_parse_table_42.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_420.c b/parser/static/small_parse_table/small_parse_table_420.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_420.c rename to parser/static/small_parse_table/small_parse_table_420.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_421.c b/parser/static/small_parse_table/small_parse_table_421.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_421.c rename to parser/static/small_parse_table/small_parse_table_421.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_422.c b/parser/static/small_parse_table/small_parse_table_422.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_422.c rename to parser/static/small_parse_table/small_parse_table_422.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_423.c b/parser/static/small_parse_table/small_parse_table_423.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_423.c rename to parser/static/small_parse_table/small_parse_table_423.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_424.c b/parser/static/small_parse_table/small_parse_table_424.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_424.c rename to parser/static/small_parse_table/small_parse_table_424.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_425.c b/parser/static/small_parse_table/small_parse_table_425.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_425.c rename to parser/static/small_parse_table/small_parse_table_425.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_426.c b/parser/static/small_parse_table/small_parse_table_426.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_426.c rename to parser/static/small_parse_table/small_parse_table_426.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_427.c b/parser/static/small_parse_table/small_parse_table_427.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_427.c rename to parser/static/small_parse_table/small_parse_table_427.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_428.c b/parser/static/small_parse_table/small_parse_table_428.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_428.c rename to parser/static/small_parse_table/small_parse_table_428.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_429.c b/parser/static/small_parse_table/small_parse_table_429.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_429.c rename to parser/static/small_parse_table/small_parse_table_429.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_43.c b/parser/static/small_parse_table/small_parse_table_43.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_43.c rename to parser/static/small_parse_table/small_parse_table_43.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_430.c b/parser/static/small_parse_table/small_parse_table_430.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_430.c rename to parser/static/small_parse_table/small_parse_table_430.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_431.c b/parser/static/small_parse_table/small_parse_table_431.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_431.c rename to parser/static/small_parse_table/small_parse_table_431.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_432.c b/parser/static/small_parse_table/small_parse_table_432.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_432.c rename to parser/static/small_parse_table/small_parse_table_432.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_433.c b/parser/static/small_parse_table/small_parse_table_433.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_433.c rename to parser/static/small_parse_table/small_parse_table_433.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_434.c b/parser/static/small_parse_table/small_parse_table_434.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_434.c rename to parser/static/small_parse_table/small_parse_table_434.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_435.c b/parser/static/small_parse_table/small_parse_table_435.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_435.c rename to parser/static/small_parse_table/small_parse_table_435.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_436.c b/parser/static/small_parse_table/small_parse_table_436.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_436.c rename to parser/static/small_parse_table/small_parse_table_436.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_437.c b/parser/static/small_parse_table/small_parse_table_437.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_437.c rename to parser/static/small_parse_table/small_parse_table_437.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_438.c b/parser/static/small_parse_table/small_parse_table_438.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_438.c rename to parser/static/small_parse_table/small_parse_table_438.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_439.c b/parser/static/small_parse_table/small_parse_table_439.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_439.c rename to parser/static/small_parse_table/small_parse_table_439.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_44.c b/parser/static/small_parse_table/small_parse_table_44.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_44.c rename to parser/static/small_parse_table/small_parse_table_44.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_440.c b/parser/static/small_parse_table/small_parse_table_440.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_440.c rename to parser/static/small_parse_table/small_parse_table_440.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_441.c b/parser/static/small_parse_table/small_parse_table_441.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_441.c rename to parser/static/small_parse_table/small_parse_table_441.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_442.c b/parser/static/small_parse_table/small_parse_table_442.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_442.c rename to parser/static/small_parse_table/small_parse_table_442.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_443.c b/parser/static/small_parse_table/small_parse_table_443.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_443.c rename to parser/static/small_parse_table/small_parse_table_443.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_444.c b/parser/static/small_parse_table/small_parse_table_444.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_444.c rename to parser/static/small_parse_table/small_parse_table_444.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_445.c b/parser/static/small_parse_table/small_parse_table_445.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_445.c rename to parser/static/small_parse_table/small_parse_table_445.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_446.c b/parser/static/small_parse_table/small_parse_table_446.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_446.c rename to parser/static/small_parse_table/small_parse_table_446.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_447.c b/parser/static/small_parse_table/small_parse_table_447.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_447.c rename to parser/static/small_parse_table/small_parse_table_447.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_448.c b/parser/static/small_parse_table/small_parse_table_448.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_448.c rename to parser/static/small_parse_table/small_parse_table_448.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_449.c b/parser/static/small_parse_table/small_parse_table_449.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_449.c rename to parser/static/small_parse_table/small_parse_table_449.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_45.c b/parser/static/small_parse_table/small_parse_table_45.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_45.c rename to parser/static/small_parse_table/small_parse_table_45.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_450.c b/parser/static/small_parse_table/small_parse_table_450.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_450.c rename to parser/static/small_parse_table/small_parse_table_450.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_451.c b/parser/static/small_parse_table/small_parse_table_451.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_451.c rename to parser/static/small_parse_table/small_parse_table_451.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_452.c b/parser/static/small_parse_table/small_parse_table_452.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_452.c rename to parser/static/small_parse_table/small_parse_table_452.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_453.c b/parser/static/small_parse_table/small_parse_table_453.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_453.c rename to parser/static/small_parse_table/small_parse_table_453.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_454.c b/parser/static/small_parse_table/small_parse_table_454.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_454.c rename to parser/static/small_parse_table/small_parse_table_454.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_455.c b/parser/static/small_parse_table/small_parse_table_455.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_455.c rename to parser/static/small_parse_table/small_parse_table_455.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_456.c b/parser/static/small_parse_table/small_parse_table_456.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_456.c rename to parser/static/small_parse_table/small_parse_table_456.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_457.c b/parser/static/small_parse_table/small_parse_table_457.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_457.c rename to parser/static/small_parse_table/small_parse_table_457.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_458.c b/parser/static/small_parse_table/small_parse_table_458.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_458.c rename to parser/static/small_parse_table/small_parse_table_458.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_459.c b/parser/static/small_parse_table/small_parse_table_459.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_459.c rename to parser/static/small_parse_table/small_parse_table_459.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_46.c b/parser/static/small_parse_table/small_parse_table_46.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_46.c rename to parser/static/small_parse_table/small_parse_table_46.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_460.c b/parser/static/small_parse_table/small_parse_table_460.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_460.c rename to parser/static/small_parse_table/small_parse_table_460.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_461.c b/parser/static/small_parse_table/small_parse_table_461.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_461.c rename to parser/static/small_parse_table/small_parse_table_461.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_462.c b/parser/static/small_parse_table/small_parse_table_462.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_462.c rename to parser/static/small_parse_table/small_parse_table_462.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_463.c b/parser/static/small_parse_table/small_parse_table_463.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_463.c rename to parser/static/small_parse_table/small_parse_table_463.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_464.c b/parser/static/small_parse_table/small_parse_table_464.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_464.c rename to parser/static/small_parse_table/small_parse_table_464.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_465.c b/parser/static/small_parse_table/small_parse_table_465.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_465.c rename to parser/static/small_parse_table/small_parse_table_465.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_466.c b/parser/static/small_parse_table/small_parse_table_466.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_466.c rename to parser/static/small_parse_table/small_parse_table_466.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_467.c b/parser/static/small_parse_table/small_parse_table_467.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_467.c rename to parser/static/small_parse_table/small_parse_table_467.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_468.c b/parser/static/small_parse_table/small_parse_table_468.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_468.c rename to parser/static/small_parse_table/small_parse_table_468.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_469.c b/parser/static/small_parse_table/small_parse_table_469.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_469.c rename to parser/static/small_parse_table/small_parse_table_469.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_47.c b/parser/static/small_parse_table/small_parse_table_47.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_47.c rename to parser/static/small_parse_table/small_parse_table_47.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_470.c b/parser/static/small_parse_table/small_parse_table_470.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_470.c rename to parser/static/small_parse_table/small_parse_table_470.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_471.c b/parser/static/small_parse_table/small_parse_table_471.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_471.c rename to parser/static/small_parse_table/small_parse_table_471.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_472.c b/parser/static/small_parse_table/small_parse_table_472.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_472.c rename to parser/static/small_parse_table/small_parse_table_472.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_473.c b/parser/static/small_parse_table/small_parse_table_473.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_473.c rename to parser/static/small_parse_table/small_parse_table_473.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_474.c b/parser/static/small_parse_table/small_parse_table_474.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_474.c rename to parser/static/small_parse_table/small_parse_table_474.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_475.c b/parser/static/small_parse_table/small_parse_table_475.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_475.c rename to parser/static/small_parse_table/small_parse_table_475.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_476.c b/parser/static/small_parse_table/small_parse_table_476.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_476.c rename to parser/static/small_parse_table/small_parse_table_476.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_477.c b/parser/static/small_parse_table/small_parse_table_477.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_477.c rename to parser/static/small_parse_table/small_parse_table_477.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_478.c b/parser/static/small_parse_table/small_parse_table_478.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_478.c rename to parser/static/small_parse_table/small_parse_table_478.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_479.c b/parser/static/small_parse_table/small_parse_table_479.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_479.c rename to parser/static/small_parse_table/small_parse_table_479.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_48.c b/parser/static/small_parse_table/small_parse_table_48.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_48.c rename to parser/static/small_parse_table/small_parse_table_48.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_480.c b/parser/static/small_parse_table/small_parse_table_480.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_480.c rename to parser/static/small_parse_table/small_parse_table_480.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_481.c b/parser/static/small_parse_table/small_parse_table_481.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_481.c rename to parser/static/small_parse_table/small_parse_table_481.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_482.c b/parser/static/small_parse_table/small_parse_table_482.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_482.c rename to parser/static/small_parse_table/small_parse_table_482.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_483.c b/parser/static/small_parse_table/small_parse_table_483.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_483.c rename to parser/static/small_parse_table/small_parse_table_483.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_484.c b/parser/static/small_parse_table/small_parse_table_484.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_484.c rename to parser/static/small_parse_table/small_parse_table_484.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_485.c b/parser/static/small_parse_table/small_parse_table_485.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_485.c rename to parser/static/small_parse_table/small_parse_table_485.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_486.c b/parser/static/small_parse_table/small_parse_table_486.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_486.c rename to parser/static/small_parse_table/small_parse_table_486.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_487.c b/parser/static/small_parse_table/small_parse_table_487.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_487.c rename to parser/static/small_parse_table/small_parse_table_487.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_488.c b/parser/static/small_parse_table/small_parse_table_488.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_488.c rename to parser/static/small_parse_table/small_parse_table_488.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_489.c b/parser/static/small_parse_table/small_parse_table_489.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_489.c rename to parser/static/small_parse_table/small_parse_table_489.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_49.c b/parser/static/small_parse_table/small_parse_table_49.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_49.c rename to parser/static/small_parse_table/small_parse_table_49.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_490.c b/parser/static/small_parse_table/small_parse_table_490.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_490.c rename to parser/static/small_parse_table/small_parse_table_490.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_491.c b/parser/static/small_parse_table/small_parse_table_491.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_491.c rename to parser/static/small_parse_table/small_parse_table_491.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_492.c b/parser/static/small_parse_table/small_parse_table_492.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_492.c rename to parser/static/small_parse_table/small_parse_table_492.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_493.c b/parser/static/small_parse_table/small_parse_table_493.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_493.c rename to parser/static/small_parse_table/small_parse_table_493.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_494.c b/parser/static/small_parse_table/small_parse_table_494.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_494.c rename to parser/static/small_parse_table/small_parse_table_494.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_495.c b/parser/static/small_parse_table/small_parse_table_495.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_495.c rename to parser/static/small_parse_table/small_parse_table_495.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_496.c b/parser/static/small_parse_table/small_parse_table_496.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_496.c rename to parser/static/small_parse_table/small_parse_table_496.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_497.c b/parser/static/small_parse_table/small_parse_table_497.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_497.c rename to parser/static/small_parse_table/small_parse_table_497.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_498.c b/parser/static/small_parse_table/small_parse_table_498.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_498.c rename to parser/static/small_parse_table/small_parse_table_498.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_499.c b/parser/static/small_parse_table/small_parse_table_499.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_499.c rename to parser/static/small_parse_table/small_parse_table_499.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_5.c b/parser/static/small_parse_table/small_parse_table_5.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_5.c rename to parser/static/small_parse_table/small_parse_table_5.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_50.c b/parser/static/small_parse_table/small_parse_table_50.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_50.c rename to parser/static/small_parse_table/small_parse_table_50.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_500.c b/parser/static/small_parse_table/small_parse_table_500.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_500.c rename to parser/static/small_parse_table/small_parse_table_500.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_501.c b/parser/static/small_parse_table/small_parse_table_501.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_501.c rename to parser/static/small_parse_table/small_parse_table_501.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_502.c b/parser/static/small_parse_table/small_parse_table_502.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_502.c rename to parser/static/small_parse_table/small_parse_table_502.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_503.c b/parser/static/small_parse_table/small_parse_table_503.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_503.c rename to parser/static/small_parse_table/small_parse_table_503.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_504.c b/parser/static/small_parse_table/small_parse_table_504.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_504.c rename to parser/static/small_parse_table/small_parse_table_504.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_505.c b/parser/static/small_parse_table/small_parse_table_505.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_505.c rename to parser/static/small_parse_table/small_parse_table_505.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_506.c b/parser/static/small_parse_table/small_parse_table_506.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_506.c rename to parser/static/small_parse_table/small_parse_table_506.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_507.c b/parser/static/small_parse_table/small_parse_table_507.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_507.c rename to parser/static/small_parse_table/small_parse_table_507.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_508.c b/parser/static/small_parse_table/small_parse_table_508.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_508.c rename to parser/static/small_parse_table/small_parse_table_508.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_509.c b/parser/static/small_parse_table/small_parse_table_509.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_509.c rename to parser/static/small_parse_table/small_parse_table_509.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_51.c b/parser/static/small_parse_table/small_parse_table_51.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_51.c rename to parser/static/small_parse_table/small_parse_table_51.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_510.c b/parser/static/small_parse_table/small_parse_table_510.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_510.c rename to parser/static/small_parse_table/small_parse_table_510.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_511.c b/parser/static/small_parse_table/small_parse_table_511.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_511.c rename to parser/static/small_parse_table/small_parse_table_511.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_512.c b/parser/static/small_parse_table/small_parse_table_512.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_512.c rename to parser/static/small_parse_table/small_parse_table_512.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_513.c b/parser/static/small_parse_table/small_parse_table_513.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_513.c rename to parser/static/small_parse_table/small_parse_table_513.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_514.c b/parser/static/small_parse_table/small_parse_table_514.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_514.c rename to parser/static/small_parse_table/small_parse_table_514.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_515.c b/parser/static/small_parse_table/small_parse_table_515.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_515.c rename to parser/static/small_parse_table/small_parse_table_515.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_516.c b/parser/static/small_parse_table/small_parse_table_516.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_516.c rename to parser/static/small_parse_table/small_parse_table_516.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_517.c b/parser/static/small_parse_table/small_parse_table_517.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_517.c rename to parser/static/small_parse_table/small_parse_table_517.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_518.c b/parser/static/small_parse_table/small_parse_table_518.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_518.c rename to parser/static/small_parse_table/small_parse_table_518.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_519.c b/parser/static/small_parse_table/small_parse_table_519.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_519.c rename to parser/static/small_parse_table/small_parse_table_519.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_52.c b/parser/static/small_parse_table/small_parse_table_52.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_52.c rename to parser/static/small_parse_table/small_parse_table_52.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_520.c b/parser/static/small_parse_table/small_parse_table_520.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_520.c rename to parser/static/small_parse_table/small_parse_table_520.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_521.c b/parser/static/small_parse_table/small_parse_table_521.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_521.c rename to parser/static/small_parse_table/small_parse_table_521.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_522.c b/parser/static/small_parse_table/small_parse_table_522.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_522.c rename to parser/static/small_parse_table/small_parse_table_522.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_523.c b/parser/static/small_parse_table/small_parse_table_523.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_523.c rename to parser/static/small_parse_table/small_parse_table_523.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_524.c b/parser/static/small_parse_table/small_parse_table_524.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_524.c rename to parser/static/small_parse_table/small_parse_table_524.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_525.c b/parser/static/small_parse_table/small_parse_table_525.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_525.c rename to parser/static/small_parse_table/small_parse_table_525.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_526.c b/parser/static/small_parse_table/small_parse_table_526.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_526.c rename to parser/static/small_parse_table/small_parse_table_526.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_527.c b/parser/static/small_parse_table/small_parse_table_527.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_527.c rename to parser/static/small_parse_table/small_parse_table_527.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_528.c b/parser/static/small_parse_table/small_parse_table_528.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_528.c rename to parser/static/small_parse_table/small_parse_table_528.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_529.c b/parser/static/small_parse_table/small_parse_table_529.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_529.c rename to parser/static/small_parse_table/small_parse_table_529.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_53.c b/parser/static/small_parse_table/small_parse_table_53.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_53.c rename to parser/static/small_parse_table/small_parse_table_53.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_530.c b/parser/static/small_parse_table/small_parse_table_530.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_530.c rename to parser/static/small_parse_table/small_parse_table_530.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_531.c b/parser/static/small_parse_table/small_parse_table_531.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_531.c rename to parser/static/small_parse_table/small_parse_table_531.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_532.c b/parser/static/small_parse_table/small_parse_table_532.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_532.c rename to parser/static/small_parse_table/small_parse_table_532.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_533.c b/parser/static/small_parse_table/small_parse_table_533.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_533.c rename to parser/static/small_parse_table/small_parse_table_533.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_534.c b/parser/static/small_parse_table/small_parse_table_534.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_534.c rename to parser/static/small_parse_table/small_parse_table_534.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_535.c b/parser/static/small_parse_table/small_parse_table_535.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_535.c rename to parser/static/small_parse_table/small_parse_table_535.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_536.c b/parser/static/small_parse_table/small_parse_table_536.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_536.c rename to parser/static/small_parse_table/small_parse_table_536.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_537.c b/parser/static/small_parse_table/small_parse_table_537.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_537.c rename to parser/static/small_parse_table/small_parse_table_537.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_538.c b/parser/static/small_parse_table/small_parse_table_538.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_538.c rename to parser/static/small_parse_table/small_parse_table_538.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_539.c b/parser/static/small_parse_table/small_parse_table_539.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_539.c rename to parser/static/small_parse_table/small_parse_table_539.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_54.c b/parser/static/small_parse_table/small_parse_table_54.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_54.c rename to parser/static/small_parse_table/small_parse_table_54.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_540.c b/parser/static/small_parse_table/small_parse_table_540.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_540.c rename to parser/static/small_parse_table/small_parse_table_540.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_541.c b/parser/static/small_parse_table/small_parse_table_541.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_541.c rename to parser/static/small_parse_table/small_parse_table_541.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_542.c b/parser/static/small_parse_table/small_parse_table_542.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_542.c rename to parser/static/small_parse_table/small_parse_table_542.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_543.c b/parser/static/small_parse_table/small_parse_table_543.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_543.c rename to parser/static/small_parse_table/small_parse_table_543.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_544.c b/parser/static/small_parse_table/small_parse_table_544.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_544.c rename to parser/static/small_parse_table/small_parse_table_544.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_545.c b/parser/static/small_parse_table/small_parse_table_545.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_545.c rename to parser/static/small_parse_table/small_parse_table_545.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_546.c b/parser/static/small_parse_table/small_parse_table_546.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_546.c rename to parser/static/small_parse_table/small_parse_table_546.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_547.c b/parser/static/small_parse_table/small_parse_table_547.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_547.c rename to parser/static/small_parse_table/small_parse_table_547.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_548.c b/parser/static/small_parse_table/small_parse_table_548.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_548.c rename to parser/static/small_parse_table/small_parse_table_548.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_549.c b/parser/static/small_parse_table/small_parse_table_549.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_549.c rename to parser/static/small_parse_table/small_parse_table_549.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_55.c b/parser/static/small_parse_table/small_parse_table_55.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_55.c rename to parser/static/small_parse_table/small_parse_table_55.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_550.c b/parser/static/small_parse_table/small_parse_table_550.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_550.c rename to parser/static/small_parse_table/small_parse_table_550.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_551.c b/parser/static/small_parse_table/small_parse_table_551.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_551.c rename to parser/static/small_parse_table/small_parse_table_551.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_552.c b/parser/static/small_parse_table/small_parse_table_552.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_552.c rename to parser/static/small_parse_table/small_parse_table_552.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_553.c b/parser/static/small_parse_table/small_parse_table_553.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_553.c rename to parser/static/small_parse_table/small_parse_table_553.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_554.c b/parser/static/small_parse_table/small_parse_table_554.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_554.c rename to parser/static/small_parse_table/small_parse_table_554.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_555.c b/parser/static/small_parse_table/small_parse_table_555.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_555.c rename to parser/static/small_parse_table/small_parse_table_555.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_556.c b/parser/static/small_parse_table/small_parse_table_556.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_556.c rename to parser/static/small_parse_table/small_parse_table_556.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_557.c b/parser/static/small_parse_table/small_parse_table_557.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_557.c rename to parser/static/small_parse_table/small_parse_table_557.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_558.c b/parser/static/small_parse_table/small_parse_table_558.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_558.c rename to parser/static/small_parse_table/small_parse_table_558.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_559.c b/parser/static/small_parse_table/small_parse_table_559.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_559.c rename to parser/static/small_parse_table/small_parse_table_559.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_56.c b/parser/static/small_parse_table/small_parse_table_56.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_56.c rename to parser/static/small_parse_table/small_parse_table_56.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_560.c b/parser/static/small_parse_table/small_parse_table_560.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_560.c rename to parser/static/small_parse_table/small_parse_table_560.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_561.c b/parser/static/small_parse_table/small_parse_table_561.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_561.c rename to parser/static/small_parse_table/small_parse_table_561.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_562.c b/parser/static/small_parse_table/small_parse_table_562.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_562.c rename to parser/static/small_parse_table/small_parse_table_562.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_563.c b/parser/static/small_parse_table/small_parse_table_563.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_563.c rename to parser/static/small_parse_table/small_parse_table_563.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_564.c b/parser/static/small_parse_table/small_parse_table_564.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_564.c rename to parser/static/small_parse_table/small_parse_table_564.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_565.c b/parser/static/small_parse_table/small_parse_table_565.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_565.c rename to parser/static/small_parse_table/small_parse_table_565.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_566.c b/parser/static/small_parse_table/small_parse_table_566.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_566.c rename to parser/static/small_parse_table/small_parse_table_566.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_567.c b/parser/static/small_parse_table/small_parse_table_567.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_567.c rename to parser/static/small_parse_table/small_parse_table_567.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_568.c b/parser/static/small_parse_table/small_parse_table_568.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_568.c rename to parser/static/small_parse_table/small_parse_table_568.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_569.c b/parser/static/small_parse_table/small_parse_table_569.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_569.c rename to parser/static/small_parse_table/small_parse_table_569.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_57.c b/parser/static/small_parse_table/small_parse_table_57.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_57.c rename to parser/static/small_parse_table/small_parse_table_57.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_570.c b/parser/static/small_parse_table/small_parse_table_570.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_570.c rename to parser/static/small_parse_table/small_parse_table_570.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_571.c b/parser/static/small_parse_table/small_parse_table_571.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_571.c rename to parser/static/small_parse_table/small_parse_table_571.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_572.c b/parser/static/small_parse_table/small_parse_table_572.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_572.c rename to parser/static/small_parse_table/small_parse_table_572.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_573.c b/parser/static/small_parse_table/small_parse_table_573.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_573.c rename to parser/static/small_parse_table/small_parse_table_573.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_574.c b/parser/static/small_parse_table/small_parse_table_574.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_574.c rename to parser/static/small_parse_table/small_parse_table_574.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_575.c b/parser/static/small_parse_table/small_parse_table_575.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_575.c rename to parser/static/small_parse_table/small_parse_table_575.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_576.c b/parser/static/small_parse_table/small_parse_table_576.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_576.c rename to parser/static/small_parse_table/small_parse_table_576.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_577.c b/parser/static/small_parse_table/small_parse_table_577.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_577.c rename to parser/static/small_parse_table/small_parse_table_577.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_578.c b/parser/static/small_parse_table/small_parse_table_578.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_578.c rename to parser/static/small_parse_table/small_parse_table_578.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_579.c b/parser/static/small_parse_table/small_parse_table_579.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_579.c rename to parser/static/small_parse_table/small_parse_table_579.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_58.c b/parser/static/small_parse_table/small_parse_table_58.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_58.c rename to parser/static/small_parse_table/small_parse_table_58.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_580.c b/parser/static/small_parse_table/small_parse_table_580.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_580.c rename to parser/static/small_parse_table/small_parse_table_580.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_581.c b/parser/static/small_parse_table/small_parse_table_581.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_581.c rename to parser/static/small_parse_table/small_parse_table_581.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_582.c b/parser/static/small_parse_table/small_parse_table_582.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_582.c rename to parser/static/small_parse_table/small_parse_table_582.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_583.c b/parser/static/small_parse_table/small_parse_table_583.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_583.c rename to parser/static/small_parse_table/small_parse_table_583.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_584.c b/parser/static/small_parse_table/small_parse_table_584.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_584.c rename to parser/static/small_parse_table/small_parse_table_584.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_585.c b/parser/static/small_parse_table/small_parse_table_585.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_585.c rename to parser/static/small_parse_table/small_parse_table_585.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_586.c b/parser/static/small_parse_table/small_parse_table_586.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_586.c rename to parser/static/small_parse_table/small_parse_table_586.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_587.c b/parser/static/small_parse_table/small_parse_table_587.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_587.c rename to parser/static/small_parse_table/small_parse_table_587.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_588.c b/parser/static/small_parse_table/small_parse_table_588.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_588.c rename to parser/static/small_parse_table/small_parse_table_588.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_589.c b/parser/static/small_parse_table/small_parse_table_589.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_589.c rename to parser/static/small_parse_table/small_parse_table_589.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_59.c b/parser/static/small_parse_table/small_parse_table_59.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_59.c rename to parser/static/small_parse_table/small_parse_table_59.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_590.c b/parser/static/small_parse_table/small_parse_table_590.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_590.c rename to parser/static/small_parse_table/small_parse_table_590.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_591.c b/parser/static/small_parse_table/small_parse_table_591.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_591.c rename to parser/static/small_parse_table/small_parse_table_591.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_592.c b/parser/static/small_parse_table/small_parse_table_592.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_592.c rename to parser/static/small_parse_table/small_parse_table_592.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_593.c b/parser/static/small_parse_table/small_parse_table_593.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_593.c rename to parser/static/small_parse_table/small_parse_table_593.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_594.c b/parser/static/small_parse_table/small_parse_table_594.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_594.c rename to parser/static/small_parse_table/small_parse_table_594.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_595.c b/parser/static/small_parse_table/small_parse_table_595.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_595.c rename to parser/static/small_parse_table/small_parse_table_595.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_596.c b/parser/static/small_parse_table/small_parse_table_596.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_596.c rename to parser/static/small_parse_table/small_parse_table_596.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_597.c b/parser/static/small_parse_table/small_parse_table_597.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_597.c rename to parser/static/small_parse_table/small_parse_table_597.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_598.c b/parser/static/small_parse_table/small_parse_table_598.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_598.c rename to parser/static/small_parse_table/small_parse_table_598.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_599.c b/parser/static/small_parse_table/small_parse_table_599.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_599.c rename to parser/static/small_parse_table/small_parse_table_599.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_6.c b/parser/static/small_parse_table/small_parse_table_6.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_6.c rename to parser/static/small_parse_table/small_parse_table_6.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_60.c b/parser/static/small_parse_table/small_parse_table_60.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_60.c rename to parser/static/small_parse_table/small_parse_table_60.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_600.c b/parser/static/small_parse_table/small_parse_table_600.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_600.c rename to parser/static/small_parse_table/small_parse_table_600.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_601.c b/parser/static/small_parse_table/small_parse_table_601.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_601.c rename to parser/static/small_parse_table/small_parse_table_601.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_602.c b/parser/static/small_parse_table/small_parse_table_602.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_602.c rename to parser/static/small_parse_table/small_parse_table_602.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_603.c b/parser/static/small_parse_table/small_parse_table_603.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_603.c rename to parser/static/small_parse_table/small_parse_table_603.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_604.c b/parser/static/small_parse_table/small_parse_table_604.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_604.c rename to parser/static/small_parse_table/small_parse_table_604.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_605.c b/parser/static/small_parse_table/small_parse_table_605.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_605.c rename to parser/static/small_parse_table/small_parse_table_605.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_606.c b/parser/static/small_parse_table/small_parse_table_606.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_606.c rename to parser/static/small_parse_table/small_parse_table_606.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_607.c b/parser/static/small_parse_table/small_parse_table_607.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_607.c rename to parser/static/small_parse_table/small_parse_table_607.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_608.c b/parser/static/small_parse_table/small_parse_table_608.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_608.c rename to parser/static/small_parse_table/small_parse_table_608.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_609.c b/parser/static/small_parse_table/small_parse_table_609.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_609.c rename to parser/static/small_parse_table/small_parse_table_609.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_61.c b/parser/static/small_parse_table/small_parse_table_61.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_61.c rename to parser/static/small_parse_table/small_parse_table_61.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_610.c b/parser/static/small_parse_table/small_parse_table_610.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_610.c rename to parser/static/small_parse_table/small_parse_table_610.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_611.c b/parser/static/small_parse_table/small_parse_table_611.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_611.c rename to parser/static/small_parse_table/small_parse_table_611.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_612.c b/parser/static/small_parse_table/small_parse_table_612.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_612.c rename to parser/static/small_parse_table/small_parse_table_612.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_613.c b/parser/static/small_parse_table/small_parse_table_613.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_613.c rename to parser/static/small_parse_table/small_parse_table_613.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_614.c b/parser/static/small_parse_table/small_parse_table_614.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_614.c rename to parser/static/small_parse_table/small_parse_table_614.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_615.c b/parser/static/small_parse_table/small_parse_table_615.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_615.c rename to parser/static/small_parse_table/small_parse_table_615.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_616.c b/parser/static/small_parse_table/small_parse_table_616.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_616.c rename to parser/static/small_parse_table/small_parse_table_616.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_617.c b/parser/static/small_parse_table/small_parse_table_617.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_617.c rename to parser/static/small_parse_table/small_parse_table_617.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_618.c b/parser/static/small_parse_table/small_parse_table_618.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_618.c rename to parser/static/small_parse_table/small_parse_table_618.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_619.c b/parser/static/small_parse_table/small_parse_table_619.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_619.c rename to parser/static/small_parse_table/small_parse_table_619.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_62.c b/parser/static/small_parse_table/small_parse_table_62.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_62.c rename to parser/static/small_parse_table/small_parse_table_62.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_620.c b/parser/static/small_parse_table/small_parse_table_620.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_620.c rename to parser/static/small_parse_table/small_parse_table_620.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_621.c b/parser/static/small_parse_table/small_parse_table_621.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_621.c rename to parser/static/small_parse_table/small_parse_table_621.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_622.c b/parser/static/small_parse_table/small_parse_table_622.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_622.c rename to parser/static/small_parse_table/small_parse_table_622.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_623.c b/parser/static/small_parse_table/small_parse_table_623.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_623.c rename to parser/static/small_parse_table/small_parse_table_623.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_624.c b/parser/static/small_parse_table/small_parse_table_624.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_624.c rename to parser/static/small_parse_table/small_parse_table_624.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_625.c b/parser/static/small_parse_table/small_parse_table_625.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_625.c rename to parser/static/small_parse_table/small_parse_table_625.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_626.c b/parser/static/small_parse_table/small_parse_table_626.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_626.c rename to parser/static/small_parse_table/small_parse_table_626.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_627.c b/parser/static/small_parse_table/small_parse_table_627.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_627.c rename to parser/static/small_parse_table/small_parse_table_627.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_628.c b/parser/static/small_parse_table/small_parse_table_628.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_628.c rename to parser/static/small_parse_table/small_parse_table_628.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_629.c b/parser/static/small_parse_table/small_parse_table_629.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_629.c rename to parser/static/small_parse_table/small_parse_table_629.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_63.c b/parser/static/small_parse_table/small_parse_table_63.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_63.c rename to parser/static/small_parse_table/small_parse_table_63.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_630.c b/parser/static/small_parse_table/small_parse_table_630.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_630.c rename to parser/static/small_parse_table/small_parse_table_630.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_631.c b/parser/static/small_parse_table/small_parse_table_631.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_631.c rename to parser/static/small_parse_table/small_parse_table_631.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_632.c b/parser/static/small_parse_table/small_parse_table_632.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_632.c rename to parser/static/small_parse_table/small_parse_table_632.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_633.c b/parser/static/small_parse_table/small_parse_table_633.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_633.c rename to parser/static/small_parse_table/small_parse_table_633.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_634.c b/parser/static/small_parse_table/small_parse_table_634.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_634.c rename to parser/static/small_parse_table/small_parse_table_634.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_635.c b/parser/static/small_parse_table/small_parse_table_635.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_635.c rename to parser/static/small_parse_table/small_parse_table_635.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_636.c b/parser/static/small_parse_table/small_parse_table_636.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_636.c rename to parser/static/small_parse_table/small_parse_table_636.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_637.c b/parser/static/small_parse_table/small_parse_table_637.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_637.c rename to parser/static/small_parse_table/small_parse_table_637.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_638.c b/parser/static/small_parse_table/small_parse_table_638.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_638.c rename to parser/static/small_parse_table/small_parse_table_638.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_639.c b/parser/static/small_parse_table/small_parse_table_639.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_639.c rename to parser/static/small_parse_table/small_parse_table_639.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_64.c b/parser/static/small_parse_table/small_parse_table_64.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_64.c rename to parser/static/small_parse_table/small_parse_table_64.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_640.c b/parser/static/small_parse_table/small_parse_table_640.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_640.c rename to parser/static/small_parse_table/small_parse_table_640.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_641.c b/parser/static/small_parse_table/small_parse_table_641.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_641.c rename to parser/static/small_parse_table/small_parse_table_641.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_642.c b/parser/static/small_parse_table/small_parse_table_642.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_642.c rename to parser/static/small_parse_table/small_parse_table_642.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_643.c b/parser/static/small_parse_table/small_parse_table_643.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_643.c rename to parser/static/small_parse_table/small_parse_table_643.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_644.c b/parser/static/small_parse_table/small_parse_table_644.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_644.c rename to parser/static/small_parse_table/small_parse_table_644.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_645.c b/parser/static/small_parse_table/small_parse_table_645.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_645.c rename to parser/static/small_parse_table/small_parse_table_645.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_646.c b/parser/static/small_parse_table/small_parse_table_646.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_646.c rename to parser/static/small_parse_table/small_parse_table_646.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_647.c b/parser/static/small_parse_table/small_parse_table_647.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_647.c rename to parser/static/small_parse_table/small_parse_table_647.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_648.c b/parser/static/small_parse_table/small_parse_table_648.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_648.c rename to parser/static/small_parse_table/small_parse_table_648.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_649.c b/parser/static/small_parse_table/small_parse_table_649.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_649.c rename to parser/static/small_parse_table/small_parse_table_649.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_65.c b/parser/static/small_parse_table/small_parse_table_65.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_65.c rename to parser/static/small_parse_table/small_parse_table_65.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_650.c b/parser/static/small_parse_table/small_parse_table_650.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_650.c rename to parser/static/small_parse_table/small_parse_table_650.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_651.c b/parser/static/small_parse_table/small_parse_table_651.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_651.c rename to parser/static/small_parse_table/small_parse_table_651.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_652.c b/parser/static/small_parse_table/small_parse_table_652.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_652.c rename to parser/static/small_parse_table/small_parse_table_652.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_653.c b/parser/static/small_parse_table/small_parse_table_653.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_653.c rename to parser/static/small_parse_table/small_parse_table_653.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_654.c b/parser/static/small_parse_table/small_parse_table_654.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_654.c rename to parser/static/small_parse_table/small_parse_table_654.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_655.c b/parser/static/small_parse_table/small_parse_table_655.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_655.c rename to parser/static/small_parse_table/small_parse_table_655.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_656.c b/parser/static/small_parse_table/small_parse_table_656.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_656.c rename to parser/static/small_parse_table/small_parse_table_656.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_657.c b/parser/static/small_parse_table/small_parse_table_657.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_657.c rename to parser/static/small_parse_table/small_parse_table_657.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_658.c b/parser/static/small_parse_table/small_parse_table_658.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_658.c rename to parser/static/small_parse_table/small_parse_table_658.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_659.c b/parser/static/small_parse_table/small_parse_table_659.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_659.c rename to parser/static/small_parse_table/small_parse_table_659.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_66.c b/parser/static/small_parse_table/small_parse_table_66.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_66.c rename to parser/static/small_parse_table/small_parse_table_66.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_660.c b/parser/static/small_parse_table/small_parse_table_660.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_660.c rename to parser/static/small_parse_table/small_parse_table_660.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_661.c b/parser/static/small_parse_table/small_parse_table_661.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_661.c rename to parser/static/small_parse_table/small_parse_table_661.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_662.c b/parser/static/small_parse_table/small_parse_table_662.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_662.c rename to parser/static/small_parse_table/small_parse_table_662.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_663.c b/parser/static/small_parse_table/small_parse_table_663.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_663.c rename to parser/static/small_parse_table/small_parse_table_663.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_664.c b/parser/static/small_parse_table/small_parse_table_664.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_664.c rename to parser/static/small_parse_table/small_parse_table_664.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_665.c b/parser/static/small_parse_table/small_parse_table_665.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_665.c rename to parser/static/small_parse_table/small_parse_table_665.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_666.c b/parser/static/small_parse_table/small_parse_table_666.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_666.c rename to parser/static/small_parse_table/small_parse_table_666.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_667.c b/parser/static/small_parse_table/small_parse_table_667.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_667.c rename to parser/static/small_parse_table/small_parse_table_667.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_668.c b/parser/static/small_parse_table/small_parse_table_668.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_668.c rename to parser/static/small_parse_table/small_parse_table_668.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_669.c b/parser/static/small_parse_table/small_parse_table_669.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_669.c rename to parser/static/small_parse_table/small_parse_table_669.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_67.c b/parser/static/small_parse_table/small_parse_table_67.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_67.c rename to parser/static/small_parse_table/small_parse_table_67.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_670.c b/parser/static/small_parse_table/small_parse_table_670.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_670.c rename to parser/static/small_parse_table/small_parse_table_670.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_671.c b/parser/static/small_parse_table/small_parse_table_671.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_671.c rename to parser/static/small_parse_table/small_parse_table_671.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_672.c b/parser/static/small_parse_table/small_parse_table_672.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_672.c rename to parser/static/small_parse_table/small_parse_table_672.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_673.c b/parser/static/small_parse_table/small_parse_table_673.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_673.c rename to parser/static/small_parse_table/small_parse_table_673.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_674.c b/parser/static/small_parse_table/small_parse_table_674.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_674.c rename to parser/static/small_parse_table/small_parse_table_674.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_675.c b/parser/static/small_parse_table/small_parse_table_675.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_675.c rename to parser/static/small_parse_table/small_parse_table_675.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_676.c b/parser/static/small_parse_table/small_parse_table_676.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_676.c rename to parser/static/small_parse_table/small_parse_table_676.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_677.c b/parser/static/small_parse_table/small_parse_table_677.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_677.c rename to parser/static/small_parse_table/small_parse_table_677.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_678.c b/parser/static/small_parse_table/small_parse_table_678.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_678.c rename to parser/static/small_parse_table/small_parse_table_678.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_679.c b/parser/static/small_parse_table/small_parse_table_679.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_679.c rename to parser/static/small_parse_table/small_parse_table_679.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_68.c b/parser/static/small_parse_table/small_parse_table_68.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_68.c rename to parser/static/small_parse_table/small_parse_table_68.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_680.c b/parser/static/small_parse_table/small_parse_table_680.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_680.c rename to parser/static/small_parse_table/small_parse_table_680.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_681.c b/parser/static/small_parse_table/small_parse_table_681.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_681.c rename to parser/static/small_parse_table/small_parse_table_681.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_682.c b/parser/static/small_parse_table/small_parse_table_682.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_682.c rename to parser/static/small_parse_table/small_parse_table_682.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_683.c b/parser/static/small_parse_table/small_parse_table_683.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_683.c rename to parser/static/small_parse_table/small_parse_table_683.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_684.c b/parser/static/small_parse_table/small_parse_table_684.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_684.c rename to parser/static/small_parse_table/small_parse_table_684.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_685.c b/parser/static/small_parse_table/small_parse_table_685.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_685.c rename to parser/static/small_parse_table/small_parse_table_685.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_686.c b/parser/static/small_parse_table/small_parse_table_686.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_686.c rename to parser/static/small_parse_table/small_parse_table_686.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_687.c b/parser/static/small_parse_table/small_parse_table_687.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_687.c rename to parser/static/small_parse_table/small_parse_table_687.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_688.c b/parser/static/small_parse_table/small_parse_table_688.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_688.c rename to parser/static/small_parse_table/small_parse_table_688.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_689.c b/parser/static/small_parse_table/small_parse_table_689.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_689.c rename to parser/static/small_parse_table/small_parse_table_689.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_69.c b/parser/static/small_parse_table/small_parse_table_69.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_69.c rename to parser/static/small_parse_table/small_parse_table_69.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_690.c b/parser/static/small_parse_table/small_parse_table_690.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_690.c rename to parser/static/small_parse_table/small_parse_table_690.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_691.c b/parser/static/small_parse_table/small_parse_table_691.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_691.c rename to parser/static/small_parse_table/small_parse_table_691.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_692.c b/parser/static/small_parse_table/small_parse_table_692.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_692.c rename to parser/static/small_parse_table/small_parse_table_692.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_693.c b/parser/static/small_parse_table/small_parse_table_693.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_693.c rename to parser/static/small_parse_table/small_parse_table_693.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_694.c b/parser/static/small_parse_table/small_parse_table_694.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_694.c rename to parser/static/small_parse_table/small_parse_table_694.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_695.c b/parser/static/small_parse_table/small_parse_table_695.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_695.c rename to parser/static/small_parse_table/small_parse_table_695.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_696.c b/parser/static/small_parse_table/small_parse_table_696.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_696.c rename to parser/static/small_parse_table/small_parse_table_696.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_697.c b/parser/static/small_parse_table/small_parse_table_697.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_697.c rename to parser/static/small_parse_table/small_parse_table_697.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_698.c b/parser/static/small_parse_table/small_parse_table_698.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_698.c rename to parser/static/small_parse_table/small_parse_table_698.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_699.c b/parser/static/small_parse_table/small_parse_table_699.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_699.c rename to parser/static/small_parse_table/small_parse_table_699.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_7.c b/parser/static/small_parse_table/small_parse_table_7.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_7.c rename to parser/static/small_parse_table/small_parse_table_7.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_70.c b/parser/static/small_parse_table/small_parse_table_70.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_70.c rename to parser/static/small_parse_table/small_parse_table_70.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_700.c b/parser/static/small_parse_table/small_parse_table_700.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_700.c rename to parser/static/small_parse_table/small_parse_table_700.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_701.c b/parser/static/small_parse_table/small_parse_table_701.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_701.c rename to parser/static/small_parse_table/small_parse_table_701.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_702.c b/parser/static/small_parse_table/small_parse_table_702.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_702.c rename to parser/static/small_parse_table/small_parse_table_702.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_703.c b/parser/static/small_parse_table/small_parse_table_703.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_703.c rename to parser/static/small_parse_table/small_parse_table_703.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_704.c b/parser/static/small_parse_table/small_parse_table_704.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_704.c rename to parser/static/small_parse_table/small_parse_table_704.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_705.c b/parser/static/small_parse_table/small_parse_table_705.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_705.c rename to parser/static/small_parse_table/small_parse_table_705.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_706.c b/parser/static/small_parse_table/small_parse_table_706.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_706.c rename to parser/static/small_parse_table/small_parse_table_706.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_707.c b/parser/static/small_parse_table/small_parse_table_707.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_707.c rename to parser/static/small_parse_table/small_parse_table_707.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_708.c b/parser/static/small_parse_table/small_parse_table_708.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_708.c rename to parser/static/small_parse_table/small_parse_table_708.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_709.c b/parser/static/small_parse_table/small_parse_table_709.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_709.c rename to parser/static/small_parse_table/small_parse_table_709.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_71.c b/parser/static/small_parse_table/small_parse_table_71.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_71.c rename to parser/static/small_parse_table/small_parse_table_71.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_710.c b/parser/static/small_parse_table/small_parse_table_710.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_710.c rename to parser/static/small_parse_table/small_parse_table_710.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_711.c b/parser/static/small_parse_table/small_parse_table_711.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_711.c rename to parser/static/small_parse_table/small_parse_table_711.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_712.c b/parser/static/small_parse_table/small_parse_table_712.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_712.c rename to parser/static/small_parse_table/small_parse_table_712.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_713.c b/parser/static/small_parse_table/small_parse_table_713.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_713.c rename to parser/static/small_parse_table/small_parse_table_713.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_714.c b/parser/static/small_parse_table/small_parse_table_714.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_714.c rename to parser/static/small_parse_table/small_parse_table_714.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_715.c b/parser/static/small_parse_table/small_parse_table_715.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_715.c rename to parser/static/small_parse_table/small_parse_table_715.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_716.c b/parser/static/small_parse_table/small_parse_table_716.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_716.c rename to parser/static/small_parse_table/small_parse_table_716.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_717.c b/parser/static/small_parse_table/small_parse_table_717.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_717.c rename to parser/static/small_parse_table/small_parse_table_717.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_718.c b/parser/static/small_parse_table/small_parse_table_718.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_718.c rename to parser/static/small_parse_table/small_parse_table_718.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_719.c b/parser/static/small_parse_table/small_parse_table_719.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_719.c rename to parser/static/small_parse_table/small_parse_table_719.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_72.c b/parser/static/small_parse_table/small_parse_table_72.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_72.c rename to parser/static/small_parse_table/small_parse_table_72.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_720.c b/parser/static/small_parse_table/small_parse_table_720.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_720.c rename to parser/static/small_parse_table/small_parse_table_720.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_721.c b/parser/static/small_parse_table/small_parse_table_721.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_721.c rename to parser/static/small_parse_table/small_parse_table_721.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_722.c b/parser/static/small_parse_table/small_parse_table_722.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_722.c rename to parser/static/small_parse_table/small_parse_table_722.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_723.c b/parser/static/small_parse_table/small_parse_table_723.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_723.c rename to parser/static/small_parse_table/small_parse_table_723.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_724.c b/parser/static/small_parse_table/small_parse_table_724.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_724.c rename to parser/static/small_parse_table/small_parse_table_724.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_725.c b/parser/static/small_parse_table/small_parse_table_725.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_725.c rename to parser/static/small_parse_table/small_parse_table_725.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_726.c b/parser/static/small_parse_table/small_parse_table_726.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_726.c rename to parser/static/small_parse_table/small_parse_table_726.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_727.c b/parser/static/small_parse_table/small_parse_table_727.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_727.c rename to parser/static/small_parse_table/small_parse_table_727.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_728.c b/parser/static/small_parse_table/small_parse_table_728.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_728.c rename to parser/static/small_parse_table/small_parse_table_728.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_729.c b/parser/static/small_parse_table/small_parse_table_729.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_729.c rename to parser/static/small_parse_table/small_parse_table_729.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_73.c b/parser/static/small_parse_table/small_parse_table_73.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_73.c rename to parser/static/small_parse_table/small_parse_table_73.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_730.c b/parser/static/small_parse_table/small_parse_table_730.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_730.c rename to parser/static/small_parse_table/small_parse_table_730.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_731.c b/parser/static/small_parse_table/small_parse_table_731.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_731.c rename to parser/static/small_parse_table/small_parse_table_731.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_732.c b/parser/static/small_parse_table/small_parse_table_732.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_732.c rename to parser/static/small_parse_table/small_parse_table_732.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_733.c b/parser/static/small_parse_table/small_parse_table_733.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_733.c rename to parser/static/small_parse_table/small_parse_table_733.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_734.c b/parser/static/small_parse_table/small_parse_table_734.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_734.c rename to parser/static/small_parse_table/small_parse_table_734.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_735.c b/parser/static/small_parse_table/small_parse_table_735.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_735.c rename to parser/static/small_parse_table/small_parse_table_735.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_736.c b/parser/static/small_parse_table/small_parse_table_736.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_736.c rename to parser/static/small_parse_table/small_parse_table_736.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_737.c b/parser/static/small_parse_table/small_parse_table_737.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_737.c rename to parser/static/small_parse_table/small_parse_table_737.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_738.c b/parser/static/small_parse_table/small_parse_table_738.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_738.c rename to parser/static/small_parse_table/small_parse_table_738.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_739.c b/parser/static/small_parse_table/small_parse_table_739.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_739.c rename to parser/static/small_parse_table/small_parse_table_739.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_74.c b/parser/static/small_parse_table/small_parse_table_74.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_74.c rename to parser/static/small_parse_table/small_parse_table_74.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_740.c b/parser/static/small_parse_table/small_parse_table_740.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_740.c rename to parser/static/small_parse_table/small_parse_table_740.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_741.c b/parser/static/small_parse_table/small_parse_table_741.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_741.c rename to parser/static/small_parse_table/small_parse_table_741.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_742.c b/parser/static/small_parse_table/small_parse_table_742.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_742.c rename to parser/static/small_parse_table/small_parse_table_742.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_743.c b/parser/static/small_parse_table/small_parse_table_743.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_743.c rename to parser/static/small_parse_table/small_parse_table_743.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_744.c b/parser/static/small_parse_table/small_parse_table_744.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_744.c rename to parser/static/small_parse_table/small_parse_table_744.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_745.c b/parser/static/small_parse_table/small_parse_table_745.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_745.c rename to parser/static/small_parse_table/small_parse_table_745.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_746.c b/parser/static/small_parse_table/small_parse_table_746.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_746.c rename to parser/static/small_parse_table/small_parse_table_746.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_747.c b/parser/static/small_parse_table/small_parse_table_747.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_747.c rename to parser/static/small_parse_table/small_parse_table_747.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_748.c b/parser/static/small_parse_table/small_parse_table_748.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_748.c rename to parser/static/small_parse_table/small_parse_table_748.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_749.c b/parser/static/small_parse_table/small_parse_table_749.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_749.c rename to parser/static/small_parse_table/small_parse_table_749.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_75.c b/parser/static/small_parse_table/small_parse_table_75.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_75.c rename to parser/static/small_parse_table/small_parse_table_75.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_750.c b/parser/static/small_parse_table/small_parse_table_750.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_750.c rename to parser/static/small_parse_table/small_parse_table_750.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_751.c b/parser/static/small_parse_table/small_parse_table_751.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_751.c rename to parser/static/small_parse_table/small_parse_table_751.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_752.c b/parser/static/small_parse_table/small_parse_table_752.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_752.c rename to parser/static/small_parse_table/small_parse_table_752.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_753.c b/parser/static/small_parse_table/small_parse_table_753.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_753.c rename to parser/static/small_parse_table/small_parse_table_753.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_754.c b/parser/static/small_parse_table/small_parse_table_754.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_754.c rename to parser/static/small_parse_table/small_parse_table_754.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_755.c b/parser/static/small_parse_table/small_parse_table_755.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_755.c rename to parser/static/small_parse_table/small_parse_table_755.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_756.c b/parser/static/small_parse_table/small_parse_table_756.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_756.c rename to parser/static/small_parse_table/small_parse_table_756.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_757.c b/parser/static/small_parse_table/small_parse_table_757.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_757.c rename to parser/static/small_parse_table/small_parse_table_757.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_758.c b/parser/static/small_parse_table/small_parse_table_758.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_758.c rename to parser/static/small_parse_table/small_parse_table_758.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_759.c b/parser/static/small_parse_table/small_parse_table_759.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_759.c rename to parser/static/small_parse_table/small_parse_table_759.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_76.c b/parser/static/small_parse_table/small_parse_table_76.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_76.c rename to parser/static/small_parse_table/small_parse_table_76.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_760.c b/parser/static/small_parse_table/small_parse_table_760.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_760.c rename to parser/static/small_parse_table/small_parse_table_760.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_761.c b/parser/static/small_parse_table/small_parse_table_761.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_761.c rename to parser/static/small_parse_table/small_parse_table_761.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_762.c b/parser/static/small_parse_table/small_parse_table_762.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_762.c rename to parser/static/small_parse_table/small_parse_table_762.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_763.c b/parser/static/small_parse_table/small_parse_table_763.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_763.c rename to parser/static/small_parse_table/small_parse_table_763.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_764.c b/parser/static/small_parse_table/small_parse_table_764.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_764.c rename to parser/static/small_parse_table/small_parse_table_764.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_765.c b/parser/static/small_parse_table/small_parse_table_765.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_765.c rename to parser/static/small_parse_table/small_parse_table_765.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_766.c b/parser/static/small_parse_table/small_parse_table_766.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_766.c rename to parser/static/small_parse_table/small_parse_table_766.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_767.c b/parser/static/small_parse_table/small_parse_table_767.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_767.c rename to parser/static/small_parse_table/small_parse_table_767.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_768.c b/parser/static/small_parse_table/small_parse_table_768.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_768.c rename to parser/static/small_parse_table/small_parse_table_768.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_769.c b/parser/static/small_parse_table/small_parse_table_769.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_769.c rename to parser/static/small_parse_table/small_parse_table_769.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_77.c b/parser/static/small_parse_table/small_parse_table_77.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_77.c rename to parser/static/small_parse_table/small_parse_table_77.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_770.c b/parser/static/small_parse_table/small_parse_table_770.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_770.c rename to parser/static/small_parse_table/small_parse_table_770.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_771.c b/parser/static/small_parse_table/small_parse_table_771.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_771.c rename to parser/static/small_parse_table/small_parse_table_771.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_772.c b/parser/static/small_parse_table/small_parse_table_772.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_772.c rename to parser/static/small_parse_table/small_parse_table_772.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_773.c b/parser/static/small_parse_table/small_parse_table_773.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_773.c rename to parser/static/small_parse_table/small_parse_table_773.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_774.c b/parser/static/small_parse_table/small_parse_table_774.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_774.c rename to parser/static/small_parse_table/small_parse_table_774.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_775.c b/parser/static/small_parse_table/small_parse_table_775.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_775.c rename to parser/static/small_parse_table/small_parse_table_775.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_776.c b/parser/static/small_parse_table/small_parse_table_776.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_776.c rename to parser/static/small_parse_table/small_parse_table_776.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_777.c b/parser/static/small_parse_table/small_parse_table_777.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_777.c rename to parser/static/small_parse_table/small_parse_table_777.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_778.c b/parser/static/small_parse_table/small_parse_table_778.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_778.c rename to parser/static/small_parse_table/small_parse_table_778.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_779.c b/parser/static/small_parse_table/small_parse_table_779.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_779.c rename to parser/static/small_parse_table/small_parse_table_779.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_78.c b/parser/static/small_parse_table/small_parse_table_78.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_78.c rename to parser/static/small_parse_table/small_parse_table_78.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_780.c b/parser/static/small_parse_table/small_parse_table_780.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_780.c rename to parser/static/small_parse_table/small_parse_table_780.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_781.c b/parser/static/small_parse_table/small_parse_table_781.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_781.c rename to parser/static/small_parse_table/small_parse_table_781.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_782.c b/parser/static/small_parse_table/small_parse_table_782.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_782.c rename to parser/static/small_parse_table/small_parse_table_782.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_783.c b/parser/static/small_parse_table/small_parse_table_783.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_783.c rename to parser/static/small_parse_table/small_parse_table_783.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_784.c b/parser/static/small_parse_table/small_parse_table_784.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_784.c rename to parser/static/small_parse_table/small_parse_table_784.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_785.c b/parser/static/small_parse_table/small_parse_table_785.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_785.c rename to parser/static/small_parse_table/small_parse_table_785.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_786.c b/parser/static/small_parse_table/small_parse_table_786.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_786.c rename to parser/static/small_parse_table/small_parse_table_786.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_787.c b/parser/static/small_parse_table/small_parse_table_787.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_787.c rename to parser/static/small_parse_table/small_parse_table_787.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_788.c b/parser/static/small_parse_table/small_parse_table_788.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_788.c rename to parser/static/small_parse_table/small_parse_table_788.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_789.c b/parser/static/small_parse_table/small_parse_table_789.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_789.c rename to parser/static/small_parse_table/small_parse_table_789.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_79.c b/parser/static/small_parse_table/small_parse_table_79.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_79.c rename to parser/static/small_parse_table/small_parse_table_79.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_790.c b/parser/static/small_parse_table/small_parse_table_790.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_790.c rename to parser/static/small_parse_table/small_parse_table_790.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_791.c b/parser/static/small_parse_table/small_parse_table_791.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_791.c rename to parser/static/small_parse_table/small_parse_table_791.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_792.c b/parser/static/small_parse_table/small_parse_table_792.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_792.c rename to parser/static/small_parse_table/small_parse_table_792.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_793.c b/parser/static/small_parse_table/small_parse_table_793.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_793.c rename to parser/static/small_parse_table/small_parse_table_793.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_794.c b/parser/static/small_parse_table/small_parse_table_794.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_794.c rename to parser/static/small_parse_table/small_parse_table_794.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_795.c b/parser/static/small_parse_table/small_parse_table_795.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_795.c rename to parser/static/small_parse_table/small_parse_table_795.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_796.c b/parser/static/small_parse_table/small_parse_table_796.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_796.c rename to parser/static/small_parse_table/small_parse_table_796.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_797.c b/parser/static/small_parse_table/small_parse_table_797.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_797.c rename to parser/static/small_parse_table/small_parse_table_797.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_798.c b/parser/static/small_parse_table/small_parse_table_798.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_798.c rename to parser/static/small_parse_table/small_parse_table_798.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_799.c b/parser/static/small_parse_table/small_parse_table_799.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_799.c rename to parser/static/small_parse_table/small_parse_table_799.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_8.c b/parser/static/small_parse_table/small_parse_table_8.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_8.c rename to parser/static/small_parse_table/small_parse_table_8.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_80.c b/parser/static/small_parse_table/small_parse_table_80.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_80.c rename to parser/static/small_parse_table/small_parse_table_80.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_800.c b/parser/static/small_parse_table/small_parse_table_800.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_800.c rename to parser/static/small_parse_table/small_parse_table_800.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_801.c b/parser/static/small_parse_table/small_parse_table_801.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_801.c rename to parser/static/small_parse_table/small_parse_table_801.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_802.c b/parser/static/small_parse_table/small_parse_table_802.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_802.c rename to parser/static/small_parse_table/small_parse_table_802.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_803.c b/parser/static/small_parse_table/small_parse_table_803.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_803.c rename to parser/static/small_parse_table/small_parse_table_803.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_804.c b/parser/static/small_parse_table/small_parse_table_804.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_804.c rename to parser/static/small_parse_table/small_parse_table_804.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_805.c b/parser/static/small_parse_table/small_parse_table_805.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_805.c rename to parser/static/small_parse_table/small_parse_table_805.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_806.c b/parser/static/small_parse_table/small_parse_table_806.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_806.c rename to parser/static/small_parse_table/small_parse_table_806.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_807.c b/parser/static/small_parse_table/small_parse_table_807.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_807.c rename to parser/static/small_parse_table/small_parse_table_807.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_808.c b/parser/static/small_parse_table/small_parse_table_808.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_808.c rename to parser/static/small_parse_table/small_parse_table_808.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_809.c b/parser/static/small_parse_table/small_parse_table_809.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_809.c rename to parser/static/small_parse_table/small_parse_table_809.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_81.c b/parser/static/small_parse_table/small_parse_table_81.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_81.c rename to parser/static/small_parse_table/small_parse_table_81.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_810.c b/parser/static/small_parse_table/small_parse_table_810.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_810.c rename to parser/static/small_parse_table/small_parse_table_810.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_811.c b/parser/static/small_parse_table/small_parse_table_811.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_811.c rename to parser/static/small_parse_table/small_parse_table_811.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_812.c b/parser/static/small_parse_table/small_parse_table_812.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_812.c rename to parser/static/small_parse_table/small_parse_table_812.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_813.c b/parser/static/small_parse_table/small_parse_table_813.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_813.c rename to parser/static/small_parse_table/small_parse_table_813.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_814.c b/parser/static/small_parse_table/small_parse_table_814.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_814.c rename to parser/static/small_parse_table/small_parse_table_814.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_815.c b/parser/static/small_parse_table/small_parse_table_815.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_815.c rename to parser/static/small_parse_table/small_parse_table_815.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_816.c b/parser/static/small_parse_table/small_parse_table_816.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_816.c rename to parser/static/small_parse_table/small_parse_table_816.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_817.c b/parser/static/small_parse_table/small_parse_table_817.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_817.c rename to parser/static/small_parse_table/small_parse_table_817.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_818.c b/parser/static/small_parse_table/small_parse_table_818.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_818.c rename to parser/static/small_parse_table/small_parse_table_818.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_819.c b/parser/static/small_parse_table/small_parse_table_819.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_819.c rename to parser/static/small_parse_table/small_parse_table_819.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_82.c b/parser/static/small_parse_table/small_parse_table_82.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_82.c rename to parser/static/small_parse_table/small_parse_table_82.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_820.c b/parser/static/small_parse_table/small_parse_table_820.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_820.c rename to parser/static/small_parse_table/small_parse_table_820.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_821.c b/parser/static/small_parse_table/small_parse_table_821.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_821.c rename to parser/static/small_parse_table/small_parse_table_821.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_822.c b/parser/static/small_parse_table/small_parse_table_822.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_822.c rename to parser/static/small_parse_table/small_parse_table_822.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_823.c b/parser/static/small_parse_table/small_parse_table_823.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_823.c rename to parser/static/small_parse_table/small_parse_table_823.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_824.c b/parser/static/small_parse_table/small_parse_table_824.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_824.c rename to parser/static/small_parse_table/small_parse_table_824.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_825.c b/parser/static/small_parse_table/small_parse_table_825.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_825.c rename to parser/static/small_parse_table/small_parse_table_825.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_826.c b/parser/static/small_parse_table/small_parse_table_826.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_826.c rename to parser/static/small_parse_table/small_parse_table_826.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_827.c b/parser/static/small_parse_table/small_parse_table_827.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_827.c rename to parser/static/small_parse_table/small_parse_table_827.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_828.c b/parser/static/small_parse_table/small_parse_table_828.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_828.c rename to parser/static/small_parse_table/small_parse_table_828.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_829.c b/parser/static/small_parse_table/small_parse_table_829.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_829.c rename to parser/static/small_parse_table/small_parse_table_829.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_83.c b/parser/static/small_parse_table/small_parse_table_83.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_83.c rename to parser/static/small_parse_table/small_parse_table_83.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_830.c b/parser/static/small_parse_table/small_parse_table_830.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_830.c rename to parser/static/small_parse_table/small_parse_table_830.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_831.c b/parser/static/small_parse_table/small_parse_table_831.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_831.c rename to parser/static/small_parse_table/small_parse_table_831.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_832.c b/parser/static/small_parse_table/small_parse_table_832.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_832.c rename to parser/static/small_parse_table/small_parse_table_832.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_833.c b/parser/static/small_parse_table/small_parse_table_833.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_833.c rename to parser/static/small_parse_table/small_parse_table_833.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_834.c b/parser/static/small_parse_table/small_parse_table_834.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_834.c rename to parser/static/small_parse_table/small_parse_table_834.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_835.c b/parser/static/small_parse_table/small_parse_table_835.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_835.c rename to parser/static/small_parse_table/small_parse_table_835.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_836.c b/parser/static/small_parse_table/small_parse_table_836.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_836.c rename to parser/static/small_parse_table/small_parse_table_836.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_837.c b/parser/static/small_parse_table/small_parse_table_837.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_837.c rename to parser/static/small_parse_table/small_parse_table_837.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_838.c b/parser/static/small_parse_table/small_parse_table_838.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_838.c rename to parser/static/small_parse_table/small_parse_table_838.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_839.c b/parser/static/small_parse_table/small_parse_table_839.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_839.c rename to parser/static/small_parse_table/small_parse_table_839.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_84.c b/parser/static/small_parse_table/small_parse_table_84.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_84.c rename to parser/static/small_parse_table/small_parse_table_84.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_840.c b/parser/static/small_parse_table/small_parse_table_840.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_840.c rename to parser/static/small_parse_table/small_parse_table_840.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_841.c b/parser/static/small_parse_table/small_parse_table_841.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_841.c rename to parser/static/small_parse_table/small_parse_table_841.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_842.c b/parser/static/small_parse_table/small_parse_table_842.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_842.c rename to parser/static/small_parse_table/small_parse_table_842.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_843.c b/parser/static/small_parse_table/small_parse_table_843.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_843.c rename to parser/static/small_parse_table/small_parse_table_843.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_844.c b/parser/static/small_parse_table/small_parse_table_844.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_844.c rename to parser/static/small_parse_table/small_parse_table_844.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_845.c b/parser/static/small_parse_table/small_parse_table_845.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_845.c rename to parser/static/small_parse_table/small_parse_table_845.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_846.c b/parser/static/small_parse_table/small_parse_table_846.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_846.c rename to parser/static/small_parse_table/small_parse_table_846.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_847.c b/parser/static/small_parse_table/small_parse_table_847.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_847.c rename to parser/static/small_parse_table/small_parse_table_847.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_848.c b/parser/static/small_parse_table/small_parse_table_848.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_848.c rename to parser/static/small_parse_table/small_parse_table_848.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_849.c b/parser/static/small_parse_table/small_parse_table_849.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_849.c rename to parser/static/small_parse_table/small_parse_table_849.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_85.c b/parser/static/small_parse_table/small_parse_table_85.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_85.c rename to parser/static/small_parse_table/small_parse_table_85.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_850.c b/parser/static/small_parse_table/small_parse_table_850.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_850.c rename to parser/static/small_parse_table/small_parse_table_850.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_851.c b/parser/static/small_parse_table/small_parse_table_851.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_851.c rename to parser/static/small_parse_table/small_parse_table_851.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_852.c b/parser/static/small_parse_table/small_parse_table_852.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_852.c rename to parser/static/small_parse_table/small_parse_table_852.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_853.c b/parser/static/small_parse_table/small_parse_table_853.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_853.c rename to parser/static/small_parse_table/small_parse_table_853.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_854.c b/parser/static/small_parse_table/small_parse_table_854.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_854.c rename to parser/static/small_parse_table/small_parse_table_854.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_855.c b/parser/static/small_parse_table/small_parse_table_855.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_855.c rename to parser/static/small_parse_table/small_parse_table_855.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_856.c b/parser/static/small_parse_table/small_parse_table_856.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_856.c rename to parser/static/small_parse_table/small_parse_table_856.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_857.c b/parser/static/small_parse_table/small_parse_table_857.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_857.c rename to parser/static/small_parse_table/small_parse_table_857.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_858.c b/parser/static/small_parse_table/small_parse_table_858.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_858.c rename to parser/static/small_parse_table/small_parse_table_858.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_859.c b/parser/static/small_parse_table/small_parse_table_859.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_859.c rename to parser/static/small_parse_table/small_parse_table_859.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_86.c b/parser/static/small_parse_table/small_parse_table_86.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_86.c rename to parser/static/small_parse_table/small_parse_table_86.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_860.c b/parser/static/small_parse_table/small_parse_table_860.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_860.c rename to parser/static/small_parse_table/small_parse_table_860.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_861.c b/parser/static/small_parse_table/small_parse_table_861.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_861.c rename to parser/static/small_parse_table/small_parse_table_861.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_862.c b/parser/static/small_parse_table/small_parse_table_862.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_862.c rename to parser/static/small_parse_table/small_parse_table_862.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_863.c b/parser/static/small_parse_table/small_parse_table_863.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_863.c rename to parser/static/small_parse_table/small_parse_table_863.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_864.c b/parser/static/small_parse_table/small_parse_table_864.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_864.c rename to parser/static/small_parse_table/small_parse_table_864.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_865.c b/parser/static/small_parse_table/small_parse_table_865.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_865.c rename to parser/static/small_parse_table/small_parse_table_865.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_866.c b/parser/static/small_parse_table/small_parse_table_866.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_866.c rename to parser/static/small_parse_table/small_parse_table_866.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_867.c b/parser/static/small_parse_table/small_parse_table_867.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_867.c rename to parser/static/small_parse_table/small_parse_table_867.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_868.c b/parser/static/small_parse_table/small_parse_table_868.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_868.c rename to parser/static/small_parse_table/small_parse_table_868.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_869.c b/parser/static/small_parse_table/small_parse_table_869.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_869.c rename to parser/static/small_parse_table/small_parse_table_869.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_87.c b/parser/static/small_parse_table/small_parse_table_87.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_87.c rename to parser/static/small_parse_table/small_parse_table_87.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_870.c b/parser/static/small_parse_table/small_parse_table_870.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_870.c rename to parser/static/small_parse_table/small_parse_table_870.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_871.c b/parser/static/small_parse_table/small_parse_table_871.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_871.c rename to parser/static/small_parse_table/small_parse_table_871.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_872.c b/parser/static/small_parse_table/small_parse_table_872.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_872.c rename to parser/static/small_parse_table/small_parse_table_872.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_873.c b/parser/static/small_parse_table/small_parse_table_873.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_873.c rename to parser/static/small_parse_table/small_parse_table_873.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_874.c b/parser/static/small_parse_table/small_parse_table_874.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_874.c rename to parser/static/small_parse_table/small_parse_table_874.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_875.c b/parser/static/small_parse_table/small_parse_table_875.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_875.c rename to parser/static/small_parse_table/small_parse_table_875.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_876.c b/parser/static/small_parse_table/small_parse_table_876.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_876.c rename to parser/static/small_parse_table/small_parse_table_876.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_877.c b/parser/static/small_parse_table/small_parse_table_877.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_877.c rename to parser/static/small_parse_table/small_parse_table_877.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_878.c b/parser/static/small_parse_table/small_parse_table_878.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_878.c rename to parser/static/small_parse_table/small_parse_table_878.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_879.c b/parser/static/small_parse_table/small_parse_table_879.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_879.c rename to parser/static/small_parse_table/small_parse_table_879.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_88.c b/parser/static/small_parse_table/small_parse_table_88.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_88.c rename to parser/static/small_parse_table/small_parse_table_88.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_880.c b/parser/static/small_parse_table/small_parse_table_880.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_880.c rename to parser/static/small_parse_table/small_parse_table_880.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_881.c b/parser/static/small_parse_table/small_parse_table_881.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_881.c rename to parser/static/small_parse_table/small_parse_table_881.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_882.c b/parser/static/small_parse_table/small_parse_table_882.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_882.c rename to parser/static/small_parse_table/small_parse_table_882.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_883.c b/parser/static/small_parse_table/small_parse_table_883.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_883.c rename to parser/static/small_parse_table/small_parse_table_883.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_884.c b/parser/static/small_parse_table/small_parse_table_884.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_884.c rename to parser/static/small_parse_table/small_parse_table_884.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_885.c b/parser/static/small_parse_table/small_parse_table_885.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_885.c rename to parser/static/small_parse_table/small_parse_table_885.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_886.c b/parser/static/small_parse_table/small_parse_table_886.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_886.c rename to parser/static/small_parse_table/small_parse_table_886.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_887.c b/parser/static/small_parse_table/small_parse_table_887.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_887.c rename to parser/static/small_parse_table/small_parse_table_887.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_888.c b/parser/static/small_parse_table/small_parse_table_888.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_888.c rename to parser/static/small_parse_table/small_parse_table_888.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_889.c b/parser/static/small_parse_table/small_parse_table_889.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_889.c rename to parser/static/small_parse_table/small_parse_table_889.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_89.c b/parser/static/small_parse_table/small_parse_table_89.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_89.c rename to parser/static/small_parse_table/small_parse_table_89.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_890.c b/parser/static/small_parse_table/small_parse_table_890.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_890.c rename to parser/static/small_parse_table/small_parse_table_890.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_891.c b/parser/static/small_parse_table/small_parse_table_891.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_891.c rename to parser/static/small_parse_table/small_parse_table_891.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_892.c b/parser/static/small_parse_table/small_parse_table_892.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_892.c rename to parser/static/small_parse_table/small_parse_table_892.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_893.c b/parser/static/small_parse_table/small_parse_table_893.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_893.c rename to parser/static/small_parse_table/small_parse_table_893.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_894.c b/parser/static/small_parse_table/small_parse_table_894.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_894.c rename to parser/static/small_parse_table/small_parse_table_894.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_895.c b/parser/static/small_parse_table/small_parse_table_895.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_895.c rename to parser/static/small_parse_table/small_parse_table_895.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_896.c b/parser/static/small_parse_table/small_parse_table_896.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_896.c rename to parser/static/small_parse_table/small_parse_table_896.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_897.c b/parser/static/small_parse_table/small_parse_table_897.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_897.c rename to parser/static/small_parse_table/small_parse_table_897.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_898.c b/parser/static/small_parse_table/small_parse_table_898.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_898.c rename to parser/static/small_parse_table/small_parse_table_898.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_899.c b/parser/static/small_parse_table/small_parse_table_899.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_899.c rename to parser/static/small_parse_table/small_parse_table_899.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_9.c b/parser/static/small_parse_table/small_parse_table_9.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_9.c rename to parser/static/small_parse_table/small_parse_table_9.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_90.c b/parser/static/small_parse_table/small_parse_table_90.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_90.c rename to parser/static/small_parse_table/small_parse_table_90.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_900.c b/parser/static/small_parse_table/small_parse_table_900.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_900.c rename to parser/static/small_parse_table/small_parse_table_900.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_901.c b/parser/static/small_parse_table/small_parse_table_901.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_901.c rename to parser/static/small_parse_table/small_parse_table_901.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_902.c b/parser/static/small_parse_table/small_parse_table_902.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_902.c rename to parser/static/small_parse_table/small_parse_table_902.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_903.c b/parser/static/small_parse_table/small_parse_table_903.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_903.c rename to parser/static/small_parse_table/small_parse_table_903.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_904.c b/parser/static/small_parse_table/small_parse_table_904.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_904.c rename to parser/static/small_parse_table/small_parse_table_904.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_905.c b/parser/static/small_parse_table/small_parse_table_905.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_905.c rename to parser/static/small_parse_table/small_parse_table_905.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_906.c b/parser/static/small_parse_table/small_parse_table_906.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_906.c rename to parser/static/small_parse_table/small_parse_table_906.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_907.c b/parser/static/small_parse_table/small_parse_table_907.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_907.c rename to parser/static/small_parse_table/small_parse_table_907.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_908.c b/parser/static/small_parse_table/small_parse_table_908.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_908.c rename to parser/static/small_parse_table/small_parse_table_908.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_909.c b/parser/static/small_parse_table/small_parse_table_909.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_909.c rename to parser/static/small_parse_table/small_parse_table_909.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_91.c b/parser/static/small_parse_table/small_parse_table_91.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_91.c rename to parser/static/small_parse_table/small_parse_table_91.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_910.c b/parser/static/small_parse_table/small_parse_table_910.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_910.c rename to parser/static/small_parse_table/small_parse_table_910.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_911.c b/parser/static/small_parse_table/small_parse_table_911.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_911.c rename to parser/static/small_parse_table/small_parse_table_911.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_912.c b/parser/static/small_parse_table/small_parse_table_912.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_912.c rename to parser/static/small_parse_table/small_parse_table_912.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_913.c b/parser/static/small_parse_table/small_parse_table_913.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_913.c rename to parser/static/small_parse_table/small_parse_table_913.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_914.c b/parser/static/small_parse_table/small_parse_table_914.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_914.c rename to parser/static/small_parse_table/small_parse_table_914.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_915.c b/parser/static/small_parse_table/small_parse_table_915.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_915.c rename to parser/static/small_parse_table/small_parse_table_915.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_916.c b/parser/static/small_parse_table/small_parse_table_916.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_916.c rename to parser/static/small_parse_table/small_parse_table_916.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_917.c b/parser/static/small_parse_table/small_parse_table_917.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_917.c rename to parser/static/small_parse_table/small_parse_table_917.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_918.c b/parser/static/small_parse_table/small_parse_table_918.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_918.c rename to parser/static/small_parse_table/small_parse_table_918.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_919.c b/parser/static/small_parse_table/small_parse_table_919.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_919.c rename to parser/static/small_parse_table/small_parse_table_919.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_92.c b/parser/static/small_parse_table/small_parse_table_92.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_92.c rename to parser/static/small_parse_table/small_parse_table_92.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_920.c b/parser/static/small_parse_table/small_parse_table_920.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_920.c rename to parser/static/small_parse_table/small_parse_table_920.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_921.c b/parser/static/small_parse_table/small_parse_table_921.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_921.c rename to parser/static/small_parse_table/small_parse_table_921.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_922.c b/parser/static/small_parse_table/small_parse_table_922.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_922.c rename to parser/static/small_parse_table/small_parse_table_922.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_923.c b/parser/static/small_parse_table/small_parse_table_923.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_923.c rename to parser/static/small_parse_table/small_parse_table_923.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_924.c b/parser/static/small_parse_table/small_parse_table_924.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_924.c rename to parser/static/small_parse_table/small_parse_table_924.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_925.c b/parser/static/small_parse_table/small_parse_table_925.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_925.c rename to parser/static/small_parse_table/small_parse_table_925.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_926.c b/parser/static/small_parse_table/small_parse_table_926.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_926.c rename to parser/static/small_parse_table/small_parse_table_926.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_927.c b/parser/static/small_parse_table/small_parse_table_927.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_927.c rename to parser/static/small_parse_table/small_parse_table_927.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_928.c b/parser/static/small_parse_table/small_parse_table_928.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_928.c rename to parser/static/small_parse_table/small_parse_table_928.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_929.c b/parser/static/small_parse_table/small_parse_table_929.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_929.c rename to parser/static/small_parse_table/small_parse_table_929.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_93.c b/parser/static/small_parse_table/small_parse_table_93.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_93.c rename to parser/static/small_parse_table/small_parse_table_93.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_930.c b/parser/static/small_parse_table/small_parse_table_930.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_930.c rename to parser/static/small_parse_table/small_parse_table_930.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_931.c b/parser/static/small_parse_table/small_parse_table_931.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_931.c rename to parser/static/small_parse_table/small_parse_table_931.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_932.c b/parser/static/small_parse_table/small_parse_table_932.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_932.c rename to parser/static/small_parse_table/small_parse_table_932.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_933.c b/parser/static/small_parse_table/small_parse_table_933.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_933.c rename to parser/static/small_parse_table/small_parse_table_933.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_934.c b/parser/static/small_parse_table/small_parse_table_934.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_934.c rename to parser/static/small_parse_table/small_parse_table_934.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_935.c b/parser/static/small_parse_table/small_parse_table_935.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_935.c rename to parser/static/small_parse_table/small_parse_table_935.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_936.c b/parser/static/small_parse_table/small_parse_table_936.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_936.c rename to parser/static/small_parse_table/small_parse_table_936.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_937.c b/parser/static/small_parse_table/small_parse_table_937.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_937.c rename to parser/static/small_parse_table/small_parse_table_937.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_938.c b/parser/static/small_parse_table/small_parse_table_938.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_938.c rename to parser/static/small_parse_table/small_parse_table_938.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_939.c b/parser/static/small_parse_table/small_parse_table_939.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_939.c rename to parser/static/small_parse_table/small_parse_table_939.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_94.c b/parser/static/small_parse_table/small_parse_table_94.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_94.c rename to parser/static/small_parse_table/small_parse_table_94.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_940.c b/parser/static/small_parse_table/small_parse_table_940.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_940.c rename to parser/static/small_parse_table/small_parse_table_940.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_941.c b/parser/static/small_parse_table/small_parse_table_941.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_941.c rename to parser/static/small_parse_table/small_parse_table_941.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_942.c b/parser/static/small_parse_table/small_parse_table_942.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_942.c rename to parser/static/small_parse_table/small_parse_table_942.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_943.c b/parser/static/small_parse_table/small_parse_table_943.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_943.c rename to parser/static/small_parse_table/small_parse_table_943.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_944.c b/parser/static/small_parse_table/small_parse_table_944.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_944.c rename to parser/static/small_parse_table/small_parse_table_944.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_945.c b/parser/static/small_parse_table/small_parse_table_945.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_945.c rename to parser/static/small_parse_table/small_parse_table_945.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_946.c b/parser/static/small_parse_table/small_parse_table_946.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_946.c rename to parser/static/small_parse_table/small_parse_table_946.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_947.c b/parser/static/small_parse_table/small_parse_table_947.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_947.c rename to parser/static/small_parse_table/small_parse_table_947.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_948.c b/parser/static/small_parse_table/small_parse_table_948.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_948.c rename to parser/static/small_parse_table/small_parse_table_948.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_949.c b/parser/static/small_parse_table/small_parse_table_949.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_949.c rename to parser/static/small_parse_table/small_parse_table_949.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_95.c b/parser/static/small_parse_table/small_parse_table_95.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_95.c rename to parser/static/small_parse_table/small_parse_table_95.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_950.c b/parser/static/small_parse_table/small_parse_table_950.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_950.c rename to parser/static/small_parse_table/small_parse_table_950.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_951.c b/parser/static/small_parse_table/small_parse_table_951.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_951.c rename to parser/static/small_parse_table/small_parse_table_951.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_952.c b/parser/static/small_parse_table/small_parse_table_952.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_952.c rename to parser/static/small_parse_table/small_parse_table_952.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_953.c b/parser/static/small_parse_table/small_parse_table_953.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_953.c rename to parser/static/small_parse_table/small_parse_table_953.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_954.c b/parser/static/small_parse_table/small_parse_table_954.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_954.c rename to parser/static/small_parse_table/small_parse_table_954.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_955.c b/parser/static/small_parse_table/small_parse_table_955.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_955.c rename to parser/static/small_parse_table/small_parse_table_955.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_956.c b/parser/static/small_parse_table/small_parse_table_956.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_956.c rename to parser/static/small_parse_table/small_parse_table_956.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_957.c b/parser/static/small_parse_table/small_parse_table_957.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_957.c rename to parser/static/small_parse_table/small_parse_table_957.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_958.c b/parser/static/small_parse_table/small_parse_table_958.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_958.c rename to parser/static/small_parse_table/small_parse_table_958.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_959.c b/parser/static/small_parse_table/small_parse_table_959.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_959.c rename to parser/static/small_parse_table/small_parse_table_959.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_96.c b/parser/static/small_parse_table/small_parse_table_96.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_96.c rename to parser/static/small_parse_table/small_parse_table_96.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_960.c b/parser/static/small_parse_table/small_parse_table_960.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_960.c rename to parser/static/small_parse_table/small_parse_table_960.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_961.c b/parser/static/small_parse_table/small_parse_table_961.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_961.c rename to parser/static/small_parse_table/small_parse_table_961.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_962.c b/parser/static/small_parse_table/small_parse_table_962.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_962.c rename to parser/static/small_parse_table/small_parse_table_962.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_963.c b/parser/static/small_parse_table/small_parse_table_963.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_963.c rename to parser/static/small_parse_table/small_parse_table_963.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_964.c b/parser/static/small_parse_table/small_parse_table_964.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_964.c rename to parser/static/small_parse_table/small_parse_table_964.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_965.c b/parser/static/small_parse_table/small_parse_table_965.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_965.c rename to parser/static/small_parse_table/small_parse_table_965.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_966.c b/parser/static/small_parse_table/small_parse_table_966.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_966.c rename to parser/static/small_parse_table/small_parse_table_966.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_967.c b/parser/static/small_parse_table/small_parse_table_967.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_967.c rename to parser/static/small_parse_table/small_parse_table_967.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_968.c b/parser/static/small_parse_table/small_parse_table_968.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_968.c rename to parser/static/small_parse_table/small_parse_table_968.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_969.c b/parser/static/small_parse_table/small_parse_table_969.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_969.c rename to parser/static/small_parse_table/small_parse_table_969.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_97.c b/parser/static/small_parse_table/small_parse_table_97.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_97.c rename to parser/static/small_parse_table/small_parse_table_97.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_970.c b/parser/static/small_parse_table/small_parse_table_970.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_970.c rename to parser/static/small_parse_table/small_parse_table_970.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_971.c b/parser/static/small_parse_table/small_parse_table_971.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_971.c rename to parser/static/small_parse_table/small_parse_table_971.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_972.c b/parser/static/small_parse_table/small_parse_table_972.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_972.c rename to parser/static/small_parse_table/small_parse_table_972.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_973.c b/parser/static/small_parse_table/small_parse_table_973.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_973.c rename to parser/static/small_parse_table/small_parse_table_973.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_974.c b/parser/static/small_parse_table/small_parse_table_974.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_974.c rename to parser/static/small_parse_table/small_parse_table_974.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_975.c b/parser/static/small_parse_table/small_parse_table_975.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_975.c rename to parser/static/small_parse_table/small_parse_table_975.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_976.c b/parser/static/small_parse_table/small_parse_table_976.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_976.c rename to parser/static/small_parse_table/small_parse_table_976.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_977.c b/parser/static/small_parse_table/small_parse_table_977.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_977.c rename to parser/static/small_parse_table/small_parse_table_977.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_978.c b/parser/static/small_parse_table/small_parse_table_978.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_978.c rename to parser/static/small_parse_table/small_parse_table_978.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_979.c b/parser/static/small_parse_table/small_parse_table_979.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_979.c rename to parser/static/small_parse_table/small_parse_table_979.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_98.c b/parser/static/small_parse_table/small_parse_table_98.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_98.c rename to parser/static/small_parse_table/small_parse_table_98.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_980.c b/parser/static/small_parse_table/small_parse_table_980.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_980.c rename to parser/static/small_parse_table/small_parse_table_980.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_981.c b/parser/static/small_parse_table/small_parse_table_981.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_981.c rename to parser/static/small_parse_table/small_parse_table_981.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_982.c b/parser/static/small_parse_table/small_parse_table_982.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_982.c rename to parser/static/small_parse_table/small_parse_table_982.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_983.c b/parser/static/small_parse_table/small_parse_table_983.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_983.c rename to parser/static/small_parse_table/small_parse_table_983.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_984.c b/parser/static/small_parse_table/small_parse_table_984.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_984.c rename to parser/static/small_parse_table/small_parse_table_984.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_985.c b/parser/static/small_parse_table/small_parse_table_985.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_985.c rename to parser/static/small_parse_table/small_parse_table_985.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_986.c b/parser/static/small_parse_table/small_parse_table_986.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_986.c rename to parser/static/small_parse_table/small_parse_table_986.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_987.c b/parser/static/small_parse_table/small_parse_table_987.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_987.c rename to parser/static/small_parse_table/small_parse_table_987.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_988.c b/parser/static/small_parse_table/small_parse_table_988.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_988.c rename to parser/static/small_parse_table/small_parse_table_988.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_989.c b/parser/static/small_parse_table/small_parse_table_989.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_989.c rename to parser/static/small_parse_table/small_parse_table_989.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_99.c b/parser/static/small_parse_table/small_parse_table_99.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_99.c rename to parser/static/small_parse_table/small_parse_table_99.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_990.c b/parser/static/small_parse_table/small_parse_table_990.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_990.c rename to parser/static/small_parse_table/small_parse_table_990.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_991.c b/parser/static/small_parse_table/small_parse_table_991.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_991.c rename to parser/static/small_parse_table/small_parse_table_991.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_992.c b/parser/static/small_parse_table/small_parse_table_992.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_992.c rename to parser/static/small_parse_table/small_parse_table_992.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_993.c b/parser/static/small_parse_table/small_parse_table_993.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_993.c rename to parser/static/small_parse_table/small_parse_table_993.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_994.c b/parser/static/small_parse_table/small_parse_table_994.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_994.c rename to parser/static/small_parse_table/small_parse_table_994.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_995.c b/parser/static/small_parse_table/small_parse_table_995.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_995.c rename to parser/static/small_parse_table/small_parse_table_995.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_996.c b/parser/static/small_parse_table/small_parse_table_996.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_996.c rename to parser/static/small_parse_table/small_parse_table_996.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_997.c b/parser/static/small_parse_table/small_parse_table_997.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_997.c rename to parser/static/small_parse_table/small_parse_table_997.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_998.c b/parser/static/small_parse_table/small_parse_table_998.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_998.c rename to parser/static/small_parse_table/small_parse_table_998.c diff --git a/shcat_c/parser/static/small_parse_table/small_parse_table_999.c b/parser/static/small_parse_table/small_parse_table_999.c similarity index 100% rename from shcat_c/parser/static/small_parse_table/small_parse_table_999.c rename to parser/static/small_parse_table/small_parse_table_999.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map.h b/parser/static/small_parse_table_map/small_parse_table_map.h similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map.h rename to parser/static/small_parse_table_map/small_parse_table_map.h diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_0.c b/parser/static/small_parse_table_map/small_parse_table_map_0.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_0.c rename to parser/static/small_parse_table_map/small_parse_table_map_0.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_1.c b/parser/static/small_parse_table_map/small_parse_table_map_1.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_1.c rename to parser/static/small_parse_table_map/small_parse_table_map_1.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_10.c b/parser/static/small_parse_table_map/small_parse_table_map_10.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_10.c rename to parser/static/small_parse_table_map/small_parse_table_map_10.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_11.c b/parser/static/small_parse_table_map/small_parse_table_map_11.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_11.c rename to parser/static/small_parse_table_map/small_parse_table_map_11.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_12.c b/parser/static/small_parse_table_map/small_parse_table_map_12.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_12.c rename to parser/static/small_parse_table_map/small_parse_table_map_12.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_13.c b/parser/static/small_parse_table_map/small_parse_table_map_13.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_13.c rename to parser/static/small_parse_table_map/small_parse_table_map_13.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_14.c b/parser/static/small_parse_table_map/small_parse_table_map_14.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_14.c rename to parser/static/small_parse_table_map/small_parse_table_map_14.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_15.c b/parser/static/small_parse_table_map/small_parse_table_map_15.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_15.c rename to parser/static/small_parse_table_map/small_parse_table_map_15.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_16.c b/parser/static/small_parse_table_map/small_parse_table_map_16.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_16.c rename to parser/static/small_parse_table_map/small_parse_table_map_16.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_17.c b/parser/static/small_parse_table_map/small_parse_table_map_17.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_17.c rename to parser/static/small_parse_table_map/small_parse_table_map_17.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_18.c b/parser/static/small_parse_table_map/small_parse_table_map_18.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_18.c rename to parser/static/small_parse_table_map/small_parse_table_map_18.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_19.c b/parser/static/small_parse_table_map/small_parse_table_map_19.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_19.c rename to parser/static/small_parse_table_map/small_parse_table_map_19.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_2.c b/parser/static/small_parse_table_map/small_parse_table_map_2.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_2.c rename to parser/static/small_parse_table_map/small_parse_table_map_2.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_20.c b/parser/static/small_parse_table_map/small_parse_table_map_20.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_20.c rename to parser/static/small_parse_table_map/small_parse_table_map_20.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_21.c b/parser/static/small_parse_table_map/small_parse_table_map_21.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_21.c rename to parser/static/small_parse_table_map/small_parse_table_map_21.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_22.c b/parser/static/small_parse_table_map/small_parse_table_map_22.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_22.c rename to parser/static/small_parse_table_map/small_parse_table_map_22.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_23.c b/parser/static/small_parse_table_map/small_parse_table_map_23.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_23.c rename to parser/static/small_parse_table_map/small_parse_table_map_23.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_24.c b/parser/static/small_parse_table_map/small_parse_table_map_24.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_24.c rename to parser/static/small_parse_table_map/small_parse_table_map_24.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_25.c b/parser/static/small_parse_table_map/small_parse_table_map_25.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_25.c rename to parser/static/small_parse_table_map/small_parse_table_map_25.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_26.c b/parser/static/small_parse_table_map/small_parse_table_map_26.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_26.c rename to parser/static/small_parse_table_map/small_parse_table_map_26.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_27.c b/parser/static/small_parse_table_map/small_parse_table_map_27.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_27.c rename to parser/static/small_parse_table_map/small_parse_table_map_27.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_28.c b/parser/static/small_parse_table_map/small_parse_table_map_28.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_28.c rename to parser/static/small_parse_table_map/small_parse_table_map_28.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_29.c b/parser/static/small_parse_table_map/small_parse_table_map_29.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_29.c rename to parser/static/small_parse_table_map/small_parse_table_map_29.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_3.c b/parser/static/small_parse_table_map/small_parse_table_map_3.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_3.c rename to parser/static/small_parse_table_map/small_parse_table_map_3.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_30.c b/parser/static/small_parse_table_map/small_parse_table_map_30.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_30.c rename to parser/static/small_parse_table_map/small_parse_table_map_30.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_31.c b/parser/static/small_parse_table_map/small_parse_table_map_31.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_31.c rename to parser/static/small_parse_table_map/small_parse_table_map_31.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_32.c b/parser/static/small_parse_table_map/small_parse_table_map_32.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_32.c rename to parser/static/small_parse_table_map/small_parse_table_map_32.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_33.c b/parser/static/small_parse_table_map/small_parse_table_map_33.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_33.c rename to parser/static/small_parse_table_map/small_parse_table_map_33.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_34.c b/parser/static/small_parse_table_map/small_parse_table_map_34.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_34.c rename to parser/static/small_parse_table_map/small_parse_table_map_34.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_35.c b/parser/static/small_parse_table_map/small_parse_table_map_35.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_35.c rename to parser/static/small_parse_table_map/small_parse_table_map_35.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_36.c b/parser/static/small_parse_table_map/small_parse_table_map_36.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_36.c rename to parser/static/small_parse_table_map/small_parse_table_map_36.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_37.c b/parser/static/small_parse_table_map/small_parse_table_map_37.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_37.c rename to parser/static/small_parse_table_map/small_parse_table_map_37.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_38.c b/parser/static/small_parse_table_map/small_parse_table_map_38.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_38.c rename to parser/static/small_parse_table_map/small_parse_table_map_38.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_39.c b/parser/static/small_parse_table_map/small_parse_table_map_39.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_39.c rename to parser/static/small_parse_table_map/small_parse_table_map_39.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_4.c b/parser/static/small_parse_table_map/small_parse_table_map_4.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_4.c rename to parser/static/small_parse_table_map/small_parse_table_map_4.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_40.c b/parser/static/small_parse_table_map/small_parse_table_map_40.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_40.c rename to parser/static/small_parse_table_map/small_parse_table_map_40.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_41.c b/parser/static/small_parse_table_map/small_parse_table_map_41.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_41.c rename to parser/static/small_parse_table_map/small_parse_table_map_41.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_42.c b/parser/static/small_parse_table_map/small_parse_table_map_42.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_42.c rename to parser/static/small_parse_table_map/small_parse_table_map_42.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_43.c b/parser/static/small_parse_table_map/small_parse_table_map_43.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_43.c rename to parser/static/small_parse_table_map/small_parse_table_map_43.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_44.c b/parser/static/small_parse_table_map/small_parse_table_map_44.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_44.c rename to parser/static/small_parse_table_map/small_parse_table_map_44.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_45.c b/parser/static/small_parse_table_map/small_parse_table_map_45.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_45.c rename to parser/static/small_parse_table_map/small_parse_table_map_45.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_46.c b/parser/static/small_parse_table_map/small_parse_table_map_46.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_46.c rename to parser/static/small_parse_table_map/small_parse_table_map_46.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_47.c b/parser/static/small_parse_table_map/small_parse_table_map_47.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_47.c rename to parser/static/small_parse_table_map/small_parse_table_map_47.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_48.c b/parser/static/small_parse_table_map/small_parse_table_map_48.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_48.c rename to parser/static/small_parse_table_map/small_parse_table_map_48.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_49.c b/parser/static/small_parse_table_map/small_parse_table_map_49.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_49.c rename to parser/static/small_parse_table_map/small_parse_table_map_49.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_5.c b/parser/static/small_parse_table_map/small_parse_table_map_5.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_5.c rename to parser/static/small_parse_table_map/small_parse_table_map_5.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_50.c b/parser/static/small_parse_table_map/small_parse_table_map_50.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_50.c rename to parser/static/small_parse_table_map/small_parse_table_map_50.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_51.c b/parser/static/small_parse_table_map/small_parse_table_map_51.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_51.c rename to parser/static/small_parse_table_map/small_parse_table_map_51.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_52.c b/parser/static/small_parse_table_map/small_parse_table_map_52.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_52.c rename to parser/static/small_parse_table_map/small_parse_table_map_52.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_53.c b/parser/static/small_parse_table_map/small_parse_table_map_53.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_53.c rename to parser/static/small_parse_table_map/small_parse_table_map_53.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_54.c b/parser/static/small_parse_table_map/small_parse_table_map_54.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_54.c rename to parser/static/small_parse_table_map/small_parse_table_map_54.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_55.c b/parser/static/small_parse_table_map/small_parse_table_map_55.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_55.c rename to parser/static/small_parse_table_map/small_parse_table_map_55.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_56.c b/parser/static/small_parse_table_map/small_parse_table_map_56.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_56.c rename to parser/static/small_parse_table_map/small_parse_table_map_56.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_57.c b/parser/static/small_parse_table_map/small_parse_table_map_57.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_57.c rename to parser/static/small_parse_table_map/small_parse_table_map_57.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_58.c b/parser/static/small_parse_table_map/small_parse_table_map_58.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_58.c rename to parser/static/small_parse_table_map/small_parse_table_map_58.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_59.c b/parser/static/small_parse_table_map/small_parse_table_map_59.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_59.c rename to parser/static/small_parse_table_map/small_parse_table_map_59.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_6.c b/parser/static/small_parse_table_map/small_parse_table_map_6.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_6.c rename to parser/static/small_parse_table_map/small_parse_table_map_6.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_60.c b/parser/static/small_parse_table_map/small_parse_table_map_60.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_60.c rename to parser/static/small_parse_table_map/small_parse_table_map_60.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_61.c b/parser/static/small_parse_table_map/small_parse_table_map_61.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_61.c rename to parser/static/small_parse_table_map/small_parse_table_map_61.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_62.c b/parser/static/small_parse_table_map/small_parse_table_map_62.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_62.c rename to parser/static/small_parse_table_map/small_parse_table_map_62.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_63.c b/parser/static/small_parse_table_map/small_parse_table_map_63.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_63.c rename to parser/static/small_parse_table_map/small_parse_table_map_63.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_64.c b/parser/static/small_parse_table_map/small_parse_table_map_64.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_64.c rename to parser/static/small_parse_table_map/small_parse_table_map_64.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_65.c b/parser/static/small_parse_table_map/small_parse_table_map_65.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_65.c rename to parser/static/small_parse_table_map/small_parse_table_map_65.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_66.c b/parser/static/small_parse_table_map/small_parse_table_map_66.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_66.c rename to parser/static/small_parse_table_map/small_parse_table_map_66.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_67.c b/parser/static/small_parse_table_map/small_parse_table_map_67.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_67.c rename to parser/static/small_parse_table_map/small_parse_table_map_67.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_68.c b/parser/static/small_parse_table_map/small_parse_table_map_68.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_68.c rename to parser/static/small_parse_table_map/small_parse_table_map_68.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_69.c b/parser/static/small_parse_table_map/small_parse_table_map_69.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_69.c rename to parser/static/small_parse_table_map/small_parse_table_map_69.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_7.c b/parser/static/small_parse_table_map/small_parse_table_map_7.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_7.c rename to parser/static/small_parse_table_map/small_parse_table_map_7.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_70.c b/parser/static/small_parse_table_map/small_parse_table_map_70.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_70.c rename to parser/static/small_parse_table_map/small_parse_table_map_70.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_71.c b/parser/static/small_parse_table_map/small_parse_table_map_71.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_71.c rename to parser/static/small_parse_table_map/small_parse_table_map_71.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_8.c b/parser/static/small_parse_table_map/small_parse_table_map_8.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_8.c rename to parser/static/small_parse_table_map/small_parse_table_map_8.c diff --git a/shcat_c/parser/static/small_parse_table_map/small_parse_table_map_9.c b/parser/static/small_parse_table_map/small_parse_table_map_9.c similarity index 100% rename from shcat_c/parser/static/small_parse_table_map/small_parse_table_map_9.c rename to parser/static/small_parse_table_map/small_parse_table_map_9.c diff --git a/shcat_c/parser/static/symbols_metadata/symbols_metadata.h b/parser/static/symbols_metadata/symbols_metadata.h similarity index 100% rename from shcat_c/parser/static/symbols_metadata/symbols_metadata.h rename to parser/static/symbols_metadata/symbols_metadata.h diff --git a/shcat_c/parser/static/symbols_metadata/symbols_metadata_0.c b/parser/static/symbols_metadata/symbols_metadata_0.c similarity index 100% rename from shcat_c/parser/static/symbols_metadata/symbols_metadata_0.c rename to parser/static/symbols_metadata/symbols_metadata_0.c diff --git a/shcat_c/parser/static/symbols_metadata/symbols_metadata_1.c b/parser/static/symbols_metadata/symbols_metadata_1.c similarity index 100% rename from shcat_c/parser/static/symbols_metadata/symbols_metadata_1.c rename to parser/static/symbols_metadata/symbols_metadata_1.c diff --git a/shcat_c/parser/static/symbols_metadata/symbols_metadata_2.c b/parser/static/symbols_metadata/symbols_metadata_2.c similarity index 100% rename from shcat_c/parser/static/symbols_metadata/symbols_metadata_2.c rename to parser/static/symbols_metadata/symbols_metadata_2.c diff --git a/shcat_c/parser/static/symbols_names/symbols_names.h b/parser/static/symbols_names/symbols_names.h similarity index 100% rename from shcat_c/parser/static/symbols_names/symbols_names.h rename to parser/static/symbols_names/symbols_names.h diff --git a/shcat_c/parser/static/symbols_names/symbols_names_0.c b/parser/static/symbols_names/symbols_names_0.c similarity index 100% rename from shcat_c/parser/static/symbols_names/symbols_names_0.c rename to parser/static/symbols_names/symbols_names_0.c diff --git a/shcat_c/parser/static/symbols_names/symbols_names_1.c b/parser/static/symbols_names/symbols_names_1.c similarity index 100% rename from shcat_c/parser/static/symbols_names/symbols_names_1.c rename to parser/static/symbols_names/symbols_names_1.c diff --git a/shcat_c/parser/static/symbols_names/symbols_names_2.c b/parser/static/symbols_names/symbols_names_2.c similarity index 100% rename from shcat_c/parser/static/symbols_names/symbols_names_2.c rename to parser/static/symbols_names/symbols_names_2.c diff --git a/shcat_c/parser/static/types/type_alias_sequences.h b/parser/static/types/type_alias_sequences.h similarity index 100% rename from shcat_c/parser/static/types/type_alias_sequences.h rename to parser/static/types/type_alias_sequences.h diff --git a/shcat_c/parser/static/types/type_external_scanner_states.h b/parser/static/types/type_external_scanner_states.h similarity index 100% rename from shcat_c/parser/static/types/type_external_scanner_states.h rename to parser/static/types/type_external_scanner_states.h diff --git a/shcat_c/parser/static/types/type_external_scanner_symbol_map.h b/parser/static/types/type_external_scanner_symbol_map.h similarity index 100% rename from shcat_c/parser/static/types/type_external_scanner_symbol_map.h rename to parser/static/types/type_external_scanner_symbol_map.h diff --git a/shcat_c/parser/static/types/type_field_map_entries.h b/parser/static/types/type_field_map_entries.h similarity index 100% rename from shcat_c/parser/static/types/type_field_map_entries.h rename to parser/static/types/type_field_map_entries.h diff --git a/shcat_c/parser/static/types/type_field_map_slices.h b/parser/static/types/type_field_map_slices.h similarity index 100% rename from shcat_c/parser/static/types/type_field_map_slices.h rename to parser/static/types/type_field_map_slices.h diff --git a/shcat_c/parser/static/types/type_field_names.h b/parser/static/types/type_field_names.h similarity index 100% rename from shcat_c/parser/static/types/type_field_names.h rename to parser/static/types/type_field_names.h diff --git a/shcat_c/parser/static/types/type_lex_keywords.h b/parser/static/types/type_lex_keywords.h similarity index 100% rename from shcat_c/parser/static/types/type_lex_keywords.h rename to parser/static/types/type_lex_keywords.h diff --git a/shcat_c/parser/static/types/type_lex_modes.h b/parser/static/types/type_lex_modes.h similarity index 100% rename from shcat_c/parser/static/types/type_lex_modes.h rename to parser/static/types/type_lex_modes.h diff --git a/shcat_c/parser/static/types/type_lex_normal.h b/parser/static/types/type_lex_normal.h similarity index 100% rename from shcat_c/parser/static/types/type_lex_normal.h rename to parser/static/types/type_lex_normal.h diff --git a/shcat_c/parser/static/types/type_non_terminal_alias_map.h b/parser/static/types/type_non_terminal_alias_map.h similarity index 100% rename from shcat_c/parser/static/types/type_non_terminal_alias_map.h rename to parser/static/types/type_non_terminal_alias_map.h diff --git a/shcat_c/parser/static/types/type_parse_actions_entries.h b/parser/static/types/type_parse_actions_entries.h similarity index 100% rename from shcat_c/parser/static/types/type_parse_actions_entries.h rename to parser/static/types/type_parse_actions_entries.h diff --git a/shcat_c/parser/static/types/type_parse_table.h b/parser/static/types/type_parse_table.h similarity index 100% rename from shcat_c/parser/static/types/type_parse_table.h rename to parser/static/types/type_parse_table.h diff --git a/shcat_c/parser/static/types/type_primary_state_ids.h b/parser/static/types/type_primary_state_ids.h similarity index 100% rename from shcat_c/parser/static/types/type_primary_state_ids.h rename to parser/static/types/type_primary_state_ids.h diff --git a/shcat_c/parser/static/types/type_small_parse_table.h b/parser/static/types/type_small_parse_table.h similarity index 100% rename from shcat_c/parser/static/types/type_small_parse_table.h rename to parser/static/types/type_small_parse_table.h diff --git a/shcat_c/parser/static/types/type_small_parse_table_map.h b/parser/static/types/type_small_parse_table_map.h similarity index 100% rename from shcat_c/parser/static/types/type_small_parse_table_map.h rename to parser/static/types/type_small_parse_table_map.h diff --git a/shcat_c/parser/static/types/type_symbols_metadata.h b/parser/static/types/type_symbols_metadata.h similarity index 100% rename from shcat_c/parser/static/types/type_symbols_metadata.h rename to parser/static/types/type_symbols_metadata.h diff --git a/shcat_c/parser/static/types/type_symbols_names.h b/parser/static/types/type_symbols_names.h similarity index 100% rename from shcat_c/parser/static/types/type_symbols_names.h rename to parser/static/types/type_symbols_names.h diff --git a/shcat_c/parser/static/types/type_unique_symbols_map.h b/parser/static/types/type_unique_symbols_map.h similarity index 100% rename from shcat_c/parser/static/types/type_unique_symbols_map.h rename to parser/static/types/type_unique_symbols_map.h diff --git a/shcat_c/parser/static/unique_symbols_map/unique_symbols_map.h b/parser/static/unique_symbols_map/unique_symbols_map.h similarity index 100% rename from shcat_c/parser/static/unique_symbols_map/unique_symbols_map.h rename to parser/static/unique_symbols_map/unique_symbols_map.h diff --git a/shcat_c/parser/static/unique_symbols_map/unique_symbols_map_0.c b/parser/static/unique_symbols_map/unique_symbols_map_0.c similarity index 100% rename from shcat_c/parser/static/unique_symbols_map/unique_symbols_map_0.c rename to parser/static/unique_symbols_map/unique_symbols_map_0.c diff --git a/shcat_c/parser/static/unique_symbols_map/unique_symbols_map_1.c b/parser/static/unique_symbols_map/unique_symbols_map_1.c similarity index 100% rename from shcat_c/parser/static/unique_symbols_map/unique_symbols_map_1.c rename to parser/static/unique_symbols_map/unique_symbols_map_1.c diff --git a/shcat_c/parser/static/unique_symbols_map/unique_symbols_map_2.c b/parser/static/unique_symbols_map/unique_symbols_map_2.c similarity index 100% rename from shcat_c/parser/static/unique_symbols_map/unique_symbols_map_2.c rename to parser/static/unique_symbols_map/unique_symbols_map_2.c diff --git a/shcat_c/stdme b/shcat_c/stdme deleted file mode 160000 index 1812a562..00000000 --- a/shcat_c/stdme +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1812a562f473f0ad218fe4b1055ed377f5a020d3 diff --git a/shcat_c/sources/ft_cmd.c b/sources/ft_cmd.c similarity index 100% rename from shcat_c/sources/ft_cmd.c rename to sources/ft_cmd.c diff --git a/shcat_c/sources/ft_echo.c b/sources/ft_echo.c similarity index 100% rename from shcat_c/sources/ft_echo.c rename to sources/ft_echo.c diff --git a/shcat_c/sources/ft_exit.c b/sources/ft_exit.c similarity index 100% rename from shcat_c/sources/ft_exit.c rename to sources/ft_exit.c diff --git a/shcat_c/sources/ft_pwd.c b/sources/ft_pwd.c similarity index 100% rename from shcat_c/sources/ft_pwd.c rename to sources/ft_pwd.c diff --git a/shcat_c/sources/main.c b/sources/main.c similarity index 100% rename from shcat_c/sources/main.c rename to sources/main.c diff --git a/shcat_c/sources/node/create_node.c b/sources/node/create_node.c similarity index 100% rename from shcat_c/sources/node/create_node.c rename to sources/node/create_node.c diff --git a/shcat_c/sources/node/node.c b/sources/node/node.c similarity index 100% rename from shcat_c/sources/node/node.c rename to sources/node/node.c diff --git a/other/pipex/.clang-format b/stdme/.clang-format similarity index 100% rename from other/pipex/.clang-format rename to stdme/.clang-format diff --git a/stdme/.clangd b/stdme/.clangd new file mode 100644 index 00000000..6cf9bba2 --- /dev/null +++ b/stdme/.clangd @@ -0,0 +1,9 @@ +CompileFlags: # Tweak the parse settings + Add: + - "-I/home/maiboyer/Documents/mecstd/include/" + - "-I/home/maiboyer/Documents/mecstd/output/include/" + - "-I/home/maiboyer/Documents/mecstd/generic_sources/header/" + - "-I/home/maix/school/mecstd/include/" + - "-I/home/maix/school/mecstd/output/include/" + - "-I/home/maix/school/mecstd/generic_sources/header/" + diff --git a/other/pipex/.envrc b/stdme/.envrc similarity index 100% rename from other/pipex/.envrc rename to stdme/.envrc diff --git a/other/pipex/.gitignore b/stdme/.gitignore similarity index 93% rename from other/pipex/.gitignore rename to stdme/.gitignore index 88cb22bc..907e5c32 100644 --- a/other/pipex/.gitignore +++ b/stdme/.gitignore @@ -54,7 +54,3 @@ dkms.conf ./generic .direnv test -so_long -vgcore.* -a.out -pipex diff --git a/stdme/LICENSE b/stdme/LICENSE new file mode 100644 index 00000000..37990841 --- /dev/null +++ b/stdme/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Maix0 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/other/pipex/Makefile b/stdme/Makefile similarity index 62% rename from other/pipex/Makefile rename to stdme/Makefile index 5bfcc459..5ffa0295 100644 --- a/other/pipex/Makefile +++ b/stdme/Makefile @@ -6,37 +6,34 @@ # By: maiboyer +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2023/11/03 13:20:01 by maiboyer #+# #+# # -# Updated: 2024/01/06 18:59:45 by maiboyer ### ########.fr # +# Updated: 2024/04/28 19:33:09 by maiboyer ### ########.fr # # # # **************************************************************************** # -define_module = $(addprefix $(1)/, $(2)) - -BUILD_DIR = build +BUILD_DIR ?= build SRC_DIR = src INCLUDE_DIR = include output/include LIBS_DIR = . GENERIC_DIR = output/src GENERIC_INCLUDE = output/include -BONUS_FLAGS = -NAME = pipex +NAME = libme.a LIB_NAME ?= -TARGET = $(NAME) +TARGET = $(BUILD_DIR)/$(NAME) CC = clang -CFLAGS = -Wall -Wextra -Werror -g2 -lme -L$(BUILD_DIR) -Wno-unused-command-line-argument -MMD -Wno-unused-parameter -Wno-unused-variable +CFLAGS = -Wno-unused-command-line-argument -Wall -Werror -Wextra -g3 -L$(BUILD_DIR) -MMD BONUS_FILES = -LIBS_NAME = mecstd -SUBJECT_URL = 'https://cdn.intra.42.fr/pdf/pdf/105445/en.subject.pdf' +LIBS_NAME = +SUBJECT_URL = -GENERIC_FILES = $(shell cat generic_files.list) -SRC_FILES = $(shell cat source_files.list) +GENERIC_FILES = $(shell cat gen.list) +SRC_FILES = $(shell cat src.list) BONUS = $(addsuffix .c,$(addprefix $(SRC_DIR)/,$(BONUS_FILES))) SRC = $(addsuffix .c,$(addprefix $(SRC_DIR)/,$(SRC_FILES))) \ $(addsuffix .c,$(addprefix $(GENERIC_DIR)/,$(GENERIC_FILES))) BONUS_OBJ = $(addsuffix .o,$(addprefix $(BUILD_DIR)/,$(BONUS_FILES))) -OBJ = $(addsuffix .o,$(addprefix $(BUILD_DIR)/,$(SRC_FILES))) \ +OBJ = $(addsuffix .o,$(addprefix $(BUILD_DIR)/,$(SRC_FILES) )) \ $(addsuffix .o,$(addprefix $(BUILD_DIR)/,$(GENERIC_FILES))) DEPS = $(addsuffix .d,$(addprefix $(BUILD_DIR)/,$(SRC_FILES))) \ $(addsuffix .d,$(addprefix $(BUILD_DIR)/,$(GENERIC_FILES))) @@ -48,53 +45,29 @@ COL_GREEN = \\e[32m COL_BOLD = \\e[1m COL_RESET = \\e[0m -.PHONY: all -.PHONY: libs_build -.PHONY: bonus -.PHONY: clean -.PHONY: fclean -.PHONY: re -.PHONY: format -.PHONY: subject -.PHONY: submit -.PHONY: so +.PHONY = all bonus clean re subject all: $(NAME) -bonus: fclean -bonus: BONUS_FLAGS = -DBONUS=1 -bonus: all +$(NAME): $(TARGET) -get_lib: - @printf $(LIB_NAME)/$(NAME) - -$(NAME): $(OBJ) libs_build +$(TARGET): $(OBJ) @printf \\n$(COL_GRAY)Building\ Output\ $(COL_WHITE)$(COL_BOLD)%-28s$(COL_RESET)\ \ $(NAME) - @$(CC) $(INCLUDES) $(OBJ) $(CFLAGS) $(BONUS_FLAGS) -o $(NAME) - @#ar rcs $(BUILD_DIR)/$(NAME) $(OBJ) + @#$(CC) $(INCLUDES) $(OBJ) $(CFLAGS) -o $(NAME) + @ar rcs $(BUILD_DIR)/$(NAME) $(OBJ) @printf $(COL_GREEN)done$(COL_RESET)\\n -libs_build: - @- $(foreach LIB,$(LIBS),\ - mkdir -p $(BUILD_DIR); \ - printf \\n; \ - printf $(COL_GRAY)Building\ library\ $(COL_RESET); \ - printf $(COL_WHITE)$(COL_BOLD)%-25s$(COL_RESET)\\n $(LIB); \ - make LIB_NAME=$(LIB)/ BUILD_DIR=$(realpath $(BUILD_DIR)) -C $(LIB) --no-print-directory all; \ - printf \\n; \ - ) - $(BUILD_DIR)/%.o: $(SRC_DIR)/%.c @mkdir -p $(dir $@) @printf $(COL_GRAY)Building\ $(COL_BOLD)$(COL_WHITE)%-50s\ $(LIB_NAME)$< - @$(CC) $(CFLAGS) $(WERROR) $(BONUS_FLAGS) $(INCLUDES) -c $< -o $@ + @$(CC) $(CFLAGS) $(WERROR) $(INCLUDES) -c $< -o $@ @printf $(COL_RESET)$(COL_GREEN)done$(COL_RESET)\\n $(BUILD_DIR)/%.o: $(GENERIC_DIR)/%.c @mkdir -p $(dir $@) @printf $(COL_GRAY)Building\ $(COL_BOLD)$(COL_WHITE)%-50s\ $(LIB_NAME)$< - @$(CC) $(CFLAGS) $(WERROR) $(BONUS_FLAGS) $(INCLUDES) -c $< -o $@ + @$(CC) $(CFLAGS) $(WERROR) $(INCLUDES) -c $< -o $@ @printf $(COL_RESET)$(COL_GREEN)done$(COL_RESET)\\n clean: @@ -111,7 +84,7 @@ clean: fclean: clean @- $(foreach LIB,$(LIBS), \ - make fclean LIB_NAME=$(LIB)/ BUILD_DIR=$(realpath $(BUILD_DIR)) -C $(LIB) --no-print-directory || true;\ + make fclean LIB_NAME=$(LIB)/ BUILD_DIR=$(shell realpath $(BUILD_DIR)) -C $(LIB) --no-print-directory || true;\ ) @printf $(COL_WHITE)Clearing\ Output\ $(COL_GRAY)%-28s$(COL_RESET)\ \ \($(LIB_NAME)$(NAME)\) @@ -120,20 +93,14 @@ fclean: clean re: fclean all -format: - @zsh -c "c_formatter_42 **/*.c **/*.h" - subject: subject.txt - @bat --plain subject.txt + bat --plain ./subject.txt subject.txt: - @curl $(SUBJECT_URL) | pdftotext -layout -nopgbrk - subject.txt + @curl $(SUBJECT_URL) | pdftotext -layout -nopgbrk -q - subject.txt -fuck_raphael: - @echo "Oh que oui~~~\net jte nioc" - -generate_filelist: - @/usr/bin/env zsh -c "tree -iFf --noreport output | rg '^output/src/(.*)\.c\$$' --replace '\$$1' | sort -u" > ./generic_files.list - @/usr/bin/env zsh -c "tree -iFf --noreport src | rg '^src/(.*)\.c\$$' --replace '\$$1' | sort -u" > ./source_files.list +generate_filelist:: + @/usr/bin/env zsh -c "tree -iFf --noreport output | rg '^output/src/(.*)\.c\$$' --replace '\$$1' | sort -u" > ./gen.list + @/usr/bin/env zsh -c "tree -iFf --noreport src | rg '^src/(.*)\.c\$$' --replace '\$$1' | sort -u" > ./src.list -include $(DEPS) diff --git a/stdme/README.md b/stdme/README.md new file mode 100644 index 00000000..d841a9d8 --- /dev/null +++ b/stdme/README.md @@ -0,0 +1,2 @@ +# meclib +My C "standard library" used for my school projects diff --git a/other/pipex/flake.lock b/stdme/flake.lock similarity index 82% rename from other/pipex/flake.lock rename to stdme/flake.lock index 55d690df..a88658d6 100644 --- a/other/pipex/flake.lock +++ b/stdme/flake.lock @@ -59,11 +59,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -77,11 +77,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -95,11 +95,11 @@ "systems": "systems_4" }, "locked": { - "lastModified": 1681202837, - "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "cfacdce06f30d2b68473a46042957675eebb3401", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -116,11 +116,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1702388541, - "narHash": "sha256-ExzIrROCDRXVnvbOs81aL9DKHm1OxlzVXQPpUTrB75c=", + "lastModified": 1706829609, + "narHash": "sha256-A0imQ9AIJafdL1/+j/1b3G7bm2j+N+VhzTsvKikKjz4=", "owner": "maix0", "repo": "generic_c", - "rev": "52b5de885c015d3b84ca26c02c3684ca0e9b426d", + "rev": "a470c2c5a8c8aadc852a7a50d72853f2a3873595", "type": "github" }, "original": { @@ -163,11 +163,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1704008649, - "narHash": "sha256-rGPSWjXTXTurQN9beuHdyJhB8O761w1Zc5BqSSmHvoM=", + "lastModified": 1706683685, + "narHash": "sha256-FtPPshEpxH/ewBOsdKBNhlsL2MLEFv1hEnQ19f/bFsQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d44d59d2b5bd694cd9d996fd8c51d03e3e9ba7f7", + "rev": "5ad9903c16126a7d949101687af0aa589b1d7d3d", "type": "github" }, "original": { @@ -177,11 +177,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1702272962, - "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "lastModified": 1706683685, + "narHash": "sha256-FtPPshEpxH/ewBOsdKBNhlsL2MLEFv1hEnQ19f/bFsQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", + "rev": "5ad9903c16126a7d949101687af0aa589b1d7d3d", "type": "github" }, "original": { @@ -193,11 +193,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1681358109, - "narHash": "sha256-eKyxW4OohHQx9Urxi7TQlFBTDWII+F+x2hklDOQPB50=", + "lastModified": 1706487304, + "narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "96ba1c52e54e74c3197f4d43026b3f3d92e83ff9", + "rev": "90f456026d284c22b3e3497be980b2e47d0b28ac", "type": "github" }, "original": { @@ -209,11 +209,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1704008649, - "narHash": "sha256-rGPSWjXTXTurQN9beuHdyJhB8O761w1Zc5BqSSmHvoM=", + "lastModified": 1708976803, + "narHash": "sha256-yvRygcySjjSvj5JTaCdo7lPqJ/2mBV2XQ94Oaq/14qw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d44d59d2b5bd694cd9d996fd8c51d03e3e9ba7f7", + "rev": "548a86b335d7ecd8b57ec617781f5e652ab0c38e", "type": "github" }, "original": { @@ -235,11 +235,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1702347444, - "narHash": "sha256-ueDw7aQf4Xyk69XnDD0YNWDlFdlOgJGPeWFa7uu/cfw=", + "lastModified": 1706753617, + "narHash": "sha256-ZKqTFzhFwSWFEpQTJ0uXnfJBs5Y/po9/8TK4bzssdbs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "bc13176f27cf3be724d18924b4f6aa47686ca2e3", + "rev": "58be43ae223034217ea1bd58c73210644031b687", "type": "github" }, "original": { diff --git a/other/pipex/flake.nix b/stdme/flake.nix similarity index 87% rename from other/pipex/flake.nix rename to stdme/flake.nix index 24419eca..13343b1f 100644 --- a/other/pipex/flake.nix +++ b/stdme/flake.nix @@ -19,19 +19,15 @@ in { devShell = pkgs.mkShell { packages = [ - pkgs.xorg.libXext - pkgs.xorg.libX11 - pkgs.clang - pkgs.clang-tools - pkgs.norminette generic_c.packages.${system}.default c_formatter_42.packages.${system}.default - pkgs.poppler_utils - pkgs.minilibx - pkgs.valgrind - pkgs.libbsd - pkgs.tree + pkgs.clang + pkgs.clang-tools pkgs.fastmod + pkgs.libbsd + pkgs.norminette + pkgs.valgrind + pkgs.tree ]; }; } diff --git a/stdme/gen.list b/stdme/gen.list new file mode 100644 index 00000000..50cb8a64 --- /dev/null +++ b/stdme/gen.list @@ -0,0 +1,22 @@ +convert/str_to_i16 +convert/str_to_i16_utils +convert/str_to_i32 +convert/str_to_i32_utils +convert/str_to_i64 +convert/str_to_i64_utils +convert/str_to_i8 +convert/str_to_i8_utils +convert/str_to_u16 +convert/str_to_u16_utils +convert/str_to_u32 +convert/str_to_u32_utils +convert/str_to_u64 +convert/str_to_u64_utils +convert/str_to_u8 +convert/str_to_u8_utils +vec/vec_buf_str +vec/vec_buf_str_functions2 +vec/vec_buf_str_functions3 +vec/vec_u8 +vec/vec_u8_functions2 +vec/vec_u8_functions3 diff --git a/stdme/generic_sources/header/hashmap_C__PREFIX__.h__TEMPLATE__ b/stdme/generic_sources/header/hashmap_C__PREFIX__.h__TEMPLATE__ new file mode 100644 index 00000000..78aca68f --- /dev/null +++ b/stdme/generic_sources/header/hashmap_C__PREFIX__.h__TEMPLATE__ @@ -0,0 +1,76 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hashmap_C__PREFIX__.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/06 11:00:22 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 15:24:44 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef HASHMAP_C__PREFIXUP___H +#define HASHMAP_C__PREFIXUP___H + +#define DEFAULT_BUCKETS 750 + +C__TYPEHEADER__ + +#include "me/hash/hasher.h" +#include "me/types.h" +#include +#include +#include +#include +#include + +typedef struct s_kv_C__PREFIX__ +{ + C__KEYTYPE__ key; + C__VALTYPE__ val; +} t_kv_C__PREFIX__; + +typedef void (*t_hash_C__PREFIX___fn)(t_hasher *hasher, C__KEYTYPE__ *key); +typedef void (*t_drop_C__PREFIX___fn)(t_kv_C__PREFIX__ val); +typedef bool (*t_eq_C__PREFIX___fn)(C__KEYTYPE__ *lhs, C__KEYTYPE__ *rhs); + +typedef struct s_entry_C__PREFIX__ +{ + t_usize hash_id; + t_kv_C__PREFIX__ kv; + struct s_entry_C__PREFIX__ *next; +} t_entry_C__PREFIX__; + +typedef struct s_hashmap_C__PREFIX__ +{ + t_entry_C__PREFIX__ **buckets; + t_usize num_buckets; + t_hasher hasher; + t_hash_C__PREFIX___fn hfunc; + t_eq_C__PREFIX___fn cfunc; + t_drop_C__PREFIX___fn drop; +} t_hashmap_C__PREFIX__; + +t_hashmap_C__PREFIX__ *new_hashmap_C__PREFIX__(t_hash_C__PREFIX___fn hash, + t_eq_C__PREFIX___fn cmp, + t_drop_C__PREFIX___fn drop); +t_hashmap_C__PREFIX__ *new_hashmap_with_buckets_C__PREFIX__( + t_hash_C__PREFIX___fn hash, t_eq_C__PREFIX___fn cmp, + t_drop_C__PREFIX___fn drop, size_t cap); + +void drop_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap); + +void insert_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, C__KEYTYPE__ key, + C__VALTYPE__ value); + +C__VALTYPE__ *get_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, + C__KEYTYPE__ *key); +void remove_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, C__KEYTYPE__ *key); + +t_entry_C__PREFIX__ *hashmap_get_entry_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, + t_usize hash, + C__KEYTYPE__ *key, + t_entry_C__PREFIX__ **prev); + +#endif diff --git a/stdme/generic_sources/header/vec_C__PREFIX__.h__TEMPLATE__ b/stdme/generic_sources/header/vec_C__PREFIX__.h__TEMPLATE__ new file mode 100644 index 00000000..ea5be649 --- /dev/null +++ b/stdme/generic_sources/header/vec_C__PREFIX__.h__TEMPLATE__ @@ -0,0 +1,57 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* vec_C__PREFIX__.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/04 18:46:53 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 17:53:00 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef VEC_C__PREFIXUP___H +#define VEC_C__PREFIXUP___H + +C__TYPEHEADER__ +#include "me/types.h" + +typedef bool (*t_vec_C__PREFIX___sort_fn)(C__TYPENAME__ *, C__TYPENAME__ *); +typedef void (*t_free_C__PREFIX___item)(C__TYPENAME__); + +typedef struct s_vec_C__PREFIX__ +{ + t_free_C__PREFIX___item free_func; + t_usize len; + t_usize capacity; + C__TYPENAME__ *buffer; +} t_vec_C__PREFIX__; + +t_vec_C__PREFIX__ vec_C__PREFIX___new(t_usize capacity, + t_free_C__PREFIX___item free_function); +t_error vec_C__PREFIX___push(t_vec_C__PREFIX__ *vec, C__TYPENAME__ element); +t_error vec_C__PREFIX___push_front(t_vec_C__PREFIX__ *vec, + C__TYPENAME__ element); +t_error vec_C__PREFIX___pop(t_vec_C__PREFIX__ *vec, C__TYPENAME__ *value); +t_error vec_C__PREFIX___pop_front(t_vec_C__PREFIX__ *vec, C__TYPENAME__ *value); +void vec_C__PREFIX___free(t_vec_C__PREFIX__ vec); +t_error vec_C__PREFIX___reserve(t_vec_C__PREFIX__ *vec, + t_usize wanted_capacity); +t_error vec_C__PREFIX___find(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), t_usize *index); +t_error vec_C__PREFIX___find_starting(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), + t_usize starting_index, t_usize *index); +t_error vec_C__PREFIX___all(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), bool *result); +t_error vec_C__PREFIX___any(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), bool *result); +void vec_C__PREFIX___iter(t_vec_C__PREFIX__ *vec, + void (*fn)(t_usize index, C__TYPENAME__ *value, + void *state), + void *state); +void vec_C__PREFIX___reverse(t_vec_C__PREFIX__ *vec); +void vec_C__PREFIX___sort(t_vec_C__PREFIX__ *vec, + t_vec_C__PREFIX___sort_fn is_sorted); + +#endif diff --git a/stdme/generic_sources/src/hashmap_C__PREFIX__.c__TEMPLATE__ b/stdme/generic_sources/src/hashmap_C__PREFIX__.c__TEMPLATE__ new file mode 100644 index 00000000..17a66925 --- /dev/null +++ b/stdme/generic_sources/src/hashmap_C__PREFIX__.c__TEMPLATE__ @@ -0,0 +1,116 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hashmap_C__PREFIX__.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/06 10:58:20 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 15:32:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/hasher.h" +#include "me/hash/sip.h" +#include "me/hashmap/hashmap_C__PREFIX__.h" +#include "me/mem/mem_alloc.h" +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_copy.h" +#include "me/types.h" +#include + +t_hashmap_C__PREFIX__ *new_hashmap_C__PREFIX__(t_hash_C__PREFIX___fn hfunc, + t_eq_C__PREFIX___fn cfunc, + t_drop_C__PREFIX___fn drop) +{ + return (new_hashmap_with_buckets_C__PREFIX__(hfunc, cfunc, drop, + DEFAULT_BUCKETS)); +} + +t_hashmap_C__PREFIX__ *new_hashmap_with_buckets_C__PREFIX__( + t_hash_C__PREFIX___fn hfunc, t_eq_C__PREFIX___fn cfunc, + t_drop_C__PREFIX___fn drop, t_usize buckets) +{ + t_hashmap_C__PREFIX__ *hmap; + + hmap = mem_alloc(sizeof(*hmap)); + if (hmap == NULL) + return (NULL); + hmap->buckets = mem_alloc_array(buckets, sizeof(t_entry_C__PREFIX__ *)); + hmap->num_buckets = buckets; + hmap->hasher = hasher_sip13_new(); + hmap->hfunc = hfunc; + hmap->cfunc = cfunc; + hmap->drop = drop; + if (hmap->buckets == NULL) + return ((void)free(hmap), NULL); + return (hmap); +} + +void drop_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap) +{ + t_usize index; + + index = 0; + while (index < hmap->num_buckets) + { + if (hmap->buckets[index]) + { + hmap->drop(hmap->buckets[index]->kv); + free(hmap->buckets[index]); + } + index++; + } + hasher_finish(&hmap->hasher); + free(hmap->buckets); + free(hmap); +} + +t_entry_C__PREFIX__ *hashmap_get_entry_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, + t_usize hashed_key, + C__KEYTYPE__ *key, + t_entry_C__PREFIX__ **prev) +{ + t_entry_C__PREFIX__ *entry; + + entry = hmap->buckets[hashed_key % hmap->num_buckets]; + while (entry != NULL) + { + if (!hmap->cfunc(&entry->kv.key, key)) + { + *prev = entry; + entry = entry->next; + } + else + { + return (entry); + } + } + return (NULL); +} + +void insert_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, C__KEYTYPE__ key, + C__VALTYPE__ value) +{ + t_usize hashed_key; + t_entry_C__PREFIX__ *prev; + t_entry_C__PREFIX__ *entry; + + hmap->hfunc(&hmap->hasher, &key); + hashed_key = hasher_reset_and_finish(&hmap->hasher); + prev = NULL; + entry = hashmap_get_entry_C__PREFIX__(hmap, hashed_key, &key, &prev); + if (entry == NULL) + { + entry = mem_alloc(sizeof(t_entry_tile)); + entry->hash_id = hashed_key; + entry->kv = (t_kv_tile){.key = key, .val = value}; + entry->next = NULL; + if (prev == NULL) + hmap->buckets[hashed_key % hmap->num_buckets] = entry; + else + prev->next = entry; + } + else + entry->kv.val = value; +} diff --git a/stdme/generic_sources/src/hashmap_C__PREFIX___utils.c__TEMPLATE__ b/stdme/generic_sources/src/hashmap_C__PREFIX___utils.c__TEMPLATE__ new file mode 100644 index 00000000..83c542f0 --- /dev/null +++ b/stdme/generic_sources/src/hashmap_C__PREFIX___utils.c__TEMPLATE__ @@ -0,0 +1,56 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hashmap_C__PREFIX___utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/06 10:58:20 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 15:35:37 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/sip.h" +#include "me/hashmap/hashmap_C__PREFIX__.h" +#include "me/mem/mem_alloc.h" +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_copy.h" +#include "me/types.h" +#include + +C__VALTYPE__ *get_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, + C__KEYTYPE__ *key) +{ + t_usize hashed_key; + t_entry_C__PREFIX__ *entry; + t_entry_C__PREFIX__ *prev; + + hmap->hfunc(&hmap->hasher, key); + hashed_key = hasher_reset_and_finish(&hmap->hasher); + entry = hashmap_get_entry_tile(hmap, hashed_key, key, &prev); + if (entry == NULL) + return (NULL); + return (&entry->kv.val); +} + +void remove_hashmap_C__PREFIX__(t_hashmap_C__PREFIX__ *hmap, C__KEYTYPE__ *key) +{ + t_usize hashed_key; + t_entry_C__PREFIX__ *prev; + t_entry_C__PREFIX__ *entry; + + hmap->hfunc(&hmap->hasher, key); + hashed_key = hasher_reset_and_finish(&hmap->hasher); + hmap->hasher = hasher_sip13_new(); + prev = NULL; + entry = hashmap_get_entry_C__PREFIX__(hmap, hashed_key, key, &prev); + if (entry == NULL) + return; + if (prev == NULL) + hmap->buckets[hashed_key % hmap->num_buckets] = entry->next; + else + prev->next = entry->next; + hmap->drop(entry->kv); + free(entry); + hmap->buckets[hashed_key % hmap->num_buckets] = NULL; +} diff --git a/stdme/generic_sources/src/str_to_C__PREFIX__.c__TEMPLATE__ b/stdme/generic_sources/src/str_to_C__PREFIX__.c__TEMPLATE__ new file mode 100644 index 00000000..8984d44f --- /dev/null +++ b/stdme/generic_sources/src/str_to_C__PREFIX__.c__TEMPLATE__ @@ -0,0 +1,130 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_C__PREFIX__(C__TYPE__ lhs, C__TYPE__ rhs, C__TYPE__ *out); +t_error checked_sub_C__PREFIX__(C__TYPE__ lhs, C__TYPE__ rhs, C__TYPE__ *out); +t_error checked_mul_C__PREFIX__(C__TYPE__ lhs, C__TYPE__ rhs, C__TYPE__ *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && + digits_len <= sizeof(C__TYPE__) * 2 - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(C__TYPE__ digit, t_u8 op, C__TYPE__ *result) +{ + C__TYPE__ rhs; + C__TYPE__ res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_C__PREFIX__(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_C__PREFIX__(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_C__PREFIX__(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + C__TYPE__ *out) +{ + t_u32 digit; + C__TYPE__ result; + + result = C__ZERO__; + + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_C__PREFIX__(t_const_str s, t_u32 radix, C__TYPE__ *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && C__SIGNED_TYPE__) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, C__SIGNED_TYPE__, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/generic_sources/src/str_to_C__PREFIX___utils.c__TEMPLATE__ b/stdme/generic_sources/src/str_to_C__PREFIX___utils.c__TEMPLATE__ new file mode 100644 index 00000000..73651ef0 --- /dev/null +++ b/stdme/generic_sources/src/str_to_C__PREFIX___utils.c__TEMPLATE__ @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" +#include "me/printf/printf.h" + +t_error checked_add_C__PREFIX__(C__TYPE__ lhs, C__TYPE__ rhs, C__TYPE__ *out) +{ + if (rhs > 0 && (lhs > C__MAX__ - rhs)) + return (ERROR); + *out = (C__TYPE__)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_C__PREFIX__(C__TYPE__ lhs, C__TYPE__ rhs, C__TYPE__ *out) +{ + if ((((rhs & (1 << (sizeof(C__TYPE__) - 1)) || rhs == 0) || !C__SIGNED_TYPE__) && (lhs < C__MIN__ + rhs))) + return (ERROR); + *out = (C__TYPE__)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_C__PREFIX__(C__TYPE__ lhs, C__TYPE__ rhs, C__TYPE__ *out) +{ + C__TYPE__ mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/other/pipex/output/src/vec/vec_str.c b/stdme/generic_sources/src/vec_C__PREFIX__.c__TEMPLATE__ similarity index 67% rename from other/pipex/output/src/vec/vec_str.c rename to stdme/generic_sources/src/vec_C__PREFIX__.c__TEMPLATE__ index ccb091b8..662a9659 100644 --- a/other/pipex/output/src/vec/vec_str.c +++ b/stdme/generic_sources/src/vec_C__PREFIX__.c__TEMPLATE__ @@ -1,7 +1,7 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* vec_str.c :+: :+: :+: */ +/* vec_C__PREFIX__.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ @@ -14,26 +14,27 @@ #include "me/mem/mem_copy.h" #include "me/mem/mem_set_zero.h" #include "me/types.h" -#include "me/vec/vec_str.h" +#include "me/vec/vec_C__PREFIX__.h" #include -t_vec_str vec_str_new(t_usize capacity, t_free_str_item free_function) +t_vec_C__PREFIX__ vec_C__PREFIX___new(t_usize capacity, + t_free_C__PREFIX___item free_function) { - t_vec_str out; + t_vec_C__PREFIX__ out; - out = (t_vec_str){0}; + out = (t_vec_C__PREFIX__){0}; out.free_func = free_function; - out.buffer = mem_alloc_array(capacity, sizeof(t_str)); + out.buffer = mem_alloc_array(capacity, sizeof(C__TYPENAME__)); if (out.buffer) out.capacity = capacity; return (out); } /// Return true in case of an error -t_error vec_str_push(t_vec_str *vec, t_str element) +t_error vec_C__PREFIX___push(t_vec_C__PREFIX__ *vec, C__TYPENAME__ element) { - t_str *temp_buffer; - size_t new_capacity; + C__TYPENAME__ *temp_buffer; + size_t new_capacity; if (vec == NULL) return (ERROR); @@ -42,10 +43,10 @@ t_error vec_str_push(t_vec_str *vec, t_str element) new_capacity = (vec->capacity * 3) / 2 + 1; while (vec->len + 1 > new_capacity) new_capacity = (new_capacity * 3) / 2 + 1; - temp_buffer = mem_alloc_array(new_capacity, sizeof(t_str)); + temp_buffer = mem_alloc_array(new_capacity, sizeof(C__TYPENAME__)); if (temp_buffer == NULL) return (ERROR); - mem_copy(temp_buffer, vec->buffer, vec->len * sizeof(t_str)); + mem_copy(temp_buffer, vec->buffer, vec->len * sizeof(C__TYPENAME__)); free(vec->buffer); vec->buffer = temp_buffer; vec->capacity = new_capacity; @@ -56,10 +57,10 @@ t_error vec_str_push(t_vec_str *vec, t_str element) } /// Return true in case of an error -t_error vec_str_reserve(t_vec_str *vec, t_usize wanted_capacity) +t_error vec_C__PREFIX___reserve(t_vec_C__PREFIX__ *vec, t_usize wanted_capacity) { - t_str *temp_buffer; - size_t new_capacity; + C__TYPENAME__ *temp_buffer; + size_t new_capacity; if (vec == NULL) return (ERROR); @@ -68,10 +69,10 @@ t_error vec_str_reserve(t_vec_str *vec, t_usize wanted_capacity) new_capacity = (vec->capacity * 3) / 2 + 1; while (wanted_capacity > new_capacity) new_capacity = (new_capacity * 3) / 2 + 1; - temp_buffer = mem_alloc_array(new_capacity, sizeof(t_str)); + temp_buffer = mem_alloc_array(new_capacity, sizeof(C__TYPENAME__)); if (temp_buffer == NULL) return (ERROR); - mem_copy(temp_buffer, vec->buffer, vec->len * sizeof(t_str)); + mem_copy(temp_buffer, vec->buffer, vec->len * sizeof(C__TYPENAME__)); free(vec->buffer); vec->buffer = temp_buffer; vec->capacity = new_capacity; @@ -81,10 +82,10 @@ t_error vec_str_reserve(t_vec_str *vec, t_usize wanted_capacity) /// Return true if the vector is empty /// This function is safe to call with value being NULL -t_error vec_str_pop(t_vec_str *vec, t_str *value) +t_error vec_C__PREFIX___pop(t_vec_C__PREFIX__ *vec, C__TYPENAME__ *value) { - t_str temp_value; - t_str *ptr; + C__TYPENAME__ temp_value; + C__TYPENAME__ *ptr; if (vec == NULL) return (ERROR); @@ -95,12 +96,12 @@ t_error vec_str_pop(t_vec_str *vec, t_str *value) ptr = &temp_value; vec->len--; *ptr = vec->buffer[vec->len]; - mem_set_zero(&vec->buffer[vec->len], sizeof(t_str)); + mem_set_zero(&vec->buffer[vec->len], sizeof(C__TYPENAME__)); return (NO_ERROR); } /// This function is safe to call with `free_elem` being NULL -void vec_str_free(t_vec_str vec) +void vec_C__PREFIX___free(t_vec_C__PREFIX__ vec) { if (vec.free_func) { diff --git a/other/pipex/output/src/vec/vec_str_functions2.c b/stdme/generic_sources/src/vec_C__PREFIX___functions2.c__TEMPLATE__ similarity index 70% rename from other/pipex/output/src/vec/vec_str_functions2.c rename to stdme/generic_sources/src/vec_C__PREFIX___functions2.c__TEMPLATE__ index c7be5033..84ff32f7 100644 --- a/other/pipex/output/src/vec/vec_str_functions2.c +++ b/stdme/generic_sources/src/vec_C__PREFIX___functions2.c__TEMPLATE__ @@ -1,7 +1,7 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* vec_str.c :+: :+: :+: */ +/* vec_C__PREFIX__.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ @@ -14,12 +14,13 @@ #include "me/mem/mem_copy.h" #include "me/mem/mem_set_zero.h" #include "me/types.h" -#include "me/vec/vec_str.h" +#include "me/vec/vec_C__PREFIX__.h" #include -t_error vec_str_find(t_vec_str *vec, bool (*fn)(const t_str *), t_usize *index) +t_error vec_C__PREFIX___find(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), t_usize *index) { - t_usize idx; + t_usize idx; if (vec == NULL || fn == NULL || index == NULL) return (ERROR); @@ -36,10 +37,11 @@ t_error vec_str_find(t_vec_str *vec, bool (*fn)(const t_str *), t_usize *index) return (ERROR); } -t_error vec_str_find_starting(t_vec_str *vec, bool (*fn)(const t_str *), - t_usize starting_index, t_usize *index) +t_error vec_C__PREFIX___find_starting(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), + t_usize starting_index, t_usize *index) { - t_usize idx; + t_usize idx; if (vec == NULL || fn == NULL || index == NULL) return (ERROR); @@ -56,9 +58,10 @@ t_error vec_str_find_starting(t_vec_str *vec, bool (*fn)(const t_str *), return (ERROR); } -t_error vec_str_all(t_vec_str *vec, bool (*fn)(const t_str *), bool *result) +t_error vec_C__PREFIX___all(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), bool *result) { - t_usize idx; + t_usize idx; if (vec == NULL || fn == NULL || result == NULL) return (ERROR); @@ -73,9 +76,10 @@ t_error vec_str_all(t_vec_str *vec, bool (*fn)(const t_str *), bool *result) return (ERROR); } -t_error vec_str_any(t_vec_str *vec, bool (*fn)(const t_str *), bool *result) +t_error vec_C__PREFIX___any(t_vec_C__PREFIX__ *vec, + bool (*fn)(const C__TYPENAME__ *), bool *result) { - t_usize idx; + t_usize idx; if (vec == NULL || fn == NULL || result == NULL) return (ERROR); @@ -90,13 +94,15 @@ t_error vec_str_any(t_vec_str *vec, bool (*fn)(const t_str *), bool *result) return (ERROR); } -void vec_str_iter(t_vec_str *vec, void (*fn)(t_usize index, t_str *value, - void *state), void *state) +void vec_C__PREFIX___iter(t_vec_C__PREFIX__ *vec, + void (*fn)(t_usize index, C__TYPENAME__ *value, + void *state), + void *state) { - t_usize idx; + t_usize idx; if (vec == NULL || fn == NULL) - return ; + return; idx = 0; while (idx < vec->len) { diff --git a/stdme/generic_sources/src/vec_C__PREFIX___functions3.c__TEMPLATE__ b/stdme/generic_sources/src/vec_C__PREFIX___functions3.c__TEMPLATE__ new file mode 100644 index 00000000..0051d6e6 --- /dev/null +++ b/stdme/generic_sources/src/vec_C__PREFIX___functions3.c__TEMPLATE__ @@ -0,0 +1,73 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* vec_C__PREFIX__.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/30 17:59:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/30 17:59:28 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_copy.h" +#include "me/mem/mem_set_zero.h" +#include "me/types.h" +#include "me/vec/vec_C__PREFIX__.h" +#include + +t_error vec_C__PREFIX___push_front(t_vec_C__PREFIX__ *vec, + C__TYPENAME__ element) +{ + t_usize i; + + if (vec->len == 0) + return (vec_C__PREFIX___push(vec, element)); + i = vec->len - 1; + if (vec->capacity < vec->len + 1 && + vec_C__PREFIX___reserve(vec, 3 * vec->len / 2 + 1)) + return (ERROR); + while (i > 0) + { + vec->buffer[i + 1] = vec->buffer[i]; + i--; + } + vec->buffer[1] = vec->buffer[0]; + vec->buffer[0] = element; + vec->len++; + return (NO_ERROR); +} + +t_error vec_C__PREFIX___pop_front(t_vec_C__PREFIX__ *vec, C__TYPENAME__ *value) +{ + t_usize i; + + if (vec->len <= 1) + return (vec_C__PREFIX___pop(vec, value)); + i = 0; + *value = vec->buffer[0]; + vec->len--; + while (i < vec->len) + { + vec->buffer[i] = vec->buffer[i + 1]; + i++; + } + mem_set_zero(&vec->buffer[i], sizeof(*vec->buffer)); + return (NO_ERROR); +} + +void vec_C__PREFIX___reverse(t_vec_C__PREFIX__ *vec) +{ + C__TYPENAME__ temporary; + t_usize i; + + i = 0; + while (i < vec->len / 2) + { + temporary = vec->buffer[vec->len - 1 - i]; + vec->buffer[vec->len - 1 - i] = vec->buffer[i]; + vec->buffer[i] = temporary; + i++; + } +} diff --git a/stdme/generic_sources/src/vec_C__PREFIX___sort.c__TEMPLATE__ b/stdme/generic_sources/src/vec_C__PREFIX___sort.c__TEMPLATE__ new file mode 100644 index 00000000..49771e46 --- /dev/null +++ b/stdme/generic_sources/src/vec_C__PREFIX___sort.c__TEMPLATE__ @@ -0,0 +1,41 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* best_move.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/01/29 20:04:33 by maiboyer #+# #+# */ +/* Updated: 2024/01/31 14:25:00 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/types.h" +#include "me/vec/vec_C__PREFIX__.h" + +void vec_C__PREFIX___sort(t_vec_C__PREFIX__ *v, + t_vec_C__PREFIX___sort_fn is_sorted_fn) +{ + t_usize sorted_part; + t_usize i; + C__TYPENAME__ tmp; + + if (v == NULL) + return; + sorted_part = v->len; + while (sorted_part > 0) + { + i = 0; + while (i < sorted_part - 1) + { + if (!is_sorted_fn(&v->buffer[i], &v->buffer[i + 1])) + { + tmp = v->buffer[i]; + v->buffer[i] = v->buffer[i + 1]; + v->buffer[i + 1] = tmp; + } + i++; + } + sorted_part--; + } +} diff --git a/stdme/include/me/blx/blx.h b/stdme/include/me/blx/blx.h new file mode 100644 index 00000000..c64dc94f --- /dev/null +++ b/stdme/include/me/blx/blx.h @@ -0,0 +1,91 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/13 17:05:45 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 18:48:40 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef BLX_H +# define BLX_H + +# include "me/blx/blx_key.h" +# include "me/blx/colors.h" +# include "me/vec2/vec2.h" +# include "me/blx/sprite.h" +# include "me/blx/inputs.h" +# include "me/blx/points.h" +# include "me/types.h" + +typedef struct s_blx t_blx; + +typedef struct s_blx_app +{ + t_str title; + t_u32 size_x; + t_u32 size_y; + t_u32 pixel_size; + void *data; +} t_blx_app; + +typedef bool (*t_run_function)(t_blx *ctx); +typedef void (*t_free_function)(t_blx_app app); + +typedef enum e_draw_mode +{ + REPLACE, + MASK, + ALPHA, +} t_draw_mode; + +typedef struct s_blx_data +{ + t_sprite screen; + bool exit; + t_draw_mode draw_mode; + t_sprite font; +} t_blx_data; + +typedef struct s_blx +{ + void *mlx; + void *win; + t_blx_input inputs; + t_run_function func; + t_free_function free; + t_blx_app app; + t_blx_data _data; +} t_blx; + +int blx_loop_func(t_blx *ctx); +t_blx blx_initialize(t_run_function func, + t_free_function free_fn, t_blx_app data); +void draw_sprite(t_blx *app, t_vi2d pos, + t_sprite *spr); +bool is_key_pressed(t_blx *ctx, t_keysym input); +bool is_key_held(t_blx *ctx, t_keysym input); +bool is_key_released(t_blx *ctx, t_keysym input); +void blx_run(t_blx app); +void blx_free(t_blx app); +void blx_draw(t_blx *app, t_vi2d pos, t_color col); +void blx_clear(t_blx *app, t_color col); +void sprite_draw_onto(t_sprite *dest, t_vi2d pos, + t_sprite *source); +void blx_draw_string(t_blx *app, t_vi2d pos, + t_const_str s, t_color col); + +static inline t_draw_mode get_draw_mode(t_blx *app) +{ + return (app->_data.draw_mode); +} + +static inline void set_draw_mode(t_blx *app, t_draw_mode mode) +{ + app->_data.draw_mode = mode; +} + +#endif diff --git a/stdme/include/me/blx/blx_handlers.h b/stdme/include/me/blx/blx_handlers.h new file mode 100644 index 00000000..f3c6393e --- /dev/null +++ b/stdme/include/me/blx/blx_handlers.h @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx_handlers.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 17:37:50 by maiboyer #+# #+# */ +/* Updated: 2023/12/21 18:32:01 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef BLX_HANDLERS_H +# define BLX_HANDLERS_H +# include "me/blx/blx_key.h" +# include "me/types.h" + +int blx_key_pressed_handler(t_keysym keysym, t_blx *ctx); +int blx_key_released_handler(t_keysym keysym, t_blx *ctx); +int blx_key_exit_handler(t_blx *ctx); + +#endif diff --git a/stdme/include/me/blx/blx_key.h b/stdme/include/me/blx/blx_key.h new file mode 100644 index 00000000..2c2384a0 --- /dev/null +++ b/stdme/include/me/blx/blx_key.h @@ -0,0 +1,175 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx_key.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/13 18:15:50 by maiboyer #+# #+# */ +/* Updated: 2023/12/21 17:37:02 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef BLX_KEY_H +# define BLX_KEY_H + +# include "me/types.h" +# include "me/vec/vec_u8.h" + +typedef enum e_keysym +{ + KB_space = 0x0020, + KB_exclam = 0x0021, + KB_quotedbl = 0x0022, + KB_numbersign = 0x0023, + KB_dollar = 0x0024, + KB_percent = 0x0025, + KB_ampersand = 0x0026, + KB_apostrophe = 0x0027, + KB_quoteright = 0x0027, + KB_parenleft = 0x0028, + KB_parenright = 0x0029, + KB_asterisk = 0x002a, + KB_plus = 0x002b, + KB_comma = 0x002c, + KB_minus = 0x002d, + KB_period = 0x002e, + KB_slash = 0x002f, + KB_0 = 0x0030, + KB_1 = 0x0031, + KB_2 = 0x0032, + KB_3 = 0x0033, + KB_4 = 0x0034, + KB_5 = 0x0035, + KB_6 = 0x0036, + KB_7 = 0x0037, + KB_8 = 0x0038, + KB_9 = 0x0039, + KB_colon = 0x003a, + KB_semicolon = 0x003b, + KB_less = 0x003c, + KB_equal = 0x003d, + KB_greater = 0x003e, + KB_question = 0x003f, + KB_at = 0x0040, + KB_A = 0x0041, + KB_B = 0x0042, + KB_C = 0x0043, + KB_D = 0x0044, + KB_E = 0x0045, + KB_F = 0x0046, + KB_G = 0x0047, + KB_H = 0x0048, + KB_I = 0x0049, + KB_J = 0x004a, + KB_K = 0x004b, + KB_L = 0x004c, + KB_M = 0x004d, + KB_N = 0x004e, + KB_O = 0x004f, + KB_P = 0x0050, + KB_Q = 0x0051, + KB_R = 0x0052, + KB_S = 0x0053, + KB_T = 0x0054, + KB_U = 0x0055, + KB_V = 0x0056, + KB_W = 0x0057, + KB_X = 0x0058, + KB_Y = 0x0059, + KB_Z = 0x005a, + KB_bracketleft = 0x005b, + KB_backslash = 0x005c, + KB_bracketright = 0x005d, + KB_asciicircum = 0x005e, + KB_underscore = 0x005f, + KB_grave = 0x0060, + KB_quoteleft = 0x0060, + KB_a = 0x0061, + KB_b = 0x0062, + KB_c = 0x0063, + KB_d = 0x0064, + KB_e = 0x0065, + KB_f = 0x0066, + KB_g = 0x0067, + KB_h = 0x0068, + KB_i = 0x0069, + KB_j = 0x006a, + KB_k = 0x006b, + KB_l = 0x006c, + KB_m = 0x006d, + KB_n = 0x006e, + KB_o = 0x006f, + KB_p = 0x0070, + KB_q = 0x0071, + KB_r = 0x0072, + KB_s = 0x0073, + KB_t = 0x0074, + KB_u = 0x0075, + KB_v = 0x0076, + KB_w = 0x0077, + KB_x = 0x0078, + KB_y = 0x0079, + KB_z = 0x007a, + KB_braceleft = 0x007b, + KB_bar = 0x007c, + KB_braceright = 0x007d, + KB_asciitilde = 0x007e, + KB_BackSpace = 0xff08, + KB_Tab = 0xff09, + KB_Linefeed = 0xff0a, + KB_Clear = 0xff0b, + KB_Return = 0xff0d, + KB_Pause = 0xff13, + KB_Scroll_Lock = 0xff14, + KB_Sys_Req = 0xff15, + KB_Escape = 0xff1b, + KB_Delete = 0xffff, + KB_Home = 0xff50, + KB_Left = 0xff51, + KB_Up = 0xff52, + KB_Right = 0xff53, + KB_Down = 0xff54, + KB_Prior = 0xff55, + KB_Page_Up = 0xff55, + KB_Next = 0xff56, + KB_Page_Down = 0xff56, + KB_End = 0xff57, + KB_Begin = 0xff58, + KB_F1 = 0xffbe, + KB_F2 = 0xffbf, + KB_F3 = 0xffc0, + KB_F4 = 0xffc1, + KB_F5 = 0xffc2, + KB_F6 = 0xffc3, + KB_F7 = 0xffc4, + KB_F8 = 0xffc5, + KB_F9 = 0xffc6, + KB_F10 = 0xffc7, + KB_F11 = 0xffc8, + KB_F12 = 0xffc9, + KB_Shift_L = 0xffe1, + KB_Shift_R = 0xffe2, + KB_Control_L = 0xffe3, + KB_Control_R = 0xffe4, + KB_Caps_Lock = 0xffe5, + KB_Shift_Lock = 0xffe6, + KB_Meta_L = 0xffe7, + KB_Meta_R = 0xffe8, + KB_Alt_L = 0xffe9, + KB_Alt_R = 0xffea, + KB_Super_L = 0xffeb, + KB_Super_R = 0xffec, + KB_Hyper_L = 0xffed, + KB_Hyper_R = 0xffee, +} t_keysym; + +typedef struct s_blx t_blx; + +t_usize keysym_to_bit_index(t_keysym key); +bool get_key(t_vec_u8 *key_storage, t_keysym keysym); +bool is_key_pressed(t_blx *ctx, t_keysym key); +bool is_key_held(t_blx *ctx, t_keysym key); +bool is_key_released(t_blx *ctx, t_keysym key); + +#endif diff --git a/stdme/include/me/blx/colors.h b/stdme/include/me/blx/colors.h new file mode 100644 index 00000000..2dac609d --- /dev/null +++ b/stdme/include/me/blx/colors.h @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* colors.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/13 17:49:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/24 17:36:50 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef COLORS_H +# define COLORS_H + +# include "me/types.h" + +typedef __attribute__((aligned(4))) struct s_color +{ + t_u8 r; + t_u8 b; + t_u8 g; + t_u8 a; +} t_color; + +t_color new_color_with_alpha(t_u8 r, t_u8 g, t_u8 b, t_u8 alpha); +t_color new_color(t_u8 r, t_u8 g, t_u8 b); + +#endif diff --git a/other/pipex/include/me/string/inner/inner_split_literals.h b/stdme/include/me/blx/inputs.h similarity index 57% rename from other/pipex/include/me/string/inner/inner_split_literals.h rename to stdme/include/me/blx/inputs.h index 67d1912d..27001875 100644 --- a/other/pipex/include/me/string/inner/inner_split_literals.h +++ b/stdme/include/me/blx/inputs.h @@ -1,31 +1,36 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* inner_split_literals.h :+: :+: :+: */ +/* inputs.h :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 14:33:41 by maiboyer #+# #+# */ -/* Updated: 2024/01/06 18:42:41 by maiboyer ### ########.fr */ +/* Created: 2023/12/13 17:38:22 by maiboyer #+# #+# */ +/* Updated: 2023/12/21 20:15:54 by maiboyer ### ########.fr */ /* */ /* ************************************************************************** */ -#ifndef INNER_SPLIT_LITERALS_H -# define INNER_SPLIT_LITERALS_H +#ifndef INPUTS_H +# define INPUTS_H -# include "me/string/split_literals.h" # include "me/types.h" +# include "me/vec/vec_u8.h" -typedef struct s_booleans +# ifndef BLX_H + +typedef struct s_blx t_blx; + +# endif + +typedef struct s_blx_input { - bool error; - bool lit_sq; - bool lit_dq; - bool esc; - bool append; -} t_booleans; + t_vec_u8 keysyms_pressed; + t_vec_u8 keysyms_held; + t_vec_u8 keysyms_released; + t_u8 mouse; -char unescape(t_const_str s, t_usize *current_index, bool *did_escape, - t_error *error); +} t_blx_input; -#endif /* INNER_SPLIT_LITERALS_H */ +t_blx_input create_inputs_manager(t_blx *ctx); + +#endif diff --git a/other/pipex/include/me/os/pipe.h b/stdme/include/me/blx/points.h similarity index 68% rename from other/pipex/include/me/os/pipe.h rename to stdme/include/me/blx/points.h index 14cf3239..941bb617 100644 --- a/other/pipex/include/me/os/pipe.h +++ b/stdme/include/me/blx/points.h @@ -1,26 +1,24 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* pipe.h :+: :+: :+: */ +/* points.h :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 17:57:29 by maiboyer #+# #+# */ -/* Updated: 2024/01/04 17:59:30 by maiboyer ### ########.fr */ +/* Created: 2023/12/13 17:47:17 by maiboyer #+# #+# */ +/* Updated: 2023/12/13 18:14:20 by maiboyer ### ########.fr */ /* */ /* ************************************************************************** */ -#ifndef PIPE_H -# define PIPE_H +#ifndef POINTS_H +# define POINTS_H # include "me/types.h" -typedef struct s_pipe +typedef struct s_point { - t_file read; - t_file write; -} t_pipe; + t_i32 x; + t_i32 y; +} t_point; -t_error create_pipe(t_pipe *out); - -#endif /* PIPE_H */ +#endif diff --git a/stdme/include/me/blx/sprite.h b/stdme/include/me/blx/sprite.h new file mode 100644 index 00000000..ae3f0092 --- /dev/null +++ b/stdme/include/me/blx/sprite.h @@ -0,0 +1,54 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sprite.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 21:59:18 by maiboyer #+# #+# */ +/* Updated: 2024/01/05 00:09:47 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef SPRITE_H +# define SPRITE_H + +# include "me/blx/colors.h" +# include "me/types.h" +# include "me/vec2/vec2.h" + +# ifndef BLX_H + +typedef struct s_blx t_blx; + +# endif + +typedef struct s_sprite +{ + t_blx *ctx; + void *img; + t_i32 width; + t_i32 height; + t_u8 *data; + t_i32 bpp; + t_usize line_size; + bool big_endian; +} t_sprite; + +bool blx_sprite_from_xpm(t_blx *ctx, t_str path, + t_sprite *out); +bool blx_sprite_new(t_blx *ctx, t_i32 width, t_i32 height, + t_sprite *out); +void blx_sprite_free(t_sprite img); +void blx_draw_sprite_raw(t_blx *ctx, t_vi2d pos, + t_sprite *img); +void sprite_draw(t_sprite *img, t_vi2d pos, t_color col); +void sprite_clear(t_sprite *img, t_color col); +bool sprite_get_pixel(t_sprite *spr, t_vi2d pos, + t_color *out); +void sprite_draw_onto(t_sprite *dest, t_vi2d pos, + t_sprite *source); +void sprite_draw_string(t_sprite *spr, t_vi2d pos, + t_const_str sText, t_color col); + +#endif diff --git a/stdme/include/me/blx/xdata.h b/stdme/include/me/blx/xdata.h new file mode 100644 index 00000000..80a04676 --- /dev/null +++ b/stdme/include/me/blx/xdata.h @@ -0,0 +1,78 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* xdata.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 17:20:57 by maiboyer #+# #+# */ +/* Updated: 2023/12/21 20:15:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef XDATA_H +# define XDATA_H + +# define KEYPRESS 2 +# define KEYRELEASE 3 +# define BUTTONPRESS 4 +# define BUTTONRELEASE 5 +# define MOTIONNOTIFY 6 +# define ENTERNOTIFY 7 +# define LEAVENOTIFY 8 +# define FOCUSIN 9 +# define FOCUSOUT 10 +# define KEYMAPNOTIFY 11 +# define EXPOSE 12 +# define GRAPHICSEXPOSE 13 +# define NOEXPOSE 14 +# define VISIBILITYNOTIFY 15 +# define CREATENOTIFY 16 +# define DESTROYNOTIFY 17 +# define UNMAPNOTIFY 18 +# define MAPNOTIFY 19 +# define MAPREQUEST 20 +# define REPARENTNOTIFY 21 +# define CONFIGURENOTIFY 22 +# define CONFIGUREREQUEST 23 +# define GRAVITYNOTIFY 24 +# define RESIZEREQUEST 25 +# define CIRCULATENOTIFY 26 +# define CIRCULATEREQUEST 27 +# define PROPERTYNOTIFY 28 +# define SELECTIONCLEAR 29 +# define SELECTIONREQUEST 30 +# define SELECTIONNOTIFY 31 +# define COLORMAPNOTIFY 32 +# define CLIENTMESSAGE 33 +# define MAPPINGNOTIFY 34 +# define GENERICEVENT 35 + +# define NOEVENTMASK 0b0L +# define KEYPRESSMASK 0b1L +# define KEYRELEASEMASK 0b10L +# define BUTTONPRESSMASK 0b100L +# define BUTTONRELEASEMASK 0b1000L +# define ENTERWINDOWMASK 0b10000L +# define LEAVEWINDOWMASK 0b100000L +# define POINTERMOTIONMASK 0b1000000L +# define POINTERMOTIONHINTMASK 0b10000000L +# define BUTTON1MOTIONMASK 0b100000000L +# define BUTTON2MOTIONMASK 0b1000000000L +# define BUTTON3MOTIONMASK 0b10000000000L +# define BUTTON4MOTIONMASK 0b100000000000L +# define BUTTON5MOTIONMASK 0b1000000000000L +# define BUTTONMOTIONMASK 0b10000000000000L +# define KEYMAPSTATEMASK 0b100000000000000L +# define EXPOSUREMASK 0b1000000000000000L +# define VISIBILITYCHANGEMASK 0b10000000000000000L +# define STRUCTURENOTIFYMASK 0b100000000000000000L +# define RESIZEREDIRECTMASK 0b1000000000000000000L +# define SUBSTRUCTURENOTIFYMASK 0b10000000000000000000L +# define SUBSTRUCTUREREDIRECTMASK 0b100000000000000000000L +# define FOCUSCHANGEMASK 0b1000000000000000000000L +# define PROPERTYCHANGEMASK 0b10000000000000000000000L +# define COLORMAPCHANGEMASK 0b100000000000000000000000L +# define OWNERGRABBUTTONMASK 0b1000000000000000000000000L + +#endif diff --git a/stdme/include/me/buffered_str/buf_str.h b/stdme/include/me/buffered_str/buf_str.h new file mode 100644 index 00000000..6bf1092e --- /dev/null +++ b/stdme/include/me/buffered_str/buf_str.h @@ -0,0 +1,49 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* buf_str.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 17:54:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:34:29 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef BUF_STR_H +# define BUF_STR_H +# include "me/types.h" + +typedef struct s_buffer_str +{ + t_str buf; + t_usize capacity; + t_usize len; +} t_buffer_str; + +bool push_str_buffer(t_buffer_str *buf, t_const_str to_push); +bool push_str_char(t_buffer_str *buf, char to_push); +void str_clear(t_buffer_str *buf); +t_buffer_str alloc_new_buffer(t_usize capacity); + +static inline void str_free(t_buffer_str buf) +{ + void free(void *); + + free(buf.buf); +} + +static inline char str_pop(t_buffer_str *buf) +{ + char c; + + c = '\0'; + if (buf->buf && buf->len) + { + c = buf->buf[buf->len - 1]; + buf->buf[buf->len - 1] = '\0'; + } + return (c); +} + +#endif diff --git a/other/pipex/include/me/string/split_literals.h b/stdme/include/me/char/isalnum.h similarity index 67% rename from other/pipex/include/me/string/split_literals.h rename to stdme/include/me/char/isalnum.h index b8194c99..f38c8e88 100644 --- a/other/pipex/include/me/string/split_literals.h +++ b/stdme/include/me/char/isalnum.h @@ -1,21 +1,20 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* split_literals.h :+: :+: :+: */ +/* isalnum.h :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 14:31:04 by maiboyer #+# #+# */ -/* Updated: 2024/01/04 14:32:40 by maiboyer ### ########.fr */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:39:39 by maiboyer ### ########.fr */ /* */ /* ************************************************************************** */ -#ifndef SPLIT_LITERALS_H -# define SPLIT_LITERALS_H +#ifndef ISALNUM_H +# define ISALNUM_H # include "me/types.h" -# include "me/vec/vec_str.h" -t_error split_literals(t_const_str s, t_vec_str *out); +bool me_isalnum(char chr); -#endif /* SPLIT_LITERALS_H */ +#endif diff --git a/stdme/include/me/char/isalpha.h b/stdme/include/me/char/isalpha.h new file mode 100644 index 00000000..680e1971 --- /dev/null +++ b/stdme/include/me/char/isalpha.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isalpha.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:39:36 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISALPHA_H +# define ISALPHA_H + +# include "me/types.h" + +bool me_isalpha(char chr); + +#endif diff --git a/stdme/include/me/char/isascii.h b/stdme/include/me/char/isascii.h new file mode 100644 index 00000000..dfa19618 --- /dev/null +++ b/stdme/include/me/char/isascii.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isascii.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 17:51:01 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:39:33 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISASCII_H +# define ISASCII_H + +# include "me/types.h" + +bool me_isascii(char chr); + +#endif diff --git a/stdme/include/me/char/isdigit.h b/stdme/include/me/char/isdigit.h new file mode 100644 index 00000000..fbed9278 --- /dev/null +++ b/stdme/include/me/char/isdigit.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isdigit.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:41:55 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISDIGIT_H +# define ISDIGIT_H + +# include "me/types.h" + +bool me_isdigit(char chr); + +#endif diff --git a/stdme/include/me/char/islower.h b/stdme/include/me/char/islower.h new file mode 100644 index 00000000..de8eedf0 --- /dev/null +++ b/stdme/include/me/char/islower.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* islower.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:48:25 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISLOWER_H +# define ISLOWER_H + +# include "me/types.h" + +bool me_islower(char chr); + +#endif diff --git a/stdme/include/me/char/isprint.h b/stdme/include/me/char/isprint.h new file mode 100644 index 00000000..30c6b6fd --- /dev/null +++ b/stdme/include/me/char/isprint.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isprint.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:44:49 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISPRINT_H +# define ISPRINT_H + +# include "me/types.h" + +bool me_isprint(char chr); + +#endif diff --git a/stdme/include/me/char/isspace.h b/stdme/include/me/char/isspace.h new file mode 100644 index 00000000..b2aa5c52 --- /dev/null +++ b/stdme/include/me/char/isspace.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isspace.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 14:26:25 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:45:02 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISSPACE_H +# define ISSPACE_H + +# include "me/types.h" + +bool me_isspace(char chr); + +#endif diff --git a/stdme/include/me/char/isupper.h b/stdme/include/me/char/isupper.h new file mode 100644 index 00000000..4c485dde --- /dev/null +++ b/stdme/include/me/char/isupper.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isupper.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:45:16 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ISUPPER_H +# define ISUPPER_H + +# include "me/types.h" + +bool me_isupper(char chr); + +#endif diff --git a/stdme/include/me/char/tolower.h b/stdme/include/me/char/tolower.h new file mode 100644 index 00000000..764f5a4c --- /dev/null +++ b/stdme/include/me/char/tolower.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* tolower.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:47:50 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:45:33 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef TOLOWER_H +# define TOLOWER_H + +# include "me/types.h" + +bool me_tolower(char chr); + +#endif diff --git a/stdme/include/me/char/toupper.h b/stdme/include/me/char/toupper.h new file mode 100644 index 00000000..0e5a3a05 --- /dev/null +++ b/stdme/include/me/char/toupper.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* toupper.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:47:50 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:45:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef TOUPPER_H +# define TOUPPER_H + +# include "me/types.h" + +bool me_toupper(char chr); + +#endif diff --git a/stdme/include/me/convert/atoi.h b/stdme/include/me/convert/atoi.h new file mode 100644 index 00000000..1cce430c --- /dev/null +++ b/stdme/include/me/convert/atoi.h @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* atoi.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 14:14:00 by maiboyer #+# #+# */ +/* Updated: 2024/01/11 15:36:12 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ATOI_H +# define ATOI_H + +# include "me/types.h" + +t_i32 me_atoi(t_const_str str); +t_i64 me_atoi_64(t_const_str str); + +#endif diff --git a/stdme/include/me/convert/itoa.h b/stdme/include/me/convert/itoa.h new file mode 100644 index 00000000..a4afbf67 --- /dev/null +++ b/stdme/include/me/convert/itoa.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* itoa.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/03 21:05:46 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:48:37 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef ITOA_H +# define ITOA_H + +# include "me/types.h" + +t_str me_itoa(t_i32 nb); + +#endif diff --git a/stdme/include/me/convert/str_to_numbers.h b/stdme/include/me/convert/str_to_numbers.h new file mode 100644 index 00000000..9f90ddf7 --- /dev/null +++ b/stdme/include/me/convert/str_to_numbers.h @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_numbers.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:08:13 by maiboyer #+# #+# */ +/* Updated: 2024/02/02 00:22:50 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_TO_NUMBERS_H +# define STR_TO_NUMBERS_H + +# include "me/types.h" + +t_error str_to_isize(t_const_str str, t_u32 radix, t_isize *out); +t_error str_to_i64(t_const_str str, t_u32 radix, t_i64 *out); +t_error str_to_i32(t_const_str str, t_u32 radix, t_i32 *out); +t_error str_to_i16(t_const_str str, t_u32 radix, t_i16 *out); +t_error str_to_i8(t_const_str str, t_u32 radix, t_i8 *out); + +t_error str_to_usize(t_const_str str, t_u32 radix, t_usize *out); +t_error str_to_u64(t_const_str str, t_u32 radix, t_u64 *out); +t_error str_to_u32(t_const_str str, t_u32 radix, t_u32 *out); +t_error str_to_u16(t_const_str str, t_u32 radix, t_u16 *out); +t_error str_to_u8(t_const_str str, t_u32 radix, t_u8 *out); + +#endif /* STR_TO_NUMBERS_H */ diff --git a/stdme/include/me/fs/close.h b/stdme/include/me/fs/close.h new file mode 100644 index 00000000..c764d795 --- /dev/null +++ b/stdme/include/me/fs/close.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* close.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 15:56:56 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:49:22 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef CLOSE_H +# define CLOSE_H + +# include "me/types.h" + +bool me_close(t_file file, t_i32 *error); + +#endif diff --git a/stdme/include/me/fs/open.h b/stdme/include/me/fs/open.h new file mode 100644 index 00000000..1f2f8f05 --- /dev/null +++ b/stdme/include/me/fs/open.h @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* open.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:29:38 by maiboyer #+# #+# */ +/* Updated: 2024/01/05 16:43:37 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef OPEN_H +# define OPEN_H + +# include "me/types.h" + +t_error me_open(t_const_str path, bool read, bool write, t_file *file_out); +t_error me_open_truncate(t_const_str path, t_file *file_out); +t_error me_open_create(t_const_str path, t_file *file_out); + +#endif diff --git a/stdme/include/me/fs/putchar_fd.h b/stdme/include/me/fs/putchar_fd.h new file mode 100644 index 00000000..03039ac6 --- /dev/null +++ b/stdme/include/me/fs/putchar_fd.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putchar_fd.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 04:42:45 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:49:06 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef PUTCHAR_FD_H +# define PUTCHAR_FD_H + +# include "me/types.h" + +void me_putchar_fd(char chr, t_file file); + +#endif diff --git a/stdme/include/me/fs/putendl_fd.h b/stdme/include/me/fs/putendl_fd.h new file mode 100644 index 00000000..0325e1ef --- /dev/null +++ b/stdme/include/me/fs/putendl_fd.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putendl_fd.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 04:42:45 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:31:54 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef PUTENDL_FD_H +# define PUTENDL_FD_H + +# include "me/types.h" + +void me_putendl_fd(t_str str, t_file file); + +#endif \ No newline at end of file diff --git a/stdme/include/me/fs/putnbr_fd.h b/stdme/include/me/fs/putnbr_fd.h new file mode 100644 index 00000000..933e945e --- /dev/null +++ b/stdme/include/me/fs/putnbr_fd.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putnbr_fd.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 12:45:06 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:32:41 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef PUTNBR_FD_H +# define PUTNBR_FD_H + +# include "me/types.h" + +void me_putnbr_fd(t_i32 n, t_file file); + +#endif \ No newline at end of file diff --git a/stdme/include/me/fs/putstr_fd.h b/stdme/include/me/fs/putstr_fd.h new file mode 100644 index 00000000..5ada2228 --- /dev/null +++ b/stdme/include/me/fs/putstr_fd.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putstr_fd.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 04:42:45 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:35:53 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef PUTSTR_FD_H +# define PUTSTR_FD_H + +# include "me/types.h" + +void me_putstr_fd(t_str str, t_file file); + +#endif diff --git a/stdme/include/me/fs/read.h b/stdme/include/me/fs/read.h new file mode 100644 index 00000000..7fc2cd76 --- /dev/null +++ b/stdme/include/me/fs/read.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* read.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:21:19 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:37:03 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef READ_H +# define READ_H + +# include "me/types.h" + +t_usize me_read(t_file fd, t_u8 *buffer, t_i64 buffer_max, bool *eof_out); + +#endif \ No newline at end of file diff --git a/stdme/include/me/fs/read_to_vec.h b/stdme/include/me/fs/read_to_vec.h new file mode 100644 index 00000000..94375ae5 --- /dev/null +++ b/stdme/include/me/fs/read_to_vec.h @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* read_to_vec.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 18:50:37 by maiboyer #+# #+# */ +/* Updated: 2023/12/24 18:57:36 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef READ_TO_VEC_H +# define READ_TO_VEC_H + +# include "me/types.h" +# include "me/vec/vec_u8.h" + +# ifndef READ_BUFFER_SIZE +# define READ_BUFFER_SIZE 4096 +# endif + +bool read_to_vec(t_const_str path, t_vec_u8 *out); + +#endif diff --git a/stdme/include/me/fs/write.h b/stdme/include/me/fs/write.h new file mode 100644 index 00000000..66ea307e --- /dev/null +++ b/stdme/include/me/fs/write.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* write.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:27:33 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:36:48 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef WRITE_H +# define WRITE_H + +# include "me/types.h" + +bool me_write(t_file fd, t_u8 *buffer, t_i64 size); + +#endif diff --git a/stdme/include/me/gnl/gnl.h b/stdme/include/me/gnl/gnl.h new file mode 100644 index 00000000..2933c2de --- /dev/null +++ b/stdme/include/me/gnl/gnl.h @@ -0,0 +1,43 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* gnl.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/23 14:40:15 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:21:56 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef GNL_H +# define GNL_H + +# ifndef BUFFER_SIZE +# define BUFFER_SIZE 128 +# endif + +# ifndef BUFFER_LENGTH +# define BUFFER_LENGTH 512 +# endif + +# include "me/buffered_str/buf_str.h" +# include "me/types.h" + +typedef struct s_static_buffer +{ + t_file fd; + bool used; + char buf[BUFFER_SIZE + 1]; + bool init; +} t_static_buffer; + +typedef struct s_copy_flags +{ + bool error; + bool empty_read; +} t_copy_flags; + +t_buffer_str get_next_line(t_file fd, bool *error); + +#endif diff --git a/stdme/include/me/hash/hasher.h b/stdme/include/me/hash/hasher.h new file mode 100644 index 00000000..d9a9c1ca --- /dev/null +++ b/stdme/include/me/hash/hasher.h @@ -0,0 +1,52 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hasher.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/10 19:50:39 by maix #+# #+# */ +/* Updated: 2023/12/27 16:44:09 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef HASHER_H +# define HASHER_H + +# include "me/types.h" + +typedef void (*t_hash_bytes)(void *hasher, t_u8 *bytes, + t_usize count); +typedef t_u64 (*t_hasher_finish)(void *hasher); +typedef t_u64 (*t_hasher_reset_and_finish)(void *hasher); + +typedef struct s_hasher +{ + void *hasher; + t_hash_bytes hash_bytes; + t_hasher_finish finish; + t_hasher_reset_and_finish reset_and_finish; + +} t_hasher; + +void hasher_write_bytes(t_hasher *hasher, + t_u8 *bytes, t_usize count); + +void hasher_write_u8(t_hasher *hasher, t_u8 n); +void hasher_write_u16(t_hasher *hasher, t_u16 n); +void hasher_write_u32(t_hasher *hasher, t_u32 n); +void hasher_write_u64(t_hasher *hasher, t_u64 n); +void hasher_write_usize(t_hasher *hasher, t_usize n); + +void hasher_write_i8(t_hasher *hasher, t_i8 n); +void hasher_write_i16(t_hasher *hasher, t_i16 n); +void hasher_write_i32(t_hasher *hasher, t_i32 n); +void hasher_write_i64(t_hasher *hasher, t_i64 n); +void hasher_write_isize(t_hasher *hasher, t_isize n); + +void hasher_write_str(t_hasher *hasher, t_str str); + +t_u64 hasher_finish(t_hasher *hasher); +t_u64 hasher_reset_and_finish(t_hasher *hasher); + +#endif diff --git a/stdme/include/me/hash/sip.h b/stdme/include/me/hash/sip.h new file mode 100644 index 00000000..3fed3100 --- /dev/null +++ b/stdme/include/me/hash/sip.h @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sip.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/10 19:33:46 by maix #+# #+# */ +/* Updated: 2023/12/11 15:10:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef SIP_H +# define SIP_H +# include "me/hash/hasher.h" +# include "me/types.h" + +typedef struct s_sip_state +{ + t_u64 v0; + t_u64 v2; + t_u64 v1; + t_u64 v3; +} t_sip_state; + +typedef struct s_sip13 +{ + t_u64 k0; + t_u64 k1; + t_usize length; + t_u64 tail; + t_usize ntail; + t_sip_state state; +} t_sip13; + +t_hasher hasher_sip13_new(void); + +#endif diff --git a/stdme/include/me/hash/sip/sip_utils.h b/stdme/include/me/hash/sip/sip_utils.h new file mode 100644 index 00000000..2843533f --- /dev/null +++ b/stdme/include/me/hash/sip/sip_utils.h @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sip_utils.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/10 19:34:10 by maix #+# #+# */ +/* Updated: 2023/12/27 16:48:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef SIP_UTILS_H +# define SIP_UTILS_H +# include "me/hash/sip.h" +# include "me/types.h" + +void compress(t_sip_state *state); +t_sip_state create_state_with_key(t_u64 k0, t_u64 k1); +t_u64 sip13_finish(t_sip13 *hasher); +t_u64 sip13_reset_and_finish(t_sip13 *hasher); +void sip13_write_bytes(t_sip13 *self, t_u8 *msg, t_usize count); + +#endif diff --git a/stdme/include/me/img/qoi.h b/stdme/include/me/img/qoi.h new file mode 100644 index 00000000..d679be67 --- /dev/null +++ b/stdme/include/me/img/qoi.h @@ -0,0 +1,305 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 17:39:36 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 18:35:05 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +/* + +Copyright (c) 2021, Dominic Szablewski - https://phoboslab.org +SPDX-License-Identifier: MIT + + +QOI - The "Quite OK Image" format for fast, lossless image compression + +-- About + +QOI encodes and decodes images in a lossless format. Compared to stb_image and +stb_image_write QOI offers 20x-50x faster encoding, 3x-4x faster decoding and +20% better compression. + + +-- Synopsis + +// Define `QOI_IMPLEMENTATION` in *one* C/C++ file before including this +// library to create the implementation. + +#define QOI_IMPLEMENTATION +#include "qoi.h" + +// Encode and store an RGBA buffer to the file system. The t_qoi_desc describes +// the input pixel data. +qoi_write("image_new.qoi", rgba_pixels, &(t_qoi_desc){ + .width = 1920, + .height = 1080, + .channels = 4, + .colorspace = QOI_SRGB +}); + +// Load and decode a QOI image from the file system t_i32o a 32bbp RGBA buffer. +// The t_qoi_desc struct will be filled with the width, height, + number of channels +// and colorspace read from the file header. +t_qoi_desc desc; +void *rgba_pixels = qoi_read("image.qoi", &desc, 4); + + + +-- Documentation + +This library provides the following functions; +- qoi_read -- read and decode a QOI file +- qoi_decode -- decode the raw bytes of a QOI image from memory +- qoi_write -- encode and write a QOI file +- qoi_encode -- encode an rgba buffer t_i32o a QOI image in memory + +See the function declaration below for the signature and more information. + +If you don't want/need the qoi_read and qoi_write functions, you can define +QOI_NO_STDIO before including this library. + +This library uses malloc() and free(). To supply your own malloc implementation +you can define QOI_MALLOC and QOI_FREE before including this library. + +This library uses memset() to zero-initialize the index. To supply your own +implementation you can define QOI_ZEROARR before including this library. + + +-- Data Format + +A QOI file has a 14 byte header, followed by any number of data "chunks" and an +8-byte end marker. + +struct qoi_header_t { + char magic[4]; // magic bytes "qoif" + ut_i3232_t width; // image width in pixels (BE) + ut_i3232_t height; // sprite.height in pixels (BE) + ut_i328_t channels; // 3 = RGB, 4 = RGBA + ut_i328_t colorspace; // 0 = sRGB with linear alpha, 1 = all channels +linear +}; + +Images are encoded row by row, left to right, top to bottom. The decoder and +encoder start with {r: 0, g: 0, b: 0, a: 255} as the previous pixel value. An +image is complete when all pixels specified by width * height have been covered. + +Pixels are encoded as + - a run of the previous pixel + - an index t_i32o an array of previously seen pixels + - a difference to the previous pixel value in r,g,b + - full r,g,b or r,g,b,a values + +The color channels are assumed to not be premultiplied with the alpha channel +("un-premultiplied alpha"). + +A running array[64] (zero-initialized) of previously seen pixel values is +mat_i32ained by the encoder and decoder. Each pixel that is seen by the encoder +and decoder is put t_i32o this array at the position formed by a hash function +of the color value. In the encoder, if the pixel value at the index matches the +current pixel, this index position is written to the stream as QOI_OP_INDEX. +The hash function for the index is: + + index_position = (r * 3 + g * 5 + b * 7 + a * 11) % 64 + +Each chunk starts with a 2- or 8-bit tag, followed by a number of data bits. The +bit length of chunks is divisible by 8 - i.e. all chunks are byte aligned. All +values encoded in these data bits have the most significant bit on the left. + +The 8-bit tags have precedence over the 2-bit tags. A decoder must check for the +presence of an 8-bit tag first. + +The byte stream's end is marked with 7 0x00 bytes followed a single 0x01 byte. + + +The possible chunks are: + + +.- QOI_OP_INDEX ----------. +| Byte[0] | +| 7 6 5 4 3 2 1 0 | +|-------+-----------------| +| 0 0 | index | +`-------------------------` +2-bit tag b00 +6-bit index t_i32o the color index array: 0..63 + +A valid encoder must not issue 2 or more consecutive QOI_OP_INDEX chunks to the +same index. QOI_OP_RUN should be used instead. + + +.- QOI_OP_DIFF -----------. +| Byte[0] | +| 7 6 5 4 3 2 1 0 | +|-------+-----+-----+-----| +| 0 1 | dr | dg | db | +`-------------------------` +2-bit tag b01 +2-bit red channel difference from the previous pixel between -2..1 +2-bit green channel difference from the previous pixel between -2..1 +2-bit blue channel difference from the previous pixel between -2..1 + +The difference to the current channel values are using a wraparound operation, +so "1 - 2" will result in 255, while "255 + 1" will result in 0. + +Values are stored as unsigned t_i32egers with a bias of 2. E.g. -2 is stored as +0 (b00). 1 is stored as 3 (b11). + +The alpha value remains unchanged from the previous pixel. + + +.- QOI_OP_LUMA -------------------------------------. +| Byte[0] | Byte[1] | +| 7 6 5 4 3 2 1 0 | 7 6 5 4 3 2 1 0 | +|-------+-----------------+-------------+-----------| +| 1 0 | green diff | dr - dg | db - dg | +`---------------------------------------------------` +2-bit tag b10 +6-bit green channel difference from the previous pixel -32..31 +4-bit red channel difference minus green channel difference -8..7 +4-bit blue channel difference minus green channel difference -8..7 + +The green channel is used to indicate the general direction of change and is +encoded in 6 bits. The red and blue channels (dr and db) base their diffs off +of the green channel difference and are encoded in 4 bits. I.e.: + dr_dg = (cur_px.r - prev_px.r) - (cur_px.g - prev_px.g) + db_dg = (cur_px.b - prev_px.b) - (cur_px.g - prev_px.g) + +The difference to the current channel values are using a wraparound operation, +so "10 - 13" will result in 253, while "250 + 7" will result in 1. + +Values are stored as unsigned t_i32egers with a bias of 32 for the green channel +and a bias of 8 for the red and blue channel. + +The alpha value remains unchanged from the previous pixel. + + +.- QOI_OP_RUN ------------. +| Byte[0] | +| 7 6 5 4 3 2 1 0 | +|-------+-----------------| +| 1 1 | run | +`-------------------------` +2-bit tag b11 +6-bit run-length repeating the previous pixel: 1..62 + +The run-length is stored with a bias of -1. Note that the run-lengths 63 and 64 +(b111110 and b111111) are illegal as they are occupied by the QOI_OP_RGB and +QOI_OP_RGBA tags. + + +.- QOI_OP_RGB ------------------------------------------. +| Byte[0] | Byte[1] | Byte[2] | Byte[3] | +| 7 6 5 4 3 2 1 0 | 7 .. 0 | 7 .. 0 | 7 .. 0 | +|-------------------------+---------+---------+---------| +| 1 1 1 1 1 1 1 0 | red | green | blue | +`-------------------------------------------------------` +8-bit tag b11111110 +8-bit red channel value +8-bit green channel value +8-bit blue channel value + +The alpha value remains unchanged from the previous pixel. + + +.- QOI_OP_RGBA ---------------------------------------------------. +| Byte[0] | Byte[1] | Byte[2] | Byte[3] | Byte[4] | +| 7 6 5 4 3 2 1 0 | 7 .. 0 | 7 .. 0 | 7 .. 0 | 7 .. 0 | +|-------------------------+---------+---------+---------+---------| +| 1 1 1 1 1 1 1 1 | red | green | blue | alpha | +`-----------------------------------------------------------------` +8-bit tag b11111111 +8-bit red channel value +8-bit green channel value +8-bit blue channel value +8-bit alpha channel value + +*/ + +/* ----------------------------------------------------------------------------- +Header - Public functions */ + +#ifndef QOI_H +# define QOI_H + +# include "me/mem/mem_alloc.h" +# include "me/mem/mem_set_zero.h" +# include "me/types.h" +/* A pot_i32er to a t_qoi_desc struct has to be supplied to all of qoi's +functions. It describes either the input format (for qoi_write and qoi_encode), +or is filled with the description read from the file header (for qoi_read and +qoi_decode). + +The colorspace in this t_qoi_desc is an enum where + 0 = sRGB, i.e. gamma scaled RGB channels and a linear alpha channel + 1 = all channels are linear +You may use the constants QOI_SRGB or QOI_LINEAR. The colorspace is purely +informative. It will be saved to the file header, but does not affect +how chunks are en-/decoded. */ + +# define QOI_SRGB 0 +# define QOI_LINEAR 1 + +typedef struct s_t_qoi_desc +{ + t_u32 width; + t_u32 height; + t_u8 channels; + t_u8 colorspace; +} t_qoi_desc; + +# ifndef QOI_NO_STDIO + +/* Encode raw RGB or RGBA pixels t_i32o a QOI image and write it to the file +system. The t_qoi_desc struct must be filled with the image width, height, +number of channels (3 = RGB, 4 = RGBA) and the colorspace. + +The function returns 0 on failure (invalid parameters, or fopen or malloc +failed) or the number of bytes written on success. */ + +t_i32 qoi_write(t_const_str filename, const void *data, + const t_qoi_desc *desc); + +/* Read and decode a QOI image from the file system. If channels is 0, the +number of channels from the file header is used. If channels is 3 or 4 the +output format will be forced t_i32o this number of channels. + +The function either returns NULL on failure (invalid data, or malloc or fopen +failed) or a pot_i32er to the decoded pixels. On success, the t_qoi_desc struct +will be filled with the description from the file header. + +The returned pixel data should be free()d after use. */ + +void *qoi_read(t_const_str filename, t_qoi_desc *desc, + t_i32 channels); + +# endif /* QOI_NO_STDIO */ + +/* Encode raw RGB or RGBA pixels t_i32o a QOI image in memory. + +The function either returns NULL on failure (invalid parameters or malloc +failed) or a pot_i32er to the encoded data on success. On success the out_len +is set to the size in bytes of the encoded data. + +The returned qoi data should be free()d after use. */ + +void *qoi_encode(const void *data, const t_qoi_desc *desc, + t_i32 *out_len); + +/* Decode a QOI image from memory. + +The function either returns NULL on failure (invalid parameters or malloc +failed) or a pot_i32er to the decoded pixels. On success, the t_qoi_desc struct +is filled with the description from the file header. + +The returned pixel data should be free()d after use. */ + +void *qoi_decode(const void *data, t_i32 size, t_qoi_desc *desc, + t_i32 channels); + +#endif /* QOI_H */ diff --git a/stdme/include/me/img/qoi/qoi_decode.h b/stdme/include/me/img/qoi/qoi_decode.h new file mode 100644 index 00000000..d11ebe9b --- /dev/null +++ b/stdme/include/me/img/qoi/qoi_decode.h @@ -0,0 +1,86 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_decode.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/25 22:33:19 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 22:58:27 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef QOI_DECODE_H +# define QOI_DECODE_H + +# include "me/img/qoi.h" +# include "me/img/qoi/qoi_utils.h" + +typedef struct s_decode_vals +{ + t_i32 px_len; + t_i32 chunks_len; + t_i32 px_pos; + t_i32 p; + t_i32 run; + t_i32 b1; + t_i32 b2; + t_i32 vg; + t_u32 header_magic; + t_qoi_rgba index[64]; + t_qoi_rgba px; + +} t_decode_vals; + +static inline void qoi_op_luma_decode(t_decode_vals *vals, const t_u8 *bytes) +{ + vals->b2 = bytes[vals->p++]; + vals->vg = (vals->b1 & 0x3f) - 32; + vals->px.rgba.r += vals->vg - 8 + ((vals->b2 >> 4) & 0x0f); + vals->px.rgba.g += vals->vg; + vals->px.rgba.b += vals->vg - 8 + (vals->b2 & 0x0f); +} + +static inline void qoi_op_diff_decode(t_decode_vals *vals, const t_u8 *bytes) +{ + (void)(bytes); + vals->px.rgba.r += ((vals->b1 >> 4) & 0x03) - 2; + vals->px.rgba.g += ((vals->b1 >> 2) & 0x03) - 2; + vals->px.rgba.b += (vals->b1 & 0x03) - 2; +} + +static inline void qoi_op_rgba_decode(t_decode_vals *vals, const t_u8 *bytes) +{ + vals->px.rgba.r = bytes[vals->p++]; + vals->px.rgba.g = bytes[vals->p++]; + vals->px.rgba.b = bytes[vals->p++]; + vals->px.rgba.a = bytes[vals->p++]; +} + +static inline void qoi_op_rgb_decode(t_decode_vals *vals, const t_u8 *bytes) +{ + vals->px.rgba.r = bytes[vals->p++]; + vals->px.rgba.g = bytes[vals->p++]; + vals->px.rgba.b = bytes[vals->p++]; +} + +static inline void qoi_decode_inner_inner(t_decode_vals *vals, \ + const t_u8 *bytes) +{ + vals->b1 = bytes[vals->p++]; + if (vals->b1 == QOI_OP_RGB) + qoi_op_rgb_decode(vals, bytes); + else if (vals->b1 == QOI_OP_RGBA) + qoi_op_rgba_decode(vals, bytes); + else if ((vals->b1 & QOI_MASK_2) == QOI_OP_INDEX) + vals->px = vals->index[vals->b1]; + else if ((vals->b1 & QOI_MASK_2) == QOI_OP_DIFF) + qoi_op_diff_decode(vals, bytes); + else if ((vals->b1 & QOI_MASK_2) == QOI_OP_LUMA) + qoi_op_luma_decode(vals, bytes); + else if ((vals->b1 & QOI_MASK_2) == QOI_OP_RUN) + vals->run = (vals->b1 & 0x3f); + vals->index[qoi_color_hash(vals->px) % 64] = vals->px; +} + +#endif /* QOI_DECODE_H */ diff --git a/stdme/include/me/img/qoi/qoi_encode.h b/stdme/include/me/img/qoi/qoi_encode.h new file mode 100644 index 00000000..bea2a222 --- /dev/null +++ b/stdme/include/me/img/qoi/qoi_encode.h @@ -0,0 +1,155 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_encode.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/25 22:36:06 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 22:56:36 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef QOI_ENCODE_H +# define QOI_ENCODE_H + +# include "me/img/qoi.h" +# include "me/img/qoi/qoi_utils.h" + +typedef struct s_encode_vals +{ + t_i32 i; + t_i32 max_size; + t_i32 p; + t_i32 run; + t_i32 px_len; + t_i32 px_end; + t_i32 px_pos; + t_i32 channels; + t_i32 index_pos; + t_qoi_rgba index[64]; + t_qoi_rgba px; + t_qoi_rgba px_prev; +} t_encode_vals; + +typedef struct s_v +{ + t_i8 r; + t_i8 g; + t_i8 b; + t_i8 g_r; + t_i8 g_b; +} t_v; + +static inline void qoi_encode_if_thingy1(t_encode_vals *vals, + t_v *v, t_u8 *bytes) +{ + v->r = vals->px.rgba.r - vals->px_prev.rgba.r; + v->g = vals->px.rgba.g - vals->px_prev.rgba.g; + v->b = vals->px.rgba.b - vals->px_prev.rgba.b; + v->g_r = v->r - v->g; + v->g_b = v->b - v->g; + if (v->r > -3 && v->r < 2 && v->g > -3 && v->g < 2 && v->b > -3 + && v->b < 2) + bytes[vals->p++] = QOI_OP_DIFF | (v->r + 2) << 4 | (v->g + + 2) << 2 | (v->b + 2); + else if (v->g_r > -9 && v->g_r < 8 && v->g > -33 && v->g < 32 + && v->g_b > -9 && v->g_b < 8) + { + bytes[vals->p++] = QOI_OP_LUMA | (v->g + 32); + bytes[vals->p++] = (v->g_r + 8) << 4 | (v->g_b + 8); + } + else + { + bytes[vals->p++] = QOI_OP_RGB; + bytes[vals->p++] = vals->px.rgba.r; + bytes[vals->p++] = vals->px.rgba.g; + bytes[vals->p++] = vals->px.rgba.b; + } +} + +static inline void qoi_encode_inner_inner_inner(t_encode_vals *vals, + t_v *v, t_u8 *bytes) +{ + if (vals->run > 0) + { + bytes[vals->p++] = QOI_OP_RUN | (vals->run - 1); + vals->run = 0; + } + vals->index_pos = qoi_color_hash(vals->px) % 64; + if (vals->index[vals->index_pos].v == vals->px.v) + bytes[vals->p++] = QOI_OP_INDEX | vals->index_pos; + else + { + vals->index[vals->index_pos] = vals->px; + if (vals->px.rgba.a == vals->px_prev.rgba.a) + qoi_encode_if_thingy1(vals, v, bytes); + else + { + bytes[vals->p++] = QOI_OP_RGBA; + bytes[vals->p++] = vals->px.rgba.r; + bytes[vals->p++] = vals->px.rgba.g; + bytes[vals->p++] = vals->px.rgba.b; + bytes[vals->p++] = vals->px.rgba.a; + } + } +} + +static inline void qoi_encode_inner_inner(t_encode_vals *vals, + const t_u8 *pixels, t_u8 *bytes) +{ + t_v v; + + v = (t_v){0}; + while (vals->px_pos < vals->px_len) + { + vals->px.rgba.r = pixels[vals->px_pos + 0]; + vals->px.rgba.g = pixels[vals->px_pos + 1]; + vals->px.rgba.b = pixels[vals->px_pos + 2]; + if (vals->channels == 4) + vals->px.rgba.a = pixels[vals->px_pos + 3]; + if (vals->px.v == vals->px_prev.v) + { + vals->run++; + if (vals->run == 62 || vals->px_pos == vals->px_end) + { + bytes[vals->p++] = QOI_OP_RUN | (vals->run - 1); + vals->run = 0; + } + } + else + qoi_encode_inner_inner_inner(vals, &v, bytes); + vals->px_prev = vals->px; + vals->px_pos += vals->channels; + } +} + +static inline void *qoi_encode_inner(t_encode_vals *vals, + const t_qoi_desc *desc, + const t_u8 *pixels, t_i32 *out_len) +{ + t_u8 *bytes; + + bytes = (t_u8 *)mem_alloc(vals->max_size); + if (!bytes) + return (NULL); + qoi_write_32(bytes, &vals->p, QOI_MAGIC); + qoi_write_32(bytes, &vals->p, desc->width); + qoi_write_32(bytes, &vals->p, desc->height); + bytes[vals->p++] = desc->channels; + bytes[vals->p++] = desc->colorspace; + mem_set_zero(vals->index, sizeof(vals->index)); + vals->px_prev.rgba.a = 255; + vals->px = vals->px_prev; + vals->px_len = desc->width * desc->height * desc->channels; + vals->px_end = vals->px_len - desc->channels; + vals->channels = desc->channels; + qoi_encode_inner_inner(vals, pixels, bytes); + vals->i = 0; + while (vals->i < (t_i32) sizeof(t_u8[8])) + bytes[vals->p++] = ((t_u8[8]){0, 0, 0, 0, 0, 0, 0, 1})[vals->i++]; + *out_len = vals->p; + return (bytes); +} + +#endif /* QOI_ENCODE_H */ diff --git a/stdme/include/me/img/qoi/qoi_utils.h b/stdme/include/me/img/qoi/qoi_utils.h new file mode 100644 index 00000000..543296ba --- /dev/null +++ b/stdme/include/me/img/qoi/qoi_utils.h @@ -0,0 +1,56 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_utils.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 18:59:56 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 22:33:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef QOI_UTILS_H +# define QOI_UTILS_H + +# include "me/img/qoi.h" +# include "me/types.h" + +# define QOI_OP_INDEX 0x00 /* 00xxxxxx */ +# define QOI_OP_DIFF 0x40 /* 01xxxxxx */ +# define QOI_OP_LUMA 0x80 /* 10xxxxxx */ +# define QOI_OP_RUN 0xc0 /* 11xxxxxx */ +# define QOI_OP_RGB 0xfe /* 11111110 */ +# define QOI_OP_RGBA 0xff /* 11111111 */ +# define QOI_MASK_2 0xc0 /* 11000000 */ +# define QOI_MAGIC 0x716f6966u +//(((t_u32)'q') << 24 | ((t_u32)'o') << 16 | ((t_u32)'i') << 8 | ((t_u32)'f')) +# define QOI_HEADER_SIZE 14 +/* 2GB is the max file size that this implementation can safely handle. We guard +against anything larger than that, assuming the worst case with 5 bytes per +pixel, rounded down to a nice clean value. 400 million pixels ought to be +enough for anybody. */ +# define QOI_PIXELS_MAX 400000000u + +typedef union u_qoi_rgba +{ + struct s_qoi_rgba + { + t_u8 r; + t_u8 g; + t_u8 b; + t_u8 a; + } rgba; + t_u32 v; +} t_qoi_rgba; + +void qoi_write_32(t_u8 *bytes, t_i32 *p, t_u32 v); + +t_u32 qoi_read_32(const t_u8 *bytes, t_i32 *p); + +static inline t_u32 qoi_color_hash(t_qoi_rgba c) +{ + return (c.rgba.r * 3 + c.rgba.g * 5 + c.rgba.b * 7 + c.rgba.a * 11); +} + +#endif /* QOI_UTILS_H */ diff --git a/stdme/include/me/list/list_add_back.h b/stdme/include/me/list/list_add_back.h new file mode 100644 index 00000000..97dd2ef3 --- /dev/null +++ b/stdme/include/me/list/list_add_back.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_add_back.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:38:45 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:27:56 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_ADD_BACK_H +# define LIST_ADD_BACK_H + +# include "me/types.h" + +void list_add_back(t_list **list, t_list *new); + +#endif diff --git a/stdme/include/me/list/list_add_front.h b/stdme/include/me/list/list_add_front.h new file mode 100644 index 00000000..8cc7fbc9 --- /dev/null +++ b/stdme/include/me/list/list_add_front.h @@ -0,0 +1,19 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_add_front.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:15:23 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:28:15 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_ADD_FRONT_H +# define LIST_ADD_FRONT_H + +# include "me/types.h" + +void list_add_front(t_list **lst, t_list *new); +#endif \ No newline at end of file diff --git a/stdme/include/me/list/list_alloc_node.h b/stdme/include/me/list/list_alloc_node.h new file mode 100644 index 00000000..a84fb050 --- /dev/null +++ b/stdme/include/me/list/list_alloc_node.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_alloc_node.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 19:57:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:28:30 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_ALLOC_NODE_H +# define LIST_ALLOC_NODE_H + +# include "me/types.h" + +t_list *list_alloc_node(void *content); + +#endif diff --git a/stdme/include/me/list/list_free_all.h b/stdme/include/me/list/list_free_all.h new file mode 100644 index 00000000..151eb5f1 --- /dev/null +++ b/stdme/include/me/list/list_free_all.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_free_all.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:35:20 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:28:47 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_FREE_ALL_H +# define LIST_FREE_ALL_H + +# include "me/types.h" + +void list_free_all(t_list **lst, void (*del)(void *)); + +#endif diff --git a/stdme/include/me/list/list_free_one.h b/stdme/include/me/list/list_free_one.h new file mode 100644 index 00000000..cac9897b --- /dev/null +++ b/stdme/include/me/list/list_free_one.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_free_one.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:30:20 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:29:15 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_FREE_ONE_H +# define LIST_FREE_ONE_H + +# include "me/types.h" + +void list_free_one(t_list *lst, void (*del)(void *)); + +#endif diff --git a/stdme/include/me/list/list_get_last.h b/stdme/include/me/list/list_get_last.h new file mode 100644 index 00000000..b0172ee2 --- /dev/null +++ b/stdme/include/me/list/list_get_last.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_get_last.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:37:08 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:29:37 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_GET_LAST_H +# define LIST_GET_LAST_H + +# include "me/types.h" + +t_list *list_get_last(t_list *list); + +#endif \ No newline at end of file diff --git a/stdme/include/me/list/list_iter.h b/stdme/include/me/list/list_iter.h new file mode 100644 index 00000000..1dc5c0bf --- /dev/null +++ b/stdme/include/me/list/list_iter.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_iter.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:39:05 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:29:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_ITER_H +# define LIST_ITER_H + +# include "me/types.h" + +void list_iter(t_list *list, void (*f)(void *)); + +#endif diff --git a/stdme/include/me/list/list_map.h b/stdme/include/me/list/list_map.h new file mode 100644 index 00000000..996f6720 --- /dev/null +++ b/stdme/include/me/list/list_map.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_map.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:40:24 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:30:08 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_MAP_H +# define LIST_MAP_H + +# include "me/types.h" + +t_list *list_map(t_list *lst, void *(*f)(void *), void (*del)(void *)); + +#endif \ No newline at end of file diff --git a/stdme/include/me/list/list_size.h b/stdme/include/me/list/list_size.h new file mode 100644 index 00000000..758131e1 --- /dev/null +++ b/stdme/include/me/list/list_size.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_size.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:23:19 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:30:23 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIST_SIZE_H +# define LIST_SIZE_H + +# include "me/types.h" + +t_usize list_size(t_list *lst); + +#endif diff --git a/stdme/include/me/mem/mem_alloc.h b/stdme/include/me/mem/mem_alloc.h new file mode 100644 index 00000000..1afc6fb5 --- /dev/null +++ b/stdme/include/me/mem/mem_alloc.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_alloc.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/06 14:47:49 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:41:31 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_ALLOC_H +# define MEM_ALLOC_H + +# include "me/types.h" + +void *mem_alloc(t_usize size); + +#endif diff --git a/stdme/include/me/mem/mem_alloc_array.h b/stdme/include/me/mem/mem_alloc_array.h new file mode 100644 index 00000000..2979ef32 --- /dev/null +++ b/stdme/include/me/mem/mem_alloc_array.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_alloc_array.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 15:53:21 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:19:45 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_ALLOC_ARRAY_H +# define MEM_ALLOC_ARRAY_H + +# include "me/types.h" + +void *mem_alloc_array(t_usize item_count, t_usize item_size); + +#endif diff --git a/stdme/include/me/mem/mem_compare.h b/stdme/include/me/mem/mem_compare.h new file mode 100644 index 00000000..1ae3c3e8 --- /dev/null +++ b/stdme/include/me/mem/mem_compare.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_compare.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:21:14 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_COMPARE_H +# define MEM_COMPARE_H + +# include "me/types.h" + +t_i32 mem_compare(const void *lhs, const void *rhs, t_usize count); + +#endif \ No newline at end of file diff --git a/stdme/include/me/mem/mem_copy.h b/stdme/include/me/mem/mem_copy.h new file mode 100644 index 00000000..59d71245 --- /dev/null +++ b/stdme/include/me/mem/mem_copy.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_copy.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:21:31 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_COPY_H +# define MEM_COPY_H + +# include "me/types.h" + +void *mem_copy(void *destination, const void *source, t_usize count); + +#endif \ No newline at end of file diff --git a/stdme/include/me/mem/mem_find.h b/stdme/include/me/mem/mem_find.h new file mode 100644 index 00000000..048d844e --- /dev/null +++ b/stdme/include/me/mem/mem_find.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_find.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:24:03 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_FIND_H +# define MEM_FIND_H + +# include "me/types.h" + +void *mem_find(void *buf, t_u8 find, t_usize count); + +#endif \ No newline at end of file diff --git a/stdme/include/me/mem/mem_find_bytes.h b/stdme/include/me/mem/mem_find_bytes.h new file mode 100644 index 00000000..5f220b61 --- /dev/null +++ b/stdme/include/me/mem/mem_find_bytes.h @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_find_bytes.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2024/01/06 18:24:04 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_FIND_BYTES_H +# define MEM_FIND_BYTES_H + +# include "me/types.h" + +void *mem_find_bytes(void *buf, t_u8 *find, t_usize find_count, + t_usize count); + +#endif diff --git a/stdme/include/me/mem/mem_move.h b/stdme/include/me/mem/mem_move.h new file mode 100644 index 00000000..b2bce61a --- /dev/null +++ b/stdme/include/me/mem/mem_move.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_move.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:24:26 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_MOVE_H +# define MEM_MOVE_H + +# include "me/types.h" + +void *mem_move(void *destination, const void *source, t_usize count); + +#endif \ No newline at end of file diff --git a/stdme/include/me/mem/mem_set.h b/stdme/include/me/mem/mem_set.h new file mode 100644 index 00000000..c6702a1f --- /dev/null +++ b/stdme/include/me/mem/mem_set.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_set.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:25:19 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_SET_H +# define MEM_SET_H + +# include "me/types.h" + +void mem_set(void *buf, t_u8 byte, t_usize count); + +#endif \ No newline at end of file diff --git a/stdme/include/me/mem/mem_set_zero.h b/stdme/include/me/mem/mem_set_zero.h new file mode 100644 index 00000000..dc38393f --- /dev/null +++ b/stdme/include/me/mem/mem_set_zero.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_set_zero.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:58:11 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:24:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MEM_SET_ZERO_H +# define MEM_SET_ZERO_H + +# include "me/types.h" + +void mem_set_zero(void *buf, t_usize count); + +#endif \ No newline at end of file diff --git a/stdme/include/me/num/u16.h b/stdme/include/me/num/u16.h new file mode 100644 index 00000000..e2791fde --- /dev/null +++ b/stdme/include/me/num/u16.h @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* u16.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:10:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:16:58 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef U16_H +# define U16_H + +# include "me/types.h" + +t_u16 u16_rotate_left(t_u16 n, t_usize by); +t_u16 u16_rotate_right(t_u16 n, t_usize by); + +#endif diff --git a/stdme/include/me/num/u32.h b/stdme/include/me/num/u32.h new file mode 100644 index 00000000..4eab4f83 --- /dev/null +++ b/stdme/include/me/num/u32.h @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* u32.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:10:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:17:08 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef U32_H +# define U32_H + +# include "me/types.h" + +t_u32 u32_rotate_left(t_u32 n, t_usize by); +t_u32 u32_rotate_right(t_u32 n, t_usize by); + +#endif diff --git a/stdme/include/me/num/u64.h b/stdme/include/me/num/u64.h new file mode 100644 index 00000000..5ff21379 --- /dev/null +++ b/stdme/include/me/num/u64.h @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* u64.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:10:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 17:59:34 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef U64_H +# define U64_H + +# include "me/types.h" + +t_u64 u64_rotate_left(t_u64 n, t_usize by); +t_u64 u64_rotate_right(t_u64 n, t_usize by); + +t_u64 u64_from_7bytes(t_u8 *bytes, t_usize start, t_usize len); +t_u64 u64_from_bytes(t_u8 *bytes, t_usize len); + +#endif diff --git a/stdme/include/me/num/u8.h b/stdme/include/me/num/u8.h new file mode 100644 index 00000000..fb254aea --- /dev/null +++ b/stdme/include/me/num/u8.h @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* u8.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:10:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:17:24 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef U8_H +# define U8_H + +# include "me/types.h" + +t_u8 u8_rotate_left(t_u8 n, t_usize by); +t_u8 u8_rotate_right(t_u8 n, t_usize by); + +#endif diff --git a/stdme/include/me/num/usize.h b/stdme/include/me/num/usize.h new file mode 100644 index 00000000..2c9cc6b0 --- /dev/null +++ b/stdme/include/me/num/usize.h @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* usize.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:10:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:17:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef USIZE_H +# define USIZE_H + +# include "me/types.h" + +t_usize usize_rotate_left(t_usize n, t_usize by); +t_usize usize_rotate_right(t_usize n, t_usize by); + +#endif diff --git a/stdme/include/me/printf/formatter/formatter.h b/stdme/include/me/printf/formatter/formatter.h new file mode 100644 index 00000000..67346c59 --- /dev/null +++ b/stdme/include/me/printf/formatter/formatter.h @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* formatter.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:18:19 by maiboyer #+# #+# */ +/* Updated: 2023/11/18 19:11:23 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef FORMATTER_H +# define FORMATTER_H +# include "me/printf/printf.h" +# include "me/types.h" + +void printf_x_low(t_printf_arg data, t_printf_func f); +void printf_x_up(t_printf_arg data, t_printf_func f); +void printf_o(t_printf_arg data, t_printf_func f); +void printf_d(t_printf_arg data, t_printf_func f); +void printf_u(t_printf_arg data, t_printf_func f); +void printf_c(t_printf_arg data, t_printf_func f); +void printf_s(t_printf_arg data, t_printf_func f); +void printf_p(t_printf_arg data, t_printf_func f); + +#endif diff --git a/stdme/include/me/printf/formatter/utils.h b/stdme/include/me/printf/formatter/utils.h new file mode 100644 index 00000000..150d5aaa --- /dev/null +++ b/stdme/include/me/printf/formatter/utils.h @@ -0,0 +1,76 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* utils.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 17:58:41 by maiboyer #+# #+# */ +/* Updated: 2023/12/01 21:24:21 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef UTILS_H +# define UTILS_H + +# include "me/printf/matchers/matchers.h" +# include "me/printf/printf.h" +# include "me/types.h" +# include + +typedef struct s_prec_strs +{ + t_str *out; + t_str *pretty; + bool free_out; +} t_prec_strs; + +typedef struct s_pad_and_stuff_args +{ + t_usize fill_zero; + t_usize fill; + t_usize len; + t_usize pretty_len; + t_usize sign_len; + t_str pretty; + t_str str; + t_str sign; + bool allow_zero_fill; + +} t_pad_and_stuff_args; +typedef struct s_pad_inner_args +{ + void *p_args; + t_usize fmt_len; + t_printf_func f; + va_list *arguments; + t_matcher_list *matchers; +} t_pad_inner_args; + +void set_var_for_pad_and_stuff(t_pad_and_stuff_args *a, + t_printf_arg *d); +void print_with_func(t_pad_and_stuff_args *a, t_printf_arg *d, + t_printf_func f, t_const_str t); +void pad_and_stuff(t_pad_and_stuff_args a, t_printf_arg d, + t_printf_func f); +void handle_prec_and_align(t_const_str fmt, t_usize *c_idx, + t_printf_arg *c_arg); +bool handle_atoi_stuff(t_const_str fmt, t_usize *c_idx, + t_usize *nxt, t_printf_arg *c_arg); +void set_params2(t_const_str fmt, t_usize *c_idx, t_usize *nxt, + t_printf_arg *c_arg); +bool set_params(t_const_str fmt, t_usize *c_idx, t_usize *nxt, + t_printf_arg *c_arg); +void ret_reset(t_usize *c_idx, t_usize *nxt, t_const_str fmt); +t_printf_arg print_substr(t_usize *c_idx, t_usize *nxt, t_const_str fmt, + t_pad_inner_args extra); +void pad_inner(t_const_str fmt, t_usize *c_idx, t_usize *nxt, + t_pad_inner_args extra); +void advance_atoi(t_const_str fmt, t_usize *idx); +void me_printf_str_inner(t_const_str fmt, t_printf_func f, + va_list *arguments, void *p_args); +void print_sign_if_needed(t_pad_and_stuff_args a, t_printf_arg d, + t_printf_func f); +void handle_weird_precision_stuff(t_printf_arg *data, + t_prec_strs strs, t_usize value); +#endif diff --git a/stdme/include/me/printf/matchers/matchers.h b/stdme/include/me/printf/matchers/matchers.h new file mode 100644 index 00000000..7dc4239c --- /dev/null +++ b/stdme/include/me/printf/matchers/matchers.h @@ -0,0 +1,52 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* matchers.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:09:07 by maiboyer #+# #+# */ +/* Updated: 2023/11/18 18:10:33 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MATCHERS_H +# define MATCHERS_H + +# include "me/printf/printf.h" +# include "me/types.h" +# include +# define PRINTF_BUFFER_CHUNK 20 + +typedef struct s_matcher_tmp +{ + char chr_val; + t_i64 i64_val; + t_u64 u64_val; +} t_matcher_tmp_val; + +typedef void (*t_matcher_func)(t_printf_arg data, + t_printf_func f); +typedef struct s_matcher +{ + t_const_str matcher; + t_usize matcher_len; + t_printf_type arg_type; + t_matcher_func f; +} t_matcher; + +typedef struct s_matcher_list +{ + t_matcher data[PRINTF_BUFFER_CHUNK]; + struct s_matcher_list *next; +} t_matcher_list; + +t_matcher_list *get_matchers(void); +bool insert_matcher(t_matcher matcher); +t_matcher *find_matcher(t_const_str fmt, + t_matcher_list *matchers, t_usize *c_idx); +void call_matcher(t_matcher *matcher, + t_printf_arg matcher_arguments, va_list args, + t_printf_func f); + +#endif diff --git a/stdme/include/me/printf/printf.h b/stdme/include/me/printf/printf.h new file mode 100644 index 00000000..f12bbd60 --- /dev/null +++ b/stdme/include/me/printf/printf.h @@ -0,0 +1,69 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* printf.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:10:27 by maiboyer #+# #+# */ +/* Updated: 2024/02/09 15:06:53 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef PRINTF_H + +# define PRINTF_H +# include "me/types.h" +# include + +typedef struct s_fprintf_arg +{ + t_usize total_print; + t_file fd; +} t_fprintf_arg; + +typedef enum e_printf_flags +{ + PRECISION = 1 << 1, + ALIGN = 1 << 2, + ZERO_ALIGN = 1 << 3, + SIGN = 1 << 4, +} t_printf_flags; + +typedef enum e_printf_type +{ + CHAR = 1 << 0, + STR = 1 << 1, + U64 = 1 << 2, + I64 = 1 << 3, + VOID_PTR = 1 << 4, + I32 = 1 << 5, + U32 = 1 << 6, +} t_printf_type; + +typedef struct s_printf_extra_args +{ + t_u64 precision; + t_u64 align; + bool left_align; + bool space_align; + bool pretty; +} t_printf_extra_args; + +typedef struct s_printf_args +{ + void *argument; + void *p_args; + t_printf_extra_args extra; + t_printf_flags flags; +} t_printf_arg; + +typedef void (*t_printf_func)(t_const_str to_write, + t_usize to_write_len, void *p_args); + +t_usize me_printf(t_const_str fmt, ...); +t_usize me_eprintf(t_const_str fmt, ...); +t_usize me_vprintf(t_const_str fmt, va_list *args); +t_usize me_veprintf(t_const_str fmt, va_list *args); + +#endif diff --git a/stdme/include/me/string/str_clone.h b/stdme/include/me/string/str_clone.h new file mode 100644 index 00000000..a1523165 --- /dev/null +++ b/stdme/include/me/string/str_clone.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_clone.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 16:05:48 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 17:30:19 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_CLONE_H +# define STR_CLONE_H + +# include "me/types.h" + +t_str str_clone(t_const_str source); + +#endif diff --git a/stdme/include/me/string/str_find_chr.h b/stdme/include/me/string/str_find_chr.h new file mode 100644 index 00000000..0c583d6f --- /dev/null +++ b/stdme/include/me/string/str_find_chr.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_find_chr.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 17:29:13 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:07:01 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_FIND_CHR_H +# define STR_FIND_CHR_H + +# include "me/types.h" + +char *str_find_chr(t_const_str str, char chr); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_find_rev_chr.h b/stdme/include/me/string/str_find_rev_chr.h new file mode 100644 index 00000000..5dcd107e --- /dev/null +++ b/stdme/include/me/string/str_find_rev_chr.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_find_rev_chr.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 17:29:13 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:07:15 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_FIND_REV_CHR_H +# define STR_FIND_REV_CHR_H + +# include "me/types.h" + +char *str_find_rev_chr(t_const_str str, char chr); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_find_str.h b/stdme/include/me/string/str_find_str.h new file mode 100644 index 00000000..30bd878e --- /dev/null +++ b/stdme/include/me/string/str_find_str.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_find_str.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/10 11:11:01 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:53:44 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_FIND_STR_H +# define STR_FIND_STR_H + +# include "me/types.h" + +const char *str_find_str(t_const_str str, t_const_str to_find); + +#endif diff --git a/stdme/include/me/string/str_iter.h b/stdme/include/me/string/str_iter.h new file mode 100644 index 00000000..e9bf1f53 --- /dev/null +++ b/stdme/include/me/string/str_iter.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_iter.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 18:26:00 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:08:09 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_ITER_H +# define STR_ITER_H + +# include "me/types.h" + +void str_iter(t_str s, void (*f)(t_usize, char *)); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_join.h b/stdme/include/me/string/str_join.h new file mode 100644 index 00000000..408eb2ca --- /dev/null +++ b/stdme/include/me/string/str_join.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_join.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/07 23:02:58 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:08:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_JOIN_H +# define STR_JOIN_H + +# include "me/types.h" + +t_str str_join(t_const_str s1, t_const_str s2); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_l_cat.h b/stdme/include/me/string/str_l_cat.h new file mode 100644 index 00000000..fa752cbd --- /dev/null +++ b/stdme/include/me/string/str_l_cat.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_l_cat.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/09 18:01:09 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:09:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_L_CAT_H +# define STR_L_CAT_H + +# include "me/types.h" + +t_usize str_l_cat(t_str dest, t_const_str src, t_usize buffer_size); + +#endif diff --git a/stdme/include/me/string/str_l_copy.h b/stdme/include/me/string/str_l_copy.h new file mode 100644 index 00000000..a75fbb45 --- /dev/null +++ b/stdme/include/me/string/str_l_copy.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_l_copy.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/09 18:01:09 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:09:38 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_L_COPY_H +# define STR_L_COPY_H + +# include "me/types.h" + +t_usize str_l_copy(t_str dest, t_const_str src, t_usize buffer_size); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_len.h b/stdme/include/me/string/str_len.h new file mode 100644 index 00000000..a1dddf32 --- /dev/null +++ b/stdme/include/me/string/str_len.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_len.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 17:07:41 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 16:08:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_LEN_H +# define STR_LEN_H + +# include "me/types.h" + +t_usize str_len(t_const_str str); + +#endif diff --git a/stdme/include/me/string/str_map.h b/stdme/include/me/string/str_map.h new file mode 100644 index 00000000..a64e3d2d --- /dev/null +++ b/stdme/include/me/string/str_map.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_map.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 18:26:00 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:11:40 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_MAP_H +# define STR_MAP_H + +# include "me/types.h" + +t_str str_map(t_const_str s, char (*f)(t_usize, char)); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_n_compare.h b/stdme/include/me/string/str_n_compare.h new file mode 100644 index 00000000..c07c04f5 --- /dev/null +++ b/stdme/include/me/string/str_n_compare.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_n_compare.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 18:53:47 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:17:14 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_N_COMPARE_H +# define STR_N_COMPARE_H + +# include "me/types.h" + +t_i32 str_n_compare(t_const_str lhs, t_const_str rhs, t_usize n); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_n_find_str.h b/stdme/include/me/string/str_n_find_str.h new file mode 100644 index 00000000..eea578b9 --- /dev/null +++ b/stdme/include/me/string/str_n_find_str.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_n_find_str.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/10 11:11:01 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:53:35 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_N_FIND_STR_H +# define STR_N_FIND_STR_H + +# include "me/types.h" + +const char *str_n_find_str(t_const_str str, t_const_str to_find, t_usize len); + +#endif diff --git a/stdme/include/me/string/str_split.h b/stdme/include/me/string/str_split.h new file mode 100644 index 00000000..578f1dd0 --- /dev/null +++ b/stdme/include/me/string/str_split.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_split.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/17 15:56:59 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:18:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_SPLIT_H +# define STR_SPLIT_H + +# include "me/types.h" + +t_str *str_split(t_const_str str, char chr); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_substring.h b/stdme/include/me/string/str_substring.h new file mode 100644 index 00000000..da9cb412 --- /dev/null +++ b/stdme/include/me/string/str_substring.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_substring.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/07 22:42:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:18:41 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_SUBSTRING_H +# define STR_SUBSTRING_H + +# include "me/types.h" + +t_str str_substring(t_const_str str, t_usize start, t_usize len); + +#endif \ No newline at end of file diff --git a/stdme/include/me/string/str_trim.h b/stdme/include/me/string/str_trim.h new file mode 100644 index 00000000..e7682d3a --- /dev/null +++ b/stdme/include/me/string/str_trim.h @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_trim.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/07 23:43:42 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:19:11 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_TRIM_H +# define STR_TRIM_H + +# include "me/types.h" + +t_str str_trim(t_const_str str, t_const_str charset); + +#endif \ No newline at end of file diff --git a/stdme/include/me/types.h b/stdme/include/me/types.h new file mode 100644 index 00000000..55a0360c --- /dev/null +++ b/stdme/include/me/types.h @@ -0,0 +1,49 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* types.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 14:31:12 by maiboyer #+# #+# */ +/* Updated: 2024/01/05 00:08:41 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef TYPES_H +# define TYPES_H + +# include +# include +# include + +typedef char *t_str; +typedef const char *t_const_str; + +typedef unsigned char t_u8; +typedef char t_i8; +typedef unsigned short t_u16; +typedef short t_i16; +typedef int t_i32; +typedef unsigned int t_u32; +typedef unsigned long long t_u64; +typedef long long t_i64; +typedef ssize_t t_isize; +typedef size_t t_usize; + +typedef float t_f32; +typedef double t_f64; + +typedef int t_file; +typedef struct s_list +{ + void *content; + struct s_list *next; +} t_list; + +typedef bool t_error; + +# define ERROR 1 +# define NO_ERROR 0 + +#endif diff --git a/stdme/include/me/vec2/vec2.h b/stdme/include/me/vec2/vec2.h new file mode 100644 index 00000000..81a0e527 --- /dev/null +++ b/stdme/include/me/vec2/vec2.h @@ -0,0 +1,60 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* vec2.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/31 14:54:39 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:07:54 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef VEC2_H +# define VEC2_H + +# include "me/types.h" + +typedef struct s_vi2d +{ + t_i32 x; + t_i32 y; +} t_vi2d; + +typedef struct s_vu2d +{ + t_u32 x; + t_u32 y; +} t_vu2d; + +typedef struct s_vf2d +{ + t_f32 x; + t_f32 y; +} t_vf2d; + +static inline t_vf2d vf2d(t_f32 x, t_f32 y) +{ + return ((t_vf2d){.x = x, .y = y}); +} + +static inline t_vi2d vi2d(t_i32 x, t_i32 y) +{ + return ((t_vi2d){.x = x, .y = y}); +} + +static inline t_vu2d vu2d(t_u32 x, t_u32 y) +{ + return ((t_vu2d){.x = x, .y = y}); +} + +static inline t_vi2d vi2d_add(t_vi2d lhs, t_vi2d rhs) +{ + return ((t_vi2d){.x = lhs.x + rhs.x, .y = lhs.y + rhs.y}); +} + +static inline t_vi2d vi2d_sub(t_vi2d lhs, t_vi2d rhs) +{ + return ((t_vi2d){.x = lhs.x - rhs.x, .y = lhs.y - rhs.y}); +} +#endif /* VEC2_H */ diff --git a/stdme/input.toml b/stdme/input.toml new file mode 100644 index 00000000..e51674ea --- /dev/null +++ b/stdme/input.toml @@ -0,0 +1,144 @@ +[definition.vec] +headers = ["generic_sources/header/vec_C__PREFIX__.h__TEMPLATE__"] +sources = [ + "generic_sources/src/vec_C__PREFIX__.c__TEMPLATE__", + "generic_sources/src/vec_C__PREFIX___functions2.c__TEMPLATE__", + "generic_sources/src/vec_C__PREFIX___functions3.c__TEMPLATE__", +] +replace.C__TYPENAME__ = "type" +replace.C__TYPEHEADER__ = "header_include" +replace.C__PREFIX__ = "prefix" +replace.C__PREFIXUP__ = "prefix" + + +[definition.hashmap] +headers = ["generic_sources/header/hashmap_C__PREFIX__.h__TEMPLATE__"] +sources = [ + "generic_sources/src/hashmap_C__PREFIX__.c__TEMPLATE__", + "generic_sources/src/hashmap_C__PREFIX___utils.c__TEMPLATE__", +] +replace.C__VALTYPE__ = "type" +replace.C__KEYTYPE__ = "type" +replace.C__TYPEHEADER__ = "header_include" +replace.C__PREFIX__ = "prefix" +replace.C__PREFIXUP__ = "prefix" + +[definition.str_to_num] +headers = [] +sources = [ + "generic_sources/src/str_to_C__PREFIX__.c__TEMPLATE__", + "generic_sources/src/str_to_C__PREFIX___utils.c__TEMPLATE__", +] +replace.C__TYPE__ = "type" +replace.C__UNSIGNED_TYPE__ = "type" +replace.C__PREFIX__ = "prefix" +replace.C__MAX__ = "value" +replace.C__MIN__ = "value" +replace.C__ZERO__ = "value" +replace.C__SIGNED_TYPE__ = "bool" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_i64" +replace.C__UNSIGNED_TYPE__ = "t_u64" +replace.C__PREFIX__ = "i64" +replace.C__MAX__ = "9223372036854775807ll" +replace.C__MIN__ = "-(~9223372036854775807ll + 1)" +replace.C__ZERO__ = "0ll" +replace.C__SIGNED_TYPE__ = "true" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_i32" +replace.C__UNSIGNED_TYPE__ = "t_u32" +replace.C__PREFIX__ = "i32" +replace.C__MAX__ = "2147483647" +replace.C__MIN__ = "-2147483648" +replace.C__ZERO__ = "0" +replace.C__SIGNED_TYPE__ = "true" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_i16" +replace.C__UNSIGNED_TYPE__ = "t_u16" +replace.C__PREFIX__ = "i16" +replace.C__MAX__ = "32767" +replace.C__MIN__ = "-32768" +replace.C__ZERO__ = "0" +replace.C__SIGNED_TYPE__ = "true" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_i8" +replace.C__UNSIGNED_TYPE__ = "t_u8" +replace.C__PREFIX__ = "i8" +replace.C__MAX__ = "127" +replace.C__MIN__ = "-128" +replace.C__ZERO__ = "0" +replace.C__SIGNED_TYPE__ = "true" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_u64" +replace.C__UNSIGNED_TYPE__ = "t_u64" +replace.C__PREFIX__ = "u64" +replace.C__MAX__ = "18446744073709551615llu" +replace.C__MIN__ = "0llu" +replace.C__ZERO__ = "0llu" +replace.C__SIGNED_TYPE__ = "false" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_u32" +replace.C__UNSIGNED_TYPE__ = "t_u32" +replace.C__PREFIX__ = "u32" +replace.C__MAX__ = "4294967295u" +replace.C__MIN__ = "0u" +replace.C__ZERO__ = "0u" +replace.C__SIGNED_TYPE__ = "false" + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_u16" +replace.C__UNSIGNED_TYPE__ = "t_u16" +replace.C__PREFIX__ = "u16" +replace.C__MAX__ = "65535u" +replace.C__MIN__ = "0u" +replace.C__ZERO__ = "0u" +replace.C__SIGNED_TYPE__ = "false" + + +[[create.str_to_num]] +sources_output = "src/convert/" +headers_output = "" +replace.C__TYPE__ = "t_u8" +replace.C__UNSIGNED_TYPE__ = "t_u8" +replace.C__PREFIX__ = "u8" +replace.C__MAX__ = "128u" +replace.C__MIN__ = "0u" +replace.C__ZERO__ = "0u" +replace.C__SIGNED_TYPE__ = "false" + + +[[create.vec]] +sources_output = "src/vec/" +headers_output = "include/me/vec/" +replace.C__TYPENAME__ = "t_u8" +replace.C__TYPEHEADER__ = '' +replace.C__PREFIX__ = "u8" +replace.C__PREFIXUP__ = "U8" + +[[create.vec]] +sources_output = "src/vec/" +headers_output = "include/me/vec/" +replace.C__TYPENAME__ = "t_buffer_str" +replace.C__TYPEHEADER__ = '#include "me/buffered_str/buf_str.h"' +replace.C__PREFIX__ = "buf_str" +replace.C__PREFIXUP__ = "BUF_STR" diff --git a/other/pipex/output/include/me/vec/vec_buf_str.h b/stdme/output/include/me/vec/vec_buf_str.h similarity index 85% rename from other/pipex/output/include/me/vec/vec_buf_str.h rename to stdme/output/include/me/vec/vec_buf_str.h index 9e424e66..083cb24e 100644 --- a/other/pipex/output/include/me/vec/vec_buf_str.h +++ b/stdme/output/include/me/vec/vec_buf_str.h @@ -16,6 +16,8 @@ # include "me/buffered_str/buf_str.h" # include "me/types.h" +typedef bool (*t_vec_buf_str_sort_fn)(t_buffer_str *, + t_buffer_str *); typedef void (*t_free_buf_str_item)(t_buffer_str); typedef struct s_vec_buf_str @@ -30,8 +32,12 @@ t_vec_buf_str vec_buf_str_new(t_usize capacity, t_free_buf_str_item free_function); t_error vec_buf_str_push(t_vec_buf_str *vec, t_buffer_str element); +t_error vec_buf_str_push_front(t_vec_buf_str *vec, + t_buffer_str element); t_error vec_buf_str_pop(t_vec_buf_str *vec, t_buffer_str *value); +t_error vec_buf_str_pop_front(t_vec_buf_str *vec, + t_buffer_str *value); void vec_buf_str_free(t_vec_buf_str vec); t_error vec_buf_str_reserve(t_vec_buf_str *vec, t_usize wanted_capacity); @@ -47,5 +53,8 @@ t_error vec_buf_str_any(t_vec_buf_str *vec, void vec_buf_str_iter(t_vec_buf_str *vec, void (*fn)(t_usize index, t_buffer_str *value, void *state), void *state); +void vec_buf_str_reverse(t_vec_buf_str *vec); +void vec_buf_str_sort(t_vec_buf_str *vec, + t_vec_buf_str_sort_fn is_sorted); #endif diff --git a/other/pipex/output/include/me/vec/vec_u8.h b/stdme/output/include/me/vec/vec_u8.h similarity index 87% rename from other/pipex/output/include/me/vec/vec_u8.h rename to stdme/output/include/me/vec/vec_u8.h index e9ded875..fe8ec03c 100644 --- a/other/pipex/output/include/me/vec/vec_u8.h +++ b/stdme/output/include/me/vec/vec_u8.h @@ -15,6 +15,7 @@ # include "me/types.h" +typedef bool (*t_vec_u8_sort_fn)(t_u8 *, t_u8 *); typedef void (*t_free_u8_item)(t_u8); typedef struct s_vec_u8 @@ -27,7 +28,9 @@ typedef struct s_vec_u8 t_vec_u8 vec_u8_new(t_usize capacity, t_free_u8_item free_function); t_error vec_u8_push(t_vec_u8 *vec, t_u8 element); +t_error vec_u8_push_front(t_vec_u8 *vec, t_u8 element); t_error vec_u8_pop(t_vec_u8 *vec, t_u8 *value); +t_error vec_u8_pop_front(t_vec_u8 *vec, t_u8 *value); void vec_u8_free(t_vec_u8 vec); t_error vec_u8_reserve(t_vec_u8 *vec, t_usize wanted_capacity); t_error vec_u8_find(t_vec_u8 *vec, bool (*fn)(const t_u8 *), @@ -41,5 +44,7 @@ t_error vec_u8_any(t_vec_u8 *vec, bool (*fn)(const t_u8 *), bool *result); void vec_u8_iter(t_vec_u8 *vec, void (*fn)(t_usize index, t_u8 *value, void *state), void *state); +void vec_u8_reverse(t_vec_u8 *vec); +void vec_u8_sort(t_vec_u8 *vec, t_vec_u8_sort_fn is_sorted); #endif diff --git a/stdme/output/src/convert/str_to_i16.c b/stdme/output/src/convert/str_to_i16.c new file mode 100644 index 00000000..b1d2bc8a --- /dev/null +++ b/stdme/output/src/convert/str_to_i16.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_i16(t_i16 lhs, t_i16 rhs, t_i16 *out); +t_error checked_sub_i16(t_i16 lhs, t_i16 rhs, t_i16 *out); +t_error checked_mul_i16(t_i16 lhs, t_i16 rhs, t_i16 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_i16) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_i16 digit, t_u8 op, t_i16 *result) +{ + t_i16 rhs; + t_i16 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_i16(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_i16(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_i16(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_i16 *out) +{ + t_u32 digit; + t_i16 result; + + result = 0; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_i16(t_const_str s, t_u32 radix, t_i16 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && true) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, true, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_i16_utils.c b/stdme/output/src/convert/str_to_i16_utils.c new file mode 100644 index 00000000..6186cad9 --- /dev/null +++ b/stdme/output/src/convert/str_to_i16_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i16_utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/03/07 15:24:57 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_i16(t_i16 lhs, t_i16 rhs, t_i16 *out) +{ + if (rhs > 0 && (lhs > 32767 - rhs)) + return (ERROR); + *out = (t_i16)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_i16(t_i16 lhs, t_i16 rhs, t_i16 *out) +{ + if ((((rhs & (1 << (sizeof(t_i16) - 1)) || rhs == 0) || !true) && (lhs \ + < -32768 + rhs))) + return (ERROR); + *out = (t_i16)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_i16(t_i16 lhs, t_i16 rhs, t_i16 *out) +{ + t_i16 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_i32.c b/stdme/output/src/convert/str_to_i32.c new file mode 100644 index 00000000..49560291 --- /dev/null +++ b/stdme/output/src/convert/str_to_i32.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_i32(t_i32 lhs, t_i32 rhs, t_i32 *out); +t_error checked_sub_i32(t_i32 lhs, t_i32 rhs, t_i32 *out); +t_error checked_mul_i32(t_i32 lhs, t_i32 rhs, t_i32 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_i32) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_i32 digit, t_u8 op, t_i32 *result) +{ + t_i32 rhs; + t_i32 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_i32(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_i32(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_i32(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_i32 *out) +{ + t_u32 digit; + t_i32 result; + + result = 0; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_i32(t_const_str s, t_u32 radix, t_i32 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && true) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, true, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_i32_utils.c b/stdme/output/src/convert/str_to_i32_utils.c new file mode 100644 index 00000000..0d741ec1 --- /dev/null +++ b/stdme/output/src/convert/str_to_i32_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i32_utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/03/07 15:24:49 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_i32(t_i32 lhs, t_i32 rhs, t_i32 *out) +{ + if (rhs > 0 && (lhs > 2147483647 - rhs)) + return (ERROR); + *out = (t_i32)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_i32(t_i32 lhs, t_i32 rhs, t_i32 *out) +{ + if ((((rhs & (1 << (sizeof(t_i32) - 1)) || rhs == 0) || !true) && (lhs \ + < -2147483648 + rhs))) + return (ERROR); + *out = (t_i32)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_i32(t_i32 lhs, t_i32 rhs, t_i32 *out) +{ + t_i32 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_i64.c b/stdme/output/src/convert/str_to_i64.c new file mode 100644 index 00000000..56a48cc8 --- /dev/null +++ b/stdme/output/src/convert/str_to_i64.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_i64(t_i64 lhs, t_i64 rhs, t_i64 *out); +t_error checked_sub_i64(t_i64 lhs, t_i64 rhs, t_i64 *out); +t_error checked_mul_i64(t_i64 lhs, t_i64 rhs, t_i64 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_i64) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_i64 digit, t_u8 op, t_i64 *result) +{ + t_i64 rhs; + t_i64 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_i64(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_i64(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_i64(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_i64 *out) +{ + t_u32 digit; + t_i64 result; + + result = 0ll; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_i64(t_const_str s, t_u32 radix, t_i64 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && true) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, true, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_i64_utils.c b/stdme/output/src/convert/str_to_i64_utils.c new file mode 100644 index 00000000..30244077 --- /dev/null +++ b/stdme/output/src/convert/str_to_i64_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64_utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/03/07 15:24:38 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_i64(t_i64 lhs, t_i64 rhs, t_i64 *out) +{ + if (rhs > 0 && (lhs > 9223372036854775807ll - rhs)) + return (ERROR); + *out = (t_i64)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_i64(t_i64 lhs, t_i64 rhs, t_i64 *out) +{ + if ((((rhs & (1 << (sizeof(t_i64) - 1)) || rhs == 0) || !true) && (lhs \ + < -(~9223372036854775807ll + 1) + rhs))) + return (ERROR); + *out = (t_i64)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_i64(t_i64 lhs, t_i64 rhs, t_i64 *out) +{ + t_i64 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_i8.c b/stdme/output/src/convert/str_to_i8.c new file mode 100644 index 00000000..80f91a0e --- /dev/null +++ b/stdme/output/src/convert/str_to_i8.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_i8(t_i8 lhs, t_i8 rhs, t_i8 *out); +t_error checked_sub_i8(t_i8 lhs, t_i8 rhs, t_i8 *out); +t_error checked_mul_i8(t_i8 lhs, t_i8 rhs, t_i8 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_i8) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_i8 digit, t_u8 op, t_i8 *result) +{ + t_i8 rhs; + t_i8 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_i8(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_i8(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_i8(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_i8 *out) +{ + t_u32 digit; + t_i8 result; + + result = 0; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_i8(t_const_str s, t_u32 radix, t_i8 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && true) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, true, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_i8_utils.c b/stdme/output/src/convert/str_to_i8_utils.c new file mode 100644 index 00000000..2073dd67 --- /dev/null +++ b/stdme/output/src/convert/str_to_i8_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_i8(t_i8 lhs, t_i8 rhs, t_i8 *out) +{ + if (rhs > 0 && (lhs > 127 - rhs)) + return (ERROR); + *out = (t_i8)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_i8(t_i8 lhs, t_i8 rhs, t_i8 *out) +{ + if ((((rhs & (1 << (sizeof(t_i8) - 1)) || rhs == 0) || !true) && (lhs < -128 + + rhs))) + return (ERROR); + *out = (t_i8)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_i8(t_i8 lhs, t_i8 rhs, t_i8 *out) +{ + t_i8 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_u16.c b/stdme/output/src/convert/str_to_u16.c new file mode 100644 index 00000000..7c5bbaa3 --- /dev/null +++ b/stdme/output/src/convert/str_to_u16.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_u16(t_u16 lhs, t_u16 rhs, t_u16 *out); +t_error checked_sub_u16(t_u16 lhs, t_u16 rhs, t_u16 *out); +t_error checked_mul_u16(t_u16 lhs, t_u16 rhs, t_u16 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_u16) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_u16 digit, t_u8 op, t_u16 *result) +{ + t_u16 rhs; + t_u16 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_u16(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_u16(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_u16(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_u16 *out) +{ + t_u32 digit; + t_u16 result; + + result = 0u; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_u16(t_const_str s, t_u32 radix, t_u16 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && false) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, false, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_u16_utils.c b/stdme/output/src/convert/str_to_u16_utils.c new file mode 100644 index 00000000..85fd7b26 --- /dev/null +++ b/stdme/output/src/convert/str_to_u16_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_u16(t_u16 lhs, t_u16 rhs, t_u16 *out) +{ + if (rhs > 0 && (lhs > 65535u - rhs)) + return (ERROR); + *out = (t_u16)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_u16(t_u16 lhs, t_u16 rhs, t_u16 *out) +{ + if ((((rhs & (1 << (sizeof(t_u16) - 1)) || rhs == 0) || !false) && (lhs < 0u + + rhs))) + return (ERROR); + *out = (t_u16)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_u16(t_u16 lhs, t_u16 rhs, t_u16 *out) +{ + t_u16 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_u32.c b/stdme/output/src/convert/str_to_u32.c new file mode 100644 index 00000000..1b625d19 --- /dev/null +++ b/stdme/output/src/convert/str_to_u32.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_u32(t_u32 lhs, t_u32 rhs, t_u32 *out); +t_error checked_sub_u32(t_u32 lhs, t_u32 rhs, t_u32 *out); +t_error checked_mul_u32(t_u32 lhs, t_u32 rhs, t_u32 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_u32) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_u32 digit, t_u8 op, t_u32 *result) +{ + t_u32 rhs; + t_u32 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_u32(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_u32(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_u32(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_u32 *out) +{ + t_u32 digit; + t_u32 result; + + result = 0u; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_u32(t_const_str s, t_u32 radix, t_u32 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && false) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, false, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_u32_utils.c b/stdme/output/src/convert/str_to_u32_utils.c new file mode 100644 index 00000000..3a929d5e --- /dev/null +++ b/stdme/output/src/convert/str_to_u32_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_u32(t_u32 lhs, t_u32 rhs, t_u32 *out) +{ + if (rhs > 0 && (lhs > 4294967295u - rhs)) + return (ERROR); + *out = (t_u32)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_u32(t_u32 lhs, t_u32 rhs, t_u32 *out) +{ + if ((((rhs & (1 << (sizeof(t_u32) - 1)) || rhs == 0) || !false) && (lhs < 0u + + rhs))) + return (ERROR); + *out = (t_u32)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_u32(t_u32 lhs, t_u32 rhs, t_u32 *out) +{ + t_u32 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_u64.c b/stdme/output/src/convert/str_to_u64.c new file mode 100644 index 00000000..b744be80 --- /dev/null +++ b/stdme/output/src/convert/str_to_u64.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_u64(t_u64 lhs, t_u64 rhs, t_u64 *out); +t_error checked_sub_u64(t_u64 lhs, t_u64 rhs, t_u64 *out); +t_error checked_mul_u64(t_u64 lhs, t_u64 rhs, t_u64 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_u64) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_u64 digit, t_u8 op, t_u64 *result) +{ + t_u64 rhs; + t_u64 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_u64(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_u64(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_u64(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_u64 *out) +{ + t_u32 digit; + t_u64 result; + + result = 0llu; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_u64(t_const_str s, t_u32 radix, t_u64 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && false) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, false, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_u64_utils.c b/stdme/output/src/convert/str_to_u64_utils.c new file mode 100644 index 00000000..f2bb77fc --- /dev/null +++ b/stdme/output/src/convert/str_to_u64_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_u64(t_u64 lhs, t_u64 rhs, t_u64 *out) +{ + if (rhs > 0 && (lhs > 18446744073709551615llu - rhs)) + return (ERROR); + *out = (t_u64)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_u64(t_u64 lhs, t_u64 rhs, t_u64 *out) +{ + if ((((rhs & (1 << (sizeof(t_u64) - 1)) || rhs == 0) || !false) + && (lhs < 0llu + rhs))) + return (ERROR); + *out = (t_u64)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_u64(t_u64 lhs, t_u64 rhs, t_u64 *out) +{ + t_u64 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/stdme/output/src/convert/str_to_u8.c b/stdme/output/src/convert/str_to_u8.c new file mode 100644 index 00000000..8fac9fae --- /dev/null +++ b/stdme/output/src/convert/str_to_u8.c @@ -0,0 +1,129 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/string/str_len.h" +#include "me/types.h" + +#define OP_ADD 0b0001 +#define OP_SUB 0b0010 +#define OP_MUL 0b0100 +#define OP_CHK 0b1000 + +t_error checked_add_u8(t_u8 lhs, t_u8 rhs, t_u8 *out); +t_error checked_sub_u8(t_u8 lhs, t_u8 rhs, t_u8 *out); +t_error checked_mul_u8(t_u8 lhs, t_u8 rhs, t_u8 *out); + +static inline bool can_not_overflow(t_u32 radix, bool is_signed_type, + t_usize digits_len) +{ + return (radix <= 16 && digits_len <= sizeof(t_u8) * 2 + - (t_usize)is_signed_type); +} + +static inline t_error to_digit(t_u8 ascii, t_u32 radix, t_u32 *out) +{ + t_u32 digit; + + if (radix < 2 || radix > 36) + return (ERROR); + digit = ascii - '0'; + if (radix > 10 && digit >= 10) + { + if (!me_isalpha(ascii)) + return (ERROR); + digit = ((ascii | 0b100000) - 'a') + 10; + } + if (digit >= radix) + return (ERROR); + *out = digit; + return (NO_ERROR); +} + +static inline t_error do_operation(t_u8 digit, t_u8 op, t_u8 *result) +{ + t_u8 rhs; + t_u8 res; + + rhs = *result; + res = *result; + if (op & OP_CHK) + { + if (op & OP_MUL && checked_mul_u8(rhs, digit, &res)) + return (ERROR); + else if (op & OP_ADD && checked_add_u8(rhs, digit, &res)) + return (ERROR); + else if (op & OP_SUB && checked_sub_u8(rhs, digit, &res)) + return (ERROR); + } + else + { + if (op & OP_MUL) + res = rhs * digit; + else if (op & OP_ADD) + res = rhs + digit; + else if (op & OP_SUB) + res = rhs - digit; + } + *result = res; + return (NO_ERROR); +} + +static inline t_error loop_inner(t_const_str s, t_u32 radix, t_u8 op, + t_u8 *out) +{ + t_u32 digit; + t_u8 result; + + result = 0u; + while (*s) + { + if (do_operation(radix, (op & OP_CHK) | OP_MUL, &result)) + return (ERROR); + if (to_digit(*s, radix, &digit)) + return (ERROR); + if (do_operation(digit, op, &result)) + return (ERROR); + s++; + } + if (out) + *out = result; + return (NO_ERROR); +} + +t_error str_to_u8(t_const_str s, t_u32 radix, t_u8 *out) +{ + t_usize digits_len; + bool is_positive; + t_u8 op; + + if (radix < 2 || radix > 36) + return (ERROR); + digits_len = str_len(s); + is_positive = true; + if (digits_len == 0) + return (ERROR); + if ((s[0] == '-' || s[0] == '+') && s[1] == '\0') + return (ERROR); + else if (s[0] == '+') + is_positive = (s++, digits_len--, true); + else if (s[0] == '-' && false) + is_positive = (s++, digits_len--, false); + if (is_positive) + op = OP_ADD; + else + op = OP_SUB; + if (!can_not_overflow(radix, false, digits_len)) + op |= OP_CHK; + return (loop_inner(s, radix, op, out)); +} diff --git a/stdme/output/src/convert/str_to_u8_utils.c b/stdme/output/src/convert/str_to_u8_utils.c new file mode 100644 index 00000000..14a4a04e --- /dev/null +++ b/stdme/output/src/convert/str_to_u8_utils.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_to_i64.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/01 21:15:19 by maiboyer #+# #+# */ +/* Updated: 2024/02/01 23:18:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" +#include "me/convert/str_to_numbers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" + +t_error checked_add_u8(t_u8 lhs, t_u8 rhs, t_u8 *out) +{ + if (rhs > 0 && (lhs > 128u - rhs)) + return (ERROR); + *out = (t_u8)(lhs + rhs); + return (NO_ERROR); +} + +t_error checked_sub_u8(t_u8 lhs, t_u8 rhs, t_u8 *out) +{ + if ((((rhs & (1 << (sizeof(t_u8) - 1)) || rhs == 0) || !false) && (lhs < 0u + + rhs))) + return (ERROR); + *out = (t_u8)(lhs - rhs); + return (NO_ERROR); +} + +t_error checked_mul_u8(t_u8 lhs, t_u8 rhs, t_u8 *out) +{ + t_u8 mul; + + mul = lhs * rhs; + if (lhs != 0 && mul / lhs != rhs) + return (ERROR); + *out = mul; + return (NO_ERROR); +} diff --git a/other/pipex/output/src/vec/vec_buf_str.c b/stdme/output/src/vec/vec_buf_str.c similarity index 100% rename from other/pipex/output/src/vec/vec_buf_str.c rename to stdme/output/src/vec/vec_buf_str.c diff --git a/other/pipex/output/src/vec/vec_buf_str_functions2.c b/stdme/output/src/vec/vec_buf_str_functions2.c similarity index 100% rename from other/pipex/output/src/vec/vec_buf_str_functions2.c rename to stdme/output/src/vec/vec_buf_str_functions2.c diff --git a/stdme/output/src/vec/vec_buf_str_functions3.c b/stdme/output/src/vec/vec_buf_str_functions3.c new file mode 100644 index 00000000..2b51c44e --- /dev/null +++ b/stdme/output/src/vec/vec_buf_str_functions3.c @@ -0,0 +1,72 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* vec_buf_str.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/30 17:59:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/30 17:59:28 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_copy.h" +#include "me/mem/mem_set_zero.h" +#include "me/types.h" +#include "me/vec/vec_buf_str.h" +#include + +t_error vec_buf_str_push_front(t_vec_buf_str *vec, t_buffer_str element) +{ + t_usize i; + + if (vec->len == 0) + return (vec_buf_str_push(vec, element)); + i = vec->len - 1; + if (vec->capacity < vec->len + 1 && vec_buf_str_reserve(vec, 3 * vec->len + / 2 + 1)) + return (ERROR); + while (i > 0) + { + vec->buffer[i + 1] = vec->buffer[i]; + i--; + } + vec->buffer[1] = vec->buffer[0]; + vec->buffer[0] = element; + vec->len++; + return (NO_ERROR); +} + +t_error vec_buf_str_pop_front(t_vec_buf_str *vec, t_buffer_str *value) +{ + t_usize i; + + if (vec->len <= 1) + return (vec_buf_str_pop(vec, value)); + i = 0; + *value = vec->buffer[0]; + vec->len--; + while (i < vec->len) + { + vec->buffer[i] = vec->buffer[i + 1]; + i++; + } + mem_set_zero(&vec->buffer[i], sizeof(*vec->buffer)); + return (NO_ERROR); +} + +void vec_buf_str_reverse(t_vec_buf_str *vec) +{ + t_buffer_str temporary; + t_usize i; + + i = 0; + while (i < vec->len / 2) + { + temporary = vec->buffer[vec->len - 1 - i]; + vec->buffer[vec->len - 1 - i] = vec->buffer[i]; + vec->buffer[i] = temporary; + i++; + } +} diff --git a/other/pipex/output/src/vec/vec_u8.c b/stdme/output/src/vec/vec_u8.c similarity index 100% rename from other/pipex/output/src/vec/vec_u8.c rename to stdme/output/src/vec/vec_u8.c diff --git a/other/pipex/output/src/vec/vec_u8_functions2.c b/stdme/output/src/vec/vec_u8_functions2.c similarity index 100% rename from other/pipex/output/src/vec/vec_u8_functions2.c rename to stdme/output/src/vec/vec_u8_functions2.c diff --git a/stdme/output/src/vec/vec_u8_functions3.c b/stdme/output/src/vec/vec_u8_functions3.c new file mode 100644 index 00000000..3167ba25 --- /dev/null +++ b/stdme/output/src/vec/vec_u8_functions3.c @@ -0,0 +1,72 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* vec_u8.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/30 17:59:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/30 17:59:28 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_copy.h" +#include "me/mem/mem_set_zero.h" +#include "me/types.h" +#include "me/vec/vec_u8.h" +#include + +t_error vec_u8_push_front(t_vec_u8 *vec, t_u8 element) +{ + t_usize i; + + if (vec->len == 0) + return (vec_u8_push(vec, element)); + i = vec->len - 1; + if (vec->capacity < vec->len + 1 && vec_u8_reserve(vec, 3 * vec->len / 2 + + 1)) + return (ERROR); + while (i > 0) + { + vec->buffer[i + 1] = vec->buffer[i]; + i--; + } + vec->buffer[1] = vec->buffer[0]; + vec->buffer[0] = element; + vec->len++; + return (NO_ERROR); +} + +t_error vec_u8_pop_front(t_vec_u8 *vec, t_u8 *value) +{ + t_usize i; + + if (vec->len <= 1) + return (vec_u8_pop(vec, value)); + i = 0; + *value = vec->buffer[0]; + vec->len--; + while (i < vec->len) + { + vec->buffer[i] = vec->buffer[i + 1]; + i++; + } + mem_set_zero(&vec->buffer[i], sizeof(*vec->buffer)); + return (NO_ERROR); +} + +void vec_u8_reverse(t_vec_u8 *vec) +{ + t_u8 temporary; + t_usize i; + + i = 0; + while (i < vec->len / 2) + { + temporary = vec->buffer[vec->len - 1 - i]; + vec->buffer[vec->len - 1 - i] = vec->buffer[i]; + vec->buffer[i] = temporary; + i++; + } +} diff --git a/stdme/src.list b/stdme/src.list new file mode 100644 index 00000000..0ea8567f --- /dev/null +++ b/stdme/src.list @@ -0,0 +1,102 @@ +blx/blx +blx/blx_create_fontsheet +blx/blx_handlers +blx/blx_keycode +blx/colors +blx/draw/draw +blx/draw/draw_sprite +blx/draw/draw_string +blx/inputs +blx/logic +blx/sprite/draw_image +blx/sprite/draw_pixel_onto +blx/sprite/draw_string +blx/sprite/free_image +blx/sprite/get_pixel +blx/sprite/new_image +blx/sprite/sprite_draw_onto_sprite +buffered_str/mod +char/isalnum +char/isalpha +char/isascii +char/isdigit +char/islower +char/isprint +char/isspace +char/isupper +char/tolower +char/toupper +convert/atoi +convert/itoa +fs/close +fs/open +fs/putchar_fd +fs/putendl_fd +fs/putnbr_fd +fs/putstr_fd +fs/read +fs/read_to_vec +fs/write +gnl/get_next_line +hash/hasher +hash/hash_signed +hash/hash_unsigned +hash/sip/sip13 +hash/sip/sip_utils +hash/sip/sip_utils2 +img/qoi/qoi_decode +img/qoi/qoi_encode +img/qoi/qoi_fs +img/qoi/qoi_utils +list/list_add_back +list/list_add_front +list/list_alloc_node +list/list_free_all +list/list_free_one +list/list_get_last +list/list_iter +list/list_map +list/list_size +mem/mem_alloc +mem/mem_alloc_array +mem/mem_compare +mem/mem_copy +mem/mem_find +mem/mem_find_bytes +mem/mem_move +mem/mem_set +mem/mem_set_zero +num/u16/rotate +num/u32/rotate +num/u64/from_bytes +num/u64/rotate +num/u8/rotate +num/usize/rotate +printf/formatter/char +printf/formatter/decimal +printf/formatter/hex +printf/formatter/oct +printf/formatter/ptr +printf/formatter/unsigned_decimal +printf/formatter/utils +printf/formatter/utils2 +printf/formatter/utils3 +printf/formatter/utils_numbers +printf/matchers +printf/printf +printf/vprintf +string/str_clone +string/str_find_chr +string/str_find_rev_chr +string/str_find_str +string/str_iter +string/str_join +string/str_l_cat +string/str_l_copy +string/str_len +string/str_map +string/str_n_compare +string/str_n_find_str +string/str_split +string/str_substring +string/str_trim diff --git a/stdme/src/blx/blx.c b/stdme/src/blx/blx.c new file mode 100644 index 00000000..d727a175 --- /dev/null +++ b/stdme/src/blx/blx.c @@ -0,0 +1,74 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/14 18:01:06 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 20:14:31 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/blx_handlers.h" +#include "me/blx/sprite.h" +#include "me/blx/inputs.h" +#include "me/blx/xdata.h" +#include "me/types.h" +#include "me/vec/vec_u8.h" +#include "me/printf/printf.h" +#include +#include +#include + +void blx_create_fontsheet(t_blx *app); + +t_blx blx_initialize(t_run_function func, t_free_function free_fn, + t_blx_app data) +{ + t_blx ctx; + + ctx = (t_blx){.func = func, .app = data, .free = free_fn}; + ctx.mlx = mlx_init(); + if (ctx.mlx == NULL) + (me_eprintf("Error:\nfailed to inialize blx (mlx) !\n"), exit(1)); + ctx.inputs = create_inputs_manager(&ctx); + ctx.win = mlx_new_window(ctx.mlx, data.size_x * data.pixel_size, data.size_y + * data.pixel_size, data.title); + if (!blx_sprite_new(&ctx, data.size_x * data.pixel_size, data.size_y + * data.pixel_size, &ctx._data.screen)) + (me_eprintf("Error:\nfailed to inialize blx (screen) !\n"), exit(1)); + blx_create_fontsheet(&ctx); + return (ctx); +} + +//mlx_do_key_autorepeatoff(app.mlx); +void blx_run(t_blx app) +{ + mlx_hook(app.win, KEYPRESS, KEYPRESSMASK, &blx_key_pressed_handler, &app); + mlx_hook(app.win, KEYRELEASE, KEYRELEASEMASK, &blx_key_released_handler, + &app); + mlx_hook(app.win, DESTROYNOTIFY, NOEVENTMASK, &blx_key_exit_handler, &app); + mlx_loop_hook(app.mlx, &blx_loop_func, &app); + mlx_loop(app.mlx); +} + +void blx_free(t_blx app) +{ + blx_sprite_free(app._data.screen); + blx_sprite_free(app._data.font); + mlx_do_key_autorepeaton(app.mlx); + if (app.free) + app.free(app.app); + if (app.win) + mlx_destroy_window(app.mlx, app.win); + if (app.mlx) + { + mlx_destroy_display(app.mlx); + free(app.mlx); + } + vec_u8_free(app.inputs.keysyms_held); + vec_u8_free(app.inputs.keysyms_pressed); + vec_u8_free(app.inputs.keysyms_released); +} diff --git a/stdme/src/blx/blx_create_fontsheet.c b/stdme/src/blx/blx_create_fontsheet.c new file mode 100644 index 00000000..0bda1423 --- /dev/null +++ b/stdme/src/blx/blx_create_fontsheet.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx_create_fontsheet.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/27 19:18:44 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 20:10:02 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/sprite.h" +#include "me/types.h" +#include "me/printf/printf.h" +#include +#include + +#define FONT_SHEET_PATH "textures/font.xpm" + +void blx_create_fontsheet(t_blx *app) +{ + if (!blx_sprite_from_xpm(app, FONT_SHEET_PATH, &app->_data.font)) + { + me_eprintf("Error:\nCouldn't open sprite sheet !\n"); + exit(5); + } +} diff --git a/stdme/src/blx/blx_handlers.c b/stdme/src/blx/blx_handlers.c new file mode 100644 index 00000000..37fac36e --- /dev/null +++ b/stdme/src/blx/blx_handlers.c @@ -0,0 +1,53 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx_handlers.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 17:44:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/21 19:59:47 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/blx_handlers.h" +#include "me/blx/blx_key.h" +#include +#include + +int blx_key_pressed_handler(t_keysym keysym, t_blx *ctx) +{ + t_usize bit_index; + + bit_index = keysym_to_bit_index(keysym); + if (bit_index / 8 >= ctx->inputs.keysyms_pressed.len) + return (0); + if (is_key_held(ctx, bit_index)) + return (0); + ctx->inputs.keysyms_pressed.buffer[bit_index / 8] |= ((t_u8)1 << (bit_index + % 8)); + return (1); +} + +int blx_key_released_handler(t_keysym keysym, t_blx *ctx) +{ + t_usize bit_index; + + bit_index = keysym_to_bit_index(keysym); + if (bit_index / 8 >= ctx->inputs.keysyms_released.len) + return (0); + ctx->inputs.keysyms_held.buffer[bit_index / 8] &= ~((t_u8)1 << (bit_index + % 8)); + ctx->inputs.keysyms_pressed.buffer[bit_index / 8] &= ~((t_u8)1 << (bit_index + % 8)); + ctx->inputs.keysyms_released.buffer[bit_index / 8] |= ((t_u8)1 << (bit_index + % 8)); + return (1); +} + +int blx_key_exit_handler(t_blx *app) +{ + app->_data.exit = true; + return (1); +} diff --git a/stdme/src/blx/blx_keycode.c b/stdme/src/blx/blx_keycode.c new file mode 100644 index 00000000..21a77f2f --- /dev/null +++ b/stdme/src/blx/blx_keycode.c @@ -0,0 +1,50 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* blx_keysym.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/14 15:07:52 by maiboyer #+# #+# */ +/* Updated: 2023/12/14 15:58:17 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/blx_key.h" +#include "me/types.h" +#include "me/vec/vec_u8.h" + +t_usize keysym_to_bit_index(t_keysym key) +{ + if (key < 0xff00) + return ((((t_usize)key) & 0xff) + 0x0000); + if (key >= 0xff00) + return ((((t_usize)key) & 0xff) + 0x0100); + return (0); +} + +bool get_key(t_vec_u8 *key_storage, t_keysym keysym) +{ + t_usize index; + + index = keysym_to_bit_index(keysym); + if (index == 0 || index / 8 > key_storage->len) + return (false); + return (!!(key_storage->buffer[index / 8] & (1 << (index % 8)))); +} + +bool is_key_pressed(t_blx *ctx, t_keysym key) +{ + return (get_key(&ctx->inputs.keysyms_pressed, key)); +} + +bool is_key_held(t_blx *ctx, t_keysym key) +{ + return (get_key(&ctx->inputs.keysyms_held, key)); +} + +bool is_key_released(t_blx *ctx, t_keysym key) +{ + return (get_key(&ctx->inputs.keysyms_released, key)); +} diff --git a/other/pipex/src/lib/os/process_inner.c b/stdme/src/blx/colors.c similarity index 60% rename from other/pipex/src/lib/os/process_inner.c rename to stdme/src/blx/colors.c index 25fec826..b352d225 100644 --- a/other/pipex/src/lib/os/process_inner.c +++ b/stdme/src/blx/colors.c @@ -1,33 +1,24 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* process_inner.c :+: :+: :+: */ +/* colors.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 22:25:44 by maiboyer #+# #+# */ -/* Updated: 2024/01/04 22:26:10 by maiboyer ### ########.fr */ +/* Created: 2023/12/14 16:01:18 by maiboyer #+# #+# */ +/* Updated: 2023/12/27 16:26:30 by maiboyer ### ########.fr */ /* */ /* ************************************************************************** */ +#include "me/blx/colors.h" #include "me/types.h" -bool find_null(const t_str *s) +t_color new_color_with_alpha(t_u8 r, t_u8 g, t_u8 b, t_u8 alpha) { - return (s == NULL); + return ((t_color){.r = r, .g = g, .b = b, .a = alpha}); } -bool str_start_with(t_const_str s, t_const_str prefix) +t_color new_color(t_u8 r, t_u8 g, t_u8 b) { - while (*prefix && *s) - { - if (*prefix++ != *s++) - return (false); - } - return (*prefix == '\0'); -} - -bool find_path(const t_str *s) -{ - return (str_start_with(*s, "PATH=")); + return (new_color_with_alpha(r, g, b, 0x00)); } diff --git a/stdme/src/blx/draw/draw.c b/stdme/src/blx/draw/draw.c new file mode 100644 index 00000000..8bee4171 --- /dev/null +++ b/stdme/src/blx/draw/draw.c @@ -0,0 +1,42 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* draw.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 20:19:59 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:05:17 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/sprite.h" +#include +#include + +void blx_clear(t_blx *app, t_color col) +{ + sprite_clear(&app->_data.screen, col); +} + +void blx_draw(t_blx *app, t_vi2d pos, t_color col) +{ + t_usize i; + t_usize j; + + if (get_draw_mode(app) == MASK && col.a != 0) + return ; + i = 0; + while (i < app->app.pixel_size) + { + j = 0; + while (j < app->app.pixel_size) + { + sprite_draw(&app->_data.screen, vi2d(pos.x * app->app.pixel_size + + j, pos.y * app->app.pixel_size + i), col); + j++; + } + i++; + } +} diff --git a/stdme/src/blx/draw/draw_sprite.c b/stdme/src/blx/draw/draw_sprite.c new file mode 100644 index 00000000..f6188bc9 --- /dev/null +++ b/stdme/src/blx/draw/draw_sprite.c @@ -0,0 +1,34 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* draw_sprite.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/26 22:12:31 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:06:55 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/sprite.h" +#include "me/types.h" + +void draw_sprite(t_blx *app, t_vi2d pos, t_sprite *spr) +{ + t_vi2d p; + t_color col; + + p.y = 0; + while (p.y < spr->height) + { + p.x = 0; + while (p.x < spr->width) + { + sprite_get_pixel(spr, p, &col); + blx_draw(app, vi2d_add(pos, p), col); + p.x++; + } + p.y++; + } +} diff --git a/stdme/src/blx/draw/draw_string.c b/stdme/src/blx/draw/draw_string.c new file mode 100644 index 00000000..441f42e2 --- /dev/null +++ b/stdme/src/blx/draw/draw_string.c @@ -0,0 +1,82 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* draw_string.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/27 19:02:59 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:31:57 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/colors.h" +#include "me/blx/sprite.h" +#include "me/types.h" +#include "me/vec2/vec2.h" +#include + +static inline void inner(t_blx *app, char c, t_vi2d pixel_pos, t_color col) +{ + t_vi2d o; + t_color texel; + t_vi2d offset; + + o.x = (c - 32) % 16; + o.y = (c - 32) / 16; + texel = new_color(0, 0, 0); + offset.y = 0; + while (offset.y < 8) + { + offset.x = 0; + while (offset.x < 8) + { + if (!sprite_get_pixel(&app->_data.font, vi2d(offset.x + o.x * 8, + offset.y + o.y * 8), &texel) && texel.a == 0) + blx_draw(app, vi2d_add(pixel_pos, offset), col); + offset.x++; + } + offset.y++; + } +} + +static inline t_draw_mode handle_draw_mode(t_blx *app, t_color col) +{ + t_draw_mode m; + + m = get_draw_mode(app); + if (col.a != 0x00) + set_draw_mode(app, ALPHA); + else + set_draw_mode(app, MASK); + return (m); +} + +void blx_draw_string(t_blx *app, t_vi2d pos, t_const_str sText, t_color col) +{ + t_vi2d s; + t_draw_mode m; + char c; + + s.x = 0; + s.y = 0; + m = handle_draw_mode(app, col); + while (*sText) + { + c = *sText++; + if (c == '\n') + { + s.x = 0; + s.y += 8; + } + else if (c == '\t') + s.x += 8 * 4; + else + { + inner(app, c, vi2d(pos.x + s.x, pos.y + s.y), col); + s.x += 8; + } + } + set_draw_mode(app, m); +} diff --git a/stdme/src/blx/inputs.c b/stdme/src/blx/inputs.c new file mode 100644 index 00000000..2bc0ef58 --- /dev/null +++ b/stdme/src/blx/inputs.c @@ -0,0 +1,40 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* inputs.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/15 16:38:08 by maiboyer #+# #+# */ +/* Updated: 2023/12/30 18:15:42 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/inputs.h" +#include "me/vec/vec_u8.h" +#include + +static t_vec_u8 alloc_input_vector(void) +{ + t_vec_u8 out; + + out = vec_u8_new(64, NULL); + while (out.len < 64) + vec_u8_push(&out, 0); + return (out); +} + +t_blx_input create_inputs_manager(t_blx *ctx) +{ + t_blx_input out; + + (void)(ctx); + out = (t_blx_input){ + .mouse = 0, + .keysyms_held = alloc_input_vector(), + .keysyms_pressed = alloc_input_vector(), + .keysyms_released = alloc_input_vector(), + }; + return (out); +} diff --git a/stdme/src/blx/logic.c b/stdme/src/blx/logic.c new file mode 100644 index 00000000..64bbf665 --- /dev/null +++ b/stdme/src/blx/logic.c @@ -0,0 +1,60 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* logic.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/15 18:06:06 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 18:33:12 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/blx_key.h" +#include "me/blx/sprite.h" +#include "me/blx/inputs.h" +#include "mlx.h" +#include +#include + +static void blx_stop(t_blx *app) +{ + mlx_loop_end(app->mlx); + blx_free(*app); + exit(0); +} + +// TODO: implement mouse buttons when needed +void blx_post_func(t_blx *ctx) +{ + t_usize idx; + + idx = 0; + while (idx < ctx->inputs.keysyms_pressed.len + && idx < ctx->inputs.keysyms_held.len) + { + ctx->inputs.keysyms_held.buffer[idx] |= \ + ctx->inputs.keysyms_pressed.buffer[idx]; + ctx->inputs.keysyms_pressed.buffer[idx] = 0; + idx++; + } + idx = 0; + while (idx < ctx->inputs.keysyms_pressed.len) + ctx->inputs.keysyms_pressed.buffer[idx++] = 0; + idx = 0; + while (idx < ctx->inputs.keysyms_released.len) + ctx->inputs.keysyms_released.buffer[idx++] = 0; +} + +int blx_loop_func(t_blx *ctx) +{ + mlx_put_image_to_window(ctx->mlx, ctx->win, ctx->_data.screen.img, 0, 0); + if (ctx->_data.exit || ctx->func(ctx)) + { + blx_stop(ctx); + return (0); + } + blx_post_func(ctx); + return (0); +} diff --git a/stdme/src/blx/sprite/draw_image.c b/stdme/src/blx/sprite/draw_image.c new file mode 100644 index 00000000..e02a5b9c --- /dev/null +++ b/stdme/src/blx/sprite/draw_image.c @@ -0,0 +1,21 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* draw_image.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 22:43:04 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:20:24 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/colors.h" +#include "me/blx/sprite.h" +#include + +void blx_draw_sprite_raw(t_blx *ctx, t_vi2d pos, t_sprite *img) +{ + mlx_put_image_to_window(ctx->mlx, ctx->win, img->img, pos.x, pos.y); +} diff --git a/stdme/src/blx/sprite/draw_pixel_onto.c b/stdme/src/blx/sprite/draw_pixel_onto.c new file mode 100644 index 00000000..507bd4f9 --- /dev/null +++ b/stdme/src/blx/sprite/draw_pixel_onto.c @@ -0,0 +1,78 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* draw_pixel_onto.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/23 16:32:19 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:21:33 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/sprite.h" +#include +#include + +void sprite_draw_other_bpp(t_sprite *spr, t_vi2d pos, t_color col) +{ + (void)(spr); + (void)(pos); + (void)(col); + return ; +} + +void sprite_draw(t_sprite *spr, t_vi2d pos, t_color col) +{ + t_u8 *addr; + + if (!(pos.x >= 0 && pos.x < spr->width && pos.y >= 0 + && pos.y < spr->height)) + return ; + if (spr->bpp != 32) + return (sprite_draw_other_bpp(spr, pos, col)); + addr = &(spr->data)[pos.y * spr->line_size + pos.x * 4]; + if (!spr->big_endian) + { + addr[0] = col.b; + addr[1] = col.g; + addr[2] = col.r; + addr[3] = col.a; + } + else + { + addr[0] = col.a; + addr[1] = col.r; + addr[2] = col.g; + addr[3] = col.b; + } +} + +/* + addr = &(img->data)[y * img->line_size + (x << 2)]; + if (!img->big_endian) + out = ((unsigned long)addr[0] << 24 | (unsigned long)addr[1] << 16 | + (unsigned long)addr[2] << 8 | addr[3]); + else + out = ((unsigned long)addr[3] << 24 | (unsigned long)addr[2] << 16 | + (unsigned long)addr[1] << 8 | addr[0]); + return (out); +*/ + +void sprite_clear(t_sprite *img, t_color col) +{ + t_vi2d pos; + + pos.y = 0; + while (pos.y < img->height) + { + pos.x = 0; + while (pos.x < img->width) + { + sprite_draw(img, pos, col); + pos.x++; + } + pos.y++; + } +} diff --git a/stdme/src/blx/sprite/draw_string.c b/stdme/src/blx/sprite/draw_string.c new file mode 100644 index 00000000..a2076546 --- /dev/null +++ b/stdme/src/blx/sprite/draw_string.c @@ -0,0 +1,82 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* draw_string.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboxy[1]er +#+ +:+ +#+ + */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/27 18:29:56 by maiboxy[1]er #+# #+# */ +/* Updated: 2023/12/27 18:43:57 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/colors.h" +#include "me/blx/sprite.h" +#include "me/types.h" + +static inline void inner(t_sprite *spr, char c, t_vi2d pixel_pos, t_color col) +{ + t_vi2d o; + t_color texel; + t_vi2d offset; + + o.x = (c - 32) % 16; + o.y = (c - 32) / 16; + texel = new_color(0, 0, 0); + offset.y = 0; + while (offset.y < 8) + { + offset.x = 0; + while (offset.x < 8) + { + if (!sprite_get_pixel(&spr->ctx->_data.font, vi2d(offset.x + o.x + * 8, offset.y + o.y * 8), &texel) && texel.a == 0) + sprite_draw(spr, vi2d_add(pixel_pos, offset), col); + offset.x++; + } + offset.y++; + } +} + +static inline t_draw_mode handle_draw_mode(t_blx *app, t_color col) +{ + t_draw_mode m; + + m = get_draw_mode(app); + if (col.a != 0x00) + set_draw_mode(app, ALPHA); + else + set_draw_mode(app, MASK); + return (m); +} + +void sprite_draw_string(t_sprite *spr, t_vi2d pos, t_const_str sText, + t_color col) +{ + t_vi2d s; + t_draw_mode m; + char c; + + s.x = 0; + s.y = 0; + m = handle_draw_mode(spr->ctx, col); + while (*sText) + { + c = *sText++; + if (c == '\n') + { + s.x = 0; + s.y += 8; + } + else if (c == '\t') + s.x += 8 * 4; + else + { + inner(spr, c, vi2d(pos.x + s.x, pos.y + s.y), col); + s.x += 8; + } + } + set_draw_mode(spr->ctx, m); +} diff --git a/stdme/src/blx/sprite/free_image.c b/stdme/src/blx/sprite/free_image.c new file mode 100644 index 00000000..a3416dd0 --- /dev/null +++ b/stdme/src/blx/sprite/free_image.c @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* free_image.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 22:40:12 by maiboyer #+# #+# */ +/* Updated: 2023/12/26 15:39:04 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/sprite.h" +#include + +void blx_sprite_free(t_sprite img) +{ + mlx_destroy_image(img.ctx->mlx, img.img); +} diff --git a/stdme/src/blx/sprite/get_pixel.c b/stdme/src/blx/sprite/get_pixel.c new file mode 100644 index 00000000..e74fe3f2 --- /dev/null +++ b/stdme/src/blx/sprite/get_pixel.c @@ -0,0 +1,51 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* get_pixel.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 00:48:23 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:27:55 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/colors.h" +#include "me/blx/sprite.h" + +static bool sprite_get_pixel_other_bpp(t_sprite *spr, t_vi2d pos, t_color *out) +{ + (void)(spr); + (void)(pos); + (void)(out); + return (true); +} + +bool sprite_get_pixel(t_sprite *spr, t_vi2d pos, t_color *out) +{ + t_u8 *addr; + t_color col; + + if (!(pos.x >= 0 && pos.x < spr->width && pos.y >= 0 + && pos.y < spr->height)) + return (true); + if (spr->bpp != 32) + return (sprite_get_pixel_other_bpp(spr, pos, out)); + addr = &(spr->data)[pos.y * spr->line_size + pos.x * 4]; + if (spr->big_endian) + { + col.a = addr[0]; + col.r = addr[1]; + col.g = addr[2]; + col.b = addr[3]; + } + else + { + col.a = addr[3]; + col.r = addr[2]; + col.g = addr[1]; + col.b = addr[0]; + } + *out = col; + return (false); +} diff --git a/stdme/src/blx/sprite/new_image.c b/stdme/src/blx/sprite/new_image.c new file mode 100644 index 00000000..130422f6 --- /dev/null +++ b/stdme/src/blx/sprite/new_image.c @@ -0,0 +1,56 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* new_image.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/21 21:59:04 by maiboyer #+# #+# */ +/* Updated: 2023/12/26 15:40:08 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/colors.h" +#include "me/blx/sprite.h" +#include + +bool blx_sprite_from_xpm(t_blx *ctx, t_str path, t_sprite *out) +{ + t_sprite spr; + t_i32 bpp; + t_i32 size_line; + t_i32 endian; + + spr.ctx = ctx; + spr.img = mlx_xpm_file_to_image(ctx->mlx, path, &spr.width, &spr.height); + if (spr.img == NULL) + return (false); + spr.data = (t_u8 *)mlx_get_data_addr(spr.img, &bpp, &size_line, &endian); + spr.bpp = bpp; + spr.line_size = (t_usize)size_line; + spr.big_endian = endian == 1; + *out = spr; + return (true); +} + +bool blx_sprite_new(t_blx *ctx, t_i32 width, t_i32 height, t_sprite *out) +{ + t_sprite spr; + t_i32 bpp; + t_i32 size_line; + t_i32 endian; + + spr.ctx = ctx; + spr.img = mlx_new_image(ctx->mlx, width, height); + if (spr.img == NULL) + return (false); + spr.data = (t_u8 *)mlx_get_data_addr(spr.img, &bpp, &size_line, &endian); + spr.bpp = bpp; + spr.line_size = (t_usize)size_line; + spr.big_endian = endian == 1; + spr.width = width; + spr.height = height; + *out = spr; + return (true); +} diff --git a/stdme/src/blx/sprite/sprite_draw_onto_sprite.c b/stdme/src/blx/sprite/sprite_draw_onto_sprite.c new file mode 100644 index 00000000..7590b4e0 --- /dev/null +++ b/stdme/src/blx/sprite/sprite_draw_onto_sprite.c @@ -0,0 +1,36 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sprite_draw_onto_sprite.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/26 19:33:22 by maiboyer #+# #+# */ +/* Updated: 2023/12/31 15:26:41 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/blx/blx.h" +#include "me/blx/colors.h" +#include "me/blx/sprite.h" +#include "me/types.h" +#include "me/vec2/vec2.h" + +void sprite_draw_onto(t_sprite *dest, t_vi2d pos, t_sprite *source) +{ + t_vi2d p; + t_color col; + + p.y = 0; + while (p.y < source->height) + { + p.x = 0; + while (p.x < source->width) + { + sprite_get_pixel(source, p, &col); + sprite_draw(dest, vi2d_add(pos, p), col); + p.x++; + } + p.y++; + } +} diff --git a/stdme/src/buffered_str/mod.c b/stdme/src/buffered_str/mod.c new file mode 100644 index 00000000..f408679c --- /dev/null +++ b/stdme/src/buffered_str/mod.c @@ -0,0 +1,82 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mod.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 17:52:12 by maiboyer #+# #+# */ +/* Updated: 2023/12/26 19:54:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/buffered_str/buf_str.h" +#include "me/mem/mem_alloc.h" +#include "me/mem/mem_set_zero.h" +#include "me/string/str_l_cat.h" +#include "me/string/str_l_copy.h" +#include "me/string/str_len.h" +#include "me/types.h" +#include + +bool push_str_buffer(t_buffer_str *buf, t_const_str to_push) +{ + t_usize to_push_len; + t_str temp_buffer; + t_usize new_capacity; + + if (buf == NULL || to_push == NULL) + return (true); + to_push_len = str_len(to_push); + while (buf->len + to_push_len + 2 > buf->capacity) + { + new_capacity = (buf->capacity * 3) / 2 + 1; + temp_buffer = mem_alloc(new_capacity); + if (temp_buffer == NULL) + return (true); + str_l_copy(temp_buffer, buf->buf, new_capacity); + free(buf->buf); + buf->buf = temp_buffer; + buf->capacity = new_capacity; + } + buf->len += to_push_len; + str_l_cat(buf->buf, to_push, buf->capacity); + return (false); +} + +bool push_str_char(t_buffer_str *buf, char to_push) +{ + char push_str[2]; + + push_str[0] = to_push; + push_str[1] = 0; + return (push_str_buffer(buf, push_str)); +} + +void str_clear(t_buffer_str *buf) +{ + mem_set_zero(buf->buf, buf->capacity); + buf->len = 0; + return ; +} + +t_buffer_str alloc_new_buffer(t_usize capacity) +{ + t_buffer_str out; + t_str buf; + + if (capacity == 0) + capacity = 16; + buf = mem_alloc(sizeof(char) * capacity); + if (buf == NULL) + { + out.buf = NULL; + out.capacity = 0; + out.len = 0; + return (out); + } + out.buf = buf; + out.capacity = capacity; + out.len = 0; + return (out); +} diff --git a/stdme/src/char/isalnum.c b/stdme/src/char/isalnum.c new file mode 100644 index 00000000..c4ebcfc5 --- /dev/null +++ b/stdme/src/char/isalnum.c @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isalnum.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/11/09 19:38:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalnum.h" +#include "me/char/isalpha.h" +#include "me/char/isdigit.h" + +bool me_isalnum(char chr) +{ + return (me_isalpha(chr) || me_isdigit(chr)); +} diff --git a/stdme/src/char/isalpha.c b/stdme/src/char/isalpha.c new file mode 100644 index 00000000..bffddf0b --- /dev/null +++ b/stdme/src/char/isalpha.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isalpha.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/11/08 04:01:25 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isalpha.h" + +bool me_isalpha(char chr) +{ + return (('z' >= chr && chr >= 'a') || ('Z' >= chr && chr >= 'A')); +} diff --git a/stdme/src/char/isascii.c b/stdme/src/char/isascii.c new file mode 100644 index 00000000..5645b08c --- /dev/null +++ b/stdme/src/char/isascii.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isascii.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 17:51:01 by maiboyer #+# #+# */ +/* Updated: 2024/04/28 19:41:21 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isascii.h" + +bool me_isascii(char chr) +{ + return (0 <= chr && chr); +} diff --git a/stdme/src/char/isdigit.c b/stdme/src/char/isdigit.c new file mode 100644 index 00000000..f75d219a --- /dev/null +++ b/stdme/src/char/isdigit.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isdigit.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/11/04 16:59:06 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isdigit.h" + +bool me_isdigit(char chr) +{ + return (chr >= '0' && chr <= '9'); +} diff --git a/stdme/src/char/islower.c b/stdme/src/char/islower.c new file mode 100644 index 00000000..384e88cd --- /dev/null +++ b/stdme/src/char/islower.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* islower.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/11/04 16:58:56 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/islower.h" + +bool me_islower(char chr) +{ + return (chr >= 'a' && chr <= 'z'); +} diff --git a/stdme/src/char/isprint.c b/stdme/src/char/isprint.c new file mode 100644 index 00000000..f45c9ee6 --- /dev/null +++ b/stdme/src/char/isprint.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isprint.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/11/04 16:42:38 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isprint.h" + +bool me_isprint(char chr) +{ + return (chr >= ' ' && chr <= '~'); +} diff --git a/other/pipex/src/lib/os/pipe.c b/stdme/src/char/isspace.c similarity index 66% rename from other/pipex/src/lib/os/pipe.c rename to stdme/src/char/isspace.c index c046fdf7..1757f341 100644 --- a/other/pipex/src/lib/os/pipe.c +++ b/stdme/src/char/isspace.c @@ -1,24 +1,19 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* pipe.c :+: :+: :+: */ +/* isspace.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: maiboyer +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2024/01/04 17:59:48 by maiboyer #+# #+# */ -/* Updated: 2024/01/04 18:01:42 by maiboyer ### ########.fr */ +/* Created: 2023/11/06 14:26:25 by maiboyer #+# #+# */ +/* Updated: 2023/11/08 02:39:24 by maiboyer ### ########.fr */ /* */ /* ************************************************************************** */ -#include "me/os/pipe.h" +#include "me/char/isspace.h" -t_error create_pipe(t_pipe *out) +bool me_isspace(char chr) { - t_file fds[2]; - - if (pipe(fds)) - return (ERROR); - out->read = fds[0]; - out->write = fds[1]; - return (NO_ERROR); + return (chr == ' ' || chr == '\f' || chr == '\n' || chr == '\r' + || chr == '\t' || chr == '\v'); } diff --git a/stdme/src/char/isupper.c b/stdme/src/char/isupper.c new file mode 100644 index 00000000..405cb09c --- /dev/null +++ b/stdme/src/char/isupper.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* isupper.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:19:40 by maiboyer #+# #+# */ +/* Updated: 2023/11/08 04:01:59 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isupper.h" + +bool me_isupper(char chr) +{ + return ('Z' >= chr && chr >= 'A'); +} diff --git a/stdme/src/char/tolower.c b/stdme/src/char/tolower.c new file mode 100644 index 00000000..4ee817cf --- /dev/null +++ b/stdme/src/char/tolower.c @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* tolower.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:47:50 by maiboyer #+# #+# */ +/* Updated: 2023/11/04 16:56:03 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isupper.h" +#include "me/char/tolower.h" + +bool me_tolower(char chr) +{ + if (me_isupper(chr)) + return (chr + ('a' - 'A')); + else + return (chr); +} diff --git a/stdme/src/char/toupper.c b/stdme/src/char/toupper.c new file mode 100644 index 00000000..9888b7ee --- /dev/null +++ b/stdme/src/char/toupper.c @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* toupper.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 16:47:50 by maiboyer #+# #+# */ +/* Updated: 2023/11/04 16:51:28 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/islower.h" +#include "me/char/toupper.h" + +bool me_toupper(char chr) +{ + if (me_islower(chr)) + return (chr - ('a' - 'A')); + else + return (chr); +} diff --git a/stdme/src/convert/atoi.c b/stdme/src/convert/atoi.c new file mode 100644 index 00000000..076e6efe --- /dev/null +++ b/stdme/src/convert/atoi.c @@ -0,0 +1,61 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* atoi.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 14:14:00 by maiboyer #+# #+# */ +/* Updated: 2024/01/11 15:37:28 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/char/isdigit.h" +#include "me/char/isspace.h" +#include "me/convert/atoi.h" + +t_i32 me_atoi(t_const_str str) +{ + t_u64 out; + t_u64 sign; + t_usize i; + + out = 0; + i = 0; + sign = 1; + while (me_isspace(str[i])) + i++; + if (str[i] == '+' || str[i] == '-') + if (str[i++] == '-') + sign = -1; + while (me_isdigit(str[i])) + { + out *= 10; + out += str[i] - '0'; + i++; + } + return ((t_i32)(out * sign)); +} + +t_i64 me_atoi_64(t_const_str str) +{ + t_u64 out; + t_u64 sign; + t_usize i; + + out = 0; + i = 0; + sign = 1; + while (me_isspace(str[i])) + i++; + if (str[i] == '+' || str[i] == '-') + if (str[i++] == '-') + sign = -1; + while (me_isdigit(str[i])) + { + out *= 10; + out += str[i] - '0'; + i++; + } + return ((t_i64)(out * sign)); +} diff --git a/stdme/src/convert/itoa.c b/stdme/src/convert/itoa.c new file mode 100644 index 00000000..426d84cc --- /dev/null +++ b/stdme/src/convert/itoa.c @@ -0,0 +1,69 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* itoa.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/03 21:05:46 by maiboyer #+# #+# */ +/* Updated: 2023/11/10 14:56:42 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/convert/itoa.h" +#include "me/mem/mem_set.h" +#include "me/string/str_clone.h" +#include + +static void me_itoa_inner(t_u64 nb, t_str out) +{ + t_i32 modulus; + bool need_print; + char c; + t_usize idx; + + need_print = false; + modulus = 1000000000; + idx = 0; + while (modulus) + { + c = (char)(nb / modulus) + '0'; + if (c != '0' || need_print) + { + out[idx++] = c; + need_print = true; + } + nb = nb % modulus; + modulus /= 10; + } +} + +t_str me_itoa(t_i32 nb) +{ + char out[12]; + t_u64 n; + + n = (t_u64)nb; + mem_set(out, 0, 12); + if (nb < 0) + { + out[0] = '-'; + me_itoa_inner(-n, out + 1); + } + else if (nb == 0) + out[0] = '0'; + else + me_itoa_inner(n, out); + return (str_clone(out)); +} +/*R +int main(void) +{ + me_putnbr(-2147483648); + write(1, "\n", 1); + me_putnbr(0); + write(1, "\n", 1); + me_putnbr(12345); + return (0); +} +R*/ diff --git a/stdme/src/fs/close.c b/stdme/src/fs/close.c new file mode 100644 index 00000000..1b4ef622 --- /dev/null +++ b/stdme/src/fs/close.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* close.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 15:56:56 by maiboyer #+# #+# */ +/* Updated: 2023/12/10 19:05:48 by maix ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/close.h" +#include "me/types.h" +#include + +bool me_close(t_file file, t_i32 *error) +{ + t_i32 res; + bool out; + + res = close(file); + out = res != 0; + if (res && error != NULL) + *error = res; + return (out); +} diff --git a/stdme/src/fs/open.c b/stdme/src/fs/open.c new file mode 100644 index 00000000..96d6200a --- /dev/null +++ b/stdme/src/fs/open.c @@ -0,0 +1,60 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* open.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:29:38 by maiboyer #+# #+# */ +/* Updated: 2024/01/06 18:19:11 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/open.h" +#include + +t_error me_open(t_const_str path, bool read, bool write, t_file *file_out) +{ + t_file out; + int flags; + + flags = 0; + if (read && write) + flags = O_RDWR; + else if (read) + flags = O_RDONLY; + else if (write) + flags = O_WRONLY; + out = open(path, flags, 0666); + if (out < 0) + return (ERROR); + *file_out = out; + return (NO_ERROR); +} + +t_error me_open_truncate(t_const_str path, t_file *file_out) +{ + t_file out; + int flags; + + unlink(path); + flags = O_WRONLY | O_CREAT | O_TRUNC; + out = open(path, flags, 0666); + if (out < 0) + return (ERROR); + *file_out = out; + return (NO_ERROR); +} + +t_error me_open_create(t_const_str path, t_file *file_out) +{ + t_file out; + int flags; + + flags = O_WRONLY | O_CREAT | O_APPEND; + out = open(path, flags, 0666); + if (out < 0) + return (ERROR); + *file_out = out; + return (NO_ERROR); +} diff --git a/stdme/src/fs/putchar_fd.c b/stdme/src/fs/putchar_fd.c new file mode 100644 index 00000000..2a100513 --- /dev/null +++ b/stdme/src/fs/putchar_fd.c @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putchar_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 04:42:45 by maiboyer #+# #+# */ +/* Updated: 2023/11/08 13:22:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/putchar_fd.h" +#include "me/fs/write.h" +#include "me/string/str_len.h" + +void me_putchar_fd(char chr, t_file file) +{ + me_write(file, (t_u8 *)&chr, 1); +} diff --git a/stdme/src/fs/putendl_fd.c b/stdme/src/fs/putendl_fd.c new file mode 100644 index 00000000..ba94ff5e --- /dev/null +++ b/stdme/src/fs/putendl_fd.c @@ -0,0 +1,23 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putendl_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 04:42:45 by maiboyer #+# #+# */ +/* Updated: 2023/11/10 16:23:27 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/putstr_fd.h" +#include "me/fs/write.h" +#include "me/string/str_len.h" + +void me_putendl_fd(t_str str, t_file file) +{ + if (str == NULL) + return ; + me_write(file, (t_u8 *)str, str_len(str)); + me_write(file, (t_u8 *)"\n", 1); +} diff --git a/stdme/src/fs/putnbr_fd.c b/stdme/src/fs/putnbr_fd.c new file mode 100644 index 00000000..e1d8d5a0 --- /dev/null +++ b/stdme/src/fs/putnbr_fd.c @@ -0,0 +1,54 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putnbr_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 12:45:06 by maiboyer #+# #+# */ +/* Updated: 2024/04/28 19:42:10 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/putnbr_fd.h" +#include "me/fs/write.h" + +static void me_inner(t_u64 nb, t_str out, t_usize *idx) +{ + bool need_print; + t_u64 modulus; + char c; + + modulus = 1000000000; + need_print = false; + while (modulus) + { + c = (char)(nb / modulus); + if (c != 0 || need_print) + { + out[(*idx)++] = c + '0'; + need_print = true; + } + nb = nb % modulus; + modulus /= 10; + } +} + +void me_putnbr_fd(t_i32 n, t_file file) +{ + t_usize idx; + t_u64 nb; + char out[15]; + + nb = (t_u64)n; + idx = 0; + if (nb < 0) + { + out[idx++] = '-'; + nb = -nb; + } + if (nb == 0) + out[idx++] = '0'; + me_inner(nb, out, &idx); + me_write(file, (t_u8 *)out, idx); +} diff --git a/stdme/src/fs/putstr_fd.c b/stdme/src/fs/putstr_fd.c new file mode 100644 index 00000000..065b4909 --- /dev/null +++ b/stdme/src/fs/putstr_fd.c @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* putstr_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/08 04:42:45 by maiboyer #+# #+# */ +/* Updated: 2023/11/10 16:23:44 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/putstr_fd.h" +#include "me/fs/write.h" +#include "me/string/str_len.h" + +void me_putstr_fd(t_str str, t_file file) +{ + if (str == NULL) + return ; + me_write(file, (t_u8 *)str, str_len(str)); +} diff --git a/stdme/src/fs/read.c b/stdme/src/fs/read.c new file mode 100644 index 00000000..6635d6be --- /dev/null +++ b/stdme/src/fs/read.c @@ -0,0 +1,24 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* read.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:21:19 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:08:10 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/read.h" +#include + +t_usize me_read(t_file fd, t_u8 *buffer, t_i64 buffer_max, bool *eof_out) +{ + ssize_t out; + + out = read(fd, buffer, buffer_max); + if (out == 0 && buffer_max != 0 && eof_out != NULL) + *eof_out = true; + return (out); +} diff --git a/stdme/src/fs/read_to_vec.c b/stdme/src/fs/read_to_vec.c new file mode 100644 index 00000000..b04f3164 --- /dev/null +++ b/stdme/src/fs/read_to_vec.c @@ -0,0 +1,43 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* read_to_vec.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 18:38:47 by maiboyer #+# #+# */ +/* Updated: 2023/12/30 18:15:58 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/open.h" +#include "me/fs/read.h" +#include "me/mem/mem_copy.h" +#include "me/vec/vec_u8.h" + +#define READ_BUFFER_SIZE 4096 + +bool read_to_vec(t_const_str path, t_vec_u8 *out) +{ + t_u8 temp_buffer[READ_BUFFER_SIZE]; + t_isize read_amount; + t_file f; + bool eof; + t_usize current_size; + + eof = false; + current_size = 0; + if (out == NULL || me_open(path, true, false, &f)) + return (true); + *out = vec_u8_new(READ_BUFFER_SIZE, NULL); + while (!eof) + { + read_amount = me_read(f, temp_buffer, READ_BUFFER_SIZE, &eof); + if (read_amount < 0) + return (true); + vec_u8_reserve(out, current_size + (t_usize)read_amount); + mem_copy(&out->buffer[out->len], temp_buffer, (t_usize)read_amount); + out->len += (t_usize)read_amount; + } + return (false); +} diff --git a/stdme/src/fs/write.c b/stdme/src/fs/write.c new file mode 100644 index 00000000..a51e5fe7 --- /dev/null +++ b/stdme/src/fs/write.c @@ -0,0 +1,19 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* write.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:27:33 by maiboyer #+# #+# */ +/* Updated: 2023/11/03 15:44:38 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/write.h" +#include + +bool me_write(t_file fd, t_u8 *buffer, t_i64 size) +{ + return (write(fd, buffer, size) < 0); +} diff --git a/stdme/src/gnl/get_next_line.c b/stdme/src/gnl/get_next_line.c new file mode 100644 index 00000000..74ec66fa --- /dev/null +++ b/stdme/src/gnl/get_next_line.c @@ -0,0 +1,128 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* get_next_line.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/23 17:38:21 by maix #+# #+# */ +/* Updated: 2023/12/11 19:10:26 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/buffered_str/buf_str.h" +#include "me/gnl/gnl.h" +#include "me/mem/mem_alloc.h" +#include "me/mem/mem_move.h" +#include "me/string/str_len.h" +#include "me/types.h" +#include +#include +#include + +static t_static_buffer *get_next_line_buffer(t_file fd) +{ + t_usize index; + static t_static_buffer bufs[BUFFER_LENGTH] = {0}; + + index = 0; + while (index < BUFFER_LENGTH && (bufs[index].fd != fd && bufs[index].used)) + index++; + if (index == BUFFER_LENGTH) + return (NULL); + bufs[index].fd = fd; + bufs[index].used = true; + return (&bufs[index]); +} + +static bool copy_next_line_into_buffer(t_file fd, t_buffer_str *out, + char *temp_buffer, t_usize amount) +{ + char *buf; + char *newline; + bool got_newline; + t_usize other_part_len; + + buf = get_next_line_buffer(fd)->buf; + newline = buf; + while (*newline != '\n' && *newline && newline < buf + amount) + newline++; + got_newline = *newline == '\n'; + other_part_len = amount - (t_usize)(newline - buf + !got_newline); + if (amount < (t_usize)(newline - buf + !got_newline)) + other_part_len = 0; + mem_move(temp_buffer, buf, (t_usize)(newline - buf + got_newline)); + buf[(t_usize)(newline - buf)] = 0; + temp_buffer[(t_usize)(newline - buf + got_newline)] = 0; + mem_move(buf, newline + 1, other_part_len); + push_str_buffer(out, temp_buffer); + buf[amount - (t_usize)(newline - buf + got_newline)] = 0; + return (got_newline); +} + +static bool read_and_copy(t_file fd, t_buffer_str *out, char *tmp, + t_copy_flags *flags) +{ + t_isize amount; + t_static_buffer *buf; + + buf = get_next_line_buffer(fd); + amount = read(fd, &buf->buf, BUFFER_SIZE); + flags->error = amount < 0; + if (flags->error) + return (true); + buf->init = true; + if ((t_isize)amount < (t_isize)BUFFER_SIZE) + { + copy_next_line_into_buffer(fd, out, tmp, (t_usize)amount); + flags->empty_read = (amount == 0 && out->len == 0); + return (true); + } + buf->buf[(t_usize)amount] = 0; + return (copy_next_line_into_buffer(fd, out, tmp, (t_usize)amount)); +} + +static bool handle_leftovers(t_file fd, char *temp_buffer, t_buffer_str *buf) +{ + t_static_buffer *static_buffer; + + static_buffer = get_next_line_buffer(fd); + if (static_buffer->init) + { + if (copy_next_line_into_buffer(fd, buf, temp_buffer, + str_len(static_buffer->buf))) + { + free(temp_buffer); + return (true); + } + } + return (false); +} + +t_buffer_str get_next_line(t_file fd, bool *error) +{ + t_buffer_str buf; + char *temp_buffer; + t_copy_flags flags; + + *error = false; + if (fd < 0 || BUFFER_SIZE <= 0) + return (*error = true, (t_buffer_str){0}); + flags = (t_copy_flags){ + .error = false, + .empty_read = false, + }; + temp_buffer = mem_alloc(sizeof(char) * (BUFFER_SIZE + 2)); + buf = alloc_new_buffer(32); + if (handle_leftovers(fd, temp_buffer, &buf)) + return (buf); + while (!read_and_copy(fd, &buf, temp_buffer, &flags) && !flags.empty_read) + ; + free(temp_buffer); + if (flags.error || flags.empty_read) + { + free(buf.buf); + return (*error = true, (t_buffer_str){0}); + } + return (buf); +} diff --git a/stdme/src/hash/hash_signed.c b/stdme/src/hash/hash_signed.c new file mode 100644 index 00000000..28fd3301 --- /dev/null +++ b/stdme/src/hash/hash_signed.c @@ -0,0 +1,39 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hash_signed.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 17:26:06 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 17:27:12 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/hasher.h" +#include "me/types.h" + +void hasher_write_i8(t_hasher *hasher, t_i8 n) +{ + hasher_write_bytes(hasher, (t_u8 *)&n, 1); +} + +void hasher_write_i16(t_hasher *hasher, t_i16 n) +{ + hasher_write_bytes(hasher, (t_u8 *)&n, 2); +} + +void hasher_write_i32(t_hasher *hasher, t_i32 n) +{ + hasher_write_bytes(hasher, (t_u8 *)&n, 1); +} + +void hasher_write_i64(t_hasher *hasher, t_i64 n) +{ + hasher_write_bytes(hasher, (t_u8 *)&n, 1); +} + +void hasher_write_isize(t_hasher *hasher, t_isize n) +{ + hasher_write_bytes(hasher, (t_u8 *)&n, sizeof(t_isize)); +} diff --git a/stdme/src/hash/hash_unsigned.c b/stdme/src/hash/hash_unsigned.c new file mode 100644 index 00000000..2e4ed868 --- /dev/null +++ b/stdme/src/hash/hash_unsigned.c @@ -0,0 +1,34 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hash_unsigned.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 17:25:23 by maiboyer #+# #+# */ +/* Updated: 2023/12/27 16:37:58 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/hasher.h" +#include "me/types.h" + +void hasher_write_u8(t_hasher *hasher, t_u8 byte) +{ + hasher->hash_bytes(hasher->hasher, &byte, 1); +} + +void hasher_write_u16(t_hasher *hasher, t_u16 byte) +{ + hasher->hash_bytes(hasher->hasher, (t_u8 *)&byte, 2); +} + +void hasher_write_u32(t_hasher *hasher, t_u32 byte) +{ + hasher->hash_bytes(hasher->hasher, (t_u8 *)&byte, 4); +} + +void hasher_write_u64(t_hasher *hasher, t_u64 byte) +{ + hasher->hash_bytes(hasher->hasher, (t_u8 *)&byte, 8); +} diff --git a/stdme/src/hash/hasher.c b/stdme/src/hash/hasher.c new file mode 100644 index 00000000..8e544e14 --- /dev/null +++ b/stdme/src/hash/hasher.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hasher.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 15:58:12 by maiboyer #+# #+# */ +/* Updated: 2023/12/27 16:44:25 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/hasher.h" +#include "me/types.h" + +t_u64 hasher_finish(t_hasher *hasher) +{ + return (hasher->finish(hasher->hasher)); +} + +t_u64 hasher_reset_and_finish(t_hasher *hasher) +{ + return (hasher->reset_and_finish(hasher->hasher)); +} + +void hasher_write_bytes(t_hasher *hasher, t_u8 *bytes, t_usize count) +{ + hasher->hash_bytes(hasher->hasher, bytes, count); +} diff --git a/stdme/src/hash/sip/sip13.c b/stdme/src/hash/sip/sip13.c new file mode 100644 index 00000000..d9ab5158 --- /dev/null +++ b/stdme/src/hash/sip/sip13.c @@ -0,0 +1,31 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sip13.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/10 19:32:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/27 16:48:13 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/sip.h" +#include "me/hash/sip/sip_utils.h" +#include "me/mem/mem_alloc.h" + +t_hasher hasher_sip13_new(void) +{ + t_hasher out; + t_sip13 *inner; + + inner = mem_alloc(sizeof(t_sip13)); + inner->state = create_state_with_key(0, 0); + inner->k0 = 0; + inner->k1 = 0; + out.hasher = inner; + out.hash_bytes = (t_hash_bytes)sip13_write_bytes; + out.finish = (t_hasher_finish)sip13_finish; + out.reset_and_finish = (t_hasher_reset_and_finish)sip13_reset_and_finish; + return (out); +} diff --git a/stdme/src/hash/sip/sip_utils.c b/stdme/src/hash/sip/sip_utils.c new file mode 100644 index 00000000..aed4a334 --- /dev/null +++ b/stdme/src/hash/sip/sip_utils.c @@ -0,0 +1,106 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sip_utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/10 20:02:12 by maix #+# #+# */ +/* Updated: 2023/12/11 19:09:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/sip.h" +#include "me/hash/sip/sip_utils.h" +#include "me/num/u64.h" +#include "me/num/usize.h" +#include +#include + +static t_usize me_min(t_usize lhs, t_usize rhs) +{ + if (lhs < rhs) + return (lhs); + return (rhs); +} + +static t_usize handle_remaining(t_sip13 *self, t_u8 *msg, t_usize count, + bool *exit_early) +{ + t_usize needed; + + needed = 0; + *exit_early = false; + if (self->ntail != 0) + { + needed = 8 - self->ntail; + self->tail |= u64_from_bytes(msg, me_min(count, needed)) << (8 \ + * self->ntail); + if (count < needed) + { + self->ntail += count; + *exit_early = true; + return (needed); + } + else + { + self->state.v3 ^= self->tail; + compress(&self->state); + self->state.v0 ^= self->tail; + self->ntail = 0; + } + } + return (needed); +} + +t_usize read_u8_to_u64(t_u8 p[]) +{ + return (((t_u64)((p)[0])) | ((t_u64)((p)[1]) << 8) | \ + ((t_u64)((p)[2]) << 16) | ((t_u64)((p)[3]) << 24) | \ + ((t_u64)((p)[4]) << 32) | ((t_u64)((p)[5]) << 40) | \ + ((t_u64)((p)[6]) << 48) | ((t_u64)((p)[7]) << 56)); +} + +void sip13_write_bytes(t_sip13 *self, t_u8 *msg, t_usize count) +{ + bool exit_early; + t_usize needed; + t_usize left; + t_usize i; + t_u64 mi; + + self->length += count; + needed = handle_remaining(self, msg, count, &exit_early); + if (exit_early) + return ; + count = count - needed; + left = count & 0x7; + i = needed; + while (i < count - left) + { + mi = read_u8_to_u64(msg + i); + self->state.v3 ^= mi; + compress(&self->state); + self->state.v0 ^= mi; + i += 8; + } + self->tail = u64_from_7bytes(msg, i, left); + self->ntail = left; +} + +t_u64 sip13_finish(t_sip13 *self) +{ + t_sip_state state; + t_u64 b; + + state = self->state; + b = (((t_u64)self->length & 0xff) << 56) | self->tail; + state.v3 ^= b; + compress(&state); + state.v0 ^= b; + state.v2 ^= 0xff; + compress(&state); + compress(&state); + free(self); + return (state.v0 ^ state.v1 ^ state.v2 ^ state.v3); +} diff --git a/stdme/src/hash/sip/sip_utils2.c b/stdme/src/hash/sip/sip_utils2.c new file mode 100644 index 00000000..45758218 --- /dev/null +++ b/stdme/src/hash/sip/sip_utils2.c @@ -0,0 +1,68 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* sip_utils2.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:29:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/27 16:52:17 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/hash/sip/sip_utils.h" +#include "me/num/usize.h" + +void compress(t_sip_state *state) +{ + state->v0 = state->v0 + state->v1; + state->v1 = usize_rotate_left(state->v1, 13); + state->v1 ^= state->v0; + state->v0 = usize_rotate_left(state->v0, 32); + state->v2 = state->v2 + state->v3; + state->v3 = usize_rotate_left(state->v3, 16); + state->v3 ^= state->v2; + state->v0 = state->v0 + state->v3; + state->v3 = usize_rotate_left(state->v3, 21); + state->v3 ^= state->v0; + state->v2 = state->v2 + state->v1; + state->v1 = usize_rotate_left(state->v1, 17); + state->v1 ^= state->v2; + state->v2 = usize_rotate_left(state->v2, 32); +} + +t_sip_state create_state_with_key(t_u64 k0, t_u64 k1) +{ + t_sip_state state; + + state = (t_sip_state){.v0 = 0, .v1 = 0, .v2 = 0, .v3 = 0}; + state.v0 = k0 ^ 0x736f6d6570736575; + state.v1 = k1 ^ 0x646f72616e646f6d; + state.v2 = k0 ^ 0x6c7967656e657261; + state.v3 = k1 ^ 0x7465646279746573; + return (state); +} + +t_u64 sip13_reset_and_finish(t_sip13 *self) +{ + t_sip_state state; + t_u64 b; + t_u64 ret; + + state = self->state; + b = (((t_u64)self->length & 0xff) << 56) | self->tail; + state.v3 ^= b; + compress(&state); + state.v0 ^= b; + state.v2 ^= 0xff; + compress(&state); + compress(&state); + ret = (state.v0 ^ state.v1 ^ state.v2 ^ state.v3); + self->length = 0; + self->state.v0 = self->k0 ^ 0x736f6d6570736575; + self->state.v1 = self->k1 ^ 0x646f72616e646f6d; + self->state.v2 = self->k0 ^ 0x6c7967656e657261; + self->state.v3 = self->k1 ^ 0x7465646279746573; + self->ntail = 0; + return (ret); +} diff --git a/stdme/src/img/qoi/qoi_decode.c b/stdme/src/img/qoi/qoi_decode.c new file mode 100644 index 00000000..971f8bc2 --- /dev/null +++ b/stdme/src/img/qoi/qoi_decode.c @@ -0,0 +1,73 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_decode.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/25 22:31:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 22:35:44 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/img/qoi.h" +#include "me/img/qoi/qoi_utils.h" +#include "me/img/qoi/qoi_decode.h" + +static inline void *qoi_decode_inner(t_decode_vals *vals, const t_u8 *bytes, + t_i32 channels, t_i32 size) +{ + t_u8 *pixels; + + pixels = (t_u8 *)mem_alloc(vals->px_len); + if (!pixels) + return (NULL); + mem_set_zero(vals->index, sizeof(vals->index)); + vals->px.v = 0; + vals->px.rgba.a = 255; + vals->chunks_len = size - (t_i32) sizeof(t_u8[8]); + vals->px_pos = 0; + while (vals->px_pos < vals->px_len) + { + if (vals->run > 0) + vals->run--; + else if (vals->p < vals->chunks_len) + qoi_decode_inner_inner(vals, bytes); + pixels[vals->px_pos + 0] = vals->px.rgba.r; + pixels[vals->px_pos + 1] = vals->px.rgba.g; + pixels[vals->px_pos + 2] = vals->px.rgba.b; + if (channels == 4) + pixels[vals->px_pos + 3] = vals->px.rgba.a; + vals->px_pos += channels; + } + return (pixels); +} + +void *qoi_decode(const void *data, t_i32 size, t_qoi_desc *desc, + t_i32 channels) +{ + const t_u8 *bytes; + t_decode_vals vals; + + vals.p = 0; + vals.run = 0; + if (data == NULL || desc == NULL || (channels != 0 && channels != 3 + && channels != 4) || size < QOI_HEADER_SIZE + + (t_i32) sizeof(t_u8[8])) + return (NULL); + bytes = (const t_u8 *)data; + vals.header_magic = qoi_read_32(bytes, &vals.p); + desc->width = qoi_read_32(bytes, &vals.p); + desc->height = qoi_read_32(bytes, &vals.p); + desc->channels = bytes[vals.p++]; + desc->colorspace = bytes[vals.p++]; + if (desc->width == 0 || desc->height == 0 || desc->channels < 3 + || desc->channels > 4 || desc->colorspace > 1 + || vals.header_magic != QOI_MAGIC || desc->height >= QOI_PIXELS_MAX + / desc->width) + return (NULL); + if (channels == 0) + channels = desc->channels; + vals.px_len = desc->width * desc->height * channels; + return (qoi_decode_inner(&vals, bytes, channels, size)); +} diff --git a/stdme/src/img/qoi/qoi_encode.c b/stdme/src/img/qoi/qoi_encode.c new file mode 100644 index 00000000..137bc968 --- /dev/null +++ b/stdme/src/img/qoi/qoi_encode.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_encode.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/25 22:38:42 by maiboyer #+# #+# */ +/* Updated: 2023/12/25 22:56:06 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/img/qoi.h" +#include "me/img/qoi/qoi_encode.h" +#include "me/img/qoi/qoi_utils.h" + +void *qoi_encode(const void *data, const t_qoi_desc *desc, t_i32 *out_len) +{ + t_encode_vals vals; + + if (data == NULL || out_len == NULL || desc == NULL || desc->width == 0 + || desc->height == 0 || desc->channels < 3 || desc->channels > 4 + || desc->colorspace > 1 || desc->height >= QOI_PIXELS_MAX / desc->width) + return (NULL); + vals = (t_encode_vals){0}; + vals.max_size = desc->width * desc->height * (desc->channels + 1) + + QOI_HEADER_SIZE + sizeof(t_u8[8]); + return (qoi_encode_inner(&vals, desc, (const t_u8 *)data, out_len)); +} diff --git a/stdme/src/img/qoi/qoi_fs.c b/stdme/src/img/qoi/qoi_fs.c new file mode 100644 index 00000000..9be0545a --- /dev/null +++ b/stdme/src/img/qoi/qoi_fs.c @@ -0,0 +1,49 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_fs.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 19:06:05 by maiboyer #+# #+# */ +/* Updated: 2023/12/24 19:18:01 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/fs/close.h" +#include "me/fs/open.h" +#include "me/fs/read_to_vec.h" +#include "me/fs/write.h" +#include "me/img/qoi.h" +#include + +t_i32 qoi_write(t_const_str filename, const void *data, + const t_qoi_desc *desc) +{ + t_file f; + void *encoded; + t_i32 size; + + if (me_open(filename, false, true, &f)) + return (0); + encoded = qoi_encode(data, desc, &size); + if (!encoded) + return (me_close(f, NULL), 0); + if (me_write(f, encoded, size)) + return (me_close(f, NULL), 0); + me_close(f, NULL); + free(encoded); + return (size); +} + +void *qoi_read(t_const_str filename, t_qoi_desc *desc, t_i32 channels) +{ + t_vec_u8 out; + void *pixels; + + if (read_to_vec(filename, &out)) + return (NULL); + pixels = qoi_decode(out.buffer, out.len, desc, channels); + vec_u8_free(out); + return (pixels); +} diff --git a/stdme/src/img/qoi/qoi_utils.c b/stdme/src/img/qoi/qoi_utils.c new file mode 100644 index 00000000..7eb494b8 --- /dev/null +++ b/stdme/src/img/qoi/qoi_utils.c @@ -0,0 +1,36 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* qoi_utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/24 19:02:03 by maiboyer #+# #+# */ +/* Updated: 2023/12/24 19:02:42 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/img/qoi/qoi_utils.h" +#include "me/types.h" + +void qoi_write_32(t_u8 *bytes, t_i32 *p, t_u32 v) +{ + bytes[(*p)++] = (0xff000000 & v) >> 24; + bytes[(*p)++] = (0x00ff0000 & v) >> 16; + bytes[(*p)++] = (0x0000ff00 & v) >> 8; + bytes[(*p)++] = (0x000000ff & v); +} + +t_u32 qoi_read_32(const t_u8 *bytes, t_i32 *p) +{ + t_u32 a; + t_u32 b; + t_u32 c; + t_u32 d; + + a = bytes[(*p)++]; + b = bytes[(*p)++]; + c = bytes[(*p)++]; + d = bytes[(*p)++]; + return (a << 24 | b << 16 | c << 8 | d); +} diff --git a/stdme/src/list/list_add_back.c b/stdme/src/list/list_add_back.c new file mode 100644 index 00000000..0c8bea48 --- /dev/null +++ b/stdme/src/list/list_add_back.c @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_add_back.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:38:45 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:02:42 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_add_back.h" +#include "me/list/list_get_last.h" + +void list_add_back(t_list **list, t_list *new) +{ + if (*list) + list_get_last(*list)->next = new; + else + *list = new; +} diff --git a/stdme/src/list/list_add_front.c b/stdme/src/list/list_add_front.c new file mode 100644 index 00000000..5b1244f3 --- /dev/null +++ b/stdme/src/list/list_add_front.c @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_add_front.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:15:23 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:02:50 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_add_front.h" +#include "me/list/list_alloc_node.h" + +void list_add_front(t_list **lst, t_list *new) +{ + new->next = *lst; + *lst = new; +} diff --git a/stdme/src/list/list_alloc_node.c b/stdme/src/list/list_alloc_node.c new file mode 100644 index 00000000..7e93cdc2 --- /dev/null +++ b/stdme/src/list/list_alloc_node.c @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_alloc_node.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 19:57:28 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:13:05 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_alloc_node.h" +#include "me/mem/mem_alloc.h" + +t_list *list_alloc_node(void *content) +{ + t_list *out; + + out = mem_alloc(sizeof(t_list) * 1); + if (out == NULL) + return (NULL); + out->content = content; + out->next = NULL; + return (out); +} diff --git a/stdme/src/list/list_free_all.c b/stdme/src/list/list_free_all.c new file mode 100644 index 00000000..af358b99 --- /dev/null +++ b/stdme/src/list/list_free_all.c @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_free_all.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:35:20 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:03:34 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_free_all.h" +#include + +void list_free_all(t_list **lst, void (*del)(void *)) +{ + t_list *tmp; + + if (lst == NULL || del == NULL) + return ; + while (*lst) + { + del((*lst)->content); + tmp = *lst; + *lst = (*lst)->next; + free(tmp); + } + *lst = NULL; +} diff --git a/stdme/src/list/list_free_one.c b/stdme/src/list/list_free_one.c new file mode 100644 index 00000000..df442990 --- /dev/null +++ b/stdme/src/list/list_free_one.c @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_free_one.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:30:20 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:03:42 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_free_one.h" +#include + +void list_free_one(t_list *lst, void (*del)(void *)) +{ + if (lst == NULL || del == NULL) + return ; + del(lst->content); + free(lst); +} diff --git a/stdme/src/list/list_get_last.c b/stdme/src/list/list_get_last.c new file mode 100644 index 00000000..789796c0 --- /dev/null +++ b/stdme/src/list/list_get_last.c @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_get_last.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:37:08 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:03:49 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_get_last.h" + +t_list *list_get_last(t_list *list) +{ + t_list *head; + + head = list; + if (head == NULL) + return (NULL); + while (head->next) + head = head->next; + return (head); +} diff --git a/stdme/src/list/list_iter.c b/stdme/src/list/list_iter.c new file mode 100644 index 00000000..e1d6c6ef --- /dev/null +++ b/stdme/src/list/list_iter.c @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_iter.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:39:05 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:03:55 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_iter.h" + +void list_iter(t_list *list, void (*f)(void *)) +{ + while (list) + { + f(list->content); + list = list->next; + } +} diff --git a/stdme/src/list/list_map.c b/stdme/src/list/list_map.c new file mode 100644 index 00000000..0be27356 --- /dev/null +++ b/stdme/src/list/list_map.c @@ -0,0 +1,40 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_map.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 21:40:24 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:05:20 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_alloc_node.h" +#include "me/list/list_free_all.h" +#include "me/list/list_map.h" +#include + +t_list *list_map(t_list *lst, void *(*f)(void *), void (*del)(void *)) +{ + void *data; + t_list new; + t_list *cursor; + + new = (t_list){.next = NULL, .content = NULL}; + cursor = &new; + while (lst) + { + data = f(lst->content); + cursor->next = list_alloc_node(data); + if (cursor->next == NULL) + { + del(data); + list_free_all(&new.next, del); + return (NULL); + } + cursor = cursor->next; + lst = lst->next; + } + return (new.next); +} diff --git a/stdme/src/list/list_size.c b/stdme/src/list/list_size.c new file mode 100644 index 00000000..58efc4a3 --- /dev/null +++ b/stdme/src/list/list_size.c @@ -0,0 +1,28 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* list_size.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 20:23:19 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:05:00 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/list/list_size.h" + +t_usize list_size(t_list *lst) +{ + t_list *head; + t_usize idx; + + head = lst; + idx = 0; + while (head) + { + head = head->next; + idx++; + } + return (idx); +} diff --git a/stdme/src/mem/mem_alloc.c b/stdme/src/mem/mem_alloc.c new file mode 100644 index 00000000..a52c40a5 --- /dev/null +++ b/stdme/src/mem/mem_alloc.c @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_alloc.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/06 14:47:49 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:14:11 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include + +void *mem_alloc(t_usize size) +{ + void *out; + size_t i; + + i = 0; + out = malloc(size); + while (out && i < size) + ((t_u8 *)out)[i++] = 0; + return (out); +} diff --git a/stdme/src/mem/mem_alloc_array.c b/stdme/src/mem/mem_alloc_array.c new file mode 100644 index 00000000..b17ce7f7 --- /dev/null +++ b/stdme/src/mem/mem_alloc_array.c @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_alloc_array.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 15:53:21 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:14:47 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include "me/mem/mem_alloc_array.h" +#include + +void *mem_alloc_array(t_usize item_count, t_usize item_size) +{ + t_usize multiplied; + + multiplied = item_count * item_size; + if (multiplied == 0 || multiplied / item_count != item_size) + return (NULL); + return (mem_alloc(multiplied)); +} diff --git a/stdme/src/mem/mem_compare.c b/stdme/src/mem/mem_compare.c new file mode 100644 index 00000000..76d9d5bc --- /dev/null +++ b/stdme/src/mem/mem_compare.c @@ -0,0 +1,31 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_compare.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:00:58 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_compare.h" + +t_i32 mem_compare(const void *lhs, const void *rhs, t_usize count) +{ + t_usize i; + t_u8 *lhs_; + t_u8 *rhs_; + + i = 0; + lhs_ = (t_u8 *)lhs; + rhs_ = (t_u8 *)rhs; + while (i < count) + { + if (lhs_[i] - rhs_[i]) + return ((t_i32)(lhs_[i] - rhs_[i])); + i++; + } + return (0); +} diff --git a/stdme/src/mem/mem_copy.c b/stdme/src/mem/mem_copy.c new file mode 100644 index 00000000..bbd72980 --- /dev/null +++ b/stdme/src/mem/mem_copy.c @@ -0,0 +1,32 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_copy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:01:08 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_copy.h" + +void *mem_copy(void *destination, const void *source, t_usize count) +{ + t_usize i; + t_u8 *dst; + t_u8 *src; + + i = 0; + dst = (t_u8 *)destination; + src = (t_u8 *)source; + if (dst == src) + return (destination); + while (i < count) + { + dst[i] = src[i]; + i++; + } + return (destination); +} diff --git a/stdme/src/mem/mem_find.c b/stdme/src/mem/mem_find.c new file mode 100644 index 00000000..e38303e1 --- /dev/null +++ b/stdme/src/mem/mem_find.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_find.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:01:36 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_find.h" + +void *mem_find(void *buf, t_u8 find, t_usize count) +{ + t_usize i; + t_u8 *buf_bytes; + + i = 0; + buf_bytes = (t_u8 *)buf; + while (i < count) + { + if (buf_bytes[i] == find) + return ((void *)&buf_bytes[i]); + i++; + } + return (NULL); +} diff --git a/stdme/src/mem/mem_find_bytes.c b/stdme/src/mem/mem_find_bytes.c new file mode 100644 index 00000000..43704270 --- /dev/null +++ b/stdme/src/mem/mem_find_bytes.c @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_find_bytes.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2024/01/06 17:14:23 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_find_bytes.h" +#include "stdio.h" + +void *mem_find_bytes(void *buf, t_u8 *find, t_usize find_len, t_usize count) +{ + t_usize i; + t_usize j; + t_u8 *buf_bytes; + + i = 0; + buf_bytes = (t_u8 *)buf; + while (i < count) + { + j = 0; + while (j < find_len && i + j < count) + { + if (buf_bytes[i + j] != find[j]) + break ; + j++; + } + if (j == find_len) + return ((void *)&buf_bytes[i]); + i++; + } + return (NULL); +} diff --git a/stdme/src/mem/mem_move.c b/stdme/src/mem/mem_move.c new file mode 100644 index 00000000..03ebde31 --- /dev/null +++ b/stdme/src/mem/mem_move.c @@ -0,0 +1,42 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_move.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:01:43 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_move.h" + +void *mem_move(void *destination, const void *source, t_usize count) +{ + t_usize i; + t_u8 *dst; + t_u8 *src; + + i = 0; + dst = (t_u8 *)destination; + src = (t_u8 *)source; + if (dst < src) + { + while (i < count) + { + dst[i] = src[i]; + i++; + } + } + else if (dst > src) + { + i = count; + while (i > 0) + { + i--; + dst[i] = src[i]; + } + } + return (destination); +} diff --git a/stdme/src/mem/mem_set.c b/stdme/src/mem/mem_set.c new file mode 100644 index 00000000..106c736a --- /dev/null +++ b/stdme/src/mem/mem_set.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_set.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:16:02 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:15:22 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_set.h" + +void mem_set(void *buf, t_u8 fill_by, t_usize count) +{ + t_usize i; + t_u8 *buf_bytes; + + i = 0; + buf_bytes = (t_u8 *)buf; + while (i < count) + { + buf_bytes[i] = fill_by; + i++; + } +} diff --git a/stdme/src/mem/mem_set_zero.c b/stdme/src/mem/mem_set_zero.c new file mode 100644 index 00000000..b12e07d9 --- /dev/null +++ b/stdme/src/mem/mem_set_zero.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* mem_set_zero.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 11:58:11 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 15:01:57 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_set_zero.h" + +void mem_set_zero(void *buf, t_usize count) +{ + t_u8 *buffer; + t_usize index; + + index = 0; + buffer = (t_u8 *)buf; + while (index < count) + { + buffer[index] = 0; + index++; + } +} diff --git a/stdme/src/num/u16/rotate.c b/stdme/src/num/u16/rotate.c new file mode 100644 index 00000000..6d1a3f8e --- /dev/null +++ b/stdme/src/num/u16/rotate.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* rotate.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:08:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:13:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/num/u16.h" + +t_u16 u16_rotate_left(t_u16 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value << by) | (value >> (sizeof(value) * 8 - by))); +} + +t_u16 u16_rotate_right(t_u16 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value >> by) | (value << (sizeof(value) * 8 - by))); +} diff --git a/stdme/src/num/u32/rotate.c b/stdme/src/num/u32/rotate.c new file mode 100644 index 00000000..2a7e5c2d --- /dev/null +++ b/stdme/src/num/u32/rotate.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* rotate.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:08:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:13:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/num/u32.h" + +t_u32 u32_rotate_left(t_u32 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value << by) | (value >> (sizeof(value) * 8 - by))); +} + +t_u32 u32_rotate_right(t_u32 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value >> by) | (value << (sizeof(value) * 8 - by))); +} diff --git a/stdme/src/num/u64/from_bytes.c b/stdme/src/num/u64/from_bytes.c new file mode 100644 index 00000000..70b162f1 --- /dev/null +++ b/stdme/src/num/u64/from_bytes.c @@ -0,0 +1,57 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* from_bytes.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:30:56 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:09:52 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/num/u64.h" + +t_u64 u64_from_7bytes(t_u8 *msg, t_usize start, t_usize len) +{ + t_usize i; + t_usize out; + t_u64 temp_val; + + i = 0; + out = 0; + if (i + 3 < len) + { + temp_val = (t_u64)(msg[start + i]); + temp_val |= (t_u64)(msg[start + i + 1]) << (8 * 1); + temp_val |= (t_u64)(msg[start + i + 2]) << (8 * 2); + temp_val |= (t_u64)(msg[start + i + 3]) << (8 * 3); + out = temp_val; + i += 4; + } + if (i + 1 < len) + { + temp_val = ((t_u64)(msg[start + i + 1]) << (8 * 1)) | (t_u64)(msg[start \ + + i]); + out |= temp_val << (i * 8); + i += 2; + } + if (i++ < len) + out |= (t_u64)(msg[start + i - 1]) << ((i - 1) * 8); + return (out); +} + +t_u64 u64_from_bytes(t_u8 *bytes, t_usize len) +{ + t_u64 out; + t_usize i; + + i = 0; + out = 0; + while (i < len && i < 8) + { + out |= ((t_u64)(bytes[i])) << (8 * i); + i++; + } + return (out); +} diff --git a/stdme/src/num/u64/rotate.c b/stdme/src/num/u64/rotate.c new file mode 100644 index 00000000..561d5538 --- /dev/null +++ b/stdme/src/num/u64/rotate.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* rotate.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:08:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:24:16 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/num/u64.h" + +t_u64 u64_rotate_left(t_u64 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value << by) | (value >> (sizeof(value) * 8 - by))); +} + +t_u64 u64_rotate_right(t_u64 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value >> by) | (value << (sizeof(value) * 8 - by))); +} diff --git a/stdme/src/num/u8/rotate.c b/stdme/src/num/u8/rotate.c new file mode 100644 index 00000000..45f0fd87 --- /dev/null +++ b/stdme/src/num/u8/rotate.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* rotate.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:08:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:13:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/num/u8.h" + +t_u8 u8_rotate_left(t_u8 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value << by) | (value >> (sizeof(value) * 8 - by))); +} + +t_u8 u8_rotate_right(t_u8 value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value >> by) | (value << (sizeof(value) * 8 - by))); +} diff --git a/stdme/src/num/usize/rotate.c b/stdme/src/num/usize/rotate.c new file mode 100644 index 00000000..7ad365d2 --- /dev/null +++ b/stdme/src/num/usize/rotate.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* rotate.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/11 14:08:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 14:13:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/num/usize.h" + +t_usize usize_rotate_left(t_usize value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value << by) | (value >> (sizeof(value) * 8 - by))); +} + +t_usize usize_rotate_right(t_usize value, t_usize by) +{ + by &= sizeof(value) * 8 - 1; + if (by == 0) + return (value); + return ((value >> by) | (value << (sizeof(value) * 8 - by))); +} diff --git a/stdme/src/printf/formatter/char.c b/stdme/src/printf/formatter/char.c new file mode 100644 index 00000000..dcbe7428 --- /dev/null +++ b/stdme/src/printf/formatter/char.c @@ -0,0 +1,70 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* char.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/18 18:12:11 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:18:48 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_set.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/string/str_substring.h" +#include + +void printf_c(t_printf_arg data, t_printf_func f) +{ + char value[2]; + t_str start_num; + + value[0] = *(char *)data.argument; + value[1] = 0; + start_num = &value[0]; + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .len = 1, .pretty = "", .pretty_len = 0, \ +.str = start_num, .allow_zero_fill = false, .sign = NULL, \ +.sign_len = 0, }, data, f); +} + +t_usize printf_s_inner(t_str *value, t_printf_arg *data, t_printf_func *f) +{ + t_usize len; + + if (*value == NULL) + { + if (data->flags & (PRECISION) && data->extra.precision < 6) + *value = ""; + else + *value = "(null)"; + } + len = str_len(*value); + if (data->flags & (PRECISION) && len > data->extra.precision) + len = data->extra.precision; + if (data->flags & (PRECISION) && len < data->extra.precision) + data->extra.precision = len; + (void)(f); + return (len); +} + +void printf_s(t_printf_arg data, t_printf_func f) +{ + t_str value; + t_str start_num; + t_usize len; + + value = (t_str)data.argument; + len = printf_s_inner(&value, &data, &f); + start_num = str_substring(value, 0, len); + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .len = len, .pretty = "", .pretty_len = 0, \ +.str = start_num, .allow_zero_fill = false, .sign = NULL, \ +.sign_len = 0, }, data, f); + free(start_num); +} diff --git a/stdme/src/printf/formatter/decimal.c b/stdme/src/printf/formatter/decimal.c new file mode 100644 index 00000000..b99b5e30 --- /dev/null +++ b/stdme/src/printf/formatter/decimal.c @@ -0,0 +1,89 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* decimal.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/18 01:44:35 by maix #+# #+# */ +/* Updated: 2023/12/11 19:19:27 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_set.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/string/str_clone.h" +#include "me/string/str_len.h" +#include +#include +#define INT_INLINE_BUF 21 + +static void itoa_inner(t_u64 nb, t_str out) +{ + t_u64 modulus; + bool need_print; + char c; + t_usize idx; + + need_print = false; + modulus = 1000000000000000000; + idx = 0; + while (modulus) + { + c = (char)(nb / modulus) + '0'; + if (c != '0' || need_print) + { + out[idx++] = c; + need_print = true; + } + nb = nb % modulus; + modulus /= 10; + } +} + +static t_str itoa_64(t_i64 nb) +{ + char out[INT_INLINE_BUF]; + t_u64 n; + + n = (t_u64)nb; + mem_set(out, 0, INT_INLINE_BUF); + if (nb < 0) + itoa_inner(-n, out); + else if (nb == 0) + out[0] = '0'; + else + itoa_inner(n, out); + return (str_clone(out)); +} + +void printf_d(t_printf_arg data, t_printf_func f) +{ + t_u64 value; + t_str start_num; + t_str sign; + t_str void_write; + + value = *(t_i64 *)data.argument; + if ((t_u64)value & ((t_u64)1 << 31)) + sign = "-"; + else + sign = "+"; + if (!(data.flags & SIGN) && !((t_u64)value & ((t_u64)1 << 31))) + sign = ""; + if (!(data.flags & SIGN) && data.extra.space_align + && !((t_u64)value & ((t_u64)1 << 31))) + sign = " "; + data.flags |= SIGN; + start_num = itoa_64(value); + handle_weird_precision_stuff(&data, (t_prec_strs){.out = &start_num, + .free_out = true, .pretty = &void_write}, value); + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .sign = sign, .pretty = NULL, .len = \ +str_len(start_num), .pretty_len = 0, .str = start_num, .allow_zero_fill \ + = true, .sign_len = str_len(sign), }, data, f); + free(start_num); +} diff --git a/stdme/src/printf/formatter/hex.c b/stdme/src/printf/formatter/hex.c new file mode 100644 index 00000000..9e911506 --- /dev/null +++ b/stdme/src/printf/formatter/hex.c @@ -0,0 +1,67 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* hex.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:16:16 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:19:03 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_set.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#define HEX_INLINE_BUF 17 + +static void fill_hex(t_str out_buf, t_u64 num, t_const_str base) +{ + t_usize i; + + mem_set(out_buf, 0, HEX_INLINE_BUF); + out_buf[HEX_INLINE_BUF - 1] = 0; + i = 0; + while (i < HEX_INLINE_BUF - 1) + { + out_buf[HEX_INLINE_BUF - i - 2] = base[(num >> (4 * i) & 15)]; + i++; + } +} + +static void printf_x_common(t_printf_arg data, t_printf_func f, + t_const_str pretty, t_const_str base) +{ + t_u64 value; + char inline_buffer[HEX_INLINE_BUF]; + t_str start_num; + + value = *(t_u64 *)data.argument; + inline_buffer[0] = '0'; + inline_buffer[1] = '\0'; + if (value) + fill_hex(inline_buffer, value, base); + start_num = &inline_buffer[0]; + while (start_num[1] != '\0' && start_num[0] == '0') + start_num++; + if (value == 0) + data.extra.pretty = false; + handle_weird_precision_stuff(&data, (t_prec_strs){.out = &start_num, + .free_out = false, .pretty = (t_str *)&pretty}, value); + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .len = str_len(start_num), .pretty = (t_str)pretty, \ +.pretty_len = 2, .str = start_num, .allow_zero_fill = true, .sign = NULL, \ +.sign_len = 0, }, data, f); +} + +void printf_x_up(t_printf_arg data, t_printf_func f) +{ + printf_x_common(data, f, "0X", "0123456789ABCDEF"); +} + +void printf_x_low(t_printf_arg data, t_printf_func f) +{ + printf_x_common(data, f, "0x", "0123456789abcdef"); +} diff --git a/stdme/src/printf/formatter/oct.c b/stdme/src/printf/formatter/oct.c new file mode 100644 index 00000000..a6befc24 --- /dev/null +++ b/stdme/src/printf/formatter/oct.c @@ -0,0 +1,60 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* oct.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/18 01:19:18 by maix #+# #+# */ +/* Updated: 2023/12/11 19:17:23 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_set.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include +#define OCT_INLINE_BUF 23 + +static void fill_oct(t_str out_buf, t_u64 num, t_str base) +{ + t_usize i; + + mem_set(out_buf, 0, OCT_INLINE_BUF); + out_buf[OCT_INLINE_BUF - 1] = 0; + i = 0; + while (i < OCT_INLINE_BUF - 1) + { + out_buf[OCT_INLINE_BUF - i - 2] = base[(num >> (3 * i) & 7)]; + i++; + } +} + +void printf_o(t_printf_arg data, t_printf_func f) +{ + t_u64 value; + char inline_buffer[OCT_INLINE_BUF]; + t_str start_num; + t_str pretty; + + value = *(t_u64 *)data.argument; + inline_buffer[0] = '0'; + inline_buffer[1] = '\0'; + pretty = "0o"; + if (value) + fill_oct(inline_buffer, value, "01234567"); + start_num = &inline_buffer[0]; + while (start_num[1] != '\0' && start_num[0] == '0') + start_num++; + if (!value && data.extra.precision == 0 && (data.flags & PRECISION)) + { + start_num = ""; + pretty = ""; + } + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .len = str_len(start_num), .pretty = pretty, \ +.pretty_len = str_len(pretty), .str = start_num, .allow_zero_fill = true, \ +.sign = NULL, .sign_len = 0, }, data, f); +} diff --git a/stdme/src/printf/formatter/ptr.c b/stdme/src/printf/formatter/ptr.c new file mode 100644 index 00000000..9f169eb7 --- /dev/null +++ b/stdme/src/printf/formatter/ptr.c @@ -0,0 +1,74 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ptr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:16:16 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:20:42 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_set.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#define PTR_INLINE_BUF 17 + +static void fill_hex(t_str out_buf, t_u64 num, t_str base) +{ + t_usize i; + + mem_set(out_buf, 0, PTR_INLINE_BUF); + out_buf[PTR_INLINE_BUF - 1] = 0; + i = 0; + while (i < PTR_INLINE_BUF - 1) + { + out_buf[PTR_INLINE_BUF - i - 2] = base[(num >> (4 * i) & 15)]; + i++; + } +} + +static void set_values_for_nil(t_usize value, t_str *out, t_printf_arg *data, + t_printf_func f) +{ + (void)(f); + if (value) + { + data->flags &= ~PRECISION; + data->extra.precision = 0; + data->extra.pretty = true; + } + else + { + *out = "(nil)"; + data->extra.precision = 0; + data->extra.pretty = false; + data->flags &= ~(ZERO_ALIGN | PRECISION); + data->flags |= ALIGN; + } +} + +void printf_p(t_printf_arg data, t_printf_func f) +{ + t_u64 value; + char inline_buffer[PTR_INLINE_BUF + 1]; + t_str start_num; + + value = (t_u64)data.argument; + inline_buffer[0] = '0'; + inline_buffer[1] = '\0'; + if (value) + fill_hex(inline_buffer, value, "0123456789abcdef"); + start_num = &inline_buffer[0]; + inline_buffer[PTR_INLINE_BUF] = 0; + while (start_num[1] != '\0' && start_num[0] == '0') + start_num++; + set_values_for_nil(value, &start_num, &data, f); + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .len = str_len(start_num), .pretty = "0x", \ +.pretty_len = 2, .str = start_num, .allow_zero_fill = value != 0, \ +.sign = NULL, .sign_len = 0, }, data, f); +} diff --git a/stdme/src/printf/formatter/unsigned_decimal.c b/stdme/src/printf/formatter/unsigned_decimal.c new file mode 100644 index 00000000..5d44f4e8 --- /dev/null +++ b/stdme/src/printf/formatter/unsigned_decimal.c @@ -0,0 +1,76 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* unsigned_decimal.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maix +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/18 01:44:35 by maix #+# #+# */ +/* Updated: 2023/12/11 19:19:59 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc_array.h" +#include "me/mem/mem_set.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/string/str_clone.h" +#include "me/string/str_len.h" +#include +#include +#define UINT_INLINE_BUF 21 + +static void itoa_inner(t_u64 nb, t_str out) +{ + t_u64 modulus; + bool need_print; + char c; + t_usize idx; + + need_print = false; + modulus = 10000000000000000000u; + idx = 0; + while (modulus) + { + c = (char)(nb / modulus) + '0'; + if (c != '0' || need_print) + { + out[idx++] = c; + need_print = true; + } + nb = nb % modulus; + modulus /= 10; + } +} + +static t_str itoa_u64(t_u64 nb) +{ + char out[UINT_INLINE_BUF]; + t_u64 n; + + n = (t_u64)nb; + mem_set(out, 0, UINT_INLINE_BUF); + if (nb == 0) + out[0] = '0'; + else + itoa_inner(n, out); + return (str_clone(out)); +} + +void printf_u(t_printf_arg data, t_printf_func f) +{ + t_u64 value; + t_str start_num; + t_str void_write; + + value = *(t_u64 *)data.argument; + start_num = itoa_u64(value); + handle_weird_precision_stuff(&data, (t_prec_strs){.out = &start_num, + .free_out = true, .pretty = &void_write}, value); + pad_and_stuff( + (t_pad_and_stuff_args){\ +.fill_zero = 0, .fill = 0, .len = str_len(start_num), \ +.pretty = NULL, .pretty_len = 0, .str = start_num, \ +.allow_zero_fill = true, .sign = NULL, .sign_len = 0, }, data, f); + free(start_num); +} diff --git a/stdme/src/printf/formatter/utils.c b/stdme/src/printf/formatter/utils.c new file mode 100644 index 00000000..f8dd6641 --- /dev/null +++ b/stdme/src/printf/formatter/utils.c @@ -0,0 +1,136 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* utils.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 17:57:04 by maiboyer #+# #+# */ +/* Updated: 2023/12/01 21:20:07 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/buffered_str/buf_str.h" +#include "me/convert/atoi.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/matchers/matchers.h" +#include "me/printf/printf.h" +#include "me/string/str_find_chr.h" +#include "me/string/str_substring.h" +#include "me/types.h" +#include +#include + +bool handle_atoi_stuff(t_const_str fmt, t_usize *c_idx, t_usize *nxt, + t_printf_arg *c_arg) +{ + t_i32 atoi_res; + + atoi_res = me_atoi(&fmt[*c_idx]); + if (atoi_res < 0) + { + *c_idx = *nxt; + *nxt = (t_usize)(str_find_chr(fmt + *nxt + 1, '%') - fmt); + return (false); + } + advance_atoi(fmt, c_idx); + c_arg->extra.align = (t_u64)atoi_res; + handle_prec_and_align(fmt, c_idx, c_arg); + atoi_res = atoi(&fmt[*c_idx]); + if (atoi_res < 0) + { + *c_idx = *nxt; + *nxt = (t_usize)(str_find_chr(fmt + *nxt + 1, '%') - fmt); + return (false); + } + advance_atoi(fmt, c_idx); + c_arg->extra.precision = (t_u64)atoi_res; + return (true); +} + +static void set_flags_if_needed(t_const_str fmt, t_usize *c_idx, + t_printf_arg *c_arg) +{ + if (fmt[*c_idx] == ' ') + { + (*c_idx)++; + c_arg->extra.space_align = true; + } + if (fmt[*c_idx] == '#') + { + (*c_idx)++; + c_arg->extra.pretty = true; + } + if (fmt[*c_idx] == '+') + { + (*c_idx)++; + c_arg->flags |= SIGN; + } + if (fmt[*c_idx] == '-') + { + (*c_idx)++; + c_arg->extra.left_align = true; + } + if (fmt[*c_idx] == '0') + { + (*c_idx)++; + c_arg->flags |= ZERO_ALIGN; + } +} + +bool set_params(t_const_str fmt, t_usize *c_idx, t_usize *nxt, + t_printf_arg *c_arg) +{ + t_usize b_idx; + + b_idx = ~0; + while (b_idx != *c_idx) + { + b_idx = *c_idx; + set_flags_if_needed(fmt, c_idx, c_arg); + } + return (handle_atoi_stuff(fmt, c_idx, nxt, c_arg)); +} + +t_printf_arg print_substr(t_usize *c_idx, t_usize *nxt, t_const_str fmt, + t_pad_inner_args extra) +{ + t_str truc; + + truc = str_substring(fmt, *c_idx, *nxt - *c_idx); + extra.f(truc, *nxt - *c_idx, extra.p_args); + free(truc); + *c_idx = *nxt + 1; + return ((t_printf_arg){ + .p_args = extra.p_args, + .argument = extra.arguments, + }); +} + +void pad_inner(t_const_str fmt, t_usize *c_idx, t_usize *nxt, + t_pad_inner_args extra) +{ + t_printf_arg c_arg; + t_matcher *matcher; + + c_arg = print_substr(c_idx, nxt, fmt, extra); + if (fmt[*c_idx] == '%') + { + (*c_idx)++; + extra.f("%", 1, extra.p_args); + } + else + { + if (!set_params(fmt, c_idx, nxt, &c_arg)) + return (ret_reset(c_idx, nxt, fmt)); + matcher = find_matcher(fmt, extra.matchers, c_idx); + if (matcher == NULL) + return (ret_reset(c_idx, nxt, fmt)); + call_matcher(matcher, c_arg, *extra.arguments, extra.f); + } + *nxt = (t_usize)(str_find_chr(fmt + *c_idx, '%')); + if (*nxt == 0) + return (*nxt = extra.fmt_len, (void)extra.f(fmt + *c_idx, extra.fmt_len + - *c_idx, extra.p_args)); + *nxt = *nxt - (t_usize)fmt; +} diff --git a/stdme/src/printf/formatter/utils2.c b/stdme/src/printf/formatter/utils2.c new file mode 100644 index 00000000..1537211e --- /dev/null +++ b/stdme/src/printf/formatter/utils2.c @@ -0,0 +1,96 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* utils2.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:00:07 by maiboyer #+# #+# */ +/* Updated: 2023/12/01 21:48:22 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/buffered_str/buf_str.h" +#include "me/char/isdigit.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include "me/types.h" + +void set_var_for_pad_and_stuff(t_pad_and_stuff_args *a, t_printf_arg *d) +{ + t_isize fill_zero; + t_isize fill; + + fill_zero = 0; + fill = 0; + if (d->flags & ZERO_ALIGN && a->len < d->extra.align) + fill_zero = d->extra.align - a->len - a->fill_zero - 2 * d->extra.pretty + - a->sign_len; + if (d->flags & PRECISION && a->len < d->extra.precision) + fill_zero = d->extra.precision - a->len; + if (d->flags & (ALIGN) && a->len < d->extra.align) + fill = d->extra.align - a->len - a->fill_zero - 2 * d->extra.pretty + - a->sign_len - fill_zero; + if (fill_zero < 0) + fill_zero = 0; + if (fill < 0) + fill = 0; + if (fill_zero < 0) + fill_zero = 0; + if (fill < 0) + fill = 0; + a->fill_zero = fill_zero; + a->fill = fill; +} + +void print_with_func(t_pad_and_stuff_args *a, t_printf_arg *d, + t_printf_func f, t_const_str t) +{ + f(t, 1, d->p_args); + if (t[0] == ' ' && t[1] == 0 && a->fill) + a->fill--; + if (t[0] == '0' && t[1] == 0 && a->fill_zero) + a->fill_zero--; +} + +void pad_and_stuff(t_pad_and_stuff_args a, t_printf_arg d, t_printf_func f) +{ + set_var_for_pad_and_stuff(&a, &d); + if (!(d.extra.left_align || d.extra.precision) && d.flags & (ZERO_ALIGN)) + { + print_sign_if_needed(a, d, f); + while (a.allow_zero_fill && a.fill_zero > 0) + print_with_func(&a, &d, f, "0"); + } + else + { + while (!(d.extra.left_align) && d.flags & (ALIGN) && a.fill > 0) + print_with_func(&a, &d, f, " "); + print_sign_if_needed(a, d, f); + if (d.extra.pretty) + f(a.pretty, a.pretty_len, d.p_args); + } + while (a.allow_zero_fill && a.fill_zero > 0) + print_with_func(&a, &d, f, "0"); + f(a.str, a.len, d.p_args); + while (d.extra.left_align && a.fill > 0) + print_with_func(&a, &d, f, " "); +} + +void handle_prec_and_align(t_const_str fmt, t_usize *c_idx, + t_printf_arg *c_arg) +{ + if (c_arg->extra.align && !(c_arg->flags & ZERO_ALIGN)) + c_arg->flags |= ALIGN; + if (fmt[*c_idx] == '.') + { + (*c_idx)++; + c_arg->flags |= PRECISION; + } +} + +void advance_atoi(t_const_str fmt, t_usize *idx) +{ + while (me_isdigit(fmt[*idx])) + (*idx)++; +} diff --git a/stdme/src/printf/formatter/utils3.c b/stdme/src/printf/formatter/utils3.c new file mode 100644 index 00000000..1b03f1e3 --- /dev/null +++ b/stdme/src/printf/formatter/utils3.c @@ -0,0 +1,53 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* utils3.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:06:15 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:21:38 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/printf/formatter/utils.h" +#include "me/printf/matchers/matchers.h" +#include "me/string/str_find_chr.h" +#include "me/string/str_len.h" +#include "me/types.h" +#include + +void ret_reset(t_usize *c_idx, t_usize *nxt, t_const_str fmt) +{ + *c_idx = *nxt; + *nxt = (t_usize)(str_find_chr(fmt + *nxt + 1, '%') - fmt); +} + +void me_printf_str_inner(t_const_str fmt, t_printf_func f, + va_list *arguments, void *p_args) +{ + t_usize c_idx; + t_usize nxt; + t_usize fmt_len; + + c_idx = 0; + fmt_len = str_len(fmt); + nxt = (t_usize)(str_find_chr(fmt, '%')); + if (nxt == 0) + return (f(fmt, fmt_len, p_args)); + nxt = nxt - (t_usize)fmt; + while (nxt < fmt_len) + { + pad_inner(fmt, &c_idx, &nxt, \ + ((t_pad_inner_args){\ + .p_args = p_args, .fmt_len = fmt_len, .f = f, \ + .arguments = arguments, .matchers = get_matchers(), })); + } +} + +void print_sign_if_needed(t_pad_and_stuff_args a, t_printf_arg d, + t_printf_func f) +{ + if (d.flags & (SIGN) && a.sign != NULL) + f(a.sign, a.sign_len, d.p_args); +} diff --git a/stdme/src/printf/formatter/utils_numbers.c b/stdme/src/printf/formatter/utils_numbers.c new file mode 100644 index 00000000..58e50953 --- /dev/null +++ b/stdme/src/printf/formatter/utils_numbers.c @@ -0,0 +1,36 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* utils_numbers.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/12/01 21:05:47 by maiboyer #+# #+# */ +/* Updated: 2023/12/01 21:49:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc_array.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/printf.h" +#include + +void handle_weird_precision_stuff(t_printf_arg *data, t_prec_strs strs, + t_usize value) +{ + if (!value && data->extra.precision == 0 && (data->flags & PRECISION)) + { + data->flags &= (~ZERO_ALIGN); + data->flags |= ALIGN; + if (strs.free_out) + *strs.out = (free(*strs.out), (t_str)mem_alloc_array(1, 1)); + else + *strs.out = ""; + *strs.pretty = ""; + } + else if ((data->flags & PRECISION) && !data->extra.left_align) + { + data->flags &= (~ZERO_ALIGN); + data->flags |= ALIGN; + } +} diff --git a/stdme/src/printf/matchers.c b/stdme/src/printf/matchers.c new file mode 100644 index 00000000..d122dac2 --- /dev/null +++ b/stdme/src/printf/matchers.c @@ -0,0 +1,120 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* matchers.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/16 18:07:40 by maiboyer #+# #+# */ +/* Updated: 2023/12/11 19:11:51 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_compare.h" +#include "me/printf/formatter/formatter.h" +#include "me/printf/matchers/matchers.h" +#include "me/printf/printf.h" +#include +#include +#include + +t_matcher_list *get_matchers(void) +{ + static t_matcher_list printf_matchers = (t_matcher_list){ + .data = { + {.matcher = "o", .matcher_len = 1, .arg_type = U64, .f = &printf_o}, + {.matcher = "c", .matcher_len = 1, .arg_type = CHAR, .f = &printf_c}, + {.matcher = "s", .matcher_len = 1, .arg_type = STR, .f = &printf_s}, + {.matcher = "p", .matcher_len = 1, .arg_type = VOID_PTR, .f = &printf_p}, + {.matcher = "d", .matcher_len = 1, .arg_type = I32, .f = &printf_d}, + {.matcher = "i", .matcher_len = 1, .arg_type = I32, .f = &printf_d}, + {.matcher = "u", .matcher_len = 1, .arg_type = U32, .f = &printf_u}, + {.matcher = "x", .matcher_len = 1, .arg_type = U32, .f = &printf_x_low}, + {.matcher = "X", .matcher_len = 1, .arg_type = U32, .f = &printf_x_up}, + }, + .next = NULL, + }; + + return (&printf_matchers); +} + +bool insert_matcher(t_matcher matcher) +{ + t_matcher_list *matchers; + t_usize i; + + matchers = get_matchers(); + while (matchers) + { + i = 0; + while (i < PRINTF_BUFFER_CHUNK) + { + if (matchers->data[i].f == NULL) + { + (*matchers).data[i] = matcher; + return (true); + } + } + matchers->next = malloc(sizeof(t_matcher_list) * 1); + } + return (false); +} + +t_matcher *find_matcher(t_const_str fmt, t_matcher_list *matchers, + t_usize *c_idx) +{ + t_usize matcher_index; + t_matcher *matcher; + + while (matchers) + { + matcher_index = 0; + while (matcher_index < PRINTF_BUFFER_CHUNK) + { + matcher = &matchers->data[matcher_index]; + if (matcher->f) + { + if (!mem_compare(&fmt[*c_idx], matcher->matcher, + matcher->matcher_len)) + { + *c_idx += matcher->matcher_len; + return (matcher); + } + } + matcher_index++; + } + matchers = matchers->next; + } + return (NULL); +} + +// FIGURE OUT HOW TO MAKE I64 WORK +void call_matcher(t_matcher *matcher, t_printf_arg matcher_arguments, + va_list args, t_printf_func f) +{ + t_matcher_tmp_val vals; + + matcher_arguments.argument = NULL; + if (matcher->arg_type == CHAR) + { + vals.chr_val = (char)va_arg(args, int); + matcher_arguments.argument = (void *)&vals.chr_val; + } + if (matcher->arg_type == U32) + vals.u64_val = va_arg(args, t_u32); + if (matcher->arg_type == U64) + vals.u64_val = va_arg(args, t_u64); + if (matcher->arg_type == I64) + vals.i64_val = va_arg(args, t_i64); + if (matcher->arg_type == I32) + vals.i64_val = va_arg(args, t_i32); + if (matcher->arg_type == I32 || matcher->arg_type == I64) + matcher_arguments.argument = (void *)&vals.i64_val; + if (matcher->arg_type == U32 || matcher->arg_type == U64) + matcher_arguments.argument = (void *)&vals.u64_val; + if (matcher->arg_type == VOID_PTR) + matcher_arguments.argument = (void *)va_arg(args, void *); + if (matcher->arg_type == STR) + matcher_arguments.argument = (void *)va_arg(args, t_str); + matcher->f(matcher_arguments, f); +} diff --git a/stdme/src/printf/printf.c b/stdme/src/printf/printf.c new file mode 100644 index 00000000..935b3cd0 --- /dev/null +++ b/stdme/src/printf/printf.c @@ -0,0 +1,120 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* printf.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/11 17:50:56 by maiboyer #+# #+# */ +/* Updated: 2024/02/09 14:58:10 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/buffered_str/buf_str.h" +#include "me/fs/write.h" +#include "me/printf/formatter/formatter.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/matchers/matchers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" +#include +#include +#include +#include + +// p_args is an t_buffer_str; +static void me_printf_add_to_string(t_const_str to_write, t_usize to_write_len, + void *p_args) +{ + t_buffer_str *out_buf; + + out_buf = (t_buffer_str *)p_args; + (void)(to_write_len); + push_str_buffer(out_buf, to_write); +} + +t_str me_printf_str(t_const_str fmt, va_list *arguments) +{ + t_buffer_str out; + + out = alloc_new_buffer(str_len(fmt)); + if (out.buf == NULL) + { + return (NULL); + } + me_printf_str_inner(fmt, &me_printf_add_to_string, arguments, (void *)&out); + return (out.buf); +} + +void me_printf_write(t_const_str to_write, t_usize to_write_len, + void *p_args) +{ + t_fprintf_arg *arg; + + arg = (t_fprintf_arg *)p_args; + me_write(arg->fd, (t_u8 *)to_write, to_write_len); + arg->total_print += to_write_len; +} + +t_usize me_printf(t_const_str fmt, ...) +{ + va_list args; + t_fprintf_arg passthru; + + passthru = (t_fprintf_arg){ + .fd = 1, + .total_print = 0, + }; + va_start(args, fmt); + me_printf_str_inner(fmt, &me_printf_write, &args, (void *)&passthru); + va_end(args); + return (passthru.total_print); +} + +t_usize me_eprintf(t_const_str fmt, ...) +{ + va_list args; + t_fprintf_arg passthru; + + passthru = (t_fprintf_arg){ + .fd = 2, + .total_print = 0, + }; + va_start(args, fmt); + me_printf_str_inner(fmt, &me_printf_write, &args, (void *)&passthru); + va_end(args); + return (passthru.total_print); +} + +/* +t_usize me_printf(t_const_str fmt, ...) +{ + va_list args; + t_str str; + t_usize len; + + va_start(args, fmt); + str = me_printf_str(fmt, &args); + va_end(args); + len = str_len(str); + write(1, str, len); + free(str); + return (len); +} + +t_usize me_eprintf(t_const_str fmt, ...) +{ + va_list args; + t_str str; + t_usize len; + + va_start(args, fmt); + str = me_printf_str(fmt, &args); + va_end(args); + len = str_len(str); + write(2, str, len); + free(str); + return (len); +} +*/ diff --git a/stdme/src/printf/vprintf.c b/stdme/src/printf/vprintf.c new file mode 100644 index 00000000..6cf3bc03 --- /dev/null +++ b/stdme/src/printf/vprintf.c @@ -0,0 +1,51 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* vprintf.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/09 14:57:28 by maiboyer #+# #+# */ +/* Updated: 2024/02/09 15:00:39 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/buffered_str/buf_str.h" +#include "me/fs/write.h" +#include "me/printf/formatter/formatter.h" +#include "me/printf/formatter/utils.h" +#include "me/printf/matchers/matchers.h" +#include "me/printf/printf.h" +#include "me/string/str_len.h" +#include "me/types.h" +#include +#include +#include +#include + +void me_printf_write(t_const_str to_write, t_usize to_write_len, + void *p_args); + +t_usize me_vprintf(t_const_str fmt, va_list *args) +{ + t_fprintf_arg passthru; + + passthru = (t_fprintf_arg){ + .fd = 1, + .total_print = 0, + }; + me_printf_str_inner(fmt, &me_printf_write, args, (void *)&passthru); + return (passthru.total_print); +} + +t_usize me_veprintf(t_const_str fmt, va_list *args) +{ + t_fprintf_arg passthru; + + passthru = (t_fprintf_arg){ + .fd = 2, + .total_print = 0, + }; + me_printf_str_inner(fmt, &me_printf_write, args, (void *)&passthru); + return (passthru.total_print); +} diff --git a/stdme/src/string/str_clone.c b/stdme/src/string/str_clone.c new file mode 100644 index 00000000..70fd9428 --- /dev/null +++ b/stdme/src/string/str_clone.c @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_clone.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/06 16:05:48 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:15:57 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include "me/string/str_clone.h" +#include "me/string/str_l_copy.h" +#include "me/string/str_len.h" +#include + +t_str str_clone(t_const_str source) +{ + t_str res; + t_usize len; + + len = str_len(source) + 1; + res = mem_alloc(sizeof(unsigned char) * len); + if (res == NULL) + return (NULL); + str_l_copy(res, source, len); + return (res); +} diff --git a/stdme/src/string/str_find_chr.c b/stdme/src/string/str_find_chr.c new file mode 100644 index 00000000..565ead11 --- /dev/null +++ b/stdme/src/string/str_find_chr.c @@ -0,0 +1,29 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_find_chr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 17:29:13 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 14:47:43 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_find_chr.h" + +char *str_find_chr(t_const_str str, char chr) +{ + t_usize index; + + index = 0; + while (str[index]) + { + if (str[index] == chr) + return ((char *)&str[index]); + index++; + } + if (str[index] == chr) + return ((char *)&str[index]); + return (NULL); +} diff --git a/stdme/src/string/str_find_rev_chr.c b/stdme/src/string/str_find_rev_chr.c new file mode 100644 index 00000000..7454a6e6 --- /dev/null +++ b/stdme/src/string/str_find_rev_chr.c @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_find_rev_chr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 17:29:13 by maiboyer #+# #+# */ +/* Updated: 2024/04/28 19:42:46 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_find_rev_chr.h" +#include "me/string/str_len.h" + +char *str_find_rev_chr(t_const_str str, char chr) +{ + t_usize index; + + if (str == NULL) + return (NULL); + index = str_len((t_str)str); + while (index >= 0) + { + if (str[index] == chr) + return ((char *)&str[index]); + index--; + } + return (NULL); +} diff --git a/stdme/src/string/str_find_str.c b/stdme/src/string/str_find_str.c new file mode 100644 index 00000000..4afa4893 --- /dev/null +++ b/stdme/src/string/str_find_str.c @@ -0,0 +1,56 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_find_str.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/10 11:11:01 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:53:53 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_n_find_str.h" + +const char *str_find_str(t_const_str str, t_const_str to_find) +{ + t_str needle; + t_str haystack; + + if (*to_find == '\0') + return (str); + while (*str) + { + haystack = (t_str)str; + needle = (t_str)to_find; + while (*haystack && *haystack == *needle) + { + haystack++; + needle++; + } + if (*needle == '\0') + return (str); + str++; + } + return (NULL); +} + +/*R + +#include +#include + +int main(int argc, char *argv[]) { + if (argc != 3) + return (2); + printf("HAYSTACK = '%s'\n", argv[1]); + printf(" NEEDLE = '%s'\n", argv[2]); + + printf("libc: %p : '%s'\n", str_find_str(argv[1], argv[2]), + str_find_str(argv[1], + argv[2])); + printf(" ft : %p : '%s'\n", + str_find_str(argv[1], argv[2]), + str_find_str(argv[1], argv[2])); +} +R*/ diff --git a/stdme/src/string/str_iter.c b/stdme/src/string/str_iter.c new file mode 100644 index 00000000..dc9abb0e --- /dev/null +++ b/stdme/src/string/str_iter.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_iter.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 18:26:00 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 14:49:47 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_iter.h" + +void str_iter(t_str s, void (*f)(t_usize, char *)) +{ + t_usize idx; + + if (s == NULL) + return ; + idx = 0; + while (s[idx]) + { + f(idx, &s[idx]); + idx++; + } +} diff --git a/stdme/src/string/str_join.c b/stdme/src/string/str_join.c new file mode 100644 index 00000000..5aacfd92 --- /dev/null +++ b/stdme/src/string/str_join.c @@ -0,0 +1,34 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_join.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/07 23:02:58 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:16:19 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include "me/string/str_join.h" +#include "me/string/str_l_cat.h" +#include "me/string/str_l_copy.h" +#include "me/string/str_len.h" +#include + +t_str str_join(t_const_str s1, t_const_str s2) +{ + t_str out; + t_usize buf_size; + + if (s1 == NULL || s2 == NULL) + return (NULL); + buf_size = str_len(s1) + str_len(s2) + 1; + out = mem_alloc(sizeof(char) * buf_size); + if (out == NULL) + return (NULL); + str_l_copy(out, s1, buf_size); + str_l_cat(out, s2, buf_size); + return (out); +} diff --git a/stdme/src/string/str_l_cat.c b/stdme/src/string/str_l_cat.c new file mode 100644 index 00000000..a606722a --- /dev/null +++ b/stdme/src/string/str_l_cat.c @@ -0,0 +1,108 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_l_cat.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/09 18:01:09 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 14:51:34 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +/*R + +//CFLAGS="-lbsd" + +#include +#include +#include + +R*/ + +#include "me/string/str_l_cat.h" +#include "me/string/str_len.h" + +t_usize str_l_cat(t_str dest, t_const_str src, t_usize buffer_size) +{ + t_usize dest_len; + t_usize src_len; + t_usize i; + + if (buffer_size == 0 && (dest == NULL || src == NULL)) + return (0); + dest_len = str_len(dest); + src_len = str_len(src); + if (dest_len >= buffer_size) + return (buffer_size + src_len); + i = 0; + while (src[i] && dest_len + i < buffer_size - 1) + { + dest[dest_len + i] = src[i]; + i++; + } + dest[dest_len + i] = '\0'; + return (dest_len + src_len); +} + +/*R + +#include +#include +#include + +#define SIZE 64 + +int main(void) { + char* dest_ft; + char* dest_libc; + char* to_cat = "banane"; + unsigned int res_libc = 0; + unsigned int res_ft = 0; + int i; + + for (int v = 0; v <= SIZE; v++) + for (int j = 0; j < SIZE; j++) + { + dest_ft = malloc(SIZE); + dest_libc = malloc(SIZE); + i = 0; + while (i < SIZE) + { + dest_ft[i] = 'X'; + dest_libc[i] = 'X'; + i++; + } + dest_ft[SIZE - j - 1] = 0; + dest_libc[SIZE - j - 1] = 0; + res_libc = str_l_cat(dest_libc, to_cat, SIZE - v); + res_ft = str_l_cat(dest_ft, to_cat, SIZE - v); + int k; + k = 0; + while (k < SIZE && dest_libc[k] == dest_ft[k]) + k++; + + if (strcmp(dest_ft, dest_libc) != 0 || res_ft != res_libc + || k != SIZE) + { + printf("----------v[%d]-j[%d]---------\n", v, j); + printf("libc: [%d]\t'%s'\n", res_libc ,dest_libc); + printf(" ft : [%d]\t'%s'\n", res_ft, dest_ft); + printf("[ERROR] byte %d is different: LIBC[%X] != FT[%X]\n\n", + i, + dest_libc[j], dest_ft[j]); + printf(" ft :"); + for (int x = 0; x < SIZE; x++) + printf("%02X", dest_ft[x]); + printf("\n"); + printf("libc:"); + for (int x = 0; x < SIZE; x++) + printf("%02X", dest_libc[x]); + printf("\n"); + printf("\n"); + } + free(dest_libc); + free(dest_ft); + } +} +R*/ diff --git a/stdme/src/string/str_l_copy.c b/stdme/src/string/str_l_copy.c new file mode 100644 index 00000000..e4bb6bcb --- /dev/null +++ b/stdme/src/string/str_l_copy.c @@ -0,0 +1,104 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_l_copy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/09 18:01:09 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 14:51:55 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +/*R + +//CFLAGS="-lbsd" + +#include +#include +#include + +R*/ + +#include "me/string/str_l_copy.h" +#include "me/string/str_len.h" + +t_usize str_l_copy(t_str dest, t_const_str src, t_usize buffer_size) +{ + t_usize src_len; + t_usize i; + + src_len = str_len(src); + i = 0; + if (buffer_size == 0) + return (src_len); + while (src[i] && i < buffer_size - 1) + { + dest[i] = src[i]; + i++; + } + dest[i] = '\0'; + return (src_len); +} + +/*R + +#include +#include +#include + +#define SIZE 64 + +int main(void) { + char* dest_ft; + char* dest_libc; + char* to_cat = "banane"; + unsigned int res_libc = 0; + unsigned int res_ft = 0; + int i; + + for (int v = 0; v <= SIZE; v++) + for (int j = 0; j < SIZE; j++) + { + dest_ft = malloc(SIZE); + dest_libc = malloc(SIZE); + i = 0; + while (i < SIZE) + { + dest_ft[i] = 'X'; + dest_libc[i] = 'X'; + i++; + } + dest_ft[SIZE - j - 1] = 0; + dest_libc[SIZE - j - 1] = 0; + res_libc = str_l_cat(dest_libc, to_cat, SIZE - v); + res_ft = str_l_cat(dest_ft, to_cat, SIZE - v); + int k; + k = 0; + while (k < SIZE && dest_libc[k] == dest_ft[k]) + k++; + + if (strcmp(dest_ft, dest_libc) != 0 || res_ft != res_libc + || k != SIZE) + { + printf("----------v[%d]-j[%d]---------\n", v, j); + printf("libc: [%d]\t'%s'\n", res_libc ,dest_libc); + printf(" ft : [%d]\t'%s'\n", res_ft, dest_ft); + printf("[ERROR] byte %d is different: LIBC[%X] != FT[%X]\n\n", + i, + dest_libc[j], dest_ft[j]); + printf(" ft :"); + for (int x = 0; x < SIZE; x++) + printf("%02X", dest_ft[x]); + printf("\n"); + printf("libc:"); + for (int x = 0; x < SIZE; x++) + printf("%02X", dest_libc[x]); + printf("\n"); + printf("\n"); + } + free(dest_libc); + free(dest_ft); + } +} +R*/ diff --git a/stdme/src/string/str_len.c b/stdme/src/string/str_len.c new file mode 100644 index 00000000..e297150c --- /dev/null +++ b/stdme/src/string/str_len.c @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_len.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 17:07:41 by maiboyer #+# #+# */ +/* Updated: 2024/03/08 12:49:41 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_len.h" + +t_usize str_len(t_const_str str) +{ + t_usize out; + + if (str == NULL) + return (0); + out = 0; + while (str[out]) + out++; + return (out); +} diff --git a/stdme/src/string/str_map.c b/stdme/src/string/str_map.c new file mode 100644 index 00000000..2e65a869 --- /dev/null +++ b/stdme/src/string/str_map.c @@ -0,0 +1,33 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_map.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/09 18:26:00 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 14:52:34 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_clone.h" +#include "me/string/str_map.h" + +t_str str_map(t_const_str s, char (*f)(t_usize, char)) +{ + t_str out; + t_usize idx; + + if (f == NULL || s == NULL) + return (NULL); + out = str_clone((t_str)s); + if (out == NULL) + return (NULL); + idx = 0; + while (s[idx]) + { + out[idx] = f(idx, s[idx]); + idx++; + } + return (out); +} diff --git a/stdme/src/string/str_n_compare.c b/stdme/src/string/str_n_compare.c new file mode 100644 index 00000000..5c39ac5e --- /dev/null +++ b/stdme/src/string/str_n_compare.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_n_compare.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/04 18:53:47 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 14:52:48 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_n_compare.h" + +// PLEASE FIX THIS FUNCTION IF NEEDED ! +t_i32 str_n_compare(t_const_str lhs, t_const_str rhs, t_usize n) +{ + t_usize index; + + index = 0; + if (n == 0) + return (0); + while (lhs[index] && rhs[index] && lhs[index] == rhs[index] && index < n + - 1) + index++; + return ((t_i32)(t_u8)lhs[index] - (t_i32)(t_u8)rhs[index]); +} diff --git a/stdme/src/string/str_n_find_str.c b/stdme/src/string/str_n_find_str.c new file mode 100644 index 00000000..b6f618f4 --- /dev/null +++ b/stdme/src/string/str_n_find_str.c @@ -0,0 +1,51 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_n_find_str.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/10 11:11:01 by maiboyer #+# #+# */ +/* Updated: 2024/04/28 19:40:32 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/string/str_len.h" +#include "me/string/str_n_find_str.h" + +static t_str local_get_end_of_search(t_usize len, t_str str) +{ + t_usize out_len; + + out_len = str_len(str); + if (len > out_len) + len = out_len; + return (str + len); +} + +const char *str_n_find_str(t_const_str str, t_const_str to_find, t_usize len) +{ + t_str needle; + t_str haystack; + t_str end_of_search; + + if ((str == NULL || to_find == NULL)) + return (NULL); + if (*to_find == '\0') + return ((t_str)str); + end_of_search = local_get_end_of_search(len, (t_str)str); + while (*str) + { + haystack = (t_str)str; + needle = (t_str)to_find; + while (haystack < end_of_search && *haystack && *haystack == *needle) + { + haystack++; + needle++; + } + if (*needle == '\0') + return (str); + str++; + } + return (NULL); +} diff --git a/stdme/src/string/str_split.c b/stdme/src/string/str_split.c new file mode 100644 index 00000000..d533e602 --- /dev/null +++ b/stdme/src/string/str_split.c @@ -0,0 +1,93 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_split.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/08/17 15:56:59 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:52:08 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include "me/mem/mem_alloc_array.h" +#include "me/string/str_l_copy.h" +#include "me/string/str_split.h" +#include + +static t_usize local_count_words(t_const_str str, char chr); +static t_str *local_split_inner(t_const_str str, char chr, t_str *out); +static t_str *local_split_freeall(t_str **to_free); + +static t_usize local_count_words(t_const_str str, char chr) +{ + t_usize i; + t_usize out; + + out = 0; + i = 0; + while (str[i]) + { + while (str[i] && str[i] == chr) + i++; + if (str[i] == 0) + return (out); + out++; + while (str[i] && str[i] != chr) + i++; + } + return (out); +} + +static t_str *local_split_freeall(t_str **to_free) +{ + while (*to_free) + free(*(to_free++)); + return (NULL); +} + +static t_str *local_split_inner(t_const_str str, char chr, t_str *out) +{ + t_usize str_i; + t_usize sub_i; + t_usize ptr_i; + + str_i = 0; + ptr_i = 0; + while (str[str_i]) + { + while (str[str_i] && str[str_i] == chr) + str_i++; + if (str[str_i] == 0) + break ; + sub_i = 0; + while (str[str_i + sub_i] && str[str_i + sub_i] != chr) + sub_i++; + out[ptr_i] = mem_alloc(sizeof(char) * (sub_i + 1)); + if (out[ptr_i] == NULL) + return (local_split_freeall(&out)); + str_l_copy(out[ptr_i++], (t_str)(str + str_i), sub_i + 1); + str_i += sub_i; + } + out[ptr_i] = NULL; + return (out); +} + +t_str *str_split(t_const_str str, char chr) +{ + t_usize ptr_len; + t_str *out; + + if (str == NULL || *str == 0) + { + out = mem_alloc(sizeof(t_str) * 1); + *out = NULL; + return (out); + } + ptr_len = local_count_words(str, chr); + out = mem_alloc_array(sizeof(t_str), (ptr_len + 1)); + if (out == NULL) + return (NULL); + return (local_split_inner(str, chr, out)); +} diff --git a/stdme/src/string/str_substring.c b/stdme/src/string/str_substring.c new file mode 100644 index 00000000..790bd310 --- /dev/null +++ b/stdme/src/string/str_substring.c @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_substring.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/07 22:42:55 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 16:52:34 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include "me/string/str_l_copy.h" +#include "me/string/str_len.h" +#include "me/string/str_substring.h" +#include + +t_str str_substring(t_const_str str, t_usize start, t_usize len) +{ + t_usize len_str; + t_usize len_str_substring; + t_str out; + + if (str == NULL) + return (NULL); + len_str = str_len(str); + if (start >= len_str) + return (mem_alloc(1)); + len_str_substring = len_str - start + 1; + if (len_str_substring > len) + len_str_substring = len + 1; + out = mem_alloc(sizeof(char) * len_str_substring); + if (out == NULL) + return (NULL); + str_l_copy(out, &str[start], len_str_substring); + return (out); +} diff --git a/stdme/src/string/str_trim.c b/stdme/src/string/str_trim.c new file mode 100644 index 00000000..9320f10e --- /dev/null +++ b/stdme/src/string/str_trim.c @@ -0,0 +1,44 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str_trim.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: maiboyer +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/07 23:43:42 by maiboyer #+# #+# */ +/* Updated: 2023/12/09 18:16:31 by maiboyer ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "me/mem/mem_alloc.h" +#include "me/string/str_find_chr.h" +#include "me/string/str_l_copy.h" +#include "me/string/str_len.h" +#include "me/string/str_trim.h" +#include + +t_str str_trim(t_const_str str, t_const_str charset) +{ + t_usize start_idx; + t_usize end_idx; + t_usize buf_size; + t_str out; + + if (str == NULL || charset == NULL) + return (0); + start_idx = 0; + while (str[start_idx] && str_find_chr((t_str)charset, + str[start_idx]) != NULL) + start_idx++; + end_idx = str_len((t_str)str); + while (end_idx > 0 && str_find_chr((t_str)charset, str[end_idx]) != NULL) + end_idx--; + buf_size = end_idx - start_idx + 2; + if (end_idx == 0) + buf_size = 1; + out = mem_alloc(sizeof(char) * buf_size); + if (out == NULL) + return (NULL); + str_l_copy(out, &((t_str)str)[start_idx], buf_size); + return (out); +} diff --git a/stdme/vendor/mlx.h b/stdme/vendor/mlx.h new file mode 100644 index 00000000..b8af340e --- /dev/null +++ b/stdme/vendor/mlx.h @@ -0,0 +1,132 @@ +/* +** mlx.h for MinilibX in +** +** Made by Charlie Root +** Login +** +** Started on Mon Jul 31 16:37:50 2000 Charlie Root +** Last update Tue May 15 16:23:28 2007 Olivier Crouzet +*/ + +/* +** MinilibX - Please report bugs +*/ + +/* +** FR msg - FR msg - FR msg +** +** La MinilibX utilise 2 librairies supplementaires qu'il +** est necessaire de rajouter a la compilation : +** -lmlx -lXext -lX11 +** +** La MinilibX permet le chargement des images de type Xpm. +** Notez que cette implementation est incomplete. +** Merci de communiquer tout probleme de chargement d'image +** de ce type. +*/ + +#ifndef MLX_H + +# define MLX_H + +void *mlx_init(void); +/* +** needed before everything else. +** return (void *)0 if failed +*/ + +/* +** Basic actions +*/ + +void *mlx_new_window(void *mlx_ptr, int size_x, int size_y, char *title); +/* +** return void *0 if failed +*/ +int mlx_clear_window(void *mlx_ptr, void *win_ptr); +int mlx_pixel_put(void *mlx_ptr, void *win_ptr, int x, int y, int color); +/* +** origin for x & y is top left corner of the window +** y down is positive +** color is 0x00RRGGBB +*/ + +/* +** Image stuff +*/ + +void *mlx_new_image(void *mlx_ptr, int width, int height); +/* +** return void *0 if failed +** obsolete : image2 data is stored using bit planes +** void *mlx_new_image2(void *mlx_ptr,int width,int height); +*/ +char *mlx_get_data_addr(void *img_ptr, int *bits_per_pixel, int *size_line, + int *endian); +/* +** endian : 0 = sever X is little endian, 1 = big endian +** for mlx_new_image2, 2nd arg of mlx_get_data_addr is number_of_planes +*/ +int mlx_put_image_to_window(void *mlx_ptr, void *win_ptr, void *img_ptr, + int x, int y); +int mlx_get_color_value(void *mlx_ptr, int color); + +/* +** dealing with Events +*/ + +int mlx_mouse_hook(void *win_ptr, int (*funct_ptr)(), void *param); +int mlx_key_hook(void *win_ptr, int (*funct_ptr)(), void *param); +int mlx_expose_hook(void *win_ptr, int (*funct_ptr)(), void *param); + +int mlx_loop_hook(void *mlx_ptr, int (*funct_ptr)(), void *param); +int mlx_loop(void *mlx_ptr); +int mlx_loop_end(void *mlx_ptr); + +/* +** hook funct are called as follow : +** +** expose_hook(void *param); +** key_hook(int keycode, void *param); +** mouse_hook(int button, int x,int y, void *param); +** loop_hook(void *param); +** +*/ + +/* +** Usually asked... +*/ + +int mlx_string_put(void *mlx_ptr, void *win_ptr, int x, int y, int color, + char *string); +void mlx_set_font(void *mlx_ptr, void *win_ptr, char *name); +void *mlx_xpm_to_image(void *mlx_ptr, char **xpm_data, int *width, + int *height); +void *mlx_xpm_file_to_image(void *mlx_ptr, char *filename, int *width, + int *height); +int mlx_destroy_window(void *mlx_ptr, void *win_ptr); + +int mlx_destroy_image(void *mlx_ptr, void *img_ptr); + +int mlx_destroy_display(void *mlx_ptr); + +/* +** generic hook system for all events, and minilibX functions that +** can be hooked. Some macro and defines from X11/X.h are needed here. +*/ + +int mlx_hook(void *win_ptr, int x_event, int x_mask, int (*funct)(), + void *param); + +int mlx_do_key_autorepeatoff(void *mlx_ptr); +int mlx_do_key_autorepeaton(void *mlx_ptr); +int mlx_do_sync(void *mlx_ptr); + +int mlx_mouse_get_pos(void *mlx_ptr, void *win_ptr, int *x, int *y); +int mlx_mouse_move(void *mlx_ptr, void *win_ptr, int x, int y); +int mlx_mouse_hide(void *mlx_ptr, void *win_ptr); +int mlx_mouse_show(void *mlx_ptr, void *win_ptr); + +int mlx_get_screen_size(void *mlx_ptr, int *sizex, int *sizey); + +#endif /* MLX_H */ diff --git a/test/main.c b/test/main.c deleted file mode 100644 index f518a054..00000000 --- a/test/main.c +++ /dev/null @@ -1,26 +0,0 @@ -#include "../includes/minishell.h" - -int main() -{ - char *cwd; - size_t size; - - cwd = (char *)malloc(size); - size = 1024; - if (cwd == NULL) { - perror("malloc"); - exit(EXIT_FAILURE); - } - while (getcwd(cwd, size) == NULL) { - size *= 2; - cwd = (char *)realloc(cwd, size); - if (cwd == NULL) { - perror("realloc"); - exit(EXIT_FAILURE); - } - } - printf("Le répertoire de travail actuel est : %s\n", cwd); - free(cwd); // N'oubliez pas de libérer la mémoire allouée - return 0; -} - diff --git a/shcat_c/valgrind_readline_leaks_ignore.txt b/valgrind_readline_leaks_ignore.txt similarity index 100% rename from shcat_c/valgrind_readline_leaks_ignore.txt rename to valgrind_readline_leaks_ignore.txt