From 309b1b86303bef93861aeebea3497f57e1d48b2c Mon Sep 17 00:00:00 2001 From: Lukas Jiriste Date: Fri, 2 Aug 2024 14:33:51 +0200 Subject: [PATCH] Add parsing table and rules to the source code This is done so that minishell does not have to load them from files preventing minishell from not being able to find the files when being moved around. --- inc/parsing_info.h | 665 +++++++++++++++++++++++++++++++++++++++++++++ src/parsing.c | 5 +- 2 files changed, 668 insertions(+), 2 deletions(-) create mode 100644 inc/parsing_info.h diff --git a/inc/parsing_info.h b/inc/parsing_info.h new file mode 100644 index 0000000..72114fc --- /dev/null +++ b/inc/parsing_info.h @@ -0,0 +1,665 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* parsing_info.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ljiriste +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/08/02 12:57:18 by ljiriste #+# #+# */ +/* Updated: 2024/08/02 14:18:00 by ljiriste ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef PARSING_INFO_H +# define PARSING_INFO_H + +// Generated by xxd -i with small changes +// from shell_parsing_table and shell_rules + +static char g_str_table[6725] = { + 0x53, 0x74, 0x61, 0x74, 0x65, 0x3b, 0x44, 0x47, 0x52, 0x45, 0x41, 0x54, + 0x3b, 0x47, 0x52, 0x45, 0x41, 0x54, 0x3b, 0x4c, 0x45, 0x53, 0x53, 0x3b, + 0x44, 0x4c, 0x45, 0x53, 0x53, 0x3b, 0x49, 0x4f, 0x5f, 0x4e, 0x55, 0x4d, + 0x42, 0x45, 0x52, 0x3b, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, + 0x4e, 0x54, 0x5f, 0x57, 0x4f, 0x52, 0x44, 0x3b, 0x57, 0x4f, 0x52, 0x44, + 0x3b, 0x52, 0x50, 0x41, 0x52, 0x41, 0x3b, 0x4c, 0x50, 0x41, 0x52, 0x41, + 0x3b, 0x50, 0x49, 0x50, 0x45, 0x3b, 0x4f, 0x52, 0x5f, 0x49, 0x46, 0x3b, + 0x41, 0x4e, 0x44, 0x5f, 0x49, 0x46, 0x3b, 0x24, 0x3b, 0x70, 0x72, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x3b, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x3b, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x3b, 0x63, 0x6f, 0x6d, 0x70, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x3b, 0x63, 0x6d, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, + 0x3b, 0x63, 0x6d, 0x64, 0x5f, 0x77, 0x6f, 0x72, 0x64, 0x3b, 0x63, 0x6d, + 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x3b, 0x63, 0x6d, 0x64, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x3b, 0x69, 0x6f, 0x5f, 0x66, 0x69, 0x6c, + 0x65, 0x3b, 0x69, 0x6f, 0x5f, 0x68, 0x65, 0x72, 0x65, 0x3b, 0x68, 0x65, + 0x72, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x3b, 0x66, 0x69, 0x6c, 0x65, 0x6e, + 0x61, 0x6d, 0x65, 0x0a, 0x30, 0x3b, 0x73, 0x31, 0x3b, 0x73, 0x34, 0x3b, + 0x73, 0x36, 0x3b, 0x73, 0x38, 0x3b, 0x73, 0x31, 0x31, 0x3b, 0x73, 0x31, + 0x34, 0x3b, 0x73, 0x31, 0x35, 0x3b, 0x3b, 0x73, 0x31, 0x36, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x37, 0x37, 0x3b, 0x31, 0x31, 0x37, 0x3b, 0x31, 0x31, + 0x34, 0x3b, 0x38, 0x32, 0x3b, 0x38, 0x33, 0x3b, 0x38, 0x34, 0x3b, 0x3b, + 0x3b, 0x31, 0x31, 0x31, 0x3b, 0x31, 0x31, 0x33, 0x3b, 0x31, 0x30, 0x39, + 0x3b, 0x31, 0x31, 0x30, 0x3b, 0x3b, 0x0a, 0x31, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x73, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x33, 0x0a, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, + 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, + 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x72, + 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, + 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x33, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, + 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, + 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, + 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, + 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x73, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x35, 0x0a, 0x35, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x3b, 0x3b, 0x72, + 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, + 0x33, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x73, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x37, + 0x0a, 0x37, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x39, + 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x0a, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, + 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x31, 0x30, 0x3b, 0x0a, + 0x39, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, + 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, + 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x38, 0x3b, + 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x31, 0x30, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, + 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, + 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x3b, 0x72, + 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, + 0x32, 0x37, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x31, 0x3b, 0x73, 0x31, 0x3b, 0x73, + 0x34, 0x3b, 0x73, 0x36, 0x3b, 0x73, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x31, 0x32, 0x3b, 0x31, 0x33, 0x3b, 0x3b, 0x0a, 0x31, + 0x32, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, + 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, + 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x34, 0x3b, + 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x31, 0x33, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, + 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, + 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x3b, 0x3b, 0x72, + 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, + 0x32, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x39, 0x3b, + 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, + 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, + 0x3b, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, + 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x35, 0x3b, 0x72, + 0x32, 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, + 0x32, 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x3b, 0x72, 0x32, 0x32, 0x3b, + 0x3b, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, 0x32, + 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x36, 0x3b, 0x73, + 0x31, 0x37, 0x3b, 0x73, 0x32, 0x30, 0x3b, 0x73, 0x32, 0x32, 0x3b, 0x73, + 0x32, 0x34, 0x3b, 0x73, 0x32, 0x37, 0x3b, 0x73, 0x33, 0x30, 0x3b, 0x73, + 0x33, 0x31, 0x3b, 0x3b, 0x73, 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x37, 0x35, 0x3b, 0x37, 0x34, 0x3b, 0x37, 0x31, 0x3b, 0x33, 0x39, 0x3b, + 0x34, 0x30, 0x3b, 0x34, 0x31, 0x3b, 0x3b, 0x3b, 0x36, 0x38, 0x3b, 0x37, + 0x30, 0x3b, 0x36, 0x36, 0x3b, 0x36, 0x37, 0x3b, 0x3b, 0x0a, 0x31, 0x37, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x31, 0x38, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x31, 0x39, 0x0a, 0x31, 0x38, 0x3b, + 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, + 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, + 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, 0x72, 0x33, 0x32, + 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x31, 0x39, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, + 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, + 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, + 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x0a, 0x32, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x73, 0x31, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x32, + 0x31, 0x0a, 0x32, 0x31, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, + 0x3b, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, + 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x32, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x73, 0x31, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x32, 0x33, 0x0a, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, + 0x72, 0x32, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x32, 0x34, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x32, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x32, 0x36, 0x3b, 0x0a, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x38, + 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, + 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, + 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, + 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x32, 0x36, 0x3b, + 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, + 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, + 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x72, 0x32, 0x37, + 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x32, 0x37, 0x3b, 0x73, 0x31, 0x37, 0x3b, 0x73, 0x32, 0x30, 0x3b, 0x73, + 0x32, 0x32, 0x3b, 0x73, 0x32, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x32, 0x38, 0x3b, 0x32, 0x39, 0x3b, 0x3b, 0x0a, 0x32, 0x38, + 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, + 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, + 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x72, 0x32, + 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x0a, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, + 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, + 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, + 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x0a, 0x33, 0x30, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, + 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, + 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, + 0x31, 0x39, 0x3b, 0x3b, 0x72, 0x31, 0x39, 0x3b, 0x72, 0x31, 0x39, 0x3b, + 0x72, 0x31, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x33, 0x31, 0x3b, 0x72, 0x32, + 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, 0x32, + 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, + 0x32, 0x32, 0x3b, 0x3b, 0x72, 0x32, 0x32, 0x3b, 0x72, 0x32, 0x32, 0x3b, + 0x72, 0x32, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x33, 0x32, 0x3b, 0x73, 0x31, + 0x37, 0x3b, 0x73, 0x32, 0x30, 0x3b, 0x73, 0x32, 0x32, 0x3b, 0x73, 0x32, + 0x34, 0x3b, 0x73, 0x32, 0x37, 0x3b, 0x73, 0x33, 0x30, 0x3b, 0x73, 0x33, + 0x31, 0x3b, 0x3b, 0x73, 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x33, + 0x33, 0x3b, 0x37, 0x34, 0x3b, 0x37, 0x31, 0x3b, 0x33, 0x39, 0x3b, 0x34, + 0x30, 0x3b, 0x34, 0x31, 0x3b, 0x3b, 0x3b, 0x36, 0x38, 0x3b, 0x37, 0x30, + 0x3b, 0x36, 0x36, 0x3b, 0x36, 0x37, 0x3b, 0x3b, 0x0a, 0x33, 0x33, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x33, 0x34, 0x3b, 0x3b, + 0x3b, 0x73, 0x33, 0x35, 0x3b, 0x73, 0x37, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x33, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x72, 0x37, + 0x3b, 0x3b, 0x72, 0x37, 0x3b, 0x72, 0x37, 0x3b, 0x72, 0x37, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x33, 0x35, 0x3b, 0x73, 0x31, 0x37, 0x3b, 0x73, 0x32, 0x30, + 0x3b, 0x73, 0x32, 0x32, 0x3b, 0x73, 0x32, 0x34, 0x3b, 0x73, 0x32, 0x37, + 0x3b, 0x73, 0x33, 0x30, 0x3b, 0x73, 0x33, 0x31, 0x3b, 0x3b, 0x73, 0x33, + 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x33, 0x36, 0x3b, 0x37, 0x31, + 0x3b, 0x33, 0x39, 0x3b, 0x34, 0x30, 0x3b, 0x34, 0x31, 0x3b, 0x3b, 0x3b, + 0x36, 0x38, 0x3b, 0x37, 0x30, 0x3b, 0x36, 0x36, 0x3b, 0x36, 0x37, 0x3b, + 0x3b, 0x0a, 0x33, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x72, 0x31, 0x3b, 0x3b, 0x73, 0x33, 0x37, 0x3b, 0x72, 0x31, 0x3b, 0x72, + 0x31, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x33, 0x37, 0x3b, 0x73, 0x31, 0x37, 0x3b, + 0x73, 0x32, 0x30, 0x3b, 0x73, 0x32, 0x32, 0x3b, 0x73, 0x32, 0x34, 0x3b, + 0x73, 0x32, 0x37, 0x3b, 0x73, 0x33, 0x30, 0x3b, 0x73, 0x33, 0x31, 0x3b, + 0x3b, 0x73, 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x33, + 0x38, 0x3b, 0x33, 0x39, 0x3b, 0x34, 0x30, 0x3b, 0x34, 0x31, 0x3b, 0x3b, + 0x3b, 0x36, 0x38, 0x3b, 0x37, 0x30, 0x3b, 0x36, 0x36, 0x3b, 0x36, 0x37, + 0x3b, 0x3b, 0x0a, 0x33, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x72, 0x34, 0x3b, 0x3b, 0x72, 0x34, 0x3b, 0x72, 0x34, 0x3b, 0x72, + 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x33, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x72, 0x35, 0x3b, 0x3b, 0x72, 0x35, 0x3b, 0x72, 0x35, + 0x3b, 0x72, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x34, 0x30, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x72, 0x36, 0x3b, 0x3b, 0x72, 0x36, 0x3b, + 0x72, 0x36, 0x3b, 0x72, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x34, 0x31, 0x3b, + 0x73, 0x31, 0x37, 0x3b, 0x73, 0x32, 0x30, 0x3b, 0x73, 0x32, 0x32, 0x3b, + 0x73, 0x32, 0x34, 0x3b, 0x73, 0x32, 0x37, 0x3b, 0x73, 0x34, 0x32, 0x3b, + 0x73, 0x34, 0x33, 0x3b, 0x72, 0x31, 0x30, 0x3b, 0x3b, 0x72, 0x31, 0x30, + 0x3b, 0x72, 0x31, 0x30, 0x3b, 0x72, 0x31, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x34, 0x34, 0x3b, 0x3b, 0x3b, 0x36, 0x35, 0x3b, + 0x36, 0x36, 0x3b, 0x36, 0x37, 0x3b, 0x3b, 0x0a, 0x34, 0x32, 0x3b, 0x72, + 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, + 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, + 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x3b, 0x72, 0x32, 0x30, 0x3b, + 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x34, + 0x33, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, + 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x3b, 0x72, + 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x3b, 0x72, 0x32, 0x31, 0x3b, + 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x34, + 0x34, 0x3b, 0x73, 0x34, 0x35, 0x3b, 0x73, 0x34, 0x38, 0x3b, 0x73, 0x35, + 0x30, 0x3b, 0x73, 0x35, 0x32, 0x3b, 0x73, 0x35, 0x35, 0x3b, 0x3b, 0x73, + 0x35, 0x38, 0x3b, 0x72, 0x39, 0x3b, 0x3b, 0x72, 0x39, 0x3b, 0x72, 0x39, + 0x3b, 0x72, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x35, 0x39, 0x3b, 0x3b, 0x36, 0x34, 0x3b, 0x36, 0x32, 0x3b, 0x36, 0x33, + 0x3b, 0x3b, 0x0a, 0x34, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x73, 0x34, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x34, + 0x37, 0x0a, 0x34, 0x36, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, + 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, + 0x3b, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, 0x72, + 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x34, 0x37, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, + 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, + 0x3b, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, 0x72, + 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x34, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, + 0x34, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x34, 0x39, + 0x0a, 0x34, 0x39, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, + 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x3b, 0x72, 0x33, + 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x0a, 0x35, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x34, + 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x35, 0x31, 0x0a, + 0x35, 0x31, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x3b, + 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x3b, 0x72, 0x32, 0x39, + 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x35, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x35, 0x33, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x35, 0x34, 0x3b, 0x0a, 0x35, + 0x33, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, + 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x72, + 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x72, 0x32, 0x38, 0x3b, + 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x35, + 0x34, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, + 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x72, + 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x72, 0x32, 0x37, 0x3b, + 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x35, + 0x35, 0x3b, 0x73, 0x34, 0x35, 0x3b, 0x73, 0x34, 0x38, 0x3b, 0x73, 0x35, + 0x30, 0x3b, 0x73, 0x35, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x35, 0x36, 0x3b, 0x35, 0x37, 0x3b, 0x3b, 0x0a, 0x35, 0x36, 0x3b, + 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, + 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x72, 0x32, 0x34, + 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, + 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x35, 0x37, 0x3b, + 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, + 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x3b, 0x72, 0x32, 0x36, + 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, + 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x35, 0x38, 0x3b, + 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, + 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x3b, 0x72, 0x31, 0x35, + 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, + 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x35, 0x39, 0x3b, + 0x73, 0x34, 0x35, 0x3b, 0x73, 0x34, 0x38, 0x3b, 0x73, 0x35, 0x30, 0x3b, + 0x73, 0x35, 0x32, 0x3b, 0x73, 0x35, 0x35, 0x3b, 0x3b, 0x73, 0x36, 0x30, + 0x3b, 0x72, 0x38, 0x3b, 0x3b, 0x72, 0x38, 0x3b, 0x72, 0x38, 0x3b, 0x72, + 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x36, 0x31, 0x3b, 0x36, 0x32, 0x3b, 0x36, 0x33, 0x3b, 0x3b, 0x0a, 0x36, + 0x30, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, + 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x3b, 0x72, + 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x3b, 0x72, 0x31, 0x36, 0x3b, + 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, + 0x31, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, + 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x3b, 0x72, + 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x3b, 0x72, 0x31, 0x34, 0x3b, + 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, + 0x32, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, + 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, 0x72, + 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, 0x72, 0x32, 0x33, 0x3b, + 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, + 0x33, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, + 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x72, + 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x72, 0x32, 0x35, 0x3b, + 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, + 0x34, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, + 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x3b, 0x72, + 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x3b, 0x72, 0x31, 0x33, 0x3b, + 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, + 0x35, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, + 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, + 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x3b, 0x72, + 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x36, 0x36, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, + 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, + 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, + 0x3b, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, + 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, 0x37, 0x3b, 0x72, 0x32, 0x35, 0x3b, + 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, + 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, + 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, + 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x36, 0x38, 0x3b, 0x73, + 0x34, 0x35, 0x3b, 0x73, 0x34, 0x38, 0x3b, 0x73, 0x35, 0x30, 0x3b, 0x73, + 0x35, 0x32, 0x3b, 0x73, 0x35, 0x35, 0x3b, 0x3b, 0x73, 0x35, 0x38, 0x3b, + 0x72, 0x31, 0x32, 0x3b, 0x3b, 0x72, 0x31, 0x32, 0x3b, 0x72, 0x31, 0x32, + 0x3b, 0x72, 0x31, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x36, 0x39, 0x3b, 0x3b, 0x36, 0x34, 0x3b, 0x36, 0x32, 0x3b, 0x36, + 0x33, 0x3b, 0x3b, 0x0a, 0x36, 0x39, 0x3b, 0x73, 0x34, 0x35, 0x3b, 0x73, + 0x34, 0x38, 0x3b, 0x73, 0x35, 0x30, 0x3b, 0x73, 0x35, 0x32, 0x3b, 0x73, + 0x35, 0x35, 0x3b, 0x3b, 0x73, 0x36, 0x30, 0x3b, 0x72, 0x31, 0x31, 0x3b, + 0x3b, 0x72, 0x31, 0x31, 0x3b, 0x72, 0x31, 0x31, 0x3b, 0x72, 0x31, 0x31, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x36, + 0x31, 0x3b, 0x36, 0x32, 0x3b, 0x36, 0x33, 0x3b, 0x3b, 0x0a, 0x37, 0x30, + 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, + 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, + 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x3b, 0x72, 0x31, + 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x0a, 0x37, 0x31, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x72, + 0x33, 0x3b, 0x3b, 0x72, 0x33, 0x3b, 0x72, 0x33, 0x3b, 0x72, 0x33, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x0a, 0x37, 0x32, 0x3b, 0x73, 0x31, 0x37, 0x3b, 0x73, 0x32, + 0x30, 0x3b, 0x73, 0x32, 0x32, 0x3b, 0x73, 0x32, 0x34, 0x3b, 0x73, 0x32, + 0x37, 0x3b, 0x73, 0x33, 0x30, 0x3b, 0x73, 0x33, 0x31, 0x3b, 0x3b, 0x73, + 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x37, 0x33, 0x3b, 0x37, + 0x31, 0x3b, 0x33, 0x39, 0x3b, 0x34, 0x30, 0x3b, 0x34, 0x31, 0x3b, 0x3b, + 0x3b, 0x36, 0x38, 0x3b, 0x37, 0x30, 0x3b, 0x36, 0x36, 0x3b, 0x36, 0x37, + 0x3b, 0x3b, 0x0a, 0x37, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x72, 0x30, 0x3b, 0x3b, 0x73, 0x33, 0x37, 0x3b, 0x72, 0x30, 0x3b, + 0x72, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x37, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x3b, 0x3b, 0x73, 0x33, 0x37, 0x3b, + 0x72, 0x32, 0x3b, 0x72, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x37, 0x35, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x37, 0x36, 0x3b, 0x3b, + 0x3b, 0x73, 0x33, 0x35, 0x3b, 0x73, 0x37, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x37, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x72, 0x37, 0x3b, 0x72, 0x37, 0x3b, 0x72, 0x37, 0x3b, 0x72, 0x37, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x37, 0x37, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x73, 0x37, 0x38, 0x3b, 0x73, 0x31, 0x31, 0x35, 0x3b, + 0x61, 0x63, 0x63, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x37, 0x38, 0x3b, 0x73, 0x31, 0x3b, + 0x73, 0x34, 0x3b, 0x73, 0x36, 0x3b, 0x73, 0x38, 0x3b, 0x73, 0x31, 0x31, + 0x3b, 0x73, 0x31, 0x34, 0x3b, 0x73, 0x31, 0x35, 0x3b, 0x3b, 0x73, 0x31, + 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x37, 0x39, 0x3b, 0x31, 0x31, + 0x34, 0x3b, 0x38, 0x32, 0x3b, 0x38, 0x33, 0x3b, 0x38, 0x34, 0x3b, 0x3b, + 0x3b, 0x31, 0x31, 0x31, 0x3b, 0x31, 0x31, 0x33, 0x3b, 0x31, 0x30, 0x39, + 0x3b, 0x31, 0x31, 0x30, 0x3b, 0x3b, 0x0a, 0x37, 0x39, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x38, 0x30, 0x3b, 0x72, + 0x31, 0x3b, 0x72, 0x31, 0x3b, 0x72, 0x31, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x38, 0x30, + 0x3b, 0x73, 0x31, 0x3b, 0x73, 0x34, 0x3b, 0x73, 0x36, 0x3b, 0x73, 0x38, + 0x3b, 0x73, 0x31, 0x31, 0x3b, 0x73, 0x31, 0x34, 0x3b, 0x73, 0x31, 0x35, + 0x3b, 0x3b, 0x73, 0x31, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x38, 0x31, 0x3b, 0x38, 0x32, 0x3b, 0x38, 0x33, 0x3b, 0x38, 0x34, 0x3b, + 0x3b, 0x3b, 0x31, 0x31, 0x31, 0x3b, 0x31, 0x31, 0x33, 0x3b, 0x31, 0x30, + 0x39, 0x3b, 0x31, 0x31, 0x30, 0x3b, 0x3b, 0x0a, 0x38, 0x31, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x72, 0x34, 0x3b, 0x72, + 0x34, 0x3b, 0x72, 0x34, 0x3b, 0x72, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x38, 0x32, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x72, 0x35, + 0x3b, 0x72, 0x35, 0x3b, 0x72, 0x35, 0x3b, 0x72, 0x35, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x38, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x72, 0x36, 0x3b, 0x72, 0x36, 0x3b, 0x72, 0x36, 0x3b, 0x72, 0x36, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x38, 0x34, 0x3b, 0x73, 0x31, 0x3b, 0x73, 0x34, 0x3b, 0x73, + 0x36, 0x3b, 0x73, 0x38, 0x3b, 0x73, 0x31, 0x31, 0x3b, 0x73, 0x38, 0x35, + 0x3b, 0x73, 0x38, 0x36, 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x30, 0x3b, 0x72, + 0x31, 0x30, 0x3b, 0x72, 0x31, 0x30, 0x3b, 0x72, 0x31, 0x30, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x38, 0x37, 0x3b, 0x3b, 0x3b, 0x31, 0x30, + 0x38, 0x3b, 0x31, 0x30, 0x39, 0x3b, 0x31, 0x31, 0x30, 0x3b, 0x3b, 0x0a, + 0x38, 0x35, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, + 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, + 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x30, + 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, 0x3b, 0x72, 0x32, 0x30, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x0a, 0x38, 0x36, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, + 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, + 0x31, 0x3b, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x31, + 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, 0x3b, 0x72, 0x32, 0x31, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x0a, 0x38, 0x37, 0x3b, 0x73, 0x38, 0x38, 0x3b, 0x73, 0x39, + 0x31, 0x3b, 0x73, 0x39, 0x33, 0x3b, 0x73, 0x39, 0x35, 0x3b, 0x73, 0x39, + 0x38, 0x3b, 0x3b, 0x73, 0x31, 0x30, 0x31, 0x3b, 0x3b, 0x3b, 0x72, 0x39, + 0x3b, 0x72, 0x39, 0x3b, 0x72, 0x39, 0x3b, 0x72, 0x39, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x31, 0x30, 0x32, 0x3b, 0x3b, 0x31, 0x30, + 0x37, 0x3b, 0x31, 0x30, 0x35, 0x3b, 0x31, 0x30, 0x36, 0x3b, 0x3b, 0x0a, + 0x38, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x38, 0x39, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x39, 0x30, 0x0a, 0x38, + 0x39, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, + 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, 0x72, + 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, + 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x72, 0x33, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x39, + 0x30, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, + 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, 0x72, + 0x33, 0x31, 0x3b, 0x3b, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, + 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x72, 0x33, 0x31, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x39, + 0x31, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x38, 0x39, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x39, 0x32, 0x0a, 0x39, 0x32, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, + 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x3b, 0x72, 0x33, + 0x30, 0x3b, 0x3b, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, + 0x72, 0x33, 0x30, 0x3b, 0x72, 0x33, 0x30, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x39, 0x33, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x38, 0x39, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x39, 0x34, 0x0a, 0x39, 0x34, 0x3b, + 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, + 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x3b, 0x72, 0x32, 0x39, + 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x72, + 0x32, 0x39, 0x3b, 0x72, 0x32, 0x39, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x39, 0x35, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x39, 0x36, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x39, 0x37, 0x3b, 0x0a, 0x39, 0x36, 0x3b, 0x72, + 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, + 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x72, 0x32, 0x38, 0x3b, + 0x3b, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x72, 0x32, + 0x38, 0x3b, 0x72, 0x32, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x39, 0x37, 0x3b, 0x72, + 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, + 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x72, 0x32, 0x37, 0x3b, + 0x3b, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x72, 0x32, + 0x37, 0x3b, 0x72, 0x32, 0x37, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x39, 0x38, 0x3b, 0x73, + 0x38, 0x38, 0x3b, 0x73, 0x39, 0x31, 0x3b, 0x73, 0x39, 0x33, 0x3b, 0x73, + 0x39, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x39, 0x39, + 0x3b, 0x31, 0x30, 0x30, 0x3b, 0x3b, 0x0a, 0x39, 0x39, 0x3b, 0x72, 0x32, + 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, + 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, + 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x72, 0x32, 0x34, + 0x3b, 0x72, 0x32, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x30, 0x3b, 0x72, + 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, + 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x3b, 0x72, 0x32, 0x36, 0x3b, + 0x3b, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x72, 0x32, + 0x36, 0x3b, 0x72, 0x32, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x31, 0x3b, + 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, + 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x3b, 0x72, 0x31, 0x35, + 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x72, + 0x31, 0x35, 0x3b, 0x72, 0x31, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x32, + 0x3b, 0x73, 0x38, 0x38, 0x3b, 0x73, 0x39, 0x31, 0x3b, 0x73, 0x39, 0x33, + 0x3b, 0x73, 0x39, 0x35, 0x3b, 0x73, 0x39, 0x38, 0x3b, 0x3b, 0x73, 0x31, + 0x30, 0x33, 0x3b, 0x3b, 0x3b, 0x72, 0x38, 0x3b, 0x72, 0x38, 0x3b, 0x72, + 0x38, 0x3b, 0x72, 0x38, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x31, 0x30, 0x34, 0x3b, 0x31, 0x30, 0x35, 0x3b, 0x31, 0x30, + 0x36, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x33, 0x3b, 0x72, 0x31, 0x36, 0x3b, + 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, + 0x72, 0x31, 0x36, 0x3b, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x3b, 0x3b, 0x72, + 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x72, 0x31, 0x36, 0x3b, 0x72, + 0x31, 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x34, 0x3b, 0x72, 0x31, 0x34, + 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, + 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x3b, 0x3b, + 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, 0x72, 0x31, 0x34, 0x3b, + 0x72, 0x31, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x35, 0x3b, 0x72, 0x32, + 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, + 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, + 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, + 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x36, 0x3b, 0x72, + 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, + 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x72, 0x32, 0x35, 0x3b, + 0x3b, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, + 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x37, 0x3b, + 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, + 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x3b, 0x72, 0x31, 0x33, + 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x72, + 0x31, 0x33, 0x3b, 0x72, 0x31, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x30, 0x38, + 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, + 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, + 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, + 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x72, 0x31, 0x38, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x0a, 0x31, 0x30, 0x39, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, + 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, + 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x3b, 0x3b, 0x72, + 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, 0x32, 0x33, 0x3b, 0x72, + 0x32, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x31, 0x30, 0x3b, 0x72, 0x32, 0x35, + 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, + 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, + 0x3b, 0x3b, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x72, + 0x32, 0x35, 0x3b, 0x72, 0x32, 0x35, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x31, 0x31, + 0x3b, 0x73, 0x38, 0x38, 0x3b, 0x73, 0x39, 0x31, 0x3b, 0x73, 0x39, 0x33, + 0x3b, 0x73, 0x39, 0x35, 0x3b, 0x73, 0x39, 0x38, 0x3b, 0x3b, 0x73, 0x31, + 0x30, 0x31, 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x32, 0x3b, 0x72, 0x31, 0x32, + 0x3b, 0x72, 0x31, 0x32, 0x3b, 0x72, 0x31, 0x32, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x31, 0x31, 0x32, 0x3b, 0x3b, 0x31, 0x30, 0x37, + 0x3b, 0x31, 0x30, 0x35, 0x3b, 0x31, 0x30, 0x36, 0x3b, 0x3b, 0x0a, 0x31, + 0x31, 0x32, 0x3b, 0x73, 0x38, 0x38, 0x3b, 0x73, 0x39, 0x31, 0x3b, 0x73, + 0x39, 0x33, 0x3b, 0x73, 0x39, 0x35, 0x3b, 0x73, 0x39, 0x38, 0x3b, 0x3b, + 0x73, 0x31, 0x30, 0x33, 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x31, 0x3b, 0x72, + 0x31, 0x31, 0x3b, 0x72, 0x31, 0x31, 0x3b, 0x72, 0x31, 0x31, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x31, 0x30, 0x34, 0x3b, + 0x31, 0x30, 0x35, 0x3b, 0x31, 0x30, 0x36, 0x3b, 0x3b, 0x0a, 0x31, 0x31, + 0x33, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, + 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, + 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x3b, 0x3b, 0x72, 0x31, 0x37, 0x3b, + 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, 0x72, 0x31, 0x37, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x0a, 0x31, 0x31, 0x34, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x72, 0x33, 0x3b, 0x72, 0x33, 0x3b, 0x72, 0x33, 0x3b, + 0x72, 0x33, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, 0x31, 0x31, 0x35, 0x3b, 0x73, 0x31, 0x3b, + 0x73, 0x34, 0x3b, 0x73, 0x36, 0x3b, 0x73, 0x38, 0x3b, 0x73, 0x31, 0x31, + 0x3b, 0x73, 0x31, 0x34, 0x3b, 0x73, 0x31, 0x35, 0x3b, 0x3b, 0x73, 0x31, + 0x36, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x31, 0x31, 0x36, 0x3b, 0x31, + 0x31, 0x34, 0x3b, 0x38, 0x32, 0x3b, 0x38, 0x33, 0x3b, 0x38, 0x34, 0x3b, + 0x3b, 0x3b, 0x31, 0x31, 0x31, 0x3b, 0x31, 0x31, 0x33, 0x3b, 0x31, 0x30, + 0x39, 0x3b, 0x31, 0x31, 0x30, 0x3b, 0x3b, 0x0a, 0x31, 0x31, 0x36, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x73, 0x38, 0x30, + 0x3b, 0x72, 0x30, 0x3b, 0x72, 0x30, 0x3b, 0x72, 0x30, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x0a, + 0x31, 0x31, 0x37, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x73, 0x38, 0x30, 0x3b, 0x72, 0x32, 0x3b, 0x72, 0x32, 0x3b, 0x72, + 0x32, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, 0x3b, + 0x3b, 0x3b, 0x3b, 0x0a, 0x00 +}; + +static char g_str_rules[941] = { + 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x2d, 0x3e, 0x20, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x41, 0x4e, 0x44, 0x5f, 0x49, + 0x46, 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x2d, 0x3e, 0x20, 0x70, 0x72, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x4f, 0x52, 0x5f, 0x49, 0x46, 0x20, + 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x70, 0x72, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x20, 0x2d, 0x3e, 0x20, 0x70, 0x69, 0x70, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x0a, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x2d, 0x3e, + 0x20, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x49, + 0x50, 0x45, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x0a, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x20, 0x2d, 0x3e, 0x20, + 0x63, 0x6f, 0x6d, 0x70, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x4c, 0x50, 0x41, 0x52, 0x41, 0x20, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x52, 0x50, 0x41, 0x52, 0x41, + 0x0a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x70, + 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x77, 0x6f, + 0x72, 0x64, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, + 0x78, 0x0a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x77, + 0x6f, 0x72, 0x64, 0x0a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, + 0x64, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x0a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x20, + 0x2d, 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x0a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x0a, 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, + 0x20, 0x2d, 0x3e, 0x20, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x0a, 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, + 0x69, 0x78, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, + 0x66, 0x66, 0x69, 0x78, 0x20, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x0a, 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, + 0x66, 0x69, 0x78, 0x20, 0x2d, 0x3e, 0x20, 0x57, 0x4f, 0x52, 0x44, 0x0a, + 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x20, 0x2d, + 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, + 0x20, 0x57, 0x4f, 0x52, 0x44, 0x0a, 0x63, 0x6d, 0x64, 0x5f, 0x70, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x20, 0x2d, 0x3e, 0x20, 0x69, 0x6f, 0x5f, 0x72, + 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x0a, 0x63, 0x6d, 0x64, 0x5f, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, + 0x64, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x69, 0x6f, 0x5f, + 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x0a, 0x63, 0x6d, 0x64, + 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x2d, 0x3e, 0x20, 0x41, + 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x57, 0x4f, + 0x52, 0x44, 0x0a, 0x63, 0x6d, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, + 0x78, 0x20, 0x2d, 0x3e, 0x20, 0x63, 0x6d, 0x64, 0x5f, 0x70, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x20, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, + 0x4e, 0x54, 0x5f, 0x57, 0x4f, 0x52, 0x44, 0x0a, 0x63, 0x6d, 0x64, 0x5f, + 0x77, 0x6f, 0x72, 0x64, 0x20, 0x2d, 0x3e, 0x20, 0x57, 0x4f, 0x52, 0x44, + 0x0a, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x2d, 0x3e, + 0x20, 0x57, 0x4f, 0x52, 0x44, 0x0a, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x20, 0x2d, 0x3e, 0x20, 0x69, 0x6f, 0x5f, + 0x66, 0x69, 0x6c, 0x65, 0x0a, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x20, 0x2d, 0x3e, 0x20, 0x49, 0x4f, 0x5f, 0x4e, + 0x55, 0x4d, 0x42, 0x45, 0x52, 0x20, 0x69, 0x6f, 0x5f, 0x66, 0x69, 0x6c, + 0x65, 0x0a, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x20, 0x2d, 0x3e, 0x20, 0x69, 0x6f, 0x5f, 0x68, 0x65, 0x72, 0x65, + 0x0a, 0x69, 0x6f, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x20, 0x2d, 0x3e, 0x20, 0x49, 0x4f, 0x5f, 0x4e, 0x55, 0x4d, 0x42, 0x45, + 0x52, 0x20, 0x69, 0x6f, 0x5f, 0x68, 0x65, 0x72, 0x65, 0x0a, 0x69, 0x6f, + 0x5f, 0x68, 0x65, 0x72, 0x65, 0x20, 0x2d, 0x3e, 0x20, 0x44, 0x4c, 0x45, + 0x53, 0x53, 0x20, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x0a, + 0x68, 0x65, 0x72, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x20, 0x2d, 0x3e, 0x20, + 0x57, 0x4f, 0x52, 0x44, 0x0a, 0x69, 0x6f, 0x5f, 0x66, 0x69, 0x6c, 0x65, + 0x20, 0x2d, 0x3e, 0x20, 0x4c, 0x45, 0x53, 0x53, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x0a, 0x69, 0x6f, 0x5f, 0x66, 0x69, 0x6c, + 0x65, 0x20, 0x2d, 0x3e, 0x20, 0x47, 0x52, 0x45, 0x41, 0x54, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x0a, 0x69, 0x6f, 0x5f, 0x66, + 0x69, 0x6c, 0x65, 0x20, 0x2d, 0x3e, 0x20, 0x44, 0x47, 0x52, 0x45, 0x41, + 0x54, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x0a, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x2d, 0x3e, 0x20, 0x57, + 0x4f, 0x52, 0x44, 0x0a, 0x00 +}; + +#endif // PARSING_INFO_H diff --git a/src/parsing.c b/src/parsing.c index 935780b..c228d53 100644 --- a/src/parsing.c +++ b/src/parsing.c @@ -6,12 +6,13 @@ /* By: ljiriste +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/05/03 15:58:55 by ljiriste #+# #+# */ -/* Updated: 2024/08/02 10:25:42 by ljiriste ### ########.fr */ +/* Updated: 2024/08/02 14:16:59 by ljiriste ### ########.fr */ /* */ /* ************************************************************************** */ #include "minishell.h" #include "libft.h" +#include "parsing_info.h" // table should be static or loaded at start and passed in as argument int parse(t_vec *tokens, t_tree **parse_tree) @@ -19,7 +20,7 @@ int parse(t_vec *tokens, t_tree **parse_tree) t_parsing_table table; ft_parsing_table_init(&table); - ft_parsing_table_load(&table, "shell_parsing_table", "shell_rules"); + ft_parsing_table_load_str(&table, g_str_table, g_str_rules); *parse_tree = ft_parse(tokens, &table); ft_parsing_table_free(&table); return (parse_tree == NULL); -- 2.30.2