Loading notebooks/regex_parsing.ipynb +27 −8 Original line number Diff line number Diff line %% Cell type:code id: tags: ``` python import libmata.parser as parser import libmata.alphabets as alphabets import libmata.plotting as plotting from libmata.plotting import plot import libmata.nfa.nfa as mata_nfa import aligater.utils.parser as ali_parser from aligater.utils import mata_handler import codecs # plotting.store()['alphabet'] = alphabets.OnTheFlyAlphabet.from_symbol_map({chr(c): c for c in range(128)}) ``` %% Cell type:code id: tags: ``` python ascii_map = { 'space': 32, # Space '!': 33, '"': 34, '#': 35, '$': 36, '%': 37, '&': 38, "'": 39, '(': 40, ')': 41, '*': 42, '+': 43, ',': 44, '-': 45, '.': 46, '/': 47, '0': 48, '1': 49, '2': 50, '3': 51, '4': 52, '5': 53, '6': 54, '7': 55, '8': 56, '9': 57, ':': 58, ';': 59, '<': 60, '=': 61, '>': 62, '?': 63, '@': 64, 'A': 65, 'B': 66, 'C': 67, 'D': 68, 'E': 69, 'F': 70, 'G': 71, 'H': 72, 'I': 73, 'J': 74, 'K': 75, 'L': 76, 'M': 77, 'N': 78, 'O': 79, 'P': 80, 'Q': 81, 'R': 82, 'S': 83, 'T': 84, 'U': 85, 'V': 86, 'W': 87, 'X': 88, 'Y': 89, 'Z': 90, '[': 91, '\': 92, # Backslash '\\': 92, ']': 93, '^': 94, '_': 95, '`': 96, 'a': 97, 'b': 98, 'c': 99, 'd': 100, 'e': 101, 'f': 102, 'g': 103, 'h': 104, 'i': 105, 'j': 106, 'k': 107, 'l': 108, 'm': 109, 'n': 110, 'o': 111, 'p': 112, 'q': 113, 'r': 114, 's': 115, 't': 116, 'u': 117, 'v': 118, 'w': 119, 'x': 120, 'y': 121, 'z': 122, '{': 123, '|': 124, '}': 125, '~': 126, '\n': 10, # Newline '\t': 9, # Tab '\r': 13, # Carriage return '\f': 12, # Formfeed '\v': 11 # Vertical tab } number_map = {str(c): c for c in range(256)} wanted_symbols = {str(c) for c in range(128)} wanted_symbols = {str(c) for c in range(256)} ``` %% Cell type:code id: tags: ``` python # regex = "\nCSeq[ \t]*:([ \t]|(\r?\n( |\t)))*[0-9]+([ \t]|(\r?\n( |\t)))+INVITE[ \t]*\r?\n" # /(MAIL +FROM:[ \t]*<?([^\n\r \t]+)>?)([ \t]+[a-zA-Z0-9=]+)*[ \t]*\r?\n/si#0,A # /(.*\r?\n)?\* [0-9]+ FETCH [^\r\n]+\r?\n/si#2,A # /(RETR[ \t]+\d+)(\r)?\n$/si#4,A # /PORT (25[0-5]|2[0-4]\d|[0-1]?\d?\d),(25[0-5]|2[0-4]\d|[0-1]?\d?\d),(25[0-5]|2[0-4]\d|[0-1]?\d?\d),(25[0-5]|2[0-4]\d|[0-1]?\d?\d),(\d+),(\d+)\r?\n/si#6,7,A # /EPRT [!-~][1-2][!-~][0-9a-fA-F.:]+[!-~](\d+)[!-~]\r?\n/si#6,7,A # /EPSV( ([1-2]|ALL))?\r?\n/si#6,7,A # /(RCPT +TO:[ \t]*<?([^\n\r \t]+)>?)[ \t]*\r?\n/si#U |3A|[\f\n\r\t\v]*Basic[\f\n\r\t\v]+TERBUF9Bbm9ueW1vdXM6TGRhcFBhc3N3b3JkXzE\= # regex = "^.{3}\xFF[sS][mM][bB][sS]" # regex = "^A.{15}\x00\x01\x86\xA0" # regex = "\x3A.*s_sq\=aolsnssignin" # regex = "[^a]" # regex = "[\x00-\x5a\x5c-\x7F]" regex = "a$|b" regex = "\s" # with open("/home/notme/aligater/output/regex_test.re2", "r", encoding='utf-8') as f: # regex = f.readline().strip() codecs.decode(regex, 'unicode_escape') ``` %% Output 'a$|b' <>:16: SyntaxWarning: invalid escape sequence '\s' <>:16: SyntaxWarning: invalid escape sequence '\s' /tmp/ipykernel_811523/2189198587.py:16: SyntaxWarning: invalid escape sequence '\s' regex = "\s" %% Cell type:code id: tags: ``` python m_nfa = parser.from_regex(regex) m_nfa = parser.from_regex(regex, encoding="Latin-1") alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) # ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet)) # ext_nfa.remove_unused_symbols() # ext_nfa_wo_sym = ext_nfa.remove_symbols({str(c) for c in range(129, 256)}) # m_nfa = ali_parser.ext_nfa_to_mata_nfa(ext_nfa_wo_sym) # ali_parser.ext_nfa_to_vtf(ext_nfa, "/home/notme/aligater/output/test.mata", "comment") ``` %% Cell type:code id: tags: ``` python plot(m_nfa) ``` %% Output warning: missing alphabet necessary to translate the symbols %% Cell type:code id: tags: ``` python m_nfa ``` %% Output initial_states: [0] final_states: [1] transitions: 0-[98]→1 0-[9]→1 0-[10]→1 0-[12]→1 0-[13]→1 0-[32]→1 %% Cell type:code id: tags: ``` python assert False ``` %% Output --------------------------------------------------------------------------- AssertionError Traceback (most recent call last) Cell In[87], line 1 ----> 1 assert False AssertionError: %% Cell type:code id: tags: ``` python ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet), default_symbol_value = "129") print(ext_nfa.input_symbols) # ext_nfa.print() print(ext_nfa.input_symbols) ext_nfa_wo_sym = ext_nfa.remove_symbols(wanted_symbols) ext_nfa.remove_unused_symbols() ext_nfa_wo_sym.print() ``` %% Output {'107', '6', '242', '113', '156', '136', '29', '112', '189', '215', '158', '100', '179', '235', '78', '248', '236', '190', '33', '162', '86', '118', '10', '74', '187', '200', '212', '116', '245', '44', '249', '164', '230', '195', '221', '89', '58', '108', '140', '15', '225', '50', '211', '166', '55', '209', '2', '96', '82', '14', '12', '131', '206', '204', '161', '191', '103', '139', '143', '88', '148', '110', '133', '54', '150', '210', '234', '157', '56', '170', '181', '178', '65', '243', '81', '137', '36', '11', '231', '97', '196', '134', '174', '122', '173', '94', '125', '17', '129', '19', '135', '123', '71', '238', '121', '57', '69', '43', '186', '18', '244', '237', '130', '41', '16', '182', '52', '192', '132', '216', '152', '219', '227', '180', '251', '233', '126', '138', '104', '185', '26', '194', '47', '35', '120', '48', '250', '32', '7', '42', '83', '176', '99', '13', '67', '165', '252', '77', '84', '70', '101', '153', '27', '188', '102', '201', '246', '255', '49', '241', '117', '95', '168', '0', '160', '229', '226', '22', '193', '214', '175', '224', '3', '151', '154', '142', '98', '222', '66', '114', '172', '28', '124', '144', '167', '254', '115', '68', '205', '92', '37', '111', '141', '39', '8', '9', '146', '24', '30', '61', '60', '90', '213', '87', '85', '159', '40', '80', '21', '177', '239', '109', '64', '20', '76', '119', '199', '149', '223', '25', '62', '155', '127', '45', '207', '203', '106', '75', '51', '163', '169', '197', '253', '128', '228', '23', '171', '38', '183', '34', '184', '91', '72', '220', '1', '59', '105', '73', '218', '202', '147', '31', '46', '208', '217', '5', '247', '240', '145', '63', '4', '79', '198', '93', '232', '53'} {'107', '6', '242', '113', '156', '136', '29', '112', '189', '215', '158', '100', '179', '235', '78', '248', '236', '190', '33', '162', '86', '118', '10', '74', '187', '200', '212', '116', '245', '44', '249', '164', '230', '195', '221', '89', '58', '108', '140', '15', '225', '50', '211', '166', '55', '209', '2', '96', '82', '14', '12', '131', '206', '204', '161', '191', '103', '139', '143', '88', '148', '110', '133', '54', '150', '210', '234', '157', '56', '170', '181', '178', '65', '243', '81', '137', '36', '11', '231', '97', '196', '134', '174', '122', '173', '94', '125', '17', '129', '19', '135', '123', '71', '238', '121', '57', '69', '43', '186', '18', '244', '237', '130', '41', '16', '182', '52', '192', '132', '216', '152', '219', '227', '180', '251', '233', '126', '138', '104', '185', '26', '194', '47', '35', '120', '48', '250', '32', '7', '42', '83', '176', '99', '13', '67', '165', '252', '77', '84', '70', '101', '153', '27', '188', '102', '201', '246', '255', '49', '241', '117', '95', '168', '0', '160', '229', '226', '22', '193', '214', '175', '224', '3', '151', '154', '142', '98', '222', '66', '114', '172', '28', '124', '144', '167', '254', '115', '68', '205', '92', '37', '111', '141', '39', '8', '9', '146', '24', '30', '61', '60', '90', '213', '87', '85', '159', '40', '80', '21', '177', '239', '109', '64', '20', '76', '119', '199', '149', '223', '25', '62', '155', '127', '45', '207', '203', '106', '75', '51', '163', '169', '197', '253', '128', '228', '23', '171', '38', '183', '34', '184', '91', '72', '220', '1', '59', '105', '73', '218', '202', '147', '31', '46', '208', '217', '5', '247', '240', '145', '63', '4', '79', '198', '93', '232', '53'} states: {0, 1} input_symbols: {'107', '47', '6', '35', '120', '48', '113', '32', '7', '42', '29', '83', '112', '99', '13', '67', '100', '77', '78', '84', '70', '101', '27', '33', '86', '102', '118', '10', '74', '49', '117', '95', '0', '116', '22', '44', '3', '98', '89', '66', '114', '58', '28', '124', '108', '15', '50', '115', '68', '55', '2', '96', '82', '14', '12', '92', '37', '111', '39', '8', '9', '103', '24', '30', '61', '88', '60', '90', '87', '85', '110', '54', '40', '80', '21', '56', '109', '64', '20', '76', '119', '65', '81', '36', '11', '25', '62', '97', '127', '45', '122', '106', '94', '75', '51', '125', '17', '19', '123', '23', '38', '34', '71', '121', '57', '69', '43', '18', '91', '41', '72', '16', '52', '1', '59', '105', '73', '31', '46', '5', '63', '4', '79', '126', '104', '93', '26', '53'} transitions: {0: {'98': {1}}, 1: {}} initial_states: {0} final_states: {1} %% Cell type:code id: tags: ``` python import os directory = "/home/notme/nfa-bench/benchmarks/regexps" def analyze_file(file: str) -> tuple[int, set[str]]: print(file) with open(file, 'r') as infile: regexes = infile.readlines() all_bad_chars = set() sum = 0 for regex in regexes: regex = regex.strip() decoded_regex = codecs.decode(regex, 'unicode_escape', errors='ignore') bad_chars = list(filter(lambda ch: ch > chr(127), decoded_regex)) if len(bad_chars) >= 1: sum += 1 all_bad_chars.update(bad_chars) print(regex, list(bad_chars)) print(f"{sum} out of {len(regexes)} have non-ascii characters") print(f"all bad chars: {sorted(all_bad_chars)}") return sum, all_bad_chars def get_non_ascii_regexes(dest_dir): non_ascii = 0 all_bad_chars = set() for root, _, files in os.walk(dest_dir): for file in files: pcre_file_path = os.path.join(root, file) if file.endswith('.pcre'): sum, bad_chars = analyze_file(pcre_file_path) non_ascii += sum all_bad_chars.update(bad_chars) print(f"{non_ascii} non-ascii regexes in total") print(f"all bad chars: {len(all_bad_chars)} in total, {sorted(all_bad_chars)}") ``` %% Cell type:code id: tags: ``` python import warnings warnings.filterwarnings('ignore') directory = "/home/notme/nfa-bench/benchmarks/regexps" get_non_ascii_regexes(directory) ``` %% Output /home/notme/nfa-bench/benchmarks/regexps/ant/sprobe.pcre 0 out of 9 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-2604.pcre /^[^\n]*[\x80-\xFF].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80', 'ÿ'] /.*[\x00\x01]\x00\x09\x00.*\xff\xff\xff[\xff\xf7][\x36\x37]\x00/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', '÷'] /.*\x09\x08\x10\x00\x00[\x00\x01\x07-\xff]/sm ['ÿ'] /.*\xFC\x02[\x08\x06]\x00.{4}(\?!\x00\x00)/s ['ü'] /^\xfe\x37\x00\x23/m ['þ'] /.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/ ['ÿ', 'á', 'â', 'í', 'þ'] /^.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/sR ['ÿ', 'á', 'â', 'í', 'þ'] 7 out of 2604 have non-ascii characters all bad chars: ['\x80', 'á', 'â', 'í', '÷', 'ü', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-1400.pcre /.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\xE0\xC9\xEAy\xF9\xBA\xCE\x11\x8C\x82\x00\xAA\x00K\xA9\x0B/ ['à', 'É', 'ê', 'ù', 'º', 'Î', '\x8c', '\x82', 'ª', '©'] /.*\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\x90\x08\x003\xB1\xE5\xCF\x11\x89\xF4\x00\xA0\xC9\x03I\xCB/ ['\x90', '±', 'å', 'Ï', '\x89', 'ô', '\xa0', 'É', 'Ë'] /.*@R\xD1\x86\x1D1\xD0\x11\xA3\xA4\x00\xA0\xC9\x03H\xF6/ ['Ñ', '\x86', 'Ð', '£', '¤', '\xa0', 'É', 'ö'] /.*\x01\xCD\x87\xF4Q\xA9\xCF\x11\x8E\xE6\x00\xC0\x0C Se/ ['Í', '\x87', 'ô', '©', 'Ï', '\x8e', 'æ', 'À'] /.*\xD7\xCD\xC6\x9A/ ['×', 'Í', 'Æ', '\x9a'] /.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] 10 out of 1400 have non-ascii characters all bad chars: ['\x80', '\x82', '\x86', '\x87', '\x89', '\x8c', '\x8e', '\x90', '\x9a', '\x9d', '\xa0', '¡', '£', '¤', '©', 'ª', '±', '¸', '¹', 'º', '¿', 'À', 'Ã', 'Æ', 'É', 'Ë', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', '×', 'à', 'á', 'å', 'æ', 'ê', 'ë', 'ô', 'ö', '÷', 'ù', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/yang2010/ftp-95.pcre 0 out of 95 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-2612.pcre /^[^\n]*[\x80-\xFF].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80', 'ÿ'] /.*[\x00\x01]\x00\x09\x00.*\xff\xff\xff[\xff\xf7][\x36\x37]\x00/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', '÷'] /.*\x09\x08\x10\x00\x00[\x00\x01\x07-\xff]/sm ['ÿ'] /.*\xFC\x02[\x08\x06]\x00.{4}(\?!\x00\x00)/s ['ü'] /^\xfe\x37\x00\x23/m ['þ'] /.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/ ['ÿ', 'á', 'â', 'í', 'þ'] /^.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/sR ['ÿ', 'á', 'â', 'í', 'þ'] 7 out of 2612 have non-ascii characters all bad chars: ['\x80', 'á', 'â', 'í', '÷', 'ü', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/yang2010/ftp-98.pcre 0 out of 98 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-1503.pcre /.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\xE0\xC9\xEAy\xF9\xBA\xCE\x11\x8C\x82\x00\xAA\x00K\xA9\x0B/ ['à', 'É', 'ê', 'ù', 'º', 'Î', '\x8c', '\x82', 'ª', '©'] /.*\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\x90\x08\x003\xB1\xE5\xCF\x11\x89\xF4\x00\xA0\xC9\x03I\xCB/ ['\x90', '±', 'å', 'Ï', '\x89', 'ô', '\xa0', 'É', 'Ë'] /.*@R\xD1\x86\x1D1\xD0\x11\xA3\xA4\x00\xA0\xC9\x03H\xF6/ ['Ñ', '\x86', 'Ð', '£', '¤', '\xa0', 'É', 'ö'] /.*\x01\xCD\x87\xF4Q\xA9\xCF\x11\x8E\xE6\x00\xC0\x0C Se/ ['Í', '\x87', 'ô', '©', 'Ï', '\x8e', 'æ', 'À'] /.*\xD7\xCD\xC6\x9A/ ['×', 'Í', 'Æ', '\x9a'] /.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /(.*[cC][oO][nN][tT][eE][nN][tT]-[dD][iI][sS][pP][oO][sS][iI][tT][iI][oO][nN]\x3A.*name=\x22\xCC\xCC\xCC\xCC\xCC)|(.*name=\x22\xCC\xCC\xCC\xCC\xCC.*[cC][oO][nN][tT][eE][nN][tT]-[dD][iI][sS][pP][oO][sS][iI][tT][iI][oO][nN]\x3A)/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /(.{1}\x01.{10}\x8F)|(.{10}\x8F.{1}\x01)/ ['\x8f', '\x8f'] /(.{1}\x01.{10}\x8F)|(.{10}\x8F.{1}\x01)/ ['\x8f', '\x8f'] 13 out of 1503 have non-ascii characters all bad chars: ['\x80', '\x82', '\x86', '\x87', '\x89', '\x8c', '\x8e', '\x8f', '\x90', '\x9a', '\x9d', '\xa0', '¡', '£', '¤', '©', 'ª', '±', '¸', '¹', 'º', '¿', 'À', 'Ã', 'Æ', 'É', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', '×', 'à', 'á', 'å', 'æ', 'ê', 'ë', 'ô', 'ö', '÷', 'ù', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.pcre /^.{0,114}\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.{0,16}\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa/ ['ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª'] /^.*08\x02\x01\x00\x04\x06public\xA4\+\x06/ ['¤'] /^.*0&\x02\x01\x00\x04\x06public\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x000\x0E0\x0C\x06\x08\+\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['\xa0', 'À'] /^.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.{10}\x8F/ ['\x8f'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA2.{4}\x00\x00\x00\x02/ ['\x86', '¢'] /^.{11}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{11}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{11}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{11}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{13}.*\x00\x00\xFC/ ['ü'] /^.{14}.*\x00\x00\xFC/ ['ü'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{15}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{15}\x00\x01\x87\}.*.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x7D.*.{0}.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{15}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{15}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{199}\xFF\xF6\xFF\xF6\xFF\xFB\x08\xFF\xF6/ ['ÿ', 'ö', 'ÿ', 'ö', 'ÿ', 'û', 'ÿ', 'ö'] /^.*1\xC0\xB0\?1\xDB\xB3\xFF1\xC9\xCD\x801\xC0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*1\xC0\xB0\x02\xCD\x80\x85\xC0uL\xEBL\^\xB0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.{3}.*\x02\x01\x00\x04\x82\x01\x00/ ['\x82'] /^.*3\xC9\xB1\x10\?\xE9\x06Q<\xFAG3\xC0P\xF7\xD0P/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.{3}\xFFSMB%/ ['ÿ'] /^.{3}\xFFSMB2/ ['ÿ'] /^.{3}\xFFSMB2.*.*[dD][oO][cC][uU][mM][eE][nN][tT][sS] [aA][nN][dD] [sS][eE][tT][tT][iI][nN][gG][sS]\x5C[aA][lL][lL] [uU][sS][eE][rR][sS]\x5C[sS][tT][aA][rR][tT] [mM][eE][nN][uU]\x5C[pP][rR][oO][gG][rR][aA][mM][sS]\x5C[sS][tT][aA][rR][tT][uU][pP]\x00/ ['ÿ'] /^.{3}\xFFSMB2.*.*\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00 \x00[mM]\x00[eE]\x00[nN]\x00[uU]\x00\x5C\x00[pP]\x00[rR]\x00[oO]\x00[gG]\x00[rR]\x00[aA]\x00[mM]\x00[sS]\x00\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00[uU]\x00[pP]/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA][dD][mM][iI][nN]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA]\x00[dD]\x00[mM]\x00[iI]\x00[nN]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI][pP][cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI]\x00[pP]\x00[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMB\x25/ ['ÿ'] /^.{3}\xffSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x75/ ['ÿ'] /^.{3}\xFFSMB\xa2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C[wW][iI][nN][rR][eE][gG]\x00/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C\x00[wW]\x00[iI]\x00[nN]\x00[rR]\x00[eE]\x00[gG]\x00\x00\x00/ ['ÿ', '¢'] /^.{3}\xFF[sS][mM][bB]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5CPIPE\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C[pP][iI][pP][eE]\x5C\x00\x05\x00\x0B.{29}\x01\xD0\x8C3D\x22\xF11\xAA\xAA\x90\x008\x00\x10\x03/ ['ÿ', 'Ð', '\x8c', 'ñ', 'ª', 'ª', '\x90'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00.{2}\x05.{1}\x0B.{21}\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x00\x18/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x18\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x04\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x00\x00\x05\x00\x0B.{29}xV4\x124\x12\xCD\xAB\xEF\x00\x01\x23Eg\x89\xAB/ ['ÿ', 'Í', '«', 'ï', '\x89', '«'] /^.{3}\xFF[sS][mM][bB].{59}.*\x05.{1}\x00.{19}\x09\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{42}\x00\x00\x00\x00.{10}[^\x00]{255}/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{56}.*\x00.{255}.*\x00\x00.*.*\x00\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{2}\x05.{1}\x0b.{21}\x00/ ['ÿ'] /^.{4}\xe0\x00\x00\x00\x00\x00/ ['à'] /^.{4}\xE0\x00\x00\x00\x00\x00/ ['à'] /^.{62}`.{1}\x00\x00\x00b\x06\x83\x00\x00\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA3>0<\xA00/ ['\x83', '\x82', '£', '\xa0'] /^.{62}`.{1}\x06\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA1\x05\x23\x03\x03\x01\x07/ ['\x82', '¡'] /^.{6} \x04\x82\x01\x00/ ['\x82'] /^.{7}\xFF\xFF\xFF\xFF\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*9 \xD0\x00\x92\x01\xC2\x00R\x00U\x009 \xEC\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*C\x07\x89\[\x08\x8DK\x08\x89C\x0C\xB0\x0B\xCD\x801\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\/bin\/sh\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^.*[fF][rR][oO][mM]\x3A\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*G\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1F/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*H\x00%\x00x\x00w\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x003\x00\xC0\x00P\x00h\x00\.\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*h\]\^\xFF\xD5\xFF\xD4\xFF\xF5\x8B\xF5\x90f1/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*name=\x22\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*name=\"\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82/ ['ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82'] /^.*q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*q\xFB\{\xABq\xFB\{\xABq\xFB\{\xABq\xFB\{\xAB/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*V\x0E1\xC0\xB0\x3B\x8D~\x12\x89\xF9\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x00\x00\x03\xe7\x00\x00\x00\x00\x00\x00\x00\x65\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x05\x00\x00\x00\x00\x00\x00\x00/ ['ç'] /^.*\x00\x01\x87\x86\x00\x00\x00\x01\x00\x00\x00\x05/ ['\x87', '\x86'] /^.*\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08/ ['À', 'À', 'À', 'À'] /^.*\x011\xDB\xCD\x80\xE8\[\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xe8/ ['è'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xE8/ ['è'] /^.*\x01\x31\xDB\xCD\x80\xE8\x5B\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x9A\x8C\x66\xAF\xC0\x4A\x11\x9E\x3F\x40\x88\x12\x2C\x3A\x4A\x84\x65\x38\xB0\xB4\x08\x0B\xAF\xDB\xCE\x02\x94\x34\x5F\x22\x00*./ ['\x9a', '\x8c', '¯', 'À', '\x9e', '\x88', '\x84', '°', '´', '¯', 'Û', 'Î', '\x94'] /^.*\x01\xFE\x3C\x6C\x6A\xFF\x99\xA8\x34\x83\x38\x24\xA1\xA4\xF2\x11\x5A\xD3\x18\x8D\xBC\xC4\x3E\x40\x07\xA4\x28\xD4\x18\x48\xFE\x00*./ ['þ', 'ÿ', '\x99', '¨', '\x83', '¡', '¤', 'ò', 'Ó', '\x8d', '¼', 'Ä', '¤', 'Ô', 'þ'] /^\x03\x00\x00\x0b\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^\x03\x00\x00\x0B\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^.*\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%/ ['à', 'ø', 'à', 'ø', 'à', 'ø', 'à', 'ø'] /^\x04\x00.{22}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\x05.{1}\x0B.{29}j\x28\x199\x0C\xB1\xD0\x11\x9B\xA8\x00\xC0O\xD9\.\xF5/ ['±', 'Ð', '\x9b', '¨', 'À', 'Ù', 'õ'] /^\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['\xa0', 'À'] /^\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.*\x05\x00.{5}\xDE\x03/ ['Þ'] /^\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\+\x06\x10@\x14\xD1\x02\x19/ ['Ñ'] /^.*\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80root\x00/ ['\x85', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80\x72\x6F\x6F\x74\x00/ ['\x85', '\x80'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD&/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD\x26/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\^\x0E1\xC0\xB0\x3B\x8D~\x0E\x89\xFA\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ú', '\x89', 'ù'] /^.*\x12\xc4\xf6\x62\x55\xe6\x36\xbd\xe4\x65\xbc\x24\xbe\xb0\x50\xac\xe0\xef\x9a\x4f/ ['Ä', 'ö', 'æ', '½', 'ä', '¼', '¾', '°', '¬', 'à', 'ï', '\x9a'] /^.*\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6/ ['À', '¦', 'À', '¦', 'À', '¦', 'À', '¦'] /^.*\x2b\x06\x10\x40\x14\xd1\x02\x19/ ['Ñ'] /^.*\x30\x26\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x00\x30\x0E\x30\x0C\x06\x08\x2B\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.*\x30\x38\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA4\x2B\x06/ ['¤'] /^.*\x31\xc0\xb0\x02\xcd\x80\x85\xc0\x75\x4c\xeb\x4c\x5e\xb0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.*\x31\xc0\xb0\x3f\x31\xdb\xb3\xff\x31\xc9\xcd\x80\x31\xc0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*\x33\xC9\xB1\x10\x3F\xE9\x06\x51\x3C\xFA\x47\x33\xC0\x50\xF7\xD0\x50/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.*\x39\x20\xd0\x00\x92\x01\xc2\x00\x52\x00\x55\x00\x39\x20\xec\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*\x40\x8A\xFF\xC8\x40\x82\xFF\xD8\x3B\x36\xFE\x03\x3B\x76\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x43\x07\x89\x5B\x08\x8D\x4B\x08\x89\x43\x0C\xB0\x0B\xCD\x80\x31\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\x2F\x62\x69\x6E\x2F\x73\x68\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^\x45\x2e\xe5\x01\x80\xb0\x0a\xca\xdb\x16\xa1\x8f\xc6\xcd\x97\x60\x92\x44\x93\x16/ ['å', '\x80', '°', 'Ê', 'Û', '¡', '\x8f', 'Æ', 'Í', '\x97', '\x92', '\x93'] /^.*\x48\x00\x25\x00\x78\x00\x77\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x33\x00\xc0\x00\x50\x00\x68\x00\x2e\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*\x4b\x56\xde\x0c\x47\xbf\x12\x9f\xc7\x24\x40\x64\x5c\xfd\xa8\x2b\xaf\x3f\x09\xc7/ ['Þ', '¿', '\x9f', 'Ç', 'ý', '¨', '¯', 'Ç'] /^.*\x56\x0e\x31\xc0\xb0\x3b\x8d\x7e\x12\x89\xf9\x89\xf9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x5C\x00\x5C\x00\*\x00S\x00M\x00B\x00S\x00E\x00R\x00V\x00E\x00R\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5C\x00\x5C\x00\x2A\x00\x53\x00\x4D\x00\x42\x00\x53\x00\x45\x00\x52\x00\x56\x00\x45\x00\x52\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5e\xb0\x02\x89\x06\xfe\xc8\x89\x46\x04\xb0\x06\x89\x46/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\x68\x5d\x5e\xff\xd5\xff\xd4\xff\xf5\x8b\xf5\x90\x66\x31/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*\x7c\x83\x3b\x3f\x8a\x80\x59\xbf\x45\xbd\x5f\xf2\xa3\xc9\x36\x85\xa9\xd1\x15\xc3/ ['\x83', '\x8a', '\x80', '¿', '½', 'ò', '£', 'É', '\x85', '©', 'Ñ', 'Ã'] /^.*\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\?\x00\x01\x02/ ['\x80'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\x3F\x00\x01\x02/ ['\x80'] /^\x80\x02.{4}.*\x02/ ['\x80'] /^.*\x80\x07\x00\x00\x07\x00\x00\x04\x00\x00\x00\x00\x00/ ['\x80'] /^.*\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x81', '\x80'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xf1\x03\x01\x04\x9b\x81\xf1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x82\x10 \x17\x91\xD0 \x08/ ['\x82', '\x91', 'Ð'] /^^\x85\x13<\x9E\xA2/ ['\x85', '\x9e', '¢'] /^.*\x85\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x85', '\x80'] /^.*\x89\xf7\x29\xc7\x89\xf3\x89\xf9\x89\xf2\xac\x3c\xfe/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*\x89\xF7\x29\xC7\x89\xF3\x89\xF9\x89\xF2\xAC<\xFE/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*@\x8A\xFF\xC8@\x82\xFF\xD8\x3B6\xFE\x03\x3Bv\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x1A\xC0\x0F\x90\x02 \x08\x92\x02 \x0F\xD0\x23\xBF\xF8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x1a\xc0\x0f\x90\x02\x20\x08\x92\x02\x20\x0f\xd0\x23\xbf\xf8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x90\x90\xE8\xC0\xFF\xFF\xFF\/bin\/sh/ ['\x90', '\x90', '\x90', 'è', 'À', 'ÿ', 'ÿ', 'ÿ'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90\x25\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90%\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13/ ['¦', 'À', '¦', 'À', '¦', 'À', '¦', 'À'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01 \x02a/ ['«', 'Í', '\x80'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01\x20\x20\x20\x20\x02\x61/ ['«', 'Í', '\x80'] /^.*\^\xB0\x02\x89\x06\xFE\xC8\x89F\x04\xB0\x06\x89F/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\xB0\xB5\xCD\x80/ ['°', 'µ', 'Í', '\x80'] /^.*\xb4\x20\xb4\x21\x8b\xcc\x83\xe9\x04\x8b\x19\x33\xc9\x66\xb9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xB4\xB4/ ['´', '´'] /^.*\xB4 \xB4!\x8B\xCC\x83\xE9\x04\x8B\x193\xC9f\xB9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xba\x49\xfe\xff\xff\xf7\xd2\xb9\xbf\xff\xff\xff\xf7\xd1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^.*\xC0\x0C\x00\x01\x00\x01\x00\x00\x00<\x00\x04/ ['À'] /^.*\xc0\x0c\x00\x01\x00\x01\x00\x00\x00\x3c\x00\x04/ ['À'] /^.*\xC0\x0C\x00\x0C\x00\x01\x00\x00\x00<\x00\x0F/ ['À'] /^.*\xc0\x0c\x00\x0c\x00\x01\x00\x00\x00\x3c\x00\x0f/ ['À'] /^.*\xC0\x50\x52\x89\xE1\x50\x51\x52\x50\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^\xc9\xe9\x36\xa1\xce\xae\x10\x3c\x32\x81\xac\x9b\x01\x81\x5a\x68\x01\x91\x82\xa4/ ['É', 'é', '¡', 'Î', '®', '\x81', '¬', '\x9b', '\x81', '\x91', '\x82', '¤'] /^.*\xCD\x80\xE8\xD7\xFF\xFF\xFF\/bin\/sh/ ['Í', '\x80', 'è', '×', 'ÿ', 'ÿ', 'ÿ'] /^.*\xd1\xe4\x22\x07\x57\xd3\xa9\x9a\x5a\xd5\xcc\xc7\x9d\xa1\xd5\xc5\xa6\xf1\x6d\x57/ ['Ñ', 'ä', 'Ó', '©', '\x9a', 'Õ', 'Ì', 'Ç', '\x9d', '¡', 'Õ', 'Å', '¦', 'ñ'] /^.*\xd2\x9b\xec\xe0\x8c\x09\x28\xcb\x05\x60\x1b\xc5\x59\x34\xab\xbd\x56\xd6\x78\xaa/ ['Ò', '\x9b', 'ì', 'à', '\x8c', 'Ë', 'Å', '«', '½', 'Ö', 'ª'] /^.*\xd8\x40\xcd\x80\xe8\xd9\xff\xff\xff\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xD8@\xCD\x80\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xdd\xbd\x4c\x7b\x35\x9a\x89\x88\xf0\x0d\xa8\xf1\x44\x67\x7b\xcd\x18\xf0\xe6\x70/ ['Ý', '½', '\x9a', '\x89', '\x88', 'ð', '¨', 'ñ', 'Í', 'ð', 'æ'] /^\xe1\xac\x20\x5a\xda\x5a\xf7\x0c\x17\x24\x8e\xc2\x0e\xa0\x0b\xee\x7a\x77\xe0\x64/ ['á', '¬', 'Ú', '÷', '\x8e', 'Â', '\xa0', 'î', 'à'] /^.*\xe7\xa7\x74\xb8\xb9\xfe\x9a\x6e\x6c\xe1\xd5\xde\x5f\x5c\xd5\x9d\x49\x69\x9a\xba/ ['ç', '§', '¸', '¹', 'þ', '\x9a', 'á', 'Õ', 'Þ', 'Õ', '\x9d', '\x9a', 'º'] /^.*\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xEB@\^1\xC0@\x89F\x04\x89\xC3@\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xEBE\xEB \[\xFC3\xC9\xB1\x82\x8B\xF3\x80\+/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xEBK\[S2\xE4\x83\xC3\x0BK\x88\x23\xB8Pw/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xEBn\^\xC6\x06\x9A1\xC9\x89N\x01\xC6F\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xEBV\^VVV1\xD2\x88V\x0B\x88V\x1E/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xEB\x02\xEB\x02\xEB\x02/ ['ë', 'ë', 'ë'] /^.*\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C/ ['ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë'] /^.*\xEB\x23\^3\xC0\x88F\xFA\x89F\xF5\x896/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x23\x5e\x33\xc0\x88\x46\xfa\x89\x46\xf5\x89\x36/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x2c\x5b\x89\xd9\x80\xc1\x06\x39\xd9\x7c\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xeb\x2f\x5f\xeb\x4a\x5e\x89\xfb\x89\x3e\x89\xf2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xeb\x40\x5E\x31\xc0\x40\x89\x46\x04\x89\xc3\x40\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xeb\x45\xeb\x20\x5b\xfc\x33\xc9\xb1\x82\x8b\xf3\x80\x2b/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xeb\x4b\x5b\x53\x32\xe4\x83\xc3\x0b\x4b\x88\x23\xb8\x50\x77/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xeb\x56\x5E\x56\x56\x56\x31\xd2\x88\x56\x0b\x88\x56\x1e/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xeb\x5f\x9a\xff\xff\xff\xff\x07\xff\xc3\x5e\x31\xc0\x89\x46\x9d/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xeb\x6e\x5e\xc6\x06\x9a\x31\xc9\x89\x4e\x01\xc6\x46\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xeb\x7f\x5d\x55\xfe\x4d\x98\xfe\x4d\x9b/ ['ë', 'þ', '\x98', 'þ', '\x9b'] /^.*\xEB,\[\x89\xD9\x80\xC1\x069\xD9\x7C\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xEB\/_\xEBJ\^\x89\xFB\x89>\x89\xF2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xff\xf3\xff\xf3\xff\xf3\xff\xf3\xff\xf3/ ['ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó'] /^.*\xff\xf4\xff\xfd\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xF4\xFF\xFD\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xFD\x18\xFF\xFD\x1F\xFF\xFD\x23\xFF\xFD\x27\xFF\xFD\x24/ ['ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý'] /^.*\xFF\xFFKADM0\.0A\x00\x00\xFB\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xff\xff\x4b\x41\x44\x4d\x30\x2e\x30\x41\x00\x00\xfb\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xFF\xFF\xFF\/BIN\/SH\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\x2f\x42\x49\x4e\x2f\x53\x48\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xFF\xFF\xFF\xFF\xFF\xFF/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] 333 out of 1400 have non-ascii characters all bad chars: ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '®', '¯', '°', '±', '³', '´', 'µ', '¸', '¹', 'º', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ý', 'Þ', 'à', 'á', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ë', 'ì', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/L7/all.pcre /^(\x45\x5f\xd0\xd5|\x45\x5f.*0.60(6|8)W)/ ['Ð', 'Õ'] /^\x01\x11\x10\|\xf8\x02\x10\x40\x06/ ['ø'] /^(\x11\x20\x01...?\x11|\xfe\xfd.?.?.?.?.?.?(\x14\x01\x06|\xff\xff\xff))|[\]\x01].?battlefield2/ ['þ', 'ý', 'ÿ', 'ÿ', 'ÿ'] /^(\x11\x20\x01\x90\x50\x64\x10|\xfe\xfd.?.?.?\x18|[\x01\\].?battlefield2)/ ['\x90', 'þ', 'ý'] /^\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff..?\x01[\x03\x04]/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\x01\xf4\x01\xf4/ ['ô', 'ô'] /\x32\x26\x85\x92\x58/ ['\x85', '\x92'] /^\xff\xff\xff\xff.*cstrikeCounter-Strike/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xff\xff\xff\xff.*dodDay of Defeat/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^[\x01\x02][\x01- ]\x06.*c\x82sc/ ['\x82'] /^.?.?.?.?[\x01\x02].?.?.?.?.?.?[\x01-?][a-z0-9][\x01-?a-z]*[\x02-\x06][a-z][a-z][fglmoprstuvz]?[aeop]?(um)?[\x01-\x10\x1c][\x01\x03\x04\xFF]/ ['ÿ'] /^\xff\xffchallenge/ ['ÿ', 'ÿ'] /^[\xc5\xd4\xe3-\xe5].?.?.?.?([\x01\x02\x05\x14\x15\x16\x18\x19\x1a\x1b\x1c\x20\x21\x32\x33\x34\x35\x36\x38\x40\x41\x42\x43\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58[\x60\x81\x82\x90\x91\x93\x96\x97\x98\x99\x9a\x9b\x9c\x9e\xa0\xa1\xa2\xa3\xa4]|\x59................?[ -~]|\x96....$)/ ['Å', 'Ô', 'ã', 'å', '\x81', '\x82', '\x90', '\x91', '\x93', '\x96', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9e', '\xa0', '¡', '¢', '£', '¤', '\x96'] /\x4d\x5a(\x90\x03|\x50\x02)\x04/ ['\x90'] /^\xff\xff\xff\xff.*hl2mpDeathmatch/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^(post[\x09-\x0d -~]*<PasswordHash>................................<\/PasswordHash><ClientVer>|\x34\x80?\x0d?\xfc\xff\x04|get[\x09-\x0d -~]*Host: imsh\.download-prod\.musicnet\.com|\x02[\x01\x02]\x83.*\x02[\x01\x02]\x83)/ ['\x80', 'ü', 'ÿ', '\x83', '\x83'] /\xff\xd8/ ['ÿ', 'Ø'] /^\xff\xff\xff\xffgetstatus\x0a/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /\x81.?.?.[A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P]/ ['\x81'] /GET (\/scripts\/root\.exe\?\/c\+dir|\/MSADC\/root\.exe\?\/c\+dir|\/c\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/d\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/_vti_bin\/\.\.%5c\.\.\/\.\.%5c\.\.\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/_mem_bin\/\.\.%5c\.\.\/\.\.%5c\.\.\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/msadc\/\.\.%5c\.\.\/\.\.%5c\.\.\/\.\.%5c\/\.\.\xc1\x1c\.\.\/\.\.\xc1\x1c\.\.\/\.\.\xc1\x1c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc1\x1c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc0\/\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc0\xaf\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc1\x9c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%35c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%35c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%2f\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir)/ ['Á', 'Á', 'Á', 'Á', 'À', 'À', '¯', 'Á', '\x9c'] /^([\x13\x1b\x23\xd3\xdb\xe3]|[\x14\x1c$].......?.?.?.?.?.?.?.?.?[\xc6-\xff])/ ['Ó', 'Û', 'ã', 'Æ', 'ÿ'] /\x89PNG\x0d\x0a\x1a\x0a/ ['\x89'] /^\x80\x94\x0a\x01....\x1f\x9e/ ['\x80', '\x94', '\x9e'] /\x01...\xd3.+\x0c.$/ ['Ó'] /^\xff\xff\xff\xffget(info|challenge)/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\x80\x0c\x01quake\x03/ ['\x80'] /\xed\xab\xee\xdb.?.?.?.?[1-7]/ ['í', '«', 'î', 'Û'] /^\x80[\x01-"`-\x7f\x80-\xa2\xe0-\xff]?..........*\x80/ ['\x80', '\x80', '¢', 'à', 'ÿ', '\x80'] # /^(\x01.?.?.?.?.?.?.?.?\x01|\x02.?.?.?.?.?.?.?.?\x02|\x03.?.?.?.?.?.?.?.?\x03|\x04.?.?.?.?.?.?.?.?\x04|\x05.?.?.?.?.?.?.?.?\x05|\x06.?.?.?.?.?.?.?.?\x06|\x07.?.?.?.?.?.?.?.?\x07|\x08.?.?.?.?.?.?.?.?\x08|\x09.?.?.?.?.?.?.?.?\x09|\x0a.?.?.?.?.?.?.?.?\x0a|\x0b.?.?.?.?.?.?.?.?\x0b|\x0c.?.?.?.?.?.?.?.?\x0c|\x0d.?.?.?.?.?.?.?.?\x0d|\x0e.?.?.?.?.?.?.?.?\x0e|\x0f.?.?.?.?.?.?.?.?\x0f|\x10.?.?.?.?.?.?.?.?\x10|\x11.?.?.?.?.?.?.?.?\x11|\x12.?.?.?.?.?.?.?.?\x12|\x13.?.?.?.?.?.?.?.?\x13|\x14.?.?.?.?.?.?.?.?\x14|\x15.?.?.?.?.?.?.?.?\x15|\x16.?.?.?.?.?.?.?.?\x16|\x17.?.?.?.?.?.?.?.?\x17|\x18.?.?.?.?.?.?.?.?\x18|\x19.?.?.?.?.?.?.?.?\x19|\x1a.?.?.?.?.?.?.?.?\x1a|\x1b.?.?.?.?.?.?.?.?\x1b|\x1c.?.?.?.?.?.?.?.?\x1c|\x1d.?.?.?.?.?.?.?.?\x1d|\x1e.?.?.?.?.?.?.?.?\x1e|\x1f.?.?.?.?.?.?.?.?\x1f|\x20.?.?.?.?.?.?.?.?\x20|\x21.?.?.?.?.?.?.?.?\x21|\x22.?.?.?.?.?.?.?.?\x22|\x23.?.?.?.?.?.?.?.?\x23|\$.?.?.?.?.?.?.?.?\$|\x25.?.?.?.?.?.?.?.?\x25|\x26.?.?.?.?.?.?.?.?\x26|\x27.?.?.?.?.?.?.?.?\x27|\(.?.?.?.?.?.?.?.?\(|\).?.?.?.?.?.?.?.?\)|\*.?.?.?.?.?.?.?.?\*|\+.?.?.?.?.?.?.?.?\+|\x2c.?.?.?.?.?.?.?.?\x2c|\x2d.?.?.?.?.?.?.?.?\x2d|\..?.?.?.?.?.?.?.?\.|\x2f.?.?.?.?.?.?.?.?\x2f|\x30.?.?.?.?.?.?.?.?\x30|\x31.?.?.?.?.?.?.?.?\x31|\x32.?.?.?.?.?.?.?.?\x32|\x33.?.?.?.?.?.?.?.?\x33|\x34.?.?.?.?.?.?.?.?\x34|\x35.?.?.?.?.?.?.?.?\x35|\x36.?.?.?.?.?.?.?.?\x36|\x37.?.?.?.?.?.?.?.?\x37|\x38.?.?.?.?.?.?.?.?\x38|\x39.?.?.?.?.?.?.?.?\x39|\x3a.?.?.?.?.?.?.?.?\x3a|\x3b.?.?.?.?.?.?.?.?\x3b|\x3c.?.?.?.?.?.?.?.?\x3c|\x3d.?.?.?.?.?.?.?.?\x3d|\x3e.?.?.?.?.?.?.?.?\x3e|\?.?.?.?.?.?.?.?.?\?|\x40.?.?.?.?.?.?.?.?\x40|\x41.?.?.?.?.?.?.?.?\x41|\x42.?.?.?.?.?.?.?.?\x42|\x43.?.?.?.?.?.?.?.?\x43|\x44.?.?.?.?.?.?.?.?\x44|\x45.?.?.?.?.?.?.?.?\x45|\x46.?.?.?.?.?.?.?.?\x46|\x47.?.?.?.?.?.?.?.?\x47|\x48.?.?.?.?.?.?.?.?\x48|\x49.?.?.?.?.?.?.?.?\x49|\x4a.?.?.?.?.?.?.?.?\x4a|\x4b.?.?.?.?.?.?.?.?\x4b|\x4c.?.?.?.?.?.?.?.?\x4c|\x4d.?.?.?.?.?.?.?.?\x4d|\x4e.?.?.?.?.?.?.?.?\x4e|\x4f.?.?.?.?.?.?.?.?\x4f|\x50.?.?.?.?.?.?.?.?\x50|\x51.?.?.?.?.?.?.?.?\x51|\x52.?.?.?.?.?.?.?.?\x52|\x53.?.?.?.?.?.?.?.?\x53|\x54.?.?.?.?.?.?.?.?\x54|\x55.?.?.?.?.?.?.?.?\x55|\x56.?.?.?.?.?.?.?.?\x56|\x57.?.?.?.?.?.?.?.?\x57|\x58.?.?.?.?.?.?.?.?\x58|\x59.?.?.?.?.?.?.?.?\x59|\x5a.?.?.?.?.?.?.?.?\x5a|\[.?.?.?.?.?.?.?.?\[|\\.?.?.?.?.?.?.?.?\\|\].?.?.?.?.?.?.?.?\]|\^.?.?.?.?.?.?.?.?\^|\x5f.?.?.?.?.?.?.?.?\x5f|\x60.?.?.?.?.?.?.?.?\x60|\x61.?.?.?.?.?.?.?.?\x61|\x62.?.?.?.?.?.?.?.?\x62|\x63.?.?.?.?.?.?.?.?\x63|\x64.?.?.?.?.?.?.?.?\x64|\x65.?.?.?.?.?.?.?.?\x65|\x66.?.?.?.?.?.?.?.?\x66|\x67.?.?.?.?.?.?.?.?\x67|\x68.?.?.?.?.?.?.?.?\x68|\x69.?.?.?.?.?.?.?.?\x69|\x6a.?.?.?.?.?.?.?.?\x6a|\x6b.?.?.?.?.?.?.?.?\x6b|\x6c.?.?.?.?.?.?.?.?\x6c|\x6d.?.?.?.?.?.?.?.?\x6d|\x6e.?.?.?.?.?.?.?.?\x6e|\x6f.?.?.?.?.?.?.?.?\x6f|\x70.?.?.?.?.?.?.?.?\x70|\x71.?.?.?.?.?.?.?.?\x71|\x72.?.?.?.?.?.?.?.?\x72|\x73.?.?.?.?.?.?.?.?\x73|\x74.?.?.?.?.?.?.?.?\x74|\x75.?.?.?.?.?.?.?.?\x75|\x76.?.?.?.?.?.?.?.?\x76|\x77.?.?.?.?.?.?.?.?\x77|\x78.?.?.?.?.?.?.?.?\x78|\x79.?.?.?.?.?.?.?.?\x79|\x7a.?.?.?.?.?.?.?.?\x7a|\{.?.?.?.?.?.?.?.?\{|\|.?.?.?.?.?.?.?.?\||\}.?.?.?.?.?.?.?.?\}|\x7e.?.?.?.?.?.?.?.?\x7e|\x7f.?.?.?.?.?.?.?.?\x7f|\x80.?.?.?.?.?.?.?.?\x80|\x81.?.?.?.?.?.?.?.?\x81|\x82.?.?.?.?.?.?.?.?\x82|\x83.?.?.?.?.?.?.?.?\x83|\x84.?.?.?.?.?.?.?.?\x84|\x85.?.?.?.?.?.?.?.?\x85|\x86.?.?.?.?.?.?.?.?\x86|\x87.?.?.?.?.?.?.?.?\x87|\x88.?.?.?.?.?.?.?.?\x88|\x89.?.?.?.?.?.?.?.?\x89|\x8a.?.?.?.?.?.?.?.?\x8a|\x8b.?.?.?.?.?.?.?.?\x8b|\x8c.?.?.?.?.?.?.?.?\x8c|\x8d.?.?.?.?.?.?.?.?\x8d|\x8e.?.?.?.?.?.?.?.?\x8e|\x8f.?.?.?.?.?.?.?.?\x8f|\x90.?.?.?.?.?.?.?.?\x90|\x91.?.?.?.?.?.?.?.?\x91|\x92.?.?.?.?.?.?.?.?\x92|\x93.?.?.?.?.?.?.?.?\x93|\x94.?.?.?.?.?.?.?.?\x94|\x95.?.?.?.?.?.?.?.?\x95|\x96.?.?.?.?.?.?.?.?\x96|\x97.?.?.?.?.?.?.?.?\x97|\x98.?.?.?.?.?.?.?.?\x98|\x99.?.?.?.?.?.?.?.?\x99|\x9a.?.?.?.?.?.?.?.?\x9a|\x9b.?.?.?.?.?.?.?.?\x9b|\x9c.?.?.?.?.?.?.?.?\x9c|\x9d.?.?.?.?.?.?.?.?\x9d|\x9e.?.?.?.?.?.?.?.?\x9e|\x9f.?.?.?.?.?.?.?.?\x9f|\xa0.?.?.?.?.?.?.?.?\xa0|\xa1.?.?.?.?.?.?.?.?\xa1|\xa2.?.?.?.?.?.?.?.?\xa2|\xa3.?.?.?.?.?.?.?.?\xa3|\xa4.?.?.?.?.?.?.?.?\xa4|\xa5.?.?.?.?.?.?.?.?\xa5|\xa6.?.?.?.?.?.?.?.?\xa6|\xa7.?.?.?.?.?.?.?.?\xa7|\xa8.?.?.?.?.?.?.?.?\xa8|\xa9.?.?.?.?.?.?.?.?\xa9|\xaa.?.?.?.?.?.?.?.?\xaa|\xab.?.?.?.?.?.?.?.?\xab|\xac.?.?.?.?.?.?.?.?\xac|\xad.?.?.?.?.?.?.?.?\xad|\xae.?.?.?.?.?.?.?.?\xae|\xaf.?.?.?.?.?.?.?.?\xaf|\xb0.?.?.?.?.?.?.?.?\xb0|\xb1.?.?.?.?.?.?.?.?\xb1|\xb2.?.?.?.?.?.?.?.?\xb2|\xb3.?.?.?.?.?.?.?.?\xb3|\xb4.?.?.?.?.?.?.?.?\xb4|\xb5.?.?.?.?.?.?.?.?\xb5|\xb6.?.?.?.?.?.?.?.?\xb6|\xb7.?.?.?.?.?.?.?.?\xb7|\xb8.?.?.?.?.?.?.?.?\xb8|\xb9.?.?.?.?.?.?.?.?\xb9|\xba.?.?.?.?.?.?.?.?\xba|\xbb.?.?.?.?.?.?.?.?\xbb|\xbc.?.?.?.?.?.?.?.?\xbc|\xbd.?.?.?.?.?.?.?.?\xbd|\xbe.?.?.?.?.?.?.?.?\xbe|\xbf.?.?.?.?.?.?.?.?\xbf|\xc0.?.?.?.?.?.?.?.?\xc0|\xc1.?.?.?.?.?.?.?.?\xc1|\xc2.?.?.?.?.?.?.?.?\xc2|\xc3.?.?.?.?.?.?.?.?\xc3|\xc4.?.?.?.?.?.?.?.?\xc4|\xc5.?.?.?.?.?.?.?.?\xc5|\xc6.?.?.?.?.?.?.?.?\xc6|\xc7.?.?.?.?.?.?.?.?\xc7|\xc8.?.?.?.?.?.?.?.?\xc8|\xc9.?.?.?.?.?.?.?.?\xc9|\xca.?.?.?.?.?.?.?.?\xca|\xcb.?.?.?.?.?.?.?.?\xcb|\xcc.?.?.?.?.?.?.?.?\xcc|\xcd.?.?.?.?.?.?.?.?\xcd|\xce.?.?.?.?.?.?.?.?\xce|\xcf.?.?.?.?.?.?.?.?\xcf|\xd0.?.?.?.?.?.?.?.?\xd0|\xd1.?.?.?.?.?.?.?.?\xd1|\xd2.?.?.?.?.?.?.?.?\xd2|\xd3.?.?.?.?.?.?.?.?\xd3|\xd4.?.?.?.?.?.?.?.?\xd4|\xd5.?.?.?.?.?.?.?.?\xd5|\xd6.?.?.?.?.?.?.?.?\xd6|\xd7.?.?.?.?.?.?.?.?\xd7|\xd8.?.?.?.?.?.?.?.?\xd8|\xd9.?.?.?.?.?.?.?.?\xd9|\xda.?.?.?.?.?.?.?.?\xda|\xdb.?.?.?.?.?.?.?.?\xdb|\xdc.?.?.?.?.?.?.?.?\xdc|\xdd.?.?.?.?.?.?.?.?\xdd|\xde.?.?.?.?.?.?.?.?\xde|\xdf.?.?.?.?.?.?.?.?\xdf|\xe0.?.?.?.?.?.?.?.?\xe0|\xe1.?.?.?.?.?.?.?.?\xe1|\xe2.?.?.?.?.?.?.?.?\xe2|\xe3.?.?.?.?.?.?.?.?\xe3|\xe4.?.?.?.?.?.?.?.?\xe4|\xe5.?.?.?.?.?.?.?.?\xe5|\xe6.?.?.?.?.?.?.?.?\xe6|\xe7.?.?.?.?.?.?.?.?\xe7|\xe8.?.?.?.?.?.?.?.?\xe8|\xe9.?.?.?.?.?.?.?.?\xe9|\xea.?.?.?.?.?.?.?.?\xea|\xeb.?.?.?.?.?.?.?.?\xeb|\xec.?.?.?.?.?.?.?.?\xec|\xed.?.?.?.?.?.?.?.?\xed|\xee.?.?.?.?.?.?.?.?\xee|\xef.?.?.?.?.?.?.?.?\xef|\xf0.?.?.?.?.?.?.?.?\xf0|\xf1.?.?.?.?.?.?.?.?\xf1|\xf2.?.?.?.?.?.?.?.?\xf2|\xf3.?.?.?.?.?.?.?.?\xf3|\xf4.?.?.?.?.?.?.?.?\xf4|\xf5.?.?.?.?.?.?.?.?\xf5|\xf6.?.?.?.?.?.?.?.?\xf6|\xf7.?.?.?.?.?.?.?.?\xf7|\xf8.?.?.?.?.?.?.?.?\xf8|\xf9.?.?.?.?.?.?.?.?\xf9|\xfa.?.?.?.?.?.?.?.?\xfa|\xfb.?.?.?.?.?.?.?.?\xfb|\xfc.?.?.?.?.?.?.?.?\xfc|\xfd.?.?.?.?.?.?.?.?\xfd|\xfe.?.?.?.?.?.?.?.?\xfe|\xff.?.?.?.?.?.?.?.?\xff)/ ['\x80', '\x80', '\x81', '\x81', '\x82', '\x82', '\x83', '\x83', '\x84', '\x84', '\x85', '\x85', '\x86', '\x86', '\x87', '\x87', '\x88', '\x88', '\x89', '\x89', '\x8a', '\x8a', '\x8b', '\x8b', '\x8c', '\x8c', '\x8d', '\x8d', '\x8e', '\x8e', '\x8f', '\x8f', '\x90', '\x90', '\x91', '\x91', '\x92', '\x92', '\x93', '\x93', '\x94', '\x94', '\x95', '\x95', '\x96', '\x96', '\x97', '\x97', '\x98', '\x98', '\x99', '\x99', '\x9a', '\x9a', '\x9b', '\x9b', '\x9c', '\x9c', '\x9d', '\x9d', '\x9e', '\x9e', '\x9f', '\x9f', '\xa0', '\xa0', '¡', '¡', '¢', '¢', '£', '£', '¤', '¤', '¥', '¥', '¦', '¦', '§', '§', '¨', '¨', '©', '©', 'ª', 'ª', '«', '«', '¬', '¬', '\xad', '\xad', '®', '®', '¯', '¯', '°', '°', '±', '±', '²', '²', '³', '³', '´', '´', 'µ', 'µ', '¶', '¶', '·', '·', '¸', '¸', '¹', '¹', 'º', 'º', '»', '»', '¼', '¼', '½', '½', '¾', '¾', '¿', '¿', 'À', 'À', 'Á', 'Á', 'Â', 'Â', 'Ã', 'Ã', 'Ä', 'Ä', 'Å', 'Å', 'Æ', 'Æ', 'Ç', 'Ç', 'È', 'È', 'É', 'É', 'Ê', 'Ê', 'Ë', 'Ë', 'Ì', 'Ì', 'Í', 'Í', 'Î', 'Î', 'Ï', 'Ï', 'Ð', 'Ð', 'Ñ', 'Ñ', 'Ò', 'Ò', 'Ó', 'Ó', 'Ô', 'Ô', 'Õ', 'Õ', 'Ö', 'Ö', '×', '×', 'Ø', 'Ø', 'Ù', 'Ù', 'Ú', 'Ú', 'Û', 'Û', 'Ü', 'Ü', 'Ý', 'Ý', 'Þ', 'Þ', 'ß', 'ß', 'à', 'à', 'á', 'á', 'â', 'â', 'ã', 'ã', 'ä', 'ä', 'å', 'å', 'æ', 'æ', 'ç', 'ç', 'è', 'è', 'é', 'é', 'ê', 'ê', 'ë', 'ë', 'ì', 'ì', 'í', 'í', 'î', 'î', 'ï', 'ï', 'ð', 'ð', 'ñ', 'ñ', 'ò', 'ò', 'ó', 'ó', 'ô', 'ô', 'õ', 'õ', 'ö', 'ö', '÷', '÷', 'ø', 'ø', 'ù', 'ù', 'ú', 'ú', 'û', 'û', 'ü', 'ü', 'ý', 'ý', 'þ', 'þ', 'ÿ', 'ÿ'] /\xffsmb[\x72\x25]/ ['ÿ'] /^\x02\x01\x04.+[\xa0-\xa3]\x02[\x01-\x04].?.?.?.?\x02\x01.?\x02\x01.?\x30/ ['\xa0', '£'] /^\x02\x01\x04.+([\xa0-\xa3]\x02[\x01-\x04].?.?.?.?\x02\x01.?\x02\x01.?\x30|\xa4\x06.+\x40\x04.?.?.?.?\x02\x01.?\x02\x01.?\x43)/ ['\xa0', '£', '¤'] /^\x02\x01\x04.+\xa4\x06.+\x40\x04.?.?.?.?\x02\x01.?\x02\x01.?\x43/ ['¤'] /^\xff\xff\xff\xff.....*tfTeam Fortress/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xf4\xbe\x03.*teamspeak/ ['ô', '¾'] /^\xff[\xfb-\xfe].\xff[\xfb-\xfe].\xff[\xfb-\xfe]/ ['ÿ', 'û', 'þ', 'ÿ', 'û', 'þ', 'ÿ', 'û', 'þ'] /\x03\x9a\x89\x22\x31\x31\x31\.\x30\x30\x20\x42\x65\x74\x61\x20|\xe2\x3c\x69\x1e\x1c\xe9/ ['\x9a', '\x89', 'â', 'é'] /^(GET \/docookie\.php\?uname=|\xfd\xfd\xfd\xfd\x30\x30\x30\x30\x30)/ ['ý', 'ý', 'ý', 'ý'] /^..?v\$\xcf/ ['Ï'] /^\x06\xec\x01/ ['ì'] /^\x58\x80........\xf3|^\x06\x58\x4e/ ['\x80', 'ó'] /^(ymsg|ypns|yhoo).?.?.?.?.?.?.?[lwt].*\xc0\x80/ ['À', '\x80'] /^\x1b\xd7\x3b\x48[\x01\x02]\x01?\x01/ ['×'] 43 out of 143 have non-ascii characters all bad chars: ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '\xad', '®', '¯', '°', '±', '²', '³', '´', 'µ', '¶', '·', '¸', '¹', 'º', '»', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'Þ', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/detection-100g.pcre /^.?.?....\\x00.\\x00.\\x00.\\x00.([\x01-\x3F][\x20-\x7f]+)*\\x00\\x00.\\x00[\x01\x03\x04\xFE\xFF]/ ['þ', 'ÿ'] 1 out of 6 have non-ascii characters all bad chars: ['þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/backdoor-subset-4.pcre /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] 1 out of 54 have non-ascii characters all bad chars: ['À'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/backdoor-subset-x5.pcre /^001\xACOptix\s+Pro\s+v\d+\x2E\d+\s+Connected\s+Successfully\x21/smi ['¬'] /^666\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] 3 out of 52 have non-ascii characters all bad chars: ['¬', 'À', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/classification-100g.pcre /^.?.?....\\x00.\\x00.\\x00.\\x00.([\x01-\x3F][\x20-\x7f]+)*\\x00\\x00.\\x00[\x01\x03\x04\xFE\xFF]/ ['þ', 'ÿ'] 1 out of 6 have non-ascii characters all bad chars: ['þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/smtp-malicious.pcre 0 out of 7 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-attacks.pcre 0 out of 157 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-attacks-subset-2.pcre 0 out of 8 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-attacks-subset-1.pcre 0 out of 8 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-malicious.pcre /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*DROP TABLE/ ['ÿ'] /^HTTP\/[01]\.[019] 404[\x00-\xff]*(admin|wordpress)/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*admin:admin/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*admin:password/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*YWRtaW46cGFzc3dvcmQ/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*YWRtaW46YWRtaW4/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*\/bin\/sh/ ['ÿ'] 7 out of 7 have non-ascii characters all bad chars: ['ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/shellcode.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/chat.rules.pcre 0 out of 14 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/policy.rules.pcre 0 out of 10 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/dos.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/voip.rules.pcre /^Authorization\x3A[^\r\n]+?response=[\x00-t\x0B\x0C\x0E-t]*[\x80-t]/smi ['\x80'] /^Call-ID\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Contact\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Content-Type[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^CSeq\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^From\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /Remote-Party-ID\x3A\scsip\x3A[^@]+@\d{1,3}\x2E\d{1,3}\x2E\xD1/smi ['Ñ'] /^To\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Via\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] 9 out of 38 have non-ascii characters all bad chars: ['\x80', 'Ñ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-cgi.rules.pcre 0 out of 10 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/netbios.rules.pcre /^\x00.{3}\xFFSMB(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f).{28}(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f)/ ['ÿ', '¢', '¢'] /^(\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] /^(\x75|\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] 3 out of 16 have non-ascii characters all bad chars: ['¢', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-activex.rules.pcre 0 out of 474 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-misc.rules.pcre 0 out of 58 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/specific-threats.rules.pcre /\x99{40}\xeb\x12\x01\x99{4}\x18A{5}.{4}A{6}/sm ['\x99', 'ë', '\x99'] 1 out of 4 have non-ascii characters all bad chars: ['\x99', 'ë'] /home/notme/nfa-bench/benchmarks/regexps/Snort/finger.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/pop3.rules.pcre 0 out of 16 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/smtp.rules.pcre 0 out of 47 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/mysql.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-php.rules.pcre 0 out of 16 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/rpc.rules.pcre /^[\x00\x80]\x00\x00\x00/s ['\x80'] 1 out of 1 have non-ascii characters all bad chars: ['\x80'] /home/notme/nfa-bench/benchmarks/regexps/Snort/exploit.rules.pcre /^[^\n]*[\x80-t].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80'] /\xeb\x0c \/ HTTP\/1\.1\s+\S+/smi ['ë'] 2 out of 56 have non-ascii characters all bad chars: ['\x80', 'ë'] /home/notme/nfa-bench/benchmarks/regexps/Snort/backdoor.rules.pcre /^001\xACOptix\s+Pro\s+v\d+\x2E\d+\s+Connected\s+Successfully\x21/smi ['¬'] /^666\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^CON\w{1,10}\d+\xAE[^\r\n]{1,20}\x3B/smi ['®'] /^\xad\x86\x01\x00\x08\x00\x00\x001\x5EMerlin/smi ['\xad', '\x86'] /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] 5 out of 154 have non-ascii characters all bad chars: ['\x86', '¬', '\xad', '®', 'À', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/telnet.rules.pcre /(\x02([\x01\x02\x03]|\xFF\xFF)){100,}/RBsm ['ÿ', 'ÿ'] 1 out of 2 have non-ascii characters all bad chars: ['ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/virus.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-frontpage.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/info.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/oracle.rules.pcre 0 out of 27 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/imap.rules.pcre 0 out of 39 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/misc.rules.pcre /\x3d\x00\x12\x00..........(.[\x80-t]|...[\x80-t])/smiR ['\x80', '\x80'] /\xff{8}\x09\x08[\x08\x10]\x00\x00[\x05\x06]\x00\x01/sm ['ÿ'] 2 out of 17 have non-ascii characters all bad chars: ['\x80', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/tftp.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/sql.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/spyware-put.rules.pcre /^From\x3a\xd0\xc5\xcf\xa2.*Subject\x3a[^\r\n]*\d+\x2d\d+\x2d\d+\x2d\d+\x3a\d+\x3a\d+/smi ['Ð', 'Å', 'Ï', '¢'] /^HBand,[^\r\n]*,[^\r\n]*,\d+,\d+\x2A\xD5ZBM/smi ['Õ'] /\x23\x23\x23\x23\s+Fen\xeatre\s+\x3a[^\r\n]*\x23\x23\x23\x23/smi ['ê'] /^X-Mailer\x3a\s+\xb0\xae\xb6\xf9\xcd\xf8\xb5\xc1/smi ['°', '®', '¶', 'ù', 'Í', 'ø', 'µ', 'Á'] 4 out of 460 have non-ascii characters all bad chars: ['¢', '®', '°', 'µ', '¶', 'Á', 'Å', 'Í', 'Ï', 'Ð', 'Õ', 'ê', 'ø', 'ù'] /home/notme/nfa-bench/benchmarks/regexps/Snort/pop2.rules.pcre 0 out of 2 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/nntp.rules.pcre 0 out of 12 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/p2p.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-client.rules.pcre 0 out of 38 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/ddos.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/together.pcre /^001\xACOptix\s+Pro\s+v\d+\x2E\d+\s+Connected\s+Successfully\x21/smi ['¬'] /^666\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^Authorization\x3A[^\r\n]+?response=[\x00-t\x0B\x0C\x0E-t]*[\x80-t]/smi ['\x80'] /^Call-ID\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Contact\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Content-Type[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^CON\w{1,10}\d+\xAE[^\r\n]{1,20}\x3B/smi ['®'] /^CSeq\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^From\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^From\x3a\xd0\xc5\xcf\xa2.*Subject\x3a[^\r\n]*\d+\x2d\d+\x2d\d+\x2d\d+\x3a\d+\x3a\d+/smi ['Ð', 'Å', 'Ï', '¢'] /^HBand,[^\r\n]*,[^\r\n]*,\d+,\d+\x2A\xD5ZBM/smi ['Õ'] /^[^\n]*[\x80-t].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80'] /Remote-Party-ID\x3A\scsip\x3A[^@]+@\d{1,3}\x2E\d{1,3}\x2E\xD1/smi ['Ñ'] /^To\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Via\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^\x00.{3}\xFFSMB(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f).{28}(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f)/ ['ÿ', '¢', '¢'] /^[\x00\x80]\x00\x00\x00/s ['\x80'] /(\x02([\x01\x02\x03]|\xFF\xFF)){100,}/RBsm ['ÿ', 'ÿ'] /\x23\x23\x23\x23\s+Fen\xeatre\s+\x3a[^\r\n]*\x23\x23\x23\x23/smi ['ê'] /^(\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] /\x3d\x00\x12\x00..........(.[\x80-t]|...[\x80-t])/smiR ['\x80', '\x80'] /^(\x75|\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] /\x99{40}\xeb\x12\x01\x99{4}\x18A{5}.{4}A{6}/sm ['\x99', 'ë', '\x99'] /^\xad\x86\x01\x00\x08\x00\x00\x001\x5EMerlin/smi ['\xad', '\x86'] /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] /\xeb\x0c \/ HTTP\/1\.1\s+\S+/smi ['ë'] /\xff{8}\x09\x08[\x08\x10]\x00\x00[\x05\x06]\x00\x01/sm ['ÿ'] /^X-Mailer\x3a\s+\xb0\xae\xb6\xf9\xcd\xf8\xb5\xc1/smi ['°', '®', '¶', 'ù', 'Í', 'ø', 'µ', 'Á'] 28 out of 1574 have non-ascii characters all bad chars: ['\x80', '\x86', '\x99', '¢', '¬', '\xad', '®', '°', 'µ', '¶', 'À', 'Á', 'Å', 'Í', 'Ï', 'Ð', 'Ñ', 'Õ', 'ê', 'ë', 'ø', 'ù', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/ftp.rules.pcre 0 out of 35 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-iis.rules.pcre 0 out of 12 have non-ascii characters all bad chars: [] 482 non-ascii regexes in total all bad chars: 128 in total, ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '\xad', '®', '¯', '°', '±', '²', '³', '´', 'µ', '¶', '·', '¸', '¹', 'º', '»', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'Þ', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] %% Cell type:code id: tags: ``` python # r = "/^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/" # "\x00"<= chr(127) analyze_file("/home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.pcre") ``` %% Output /home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.pcre /^.{0,114}\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.{0,16}\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa/ ['ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª'] /^.*08\x02\x01\x00\x04\x06public\xA4\+\x06/ ['¤'] /^.*0&\x02\x01\x00\x04\x06public\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x000\x0E0\x0C\x06\x08\+\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['\xa0', 'À'] /^.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.{10}\x8F/ ['\x8f'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA2.{4}\x00\x00\x00\x02/ ['\x86', '¢'] /^.{11}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{11}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{11}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{11}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{13}.*\x00\x00\xFC/ ['ü'] /^.{14}.*\x00\x00\xFC/ ['ü'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{15}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{15}\x00\x01\x87\}.*.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x7D.*.{0}.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{15}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{15}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{199}\xFF\xF6\xFF\xF6\xFF\xFB\x08\xFF\xF6/ ['ÿ', 'ö', 'ÿ', 'ö', 'ÿ', 'û', 'ÿ', 'ö'] /^.*1\xC0\xB0\?1\xDB\xB3\xFF1\xC9\xCD\x801\xC0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*1\xC0\xB0\x02\xCD\x80\x85\xC0uL\xEBL\^\xB0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.{3}.*\x02\x01\x00\x04\x82\x01\x00/ ['\x82'] /^.*3\xC9\xB1\x10\?\xE9\x06Q<\xFAG3\xC0P\xF7\xD0P/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.{3}\xFFSMB%/ ['ÿ'] /^.{3}\xFFSMB2/ ['ÿ'] /^.{3}\xFFSMB2.*.*[dD][oO][cC][uU][mM][eE][nN][tT][sS] [aA][nN][dD] [sS][eE][tT][tT][iI][nN][gG][sS]\x5C[aA][lL][lL] [uU][sS][eE][rR][sS]\x5C[sS][tT][aA][rR][tT] [mM][eE][nN][uU]\x5C[pP][rR][oO][gG][rR][aA][mM][sS]\x5C[sS][tT][aA][rR][tT][uU][pP]\x00/ ['ÿ'] /^.{3}\xFFSMB2.*.*\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00 \x00[mM]\x00[eE]\x00[nN]\x00[uU]\x00\x5C\x00[pP]\x00[rR]\x00[oO]\x00[gG]\x00[rR]\x00[aA]\x00[mM]\x00[sS]\x00\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00[uU]\x00[pP]/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA][dD][mM][iI][nN]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA]\x00[dD]\x00[mM]\x00[iI]\x00[nN]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI][pP][cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI]\x00[pP]\x00[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMB\x25/ ['ÿ'] /^.{3}\xffSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x75/ ['ÿ'] /^.{3}\xFFSMB\xa2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C[wW][iI][nN][rR][eE][gG]\x00/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C\x00[wW]\x00[iI]\x00[nN]\x00[rR]\x00[eE]\x00[gG]\x00\x00\x00/ ['ÿ', '¢'] /^.{3}\xFF[sS][mM][bB]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5CPIPE\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C[pP][iI][pP][eE]\x5C\x00\x05\x00\x0B.{29}\x01\xD0\x8C3D\x22\xF11\xAA\xAA\x90\x008\x00\x10\x03/ ['ÿ', 'Ð', '\x8c', 'ñ', 'ª', 'ª', '\x90'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00.{2}\x05.{1}\x0B.{21}\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x00\x18/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x18\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x04\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x00\x00\x05\x00\x0B.{29}xV4\x124\x12\xCD\xAB\xEF\x00\x01\x23Eg\x89\xAB/ ['ÿ', 'Í', '«', 'ï', '\x89', '«'] /^.{3}\xFF[sS][mM][bB].{59}.*\x05.{1}\x00.{19}\x09\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{42}\x00\x00\x00\x00.{10}[^\x00]{255}/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{56}.*\x00.{255}.*\x00\x00.*.*\x00\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{2}\x05.{1}\x0b.{21}\x00/ ['ÿ'] /^.{4}\xe0\x00\x00\x00\x00\x00/ ['à'] /^.{4}\xE0\x00\x00\x00\x00\x00/ ['à'] /^.{62}`.{1}\x00\x00\x00b\x06\x83\x00\x00\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA3>0<\xA00/ ['\x83', '\x82', '£', '\xa0'] /^.{62}`.{1}\x06\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA1\x05\x23\x03\x03\x01\x07/ ['\x82', '¡'] /^.{6} \x04\x82\x01\x00/ ['\x82'] /^.{7}\xFF\xFF\xFF\xFF\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*9 \xD0\x00\x92\x01\xC2\x00R\x00U\x009 \xEC\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*C\x07\x89\[\x08\x8DK\x08\x89C\x0C\xB0\x0B\xCD\x801\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\/bin\/sh\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^.*[fF][rR][oO][mM]\x3A\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*G\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1F/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*H\x00%\x00x\x00w\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x003\x00\xC0\x00P\x00h\x00\.\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*h\]\^\xFF\xD5\xFF\xD4\xFF\xF5\x8B\xF5\x90f1/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*name=\x22\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*name=\"\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82/ ['ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82'] /^.*q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*q\xFB\{\xABq\xFB\{\xABq\xFB\{\xABq\xFB\{\xAB/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*V\x0E1\xC0\xB0\x3B\x8D~\x12\x89\xF9\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x00\x00\x03\xe7\x00\x00\x00\x00\x00\x00\x00\x65\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x05\x00\x00\x00\x00\x00\x00\x00/ ['ç'] /^.*\x00\x01\x87\x86\x00\x00\x00\x01\x00\x00\x00\x05/ ['\x87', '\x86'] /^.*\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08/ ['À', 'À', 'À', 'À'] /^.*\x011\xDB\xCD\x80\xE8\[\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xe8/ ['è'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xE8/ ['è'] /^.*\x01\x31\xDB\xCD\x80\xE8\x5B\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x9A\x8C\x66\xAF\xC0\x4A\x11\x9E\x3F\x40\x88\x12\x2C\x3A\x4A\x84\x65\x38\xB0\xB4\x08\x0B\xAF\xDB\xCE\x02\x94\x34\x5F\x22\x00*./ ['\x9a', '\x8c', '¯', 'À', '\x9e', '\x88', '\x84', '°', '´', '¯', 'Û', 'Î', '\x94'] /^.*\x01\xFE\x3C\x6C\x6A\xFF\x99\xA8\x34\x83\x38\x24\xA1\xA4\xF2\x11\x5A\xD3\x18\x8D\xBC\xC4\x3E\x40\x07\xA4\x28\xD4\x18\x48\xFE\x00*./ ['þ', 'ÿ', '\x99', '¨', '\x83', '¡', '¤', 'ò', 'Ó', '\x8d', '¼', 'Ä', '¤', 'Ô', 'þ'] /^\x03\x00\x00\x0b\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^\x03\x00\x00\x0B\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^.*\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%/ ['à', 'ø', 'à', 'ø', 'à', 'ø', 'à', 'ø'] /^\x04\x00.{22}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\x05.{1}\x0B.{29}j\x28\x199\x0C\xB1\xD0\x11\x9B\xA8\x00\xC0O\xD9\.\xF5/ ['±', 'Ð', '\x9b', '¨', 'À', 'Ù', 'õ'] /^\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['\xa0', 'À'] /^\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.*\x05\x00.{5}\xDE\x03/ ['Þ'] /^\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\+\x06\x10@\x14\xD1\x02\x19/ ['Ñ'] /^.*\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80root\x00/ ['\x85', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80\x72\x6F\x6F\x74\x00/ ['\x85', '\x80'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD&/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD\x26/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\^\x0E1\xC0\xB0\x3B\x8D~\x0E\x89\xFA\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ú', '\x89', 'ù'] /^.*\x12\xc4\xf6\x62\x55\xe6\x36\xbd\xe4\x65\xbc\x24\xbe\xb0\x50\xac\xe0\xef\x9a\x4f/ ['Ä', 'ö', 'æ', '½', 'ä', '¼', '¾', '°', '¬', 'à', 'ï', '\x9a'] /^.*\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6/ ['À', '¦', 'À', '¦', 'À', '¦', 'À', '¦'] /^.*\x2b\x06\x10\x40\x14\xd1\x02\x19/ ['Ñ'] /^.*\x30\x26\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x00\x30\x0E\x30\x0C\x06\x08\x2B\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.*\x30\x38\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA4\x2B\x06/ ['¤'] /^.*\x31\xc0\xb0\x02\xcd\x80\x85\xc0\x75\x4c\xeb\x4c\x5e\xb0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.*\x31\xc0\xb0\x3f\x31\xdb\xb3\xff\x31\xc9\xcd\x80\x31\xc0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*\x33\xC9\xB1\x10\x3F\xE9\x06\x51\x3C\xFA\x47\x33\xC0\x50\xF7\xD0\x50/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.*\x39\x20\xd0\x00\x92\x01\xc2\x00\x52\x00\x55\x00\x39\x20\xec\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*\x40\x8A\xFF\xC8\x40\x82\xFF\xD8\x3B\x36\xFE\x03\x3B\x76\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x43\x07\x89\x5B\x08\x8D\x4B\x08\x89\x43\x0C\xB0\x0B\xCD\x80\x31\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\x2F\x62\x69\x6E\x2F\x73\x68\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^\x45\x2e\xe5\x01\x80\xb0\x0a\xca\xdb\x16\xa1\x8f\xc6\xcd\x97\x60\x92\x44\x93\x16/ ['å', '\x80', '°', 'Ê', 'Û', '¡', '\x8f', 'Æ', 'Í', '\x97', '\x92', '\x93'] /^.*\x48\x00\x25\x00\x78\x00\x77\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x33\x00\xc0\x00\x50\x00\x68\x00\x2e\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*\x4b\x56\xde\x0c\x47\xbf\x12\x9f\xc7\x24\x40\x64\x5c\xfd\xa8\x2b\xaf\x3f\x09\xc7/ ['Þ', '¿', '\x9f', 'Ç', 'ý', '¨', '¯', 'Ç'] /^.*\x56\x0e\x31\xc0\xb0\x3b\x8d\x7e\x12\x89\xf9\x89\xf9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x5C\x00\x5C\x00\*\x00S\x00M\x00B\x00S\x00E\x00R\x00V\x00E\x00R\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5C\x00\x5C\x00\x2A\x00\x53\x00\x4D\x00\x42\x00\x53\x00\x45\x00\x52\x00\x56\x00\x45\x00\x52\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5e\xb0\x02\x89\x06\xfe\xc8\x89\x46\x04\xb0\x06\x89\x46/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\x68\x5d\x5e\xff\xd5\xff\xd4\xff\xf5\x8b\xf5\x90\x66\x31/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*\x7c\x83\x3b\x3f\x8a\x80\x59\xbf\x45\xbd\x5f\xf2\xa3\xc9\x36\x85\xa9\xd1\x15\xc3/ ['\x83', '\x8a', '\x80', '¿', '½', 'ò', '£', 'É', '\x85', '©', 'Ñ', 'Ã'] /^.*\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\?\x00\x01\x02/ ['\x80'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\x3F\x00\x01\x02/ ['\x80'] /^\x80\x02.{4}.*\x02/ ['\x80'] /^.*\x80\x07\x00\x00\x07\x00\x00\x04\x00\x00\x00\x00\x00/ ['\x80'] /^.*\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x81', '\x80'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xf1\x03\x01\x04\x9b\x81\xf1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x82\x10 \x17\x91\xD0 \x08/ ['\x82', '\x91', 'Ð'] /^^\x85\x13<\x9E\xA2/ ['\x85', '\x9e', '¢'] /^.*\x85\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x85', '\x80'] /^.*\x89\xf7\x29\xc7\x89\xf3\x89\xf9\x89\xf2\xac\x3c\xfe/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*\x89\xF7\x29\xC7\x89\xF3\x89\xF9\x89\xF2\xAC<\xFE/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*@\x8A\xFF\xC8@\x82\xFF\xD8\x3B6\xFE\x03\x3Bv\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x1A\xC0\x0F\x90\x02 \x08\x92\x02 \x0F\xD0\x23\xBF\xF8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x1a\xc0\x0f\x90\x02\x20\x08\x92\x02\x20\x0f\xd0\x23\xbf\xf8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x90\x90\xE8\xC0\xFF\xFF\xFF\/bin\/sh/ ['\x90', '\x90', '\x90', 'è', 'À', 'ÿ', 'ÿ', 'ÿ'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90\x25\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90%\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13/ ['¦', 'À', '¦', 'À', '¦', 'À', '¦', 'À'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01 \x02a/ ['«', 'Í', '\x80'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01\x20\x20\x20\x20\x02\x61/ ['«', 'Í', '\x80'] /^.*\^\xB0\x02\x89\x06\xFE\xC8\x89F\x04\xB0\x06\x89F/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\xB0\xB5\xCD\x80/ ['°', 'µ', 'Í', '\x80'] /^.*\xb4\x20\xb4\x21\x8b\xcc\x83\xe9\x04\x8b\x19\x33\xc9\x66\xb9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xB4\xB4/ ['´', '´'] /^.*\xB4 \xB4!\x8B\xCC\x83\xE9\x04\x8B\x193\xC9f\xB9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xba\x49\xfe\xff\xff\xf7\xd2\xb9\xbf\xff\xff\xff\xf7\xd1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^.*\xC0\x0C\x00\x01\x00\x01\x00\x00\x00<\x00\x04/ ['À'] /^.*\xc0\x0c\x00\x01\x00\x01\x00\x00\x00\x3c\x00\x04/ ['À'] /^.*\xC0\x0C\x00\x0C\x00\x01\x00\x00\x00<\x00\x0F/ ['À'] /^.*\xc0\x0c\x00\x0c\x00\x01\x00\x00\x00\x3c\x00\x0f/ ['À'] /^.*\xC0\x50\x52\x89\xE1\x50\x51\x52\x50\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^\xc9\xe9\x36\xa1\xce\xae\x10\x3c\x32\x81\xac\x9b\x01\x81\x5a\x68\x01\x91\x82\xa4/ ['É', 'é', '¡', 'Î', '®', '\x81', '¬', '\x9b', '\x81', '\x91', '\x82', '¤'] /^.*\xCD\x80\xE8\xD7\xFF\xFF\xFF\/bin\/sh/ ['Í', '\x80', 'è', '×', 'ÿ', 'ÿ', 'ÿ'] /^.*\xd1\xe4\x22\x07\x57\xd3\xa9\x9a\x5a\xd5\xcc\xc7\x9d\xa1\xd5\xc5\xa6\xf1\x6d\x57/ ['Ñ', 'ä', 'Ó', '©', '\x9a', 'Õ', 'Ì', 'Ç', '\x9d', '¡', 'Õ', 'Å', '¦', 'ñ'] /^.*\xd2\x9b\xec\xe0\x8c\x09\x28\xcb\x05\x60\x1b\xc5\x59\x34\xab\xbd\x56\xd6\x78\xaa/ ['Ò', '\x9b', 'ì', 'à', '\x8c', 'Ë', 'Å', '«', '½', 'Ö', 'ª'] /^.*\xd8\x40\xcd\x80\xe8\xd9\xff\xff\xff\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xD8@\xCD\x80\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xdd\xbd\x4c\x7b\x35\x9a\x89\x88\xf0\x0d\xa8\xf1\x44\x67\x7b\xcd\x18\xf0\xe6\x70/ ['Ý', '½', '\x9a', '\x89', '\x88', 'ð', '¨', 'ñ', 'Í', 'ð', 'æ'] /^\xe1\xac\x20\x5a\xda\x5a\xf7\x0c\x17\x24\x8e\xc2\x0e\xa0\x0b\xee\x7a\x77\xe0\x64/ ['á', '¬', 'Ú', '÷', '\x8e', 'Â', '\xa0', 'î', 'à'] /^.*\xe7\xa7\x74\xb8\xb9\xfe\x9a\x6e\x6c\xe1\xd5\xde\x5f\x5c\xd5\x9d\x49\x69\x9a\xba/ ['ç', '§', '¸', '¹', 'þ', '\x9a', 'á', 'Õ', 'Þ', 'Õ', '\x9d', '\x9a', 'º'] /^.*\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xEB@\^1\xC0@\x89F\x04\x89\xC3@\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xEBE\xEB \[\xFC3\xC9\xB1\x82\x8B\xF3\x80\+/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xEBK\[S2\xE4\x83\xC3\x0BK\x88\x23\xB8Pw/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xEBn\^\xC6\x06\x9A1\xC9\x89N\x01\xC6F\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xEBV\^VVV1\xD2\x88V\x0B\x88V\x1E/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xEB\x02\xEB\x02\xEB\x02/ ['ë', 'ë', 'ë'] /^.*\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C/ ['ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë'] /^.*\xEB\x23\^3\xC0\x88F\xFA\x89F\xF5\x896/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x23\x5e\x33\xc0\x88\x46\xfa\x89\x46\xf5\x89\x36/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x2c\x5b\x89\xd9\x80\xc1\x06\x39\xd9\x7c\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xeb\x2f\x5f\xeb\x4a\x5e\x89\xfb\x89\x3e\x89\xf2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xeb\x40\x5E\x31\xc0\x40\x89\x46\x04\x89\xc3\x40\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xeb\x45\xeb\x20\x5b\xfc\x33\xc9\xb1\x82\x8b\xf3\x80\x2b/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xeb\x4b\x5b\x53\x32\xe4\x83\xc3\x0b\x4b\x88\x23\xb8\x50\x77/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xeb\x56\x5E\x56\x56\x56\x31\xd2\x88\x56\x0b\x88\x56\x1e/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xeb\x5f\x9a\xff\xff\xff\xff\x07\xff\xc3\x5e\x31\xc0\x89\x46\x9d/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xeb\x6e\x5e\xc6\x06\x9a\x31\xc9\x89\x4e\x01\xc6\x46\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xeb\x7f\x5d\x55\xfe\x4d\x98\xfe\x4d\x9b/ ['ë', 'þ', '\x98', 'þ', '\x9b'] /^.*\xEB,\[\x89\xD9\x80\xC1\x069\xD9\x7C\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xEB\/_\xEBJ\^\x89\xFB\x89>\x89\xF2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xff\xf3\xff\xf3\xff\xf3\xff\xf3\xff\xf3/ ['ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó'] /^.*\xff\xf4\xff\xfd\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xF4\xFF\xFD\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xFD\x18\xFF\xFD\x1F\xFF\xFD\x23\xFF\xFD\x27\xFF\xFD\x24/ ['ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý'] /^.*\xFF\xFFKADM0\.0A\x00\x00\xFB\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xff\xff\x4b\x41\x44\x4d\x30\x2e\x30\x41\x00\x00\xfb\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xFF\xFF\xFF\/BIN\/SH\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\x2f\x42\x49\x4e\x2f\x53\x48\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xFF\xFF\xFF\xFF\xFF\xFF/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] 333 out of 1400 have non-ascii characters all bad chars: ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '®', '¯', '°', '±', '³', '´', 'µ', '¸', '¹', 'º', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ý', 'Þ', 'à', 'á', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ë', 'ì', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] (333, {'\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '®', '¯', '°', '±', '³', '´', 'µ', '¸', '¹', 'º', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ý', 'Þ', 'à', 'á', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ë', 'ì', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'}) %% Cell type:code id: tags: ``` python r = "/.*\uCode=/" codecs.decode(r, 'unicode_escape', errors='ignore') ``` %% Output '/.*ode=/' %% Cell type:code id: tags: ``` python import re def replace_match(match): excluded_chars = sorted(match.group(1)) replace_group = "[" last_range_start = "\x00" for char in excluded_chars: if last_range_start < char: range_end = chr(ord(char) - 1) # the last character before char replace_group += last_range_start + "-" + range_end last_range_start = chr(ord(char) + 1) # the first character after char if last_range_start <= "\x7f": replace_group += last_range_start + "-" "\x7f" + "]" # Return expanded character class like [\x00-a...\x7f] return replace_group re.sub(r'\[\^([^\]]+)\]', replace_match, "[^\x00\x7f]") ``` %% Output '[\x01-~' %% Cell type:code id: tags: ``` python "((\x13bittorrent protocol|azver\x01$|get /scrape\?info_hash=get /announce\?info_hash=|get /client/bitcomet/|GET /data\?fid=)|d1:ad2:id20:|\x08'7P\)[RP])[\x00-\x7f]*", "(get (/[\x00-\x7f]download/[ -~]*|/[\x00-\x7f]supernode[ -~]|/[\x00-\x7f]status[ -~]|/[\x00-\x7f]network[ -~]*|/[\x00-\x7f]files|/[\x00-\x7f]hash=[0-9a-f]*/[ -~]*) http/1[\x00-\x7f]1|user-agent: kazaa|x-kazaa(-username|-network|-ip|-supernodeip|-xferid|-xferuid|tag)|^give [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]?[0-9]?[0-9]?)[\x00-\x7f]*", "[\x00-\x7f]*(<peerplat>|^get /getfilebyhash\.cgi\?|^get /queue_register\.cgi\?|^get /getupdowninfo\.cgi\?)[\x00-\x7f]*", "[\x00-\x7f]*(ver [0-9]+ msnp[1-9][0-9]? [\x09-\x0d -~]*cvr0\x0d\x0a$|usr 1 [!-~]+ [0-9\. ]+\x0d\x0a$|ans 1 [!-~]+ [0-9\. ]+\x0d\x0a)", "GETMP3\x0d\x0aFilename|^\x01[\x00-\x7f]?[\x00-\x7f]?[\x00-\x7f]?(\x51\x3a\+|\x51\x32\x3a)|^\x10[\x14-\x16]\x10[\x15-\x17][\x00-\x7f]?[\x00-\x7f]?[\x00-\x7f]?[\x00-\x7f]?", "(notify[\x09-\x0d ]\*[\x09-\x0d ]http/1\.1[\x09-\x0d -~]*ssdp:(alive|byebye)|^m-search[\x09-\x0d ]\*[\x09-\x0d ]http/1\.1[\x09-\x0d -~]*ssdp:discover)[\x00-\x7f]*", "(t\x03ni[\x00-\x7f]?[\x01-\x06]?t[\x01-\x05]s[\x0a\x0b](glob|who are you$|query data))[\x00-\x7f]*" ``` scripts/regex_to_automata.py +26 −70 Original line number Diff line number Diff line Loading @@ -8,47 +8,12 @@ import re import codecs number_map = {str(c): c for c in range(128)} wanted_symbols = {str(c) for c in range(128)} failing_regexes = [ # "^.*[sS][yY][sS][tT][eE][mM][pP][aA][tT][hH]\\=([hH][tT]{2}[pP][sS]?)|([fF][tT][pP])", # "^[^\\f\\n\\r\\t\\v]{65}|[^\\f\\n\\r\\t\\v]+[\\f\\n\\r\\t\\v]+[^\\f\\n\\r\\t\\v]{65}|[^\\f\\n\\r\\t\\v]+[\\f\\n\\r\\t\\v]+[^\\f\\n\\r\\t\\v]+[\\f\\n\\r\\t\\v]+[^\\f\\n\\r\\t\\v]{65}", # "^get (X.downloadX[ -~]*|X.supernode[ -~]|X.status[ -~]|X.network[ -~]*|X.files|X.hash\\=[0-9a-f]*X[ -~]*) httpX1.1|user-agent: kazaa|x-kazaa(-username|-network|-ip|-supernodeip|-xferid|-xferuid|tag)|^give [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]?[0-9]?[0-9]?", # "({(?\\=[0-9]+}[^\\n]*?[\\f\\n\\r\\t\\v]AUTH)|AUTH[\\f\\n\\r\\t\\v][^\\n]*?{(?\\=[0-9]+}))", # "^(\\*[\\x01\\x02].*\\x03\\x0b|\\*\\x01.?.?.?.?\\x01)|flapon|toc_signon.*0x", # "^(\\x11\\x20\\x01...?\\x11|\\xfe\\xfd.?.?.?.?.?.?(\\x14\\x01\\x06|\\xff\\xff\\xff))|[\\]\\x01].?battlefield2", # "^(\\x13bittorrent protocol|azver\\x01$|get Xscrape\\?info_hash\\=get Xannounce\\?info_hash\\=|get XclientXbitcometX|GET Xdata\\?fid\\=)|d1:ad2:id20:|\\x08'7P\\)[RP]", # "^[a-z][a-z0-9\\-_]+|login: [\\x09-\\x0d -~]* name: [\\x09-\\x0d -~]* Directory:", # "^get X.*icy-metadata:1|icy [1-5][0-9][0-9] [\\x09-\\x0d -~]*(content-type:audio|icy-)", # "^([()]|get)(...?.?.?(reg|get|query)|.+User-Agent: (MozillaX4\\.0 \\(compatible; (MSIE 6\\.0; Windows NT 5\\.1;? ?\\)|MSIE 5\\.00; Windows 98\\))))|Keep-Alive\\x0d\\x0a\\x0d\\x0a[26]", # "^[\\f\\n\\r\\t\\v]*Accept-Language[\\f\\n\\r\\t\\v]*|3a|[\\f\\n\\r\\t\\v]*([^\\r\\n]*?\\x2c){20}", # "filename[\\f\\n\\r\\t\\v]*\\=[\\f\\n\\r\\t\\v]*.*?\\.(?\\=[abcdehijlmnoprsvwx])(a(d[ep]|s[dfx])|c([ho]m|li|md|pp)|d(iz|ll|ot)|e(m[fl]|xe)|h(lp|sq|ta)|jse?|m(d[abew]|s[ip])|p(p[st]|if|[lm]|ot)|r(eg|tf)|s(cr|[hy]s|wf)|v(b[es]?|cf|xd)|w(m[dfsz]|p[dmsz]|s[cfh])|xl[tw]|bat|ini|lnk|nws|ocx)[\\x27\\x22\\n\\r[\\f\\n\\r\\t\\v]]", # "\\x2f(?\\=[abdefijoqrsuvwxz])(d(ixqshv\\x2fqzccs|yddznydqir\\x2fevi)|f(seqepagqfphv\\x2fsfd|ulmxct\\x2fmqoyc)|i(ohgdhkzfhdzo\\x2fuwp|yxegtd\\x2fefcwg)|j((bevgezfmegwy\\x2fnt|mqnqgijmng\\x2foj)a|hjhgquqssq\\x2fpjm|pjpoptwql\\x2frlnj)|s(mtmeihf\\x2fhiuxz|vclxatmlhavj\\x2fvsy)|(aohobygi\\x2fzwiw|rprpgbnrppb\\x2fci)f|bnymomspyo\\x2fzowy|eveocczmthmmq\\x2fomzl|ocllceclbhs\\x2fgth|(qlqqlbojvii\\x2fgt|xbqyosoe\\x2fcpvm)i|urfiqileuq\\x2ftjzu|(vvvjkhmbgnbbw\\x2fqbn|wjpropqmlpohj\\x2flo)q|zzzvmkituktgr\\x2fetie)\\.exe", # "\\x2f(?\\=[defghilmnoqrstwz])(m(ookflolfctm\\x2fnmot\\.fmu|clvompycem\\x2fcen\\.vcn)|e(etbuviaebe\\x2feqv\\.bvv|mcndvwoemn\\x2flvv\\.jde)|s(fhfksjzsfu\\x2fahm\\.uqs|rvziadzvzr\\x2fsaei\\.vvt)|n(kxlvcob\\x2fkmpk\\.ibl|pgwtjgxwthx\\x2fbyb\\.xky|hirmvtg\\x2fggqh\\.kqh)|(wlpgskmv\\x2flwzo\\.qv|gdvsotuqwsg\\x2fdxt\\.hd)g|(twfofrfzlugq\\x2feve\\.qd|doarauzeraqf\\x2fvvv\\.ul|qisezhin\\x2fiqor\\.ym)v|fowclxccdxn\\x2fuxwn\\.ddy|lnzzlnbk\\x2fpkrm\\.fin|iufilfwulmfi\\x2friuf\\.lio|(hsdszhmoshh\\x2flhr\\.cn|oakmanympnw\\x2flnkd\\.pk)h|riggiymd\\x2fwdhi\\.vhi|zmnjgmomgbdz\\x2fzzmw\\.gzt)", # "x-unix-mode[\\f\\n\\r\\t\\v]*\\x3D[\\f\\n\\r\\t\\v]*(?(?\\=[0-9]{4})[0-7]([1357][0-7]{2}|[0-7][1357][0-7]|[0-7]{2}[1357])|([1357][0-7]{2}|[0-7][1357][0-7]|[0-7]{2}[1357]))", # "/([A-Za-z0-9_]+)[\\f\\n\\r\\t\\v]*\\=[\\f\\n\\r\\t\\v]*('|" "([\\x00->@-\\x7f]*\\.slk([\\?\\x5c\\x2f]|$))[\\x00-\\x7f]*", "[\\x00-\\x7f]*(({(?=[0-9]+}[\\x00-\\x09\\x0b-\\x7f]*?[\\f\\n\\r\\t\\v]AUTH)|AUTH[\\f\\n\\r\\t\\v][\\x00-\\x09\\x0b-\\x7f]*?{(?=[0-9]+})))[\\x00-\\x7f]*", "[\\x00-\\x7f]*(/([A-Za-z0-9_]+)[\\f\\n\\r\\t\\v]*=[\\f\\n\\r\\t\\v]*('|)[\\x00-\\x7f]*", # codes over 300 "((\\x13bittorrent protocol|azver\\x01$|get /scrape\\?info_hash=get /announce\\?info_hash=|get /client/bitcomet/|GET /data\\?fid=)|d1:ad2:id20:|\\x08'7P\\)[RP])[\\x00-\\x7f]*", "(get (/[\\x00-\\x7f]download/[ -~]*|/[\\x00-\\x7f]supernode[ -~]|/[\\x00-\\x7f]status[ -~]|/[\\x00-\\x7f]network[ -~]*|/[\\x00-\\x7f]files|/[\\x00-\\x7f]hash=[0-9a-f]*/[ -~]*) http/1[\\x00-\\x7f]1|user-agent: kazaa|x-kazaa(-username|-network|-ip|-supernodeip|-xferid|-xferuid|tag)|^give [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]?[0-9]?[0-9]?)[\\x00-\\x7f]*", "[\\x00-\\x7f]*(<peerplat>|^get /getfilebyhash\\.cgi\\?|^get /queue_register\\.cgi\\?|^get /getupdowninfo\\.cgi\\?)[\\x00-\\x7f]*", "[\\x00-\\x7f]*(ver [0-9]+ msnp[1-9][0-9]? [\\x09-\\x0d -~]*cvr0\\x0d\\x0a$|usr 1 [!-~]+ [0-9\\. ]+\\x0d\\x0a$|ans 1 [!-~]+ [0-9\\. ]+\\x0d\\x0a)", "GETMP3\\x0d\\x0aFilename|^\\x01[\\x00-\\x7f]?[\\x00-\\x7f]?[\\x00-\\x7f]?(\\x51\\x3a\\+|\\x51\\x32\\x3a)|^\\x10[\\x14-\\x16]\\x10[\\x15-\\x17][\\x00-\\x7f]?[\\x00-\\x7f]?[\\x00-\\x7f]?[\\x00-\\x7f]?", "(notify[\\x09-\\x0d ]\\*[\\x09-\\x0d ]http/1\\.1[\\x09-\\x0d -~]*ssdp:(alive|byebye)|^m-search[\\x09-\\x0d ]\\*[\\x09-\\x0d ]http/1\\.1[\\x09-\\x0d -~]*ssdp:discover)[\\x00-\\x7f]*", "(t\\x03ni[\\x00-\\x7f]?[\\x01-\\x06]?t[\\x01-\\x05]s[\\x0a\\x0b](glob|who are you$|query data))[\\x00-\\x7f]*", ] overflow_regexes = [ "([\\x00-\\x7f]*cache_lastpostdate\\[[\\x00-Z\\\\-\\x7F]+\\]=[\\x01-:<-<>-\\x7f]{30})[\\x00-\\x7f]*", "[\\x00-\\x7f]*(\\x5c[\\x00-\\[\\]-\\x7f]{16}|\\x2f[\\x00-\\.0-\\x7f]{16})\\.cda", "[\\x00-\\x7f]*((\\x5c[\\x00-\\[\\]-\\x7f]{16,}|\\x2f[\\x00-\\.0-\\x7f]{16,})\\.cda)", ] number_map = {str(c): c for c in range(256)} wanted_symbols = set(number_map.keys()) def unescape_invalid_escapes(string: str) -> str: return re.sub(r'([^\\])\\([\d=&;ceEgGik-mo-qK-QTuy])', r'\1\2', string) return re.sub(r'([^\\])\\([\dceGghikKlmopPqTuyVE])', r'\1\2', string) def contains_non_ascii(regex: str) -> bool: Loading @@ -61,23 +26,23 @@ def contains_non_ascii(regex: str) -> bool: def is_allowed(regex: str) -> bool: # invalid = re.compile(r"\\[0-9a-eg-mo-quwyzA-Z]|\|3A\||\^\^|\{\d{4}\}|\{[^\}]*[\d]{4}[^\}]*\}|\\x80-t") invalid = re.compile(r"\{\d{4},?\}|\[\\x00-Z\\\\-\\x7F\]|\(\?=") invalid = re.compile(r"\{\d{4},?\}|\(\?=|\\x80-t") return re.search(invalid, regex) is None \ and not contains_non_ascii(regex) \ and regex not in failing_regexes + overflow_regexes return re.search(invalid, regex) is None def from_regex(regex, output_path): def regex_to_mata_nfa(regex: str): regex = unescape_invalid_escapes(regex) try: m_nfa = mata_parser.from_regex(regex) return mata_parser.from_regex(regex, encoding="Latin-1") except Exception as e: print(regex) raise e def from_regex(regex, output_path): m_nfa = regex_to_mata_nfa(regex) alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) try: Loading @@ -93,38 +58,27 @@ def from_regex(regex, output_path): def add_union(regex: str, add_to): try: m_nfa = mata_parser.from_regex(regex) m_nfa = regex_to_mata_nfa(regex) except Exception as e: return add_to = add_to.union(m_nfa) def preprocess_regex(regex: str) -> str: # the mata compiler does not add Sigma^* to the beginning and end of the regex if not regex.startswith("^"): regex = ".*" + regex if not regex.endswith("$"): regex += ".*" return regex def create_automaton_for_regex_file(regexes: list[str]): nfa = mata_nfa.Nfa() for regex in regexes: regex = regex.strip() if regex and is_allowed(regex) and not regex.startswith("#"): print(regex) # print(regex) # regex = preprocess_regex(regex) # not needed anymore, this is handled in regex_translator add_union(regex, nfa) return nfa def process_re2_files(directory): def process_re2_files(directory: str, union_automata_dir: str, generate_union: bool = False): # Iterate over all files in the directory # root = "/home/notme/nfa-bench/benchmarks/regexps/Bro/" # files = ["/home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.re2"] Loading @@ -138,18 +92,19 @@ def process_re2_files(directory): with open(re2_file_path, 'r') as re2_file: regexes = re2_file.readlines() # automaton_dir = os.path.join(root, "union_automata") # os.makedirs(automaton_dir, exist_ok=True) # automaton_path = os.path.join(automaton_dir, os.path.splitext(file)[0] + ".mata") automaton_dir_name = os.path.splitext(file)[0] # if not os.path.isfile(automaton_path): # m_nfa = create_automaton_for_regex_file(regexes) # alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) # ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet), default_symbol_value = "256") # ali_parser.ext_nfa_to_vtf(ext_nfa, automaton_path) if generate_union: os.makedirs(union_automata_dir, exist_ok=True) automaton_path = os.path.join(union_automata_dir, f"{os.path.splitext(file)[0]}.mata") if not os.path.isfile(automaton_path): m_nfa = create_automaton_for_regex_file(regexes) alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet), default_symbol_value = "256") ali_parser.ext_nfa_to_vtf(ext_nfa, automaton_path) # Process each regex in the file automaton_dir_name = os.path.splitext(file)[0] automaton_dir = os.path.join(root, automaton_dir_name) if not os.path.isdir(automaton_dir): Loading @@ -171,8 +126,9 @@ if __name__ == "__main__": # Define the directory containing the .re2 files directory = "/home/notme/nfa-bench/benchmarks/regexps/" # directory = "/home/notme/aligater/output/failing_regexes_dir/" union_automata_dir = "/home/notme/nfa-bench/benchmarks/regexps_union/" # Process the .re2 files process_re2_files(directory) process_re2_files(directory, union_automata_dir, True) # from_regex('([\\x00-\\x7f]*\\campaign=snap)[\\x00-\\x7f]*', "") scripts/regex_translator.py +47 −35 Original line number Diff line number Diff line Loading @@ -68,16 +68,7 @@ def replace_exclusion_group(match) -> str: return replace_group def sanitize_regex_after_translation(regex: str) -> str: # replace the replaced "\/" back after parsing (they do not need to be replaced for re2) regex = regex.replace("\x80", "/") # we cannot handle \[ and \] inside [^...] if re.search(r'[^\\]\[[^\]]*[\[]', regex) is not None: print("[] inside [...]:", regex) regex = unescape_invalid_escapes(regex) def add_self_loops_manually(regex: str) -> str: # the mata compiler does not add Sigma^* to the beginning and end of the regex # and behaves weirdly when there is ^ at the beginning and | somewhere in the middle prefix = "" Loading @@ -96,6 +87,21 @@ def sanitize_regex_after_translation(regex: str) -> str: if prefix != "" or suffix != "": regex = f"{prefix}({regex}){suffix}" return regex def sanitize_regex_after_translation(regex: str) -> str: # replace the replaced "\/" back after parsing (they do not need to be replaced for re2) regex = regex.replace("\x80", "/") # we cannot handle \[ and \] inside [^...] if re.search(r'[^\\]\[[^\]]*[\[]', regex) is not None: print("[] inside [...]:", regex) regex = unescape_invalid_escapes(regex) regex = add_self_loops_manually(regex) # Mata parses regexes over utf-8, therefore . or [^...] is parsed as all valid # utf-8 encodings of the wanted characters, but we only want ascii Loading Loading @@ -126,6 +132,11 @@ def sanitize_regex_after_translation(regex: str) -> str: return regex def pcre_to_re2(regex: str): split = regex.split("/") return "/".join(split[1:-1]) def translate_regex(input_file, output_file): # Open the input file and read all regexes line by line with open(input_file, 'r') as infile: Loading @@ -136,28 +147,32 @@ def translate_regex(input_file, output_file): for regex in regexes: regex = regex.strip() if regex and not regex.startswith("#"): # replace symbols that some of the tools have a problem with regex = sanitize_regex_before_translation(regex) # print(regex) # Use regex-translator to translate each regex result = subprocess.run( [ "regex-translator", "-R", regex, "-F", "pcre", "-T", "re2", "-o" ], capture_output=True, text=True ) if result.returncode == 0: translated_regex = sanitize_regex_after_translation(result.stdout.strip()) # # replace symbols that some of the tools have a problem with # regex = sanitize_regex_before_translation(regex) # # print(regex) # # Use regex-translator to translate each regex # result = subprocess.run( # [ # "regex-translator", # "-R", regex, # "-F", "pcre", # "-T", "re2", # "-o" # ], # capture_output=True, # text=True # ) # if result.returncode == 0: # translated_regex = sanitize_regex_after_translation(result.stdout.strip()) # translated_regexes.append(translated_regex) # else: # print(f"Error translating regex: {regex}") # print(result.stderr) translated_regex = pcre_to_re2(regex) translated_regex = add_self_loops_manually(translated_regex) translated_regexes.append(translated_regex) else: print(f"Error translating regex: {regex}") print(result.stderr) # Write all translated regexes to the output file with open(output_file, 'w') as outfile: Loading @@ -177,9 +192,6 @@ def copy_directory_with_translation(dest_dir): # Translate the PCRE regex to RE2 translate_regex(pcre_file_path, re2_file_path) # Optionally, delete the original .pcre file if not needed # os.remove(pcre_file_path) if __name__ == "__main__": # Define your source and destination directories Loading Loading
notebooks/regex_parsing.ipynb +27 −8 Original line number Diff line number Diff line %% Cell type:code id: tags: ``` python import libmata.parser as parser import libmata.alphabets as alphabets import libmata.plotting as plotting from libmata.plotting import plot import libmata.nfa.nfa as mata_nfa import aligater.utils.parser as ali_parser from aligater.utils import mata_handler import codecs # plotting.store()['alphabet'] = alphabets.OnTheFlyAlphabet.from_symbol_map({chr(c): c for c in range(128)}) ``` %% Cell type:code id: tags: ``` python ascii_map = { 'space': 32, # Space '!': 33, '"': 34, '#': 35, '$': 36, '%': 37, '&': 38, "'": 39, '(': 40, ')': 41, '*': 42, '+': 43, ',': 44, '-': 45, '.': 46, '/': 47, '0': 48, '1': 49, '2': 50, '3': 51, '4': 52, '5': 53, '6': 54, '7': 55, '8': 56, '9': 57, ':': 58, ';': 59, '<': 60, '=': 61, '>': 62, '?': 63, '@': 64, 'A': 65, 'B': 66, 'C': 67, 'D': 68, 'E': 69, 'F': 70, 'G': 71, 'H': 72, 'I': 73, 'J': 74, 'K': 75, 'L': 76, 'M': 77, 'N': 78, 'O': 79, 'P': 80, 'Q': 81, 'R': 82, 'S': 83, 'T': 84, 'U': 85, 'V': 86, 'W': 87, 'X': 88, 'Y': 89, 'Z': 90, '[': 91, '\': 92, # Backslash '\\': 92, ']': 93, '^': 94, '_': 95, '`': 96, 'a': 97, 'b': 98, 'c': 99, 'd': 100, 'e': 101, 'f': 102, 'g': 103, 'h': 104, 'i': 105, 'j': 106, 'k': 107, 'l': 108, 'm': 109, 'n': 110, 'o': 111, 'p': 112, 'q': 113, 'r': 114, 's': 115, 't': 116, 'u': 117, 'v': 118, 'w': 119, 'x': 120, 'y': 121, 'z': 122, '{': 123, '|': 124, '}': 125, '~': 126, '\n': 10, # Newline '\t': 9, # Tab '\r': 13, # Carriage return '\f': 12, # Formfeed '\v': 11 # Vertical tab } number_map = {str(c): c for c in range(256)} wanted_symbols = {str(c) for c in range(128)} wanted_symbols = {str(c) for c in range(256)} ``` %% Cell type:code id: tags: ``` python # regex = "\nCSeq[ \t]*:([ \t]|(\r?\n( |\t)))*[0-9]+([ \t]|(\r?\n( |\t)))+INVITE[ \t]*\r?\n" # /(MAIL +FROM:[ \t]*<?([^\n\r \t]+)>?)([ \t]+[a-zA-Z0-9=]+)*[ \t]*\r?\n/si#0,A # /(.*\r?\n)?\* [0-9]+ FETCH [^\r\n]+\r?\n/si#2,A # /(RETR[ \t]+\d+)(\r)?\n$/si#4,A # /PORT (25[0-5]|2[0-4]\d|[0-1]?\d?\d),(25[0-5]|2[0-4]\d|[0-1]?\d?\d),(25[0-5]|2[0-4]\d|[0-1]?\d?\d),(25[0-5]|2[0-4]\d|[0-1]?\d?\d),(\d+),(\d+)\r?\n/si#6,7,A # /EPRT [!-~][1-2][!-~][0-9a-fA-F.:]+[!-~](\d+)[!-~]\r?\n/si#6,7,A # /EPSV( ([1-2]|ALL))?\r?\n/si#6,7,A # /(RCPT +TO:[ \t]*<?([^\n\r \t]+)>?)[ \t]*\r?\n/si#U |3A|[\f\n\r\t\v]*Basic[\f\n\r\t\v]+TERBUF9Bbm9ueW1vdXM6TGRhcFBhc3N3b3JkXzE\= # regex = "^.{3}\xFF[sS][mM][bB][sS]" # regex = "^A.{15}\x00\x01\x86\xA0" # regex = "\x3A.*s_sq\=aolsnssignin" # regex = "[^a]" # regex = "[\x00-\x5a\x5c-\x7F]" regex = "a$|b" regex = "\s" # with open("/home/notme/aligater/output/regex_test.re2", "r", encoding='utf-8') as f: # regex = f.readline().strip() codecs.decode(regex, 'unicode_escape') ``` %% Output 'a$|b' <>:16: SyntaxWarning: invalid escape sequence '\s' <>:16: SyntaxWarning: invalid escape sequence '\s' /tmp/ipykernel_811523/2189198587.py:16: SyntaxWarning: invalid escape sequence '\s' regex = "\s" %% Cell type:code id: tags: ``` python m_nfa = parser.from_regex(regex) m_nfa = parser.from_regex(regex, encoding="Latin-1") alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) # ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet)) # ext_nfa.remove_unused_symbols() # ext_nfa_wo_sym = ext_nfa.remove_symbols({str(c) for c in range(129, 256)}) # m_nfa = ali_parser.ext_nfa_to_mata_nfa(ext_nfa_wo_sym) # ali_parser.ext_nfa_to_vtf(ext_nfa, "/home/notme/aligater/output/test.mata", "comment") ``` %% Cell type:code id: tags: ``` python plot(m_nfa) ``` %% Output warning: missing alphabet necessary to translate the symbols %% Cell type:code id: tags: ``` python m_nfa ``` %% Output initial_states: [0] final_states: [1] transitions: 0-[98]→1 0-[9]→1 0-[10]→1 0-[12]→1 0-[13]→1 0-[32]→1 %% Cell type:code id: tags: ``` python assert False ``` %% Output --------------------------------------------------------------------------- AssertionError Traceback (most recent call last) Cell In[87], line 1 ----> 1 assert False AssertionError: %% Cell type:code id: tags: ``` python ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet), default_symbol_value = "129") print(ext_nfa.input_symbols) # ext_nfa.print() print(ext_nfa.input_symbols) ext_nfa_wo_sym = ext_nfa.remove_symbols(wanted_symbols) ext_nfa.remove_unused_symbols() ext_nfa_wo_sym.print() ``` %% Output {'107', '6', '242', '113', '156', '136', '29', '112', '189', '215', '158', '100', '179', '235', '78', '248', '236', '190', '33', '162', '86', '118', '10', '74', '187', '200', '212', '116', '245', '44', '249', '164', '230', '195', '221', '89', '58', '108', '140', '15', '225', '50', '211', '166', '55', '209', '2', '96', '82', '14', '12', '131', '206', '204', '161', '191', '103', '139', '143', '88', '148', '110', '133', '54', '150', '210', '234', '157', '56', '170', '181', '178', '65', '243', '81', '137', '36', '11', '231', '97', '196', '134', '174', '122', '173', '94', '125', '17', '129', '19', '135', '123', '71', '238', '121', '57', '69', '43', '186', '18', '244', '237', '130', '41', '16', '182', '52', '192', '132', '216', '152', '219', '227', '180', '251', '233', '126', '138', '104', '185', '26', '194', '47', '35', '120', '48', '250', '32', '7', '42', '83', '176', '99', '13', '67', '165', '252', '77', '84', '70', '101', '153', '27', '188', '102', '201', '246', '255', '49', '241', '117', '95', '168', '0', '160', '229', '226', '22', '193', '214', '175', '224', '3', '151', '154', '142', '98', '222', '66', '114', '172', '28', '124', '144', '167', '254', '115', '68', '205', '92', '37', '111', '141', '39', '8', '9', '146', '24', '30', '61', '60', '90', '213', '87', '85', '159', '40', '80', '21', '177', '239', '109', '64', '20', '76', '119', '199', '149', '223', '25', '62', '155', '127', '45', '207', '203', '106', '75', '51', '163', '169', '197', '253', '128', '228', '23', '171', '38', '183', '34', '184', '91', '72', '220', '1', '59', '105', '73', '218', '202', '147', '31', '46', '208', '217', '5', '247', '240', '145', '63', '4', '79', '198', '93', '232', '53'} {'107', '6', '242', '113', '156', '136', '29', '112', '189', '215', '158', '100', '179', '235', '78', '248', '236', '190', '33', '162', '86', '118', '10', '74', '187', '200', '212', '116', '245', '44', '249', '164', '230', '195', '221', '89', '58', '108', '140', '15', '225', '50', '211', '166', '55', '209', '2', '96', '82', '14', '12', '131', '206', '204', '161', '191', '103', '139', '143', '88', '148', '110', '133', '54', '150', '210', '234', '157', '56', '170', '181', '178', '65', '243', '81', '137', '36', '11', '231', '97', '196', '134', '174', '122', '173', '94', '125', '17', '129', '19', '135', '123', '71', '238', '121', '57', '69', '43', '186', '18', '244', '237', '130', '41', '16', '182', '52', '192', '132', '216', '152', '219', '227', '180', '251', '233', '126', '138', '104', '185', '26', '194', '47', '35', '120', '48', '250', '32', '7', '42', '83', '176', '99', '13', '67', '165', '252', '77', '84', '70', '101', '153', '27', '188', '102', '201', '246', '255', '49', '241', '117', '95', '168', '0', '160', '229', '226', '22', '193', '214', '175', '224', '3', '151', '154', '142', '98', '222', '66', '114', '172', '28', '124', '144', '167', '254', '115', '68', '205', '92', '37', '111', '141', '39', '8', '9', '146', '24', '30', '61', '60', '90', '213', '87', '85', '159', '40', '80', '21', '177', '239', '109', '64', '20', '76', '119', '199', '149', '223', '25', '62', '155', '127', '45', '207', '203', '106', '75', '51', '163', '169', '197', '253', '128', '228', '23', '171', '38', '183', '34', '184', '91', '72', '220', '1', '59', '105', '73', '218', '202', '147', '31', '46', '208', '217', '5', '247', '240', '145', '63', '4', '79', '198', '93', '232', '53'} states: {0, 1} input_symbols: {'107', '47', '6', '35', '120', '48', '113', '32', '7', '42', '29', '83', '112', '99', '13', '67', '100', '77', '78', '84', '70', '101', '27', '33', '86', '102', '118', '10', '74', '49', '117', '95', '0', '116', '22', '44', '3', '98', '89', '66', '114', '58', '28', '124', '108', '15', '50', '115', '68', '55', '2', '96', '82', '14', '12', '92', '37', '111', '39', '8', '9', '103', '24', '30', '61', '88', '60', '90', '87', '85', '110', '54', '40', '80', '21', '56', '109', '64', '20', '76', '119', '65', '81', '36', '11', '25', '62', '97', '127', '45', '122', '106', '94', '75', '51', '125', '17', '19', '123', '23', '38', '34', '71', '121', '57', '69', '43', '18', '91', '41', '72', '16', '52', '1', '59', '105', '73', '31', '46', '5', '63', '4', '79', '126', '104', '93', '26', '53'} transitions: {0: {'98': {1}}, 1: {}} initial_states: {0} final_states: {1} %% Cell type:code id: tags: ``` python import os directory = "/home/notme/nfa-bench/benchmarks/regexps" def analyze_file(file: str) -> tuple[int, set[str]]: print(file) with open(file, 'r') as infile: regexes = infile.readlines() all_bad_chars = set() sum = 0 for regex in regexes: regex = regex.strip() decoded_regex = codecs.decode(regex, 'unicode_escape', errors='ignore') bad_chars = list(filter(lambda ch: ch > chr(127), decoded_regex)) if len(bad_chars) >= 1: sum += 1 all_bad_chars.update(bad_chars) print(regex, list(bad_chars)) print(f"{sum} out of {len(regexes)} have non-ascii characters") print(f"all bad chars: {sorted(all_bad_chars)}") return sum, all_bad_chars def get_non_ascii_regexes(dest_dir): non_ascii = 0 all_bad_chars = set() for root, _, files in os.walk(dest_dir): for file in files: pcre_file_path = os.path.join(root, file) if file.endswith('.pcre'): sum, bad_chars = analyze_file(pcre_file_path) non_ascii += sum all_bad_chars.update(bad_chars) print(f"{non_ascii} non-ascii regexes in total") print(f"all bad chars: {len(all_bad_chars)} in total, {sorted(all_bad_chars)}") ``` %% Cell type:code id: tags: ``` python import warnings warnings.filterwarnings('ignore') directory = "/home/notme/nfa-bench/benchmarks/regexps" get_non_ascii_regexes(directory) ``` %% Output /home/notme/nfa-bench/benchmarks/regexps/ant/sprobe.pcre 0 out of 9 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-2604.pcre /^[^\n]*[\x80-\xFF].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80', 'ÿ'] /.*[\x00\x01]\x00\x09\x00.*\xff\xff\xff[\xff\xf7][\x36\x37]\x00/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', '÷'] /.*\x09\x08\x10\x00\x00[\x00\x01\x07-\xff]/sm ['ÿ'] /.*\xFC\x02[\x08\x06]\x00.{4}(\?!\x00\x00)/s ['ü'] /^\xfe\x37\x00\x23/m ['þ'] /.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/ ['ÿ', 'á', 'â', 'í', 'þ'] /^.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/sR ['ÿ', 'á', 'â', 'í', 'þ'] 7 out of 2604 have non-ascii characters all bad chars: ['\x80', 'á', 'â', 'í', '÷', 'ü', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-1400.pcre /.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\xE0\xC9\xEAy\xF9\xBA\xCE\x11\x8C\x82\x00\xAA\x00K\xA9\x0B/ ['à', 'É', 'ê', 'ù', 'º', 'Î', '\x8c', '\x82', 'ª', '©'] /.*\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\x90\x08\x003\xB1\xE5\xCF\x11\x89\xF4\x00\xA0\xC9\x03I\xCB/ ['\x90', '±', 'å', 'Ï', '\x89', 'ô', '\xa0', 'É', 'Ë'] /.*@R\xD1\x86\x1D1\xD0\x11\xA3\xA4\x00\xA0\xC9\x03H\xF6/ ['Ñ', '\x86', 'Ð', '£', '¤', '\xa0', 'É', 'ö'] /.*\x01\xCD\x87\xF4Q\xA9\xCF\x11\x8E\xE6\x00\xC0\x0C Se/ ['Í', '\x87', 'ô', '©', 'Ï', '\x8e', 'æ', 'À'] /.*\xD7\xCD\xC6\x9A/ ['×', 'Í', 'Æ', '\x9a'] /.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] 10 out of 1400 have non-ascii characters all bad chars: ['\x80', '\x82', '\x86', '\x87', '\x89', '\x8c', '\x8e', '\x90', '\x9a', '\x9d', '\xa0', '¡', '£', '¤', '©', 'ª', '±', '¸', '¹', 'º', '¿', 'À', 'Ã', 'Æ', 'É', 'Ë', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', '×', 'à', 'á', 'å', 'æ', 'ê', 'ë', 'ô', 'ö', '÷', 'ù', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/yang2010/ftp-95.pcre 0 out of 95 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-2612.pcre /^[^\n]*[\x80-\xFF].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80', 'ÿ'] /.*[\x00\x01]\x00\x09\x00.*\xff\xff\xff[\xff\xf7][\x36\x37]\x00/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', '÷'] /.*\x09\x08\x10\x00\x00[\x00\x01\x07-\xff]/sm ['ÿ'] /.*\xFC\x02[\x08\x06]\x00.{4}(\?!\x00\x00)/s ['ü'] /^\xfe\x37\x00\x23/m ['þ'] /.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/ ['ÿ', 'á', 'â', 'í', 'þ'] /^.*\xFF[\xE1\xE2\xED\xFE]\x00[\x00\x01]/sR ['ÿ', 'á', 'â', 'í', 'þ'] 7 out of 2612 have non-ascii characters all bad chars: ['\x80', 'á', 'â', 'í', '÷', 'ü', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/yang2010/ftp-98.pcre 0 out of 98 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/yang2010/http-1503.pcre /.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\xE0\xC9\xEAy\xF9\xBA\xCE\x11\x8C\x82\x00\xAA\x00K\xA9\x0B/ ['à', 'É', 'ê', 'ù', 'º', 'Î', '\x8c', '\x82', 'ª', '©'] /.*\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1/ ['Ð', 'Ï', 'à', '¡', '±', 'á'] /.*\x90\x08\x003\xB1\xE5\xCF\x11\x89\xF4\x00\xA0\xC9\x03I\xCB/ ['\x90', '±', 'å', 'Ï', '\x89', 'ô', '\xa0', 'É', 'Ë'] /.*@R\xD1\x86\x1D1\xD0\x11\xA3\xA4\x00\xA0\xC9\x03H\xF6/ ['Ñ', '\x86', 'Ð', '£', '¤', '\xa0', 'É', 'ö'] /.*\x01\xCD\x87\xF4Q\xA9\xCF\x11\x8E\xE6\x00\xC0\x0C Se/ ['Í', '\x87', 'ô', '©', 'Ï', '\x8e', 'æ', 'À'] /.*\xD7\xCD\xC6\x9A/ ['×', 'Í', 'Æ', '\x9a'] /.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /(.*[cC][oO][nN][tT][eE][nN][tT]-[dD][iI][sS][pP][oO][sS][iI][tT][iI][oO][nN]\x3A.*name=\x22\xCC\xCC\xCC\xCC\xCC)|(.*name=\x22\xCC\xCC\xCC\xCC\xCC.*[cC][oO][nN][tT][eE][nN][tT]-[dD][iI][sS][pP][oO][sS][iI][tT][iI][oO][nN]\x3A)/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /(.{1}\x01.{10}\x8F)|(.{10}\x8F.{1}\x01)/ ['\x8f', '\x8f'] /(.{1}\x01.{10}\x8F)|(.{10}\x8F.{1}\x01)/ ['\x8f', '\x8f'] 13 out of 1503 have non-ascii characters all bad chars: ['\x80', '\x82', '\x86', '\x87', '\x89', '\x8c', '\x8e', '\x8f', '\x90', '\x9a', '\x9d', '\xa0', '¡', '£', '¤', '©', 'ª', '±', '¸', '¹', 'º', '¿', 'À', 'Ã', 'Æ', 'É', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', '×', 'à', 'á', 'å', 'æ', 'ê', 'ë', 'ô', 'ö', '÷', 'ù', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.pcre /^.{0,114}\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.{0,16}\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa/ ['ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª'] /^.*08\x02\x01\x00\x04\x06public\xA4\+\x06/ ['¤'] /^.*0&\x02\x01\x00\x04\x06public\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x000\x0E0\x0C\x06\x08\+\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['\xa0', 'À'] /^.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.{10}\x8F/ ['\x8f'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA2.{4}\x00\x00\x00\x02/ ['\x86', '¢'] /^.{11}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{11}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{11}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{11}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{13}.*\x00\x00\xFC/ ['ü'] /^.{14}.*\x00\x00\xFC/ ['ü'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{15}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{15}\x00\x01\x87\}.*.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x7D.*.{0}.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{15}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{15}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{199}\xFF\xF6\xFF\xF6\xFF\xFB\x08\xFF\xF6/ ['ÿ', 'ö', 'ÿ', 'ö', 'ÿ', 'û', 'ÿ', 'ö'] /^.*1\xC0\xB0\?1\xDB\xB3\xFF1\xC9\xCD\x801\xC0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*1\xC0\xB0\x02\xCD\x80\x85\xC0uL\xEBL\^\xB0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.{3}.*\x02\x01\x00\x04\x82\x01\x00/ ['\x82'] /^.*3\xC9\xB1\x10\?\xE9\x06Q<\xFAG3\xC0P\xF7\xD0P/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.{3}\xFFSMB%/ ['ÿ'] /^.{3}\xFFSMB2/ ['ÿ'] /^.{3}\xFFSMB2.*.*[dD][oO][cC][uU][mM][eE][nN][tT][sS] [aA][nN][dD] [sS][eE][tT][tT][iI][nN][gG][sS]\x5C[aA][lL][lL] [uU][sS][eE][rR][sS]\x5C[sS][tT][aA][rR][tT] [mM][eE][nN][uU]\x5C[pP][rR][oO][gG][rR][aA][mM][sS]\x5C[sS][tT][aA][rR][tT][uU][pP]\x00/ ['ÿ'] /^.{3}\xFFSMB2.*.*\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00 \x00[mM]\x00[eE]\x00[nN]\x00[uU]\x00\x5C\x00[pP]\x00[rR]\x00[oO]\x00[gG]\x00[rR]\x00[aA]\x00[mM]\x00[sS]\x00\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00[uU]\x00[pP]/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA][dD][mM][iI][nN]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA]\x00[dD]\x00[mM]\x00[iI]\x00[nN]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI][pP][cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI]\x00[pP]\x00[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMB\x25/ ['ÿ'] /^.{3}\xffSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x75/ ['ÿ'] /^.{3}\xFFSMB\xa2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C[wW][iI][nN][rR][eE][gG]\x00/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C\x00[wW]\x00[iI]\x00[nN]\x00[rR]\x00[eE]\x00[gG]\x00\x00\x00/ ['ÿ', '¢'] /^.{3}\xFF[sS][mM][bB]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5CPIPE\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C[pP][iI][pP][eE]\x5C\x00\x05\x00\x0B.{29}\x01\xD0\x8C3D\x22\xF11\xAA\xAA\x90\x008\x00\x10\x03/ ['ÿ', 'Ð', '\x8c', 'ñ', 'ª', 'ª', '\x90'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00.{2}\x05.{1}\x0B.{21}\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x00\x18/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x18\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x04\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x00\x00\x05\x00\x0B.{29}xV4\x124\x12\xCD\xAB\xEF\x00\x01\x23Eg\x89\xAB/ ['ÿ', 'Í', '«', 'ï', '\x89', '«'] /^.{3}\xFF[sS][mM][bB].{59}.*\x05.{1}\x00.{19}\x09\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{42}\x00\x00\x00\x00.{10}[^\x00]{255}/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{56}.*\x00.{255}.*\x00\x00.*.*\x00\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{2}\x05.{1}\x0b.{21}\x00/ ['ÿ'] /^.{4}\xe0\x00\x00\x00\x00\x00/ ['à'] /^.{4}\xE0\x00\x00\x00\x00\x00/ ['à'] /^.{62}`.{1}\x00\x00\x00b\x06\x83\x00\x00\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA3>0<\xA00/ ['\x83', '\x82', '£', '\xa0'] /^.{62}`.{1}\x06\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA1\x05\x23\x03\x03\x01\x07/ ['\x82', '¡'] /^.{6} \x04\x82\x01\x00/ ['\x82'] /^.{7}\xFF\xFF\xFF\xFF\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*9 \xD0\x00\x92\x01\xC2\x00R\x00U\x009 \xEC\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*C\x07\x89\[\x08\x8DK\x08\x89C\x0C\xB0\x0B\xCD\x801\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\/bin\/sh\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^.*[fF][rR][oO][mM]\x3A\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*G\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1F/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*H\x00%\x00x\x00w\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x003\x00\xC0\x00P\x00h\x00\.\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*h\]\^\xFF\xD5\xFF\xD4\xFF\xF5\x8B\xF5\x90f1/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*name=\x22\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*name=\"\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82/ ['ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82'] /^.*q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*q\xFB\{\xABq\xFB\{\xABq\xFB\{\xABq\xFB\{\xAB/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*V\x0E1\xC0\xB0\x3B\x8D~\x12\x89\xF9\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x00\x00\x03\xe7\x00\x00\x00\x00\x00\x00\x00\x65\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x05\x00\x00\x00\x00\x00\x00\x00/ ['ç'] /^.*\x00\x01\x87\x86\x00\x00\x00\x01\x00\x00\x00\x05/ ['\x87', '\x86'] /^.*\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08/ ['À', 'À', 'À', 'À'] /^.*\x011\xDB\xCD\x80\xE8\[\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xe8/ ['è'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xE8/ ['è'] /^.*\x01\x31\xDB\xCD\x80\xE8\x5B\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x9A\x8C\x66\xAF\xC0\x4A\x11\x9E\x3F\x40\x88\x12\x2C\x3A\x4A\x84\x65\x38\xB0\xB4\x08\x0B\xAF\xDB\xCE\x02\x94\x34\x5F\x22\x00*./ ['\x9a', '\x8c', '¯', 'À', '\x9e', '\x88', '\x84', '°', '´', '¯', 'Û', 'Î', '\x94'] /^.*\x01\xFE\x3C\x6C\x6A\xFF\x99\xA8\x34\x83\x38\x24\xA1\xA4\xF2\x11\x5A\xD3\x18\x8D\xBC\xC4\x3E\x40\x07\xA4\x28\xD4\x18\x48\xFE\x00*./ ['þ', 'ÿ', '\x99', '¨', '\x83', '¡', '¤', 'ò', 'Ó', '\x8d', '¼', 'Ä', '¤', 'Ô', 'þ'] /^\x03\x00\x00\x0b\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^\x03\x00\x00\x0B\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^.*\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%/ ['à', 'ø', 'à', 'ø', 'à', 'ø', 'à', 'ø'] /^\x04\x00.{22}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\x05.{1}\x0B.{29}j\x28\x199\x0C\xB1\xD0\x11\x9B\xA8\x00\xC0O\xD9\.\xF5/ ['±', 'Ð', '\x9b', '¨', 'À', 'Ù', 'õ'] /^\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['\xa0', 'À'] /^\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.*\x05\x00.{5}\xDE\x03/ ['Þ'] /^\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\+\x06\x10@\x14\xD1\x02\x19/ ['Ñ'] /^.*\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80root\x00/ ['\x85', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80\x72\x6F\x6F\x74\x00/ ['\x85', '\x80'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD&/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD\x26/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\^\x0E1\xC0\xB0\x3B\x8D~\x0E\x89\xFA\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ú', '\x89', 'ù'] /^.*\x12\xc4\xf6\x62\x55\xe6\x36\xbd\xe4\x65\xbc\x24\xbe\xb0\x50\xac\xe0\xef\x9a\x4f/ ['Ä', 'ö', 'æ', '½', 'ä', '¼', '¾', '°', '¬', 'à', 'ï', '\x9a'] /^.*\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6/ ['À', '¦', 'À', '¦', 'À', '¦', 'À', '¦'] /^.*\x2b\x06\x10\x40\x14\xd1\x02\x19/ ['Ñ'] /^.*\x30\x26\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x00\x30\x0E\x30\x0C\x06\x08\x2B\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.*\x30\x38\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA4\x2B\x06/ ['¤'] /^.*\x31\xc0\xb0\x02\xcd\x80\x85\xc0\x75\x4c\xeb\x4c\x5e\xb0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.*\x31\xc0\xb0\x3f\x31\xdb\xb3\xff\x31\xc9\xcd\x80\x31\xc0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*\x33\xC9\xB1\x10\x3F\xE9\x06\x51\x3C\xFA\x47\x33\xC0\x50\xF7\xD0\x50/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.*\x39\x20\xd0\x00\x92\x01\xc2\x00\x52\x00\x55\x00\x39\x20\xec\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*\x40\x8A\xFF\xC8\x40\x82\xFF\xD8\x3B\x36\xFE\x03\x3B\x76\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x43\x07\x89\x5B\x08\x8D\x4B\x08\x89\x43\x0C\xB0\x0B\xCD\x80\x31\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\x2F\x62\x69\x6E\x2F\x73\x68\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^\x45\x2e\xe5\x01\x80\xb0\x0a\xca\xdb\x16\xa1\x8f\xc6\xcd\x97\x60\x92\x44\x93\x16/ ['å', '\x80', '°', 'Ê', 'Û', '¡', '\x8f', 'Æ', 'Í', '\x97', '\x92', '\x93'] /^.*\x48\x00\x25\x00\x78\x00\x77\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x33\x00\xc0\x00\x50\x00\x68\x00\x2e\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*\x4b\x56\xde\x0c\x47\xbf\x12\x9f\xc7\x24\x40\x64\x5c\xfd\xa8\x2b\xaf\x3f\x09\xc7/ ['Þ', '¿', '\x9f', 'Ç', 'ý', '¨', '¯', 'Ç'] /^.*\x56\x0e\x31\xc0\xb0\x3b\x8d\x7e\x12\x89\xf9\x89\xf9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x5C\x00\x5C\x00\*\x00S\x00M\x00B\x00S\x00E\x00R\x00V\x00E\x00R\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5C\x00\x5C\x00\x2A\x00\x53\x00\x4D\x00\x42\x00\x53\x00\x45\x00\x52\x00\x56\x00\x45\x00\x52\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5e\xb0\x02\x89\x06\xfe\xc8\x89\x46\x04\xb0\x06\x89\x46/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\x68\x5d\x5e\xff\xd5\xff\xd4\xff\xf5\x8b\xf5\x90\x66\x31/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*\x7c\x83\x3b\x3f\x8a\x80\x59\xbf\x45\xbd\x5f\xf2\xa3\xc9\x36\x85\xa9\xd1\x15\xc3/ ['\x83', '\x8a', '\x80', '¿', '½', 'ò', '£', 'É', '\x85', '©', 'Ñ', 'Ã'] /^.*\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\?\x00\x01\x02/ ['\x80'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\x3F\x00\x01\x02/ ['\x80'] /^\x80\x02.{4}.*\x02/ ['\x80'] /^.*\x80\x07\x00\x00\x07\x00\x00\x04\x00\x00\x00\x00\x00/ ['\x80'] /^.*\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x81', '\x80'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xf1\x03\x01\x04\x9b\x81\xf1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x82\x10 \x17\x91\xD0 \x08/ ['\x82', '\x91', 'Ð'] /^^\x85\x13<\x9E\xA2/ ['\x85', '\x9e', '¢'] /^.*\x85\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x85', '\x80'] /^.*\x89\xf7\x29\xc7\x89\xf3\x89\xf9\x89\xf2\xac\x3c\xfe/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*\x89\xF7\x29\xC7\x89\xF3\x89\xF9\x89\xF2\xAC<\xFE/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*@\x8A\xFF\xC8@\x82\xFF\xD8\x3B6\xFE\x03\x3Bv\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x1A\xC0\x0F\x90\x02 \x08\x92\x02 \x0F\xD0\x23\xBF\xF8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x1a\xc0\x0f\x90\x02\x20\x08\x92\x02\x20\x0f\xd0\x23\xbf\xf8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x90\x90\xE8\xC0\xFF\xFF\xFF\/bin\/sh/ ['\x90', '\x90', '\x90', 'è', 'À', 'ÿ', 'ÿ', 'ÿ'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90\x25\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90%\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13/ ['¦', 'À', '¦', 'À', '¦', 'À', '¦', 'À'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01 \x02a/ ['«', 'Í', '\x80'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01\x20\x20\x20\x20\x02\x61/ ['«', 'Í', '\x80'] /^.*\^\xB0\x02\x89\x06\xFE\xC8\x89F\x04\xB0\x06\x89F/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\xB0\xB5\xCD\x80/ ['°', 'µ', 'Í', '\x80'] /^.*\xb4\x20\xb4\x21\x8b\xcc\x83\xe9\x04\x8b\x19\x33\xc9\x66\xb9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xB4\xB4/ ['´', '´'] /^.*\xB4 \xB4!\x8B\xCC\x83\xE9\x04\x8B\x193\xC9f\xB9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xba\x49\xfe\xff\xff\xf7\xd2\xb9\xbf\xff\xff\xff\xf7\xd1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^.*\xC0\x0C\x00\x01\x00\x01\x00\x00\x00<\x00\x04/ ['À'] /^.*\xc0\x0c\x00\x01\x00\x01\x00\x00\x00\x3c\x00\x04/ ['À'] /^.*\xC0\x0C\x00\x0C\x00\x01\x00\x00\x00<\x00\x0F/ ['À'] /^.*\xc0\x0c\x00\x0c\x00\x01\x00\x00\x00\x3c\x00\x0f/ ['À'] /^.*\xC0\x50\x52\x89\xE1\x50\x51\x52\x50\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^\xc9\xe9\x36\xa1\xce\xae\x10\x3c\x32\x81\xac\x9b\x01\x81\x5a\x68\x01\x91\x82\xa4/ ['É', 'é', '¡', 'Î', '®', '\x81', '¬', '\x9b', '\x81', '\x91', '\x82', '¤'] /^.*\xCD\x80\xE8\xD7\xFF\xFF\xFF\/bin\/sh/ ['Í', '\x80', 'è', '×', 'ÿ', 'ÿ', 'ÿ'] /^.*\xd1\xe4\x22\x07\x57\xd3\xa9\x9a\x5a\xd5\xcc\xc7\x9d\xa1\xd5\xc5\xa6\xf1\x6d\x57/ ['Ñ', 'ä', 'Ó', '©', '\x9a', 'Õ', 'Ì', 'Ç', '\x9d', '¡', 'Õ', 'Å', '¦', 'ñ'] /^.*\xd2\x9b\xec\xe0\x8c\x09\x28\xcb\x05\x60\x1b\xc5\x59\x34\xab\xbd\x56\xd6\x78\xaa/ ['Ò', '\x9b', 'ì', 'à', '\x8c', 'Ë', 'Å', '«', '½', 'Ö', 'ª'] /^.*\xd8\x40\xcd\x80\xe8\xd9\xff\xff\xff\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xD8@\xCD\x80\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xdd\xbd\x4c\x7b\x35\x9a\x89\x88\xf0\x0d\xa8\xf1\x44\x67\x7b\xcd\x18\xf0\xe6\x70/ ['Ý', '½', '\x9a', '\x89', '\x88', 'ð', '¨', 'ñ', 'Í', 'ð', 'æ'] /^\xe1\xac\x20\x5a\xda\x5a\xf7\x0c\x17\x24\x8e\xc2\x0e\xa0\x0b\xee\x7a\x77\xe0\x64/ ['á', '¬', 'Ú', '÷', '\x8e', 'Â', '\xa0', 'î', 'à'] /^.*\xe7\xa7\x74\xb8\xb9\xfe\x9a\x6e\x6c\xe1\xd5\xde\x5f\x5c\xd5\x9d\x49\x69\x9a\xba/ ['ç', '§', '¸', '¹', 'þ', '\x9a', 'á', 'Õ', 'Þ', 'Õ', '\x9d', '\x9a', 'º'] /^.*\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xEB@\^1\xC0@\x89F\x04\x89\xC3@\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xEBE\xEB \[\xFC3\xC9\xB1\x82\x8B\xF3\x80\+/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xEBK\[S2\xE4\x83\xC3\x0BK\x88\x23\xB8Pw/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xEBn\^\xC6\x06\x9A1\xC9\x89N\x01\xC6F\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xEBV\^VVV1\xD2\x88V\x0B\x88V\x1E/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xEB\x02\xEB\x02\xEB\x02/ ['ë', 'ë', 'ë'] /^.*\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C/ ['ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë'] /^.*\xEB\x23\^3\xC0\x88F\xFA\x89F\xF5\x896/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x23\x5e\x33\xc0\x88\x46\xfa\x89\x46\xf5\x89\x36/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x2c\x5b\x89\xd9\x80\xc1\x06\x39\xd9\x7c\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xeb\x2f\x5f\xeb\x4a\x5e\x89\xfb\x89\x3e\x89\xf2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xeb\x40\x5E\x31\xc0\x40\x89\x46\x04\x89\xc3\x40\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xeb\x45\xeb\x20\x5b\xfc\x33\xc9\xb1\x82\x8b\xf3\x80\x2b/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xeb\x4b\x5b\x53\x32\xe4\x83\xc3\x0b\x4b\x88\x23\xb8\x50\x77/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xeb\x56\x5E\x56\x56\x56\x31\xd2\x88\x56\x0b\x88\x56\x1e/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xeb\x5f\x9a\xff\xff\xff\xff\x07\xff\xc3\x5e\x31\xc0\x89\x46\x9d/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xeb\x6e\x5e\xc6\x06\x9a\x31\xc9\x89\x4e\x01\xc6\x46\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xeb\x7f\x5d\x55\xfe\x4d\x98\xfe\x4d\x9b/ ['ë', 'þ', '\x98', 'þ', '\x9b'] /^.*\xEB,\[\x89\xD9\x80\xC1\x069\xD9\x7C\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xEB\/_\xEBJ\^\x89\xFB\x89>\x89\xF2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xff\xf3\xff\xf3\xff\xf3\xff\xf3\xff\xf3/ ['ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó'] /^.*\xff\xf4\xff\xfd\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xF4\xFF\xFD\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xFD\x18\xFF\xFD\x1F\xFF\xFD\x23\xFF\xFD\x27\xFF\xFD\x24/ ['ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý'] /^.*\xFF\xFFKADM0\.0A\x00\x00\xFB\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xff\xff\x4b\x41\x44\x4d\x30\x2e\x30\x41\x00\x00\xfb\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xFF\xFF\xFF\/BIN\/SH\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\x2f\x42\x49\x4e\x2f\x53\x48\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xFF\xFF\xFF\xFF\xFF\xFF/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] 333 out of 1400 have non-ascii characters all bad chars: ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '®', '¯', '°', '±', '³', '´', 'µ', '¸', '¹', 'º', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ý', 'Þ', 'à', 'á', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ë', 'ì', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/L7/all.pcre /^(\x45\x5f\xd0\xd5|\x45\x5f.*0.60(6|8)W)/ ['Ð', 'Õ'] /^\x01\x11\x10\|\xf8\x02\x10\x40\x06/ ['ø'] /^(\x11\x20\x01...?\x11|\xfe\xfd.?.?.?.?.?.?(\x14\x01\x06|\xff\xff\xff))|[\]\x01].?battlefield2/ ['þ', 'ý', 'ÿ', 'ÿ', 'ÿ'] /^(\x11\x20\x01\x90\x50\x64\x10|\xfe\xfd.?.?.?\x18|[\x01\\].?battlefield2)/ ['\x90', 'þ', 'ý'] /^\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff..?\x01[\x03\x04]/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\x01\xf4\x01\xf4/ ['ô', 'ô'] /\x32\x26\x85\x92\x58/ ['\x85', '\x92'] /^\xff\xff\xff\xff.*cstrikeCounter-Strike/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xff\xff\xff\xff.*dodDay of Defeat/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^[\x01\x02][\x01- ]\x06.*c\x82sc/ ['\x82'] /^.?.?.?.?[\x01\x02].?.?.?.?.?.?[\x01-?][a-z0-9][\x01-?a-z]*[\x02-\x06][a-z][a-z][fglmoprstuvz]?[aeop]?(um)?[\x01-\x10\x1c][\x01\x03\x04\xFF]/ ['ÿ'] /^\xff\xffchallenge/ ['ÿ', 'ÿ'] /^[\xc5\xd4\xe3-\xe5].?.?.?.?([\x01\x02\x05\x14\x15\x16\x18\x19\x1a\x1b\x1c\x20\x21\x32\x33\x34\x35\x36\x38\x40\x41\x42\x43\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58[\x60\x81\x82\x90\x91\x93\x96\x97\x98\x99\x9a\x9b\x9c\x9e\xa0\xa1\xa2\xa3\xa4]|\x59................?[ -~]|\x96....$)/ ['Å', 'Ô', 'ã', 'å', '\x81', '\x82', '\x90', '\x91', '\x93', '\x96', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9e', '\xa0', '¡', '¢', '£', '¤', '\x96'] /\x4d\x5a(\x90\x03|\x50\x02)\x04/ ['\x90'] /^\xff\xff\xff\xff.*hl2mpDeathmatch/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^(post[\x09-\x0d -~]*<PasswordHash>................................<\/PasswordHash><ClientVer>|\x34\x80?\x0d?\xfc\xff\x04|get[\x09-\x0d -~]*Host: imsh\.download-prod\.musicnet\.com|\x02[\x01\x02]\x83.*\x02[\x01\x02]\x83)/ ['\x80', 'ü', 'ÿ', '\x83', '\x83'] /\xff\xd8/ ['ÿ', 'Ø'] /^\xff\xff\xff\xffgetstatus\x0a/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /\x81.?.?.[A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P][A-P]/ ['\x81'] /GET (\/scripts\/root\.exe\?\/c\+dir|\/MSADC\/root\.exe\?\/c\+dir|\/c\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/d\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/_vti_bin\/\.\.%5c\.\.\/\.\.%5c\.\.\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/_mem_bin\/\.\.%5c\.\.\/\.\.%5c\.\.\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/msadc\/\.\.%5c\.\.\/\.\.%5c\.\.\/\.\.%5c\/\.\.\xc1\x1c\.\.\/\.\.\xc1\x1c\.\.\/\.\.\xc1\x1c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc1\x1c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc0\/\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc0\xaf\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.\xc1\x9c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%35c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%35c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%5c\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir|\/scripts\/\.\.%2f\.\.\/winnt\/system32\/cmd\.exe\?\/c\+dir)/ ['Á', 'Á', 'Á', 'Á', 'À', 'À', '¯', 'Á', '\x9c'] /^([\x13\x1b\x23\xd3\xdb\xe3]|[\x14\x1c$].......?.?.?.?.?.?.?.?.?[\xc6-\xff])/ ['Ó', 'Û', 'ã', 'Æ', 'ÿ'] /\x89PNG\x0d\x0a\x1a\x0a/ ['\x89'] /^\x80\x94\x0a\x01....\x1f\x9e/ ['\x80', '\x94', '\x9e'] /\x01...\xd3.+\x0c.$/ ['Ó'] /^\xff\xff\xff\xffget(info|challenge)/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\x80\x0c\x01quake\x03/ ['\x80'] /\xed\xab\xee\xdb.?.?.?.?[1-7]/ ['í', '«', 'î', 'Û'] /^\x80[\x01-"`-\x7f\x80-\xa2\xe0-\xff]?..........*\x80/ ['\x80', '\x80', '¢', 'à', 'ÿ', '\x80'] # /^(\x01.?.?.?.?.?.?.?.?\x01|\x02.?.?.?.?.?.?.?.?\x02|\x03.?.?.?.?.?.?.?.?\x03|\x04.?.?.?.?.?.?.?.?\x04|\x05.?.?.?.?.?.?.?.?\x05|\x06.?.?.?.?.?.?.?.?\x06|\x07.?.?.?.?.?.?.?.?\x07|\x08.?.?.?.?.?.?.?.?\x08|\x09.?.?.?.?.?.?.?.?\x09|\x0a.?.?.?.?.?.?.?.?\x0a|\x0b.?.?.?.?.?.?.?.?\x0b|\x0c.?.?.?.?.?.?.?.?\x0c|\x0d.?.?.?.?.?.?.?.?\x0d|\x0e.?.?.?.?.?.?.?.?\x0e|\x0f.?.?.?.?.?.?.?.?\x0f|\x10.?.?.?.?.?.?.?.?\x10|\x11.?.?.?.?.?.?.?.?\x11|\x12.?.?.?.?.?.?.?.?\x12|\x13.?.?.?.?.?.?.?.?\x13|\x14.?.?.?.?.?.?.?.?\x14|\x15.?.?.?.?.?.?.?.?\x15|\x16.?.?.?.?.?.?.?.?\x16|\x17.?.?.?.?.?.?.?.?\x17|\x18.?.?.?.?.?.?.?.?\x18|\x19.?.?.?.?.?.?.?.?\x19|\x1a.?.?.?.?.?.?.?.?\x1a|\x1b.?.?.?.?.?.?.?.?\x1b|\x1c.?.?.?.?.?.?.?.?\x1c|\x1d.?.?.?.?.?.?.?.?\x1d|\x1e.?.?.?.?.?.?.?.?\x1e|\x1f.?.?.?.?.?.?.?.?\x1f|\x20.?.?.?.?.?.?.?.?\x20|\x21.?.?.?.?.?.?.?.?\x21|\x22.?.?.?.?.?.?.?.?\x22|\x23.?.?.?.?.?.?.?.?\x23|\$.?.?.?.?.?.?.?.?\$|\x25.?.?.?.?.?.?.?.?\x25|\x26.?.?.?.?.?.?.?.?\x26|\x27.?.?.?.?.?.?.?.?\x27|\(.?.?.?.?.?.?.?.?\(|\).?.?.?.?.?.?.?.?\)|\*.?.?.?.?.?.?.?.?\*|\+.?.?.?.?.?.?.?.?\+|\x2c.?.?.?.?.?.?.?.?\x2c|\x2d.?.?.?.?.?.?.?.?\x2d|\..?.?.?.?.?.?.?.?\.|\x2f.?.?.?.?.?.?.?.?\x2f|\x30.?.?.?.?.?.?.?.?\x30|\x31.?.?.?.?.?.?.?.?\x31|\x32.?.?.?.?.?.?.?.?\x32|\x33.?.?.?.?.?.?.?.?\x33|\x34.?.?.?.?.?.?.?.?\x34|\x35.?.?.?.?.?.?.?.?\x35|\x36.?.?.?.?.?.?.?.?\x36|\x37.?.?.?.?.?.?.?.?\x37|\x38.?.?.?.?.?.?.?.?\x38|\x39.?.?.?.?.?.?.?.?\x39|\x3a.?.?.?.?.?.?.?.?\x3a|\x3b.?.?.?.?.?.?.?.?\x3b|\x3c.?.?.?.?.?.?.?.?\x3c|\x3d.?.?.?.?.?.?.?.?\x3d|\x3e.?.?.?.?.?.?.?.?\x3e|\?.?.?.?.?.?.?.?.?\?|\x40.?.?.?.?.?.?.?.?\x40|\x41.?.?.?.?.?.?.?.?\x41|\x42.?.?.?.?.?.?.?.?\x42|\x43.?.?.?.?.?.?.?.?\x43|\x44.?.?.?.?.?.?.?.?\x44|\x45.?.?.?.?.?.?.?.?\x45|\x46.?.?.?.?.?.?.?.?\x46|\x47.?.?.?.?.?.?.?.?\x47|\x48.?.?.?.?.?.?.?.?\x48|\x49.?.?.?.?.?.?.?.?\x49|\x4a.?.?.?.?.?.?.?.?\x4a|\x4b.?.?.?.?.?.?.?.?\x4b|\x4c.?.?.?.?.?.?.?.?\x4c|\x4d.?.?.?.?.?.?.?.?\x4d|\x4e.?.?.?.?.?.?.?.?\x4e|\x4f.?.?.?.?.?.?.?.?\x4f|\x50.?.?.?.?.?.?.?.?\x50|\x51.?.?.?.?.?.?.?.?\x51|\x52.?.?.?.?.?.?.?.?\x52|\x53.?.?.?.?.?.?.?.?\x53|\x54.?.?.?.?.?.?.?.?\x54|\x55.?.?.?.?.?.?.?.?\x55|\x56.?.?.?.?.?.?.?.?\x56|\x57.?.?.?.?.?.?.?.?\x57|\x58.?.?.?.?.?.?.?.?\x58|\x59.?.?.?.?.?.?.?.?\x59|\x5a.?.?.?.?.?.?.?.?\x5a|\[.?.?.?.?.?.?.?.?\[|\\.?.?.?.?.?.?.?.?\\|\].?.?.?.?.?.?.?.?\]|\^.?.?.?.?.?.?.?.?\^|\x5f.?.?.?.?.?.?.?.?\x5f|\x60.?.?.?.?.?.?.?.?\x60|\x61.?.?.?.?.?.?.?.?\x61|\x62.?.?.?.?.?.?.?.?\x62|\x63.?.?.?.?.?.?.?.?\x63|\x64.?.?.?.?.?.?.?.?\x64|\x65.?.?.?.?.?.?.?.?\x65|\x66.?.?.?.?.?.?.?.?\x66|\x67.?.?.?.?.?.?.?.?\x67|\x68.?.?.?.?.?.?.?.?\x68|\x69.?.?.?.?.?.?.?.?\x69|\x6a.?.?.?.?.?.?.?.?\x6a|\x6b.?.?.?.?.?.?.?.?\x6b|\x6c.?.?.?.?.?.?.?.?\x6c|\x6d.?.?.?.?.?.?.?.?\x6d|\x6e.?.?.?.?.?.?.?.?\x6e|\x6f.?.?.?.?.?.?.?.?\x6f|\x70.?.?.?.?.?.?.?.?\x70|\x71.?.?.?.?.?.?.?.?\x71|\x72.?.?.?.?.?.?.?.?\x72|\x73.?.?.?.?.?.?.?.?\x73|\x74.?.?.?.?.?.?.?.?\x74|\x75.?.?.?.?.?.?.?.?\x75|\x76.?.?.?.?.?.?.?.?\x76|\x77.?.?.?.?.?.?.?.?\x77|\x78.?.?.?.?.?.?.?.?\x78|\x79.?.?.?.?.?.?.?.?\x79|\x7a.?.?.?.?.?.?.?.?\x7a|\{.?.?.?.?.?.?.?.?\{|\|.?.?.?.?.?.?.?.?\||\}.?.?.?.?.?.?.?.?\}|\x7e.?.?.?.?.?.?.?.?\x7e|\x7f.?.?.?.?.?.?.?.?\x7f|\x80.?.?.?.?.?.?.?.?\x80|\x81.?.?.?.?.?.?.?.?\x81|\x82.?.?.?.?.?.?.?.?\x82|\x83.?.?.?.?.?.?.?.?\x83|\x84.?.?.?.?.?.?.?.?\x84|\x85.?.?.?.?.?.?.?.?\x85|\x86.?.?.?.?.?.?.?.?\x86|\x87.?.?.?.?.?.?.?.?\x87|\x88.?.?.?.?.?.?.?.?\x88|\x89.?.?.?.?.?.?.?.?\x89|\x8a.?.?.?.?.?.?.?.?\x8a|\x8b.?.?.?.?.?.?.?.?\x8b|\x8c.?.?.?.?.?.?.?.?\x8c|\x8d.?.?.?.?.?.?.?.?\x8d|\x8e.?.?.?.?.?.?.?.?\x8e|\x8f.?.?.?.?.?.?.?.?\x8f|\x90.?.?.?.?.?.?.?.?\x90|\x91.?.?.?.?.?.?.?.?\x91|\x92.?.?.?.?.?.?.?.?\x92|\x93.?.?.?.?.?.?.?.?\x93|\x94.?.?.?.?.?.?.?.?\x94|\x95.?.?.?.?.?.?.?.?\x95|\x96.?.?.?.?.?.?.?.?\x96|\x97.?.?.?.?.?.?.?.?\x97|\x98.?.?.?.?.?.?.?.?\x98|\x99.?.?.?.?.?.?.?.?\x99|\x9a.?.?.?.?.?.?.?.?\x9a|\x9b.?.?.?.?.?.?.?.?\x9b|\x9c.?.?.?.?.?.?.?.?\x9c|\x9d.?.?.?.?.?.?.?.?\x9d|\x9e.?.?.?.?.?.?.?.?\x9e|\x9f.?.?.?.?.?.?.?.?\x9f|\xa0.?.?.?.?.?.?.?.?\xa0|\xa1.?.?.?.?.?.?.?.?\xa1|\xa2.?.?.?.?.?.?.?.?\xa2|\xa3.?.?.?.?.?.?.?.?\xa3|\xa4.?.?.?.?.?.?.?.?\xa4|\xa5.?.?.?.?.?.?.?.?\xa5|\xa6.?.?.?.?.?.?.?.?\xa6|\xa7.?.?.?.?.?.?.?.?\xa7|\xa8.?.?.?.?.?.?.?.?\xa8|\xa9.?.?.?.?.?.?.?.?\xa9|\xaa.?.?.?.?.?.?.?.?\xaa|\xab.?.?.?.?.?.?.?.?\xab|\xac.?.?.?.?.?.?.?.?\xac|\xad.?.?.?.?.?.?.?.?\xad|\xae.?.?.?.?.?.?.?.?\xae|\xaf.?.?.?.?.?.?.?.?\xaf|\xb0.?.?.?.?.?.?.?.?\xb0|\xb1.?.?.?.?.?.?.?.?\xb1|\xb2.?.?.?.?.?.?.?.?\xb2|\xb3.?.?.?.?.?.?.?.?\xb3|\xb4.?.?.?.?.?.?.?.?\xb4|\xb5.?.?.?.?.?.?.?.?\xb5|\xb6.?.?.?.?.?.?.?.?\xb6|\xb7.?.?.?.?.?.?.?.?\xb7|\xb8.?.?.?.?.?.?.?.?\xb8|\xb9.?.?.?.?.?.?.?.?\xb9|\xba.?.?.?.?.?.?.?.?\xba|\xbb.?.?.?.?.?.?.?.?\xbb|\xbc.?.?.?.?.?.?.?.?\xbc|\xbd.?.?.?.?.?.?.?.?\xbd|\xbe.?.?.?.?.?.?.?.?\xbe|\xbf.?.?.?.?.?.?.?.?\xbf|\xc0.?.?.?.?.?.?.?.?\xc0|\xc1.?.?.?.?.?.?.?.?\xc1|\xc2.?.?.?.?.?.?.?.?\xc2|\xc3.?.?.?.?.?.?.?.?\xc3|\xc4.?.?.?.?.?.?.?.?\xc4|\xc5.?.?.?.?.?.?.?.?\xc5|\xc6.?.?.?.?.?.?.?.?\xc6|\xc7.?.?.?.?.?.?.?.?\xc7|\xc8.?.?.?.?.?.?.?.?\xc8|\xc9.?.?.?.?.?.?.?.?\xc9|\xca.?.?.?.?.?.?.?.?\xca|\xcb.?.?.?.?.?.?.?.?\xcb|\xcc.?.?.?.?.?.?.?.?\xcc|\xcd.?.?.?.?.?.?.?.?\xcd|\xce.?.?.?.?.?.?.?.?\xce|\xcf.?.?.?.?.?.?.?.?\xcf|\xd0.?.?.?.?.?.?.?.?\xd0|\xd1.?.?.?.?.?.?.?.?\xd1|\xd2.?.?.?.?.?.?.?.?\xd2|\xd3.?.?.?.?.?.?.?.?\xd3|\xd4.?.?.?.?.?.?.?.?\xd4|\xd5.?.?.?.?.?.?.?.?\xd5|\xd6.?.?.?.?.?.?.?.?\xd6|\xd7.?.?.?.?.?.?.?.?\xd7|\xd8.?.?.?.?.?.?.?.?\xd8|\xd9.?.?.?.?.?.?.?.?\xd9|\xda.?.?.?.?.?.?.?.?\xda|\xdb.?.?.?.?.?.?.?.?\xdb|\xdc.?.?.?.?.?.?.?.?\xdc|\xdd.?.?.?.?.?.?.?.?\xdd|\xde.?.?.?.?.?.?.?.?\xde|\xdf.?.?.?.?.?.?.?.?\xdf|\xe0.?.?.?.?.?.?.?.?\xe0|\xe1.?.?.?.?.?.?.?.?\xe1|\xe2.?.?.?.?.?.?.?.?\xe2|\xe3.?.?.?.?.?.?.?.?\xe3|\xe4.?.?.?.?.?.?.?.?\xe4|\xe5.?.?.?.?.?.?.?.?\xe5|\xe6.?.?.?.?.?.?.?.?\xe6|\xe7.?.?.?.?.?.?.?.?\xe7|\xe8.?.?.?.?.?.?.?.?\xe8|\xe9.?.?.?.?.?.?.?.?\xe9|\xea.?.?.?.?.?.?.?.?\xea|\xeb.?.?.?.?.?.?.?.?\xeb|\xec.?.?.?.?.?.?.?.?\xec|\xed.?.?.?.?.?.?.?.?\xed|\xee.?.?.?.?.?.?.?.?\xee|\xef.?.?.?.?.?.?.?.?\xef|\xf0.?.?.?.?.?.?.?.?\xf0|\xf1.?.?.?.?.?.?.?.?\xf1|\xf2.?.?.?.?.?.?.?.?\xf2|\xf3.?.?.?.?.?.?.?.?\xf3|\xf4.?.?.?.?.?.?.?.?\xf4|\xf5.?.?.?.?.?.?.?.?\xf5|\xf6.?.?.?.?.?.?.?.?\xf6|\xf7.?.?.?.?.?.?.?.?\xf7|\xf8.?.?.?.?.?.?.?.?\xf8|\xf9.?.?.?.?.?.?.?.?\xf9|\xfa.?.?.?.?.?.?.?.?\xfa|\xfb.?.?.?.?.?.?.?.?\xfb|\xfc.?.?.?.?.?.?.?.?\xfc|\xfd.?.?.?.?.?.?.?.?\xfd|\xfe.?.?.?.?.?.?.?.?\xfe|\xff.?.?.?.?.?.?.?.?\xff)/ ['\x80', '\x80', '\x81', '\x81', '\x82', '\x82', '\x83', '\x83', '\x84', '\x84', '\x85', '\x85', '\x86', '\x86', '\x87', '\x87', '\x88', '\x88', '\x89', '\x89', '\x8a', '\x8a', '\x8b', '\x8b', '\x8c', '\x8c', '\x8d', '\x8d', '\x8e', '\x8e', '\x8f', '\x8f', '\x90', '\x90', '\x91', '\x91', '\x92', '\x92', '\x93', '\x93', '\x94', '\x94', '\x95', '\x95', '\x96', '\x96', '\x97', '\x97', '\x98', '\x98', '\x99', '\x99', '\x9a', '\x9a', '\x9b', '\x9b', '\x9c', '\x9c', '\x9d', '\x9d', '\x9e', '\x9e', '\x9f', '\x9f', '\xa0', '\xa0', '¡', '¡', '¢', '¢', '£', '£', '¤', '¤', '¥', '¥', '¦', '¦', '§', '§', '¨', '¨', '©', '©', 'ª', 'ª', '«', '«', '¬', '¬', '\xad', '\xad', '®', '®', '¯', '¯', '°', '°', '±', '±', '²', '²', '³', '³', '´', '´', 'µ', 'µ', '¶', '¶', '·', '·', '¸', '¸', '¹', '¹', 'º', 'º', '»', '»', '¼', '¼', '½', '½', '¾', '¾', '¿', '¿', 'À', 'À', 'Á', 'Á', 'Â', 'Â', 'Ã', 'Ã', 'Ä', 'Ä', 'Å', 'Å', 'Æ', 'Æ', 'Ç', 'Ç', 'È', 'È', 'É', 'É', 'Ê', 'Ê', 'Ë', 'Ë', 'Ì', 'Ì', 'Í', 'Í', 'Î', 'Î', 'Ï', 'Ï', 'Ð', 'Ð', 'Ñ', 'Ñ', 'Ò', 'Ò', 'Ó', 'Ó', 'Ô', 'Ô', 'Õ', 'Õ', 'Ö', 'Ö', '×', '×', 'Ø', 'Ø', 'Ù', 'Ù', 'Ú', 'Ú', 'Û', 'Û', 'Ü', 'Ü', 'Ý', 'Ý', 'Þ', 'Þ', 'ß', 'ß', 'à', 'à', 'á', 'á', 'â', 'â', 'ã', 'ã', 'ä', 'ä', 'å', 'å', 'æ', 'æ', 'ç', 'ç', 'è', 'è', 'é', 'é', 'ê', 'ê', 'ë', 'ë', 'ì', 'ì', 'í', 'í', 'î', 'î', 'ï', 'ï', 'ð', 'ð', 'ñ', 'ñ', 'ò', 'ò', 'ó', 'ó', 'ô', 'ô', 'õ', 'õ', 'ö', 'ö', '÷', '÷', 'ø', 'ø', 'ù', 'ù', 'ú', 'ú', 'û', 'û', 'ü', 'ü', 'ý', 'ý', 'þ', 'þ', 'ÿ', 'ÿ'] /\xffsmb[\x72\x25]/ ['ÿ'] /^\x02\x01\x04.+[\xa0-\xa3]\x02[\x01-\x04].?.?.?.?\x02\x01.?\x02\x01.?\x30/ ['\xa0', '£'] /^\x02\x01\x04.+([\xa0-\xa3]\x02[\x01-\x04].?.?.?.?\x02\x01.?\x02\x01.?\x30|\xa4\x06.+\x40\x04.?.?.?.?\x02\x01.?\x02\x01.?\x43)/ ['\xa0', '£', '¤'] /^\x02\x01\x04.+\xa4\x06.+\x40\x04.?.?.?.?\x02\x01.?\x02\x01.?\x43/ ['¤'] /^\xff\xff\xff\xff.....*tfTeam Fortress/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xf4\xbe\x03.*teamspeak/ ['ô', '¾'] /^\xff[\xfb-\xfe].\xff[\xfb-\xfe].\xff[\xfb-\xfe]/ ['ÿ', 'û', 'þ', 'ÿ', 'û', 'þ', 'ÿ', 'û', 'þ'] /\x03\x9a\x89\x22\x31\x31\x31\.\x30\x30\x20\x42\x65\x74\x61\x20|\xe2\x3c\x69\x1e\x1c\xe9/ ['\x9a', '\x89', 'â', 'é'] /^(GET \/docookie\.php\?uname=|\xfd\xfd\xfd\xfd\x30\x30\x30\x30\x30)/ ['ý', 'ý', 'ý', 'ý'] /^..?v\$\xcf/ ['Ï'] /^\x06\xec\x01/ ['ì'] /^\x58\x80........\xf3|^\x06\x58\x4e/ ['\x80', 'ó'] /^(ymsg|ypns|yhoo).?.?.?.?.?.?.?[lwt].*\xc0\x80/ ['À', '\x80'] /^\x1b\xd7\x3b\x48[\x01\x02]\x01?\x01/ ['×'] 43 out of 143 have non-ascii characters all bad chars: ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '\xad', '®', '¯', '°', '±', '²', '³', '´', 'µ', '¶', '·', '¸', '¹', 'º', '»', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'Þ', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/detection-100g.pcre /^.?.?....\\x00.\\x00.\\x00.\\x00.([\x01-\x3F][\x20-\x7f]+)*\\x00\\x00.\\x00[\x01\x03\x04\xFE\xFF]/ ['þ', 'ÿ'] 1 out of 6 have non-ascii characters all bad chars: ['þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/backdoor-subset-4.pcre /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] 1 out of 54 have non-ascii characters all bad chars: ['À'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/backdoor-subset-x5.pcre /^001\xACOptix\s+Pro\s+v\d+\x2E\d+\s+Connected\s+Successfully\x21/smi ['¬'] /^666\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] 3 out of 52 have non-ascii characters all bad chars: ['¬', 'À', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/classification-100g.pcre /^.?.?....\\x00.\\x00.\\x00.\\x00.([\x01-\x3F][\x20-\x7f]+)*\\x00\\x00.\\x00[\x01\x03\x04\xFE\xFF]/ ['þ', 'ÿ'] 1 out of 6 have non-ascii characters all bad chars: ['þ', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/smtp-malicious.pcre 0 out of 7 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-attacks.pcre 0 out of 157 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-attacks-subset-2.pcre 0 out of 8 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-attacks-subset-1.pcre 0 out of 8 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/home-brewed/http-malicious.pcre /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*DROP TABLE/ ['ÿ'] /^HTTP\/[01]\.[019] 404[\x00-\xff]*(admin|wordpress)/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*admin:admin/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*admin:password/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*YWRtaW46cGFzc3dvcmQ/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*YWRtaW46YWRtaW4/ ['ÿ'] /^POST \S* HTTP\/[01]\.[019]\r\n(\V+\r\n)*\r\n[\x00-\xff]*\/bin\/sh/ ['ÿ'] 7 out of 7 have non-ascii characters all bad chars: ['ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/shellcode.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/chat.rules.pcre 0 out of 14 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/policy.rules.pcre 0 out of 10 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/dos.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/voip.rules.pcre /^Authorization\x3A[^\r\n]+?response=[\x00-t\x0B\x0C\x0E-t]*[\x80-t]/smi ['\x80'] /^Call-ID\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Contact\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Content-Type[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^CSeq\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^From\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /Remote-Party-ID\x3A\scsip\x3A[^@]+@\d{1,3}\x2E\d{1,3}\x2E\xD1/smi ['Ñ'] /^To\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Via\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] 9 out of 38 have non-ascii characters all bad chars: ['\x80', 'Ñ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-cgi.rules.pcre 0 out of 10 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/netbios.rules.pcre /^\x00.{3}\xFFSMB(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f).{28}(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f)/ ['ÿ', '¢', '¢'] /^(\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] /^(\x75|\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] 3 out of 16 have non-ascii characters all bad chars: ['¢', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-activex.rules.pcre 0 out of 474 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-misc.rules.pcre 0 out of 58 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/specific-threats.rules.pcre /\x99{40}\xeb\x12\x01\x99{4}\x18A{5}.{4}A{6}/sm ['\x99', 'ë', '\x99'] 1 out of 4 have non-ascii characters all bad chars: ['\x99', 'ë'] /home/notme/nfa-bench/benchmarks/regexps/Snort/finger.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/pop3.rules.pcre 0 out of 16 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/smtp.rules.pcre 0 out of 47 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/mysql.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-php.rules.pcre 0 out of 16 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/rpc.rules.pcre /^[\x00\x80]\x00\x00\x00/s ['\x80'] 1 out of 1 have non-ascii characters all bad chars: ['\x80'] /home/notme/nfa-bench/benchmarks/regexps/Snort/exploit.rules.pcre /^[^\n]*[\x80-t].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80'] /\xeb\x0c \/ HTTP\/1\.1\s+\S+/smi ['ë'] 2 out of 56 have non-ascii characters all bad chars: ['\x80', 'ë'] /home/notme/nfa-bench/benchmarks/regexps/Snort/backdoor.rules.pcre /^001\xACOptix\s+Pro\s+v\d+\x2E\d+\s+Connected\s+Successfully\x21/smi ['¬'] /^666\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^CON\w{1,10}\d+\xAE[^\r\n]{1,20}\x3B/smi ['®'] /^\xad\x86\x01\x00\x08\x00\x00\x001\x5EMerlin/smi ['\xad', '\x86'] /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] 5 out of 154 have non-ascii characters all bad chars: ['\x86', '¬', '\xad', '®', 'À', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/telnet.rules.pcre /(\x02([\x01\x02\x03]|\xFF\xFF)){100,}/RBsm ['ÿ', 'ÿ'] 1 out of 2 have non-ascii characters all bad chars: ['ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/virus.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-frontpage.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/info.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/oracle.rules.pcre 0 out of 27 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/imap.rules.pcre 0 out of 39 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/misc.rules.pcre /\x3d\x00\x12\x00..........(.[\x80-t]|...[\x80-t])/smiR ['\x80', '\x80'] /\xff{8}\x09\x08[\x08\x10]\x00\x00[\x05\x06]\x00\x01/sm ['ÿ'] 2 out of 17 have non-ascii characters all bad chars: ['\x80', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/tftp.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/sql.rules.pcre 0 out of 3 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/spyware-put.rules.pcre /^From\x3a\xd0\xc5\xcf\xa2.*Subject\x3a[^\r\n]*\d+\x2d\d+\x2d\d+\x2d\d+\x3a\d+\x3a\d+/smi ['Ð', 'Å', 'Ï', '¢'] /^HBand,[^\r\n]*,[^\r\n]*,\d+,\d+\x2A\xD5ZBM/smi ['Õ'] /\x23\x23\x23\x23\s+Fen\xeatre\s+\x3a[^\r\n]*\x23\x23\x23\x23/smi ['ê'] /^X-Mailer\x3a\s+\xb0\xae\xb6\xf9\xcd\xf8\xb5\xc1/smi ['°', '®', '¶', 'ù', 'Í', 'ø', 'µ', 'Á'] 4 out of 460 have non-ascii characters all bad chars: ['¢', '®', '°', 'µ', '¶', 'Á', 'Å', 'Í', 'Ï', 'Ð', 'Õ', 'ê', 'ø', 'ù'] /home/notme/nfa-bench/benchmarks/regexps/Snort/pop2.rules.pcre 0 out of 2 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/nntp.rules.pcre 0 out of 12 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/p2p.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-client.rules.pcre 0 out of 38 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/ddos.rules.pcre 0 out of 1 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/together.pcre /^001\xACOptix\s+Pro\s+v\d+\x2E\d+\s+Connected\s+Successfully\x21/smi ['¬'] /^666\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF\d+\xFF/smi ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^Authorization\x3A[^\r\n]+?response=[\x00-t\x0B\x0C\x0E-t]*[\x80-t]/smi ['\x80'] /^Call-ID\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Contact\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Content-Type[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^CON\w{1,10}\d+\xAE[^\r\n]{1,20}\x3B/smi ['®'] /^CSeq\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^From\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^From\x3a\xd0\xc5\xcf\xa2.*Subject\x3a[^\r\n]*\d+\x2d\d+\x2d\d+\x2d\d+\x3a\d+\x3a\d+/smi ['Ð', 'Å', 'Ï', '¢'] /^HBand,[^\r\n]*,[^\r\n]*,\d+,\d+\x2A\xD5ZBM/smi ['Õ'] /^[^\n]*[\x80-t].*\nAccept-Language\x3A\s*[^\s]{32}/si ['\x80'] /Remote-Party-ID\x3A\scsip\x3A[^@]+@\d{1,3}\x2E\d{1,3}\x2E\xD1/smi ['Ñ'] /^To\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^Via\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi ['\x80'] /^\x00.{3}\xFFSMB(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f).{28}(\x73|\x74|\x75|\xa2|\x24|\x2d|\x2e|\x2f)/ ['ÿ', '¢', '¢'] /^[\x00\x80]\x00\x00\x00/s ['\x80'] /(\x02([\x01\x02\x03]|\xFF\xFF)){100,}/RBsm ['ÿ', 'ÿ'] /\x23\x23\x23\x23\s+Fen\xeatre\s+\x3a[^\r\n]*\x23\x23\x23\x23/smi ['ê'] /^(\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] /\x3d\x00\x12\x00..........(.[\x80-t]|...[\x80-t])/smiR ['\x80', '\x80'] /^(\x75|\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR ['¢'] /\x99{40}\xeb\x12\x01\x99{4}\x18A{5}.{4}A{6}/sm ['\x99', 'ë', '\x99'] /^\xad\x86\x01\x00\x08\x00\x00\x001\x5EMerlin/smi ['\xad', '\x86'] /^\xc0STATUS\xc0Server\s\x3A\sKeylogging\sStarted\!$/smi ['À', 'À'] /\xeb\x0c \/ HTTP\/1\.1\s+\S+/smi ['ë'] /\xff{8}\x09\x08[\x08\x10]\x00\x00[\x05\x06]\x00\x01/sm ['ÿ'] /^X-Mailer\x3a\s+\xb0\xae\xb6\xf9\xcd\xf8\xb5\xc1/smi ['°', '®', '¶', 'ù', 'Í', 'ø', 'µ', 'Á'] 28 out of 1574 have non-ascii characters all bad chars: ['\x80', '\x86', '\x99', '¢', '¬', '\xad', '®', '°', 'µ', '¶', 'À', 'Á', 'Å', 'Í', 'Ï', 'Ð', 'Ñ', 'Õ', 'ê', 'ë', 'ø', 'ù', 'ÿ'] /home/notme/nfa-bench/benchmarks/regexps/Snort/ftp.rules.pcre 0 out of 35 have non-ascii characters all bad chars: [] /home/notme/nfa-bench/benchmarks/regexps/Snort/web-iis.rules.pcre 0 out of 12 have non-ascii characters all bad chars: [] 482 non-ascii regexes in total all bad chars: 128 in total, ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '\xad', '®', '¯', '°', '±', '²', '³', '´', 'µ', '¶', '·', '¸', '¹', 'º', '»', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'Þ', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] %% Cell type:code id: tags: ``` python # r = "/^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/" # "\x00"<= chr(127) analyze_file("/home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.pcre") ``` %% Output /home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.pcre /^.{0,114}\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.{0,16}\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa/ ['ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª', 'ª'] /^.*08\x02\x01\x00\x04\x06public\xA4\+\x06/ ['¤'] /^.*0&\x02\x01\x00\x04\x06public\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x000\x0E0\x0C\x06\x08\+\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['\xa0', 'À'] /^.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.{10}\x8F/ ['\x8f'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{11}\x00\x01\x86\xA2.{4}\x00\x00\x00\x02/ ['\x86', '¢'] /^.{11}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{11}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{11}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{11}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{11}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{11}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{11}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{11}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{13}.*\x00\x00\xFC/ ['ü'] /^.{14}.*\x00\x00\xFC/ ['ü'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x01/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x02/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA1/ ['\x86', '\xa0', '\x86', '¡'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA2/ ['\x86', '\xa0', '\x86', '¢'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA3/ ['\x86', '\xa0', '\x86', '£'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA4/ ['\x86', '\xa0', '\x86', '¤'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA5/ ['\x86', '\xa0', '\x86', '¥'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA8/ ['\x86', '\xa0', '\x86', '¨'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xA9/ ['\x86', '\xa0', '\x86', '©'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAB/ ['\x86', '\xa0', '\x86', '«'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xAF/ ['\x86', '\xa0', '\x86', '¯'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB1/ ['\x86', '\xa0', '\x86', '±'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB5/ ['\x86', '\xa0', '\x86', 'µ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xB8/ ['\x86', '\xa0', '\x86', '¸'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBA/ ['\x86', '\xa0', '\x86', 'º'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xBC/ ['\x86', '\xa0', '\x86', '¼'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xE4/ ['\x86', '\xa0', '\x86', 'ä'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF3/ ['\x86', '\xa0', '\x86', 'ó'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x86\xF7/ ['\x86', '\xa0', '\x86', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\}/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x03/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x7D/ ['\x86', '\xa0', '\x87'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x88/ ['\x86', '\xa0', '\x87', '\x88'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x8B/ ['\x86', '\xa0', '\x87', '\x8b'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\x99/ ['\x86', '\xa0', '\x87', '\x99'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xcc/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x01\x87\xCC/ ['\x86', '\xa0', '\x87', 'Ì'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02I\xF1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x02\x49\xf1/ ['\x86', '\xa0', 'ñ'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0Dp/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x03\x0D\x70/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7h/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7u/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x68/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x03\x00\x05\xF7\x75/ ['\x86', '\xa0', '÷'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x04/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0.{4}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA0\x00.{3}\x00\x00\x00\x05/ ['\x86', '\xa0'] /^.{15}\x00\x01\x86\xA4.{4}\x00\x00\x00\x0B/ ['\x86', '¤'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x02/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x03/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x04/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x05/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5.{4}\x00\x00\x00\x06/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA5\x00.{3}\x00\x00\x00\x01/ ['\x86', '¥'] /^.{15}\x00\x01\x86\xA9.{4}\x00\x00\x00\x01/ ['\x86', '©'] /^.{15}\x00\x01\x86\xAB.{4}\x00\x00\x00\x01/ ['\x86', '«'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x01/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xB8.{4}\x00\x00\x00\x02.{0,251}%x %x/ ['\x86', '¸'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\|/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xBC.{4}\x00\x00\x00\x01.{4}.*\x7C/ ['\x86', '¼'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x06/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xE4.{4}\x00\x00\x00\x15/ ['\x86', 'ä'] /^.{15}\x00\x01\x86\xF3.{4}\x00\x00\x00\x07/ ['\x86', 'ó'] /^.{15}\x00\x01\x87\}.*.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x7D.*.{0}.*\/\.\.\// ['\x87'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x88.{4}\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00/ ['\x87', '\x88'] /^.{15}\x00\x01\x87\x99.{4}\x00\x00\x01\x01/ ['\x87', '\x99'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x07/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x08/ ['\x93', 'ó'] /^.{15}\x00\x04\x93\xF3.{4}\x00\x00\x00\x09/ ['\x93', 'ó'] /^.{15}\x00\x05\xF7h.{4}\x00\x00\x00\x0D/ ['÷'] /^.{15}\x00\x05\xF7\x68.{4}\x00\x00\x00\x0D/ ['÷'] /^.{199}\xFF\xF6\xFF\xF6\xFF\xFB\x08\xFF\xF6/ ['ÿ', 'ö', 'ÿ', 'ö', 'ÿ', 'û', 'ÿ', 'ö'] /^.*1\xC0\xB0\?1\xDB\xB3\xFF1\xC9\xCD\x801\xC0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*1\xC0\xB0\x02\xCD\x80\x85\xC0uL\xEBL\^\xB0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.{3}.*\x02\x01\x00\x04\x82\x01\x00/ ['\x82'] /^.*3\xC9\xB1\x10\?\xE9\x06Q<\xFAG3\xC0P\xF7\xD0P/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.{3}\xFFSMB%/ ['ÿ'] /^.{3}\xFFSMB2/ ['ÿ'] /^.{3}\xFFSMB2.*.*[dD][oO][cC][uU][mM][eE][nN][tT][sS] [aA][nN][dD] [sS][eE][tT][tT][iI][nN][gG][sS]\x5C[aA][lL][lL] [uU][sS][eE][rR][sS]\x5C[sS][tT][aA][rR][tT] [mM][eE][nN][uU]\x5C[pP][rR][oO][gG][rR][aA][mM][sS]\x5C[sS][tT][aA][rR][tT][uU][pP]\x00/ ['ÿ'] /^.{3}\xFFSMB2.*.*\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00 \x00[mM]\x00[eE]\x00[nN]\x00[uU]\x00\x5C\x00[pP]\x00[rR]\x00[oO]\x00[gG]\x00[rR]\x00[aA]\x00[mM]\x00[sS]\x00\x5C\x00[sS]\x00[tT]\x00[aA]\x00[rR]\x00[tT]\x00[uU]\x00[pP]/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA][dD][mM][iI][nN]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[aA]\x00[dD]\x00[mM]\x00[iI]\x00[nN]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[dD]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI][pP][cC]\x24\x00/ ['ÿ'] /^.{3}\xFFSMBu.{32}.*[iI]\x00[pP]\x00[cC]\x00\x24\x00\x00/ ['ÿ'] /^.{3}\xFFSMB\x25/ ['ÿ'] /^.{3}\xffSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x32/ ['ÿ'] /^.{3}\xFFSMB\x75/ ['ÿ'] /^.{3}\xFFSMB\xa2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C[wW][iI][nN][rR][eE][gG]\x00/ ['ÿ', '¢'] /^.{3}\xFFSMB\xA2.{79}\x5C\x00[wW]\x00[iI]\x00[nN]\x00[rR]\x00[eE]\x00[gG]\x00\x00\x00/ ['ÿ', '¢'] /^.{3}\xFF[sS][mM][bB]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5CPIPE\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['ÿ', '\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{4}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x05\x00\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C[pP][iI][pP][eE]\x5C\x00\x05\x00\x0B.{29}\x01\xD0\x8C3D\x22\xF11\xAA\xAA\x90\x008\x00\x10\x03/ ['ÿ', 'Ð', '\x8c', 'ñ', 'ª', 'ª', '\x90'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00.{2}\x05.{1}\x0B.{21}\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x00\x18/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x00\x00\x05\x00\x00.{19}\x18\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x04\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5C\x00\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]%.{56}&\x00.{5}\x5C\x00P\x00I\x00P\x00E\x00\x5C\x00\x00\x00\x05\x00\x0B.{29}xV4\x124\x12\xCD\xAB\xEF\x00\x01\x23Eg\x89\xAB/ ['ÿ', 'Í', '«', 'ï', '\x89', '«'] /^.{3}\xFF[sS][mM][bB].{59}.*\x05.{1}\x00.{19}\x09\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS]/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{42}\x00\x00\x00\x00.{10}[^\x00]{255}/ ['ÿ'] /^.{3}\xFF[sS][mM][bB][sS].{56}.*\x00.{255}.*\x00\x00.*.*\x00\x00/ ['ÿ'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00\x46/ ['ÿ', '\xa0', 'À'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{0}\x05.{1}\x0b.{29}\xB8\x4A\x9F\x4D\x1C\x7D\xCF\x11\x86\x1E\x00\x20\xAF\x6E\x7C\x57/ ['ÿ', '¸', '\x9f', 'Ï', '\x86', '¯'] /^.{3}\xFF[sS][mM][bB]\x25.{56}\x26\x00.{5}\x5c\x00[pP]\x00[iI]\x00[pP]\x00[eE]\x00\x5c\x00.{2}\x05.{1}\x0b.{21}\x00/ ['ÿ'] /^.{4}\xe0\x00\x00\x00\x00\x00/ ['à'] /^.{4}\xE0\x00\x00\x00\x00\x00/ ['à'] /^.{62}`.{1}\x00\x00\x00b\x06\x83\x00\x00\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA3>0<\xA00/ ['\x83', '\x82', '£', '\xa0'] /^.{62}`.{1}\x06\x06\+\x06\x01\x05\x05\x02.*.*\x06\x0A\+\x06\x01\x04\x01\x827\x02\x02\x0A.*.*\xA1\x05\x23\x03\x03\x01\x07/ ['\x82', '¡'] /^.{6} \x04\x82\x01\x00/ ['\x82'] /^.{7}\xFF\xFF\xFF\xFF\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*9 \xD0\x00\x92\x01\xC2\x00R\x00U\x009 \xEC\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*C\x07\x89\[\x08\x8DK\x08\x89C\x0C\xB0\x0B\xCD\x801\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\/bin\/sh\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^.*[fF][rR][oO][mM]\x3A\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*G\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1FG\xFF\x04\x1F/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*H\x00%\x00x\x00w\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x003\x00\xC0\x00P\x00h\x00\.\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*h\]\^\xFF\xD5\xFF\xD4\xFF\xF5\x8B\xF5\x90f1/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*name=\x22\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*name=\"\xCC\xCC\xCC\xCC\xCC/ ['Ì', 'Ì', 'Ì', 'Ì', 'Ì'] /^.*O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82O\xFF\xFB\x82/ ['ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82', 'ÿ', 'û', '\x82'] /^.*q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00q\x00\xFB\x00\{\x00\xAB\x00/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*q\xFB\{\xABq\xFB\{\xABq\xFB\{\xABq\xFB\{\xAB/ ['û', '«', 'û', '«', 'û', '«', 'û', '«'] /^.*V\x0E1\xC0\xB0\x3B\x8D~\x12\x89\xF9\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x00\x00\x03\xe7\x00\x00\x00\x00\x00\x00\x00\x65\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x05\x00\x00\x00\x00\x00\x00\x00/ ['ç'] /^.*\x00\x01\x87\x86\x00\x00\x00\x01\x00\x00\x00\x05/ ['\x87', '\x86'] /^.*\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08\x00\xC0\x05\x08/ ['À', 'À', 'À', 'À'] /^.*\x011\xDB\xCD\x80\xE8\[\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xe8/ ['è'] /^.*\x01\x03\x00\x00\x00\x00\x00\x01\x00\x02\x02\xE8/ ['è'] /^.*\x01\x31\xDB\xCD\x80\xE8\x5B\xFF\xFF\xFF/ ['Û', 'Í', '\x80', 'è', 'ÿ', 'ÿ', 'ÿ'] /^.*\x01\x9A\x8C\x66\xAF\xC0\x4A\x11\x9E\x3F\x40\x88\x12\x2C\x3A\x4A\x84\x65\x38\xB0\xB4\x08\x0B\xAF\xDB\xCE\x02\x94\x34\x5F\x22\x00*./ ['\x9a', '\x8c', '¯', 'À', '\x9e', '\x88', '\x84', '°', '´', '¯', 'Û', 'Î', '\x94'] /^.*\x01\xFE\x3C\x6C\x6A\xFF\x99\xA8\x34\x83\x38\x24\xA1\xA4\xF2\x11\x5A\xD3\x18\x8D\xBC\xC4\x3E\x40\x07\xA4\x28\xD4\x18\x48\xFE\x00*./ ['þ', 'ÿ', '\x99', '¨', '\x83', '¡', '¤', 'ò', 'Ó', '\x8d', '¼', 'Ä', '¤', 'Ô', 'þ'] /^\x03\x00\x00\x0b\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^\x03\x00\x00\x0B\x06\xE0\x00\x00\x00\x00\x00/ ['à'] /^.*\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%\x03\xE0\xF8%/ ['à', 'ø', 'à', 'ø', 'à', 'ø', 'à', 'ø'] /^\x04\x00.{22}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\x05.{1}\x0B.{29}j\x28\x199\x0C\xB1\xD0\x11\x9B\xA8\x00\xC0O\xD9\.\xF5/ ['±', 'Ð', '\x9b', '¨', 'À', 'Ù', 'õ'] /^\x05.{1}\x0B.{29}\xA0\x01\x00\x00\x00\x00\x00\x00\xC0\x00\x00\x00\x00\x00\x00F/ ['\xa0', 'À'] /^\x05.{1}\x0B.{29}\xB8J\x9FM\x1C\}\xCF\x11\x86\x1E\x00 \xAFn\x7CW/ ['¸', '\x9f', 'Ï', '\x86', '¯'] /^.*\x05\x00.{5}\xDE\x03/ ['Þ'] /^\x05\x00\x0B.{29}\x98\xD0\xFFk\x12\xA1\x106\x983F\xC3\xF8~4Z/ ['\x98', 'Ð', 'ÿ', '¡', '\x98', 'Ã', 'ø'] /^.*\+\x06\x10@\x14\xD1\x02\x19/ ['Ñ'] /^.*\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80\x08!\x02\x80/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80root\x00/ ['\x85', '\x80'] /^.*\x0A\x00\x00\x01\x85\x04\x00\x00\x80\x72\x6F\x6F\x74\x00/ ['\x85', '\x80'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD&/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\x0D\x0A\[Yes\]\x0D\x0A\xFF\xFE\x08\xFF\xFD\x26/ ['ÿ', 'þ', 'ÿ', 'ý'] /^.*\^\x0E1\xC0\xB0\x3B\x8D~\x0E\x89\xFA\x89\xF9/ ['À', '°', '\x8d', '\x89', 'ú', '\x89', 'ù'] /^.*\x12\xc4\xf6\x62\x55\xe6\x36\xbd\xe4\x65\xbc\x24\xbe\xb0\x50\xac\xe0\xef\x9a\x4f/ ['Ä', 'ö', 'æ', '½', 'ä', '¼', '¾', '°', '¬', 'à', 'ï', '\x9a'] /^.*\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6\x13\xC0\x1C\xA6/ ['À', '¦', 'À', '¦', 'À', '¦', 'À', '¦'] /^.*\x2b\x06\x10\x40\x14\xd1\x02\x19/ ['Ñ'] /^.*\x30\x26\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA0\x19\x02\x01\x00\x02\x01\x00\x02\x01\x00\x30\x0E\x30\x0C\x06\x08\x2B\x06\x01\x02\x01\x01\x05\x00\x05\x00/ ['\xa0'] /^.*\x30\x38\x02\x01\x00\x04\x06\x70\x75\x62\x6C\x69\x63\xA4\x2B\x06/ ['¤'] /^.*\x31\xc0\xb0\x02\xcd\x80\x85\xc0\x75\x4c\xeb\x4c\x5e\xb0/ ['À', '°', 'Í', '\x80', '\x85', 'À', 'ë', '°'] /^.*\x31\xc0\xb0\x3f\x31\xdb\xb3\xff\x31\xc9\xcd\x80\x31\xc0/ ['À', '°', 'Û', '³', 'ÿ', 'É', 'Í', '\x80', 'À'] /^.*\x33\xC9\xB1\x10\x3F\xE9\x06\x51\x3C\xFA\x47\x33\xC0\x50\xF7\xD0\x50/ ['É', '±', 'é', 'ú', 'À', '÷', 'Ð'] /^.*\x39\x20\xd0\x00\x92\x01\xc2\x00\x52\x00\x55\x00\x39\x20\xec\x00/ ['Ð', '\x92', 'Â', 'ì'] /^.*\x40\x8A\xFF\xC8\x40\x82\xFF\xD8\x3B\x36\xFE\x03\x3B\x76\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x43\x07\x89\x5B\x08\x8D\x4B\x08\x89\x43\x0C\xB0\x0B\xCD\x80\x31\xC0\xFE\xC0\xCD\x80\xE8\x94\xFF\xFF\xFF\x2F\x62\x69\x6E\x2F\x73\x68\x0A/ ['\x89', '\x8d', '\x89', '°', 'Í', '\x80', 'À', 'þ', 'À', 'Í', '\x80', 'è', '\x94', 'ÿ', 'ÿ', 'ÿ'] /^\x45\x2e\xe5\x01\x80\xb0\x0a\xca\xdb\x16\xa1\x8f\xc6\xcd\x97\x60\x92\x44\x93\x16/ ['å', '\x80', '°', 'Ê', 'Û', '¡', '\x8f', 'Æ', 'Í', '\x97', '\x92', '\x93'] /^.*\x48\x00\x25\x00\x78\x00\x77\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x33\x00\xc0\x00\x50\x00\x68\x00\x2e\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', 'À'] /^.*\x4b\x56\xde\x0c\x47\xbf\x12\x9f\xc7\x24\x40\x64\x5c\xfd\xa8\x2b\xaf\x3f\x09\xc7/ ['Þ', '¿', '\x9f', 'Ç', 'ý', '¨', '¯', 'Ç'] /^.*\x56\x0e\x31\xc0\xb0\x3b\x8d\x7e\x12\x89\xf9\x89\xf9/ ['À', '°', '\x8d', '\x89', 'ù', '\x89', 'ù'] /^.*\x5C\x00\x5C\x00\*\x00S\x00M\x00B\x00S\x00E\x00R\x00V\x00E\x00R\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5C\x00\x5C\x00\x2A\x00\x53\x00\x4D\x00\x42\x00\x53\x00\x45\x00\x52\x00\x56\x00\x45\x00\x52\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xFF\xFF\xFF\xFF\x00\x00\x00\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\x5e\xb0\x02\x89\x06\xfe\xc8\x89\x46\x04\xb0\x06\x89\x46/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\x68\x5d\x5e\xff\xd5\xff\xd4\xff\xf5\x8b\xf5\x90\x66\x31/ ['ÿ', 'Õ', 'ÿ', 'Ô', 'ÿ', 'õ', '\x8b', 'õ', '\x90'] /^.*\x7c\x83\x3b\x3f\x8a\x80\x59\xbf\x45\xbd\x5f\xf2\xa3\xc9\x36\x85\xa9\xd1\x15\xc3/ ['\x83', '\x8a', '\x80', '¿', '½', 'ò', '£', 'É', '\x85', '©', 'Ñ', 'Ã'] /^.*\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78\x7F\xFF\xFB\x78/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx\x7F\xFF\xFBx/ ['ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û', 'ÿ', 'û'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\?\x00\x01\x02/ ['\x80'] /^.*\x80\x00\x07\x00\x00\x00\x00\x00\x01\x3F\x00\x01\x02/ ['\x80'] /^\x80\x02.{4}.*\x02/ ['\x80'] /^.*\x80\x07\x00\x00\x07\x00\x00\x04\x00\x00\x00\x00\x00/ ['\x80'] /^.*\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11\x80\x1C@\x11/ ['\x80', '\x80', '\x80', '\x80'] /^.*\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x81', '\x80'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xf1\x03\x01\x04\x9b\x81\xf1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x81\xF1\x03\x01\x04\x9B\x81\xF1\x01/ ['\x81', 'ñ', '\x9b', '\x81', 'ñ'] /^.*\x82\x10 \x17\x91\xD0 \x08/ ['\x82', '\x91', 'Ð'] /^^\x85\x13<\x9E\xA2/ ['\x85', '\x9e', '¢'] /^.*\x85\x80\x00\x01\x00\x01\x00\x00\x00\x00/ ['\x85', '\x80'] /^.*\x89\xf7\x29\xc7\x89\xf3\x89\xf9\x89\xf2\xac\x3c\xfe/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*\x89\xF7\x29\xC7\x89\xF3\x89\xF9\x89\xF2\xAC<\xFE/ ['\x89', '÷', 'Ç', '\x89', 'ó', '\x89', 'ù', '\x89', 'ò', '¬', 'þ'] /^.*@\x8A\xFF\xC8@\x82\xFF\xD8\x3B6\xFE\x03\x3Bv\xFE\x02/ ['\x8a', 'ÿ', 'È', '\x82', 'ÿ', 'Ø', 'þ', 'þ'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00\x90\x00/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x1A\xC0\x0F\x90\x02 \x08\x92\x02 \x0F\xD0\x23\xBF\xF8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x1a\xc0\x0f\x90\x02\x20\x08\x92\x02\x20\x0f\xd0\x23\xbf\xf8/ ['\x90', 'À', '\x90', '\x92', 'Ð', '¿', 'ø'] /^.*\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90/ ['\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90', '\x90'] /^.*\x90\x90\x90\xE8\xC0\xFF\xFF\xFF\/bin\/sh/ ['\x90', '\x90', '\x90', 'è', 'À', 'ÿ', 'ÿ', 'ÿ'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90\x25\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA0\x23\xA0\x10\xAE\x23\x80\x10\xEE\x23\xBF\xEC\x82\x05\xE0\xD6\x90%\xE0/ ['\xa0', '\xa0', '®', '\x80', 'î', '¿', 'ì', '\x82', 'à', 'Ö', '\x90', 'à'] /^.*\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13\xA6\x1C\xC0\x13/ ['¦', 'À', '¦', 'À', '¦', 'À', '¦', 'À'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01 \x02a/ ['«', 'Í', '\x80'] /^.*\xAB\xCD\x09\x80\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01\x20\x20\x20\x20\x02\x61/ ['«', 'Í', '\x80'] /^.*\^\xB0\x02\x89\x06\xFE\xC8\x89F\x04\xB0\x06\x89F/ ['°', '\x89', 'þ', 'È', '\x89', '°', '\x89'] /^.*\xB0\xB5\xCD\x80/ ['°', 'µ', 'Í', '\x80'] /^.*\xb4\x20\xb4\x21\x8b\xcc\x83\xe9\x04\x8b\x19\x33\xc9\x66\xb9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xB4\xB4/ ['´', '´'] /^.*\xB4 \xB4!\x8B\xCC\x83\xE9\x04\x8B\x193\xC9f\xB9\x10/ ['´', '´', '\x8b', 'Ì', '\x83', 'é', '\x8b', 'É', '¹'] /^.*\xBAI\xFE\xFF\xFF\xF7\xD2\xB9\xBF\xFF\xFF\xFF\xF7\xD1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xba\x49\xfe\xff\xff\xf7\xd2\xb9\xbf\xff\xff\xff\xf7\xd1/ ['º', 'þ', 'ÿ', 'ÿ', '÷', 'Ò', '¹', '¿', 'ÿ', 'ÿ', 'ÿ', '÷', 'Ñ'] /^.*\xC0PR\x89\xE1PQRP\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^.*\xC0\x0C\x00\x01\x00\x01\x00\x00\x00<\x00\x04/ ['À'] /^.*\xc0\x0c\x00\x01\x00\x01\x00\x00\x00\x3c\x00\x04/ ['À'] /^.*\xC0\x0C\x00\x0C\x00\x01\x00\x00\x00<\x00\x0F/ ['À'] /^.*\xc0\x0c\x00\x0c\x00\x01\x00\x00\x00\x3c\x00\x0f/ ['À'] /^.*\xC0\x50\x52\x89\xE1\x50\x51\x52\x50\xB8\x3B\x00\x00\x00\xCD\x80/ ['À', '\x89', 'á', '¸', 'Í', '\x80'] /^\xc9\xe9\x36\xa1\xce\xae\x10\x3c\x32\x81\xac\x9b\x01\x81\x5a\x68\x01\x91\x82\xa4/ ['É', 'é', '¡', 'Î', '®', '\x81', '¬', '\x9b', '\x81', '\x91', '\x82', '¤'] /^.*\xCD\x80\xE8\xD7\xFF\xFF\xFF\/bin\/sh/ ['Í', '\x80', 'è', '×', 'ÿ', 'ÿ', 'ÿ'] /^.*\xd1\xe4\x22\x07\x57\xd3\xa9\x9a\x5a\xd5\xcc\xc7\x9d\xa1\xd5\xc5\xa6\xf1\x6d\x57/ ['Ñ', 'ä', 'Ó', '©', '\x9a', 'Õ', 'Ì', 'Ç', '\x9d', '¡', 'Õ', 'Å', '¦', 'ñ'] /^.*\xd2\x9b\xec\xe0\x8c\x09\x28\xcb\x05\x60\x1b\xc5\x59\x34\xab\xbd\x56\xd6\x78\xaa/ ['Ò', '\x9b', 'ì', 'à', '\x8c', 'Ë', 'Å', '«', '½', 'Ö', 'ª'] /^.*\xd8\x40\xcd\x80\xe8\xd9\xff\xff\xff\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xD8@\xCD\x80\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['Ø', 'Í', '\x80', 'è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xdd\xbd\x4c\x7b\x35\x9a\x89\x88\xf0\x0d\xa8\xf1\x44\x67\x7b\xcd\x18\xf0\xe6\x70/ ['Ý', '½', '\x9a', '\x89', '\x88', 'ð', '¨', 'ñ', 'Í', 'ð', 'æ'] /^\xe1\xac\x20\x5a\xda\x5a\xf7\x0c\x17\x24\x8e\xc2\x0e\xa0\x0b\xee\x7a\x77\xe0\x64/ ['á', '¬', 'Ú', '÷', '\x8e', 'Â', '\xa0', 'î', 'à'] /^.*\xe7\xa7\x74\xb8\xb9\xfe\x9a\x6e\x6c\xe1\xd5\xde\x5f\x5c\xd5\x9d\x49\x69\x9a\xba/ ['ç', '§', '¸', '¹', 'þ', '\x9a', 'á', 'Õ', 'Þ', 'Õ', '\x9d', '\x9a', 'º'] /^.*\xE8\xD9\xFF\xFF\xFF\/bin\/sh/ ['è', 'Ù', 'ÿ', 'ÿ', 'ÿ'] /^.*\xEB@\^1\xC0@\x89F\x04\x89\xC3@\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xEBE\xEB \[\xFC3\xC9\xB1\x82\x8B\xF3\x80\+/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xEBK\[S2\xE4\x83\xC3\x0BK\x88\x23\xB8Pw/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xEBn\^\xC6\x06\x9A1\xC9\x89N\x01\xC6F\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xEBV\^VVV1\xD2\x88V\x0B\x88V\x1E/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xEB\x02\xEB\x02\xEB\x02/ ['ë', 'ë', 'ë'] /^.*\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C\xEB\x0C/ ['ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë', 'ë'] /^.*\xEB\x23\^3\xC0\x88F\xFA\x89F\xF5\x896/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x23\x5e\x33\xc0\x88\x46\xfa\x89\x46\xf5\x89\x36/ ['ë', 'À', '\x88', 'ú', '\x89', 'õ', '\x89'] /^.*\xeb\x2c\x5b\x89\xd9\x80\xc1\x06\x39\xd9\x7c\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xeb\x2f\x5f\xeb\x4a\x5e\x89\xfb\x89\x3e\x89\xf2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xeb\x40\x5E\x31\xc0\x40\x89\x46\x04\x89\xc3\x40\x89\x06/ ['ë', 'À', '\x89', '\x89', 'Ã', '\x89'] /^.*\xeb\x45\xeb\x20\x5b\xfc\x33\xc9\xb1\x82\x8b\xf3\x80\x2b/ ['ë', 'ë', 'ü', 'É', '±', '\x82', '\x8b', 'ó', '\x80'] /^.*\xeb\x4b\x5b\x53\x32\xe4\x83\xc3\x0b\x4b\x88\x23\xb8\x50\x77/ ['ë', 'ä', '\x83', 'Ã', '\x88', '¸'] /^.*\xeb\x56\x5E\x56\x56\x56\x31\xd2\x88\x56\x0b\x88\x56\x1e/ ['ë', 'Ò', '\x88', '\x88'] /^.*\xeb\x5f\x9a\xff\xff\xff\xff\x07\xff\xc3\x5e\x31\xc0\x89\x46\x9d/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xeb\x6e\x5e\xc6\x06\x9a\x31\xc9\x89\x4e\x01\xc6\x46\x05/ ['ë', 'Æ', '\x9a', 'É', '\x89', 'Æ'] /^.*\xeb\x7f\x5d\x55\xfe\x4d\x98\xfe\x4d\x9b/ ['ë', 'þ', '\x98', 'þ', '\x9b'] /^.*\xEB,\[\x89\xD9\x80\xC1\x069\xD9\x7C\x07\x80\x01/ ['ë', '\x89', 'Ù', '\x80', 'Á', 'Ù', '\x80'] /^.*\xEB_\x9A\xFF\xFF\xFF\xFF\x07\xFF\xC3\^1\xC0\x89F\x9D/ ['ë', '\x9a', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'Ã', 'À', '\x89', '\x9d'] /^.*\xEB\/_\xEBJ\^\x89\xFB\x89>\x89\xF2/ ['ë', 'ë', '\x89', 'û', '\x89', '\x89', 'ò'] /^.*\xff\xf3\xff\xf3\xff\xf3\xff\xf3\xff\xf3/ ['ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó', 'ÿ', 'ó'] /^.*\xff\xf4\xff\xfd\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xF4\xFF\xFD\x06/ ['ÿ', 'ô', 'ÿ', 'ý'] /^.*\xFF\xFD\x18\xFF\xFD\x1F\xFF\xFD\x23\xFF\xFD\x27\xFF\xFD\x24/ ['ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý', 'ÿ', 'ý'] /^.*\xFF\xFFKADM0\.0A\x00\x00\xFB\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xff\xff\x4b\x41\x44\x4d\x30\x2e\x30\x41\x00\x00\xfb\x03/ ['ÿ', 'ÿ', 'û'] /^.*\xFF\xFF\xFF\/BIN\/SH\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\x2f\x42\x49\x4e\x2f\x53\x48\x00/ ['ÿ', 'ÿ', 'ÿ'] /^.*\xFF\xFF\xFF\xFF\xFF\xFF/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^.*\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] /^\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF.{2}\x00/ ['ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ', 'ÿ'] 333 out of 1400 have non-ascii characters all bad chars: ['\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '®', '¯', '°', '±', '³', '´', 'µ', '¸', '¹', 'º', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ý', 'Þ', 'à', 'á', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ë', 'ì', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'] (333, {'\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x91', '\x92', '\x93', '\x94', '\x97', '\x98', '\x99', '\x9a', '\x9b', '\x9d', '\x9e', '\x9f', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '®', '¯', '°', '±', '³', '´', 'µ', '¸', '¹', 'º', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ý', 'Þ', 'à', 'á', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ë', 'ì', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'}) %% Cell type:code id: tags: ``` python r = "/.*\uCode=/" codecs.decode(r, 'unicode_escape', errors='ignore') ``` %% Output '/.*ode=/' %% Cell type:code id: tags: ``` python import re def replace_match(match): excluded_chars = sorted(match.group(1)) replace_group = "[" last_range_start = "\x00" for char in excluded_chars: if last_range_start < char: range_end = chr(ord(char) - 1) # the last character before char replace_group += last_range_start + "-" + range_end last_range_start = chr(ord(char) + 1) # the first character after char if last_range_start <= "\x7f": replace_group += last_range_start + "-" "\x7f" + "]" # Return expanded character class like [\x00-a...\x7f] return replace_group re.sub(r'\[\^([^\]]+)\]', replace_match, "[^\x00\x7f]") ``` %% Output '[\x01-~' %% Cell type:code id: tags: ``` python "((\x13bittorrent protocol|azver\x01$|get /scrape\?info_hash=get /announce\?info_hash=|get /client/bitcomet/|GET /data\?fid=)|d1:ad2:id20:|\x08'7P\)[RP])[\x00-\x7f]*", "(get (/[\x00-\x7f]download/[ -~]*|/[\x00-\x7f]supernode[ -~]|/[\x00-\x7f]status[ -~]|/[\x00-\x7f]network[ -~]*|/[\x00-\x7f]files|/[\x00-\x7f]hash=[0-9a-f]*/[ -~]*) http/1[\x00-\x7f]1|user-agent: kazaa|x-kazaa(-username|-network|-ip|-supernodeip|-xferid|-xferuid|tag)|^give [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]?[0-9]?[0-9]?)[\x00-\x7f]*", "[\x00-\x7f]*(<peerplat>|^get /getfilebyhash\.cgi\?|^get /queue_register\.cgi\?|^get /getupdowninfo\.cgi\?)[\x00-\x7f]*", "[\x00-\x7f]*(ver [0-9]+ msnp[1-9][0-9]? [\x09-\x0d -~]*cvr0\x0d\x0a$|usr 1 [!-~]+ [0-9\. ]+\x0d\x0a$|ans 1 [!-~]+ [0-9\. ]+\x0d\x0a)", "GETMP3\x0d\x0aFilename|^\x01[\x00-\x7f]?[\x00-\x7f]?[\x00-\x7f]?(\x51\x3a\+|\x51\x32\x3a)|^\x10[\x14-\x16]\x10[\x15-\x17][\x00-\x7f]?[\x00-\x7f]?[\x00-\x7f]?[\x00-\x7f]?", "(notify[\x09-\x0d ]\*[\x09-\x0d ]http/1\.1[\x09-\x0d -~]*ssdp:(alive|byebye)|^m-search[\x09-\x0d ]\*[\x09-\x0d ]http/1\.1[\x09-\x0d -~]*ssdp:discover)[\x00-\x7f]*", "(t\x03ni[\x00-\x7f]?[\x01-\x06]?t[\x01-\x05]s[\x0a\x0b](glob|who are you$|query data))[\x00-\x7f]*" ```
scripts/regex_to_automata.py +26 −70 Original line number Diff line number Diff line Loading @@ -8,47 +8,12 @@ import re import codecs number_map = {str(c): c for c in range(128)} wanted_symbols = {str(c) for c in range(128)} failing_regexes = [ # "^.*[sS][yY][sS][tT][eE][mM][pP][aA][tT][hH]\\=([hH][tT]{2}[pP][sS]?)|([fF][tT][pP])", # "^[^\\f\\n\\r\\t\\v]{65}|[^\\f\\n\\r\\t\\v]+[\\f\\n\\r\\t\\v]+[^\\f\\n\\r\\t\\v]{65}|[^\\f\\n\\r\\t\\v]+[\\f\\n\\r\\t\\v]+[^\\f\\n\\r\\t\\v]+[\\f\\n\\r\\t\\v]+[^\\f\\n\\r\\t\\v]{65}", # "^get (X.downloadX[ -~]*|X.supernode[ -~]|X.status[ -~]|X.network[ -~]*|X.files|X.hash\\=[0-9a-f]*X[ -~]*) httpX1.1|user-agent: kazaa|x-kazaa(-username|-network|-ip|-supernodeip|-xferid|-xferuid|tag)|^give [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]?[0-9]?[0-9]?", # "({(?\\=[0-9]+}[^\\n]*?[\\f\\n\\r\\t\\v]AUTH)|AUTH[\\f\\n\\r\\t\\v][^\\n]*?{(?\\=[0-9]+}))", # "^(\\*[\\x01\\x02].*\\x03\\x0b|\\*\\x01.?.?.?.?\\x01)|flapon|toc_signon.*0x", # "^(\\x11\\x20\\x01...?\\x11|\\xfe\\xfd.?.?.?.?.?.?(\\x14\\x01\\x06|\\xff\\xff\\xff))|[\\]\\x01].?battlefield2", # "^(\\x13bittorrent protocol|azver\\x01$|get Xscrape\\?info_hash\\=get Xannounce\\?info_hash\\=|get XclientXbitcometX|GET Xdata\\?fid\\=)|d1:ad2:id20:|\\x08'7P\\)[RP]", # "^[a-z][a-z0-9\\-_]+|login: [\\x09-\\x0d -~]* name: [\\x09-\\x0d -~]* Directory:", # "^get X.*icy-metadata:1|icy [1-5][0-9][0-9] [\\x09-\\x0d -~]*(content-type:audio|icy-)", # "^([()]|get)(...?.?.?(reg|get|query)|.+User-Agent: (MozillaX4\\.0 \\(compatible; (MSIE 6\\.0; Windows NT 5\\.1;? ?\\)|MSIE 5\\.00; Windows 98\\))))|Keep-Alive\\x0d\\x0a\\x0d\\x0a[26]", # "^[\\f\\n\\r\\t\\v]*Accept-Language[\\f\\n\\r\\t\\v]*|3a|[\\f\\n\\r\\t\\v]*([^\\r\\n]*?\\x2c){20}", # "filename[\\f\\n\\r\\t\\v]*\\=[\\f\\n\\r\\t\\v]*.*?\\.(?\\=[abcdehijlmnoprsvwx])(a(d[ep]|s[dfx])|c([ho]m|li|md|pp)|d(iz|ll|ot)|e(m[fl]|xe)|h(lp|sq|ta)|jse?|m(d[abew]|s[ip])|p(p[st]|if|[lm]|ot)|r(eg|tf)|s(cr|[hy]s|wf)|v(b[es]?|cf|xd)|w(m[dfsz]|p[dmsz]|s[cfh])|xl[tw]|bat|ini|lnk|nws|ocx)[\\x27\\x22\\n\\r[\\f\\n\\r\\t\\v]]", # "\\x2f(?\\=[abdefijoqrsuvwxz])(d(ixqshv\\x2fqzccs|yddznydqir\\x2fevi)|f(seqepagqfphv\\x2fsfd|ulmxct\\x2fmqoyc)|i(ohgdhkzfhdzo\\x2fuwp|yxegtd\\x2fefcwg)|j((bevgezfmegwy\\x2fnt|mqnqgijmng\\x2foj)a|hjhgquqssq\\x2fpjm|pjpoptwql\\x2frlnj)|s(mtmeihf\\x2fhiuxz|vclxatmlhavj\\x2fvsy)|(aohobygi\\x2fzwiw|rprpgbnrppb\\x2fci)f|bnymomspyo\\x2fzowy|eveocczmthmmq\\x2fomzl|ocllceclbhs\\x2fgth|(qlqqlbojvii\\x2fgt|xbqyosoe\\x2fcpvm)i|urfiqileuq\\x2ftjzu|(vvvjkhmbgnbbw\\x2fqbn|wjpropqmlpohj\\x2flo)q|zzzvmkituktgr\\x2fetie)\\.exe", # "\\x2f(?\\=[defghilmnoqrstwz])(m(ookflolfctm\\x2fnmot\\.fmu|clvompycem\\x2fcen\\.vcn)|e(etbuviaebe\\x2feqv\\.bvv|mcndvwoemn\\x2flvv\\.jde)|s(fhfksjzsfu\\x2fahm\\.uqs|rvziadzvzr\\x2fsaei\\.vvt)|n(kxlvcob\\x2fkmpk\\.ibl|pgwtjgxwthx\\x2fbyb\\.xky|hirmvtg\\x2fggqh\\.kqh)|(wlpgskmv\\x2flwzo\\.qv|gdvsotuqwsg\\x2fdxt\\.hd)g|(twfofrfzlugq\\x2feve\\.qd|doarauzeraqf\\x2fvvv\\.ul|qisezhin\\x2fiqor\\.ym)v|fowclxccdxn\\x2fuxwn\\.ddy|lnzzlnbk\\x2fpkrm\\.fin|iufilfwulmfi\\x2friuf\\.lio|(hsdszhmoshh\\x2flhr\\.cn|oakmanympnw\\x2flnkd\\.pk)h|riggiymd\\x2fwdhi\\.vhi|zmnjgmomgbdz\\x2fzzmw\\.gzt)", # "x-unix-mode[\\f\\n\\r\\t\\v]*\\x3D[\\f\\n\\r\\t\\v]*(?(?\\=[0-9]{4})[0-7]([1357][0-7]{2}|[0-7][1357][0-7]|[0-7]{2}[1357])|([1357][0-7]{2}|[0-7][1357][0-7]|[0-7]{2}[1357]))", # "/([A-Za-z0-9_]+)[\\f\\n\\r\\t\\v]*\\=[\\f\\n\\r\\t\\v]*('|" "([\\x00->@-\\x7f]*\\.slk([\\?\\x5c\\x2f]|$))[\\x00-\\x7f]*", "[\\x00-\\x7f]*(({(?=[0-9]+}[\\x00-\\x09\\x0b-\\x7f]*?[\\f\\n\\r\\t\\v]AUTH)|AUTH[\\f\\n\\r\\t\\v][\\x00-\\x09\\x0b-\\x7f]*?{(?=[0-9]+})))[\\x00-\\x7f]*", "[\\x00-\\x7f]*(/([A-Za-z0-9_]+)[\\f\\n\\r\\t\\v]*=[\\f\\n\\r\\t\\v]*('|)[\\x00-\\x7f]*", # codes over 300 "((\\x13bittorrent protocol|azver\\x01$|get /scrape\\?info_hash=get /announce\\?info_hash=|get /client/bitcomet/|GET /data\\?fid=)|d1:ad2:id20:|\\x08'7P\\)[RP])[\\x00-\\x7f]*", "(get (/[\\x00-\\x7f]download/[ -~]*|/[\\x00-\\x7f]supernode[ -~]|/[\\x00-\\x7f]status[ -~]|/[\\x00-\\x7f]network[ -~]*|/[\\x00-\\x7f]files|/[\\x00-\\x7f]hash=[0-9a-f]*/[ -~]*) http/1[\\x00-\\x7f]1|user-agent: kazaa|x-kazaa(-username|-network|-ip|-supernodeip|-xferid|-xferuid|tag)|^give [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]?[0-9]?[0-9]?)[\\x00-\\x7f]*", "[\\x00-\\x7f]*(<peerplat>|^get /getfilebyhash\\.cgi\\?|^get /queue_register\\.cgi\\?|^get /getupdowninfo\\.cgi\\?)[\\x00-\\x7f]*", "[\\x00-\\x7f]*(ver [0-9]+ msnp[1-9][0-9]? [\\x09-\\x0d -~]*cvr0\\x0d\\x0a$|usr 1 [!-~]+ [0-9\\. ]+\\x0d\\x0a$|ans 1 [!-~]+ [0-9\\. ]+\\x0d\\x0a)", "GETMP3\\x0d\\x0aFilename|^\\x01[\\x00-\\x7f]?[\\x00-\\x7f]?[\\x00-\\x7f]?(\\x51\\x3a\\+|\\x51\\x32\\x3a)|^\\x10[\\x14-\\x16]\\x10[\\x15-\\x17][\\x00-\\x7f]?[\\x00-\\x7f]?[\\x00-\\x7f]?[\\x00-\\x7f]?", "(notify[\\x09-\\x0d ]\\*[\\x09-\\x0d ]http/1\\.1[\\x09-\\x0d -~]*ssdp:(alive|byebye)|^m-search[\\x09-\\x0d ]\\*[\\x09-\\x0d ]http/1\\.1[\\x09-\\x0d -~]*ssdp:discover)[\\x00-\\x7f]*", "(t\\x03ni[\\x00-\\x7f]?[\\x01-\\x06]?t[\\x01-\\x05]s[\\x0a\\x0b](glob|who are you$|query data))[\\x00-\\x7f]*", ] overflow_regexes = [ "([\\x00-\\x7f]*cache_lastpostdate\\[[\\x00-Z\\\\-\\x7F]+\\]=[\\x01-:<-<>-\\x7f]{30})[\\x00-\\x7f]*", "[\\x00-\\x7f]*(\\x5c[\\x00-\\[\\]-\\x7f]{16}|\\x2f[\\x00-\\.0-\\x7f]{16})\\.cda", "[\\x00-\\x7f]*((\\x5c[\\x00-\\[\\]-\\x7f]{16,}|\\x2f[\\x00-\\.0-\\x7f]{16,})\\.cda)", ] number_map = {str(c): c for c in range(256)} wanted_symbols = set(number_map.keys()) def unescape_invalid_escapes(string: str) -> str: return re.sub(r'([^\\])\\([\d=&;ceEgGik-mo-qK-QTuy])', r'\1\2', string) return re.sub(r'([^\\])\\([\dceGghikKlmopPqTuyVE])', r'\1\2', string) def contains_non_ascii(regex: str) -> bool: Loading @@ -61,23 +26,23 @@ def contains_non_ascii(regex: str) -> bool: def is_allowed(regex: str) -> bool: # invalid = re.compile(r"\\[0-9a-eg-mo-quwyzA-Z]|\|3A\||\^\^|\{\d{4}\}|\{[^\}]*[\d]{4}[^\}]*\}|\\x80-t") invalid = re.compile(r"\{\d{4},?\}|\[\\x00-Z\\\\-\\x7F\]|\(\?=") invalid = re.compile(r"\{\d{4},?\}|\(\?=|\\x80-t") return re.search(invalid, regex) is None \ and not contains_non_ascii(regex) \ and regex not in failing_regexes + overflow_regexes return re.search(invalid, regex) is None def from_regex(regex, output_path): def regex_to_mata_nfa(regex: str): regex = unescape_invalid_escapes(regex) try: m_nfa = mata_parser.from_regex(regex) return mata_parser.from_regex(regex, encoding="Latin-1") except Exception as e: print(regex) raise e def from_regex(regex, output_path): m_nfa = regex_to_mata_nfa(regex) alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) try: Loading @@ -93,38 +58,27 @@ def from_regex(regex, output_path): def add_union(regex: str, add_to): try: m_nfa = mata_parser.from_regex(regex) m_nfa = regex_to_mata_nfa(regex) except Exception as e: return add_to = add_to.union(m_nfa) def preprocess_regex(regex: str) -> str: # the mata compiler does not add Sigma^* to the beginning and end of the regex if not regex.startswith("^"): regex = ".*" + regex if not regex.endswith("$"): regex += ".*" return regex def create_automaton_for_regex_file(regexes: list[str]): nfa = mata_nfa.Nfa() for regex in regexes: regex = regex.strip() if regex and is_allowed(regex) and not regex.startswith("#"): print(regex) # print(regex) # regex = preprocess_regex(regex) # not needed anymore, this is handled in regex_translator add_union(regex, nfa) return nfa def process_re2_files(directory): def process_re2_files(directory: str, union_automata_dir: str, generate_union: bool = False): # Iterate over all files in the directory # root = "/home/notme/nfa-bench/benchmarks/regexps/Bro/" # files = ["/home/notme/nfa-bench/benchmarks/regexps/Bro/bro_uniq_bez.re2"] Loading @@ -138,18 +92,19 @@ def process_re2_files(directory): with open(re2_file_path, 'r') as re2_file: regexes = re2_file.readlines() # automaton_dir = os.path.join(root, "union_automata") # os.makedirs(automaton_dir, exist_ok=True) # automaton_path = os.path.join(automaton_dir, os.path.splitext(file)[0] + ".mata") automaton_dir_name = os.path.splitext(file)[0] # if not os.path.isfile(automaton_path): # m_nfa = create_automaton_for_regex_file(regexes) # alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) # ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet), default_symbol_value = "256") # ali_parser.ext_nfa_to_vtf(ext_nfa, automaton_path) if generate_union: os.makedirs(union_automata_dir, exist_ok=True) automaton_path = os.path.join(union_automata_dir, f"{os.path.splitext(file)[0]}.mata") if not os.path.isfile(automaton_path): m_nfa = create_automaton_for_regex_file(regexes) alphabet = alphabets.OnTheFlyAlphabet.from_symbol_map(number_map) ext_nfa = ali_parser.mata_nfa_to_ext_nfa(mata_handler.MataNfaContainer(m_nfa, alphabet=alphabet), default_symbol_value = "256") ali_parser.ext_nfa_to_vtf(ext_nfa, automaton_path) # Process each regex in the file automaton_dir_name = os.path.splitext(file)[0] automaton_dir = os.path.join(root, automaton_dir_name) if not os.path.isdir(automaton_dir): Loading @@ -171,8 +126,9 @@ if __name__ == "__main__": # Define the directory containing the .re2 files directory = "/home/notme/nfa-bench/benchmarks/regexps/" # directory = "/home/notme/aligater/output/failing_regexes_dir/" union_automata_dir = "/home/notme/nfa-bench/benchmarks/regexps_union/" # Process the .re2 files process_re2_files(directory) process_re2_files(directory, union_automata_dir, True) # from_regex('([\\x00-\\x7f]*\\campaign=snap)[\\x00-\\x7f]*', "")
scripts/regex_translator.py +47 −35 Original line number Diff line number Diff line Loading @@ -68,16 +68,7 @@ def replace_exclusion_group(match) -> str: return replace_group def sanitize_regex_after_translation(regex: str) -> str: # replace the replaced "\/" back after parsing (they do not need to be replaced for re2) regex = regex.replace("\x80", "/") # we cannot handle \[ and \] inside [^...] if re.search(r'[^\\]\[[^\]]*[\[]', regex) is not None: print("[] inside [...]:", regex) regex = unescape_invalid_escapes(regex) def add_self_loops_manually(regex: str) -> str: # the mata compiler does not add Sigma^* to the beginning and end of the regex # and behaves weirdly when there is ^ at the beginning and | somewhere in the middle prefix = "" Loading @@ -96,6 +87,21 @@ def sanitize_regex_after_translation(regex: str) -> str: if prefix != "" or suffix != "": regex = f"{prefix}({regex}){suffix}" return regex def sanitize_regex_after_translation(regex: str) -> str: # replace the replaced "\/" back after parsing (they do not need to be replaced for re2) regex = regex.replace("\x80", "/") # we cannot handle \[ and \] inside [^...] if re.search(r'[^\\]\[[^\]]*[\[]', regex) is not None: print("[] inside [...]:", regex) regex = unescape_invalid_escapes(regex) regex = add_self_loops_manually(regex) # Mata parses regexes over utf-8, therefore . or [^...] is parsed as all valid # utf-8 encodings of the wanted characters, but we only want ascii Loading Loading @@ -126,6 +132,11 @@ def sanitize_regex_after_translation(regex: str) -> str: return regex def pcre_to_re2(regex: str): split = regex.split("/") return "/".join(split[1:-1]) def translate_regex(input_file, output_file): # Open the input file and read all regexes line by line with open(input_file, 'r') as infile: Loading @@ -136,28 +147,32 @@ def translate_regex(input_file, output_file): for regex in regexes: regex = regex.strip() if regex and not regex.startswith("#"): # replace symbols that some of the tools have a problem with regex = sanitize_regex_before_translation(regex) # print(regex) # Use regex-translator to translate each regex result = subprocess.run( [ "regex-translator", "-R", regex, "-F", "pcre", "-T", "re2", "-o" ], capture_output=True, text=True ) if result.returncode == 0: translated_regex = sanitize_regex_after_translation(result.stdout.strip()) # # replace symbols that some of the tools have a problem with # regex = sanitize_regex_before_translation(regex) # # print(regex) # # Use regex-translator to translate each regex # result = subprocess.run( # [ # "regex-translator", # "-R", regex, # "-F", "pcre", # "-T", "re2", # "-o" # ], # capture_output=True, # text=True # ) # if result.returncode == 0: # translated_regex = sanitize_regex_after_translation(result.stdout.strip()) # translated_regexes.append(translated_regex) # else: # print(f"Error translating regex: {regex}") # print(result.stderr) translated_regex = pcre_to_re2(regex) translated_regex = add_self_loops_manually(translated_regex) translated_regexes.append(translated_regex) else: print(f"Error translating regex: {regex}") print(result.stderr) # Write all translated regexes to the output file with open(output_file, 'w') as outfile: Loading @@ -177,9 +192,6 @@ def copy_directory_with_translation(dest_dir): # Translate the PCRE regex to RE2 translate_regex(pcre_file_path, re2_file_path) # Optionally, delete the original .pcre file if not needed # os.remove(pcre_file_path) if __name__ == "__main__": # Define your source and destination directories Loading