diff --git a/libs/Krakatau-11.jar b/libs/Krakatau-11.jar deleted file mode 100644 index 47cee123..00000000 Binary files a/libs/Krakatau-11.jar and /dev/null differ diff --git a/libs/enjarify-3.jar b/libs/enjarify-3.jar deleted file mode 100644 index a0bb48b6..00000000 Binary files a/libs/enjarify-3.jar and /dev/null differ diff --git a/pom.xml b/pom.xml index b8af4a33..31ecb2e5 100644 --- a/pom.xml +++ b/pom.xml @@ -5,6 +5,13 @@ bytecodeviewer 2.9.23 + + 8 + ${java.version} + ${java.version} + UTF-8 + + com.android @@ -109,13 +116,6 @@ dx 1.16 - - enjarify - enjarify - 3 - system - ${project.basedir}/libs/enjarify-3.jar - org.jboss.windup.decompiler decompiler-fernflower @@ -155,13 +155,6 @@ jgraphx 3.4.1.3 - - krakatau - krakatau - 11 - system - ${project.basedir}/libs/Krakatau-11.jar - org.objenesis objenesis @@ -220,8 +213,8 @@ maven-compiler-plugin 3.8.1 - 8 - 8 + ${java.version} + ${java.version} @@ -229,7 +222,7 @@ maven-javadoc-plugin 3.2.0 - 8 + ${java.version} diff --git a/src/main/resources/Krakatau-master/.editorconfig b/src/main/resources/Krakatau-master/.editorconfig new file mode 100644 index 00000000..b0d1ce9b --- /dev/null +++ b/src/main/resources/Krakatau-master/.editorconfig @@ -0,0 +1,8 @@ +root = true + +[*.py] +charset = utf-8 +indent_style = space +indent_size = 4 +insert_final_newline = true +end_of_line = lf diff --git a/src/main/resources/Krakatau-master/.gitattributes b/src/main/resources/Krakatau-master/.gitattributes new file mode 100644 index 00000000..750b8da5 --- /dev/null +++ b/src/main/resources/Krakatau-master/.gitattributes @@ -0,0 +1,2 @@ +* text=auto +*.test binary \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/.gitignore b/src/main/resources/Krakatau-master/.gitignore new file mode 100644 index 00000000..679e5efb --- /dev/null +++ b/src/main/resources/Krakatau-master/.gitignore @@ -0,0 +1,5 @@ +*.pyc +*.pyo +test*.py +Krakatau/plugins/* +tests/.cache diff --git a/src/main/resources/Krakatau-master/Documentation/assembler.txt b/src/main/resources/Krakatau-master/Documentation/assembler.txt new file mode 100644 index 00000000..a8313c9f --- /dev/null +++ b/src/main/resources/Krakatau-master/Documentation/assembler.txt @@ -0,0 +1,295 @@ +Krakatau Assembly Syntax +For a list of previous changes to the assembly syntax, see changelog.txt + +Note: This documents the officially supported syntax of the assembler. The assembler accepts some files that don't fully conform to this syntax, but this behavior may change without warning in the future. + +Lexical structure +Comments: Comments begin with a semicolon and go to the end of the line. Since no valid tokens start with a semicolon, there is no ambiguity. Comments are ignored during parsing. + +Whitespace: At least one consecutive space or tab character + +Lines that are empty except for whitespace or a comment are ignored. Many grammar productions require certain parts to be separated by a newline (LF/CRLF/CR). This is represented below by the terminal EOL. Due to the rules above, EOL can represent an optional comment, followed by a newline, followed by any number of empty/comment lines. There are no line continuations. + +Integer, Long, Float, and Double literals use the same syntax as Java with a few differences: +* No underscores are allowed +* Doubles cannot be suffixed with d or D. +* Decimal floating point literals with values that can’t be represented exactly in the target type aren’t guaranteed to round the same way as in Java. If the exact value is significant, you should use a hexidecimal floating point literal. +* If a decimal point is present, there must be at least one digit before and after it (0.5 is ok, but .5 is not. 5.0 is ok but 5. is not). +* A leading plus or minus sign is allowed. +* Only decimal and hexadecimal literals are allowed (no binary or octal) +* For doubles, special values can be represented by +Infinity, -Infinity, +NaN, and -NaN (case insensitive). For floats, these should be suffixed by f or F. +* NaNs with a specific binary representation can be represented by suffixing with the hexadecimal value in angle brackets. For example, -NaN<0x7ff0123456789abc> or +NaN<0xFFABCDEF>f + +Note: NaN requires a leading sign, even though it is ignored. This is to avoid ambiguity with WORDs. The binary representation of a NaN with no explicit representation may be any valid encoding of NaN. If you care about the binary representation in the classfile, you should specify it explicitly as described above. + +String literals use the same syntax as Java string literals with the following exceptions +* Non printable and non-ascii characters, including tabs, are not allowed. These can be represented by escape sequences as usual. For example \t means tab. +* Either single or double quotes can be used. If single quotes are used, double quotes can appear unescaped inside the string and vice versa. +* There are three additional types of escape sequences allowed: \xDD, \uDDDD, and \UDDDDDDDD where D is a hexadecimal digit. The later two are only allowed in unicode strings (see below). In the case of \U, the digits must correspond to a number less than 0x00110000. \x represents a byte or code point up to 255. \u represents a code point up to 65535. \U represents a code point up to 1114111 (0x10FFFF), which will be split into a surrogate pair when encoded if it is above 0xFFFF. +* There are two types of string literals - bytes and unicode. Unicode strings are the default and represent a sequence of code points which will be MUTF8 encoded when written to the classfile. A byte string, represented by prefixing with b or B, represents a raw sequence of bytes which will be written unchanged. For example, "\0" is encoded to a two byte sequence while b"\0" puts an actual null byte in the classfile (which is invalid, but potentially useful for testing). + +Reference: The classfile format has a large number of places where an index is made into the constant pool or bootstrap methods table. The assembly format allows you to specify the definition inline, and the assembler will automatically add an entry as appropriate and fill in the index. However, this isn’t acceptable in cases where the exact binary layout is important or where a definition is large and you want to refer to it many times without copying the definition each time. + +For the first case, there are numeric references, designated by a decimal integer in square brackets with no leading zeroes. For example, [43] refers to the index 43 in the constant pool. For the second case, there are symbolic references, which is a sequence of lowercase ascii, digits, and underscores inside square brackets, not beginning with a digit. For example, [foo_bar4]. + +Bootstrap method references are the same except preceded by "bs:". For example, [bs:43] or [bs:foo_bar4]. These are represented by the terminal BSREF. Bootstrap method references are only used in very specific circumstances so you probably won’t need them. All other references are constant pool references and have no prefix, designated by the terminal CPREF. + +Note: Constant pools and bootstrap method tables are class-specific. So definitions inside one class do not affect any other classes assembled from the same source file. + +Labels refer to a position within a method’s bytecode. The assembler will automatically fill in each label with the calculated numerical offset. Labels consist of a capital L followed by ascii letters, digits, and underscores. A label definition (LBLDEF) is a label followed by a colon (with no space). For example, "LSTART:". Label uses are included in the WORD token type defined below since they don’t have a colon. + +Note: Labels refer to positions in the bytecode of the enclosing Code attribute where they appear. They may not appear outside of a Code attribute. + +Word: A string beginning with a word_start_character, followed by zero or more word_start_character or word_rest_characters. Furthermore, if the first character is a [, it must be followed by another [ or a capital letter (A-Z). + +word_start_character: a-z, A-Z, _, $, (, <, [ +word_rest_character: 0-9, ), >, /, ;, *, +, - + +Words are used to specify names, identifiers, descriptors, and so on. If you need to specify a name that can’t be represented as a word (such as using forbidden characters), a string literal can be used instead. Words are represented in the grammar by the terminal WORD. + +For example, 42 is not a valid word because it begins with a digit. A class named 42 can be defined as follows: + +.class "42" + +In addition, when used in a context following flags, words cannot be any of the possible flag names. These are currently public, private, protected, static, final, super, synchronized, open, transitive, volatile, bridge, static_phase, transient, varargs, native, interface, abstract, strict, synthetic, annotation, enum, module, and mandated. In addition, strictfp is disallowed to avoid confusion. So if you wanted to have a string field named bridge, you’d have to do + +.field "bridge" Ljava/lang/String; + +Format of grammar rules +Nonterminals are specified in lowercase. Terminals with a specific value required are specified in quotes. e.g. "Foo" means that the exact text Foo (case sensitive) has to appear at that point. Terminals that require a value of a given token type are represented in all caps, e.g. EOL, INT_LITERAL, FLOAT_LITERAL, LONG_LITERAL, DOUBLE_LITERAL, STRING_LITERAL, CPREF, BSREF, WORD, LBLDEF. + +*, +, ?, |, and () have their usual meanings in regular expressions. + +Common constant rules +s8: INT_LITERAL +u8: INT_LITERAL +s16: INT_LITERAL +u16: INT_LITERAL +s32: INT_LITERAL +u32: INT_LITERAL + +ident: WORD | STRING_LITERAL +utfref: CPREF | ident +clsref: CPREF | ident +natref: CPREF | ident utfref +fmimref: CPREF | fmim_tagged_const +bsref: BSREF | bsnotref +invdynref: CPREF | invdyn_tagged_const + +handlecode: "getField" | "getStatic" | "putField" | "putStatic" | "invokeVirtual" | "invokeStatic" | "invokeSpecial" | "newInvokeSpecial" | "invokeInterface" +mhandlenotref: handlecode (CPREF | fmim_tagged_const) +mhandleref: CPREF | mhandlenotref + +cmhmt_tagged_const: "Class" utfref | "MethodHandle" mhandlenotref | "MethodType" utfref +ilfds_tagged_const: "Integer" INT_LITERAL | "Float" FLOAT_LITERAL | "Long" LONG_LITERAL | "Double" DOUBLE_LITERAL | "String" STRING_LITERAL +simple_tagged_const: "Utf8" ident | "NameAndType" utfref utfref +fmim_tagged_const: ("Field" | "Method" | "InterfaceMethod") clsref natref +invdyn_tagged_const: "InvokeDynamic" bsref natref + +ref_or_tagged_const_ldc: CPREF | cmhmt_tagged_const | ilfds_tagged_const +ref_or_tagged_const_all: ref_or_tagged_ldconst | simple_tagged_const | fmim_tagged_const | invdyn_tagged_const + +bsnotref: mhandlenotref ref_or_tagged_const_ldc* ":" +ref_or_tagged_bootstrap: BSREF | "Bootstrap" bsnotref + +Note: The most deeply nested possible valid constant is 6 levels (InvokeDynamic -> Bootstrap -> MethodHandle -> Method -> NameAndType -> Utf8). It is possible to create a more deeply nested constant definitions in this grammar by using references with invalid types, but the assembler may reject them. + +ldc_rhs: CPREF | INT_LITERAL | FLOAT_LITERAL | LONG_LITERAL | DOUBLE_LITERAL | STRING_LITERAL | cmhmt_tagged_const + +flag: "public" | "private" | "protected" | "static" | "final" | "super" | "synchronized" | "volatile" | "bridge" | "transient" | "varargs" | "native" | "interface" | "abstract" | "strict" | "synthetic" | "annotation" | "enum" | "mandated" +Basic assembly structure + +assembly_file: EOL? class_definition* +class_definition: version? class_start class_item* class_end + +version: ".version" u16 u16 EOL +class_start: class_directive super_directive interface_directive* +class_directive: ".class" flag* clsref EOL +super_directive: ".super" clsref EOL +interface_directive: ".implements" clsref EOL +class_end: ".end" "class" EOL + +class_item: const_def | bootstrap_def | field_def | method_def | attribute + +const_def: ".const" CPREF "=" ref_or_tagged_const_all EOL +bootstrap_def: ".bootstrap" BSREF "=" ref_or_tagged_bootstrap EOL + +Note: If the right hand side is a reference, the left hand side must be a symbolic reference. For example, the following two are valid. +.const [foo] = [bar] +.const [foo] = [42] + +While these are not valid. +.const [42] = [foo] +.const [42] = [32] + +field_def: ".field" flag* utfref utfref initial_value? field_attributes? EOL +initial_value: "=" ldc_rhs +field_attributes: ".fieldattributes" EOL attribute* ".end" ".fieldattributes" + +method_def: method_start (method_body | legacy_method_body) method_end +method_start: ".method" flag* utfref ":" utfref EOL +method_end: ".end" "method" EOL + +method_body: attribute* +legacy_method_body: limit_directive+ code_body +limit_directive: ".limit" ("stack" | "locals") u16 EOL + +Attributes +attribute: (named_attribute | generic_attribute) EOL +generic_attribute: ".attribute" utfref length_override? attribute_data +length_override: "length" u32 +attribute_data: named_attribute | STRING_LITERAL + +named_attribute: annotation_default | bootstrap_methods | code | constant_value | deprecated | enclosing_method | exceptions | inner_classes | line_number_table | local_variable_table | local_variable_type_table | method_parameters | runtime_annotations | runtime_visible_parameter_annotations | runtime_visible_type_annotations | signature | source_debug_extension | source_file | stack_map_table | synthetic + +annotation_default: ".annotationdefault" element_value + +bootstrap_methods: ".bootstrapmethods" +Note: The content of a BootstrapMethods attribute is automatically filled in based on the implicitly and explicitly defined bootstrap methods in the class. If this attribute’s contents are nonempty and the attribute isn’t specified explicitly, one will be added implicitly. This means that you generally don’t have to specify it. It’s only useful if you care about the exact binary layout of the classfile. + + +code: code_start code_body code_end +code_start: ".code" "stack" code_limit_t "locals" code_limit_t EOL +code_limit_t: u8 | u16 +code_end: ".end" "code" + +Note: A Code attribute can only appear as a method attribute. This means that they cannot be nested. + +constant_value: ".constantvalue" ldc_rhs + +deprecated: ".deprecated" + +enclosing_method: ".enclosing" "method" clsref natref + +exceptions: ".exceptions" clsref* + +inner_classes: ".innerclasses" EOL inner_classes_item* ".end" "innerclasses" +inner_classes_item: cpref cpref utfref flag* EOL + +line_number_table: ".linenumbertable" EOL line_number* ".end" "linenumbertable" +line_number: label u16 EOL + +local_variable_table: ".localvariabletable" EOL local_variable* ".end" "localvariabletable" +local_variable: u16 "is" utfref utfref code_range EOL + +local_variable_type_table: ".localvariabletypetable" EOL local_variable_type* ".end" "localvariabletypetable" +local_variable_type: u16 "is" utfref utfref code_range EOL + +method_parameters: ".methodparameters" EOL method_parameter_item* ".end" "methodparameters" +method_parameter_item: utfref flag* EOL + +runtime_annotations: ".runtime" visibility (normal_annotations | parameter_annotations | type_annotations) ".end" "runtime" +visibility: "visible" | "invisible" +normal_annotations: "annotations" EOL annotation_line* +parameter_annotations: "paramannotations" EOL parameter_annotation_line* +type_annotations: "typeannotations" EOL type_annotation_line* + + +signature: ".signature" utfref + +source_debug_extension: ".sourcedebugextension" STRING_LITERAL + +source_file: ".sourcefile" utfref + +stack_map_table: ".stackmaptable" + +Note: The content of a StackMapTable attribute is automatically filled in based on the stack directives in the enclosing code attribute. If this attribute’s contents are nonempty and the attribute isn’t specified explicitly, one will be added implicitly. This means that you generally don’t have to specify it. It’s only useful if you care about the exact binary layout of the classfile. + +Note: The StackMapTable attribute depends entirely on the .stack directives specified. Krakatau will not calculate a new stack map for you from bytecode that does not have any stack information. If you want to do this, you should try using ASM. + +synthetic: ".synthetic" + +Code + +code_body: (instruction_line | code_directive)* attribute* +code_directive: catch_directive | stack_directive | ".noimplicitstackmap" + +catch_directive: ".catch" clsref code_range "using" label EOL +code_range: "from" label "to" label + +stack_directive: ".stack" stackmapitem EOL +stackmapitem: stackmapitem_simple | stackmapitem_stack1 | stackmapitem_append | stackmapitem_full +stackmapitem_simple: "same" | "same_extended" | "chop" INT_LITERAL +stackmapitem_stack1: ("stack_1" | "stack_1_extended") verification_type +stackmapitem_append: "append" vt1to3 +vt1to3: verification_type verification_type? verification_type? +stackmapitem_full: "full" EOL "locals" vtlist "stack" vtlist ".end" "stack" +vtlist: verification_type* EOL + +verification_type: "Top" | "Integer" | "Float" | "Double" | "Long" | "Null" | "UninitializedThis" | "Object" clsref | "Uninitialized" label + +instruction_line: (LBLDEF | LBLDEF? instruction) EOL +instruction: simple_instruction | complex_instruction +simple_instruction: op_none | op_short u8 | op_iinc u8 s8 | op_bipush s8 | op_sipush s16 | op_lbl label | op_fmim fmimref | on_invint fmimref u8? | op_invdyn invdynref | op_cls clsref | op_cls_int clsref u8 | op_ldc ldc_rhs + +op_none: "nop" | "aconst_null" | "iconst_m1" | "iconst_0" | "iconst_1" | "iconst_2" | "iconst_3" | "iconst_4" | "iconst_5" | "lconst_0" | "lconst_1" | "fconst_0" | "fconst_1" | "fconst_2" | "dconst_0" | "dconst_1" | "iload_0" | "iload_1" | "iload_2" | "iload_3" | "lload_0" | "lload_1" | "lload_2" | "lload_3" | "fload_0" | "fload_1" | "fload_2" | "fload_3" | "dload_0" | "dload_1" | "dload_2" | "dload_3" | "aload_0" | "aload_1" | "aload_2" | "aload_3" | "iaload" | "laload" | "faload" | "daload" | "aaload" | "baload" | "caload" | "saload" | "istore_0" | "istore_1" | "istore_2" | "istore_3" | "lstore_0" | "lstore_1" | "lstore_2" | "lstore_3" | "fstore_0" | "fstore_1" | "fstore_2" | "fstore_3" | "dstore_0" | "dstore_1" | "dstore_2" | "dstore_3" | "astore_0" | "astore_1" | "astore_2" | "astore_3" | "iastore" | "lastore" | "fastore" | "dastore" | "aastore" | "bastore" | "castore" | "sastore" | "pop" | "pop2" | "dup" | "dup_x1" | "dup_x2" | "dup2" | "dup2_x1" | "dup2_x2" | "swap" | "iadd" | "ladd" | "fadd" | "dadd" | "isub" | "lsub" | "fsub" | "dsub" | "imul" | "lmul" | "fmul" | "dmul" | "idiv" | "ldiv" | "fdiv" | "ddiv" | "irem" | "lrem" | "frem" | "drem" | "ineg" | "lneg" | "fneg" | "dneg" | "ishl" | "lshl" | "ishr" | "lshr" | "iushr" | "lushr" | "iand" | "land" | "ior" | "lor" | "ixor" | "lxor" | "i2l" | "i2f" | "i2d" | "l2i" | "l2f" | "l2d" | "f2i" | "f2l" | "f2d" | "d2i" | "d2l" | "d2f" | "i2b" | "i2c" | "i2s" | "lcmp" | "fcmpl" | "fcmpg" | "dcmpl" | "dcmpg" | "ireturn" | "lreturn" | "freturn" | "dreturn" | "areturn" | "return" | "arraylength" | "athrow" | "monitorenter" | "monitorexit" + +op_short: "iload" | "lload" | "fload" | "dload" | "aload" | "istore" | "lstore" | "fstore" | "dstore" | "astore" | "ret" + +op_iinc: "iinc" +op_bipush: "bipush" +op_sipush: "sipush" + +op_lbl: "ifeq" | "ifne" | "iflt" | "ifge" | "ifgt" | "ifle" | "if_icmpeq" | "if_icmpne" | "if_icmplt" | "if_icmpge" | "if_icmpgt" | "if_icmple" | "if_acmpeq" | "if_acmpne" | "goto" | "jsr" | "ifnull" | "ifnonnull" | "goto_w" | "jsr_w" + +op_fmim: "getstatic" | "putstatic" | "getfield" | "putfield" | "invokevirtual" | "invokespecial" | "invokestatic" +on_invint: "invokeinterface" +op_invdyn: "invokedynamic" + +op_cls: "new" | "anewarray" | "checkcast" | "instanceof" +op_cls_int: "multianewarray" + +op_ldc: "ldc" | "ldc_w" | "ldc2_w" + +complex_instruction: ins_newarr | ins_lookupswitch | ins_tableswitch | ins_wide + +ins_newarr: "newarray" nacode +nacode: "boolean" | "char" | "float" | "double" | "byte" | "short" | "int" | "long" + +ins_lookupswitch: "lookupswitch" EOL luentry* defaultentry +luentry: s32 ":" label EOL +defaultentry: "default:" label + +ins_tableswitch: "tableswitch" s32 EOL tblentry* defaultentry +tblentry: label EOL + +ins_wide: "wide" (op_short u16 | op_iinc u16 s16) + +label: WORD +Annotations +element_value_line: element_value EOL +element_value: primtag ldc_rhs | "string" utfref | "class" utfref | "enum" utfref utfref | element_value_array | "annotation" annotation_contents annotation_end +primtag: "byte" | "char" | "double" | "int" | "float" | "long" | "short" | "boolean" +element_value_array: "array" EOL element_value_line* ".end" "array" + +annotation_line: annotation EOL +annotation: ".annotation" annotation_contents annotation_end +annotation_contents: utfref key_ev_line* +key_ev_line: utfref "=" element_value_line +annotation_end: ".end" "annotation" + +parameter_annotation_line: parameter_annotation EOL +parameter_annotation: ".paramannotation" EOL annotation_line* ".end" "paramannotation" + +type_annotation_line: type_annotation EOL +type_annotation: ".typeannotation" u8 target_info EOL target_path EOL type_annotation_rest +target_info: type_parameter_target | supertype_target | type_parameter_bound_target | empty_target | method_formal_parameter_target | throws_target | localvar_target | catch_target | offset_target | type_argument_target + +type_parameter_target: "typeparam" u8 +supertype_target: "super" u16 +type_parameter_bound_target: "typeparambound" u8 u8 +empty_target: "empty" +method_formal_parameter_target: "methodparam" u8 +throws_target: "throws" u16 + +localvar_target: "localvar" EOL localvarrange* ".end" "localvar" +localvarrange: (code_range | "nowhere") u16 EOL + +catch_target: "catch" u16 +offset_target: "offset" label +type_argument_target: "typearg" label u8 + +target_path: ".typepath" EOL type_path_segment* ".end" "typepath" +type_path_segment: u8 u8 EOL + +type_annotation_rest: annotation_contents ".end" "typeannotation" diff --git a/src/main/resources/Krakatau-master/Documentation/changelog.txt b/src/main/resources/Krakatau-master/Documentation/changelog.txt new file mode 100644 index 00000000..c9577261 --- /dev/null +++ b/src/main/resources/Krakatau-master/Documentation/changelog.txt @@ -0,0 +1,12 @@ +2018.01.26: + Add .noimplicitstackmap + +2016.10.18: (Backwards incompatible) + String element values take utfref, rather than ldcrhs + +2016.06.10: + Allow +, -, * to be used in WORDS, except at the beginning of a WORD. This allows all signature values to be specified without quotes. + Allow argument count of invokeinterface to be omitted when descriptor is specified inline. + +2015.12.23: (Backwards incompatible) + Complete rewrite of the assembler. To many changes to list. diff --git a/src/main/resources/Krakatau-master/Krakatau/__init__.py b/src/main/resources/Krakatau-master/Krakatau/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/__init__.py b/src/main/resources/Krakatau-master/Krakatau/assembler/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/assembly.py b/src/main/resources/Krakatau-master/Krakatau/assembler/assembly.py new file mode 100644 index 00000000..1ac8fba2 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/assembly.py @@ -0,0 +1,246 @@ +from .pool import Pool, utf +from .writer import Writer, Label + + +def writeU16Count(data, error, objects, message): + count = len(objects) + if count >= 1<<16: + error('Maximum {} count is {}, found {}.'.format(message, (1<<16)-1, count), objects[-1].tok) + data.u16(count) + +class Code(object): + def __init__(self, tok, short): + self.tok = tok + self.short = short + self.locals = self.stack = 0 + + self.bytecode = Writer() + self.exceptions = Writer() + self.exceptcount = 0 + + self.stackdata = Writer() + self.stackcount = 0 + self.stackcountpos = self.stackdata.ph16() + self.laststackoff = -1 # first frame doesn't subtract 1 from offset + + self.stackmaptable = None + self.dont_generate_stackmap = False + self.attributes = [] + + self.labels = {} + self.maxcodelen = (1<<16 if short else 1<<32) - 1 + + def labeldef(self, lbl, error): + if lbl.sym in self.labels: + error('Duplicate label definition', lbl.tok, + 'Previous definition here:', self.labels[lbl.sym][0]) + self.labels[lbl.sym] = lbl.tok, self.bytecode.pos + + def catch(self, ref, fromlbl, tolbl, usinglbl): + self.exceptcount += 1 + self.exceptions.lbl(fromlbl, 0, 'u16') + self.exceptions.lbl(tolbl, 0, 'u16') + self.exceptions.lbl(usinglbl, 0, 'u16') + self.exceptions.ref(ref) + + def assembleNoCP(self, data, error): + bytecode = self.bytecode + + if self.short: + data.u8(self.stack), data.u8(self.locals), data.u16(len(bytecode)) + else: + data.u16(self.stack), data.u16(self.locals), data.u32(len(bytecode)) + data += bytecode + + data.u16(self.exceptcount) + data += self.exceptions + + if self.stackmaptable is None and self.stackcount > 0 and not self.dont_generate_stackmap: + # Use arbitrary token in case we need to report errors + self.stackmaptable = Attribute(self.tok, b'StackMapTable') + self.attributes.append(self.stackmaptable) + + if self.stackmaptable: + self.stackdata.setph16(self.stackcountpos, self.stackcount) + self.stackmaptable.data = self.stackdata + + writeU16Count(data, error, self.attributes, 'attribute') + for attr in self.attributes: + attr.assembleNoCP(data, error) + return data.fillLabels(self.labels, error) + +class Attribute(object): + def __init__(self, tok, name, length=None): + assert tok + if isinstance(name, bytes): + name = utf(tok, name) + + self.tok = tok + self.name = name + self.length = length + self.data = Writer() + + def assembleNoCP(self, data, error): + length = len(self.data) if self.length is None else self.length + if length >= 1<<32: + error('Maximum attribute data length is {} bytes, got {} bytes.'.format((1<<32)-1, length), self.tok) + + data.ref(self.name) + data.u32(length) + data += self.data + return data + +class Method(object): + def __init__(self, tok, access, name, desc): + self.tok = tok + self.access = access + self.name = name + self.desc = desc + self.attributes = [] + + def assembleNoCP(self, data, error): + data.u16(self.access) + data.ref(self.name) + data.ref(self.desc) + + writeU16Count(data, error, self.attributes, 'attribute') + for attr in self.attributes: + attr.assembleNoCP(data, error) + return data + +class Field(object): + def __init__(self, tok, access, name, desc): + self.tok = tok + self.access = access + self.name = name + self.desc = desc + self.attributes = [] + + def assembleNoCP(self, data, error): + data.u16(self.access) + data.ref(self.name) + data.ref(self.desc) + + writeU16Count(data, error, self.attributes, 'attribute') + for attr in self.attributes: + attr.assembleNoCP(data, error) + return data + +class Class(object): + def __init__(self): + self.version = 49, 0 + self.access = self.this = self.super = None + + self.interfaces = [] + self.fields = [] + self.methods = [] + self.attributes = [] + + self.useshortcodeattrs = False + self.bootstrapmethods = None + self.pool = Pool() + + def _getName(self): + cpool = self.pool.cp + clsind = self.this.resolved_index + if not cpool.slots.get(clsind): + return None + + if cpool.slots[clsind].type != 'Class': + return None + + utfind = cpool.slots[clsind].refs[0].resolved_index + if utfind not in cpool.slots: + return None + + return cpool.slots[utfind].data + + def _assembleNoCP(self, error): + beforepool = Writer() + afterpool = Writer() + + beforepool.u32(0xCAFEBABE) + beforepool.u16(self.version[1]) + beforepool.u16(self.version[0]) + + afterpool.u16(self.access) + afterpool.ref(self.this) + afterpool.ref(self.super) + writeU16Count(afterpool, error, self.interfaces, 'interface') + for i in self.interfaces: + afterpool.ref(i) + + writeU16Count(afterpool, error, self.fields, 'field') + for field in self.fields: + field.assembleNoCP(afterpool, error) + + writeU16Count(afterpool, error, self.methods, 'method') + for method in self.methods: + method.assembleNoCP(afterpool, error) + + attrcountpos = afterpool.ph16() + afterbs = Writer() + + data = afterpool + for attr in self.attributes: + if attr is self.bootstrapmethods: + # skip writing this attr for now and switch to after bs stream + data = afterbs + else: + attr.assembleNoCP(data, error) + + return beforepool, afterpool, afterbs, attrcountpos + + def assemble(self, error): + beforepool, afterpool, afterbs, attrcountpos = self._assembleNoCP(error) + + self.pool.cp.freezedefs(self.pool, error) + self.pool.bs.freezedefs(self.pool, error) + + # afterpool is the only part that can contain ldcs + assert not beforepool.refu8phs + assert not afterbs.refu8phs + for _, ref in afterpool.refu8phs: + ind = ref.resolve(self.pool, error) + if ind >= 256: + error("Ldc references too many distinct constants in this class. If you don't want to see this message again, use ldc_w instead of ldc everywhere.", ref.tok) + + beforepool.fillRefs(self.pool, error) + afterpool.fillRefs(self.pool, error) + afterbs.fillRefs(self.pool, error) + + # Figure out if we need to add an implicit BootstrapMethods attribute + self.pool.resolveIDBSRefs(error) + if self.bootstrapmethods is None and self.pool.bs.slots: + assert len(afterbs) == 0 + # Use arbitrary token in case we need to report errors + self.bootstrapmethods = Attribute(self.this.tok, b'BootstrapMethods') + self.attributes.append(self.bootstrapmethods) + if self.bootstrapmethods is not None: + self.bootstrapmethods.name.resolve(self.pool, error) + assert len(self.bootstrapmethods.data) == 0 + + if len(self.attributes) >= 1<<16: + error('Maximum class attribute count is 65535, found {}.'.format(count), self.attributes[-1].tok) + afterpool.setph16(attrcountpos, len(self.attributes)) + + + cpdata, bsmdata = self.pool.write(error) + assert len(bsmdata) < (1 << 32) + + data = beforepool + data += cpdata + data += afterpool + + if self.bootstrapmethods is not None: + self.bootstrapmethods.data = bsmdata + self.bootstrapmethods.assembleNoCP(data, error) + data.fillRefs(self.pool, error) + data += afterbs + else: + assert len(afterbs) == 0 + + name = self._getName() + if name is None: + error('Invalid reference for class name.', self.this.tok) + return name, data.toBytes() diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/codes.py b/src/main/resources/Krakatau-master/Krakatau/assembler/codes.py new file mode 100644 index 00000000..dbd05b6e --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/codes.py @@ -0,0 +1,12 @@ +_handle_types = 'getField getStatic putField putStatic invokeVirtual invokeStatic invokeSpecial newInvokeSpecial invokeInterface'.split() +handle_codes = dict(zip(_handle_types, range(1,10))) +handle_rcodes = {v:k for k,v in handle_codes.items()} + +newarr_rcodes = ([None]*4) + 'boolean char float double byte short int long'.split() +newarr_codes = dict(zip('boolean char float double byte short int long'.split(), range(4,12))) + +vt_rcodes = ['Top','Integer','Float','Double','Long','Null','UninitializedThis','Object','Uninitialized'] +vt_codes = {k:i for i,k in enumerate(vt_rcodes)} + +et_rtags = dict(zip(map(ord, 'BCDFIJSZsec@['), 'byte char double float int long short boolean string enum class annotation array'.split())) +et_tags = {v:k for k,v in et_rtags.items()} diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/disassembly.py b/src/main/resources/Krakatau-master/Krakatau/assembler/disassembly.py new file mode 100644 index 00000000..c967fba5 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/disassembly.py @@ -0,0 +1,843 @@ +from __future__ import print_function + +import collections +import math +import re + +from ..classfileformat import classdata, mutf8 +from ..classfileformat.reader import Reader, TruncatedStreamError +from ..util.thunk import thunk + +from . import codes, token_regexes +from . import flags +from .instructions import OPNAMES, OP_CLS, OP_FMIM, OP_LBL, OP_NONE, OP_SHORT + +MAX_INLINE_SIZE = 300 +MAX_INDENT = 20 +WORD_REGEX = re.compile(token_regexes.WORD + r'\Z') + +PREFIXES = {'Utf8': 'u', 'Class': 'c', 'String': 's', 'Field': 'f', 'Method': 'm', 'InterfaceMethod': 'im', 'NameAndType': 'nat', 'MethodHandle': 'mh', 'MethodType': 'mt', 'InvokeDynamic': 'id'} + +class DisassemblyError(Exception): + pass + +def reprbytes(b): + # repr will have b in python3 but not python2 + return 'b' + repr(b).lstrip('b') + +def isword(s): + try: + s = s.decode('ascii') + except UnicodeDecodeError: + return False + return WORD_REGEX.match(s) and s not in flags.FLAGS + +def format_string(s): + try: + u = mutf8.decode(s) + except UnicodeDecodeError: + print('Warning, invalid utf8 data!') + else: + if mutf8.encode(u) == s: + return repr(u).lstrip('u') + return reprbytes(s) + +def make_signed(x, bits): + if x >= (1 << (bits - 1)): + x -= 1 << bits + return x + +class StackMapReader(object): + def __init__(self): + self.stream = None + self.tag = -1 + self.pos = -1 + self.count = 0 + self.valid = True + + def setdata(self, r): + if self.stream is None: + self.stream = r + self.count = self.u16() + 1 + self.parseNextPos() + else: + # Multiple StackMapTable attributes in same Code attribute + self.valid = False + + def parseNextPos(self): + self.count -= 1 + if self.count > 0: + self.tag = tag = self.u8() + + if tag <= 127: # same and stack_1 + delta = tag % 64 + else: # everything else has 16bit delta field + delta = self.u16() + self.pos += delta + 1 + + def u8(self): + try: + return self.stream.u8() + except TruncatedStreamError: + self.valid = False + return 0 + + def u16(self): + try: + return self.stream.u16() + except TruncatedStreamError: + self.valid = False + return 0 + + +class ReferencePrinter(object): + def __init__(self, clsdata, roundtrip): + self.roundtrip = roundtrip + + self.cpslots = clsdata.pool.slots + for attr in clsdata.getattrs(b'BootstrapMethods'): + self.bsslots = classdata.BootstrapMethodsData(attr.stream()).slots + break + else: + self.bsslots = [] + + # CP index 0 should always be a raw reference. Additionally, there is one case where exact + # references are significant due to a bug in the JVM. In the InnerClasses attribute, + # specifying the same index for inner and outer class will fail verification, but specifying + # different indexes which point to identical class entries will pass. In this case, we force + # references to those indexes to be raw, so they don't get merged and break the class. + self.forcedraw = set() + for attr in clsdata.getattrs(b'InnerClasses'): + r = attr.stream() + for _ in range(r.u16()): + inner, outer, _, _ = r.u16(), r.u16(), r.u16(), r.u16() + if inner != outer and clsdata.pool.getclsutf(inner) == clsdata.pool.getclsutf(outer): + self.forcedraw.add(inner) + self.forcedraw.add(outer) + self.explicit_forcedraw = self.forcedraw.copy() + + # For invalid cp indices, just output raw ref instead of throwing (including 0) + for i, slot in enumerate(self.cpslots): + if slot.tag is None: + self.forcedraw.add(i) + self.forcedraw.update(range(len(self.cpslots), 65536)) + + self.used = set() + self.encoded = {} + self.utfcounts = {} + + def _float_or_double(self, x, nmbits, nebits, suffix, nanfmt): + nbits = nmbits + nebits + 1 + assert nbits % 32 == 0 + + sbit, ebits, mbits = x >> (nbits - 1), (x >> nmbits) % (1 << nebits), x % (1 << nmbits) + if ebits == (1 << nebits) - 1: + result = 'NaN' if mbits else 'Infinity' + if self.roundtrip and mbits: + result += nanfmt.format(x) + elif ebits == 0 and mbits == 0: + result = '0.0' + else: + ebias = (1 << (nebits - 1)) - 1 + exponent = ebits - ebias - nmbits + mantissa = mbits + if ebits > 0: + mantissa += 1 << nmbits + else: + exponent += 1 + + if self.roundtrip: + result = '0x{:X}p{}'.format(mantissa, exponent) + else: + result = repr(math.ldexp(mantissa, exponent)) + return '+-'[sbit] + result + suffix + + def _int(self, x): return str(make_signed(x, 32)) + def _long(self, x): return str(make_signed(x, 64)) + 'L' + def _float(self, x): return self._float_or_double(x, 23, 8, 'f', '<0x{:08X}>') + def _double(self, x): return self._float_or_double(x, 52, 11, '', '<0x{:016X}>') + + def _encode_utf(self, ind, wordok=True): + try: + return self.encoded[ind][wordok] + except KeyError: + s = self.cpslots[ind].data + string = format_string(s) + word = s.decode() if isword(s) else string + self.encoded[ind] = [string, word] + return word if wordok else string + + def rawref(self, ind, isbs=False): + return '[{}{}]'.format('bs:' if isbs else '', ind) + + def symref(self, ind, isbs=False): + self.used.add((ind, isbs)) + if isbs: + return '[bs:_{}]'.format(ind) + + prefix = PREFIXES.get(self.cpslots[ind].tag, '_') + return '[{}{}]'.format(prefix, ind) + + def ref(self, ind, isbs=False): + if self.roundtrip or not isbs and ind in self.forcedraw: + return self.rawref(ind, isbs) + return self.symref(ind, isbs) + + def _ident(self, ind, wordok=True): + if self.cpslots[ind].tag == 'Utf8': + val = self._encode_utf(ind, wordok=wordok) + if len(val) < MAX_INLINE_SIZE: + if len(val) < 50 or self.utfcounts.get(ind, 0) < 10: + self.utfcounts[ind] = 1 + self.utfcounts.get(ind, 0) + return val + + def utfref(self, ind): + if self.roundtrip or ind in self.forcedraw: + return self.rawref(ind) + temp = self._ident(ind) + if temp is not None: + return temp + return self.symref(ind) + + def clsref(self, ind, tag='Class'): + assert tag in 'Class Module Package'.split() + if self.roundtrip or ind in self.forcedraw: + return self.rawref(ind) + if self.cpslots[ind].tag == tag: + ind2 = self.cpslots[ind].refs[0] + temp = self._ident(ind2) + if temp is not None: + return temp + return self.symref(ind) + + def natref(self, ind): + if self.roundtrip or ind in self.forcedraw: + return self.rawref(ind) + if self.cpslots[ind].tag == 'NameAndType': + ind2, ind3 = self.cpslots[ind].refs + temp = self._ident(ind2) + if temp is not None: + return temp + ' ' + self.utfref(ind3) + return self.symref(ind) + + def fmimref(self, ind): + if self.roundtrip or ind in self.forcedraw: + return self.rawref(ind) + if self.cpslots[ind].tag in ['Field', 'Method', 'InterfaceMethod']: + ind2, ind3 = self.cpslots[ind].refs + return ' '.join([self.cpslots[ind].tag, self.clsref(ind2), self.natref(ind3)]) + return self.symref(ind) + + def mhnotref(self, ind): + slot = self.cpslots[ind] + return codes.handle_rcodes[slot.data] + ' ' + self.taggedref(slot.refs[0], allowed=['Field', 'Method', 'InterfaceMethod']) + + def taggedconst(self, ind): + slot = self.cpslots[ind] + if slot.tag == 'Utf8': + parts = [self._encode_utf(ind)] + elif slot.tag == 'Int': + parts = [self._int(slot.data)] + elif slot.tag == 'Float': + parts = [self._float(slot.data)] + elif slot.tag == 'Long': + parts = [self._long(slot.data)] + elif slot.tag == 'Double': + parts = [self._double(slot.data)] + elif slot.tag in ['Class', 'String', 'MethodType', 'Module', 'Package']: + parts = [self.utfref(slot.refs[0])] + elif slot.tag in ['Field', 'Method', 'InterfaceMethod']: + parts = [self.clsref(slot.refs[0]), self.natref(slot.refs[1])] + elif slot.tag == 'NameAndType': + parts = [self.utfref(slot.refs[0]), self.utfref(slot.refs[1])] + elif slot.tag == 'MethodHandle': + parts = [self.mhnotref(ind)] + elif slot.tag == 'InvokeDynamic': + parts = [self.bsref(slot.refs[0]), self.natref(slot.refs[1])] + parts.insert(0, slot.tag) + return ' '.join(parts) + + def taggedref(self, ind, allowed=None): + if self.roundtrip or ind in self.forcedraw: + return self.rawref(ind) + + if allowed is None or self.cpslots[ind].tag in allowed: + temp = self.taggedconst(ind) + if len(temp) < MAX_INLINE_SIZE: + return temp + return self.symref(ind) + + def ldcrhs(self, ind): + if self.roundtrip or ind in self.forcedraw: + return self.rawref(ind) + slot = self.cpslots[ind] + t = slot.tag + + if t == 'Int': + return self._int(slot.data) + elif slot.tag == 'Float': + return self._float(slot.data) + elif slot.tag == 'Long': + return self._long(slot.data) + elif slot.tag == 'Double': + return self._double(slot.data) + elif t == 'String': + ind2 = self.cpslots[ind].refs[0] + temp = self._ident(ind2, wordok=False) + if temp is not None: + return temp + return self.symref(ind) + return self.taggedref(ind, allowed=['Class', 'MethodHandle', 'MethodType']) + + def bsnotref(self, ind, tagged=False): + slot = self.bsslots[ind] + parts = [] + if tagged: + parts.append('Bootstrap') + + if tagged and self.roundtrip: + parts.append(self.rawref(slot.refs[0])) + else: + parts.append(self.mhnotref(slot.refs[0])) + for bsarg in slot.refs[1:]: + parts.append(self.taggedref(bsarg)) + parts.append(':') + return ' '.join(parts) + + def bsref(self, ind): + if self.roundtrip: + return self.rawref(ind, isbs=True) + return self.bsnotref(ind) + +LabelInfos = collections.namedtuple('LabelInfos', 'defined used') +class Disassembler(object): + def __init__(self, clsdata, out, roundtrip): + self.roundtrip = roundtrip + + self.out = out + self.cls = clsdata + self.pool = clsdata.pool + + self.indentlevel = 0 + self.labels = None + self.refprinter = ReferencePrinter(clsdata, roundtrip) + + def _getattr(a, obj, name): + for attr in obj.attributes: + if a.pool.getutf(attr.name) == name: + return attr + + def sol(a, text=''): + level = min(a.indentlevel, MAX_INDENT) * 4 + text += ' ' * (level - len(text)) + a.out(text) + + def eol(a): a.out('\n') + def val(a, s): a.out(s + ' ') + def int(a, x): a.val(str(x)) + + def lbl(a, x): + a.labels.used.add(x) + a.val('L{}'.format(x)) + + def try_lbl(a, x): + if a.labels is None or x not in a.labels.defined: + raise DisassemblyError() + a.lbl(x) + ########################################################################### + def extrablankline(a): a.eol() + + def ref(a, ind, isbs=False): a.val(a.refprinter.ref(ind, isbs)) + def utfref(a, ind): a.val(a.refprinter.utfref(ind)) + def clsref(a, ind, tag='Class'): a.val(a.refprinter.clsref(ind, tag)) + def natref(a, ind): a.val(a.refprinter.natref(ind)) + def fmimref(a, ind): a.val(a.refprinter.fmimref(ind)) + def taggedbs(a, ind): a.val(a.refprinter.bsnotref(ind, tagged=True)) + def taggedconst(a, ind): a.val(a.refprinter.taggedconst(ind)) + def taggedref(a, ind): a.val(a.refprinter.taggedref(ind)) + def ldcrhs(a, ind): a.val(a.refprinter.ldcrhs(ind)) + + def flags(a, access, names): + for i in range(16): + if access & (1 << i): + a.val(names[1 << i]) + + ########################################################################### + ### Top level stuff (class, const defs, fields, methods) ################## + def disassemble(a): + cls = a.cls + a.val('.version'), a.int(cls.version[0]), a.int(cls.version[1]), a.eol() + a.val('.class'), a.flags(cls.access, flags.RFLAGS_CLASS), a.clsref(cls.this), a.eol() + a.val('.super'), a.clsref(cls.super), a.eol() + for ref in cls.interfaces: + a.val('.implements'), a.clsref(ref), a.eol() + + for f in cls.fields: + a.field(f) + + for m in cls.methods: + a.method(m) + + for attr in cls.attributes: + a.attribute(attr) + + a.constdefs() + a.val('.end class'), a.eol() + + def field(a, f): + a.val('.field'), a.flags(f.access, flags.RFLAGS_FIELD), a.utfref(f.name), a.utfref(f.desc) + + attrs = f.attributes[:] + cvattr = a._getattr(f, b'ConstantValue') + if cvattr and not a.roundtrip: + a.val('='), a.ldcrhs(cvattr.stream().u16()) + attrs.remove(cvattr) + + if attrs: + a.val('.fieldattributes'), a.eol() + a.indentlevel += 1 + for attr in attrs: + a.attribute(attr) + a.indentlevel -= 1 + a.val('.end fieldattributes') + a.eol() + + def method(a, m): + a.extrablankline() + a.val('.method'), a.flags(m.access, flags.RFLAGS_METHOD), a.utfref(m.name), a.val(':'), a.utfref(m.desc), a.eol() + a.indentlevel += 1 + for attr in m.attributes: + a.attribute(attr, in_method=True) + a.indentlevel -= 1 + a.val('.end method'), a.eol() + + def constdefs(a): + if a.roundtrip: + for ind in range(len(a.refprinter.cpslots)): + a.constdef(ind, False) + for ind in range(len(a.refprinter.bsslots)): + a.constdef(ind, True) + else: + assert not a.refprinter.used & a.refprinter.forcedraw + for ind in sorted(a.refprinter.explicit_forcedraw): + a.constdef(ind, False) + + done = set() + while len(done) < len(a.refprinter.used): + for ind, isbs in sorted(a.refprinter.used - done): + a.constdef(ind, isbs) + done.add((ind, isbs)) + + def constdef(a, ind, isbs): + if not isbs and a.refprinter.cpslots[ind].tag is None: + return + + a.sol(), a.val('.bootstrap' if isbs else '.const'), a.ref(ind, isbs), a.val('=') + if isbs: + a.taggedbs(ind) + else: + a.taggedconst(ind) + a.eol() + + ########################################################################### + ### Bytecode ############################################################## + def code(a, r): + c = classdata.CodeData(r, a.pool, a.cls.version < (45, 3)) + a.val('.code'), a.val('stack'), a.int(c.stack), a.val('locals'), a.int(c.locals), a.eol() + a.indentlevel += 1 + assert a.labels is None + a.labels = LabelInfos(set(), set()) + + stackreader = StackMapReader() + for attr in c.attributes: + if a.pool.getutf(attr.name) == b'StackMapTable': + stackreader.setdata(attr.stream()) + + rexcepts = c.exceptions[::-1] + bcreader = Reader(c.bytecode) + while bcreader.size(): + a.insline_start(bcreader.off, rexcepts, stackreader) + a.instruction(bcreader) + a.insline_start(bcreader.off, rexcepts, stackreader), a.eol() + + badlbls = a.labels.used - a.labels.defined + if badlbls: + stackreader.valid = False + a.sol('; Labels used by invalid StackMapTable attribute'), a.eol() + for pos in sorted(badlbls): + a.sol('L{}'.format(pos) + ':'), a.eol() + + if stackreader.stream and (stackreader.stream.size() or stackreader.count > 0): + stackreader.valid = False + + if not stackreader.valid: + a.sol('.noimplicitstackmap'), a.eol() + + for attr in c.attributes: + a.attribute(attr, use_raw_stackmap=not stackreader.valid) + + a.labels = None + a.indentlevel -= 1 + a.sol(), a.val('.end code') + + def insline_start(a, pos, rexcepts, stackreader): + while rexcepts and rexcepts[-1].start <= pos: + e = rexcepts.pop() + a.sol(), a.val('.catch'), a.clsref(e.type), a.val('from'), a.lbl(e.start) + a.val('to'), a.lbl(e.end), a.val('using'), a.lbl(e.handler), a.eol() + + if stackreader.count > 0 and stackreader.pos == pos: + r = stackreader + tag = stackreader.tag + a.extrablankline() + a.sol(), a.val('.stack') + if tag <= 63: + a.val('same') + elif tag <= 127: + a.val('stack_1'), a.verification_type(r) + elif tag == 247: + a.val('stack_1_extended'), a.verification_type(r) + elif tag < 251: + a.val('chop'), a.int(251 - tag) + elif tag == 251: + a.val('same_extended') + elif tag < 255: + a.val('append') + for _ in range(tag - 251): + a.verification_type(r) + else: + a.val('full') + a.indentlevel += 1 + + a.eol(), a.sol(), a.val('locals') + for _ in range(r.u16()): + a.verification_type(r) + a.eol(), a.sol(), a.val('stack') + for _ in range(r.u16()): + a.verification_type(r) + + a.indentlevel -= 1 + a.eol(), a.sol(), a.val('.end stack') + a.eol() + stackreader.parseNextPos() + + a.sol('L{}'.format(pos) + ':') + a.labels.defined.add(pos) + + def verification_type(a, r): + try: + tag = codes.vt_rcodes[r.u8()] + except IndexError: + r.valid = False + a.val('Top') + return + + a.val(tag) + if tag == 'Object': + a.clsref(r.u16()) + elif tag == 'Uninitialized': + a.lbl(r.u16()) + + def instruction(a, r): + pos = r.off + op = OPNAMES[r.u8()] + a.val(op) + + if op in OP_LBL: + a.lbl(pos + (r.s32() if op.endswith('_w') else r.s16())) + elif op in OP_SHORT: + a.int(r.u8()) + elif op in OP_CLS: + a.clsref(r.u16()) + elif op in OP_FMIM: + a.fmimref(r.u16()) + elif op == 'invokeinterface': + a.fmimref(r.u16()), a.int(r.u8()), r.u8() + elif op == 'invokedynamic': + a.taggedref(r.u16()), r.u16() + elif op in ['ldc', 'ldc_w', 'ldc2_w']: + a.ldcrhs(r.u8() if op == 'ldc' else r.u16()) + elif op == 'multianewarray': + a.clsref(r.u16()), a.int(r.u8()) + elif op == 'bipush': + a.int(r.s8()) + elif op == 'sipush': + a.int(r.s16()) + elif op == 'iinc': + a.int(r.u8()), a.int(r.s8()) + elif op == 'wide': + op2 = OPNAMES[r.u8()] + a.val(op2), a.int(r.u16()) + if op2 == 'iinc': + a.int(r.s16()) + elif op == 'newarray': + a.val(codes.newarr_rcodes[r.u8()]) + elif op == 'tableswitch': + r.getRaw((3-pos) % 4) + default = pos + r.s32() + low, high = r.s32(), r.s32() + + a.int(low), a.eol() + a.indentlevel += 1 + for _ in range(high - low + 1): + a.sol(), a.lbl(pos + r.s32()), a.eol() + a.sol(), a.val('default'), a.val(':'), a.lbl(default), a.eol() + a.indentlevel -= 1 + elif op == 'lookupswitch': + r.getRaw((3-pos) % 4) + default = pos + r.s32() + + a.eol() + a.indentlevel += 1 + for _ in range(r.s32()): + a.sol(), a.int(r.s32()), a.val(':'), a.lbl(pos + r.s32()), a.eol() + a.sol(), a.val('default'), a.val(':'), a.lbl(default), a.eol() + a.indentlevel -= 1 + else: + assert op in OP_NONE + a.eol() + + ########################################################################### + ### Attributes ############################################################ + def attribute(a, attr, in_method=False, use_raw_stackmap=False): + name = a.pool.getutf(attr.name) + if not a.roundtrip and name in (b'BootstrapMethods', b'StackMapTable'): + return + + # a.extrablankline() + a.sol() + isnamed = False + if a.roundtrip or name is None: + isnamed = True + a.val('.attribute'), a.utfref(attr.name) + if attr.wronglength: + a.val('length'), a.int(attr.length) + + if name == b'Code' and in_method: + a.code(attr.stream()) + elif name == b'BootstrapMethods' and a.cls.version >= (51, 0): + a.val('.bootstrapmethods') + elif name == b'StackMapTable' and not use_raw_stackmap: + a.val('.stackmaptable') + elif a.attribute_fallible(name, attr): + pass + else: + print('Nonstandard attribute', name[:70], len(attr.raw)) + if not isnamed: + a.val('.attribute'), a.utfref(attr.name) + a.val(reprbytes(attr.raw)) + + a.eol() + + def attribute_fallible(a, name, attr): + # Temporarily buffer output so we don't get partial output if attribute disassembly fails + # in case of failure, we'll fall back to binary output in the caller + orig_out = a.out + buffer_ = [] + a.out = buffer_.append + + try: + r = attr.stream() + if name == b'AnnotationDefault': + a.val('.annotationdefault'), a.element_value(r) + elif name == b'ConstantValue': + a.val('.constantvalue'), a.ldcrhs(r.u16()) + elif name == b'Deprecated': + a.val('.deprecated') + elif name == b'EnclosingMethod': + a.val('.enclosing method'), a.clsref(r.u16()), a.natref(r.u16()) + elif name == b'Exceptions': + a.val('.exceptions') + for _ in range(r.u16()): + a.clsref(r.u16()) + elif name == b'InnerClasses': + a.indented_line_list(r, a._innerclasses_item, 'innerclasses') + elif name == b'LineNumberTable': + a.indented_line_list(r, a._linenumber_item, 'linenumbertable') + elif name == b'LocalVariableTable': + a.indented_line_list(r, a._localvariabletable_item, 'localvariabletable') + elif name == b'LocalVariableTypeTable': + a.indented_line_list(r, a._localvariabletable_item, 'localvariabletypetable') + elif name == b'MethodParameters': + a.indented_line_list(r, a._methodparams_item, 'methodparameters', bytelen=True) + elif name == b'Module': + a.module_attr(r) + elif name == b'ModuleMainClass': + a.val('.modulemainclass'), a.clsref(r.u16()) + elif name == b'ModulePackages': + a.val('.modulepackages') + for _ in range(r.u16()): + a.clsref(r.u16(), tag='Package') + elif name in (b'RuntimeVisibleAnnotations', b'RuntimeVisibleParameterAnnotations', + b'RuntimeVisibleTypeAnnotations', b'RuntimeInvisibleAnnotations', + b'RuntimeInvisibleParameterAnnotations', b'RuntimeInvisibleTypeAnnotations'): + a.val('.runtime') + a.val('invisible' if b'Inv' in name else 'visible') + if b'Type' in name: + a.val('typeannotations'), a.eol() + a.indented_line_list(r, a.type_annotation_line, 'runtime', False) + elif b'Parameter' in name: + a.val('paramannotations'), a.eol() + a.indented_line_list(r, a.param_annotation_line, 'runtime', False, bytelen=True) + else: + a.val('annotations'), a.eol() + a.indented_line_list(r, a.annotation_line, 'runtime', False) + + elif name == b'Signature': + a.val('.signature'), a.utfref(r.u16()) + elif name == b'SourceDebugExtension': + a.val('.sourcedebugextension') + a.val(reprbytes(attr.raw)) + elif name == b'SourceFile': + a.val('.sourcefile'), a.utfref(r.u16()) + elif name == b'Synthetic': + a.val('.synthetic') + + # check for extra data in the attribute + if r.size(): + raise DisassemblyError() + + except (TruncatedStreamError, DisassemblyError): + a.out = orig_out + return False + + a.out = orig_out + a.out(''.join(buffer_)) + return True + + def module_attr(a, r): + a.val('.module'), a.clsref(r.u16(), tag='Module'), a.flags(r.u16(), flags.RFLAGS_MOD_OTHER) + a.val('version'), a.utfref(r.u16()), a.eol() + a.indentlevel += 1 + + for _ in range(r.u16()): + a.sol(), a.val('.requires'), a.clsref(r.u16(), tag='Module'), a.flags(r.u16(), flags.RFLAGS_MOD_REQUIRES), a.val('version'), a.utfref(r.u16()), a.eol() + + for dir_ in ('.exports', '.opens'): + for _ in range(r.u16()): + a.sol(), a.val(dir_), a.clsref(r.u16(), tag='Package'), a.flags(r.u16(), flags.RFLAGS_MOD_OTHER) + count = r.u16() + if count: + a.val('to') + for _ in range(count): + a.clsref(r.u16(), tag='Module') + a.eol() + + for _ in range(r.u16()): + a.sol(), a.val('.uses'), a.clsref(r.u16()), a.eol() + + for _ in range(r.u16()): + a.sol(), a.val('.provides'), a.clsref(r.u16()), a.val('with') + for _ in range(r.u16()): + a.clsref(r.u16()) + a.eol() + a.indentlevel -= 1 + a.sol(), a.val('.end module') + + def indented_line_list(a, r, cb, dirname, dostart=True, bytelen=False): + if dostart: + a.val('.' + dirname), a.eol() + a.indentlevel += 1 + for _ in range(r.u8() if bytelen else r.u16()): + a.sol(), cb(r), a.eol() + a.indentlevel -= 1 + if dirname is not None: + a.sol(), a.val('.end ' + dirname) + + def _innerclasses_item(a, r): a.clsref(r.u16()), a.clsref(r.u16()), a.utfref(r.u16()), a.flags(r.u16(), flags.RFLAGS_CLASS) + def _linenumber_item(a, r): a.try_lbl(r.u16()), a.int(r.u16()) + def _localvariabletable_item(a, r): + start, length, name, desc, ind = r.u16(), r.u16(), r.u16(), r.u16(), r.u16() + a.int(ind), a.val('is'), a.utfref(name), a.utfref(desc), + a.val('from'), a.try_lbl(start), a.val('to'), a.try_lbl(start + length) + def _methodparams_item(a, r): a.utfref(r.u16()), a.flags(r.u16(), flags.RFLAGS_MOD_OTHER) + + ########################################################################### + ### Annotations ########################################################### + def annotation_line(a, r): + a.val('.annotation'), a.annotation_contents(r), a.sol(), a.val('.end'), a.val('annotation') + + def param_annotation_line(a, r): + a.indented_line_list(r, a.annotation_line, 'paramannotation') + + def type_annotation_line(a, r): + a.val('.typeannotation') + a.indentlevel += 1 + a.ta_target_info(r) # Note: begins on same line as .typeannotation + a.ta_target_path(r) + a.sol(), a.annotation_contents(r), + a.indentlevel -= 1 + a.sol(), a.val('.end'), a.val('typeannotation') + + def ta_target_info(a, r): + tag = r.u8() + a.int(tag) + if tag <= 0x01: + a.val('typeparam'), a.int(r.u8()) + elif tag <= 0x10: + a.val('super'), a.int(r.u16()) + elif tag <= 0x12: + a.val('typeparambound'), a.int(r.u8()), a.int(r.u8()) + elif tag <= 0x15: + a.val('empty') + elif tag <= 0x16: + a.val('methodparam'), a.int(r.u8()) + elif tag <= 0x17: + a.val('throws'), a.int(r.u16()) + elif tag <= 0x41: + a.val('localvar'), a.eol() + a.indented_line_list(r, a._localvarrange, 'localvar', False) + elif tag <= 0x42: + a.val('catch'), a.int(r.u16()) + elif tag <= 0x46: + a.val('offset'), a.try_lbl(r.u16()) + else: + a.val('typearg'), a.try_lbl(r.u16()), a.int(r.u8()) + a.eol() + + def _localvarrange(a, r): + start, length, index = r.u16(), r.u16(), r.u16() + if start == length == 0xFFFF: # WTF, Java? + a.val('nowhere') + else: + a.val('from'), a.try_lbl(start), a.val('to'), a.try_lbl(start + length) + a.int(index) + + def ta_target_path(a, r): + a.sol(), a.indented_line_list(r, a._type_path_segment, 'typepath', bytelen=True), a.eol() + + def _type_path_segment(a, r): + a.int(r.u8()), a.int(r.u8()) + + # The following are recursive and can be nested arbitrarily deep, + # so we use generators and a thunk to avoid the Python stack limit. + def element_value(a, r): thunk(a._element_value(r)) + def annotation_contents(a, r): thunk(a._annotation_contents(r)) + + def _element_value(a, r): + tag = codes.et_rtags.get(r.u8()) + if tag is None: + raise DisassemblyError() + a.val(tag) + if tag == 'annotation': + (yield a._annotation_contents(r)), a.sol(), a.val('.end'), a.val('annotation') + elif tag == 'array': + a.eol() + a.indentlevel += 1 + for _ in range(r.u16()): + a.sol(), (yield a._element_value(r)), a.eol() + a.indentlevel -= 1 + a.sol(), a.val('.end'), a.val('array') + elif tag == 'enum': + a.utfref(r.u16()), a.utfref(r.u16()) + elif tag == 'class' or tag == 'string': + a.utfref(r.u16()) + else: + a.ldcrhs(r.u16()) + + def _annotation_contents(a, r): + a.utfref(r.u16()), a.eol() + a.indentlevel += 1 + for _ in range(r.u16()): + a.sol(), a.utfref(r.u16()), a.val('='), (yield a._element_value(r)), a.eol() + a.indentlevel -= 1 diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/flags.py b/src/main/resources/Krakatau-master/Krakatau/assembler/flags.py new file mode 100644 index 00000000..2f820b61 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/flags.py @@ -0,0 +1,43 @@ +_pairs = [ + ('public', 0x0001), + ('private', 0x0002), + ('protected', 0x0004), + ('static', 0x0008), + ('final', 0x0010), + ('super', 0x0020), + # todo - order attributes properly by context + ('transitive', 0x0020), + ('open', 0x0020), + ('synchronized', 0x0020), + ('volatile', 0x0040), + ('static_phase', 0x0040), + ('bridge', 0x0040), + ('transient', 0x0080), + ('varargs', 0x0080), + ('native', 0x0100), + ('interface', 0x0200), + ('abstract', 0x0400), + ('strict', 0x0800), + ('synthetic', 0x1000), + ('annotation', 0x2000), + ('enum', 0x4000), + ('module', 0x8000), + ('mandated', 0x8000), +] + +FLAGS = dict(_pairs) +# Treat strictfp as flag too to reduce confusion +FLAGS['strictfp'] = FLAGS['strict'] + +def _make_dict(priority): + d = {v:k for k,v in reversed(_pairs)} + # ensure that the specified flags have priority + for flag in priority.split(): + d[FLAGS[flag]] = flag + return d + +RFLAGS_CLASS = _make_dict('super module') +RFLAGS_FIELD = _make_dict('volatile transient') +RFLAGS_METHOD = _make_dict('synchronized bridge varargs') +RFLAGS_MOD_REQUIRES = _make_dict('transitive static_phase mandated') +RFLAGS_MOD_OTHER = _make_dict('open mandated') diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/instructions.py b/src/main/resources/Krakatau-master/Krakatau/assembler/instructions.py new file mode 100644 index 00000000..deb8721d --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/instructions.py @@ -0,0 +1,18 @@ +OP_NONE = frozenset(['nop', 'aconst_null', 'iconst_m1', 'iconst_0', 'iconst_1', 'iconst_2', 'iconst_3', 'iconst_4', 'iconst_5', 'lconst_0', 'lconst_1', 'fconst_0', 'fconst_1', 'fconst_2', 'dconst_0', 'dconst_1', 'iload_0', 'iload_1', 'iload_2', 'iload_3', 'lload_0', 'lload_1', 'lload_2', 'lload_3', 'fload_0', 'fload_1', 'fload_2', 'fload_3', 'dload_0', 'dload_1', 'dload_2', 'dload_3', 'aload_0', 'aload_1', 'aload_2', 'aload_3', 'iaload', 'laload', 'faload', 'daload', 'aaload', 'baload', 'caload', 'saload', 'istore_0', 'istore_1', 'istore_2', 'istore_3', 'lstore_0', 'lstore_1', 'lstore_2', 'lstore_3', 'fstore_0', 'fstore_1', 'fstore_2', 'fstore_3', 'dstore_0', 'dstore_1', 'dstore_2', 'dstore_3', 'astore_0', 'astore_1', 'astore_2', 'astore_3', 'iastore', 'lastore', 'fastore', 'dastore', 'aastore', 'bastore', 'castore', 'sastore', 'pop', 'pop2', 'dup', 'dup_x1', 'dup_x2', 'dup2', 'dup2_x1', 'dup2_x2', 'swap', 'iadd', 'ladd', 'fadd', 'dadd', 'isub', 'lsub', 'fsub', 'dsub', 'imul', 'lmul', 'fmul', 'dmul', 'idiv', 'ldiv', 'fdiv', 'ddiv', 'irem', 'lrem', 'frem', 'drem', 'ineg', 'lneg', 'fneg', 'dneg', 'ishl', 'lshl', 'ishr', 'lshr', 'iushr', 'lushr', 'iand', 'land', 'ior', 'lor', 'ixor', 'lxor', 'i2l', 'i2f', 'i2d', 'l2i', 'l2f', 'l2d', 'f2i', 'f2l', 'f2d', 'd2i', 'd2l', 'd2f', 'i2b', 'i2c', 'i2s', 'lcmp', 'fcmpl', 'fcmpg', 'dcmpl', 'dcmpg', 'ireturn', 'lreturn', 'freturn', 'dreturn', 'areturn', 'return', 'arraylength', 'athrow', 'monitorenter', 'monitorexit']) +OP_SHORT = frozenset(['iload', 'lload', 'fload', 'dload', 'aload', 'istore', 'lstore', 'fstore', 'dstore', 'astore', 'ret']) +OP_LBL = frozenset(['ifeq', 'ifne', 'iflt', 'ifge', 'ifgt', 'ifle', 'if_icmpeq', 'if_icmpne', 'if_icmplt', 'if_icmpge', 'if_icmpgt', 'if_icmple', 'if_acmpeq', 'if_acmpne', 'goto', 'jsr', 'ifnull', 'ifnonnull', 'goto_w', 'jsr_w']) +OP_CLS = frozenset(['new', 'anewarray', 'checkcast', 'instanceof']) + +OP_FMIM_TO_GUESS = { + 'getstatic': 'Field', + 'putstatic': 'Field', + 'getfield': 'Field', + 'putfield': 'Field', + 'invokevirtual': 'Method', + 'invokespecial': 'Method', + 'invokestatic': 'Method', +} +OP_FMIM = frozenset(OP_FMIM_TO_GUESS) + +OPNAMES = ('nop', 'aconst_null', 'iconst_m1', 'iconst_0', 'iconst_1', 'iconst_2', 'iconst_3', 'iconst_4', 'iconst_5', 'lconst_0', 'lconst_1', 'fconst_0', 'fconst_1', 'fconst_2', 'dconst_0', 'dconst_1', 'bipush', 'sipush', 'ldc', 'ldc_w', 'ldc2_w', 'iload', 'lload', 'fload', 'dload', 'aload', 'iload_0', 'iload_1', 'iload_2', 'iload_3', 'lload_0', 'lload_1', 'lload_2', 'lload_3', 'fload_0', 'fload_1', 'fload_2', 'fload_3', 'dload_0', 'dload_1', 'dload_2', 'dload_3', 'aload_0', 'aload_1', 'aload_2', 'aload_3', 'iaload', 'laload', 'faload', 'daload', 'aaload', 'baload', 'caload', 'saload', 'istore', 'lstore', 'fstore', 'dstore', 'astore', 'istore_0', 'istore_1', 'istore_2', 'istore_3', 'lstore_0', 'lstore_1', 'lstore_2', 'lstore_3', 'fstore_0', 'fstore_1', 'fstore_2', 'fstore_3', 'dstore_0', 'dstore_1', 'dstore_2', 'dstore_3', 'astore_0', 'astore_1', 'astore_2', 'astore_3', 'iastore', 'lastore', 'fastore', 'dastore', 'aastore', 'bastore', 'castore', 'sastore', 'pop', 'pop2', 'dup', 'dup_x1', 'dup_x2', 'dup2', 'dup2_x1', 'dup2_x2', 'swap', 'iadd', 'ladd', 'fadd', 'dadd', 'isub', 'lsub', 'fsub', 'dsub', 'imul', 'lmul', 'fmul', 'dmul', 'idiv', 'ldiv', 'fdiv', 'ddiv', 'irem', 'lrem', 'frem', 'drem', 'ineg', 'lneg', 'fneg', 'dneg', 'ishl', 'lshl', 'ishr', 'lshr', 'iushr', 'lushr', 'iand', 'land', 'ior', 'lor', 'ixor', 'lxor', 'iinc', 'i2l', 'i2f', 'i2d', 'l2i', 'l2f', 'l2d', 'f2i', 'f2l', 'f2d', 'd2i', 'd2l', 'd2f', 'i2b', 'i2c', 'i2s', 'lcmp', 'fcmpl', 'fcmpg', 'dcmpl', 'dcmpg', 'ifeq', 'ifne', 'iflt', 'ifge', 'ifgt', 'ifle', 'if_icmpeq', 'if_icmpne', 'if_icmplt', 'if_icmpge', 'if_icmpgt', 'if_icmple', 'if_acmpeq', 'if_acmpne', 'goto', 'jsr', 'ret', 'tableswitch', 'lookupswitch', 'ireturn', 'lreturn', 'freturn', 'dreturn', 'areturn', 'return', 'getstatic', 'putstatic', 'getfield', 'putfield', 'invokevirtual', 'invokespecial','invokestatic', 'invokeinterface', 'invokedynamic', 'new', 'newarray', 'anewarray', 'arraylength', 'athrow', 'checkcast', 'instanceof', 'monitorenter', 'monitorexit', 'wide', 'multianewarray', 'ifnull', 'ifnonnull', 'goto_w', 'jsr_w') +OPNAME_TO_BYTE = {v:i for i, v in enumerate(OPNAMES)} diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/parse.py b/src/main/resources/Krakatau-master/Krakatau/assembler/parse.py new file mode 100644 index 00000000..ecaa9128 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/parse.py @@ -0,0 +1,1026 @@ +from __future__ import print_function + +import ast +import struct +import sys + +from ..classfileformat import mutf8 +from ..util.thunk import thunk + +from . import assembly, codes, pool +from .flags import FLAGS +from .instructions import OPNAME_TO_BYTE, OP_CLS, OP_FMIM_TO_GUESS, OP_LBL, OP_NONE, OP_SHORT +from .tokenize import AsssemblerError, Tokenizer +from .writer import Writer + +def unique(vals): + return len(vals) == len(set(vals)) + +def formatList(vals): + if len(vals) > 1: + vals[-1] = 'or ' + vals[-1] + sep = ', ' if len(vals) > 2 else ' ' + return sep.join(vals) + +def parseFloat(s, isfloat): + if s.endswith('>'): + return int(s.partition('<')[-1][:-1], 16) + + if s.lstrip('+-')[:2].lower() == '0x': + f = float.fromhex(s) + else: + f = float(s) + + if isfloat: + return struct.unpack('>I', struct.pack('>f', f))[0] + else: + return struct.unpack('>Q', struct.pack('>d', f))[0] + +class Parser(object): + def __init__(self, tokenizer): + self.tokenizer = tokenizer + self.tok = None + self.consume() + + self.cls = assembly.Class() + self.field = self.method = self.code = None + + def _next_token(self): + return self.tokenizer.next() + + def _format_error_args(self, message, tok): + if tok.type == 'NEWLINES' or tok.type == 'EOF': + return message, tok.pos, tok.pos+1 + else: + return message, tok.pos, tok.pos + len(tok.val) + + def error(self, *args): + messages = args[0::2] + tokens = args[1::2] + assert len(messages) == len(tokens) + self.tokenizer.error(*map(self._format_error_args, messages, tokens)) + + def fail(self): + assert unique(self.triedvals) + assert unique(self.triedtypes) + expected = sorted(self.triedtypes) + sorted(map(repr, self.triedvals)) + assert expected + self.error('Expected {}.'.format(formatList(expected)), self.tok) + + def consume(self): + tok = self.tok + self.triedvals = [] + self.triedtypes = [] + self.tok = self._next_token() + return tok + + def hasv(self, val): + self.triedvals.append(val) + return self.tok.val == val + + def hasany(self, vals): + self.triedvals.extend(vals) + return self.tok.val in vals + + def hastype(self, t): + self.triedtypes.append(t) + return self.tok.type == t + + def asserttype(self, t): + self.triedtypes.append(t) + if self.tok.type != t: + self.fail() + + def tryv(self, val): + if self.hasv(val): + self.consume() + return True + return False + + def val(self, val): + if not self.tryv(val): + self.fail() + + def ateol(self): return self.hastype('NEWLINES') + def atendtok(self): return self.hasv('.end') + + def listu8(a, w, end, callback): + count, pos = 0, w.ph8() + while not end(): + if count >= 255: + a.error('Maximum 255 items.', a.tok) + count += 1 + callback(w) + w.setph8(pos, count) + + def list(a, w, end, callback): + count, pos = 0, w.ph16() + while not end(): + if count >= 65535: + a.error('Maximum 65535 items.', a.tok) + count += 1 + callback(w) + w.setph16(pos, count) + + ########################################################################### + def eol(a): a.asserttype('NEWLINES'), a.consume() + + def _rawint(a): + a.asserttype('INT_LITERAL') + return a.tok, ast.literal_eval(a.consume().val.lstrip('+')) + + def boundedint(a, lower, upper): + tok, x = a._rawint() + if not lower <= x < upper: + a.error('Value must be in range {} <= x < {}.'.format(lower, upper), tok) + return x + + def u8(a): return a.boundedint(0, 1<<8) + def u16(a): return a.boundedint(0, 1<<16) + def u32(a): return a.boundedint(0, 1<<32) + def s8(a): return a.boundedint(-1<<7, 1<<7) + def s16(a): return a.boundedint(-1<<15, 1<<15) + def s32(a): return a.boundedint(-1<<31, 1<<31) + + def string(a, maxlen=65535): + a.asserttype('STRING_LITERAL') + tok = a.consume() + tokval = tok.val + if not tokval[0] in 'bB': + tokval = 'u' + tokval + val = ast.literal_eval(tokval) + if not isinstance(val, bytes): + val = mutf8.encode(val) + if len(val) > maxlen: + a.error('Maximum string length here is {} bytes ({} found).'.format(maxlen, len(val)), tok) + return val + + def word(a, maxlen=65535): + a.asserttype('WORD') + tok = a.consume() + val = tok.val.encode('ascii') + if len(val) > maxlen: + a.error('Maximum identifier length is {} bytes ({} found).'.format(maxlen, len(val)), tok) + return val + + def identifier(a): + if a.hastype('WORD'): + return a.word() + elif a.hastype('STRING_LITERAL'): + return a.string() + a.fail() + + def intl(a): + a.asserttype('INT_LITERAL') + tok = a.consume() + x = ast.literal_eval(tok.val.lstrip('+')) + if not -1<<31 <= x < 1<<31: + a.error('Value does not fit into int type.', tok) + return x % (1 << 32) + + def longl(a): + a.asserttype('LONG_LITERAL') + tok = a.consume() + x = ast.literal_eval(tok.val.lstrip('+').rstrip('lL')) + if not -1 << 63 <= x < 1 << 63: + a.error('Value does not fit into long type.', tok) + return x % (1 << 64) + + def floatl(a): + a.asserttype('FLOAT_LITERAL') + return parseFloat(a.consume().val.rstrip('fF'), True) + + def doublel(a): + a.asserttype('DOUBLE_LITERAL') + return parseFloat(a.consume().val, False) + + def ref(a, isbs=False): + a.asserttype('REF') + tok = a.consume() + + content = tok.val[1:-1] + bootstrap = content.startswith('bs:') + if isbs and not bootstrap: + a.error('Expected bootstrap reference, found constant pool reference.', tok) + elif not isbs and bootstrap: + a.error('Expected constant pool reference, found bootstrap reference.', tok) + + val = content.rpartition(':')[2] + try: + index = int(val) + if not 0 <= index < 0xFFFF: # note: strict upper bound + a.error('Reference must be in range 0 <= x < 65535.', tok) + return pool.Ref(tok, index=index, isbs=bootstrap) + except ValueError: + return pool.Ref(tok, symbol=val, isbs=bootstrap) + + def utfref(a): + if a.hastype('REF'): + return a.ref() + return pool.utf(a.tok, a.identifier()) + + def clsref(a, tag='Class'): + assert tag in 'Class Module Package'.split() + if a.hastype('REF'): + return a.ref() + return pool.single(tag, a.tok, a.identifier()) + + def natref(a): + if a.hastype('REF'): + return a.ref() + name = pool.utf(a.tok, a.identifier()) + desc = a.utfref() + return pool.Ref(name.tok, type='NameAndType', refs=[name, desc]) + + def fmimref(a, typeguess): + # This rule requires extra lookahead + if a.hastype('REF'): + first = a.ref() + # Legacy method syntax + if a.hastype('WORD'): + return pool.Ref(first.tok, type=typeguess, refs=[first, a.natref()]) # Krakatau v0 + return first + + elif a.hasany(['Field', 'Method', 'InterfaceMethod']): + return a.tagged_const() + + # Legacy method syntax - attempt to support Jasmin's awful syntax too + words = [] + while len(words) < 3 and a.hastype('WORD'): + words.append((a.tok, a.word())) + + if 1 <= len(words) <= 2 and a.hastype('REF'): # Krakatau v0 + cls = pool.single('Class', *words[0]) + if len(words) == 2: + name = pool.utf(*words[1]) + return pool.Ref(cls.tok, type=typeguess, refs=[cls, pool.nat(name, a.utfref())]) + return pool.Ref(cls.tok, type=typeguess, refs=[cls, a.natref()]) + + if len(words) == 3: # Krakatau v0 + cls = pool.single('Class', *words[0]) + name = pool.utf(*words[1]) + desc = pool.utf(*words[2]) + elif len(words) == 2: # Jasmin field syntax + tok, cnn = words[0] + left, _, right = cnn.rpartition(b'/') + + cls = pool.single('Class', tok, left) + name = pool.utf(tok, right) + desc = pool.utf(*words[1]) + elif len(words) == 1: # Jasmin method syntax + tok, cnnd = words[0] + cnn, _, d = cnnd.partition(b'(') + left, _, right = cnn.rpartition(b'/') + + cls = pool.single('Class', tok, left) + name = pool.utf(tok, right) + desc = pool.utf(tok, b'(' + d) + else: + a.fail() + return pool.Ref(cls.tok, type=typeguess, refs=[cls, pool.nat(name, desc)]) + + def bootstrapargs(a): + while not a.hasv(':'): + yield a.ref_or_tagged_const(methodhandle=True) + a.val(':') + + def bsref(a): + tok = a.tok + if a.hastype('REF'): + return a.ref(isbs=True) + refs = [a.mhnotref(a.tok)] + refs.extend(a.bootstrapargs()) + return pool.Ref(tok, type='Bootstrap', refs=refs, isbs=True) + + def mhnotref(a, tok): + if a.hasany(codes.handle_codes): + code = codes.handle_codes[a.consume().val] + return pool.Ref(tok, type='MethodHandle', data=code, refs=[a.ref_or_tagged_const()]) + a.fail() + + def tagged_const(a, methodhandle=False, invokedynamic=False): + tok = a.tok + if a.tryv('Utf8'): + return pool.utf(tok, a.identifier()) + elif a.tryv('Int'): + return pool.primitive(tok.val, tok, a.intl()) + elif a.tryv('Float'): + return pool.primitive(tok.val, tok, a.floatl()) + elif a.tryv('Long'): + return pool.primitive(tok.val, tok, a.longl()) + elif a.tryv('Double'): + return pool.primitive(tok.val, tok, a.doublel()) + elif a.hasany(['Class', 'String', 'MethodType', 'Module', 'Package']): + a.consume() + return pool.Ref(tok, type=tok.val, refs=[a.utfref()]) + elif a.hasany(['Field', 'Method', 'InterfaceMethod']): + a.consume() + return pool.Ref(tok, type=tok.val, refs=[a.clsref(), a.natref()]) + elif a.tryv('NameAndType'): + return pool.Ref(tok, type=tok.val, refs=[a.utfref(), a.utfref()]) + elif methodhandle and a.tryv('MethodHandle'): + return a.mhnotref(tok) + elif invokedynamic and a.tryv('InvokeDynamic'): + return pool.Ref(tok, type=tok.val, refs=[a.bsref(), a.natref()]) + + elif a.tryv('Bootstrap'): + if a.hastype('REF'): + refs = [a.ref()] + else: + refs = [a.mhnotref(a.tok)] + refs.extend(a.bootstrapargs()) + return pool.Ref(tok, type=tok.val, refs=refs, isbs=True) + a.fail() + + def ref_or_tagged_const(a, isbs=False, methodhandle=False, invokedynamic=False): + if a.hastype('REF'): + ref = a.ref(isbs=isbs) + else: + ref = a.tagged_const(methodhandle=methodhandle, invokedynamic=invokedynamic) + + if isbs and not ref.isbs: + a.error('Expected bootstrap reference, found constant pool reference.', ref.tok) + elif not isbs and ref.isbs: + a.error('Expected constant pool reference, found bootstrap reference.', ref.tok) + return ref + + def ldc_rhs(a): + tok = a.tok + if a.hastype('INT_LITERAL'): + return pool.primitive('Int', tok, a.intl()) + elif a.hastype('FLOAT_LITERAL'): + return pool.primitive('Float', tok, a.floatl()) + elif a.hastype('LONG_LITERAL'): + return pool.primitive('Long', tok, a.longl()) + elif a.hastype('DOUBLE_LITERAL'): + return pool.primitive('Double', tok, a.doublel()) + elif a.hastype('STRING_LITERAL'): + return pool.single('String', a.tok, a.string()) + return a.ref_or_tagged_const(methodhandle=True) + + def flags(a): + flags = 0 + while a.hasany(FLAGS): + flags |= FLAGS[a.consume().val] + return flags + + def lbl(a): + a.asserttype('WORD') + if not a.tok.val.startswith('L'): + a.error('Labels must start with L.', a.tok) + if a.code is None: + a.error('Labels may only be used inside of a Code attribute.', a.tok) + return assembly.Label(a.tok, a.consume().val) + + ########################################################################### + ### Top level stuff (class, const defs, fields, methods) ################## + def parseClass(a): + a.version_opt() + a.class_start() + + # Workaround for legacy code without .end class + while not (a.atendtok() or a.hastype('EOF')): + a.class_item() + + if a.tryv('.end'): + a.val('class') + a.asserttype('NEWLINES') + return a.cls.assemble(a.error) + + def version_opt(a): + if a.tryv('.version'): + a.cls.version = a.u16(), a.u16() + a.cls.useshortcodeattrs = a.cls.version < (45, 3) + a.eol() + + def class_start(a): + a.val('.class') + a.cls.access = a.flags() + a.cls.this = a.clsref() + a.eol() + + a.val('.super') + a.cls.super = a.clsref() + a.eol() + + while a.tryv('.implements'): + a.cls.interfaces.append(a.clsref()) + a.eol() + + def class_item(a): + a.try_const_def() or a.try_field() or a.try_method() or a.try_attribute(a.cls) or a.fail() + + def try_const_def(a): + if a.hasany(['.const', '.bootstrap']): + isbs = a.consume().val == '.bootstrap' + lhs = a.ref(isbs) + if lhs.isbs != isbs: + a.error('Const/Bootstrap reference mismatch.', lhs.tok) + a.val('=') + + rhs = a.ref_or_tagged_const(isbs, methodhandle=True, invokedynamic=True) + if lhs.israw() and (rhs.israw() or rhs.issym()): + a.error('Raw references cannot be aliased to another reference.', rhs.tok) + a.eol() + + a.cls.pool.sub(lhs).adddef(lhs, rhs, a.error) + return True + return False + + def try_field(a): + if a.hasv('.field'): + f = a.field_start() + a.initial_value_opt() + + if a.tryv('.fieldattributes'): + a.eol() + while not a.atendtok(): + a.try_attribute(f) or a.fail() + a.val('.end'), a.val('fieldattributes') + + a.eol() + a.cls.fields.append(f) + a.field = None + return True + return False + + def field_start(a): + tok, flags, name, desc = a.consume(), a.flags(), a.utfref(), a.utfref() + a.field = f = assembly.Field(tok, flags, name, desc) + return f + + def initial_value_opt(a): + tok = a.tok + if a.tryv('='): + attr = assembly.Attribute(tok, b'ConstantValue') + attr.data.ref(a.ldc_rhs()) + a.field.attributes.append(attr) + + def try_method(a): + if a.hasv('.method'): + m = a.method_start() + + # Legacy syntax + if a.hasv('.throws'): + m.attributes.append(assembly.Attribute(a.consume(), b'Exceptions')) + m.attributes[-1].data.u16(1) + m.attributes[-1].data.ref(a.clsref()) + a.eol() + + if a.hasv('.limit'): + a.legacy_method_body() + else: + while not a.atendtok(): + a.try_attribute(m) or a.fail() + + a.val('.end'), a.val('method'), a.eol() + a.cls.methods.append(m) + a.method = None + return True + return False + + def method_start(a): + tok, flags, name, _, desc, _ = a.consume(), a.flags(), a.utfref(), a.val(':'), a.utfref(), a.eol() + a.method = m = assembly.Method(tok, flags, name, desc) + return m + + def legacy_method_body(a): + a.code = c = assembly.Code(a.tok, a.cls.useshortcodeattrs) + limitfunc = a.u8 if c.short else a.u16 + while a.tryv('.limit'): + if a.tryv('stack'): + c.stack = limitfunc() + elif a.tryv('locals'): + c.locals = limitfunc() + else: + a.fail() + a.eol() + a.code_body() + a.code = None + + attr = assembly.Attribute(c.tok, b'Code') + c.assembleNoCP(attr.data, a.error) + a.method.attributes.append(attr) + + ########################################################################### + ### Bytecode ############################################################## + def code_body(a): + while a.try_instruction_line() or a.try_code_directive(): + pass + while not a.atendtok(): + a.try_attribute(a.code) or a.fail() + + def try_instruction_line(a): + haslbl = a.hastype('LABEL_DEF') + if haslbl: + lbl = assembly.Label(a.tok, a.consume().val.rstrip(':')) + a.code.labeldef(lbl, a.error) + + hasinstr = a.try_instruction() + if haslbl or hasinstr: + a.eol() + return True + return False + + def try_instruction(a): + w = a.code.bytecode + starttok = a.tok + op = a.tok.val + + if a.hasany(OP_NONE): + w.u8(OPNAME_TO_BYTE[a.consume().val]) + elif a.hasany(OP_LBL): + pos = w.pos + w.u8(OPNAME_TO_BYTE[a.consume().val]) + + dtype = 's32' if op.endswith('_w') else 's16' + w.lbl(a.lbl(), pos, dtype) + elif a.hasany(OP_SHORT): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.u8(a.u8()) + elif a.hasany(OP_CLS): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.ref(a.clsref()) + elif a.hasany(OP_FMIM_TO_GUESS): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.ref(a.fmimref(OP_FMIM_TO_GUESS[op])) + elif a.hasv('invokeinterface'): + w.u8(OPNAME_TO_BYTE[a.consume().val]) + ref = a.fmimref('InterfaceMethod') + w.ref(ref) + + if a.hastype('INT_LITERAL'): + w.u8(a.u8()), + else: + a.asserttype('NEWLINES') # print more helpful error for malformed refs + if ref.israw() or ref.issym(): + a.error('Method descriptor must be specified inline when argument count is omitted.', ref.tok) + ref = ref.refs[1] # NAT + if ref.israw() or ref.issym(): + a.error('Method descriptor must be specified inline when argument count is omitted.', ref.tok) + ref = ref.refs[1] # utf + if ref.israw() or ref.issym(): + a.error('Method descriptor must be specified inline when argument count is omitted.', ref.tok) + desc = ref.data.lstrip(b'(') + count = 1 + while desc: + if desc.startswith(b'J') or desc.startswith(b'D'): + count += 1 + else: + desc = desc.lstrip(b'[') + + if desc.startswith(b'L'): + _, _, desc = desc.partition(b';') + elif desc.startswith(b')'): + break + else: + desc = desc[1:] + count += 1 + w.u8(count & 255) + w.u8(0) + + elif a.hasv('invokedynamic'): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.ref(a.ref_or_tagged_const(invokedynamic=True)), w.u16(0) + elif a.hasany(['ldc', 'ldc_w', 'ldc2_w']): + w.u8(OPNAME_TO_BYTE[a.consume().val]) + rhs = a.ldc_rhs() + if op == 'ldc': + if rhs.israw() and rhs.index >= 256: + a.error('Ldc index must be <= 255.', rhs.tok) + w.refu8(rhs) + else: + w.ref(rhs) + elif a.hasv('multianewarray'): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.ref(a.clsref()), w.u8(a.u8()) + elif a.hasv('bipush'): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.s8(a.s8()) + elif a.hasv('sipush'): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.s16(a.s16()) + elif a.hasv('iinc'): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.u8(a.u8()), w.s8(a.s8()) + elif a.hasv('wide'): + w.u8(OPNAME_TO_BYTE[a.consume().val]) + if a.hasv('iinc'): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.u16(a.u16()), w.s16(a.s16()) + elif a.hasany(OP_SHORT): + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.u16(a.u16()) + else: + a.fail() + elif a.hasv('newarray'): + w.u8(OPNAME_TO_BYTE[a.consume().val]) + if a.hasany(codes.newarr_codes): + w.u8(codes.newarr_codes[a.consume().val]) + else: + a.fail() + elif a.hasv('tableswitch'): + pos = w.pos + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.writeBytes(b'\0' * ((3-pos) % 4)) + low = a.s32() + a.eol() + + jumps = [] + while not a.hasv('default'): + jumps.append(a.lbl()), a.eol() + if low + len(jumps) - 1 > (1 << 31) - 1: + a.error('Table switch index must be at most 2147483647.', jumps[-1].tok) + if not jumps: + a.error('Table switch must have at least one non-default jump.', a.tok) + + _, _, default = a.val('default'), a.val(':'), a.lbl() + w.lbl(default, pos, 's32') + w.s32(low) + w.s32(low + len(jumps) - 1) + for lbl in jumps: + w.lbl(lbl, pos, 's32') + elif a.hasv('lookupswitch'): + pos = w.pos + w.u8(OPNAME_TO_BYTE[a.consume().val]), w.writeBytes(b'\0' * ((3-pos) % 4)) + a.eol() + + jumps = {} + prevtoks = {} + while not a.hasv('default'): + keytok, key, _, jump, _ = a.tok, a.s32(), a.val(':'), a.lbl(), a.eol() + if key in jumps: + a.error('Duplicate lookupswitch key.', keytok, + 'Key previously defined here:', prevtoks[key]) + elif len(jumps) > 1<<31 - 1: + a.error('Lookup switch can have at most 2147483647 jumps.', keytok) + jumps[key] = jump + prevtoks[key] = keytok + + _, _, default = a.val('default'), a.val(':'), a.lbl() + w.lbl(default, pos, 's32') + w.s32(len(jumps)) + for key in sorted(jumps): + w.s32(key) + w.lbl(jumps[key], pos, 's32') + else: + return False + + if len(w) > a.code.maxcodelen: + self.error('Maximum bytecode length is {} (current {}).'.format(a.code.maxcodelen, len(w)), starttok) + return True + + def try_code_directive(a): + tok = a.tok + if a.tryv('.catch'): + if a.code.exceptcount + 1 > 0xFFFF: + a.error('Maximum 65535 exception handlers per method.', tok) + ref, (froml, tol), _, usingl, _ = a.clsref(), a.code_range(), a.val('using'), a.lbl(), a.eol() + a.code.catch(ref, froml, tol, usingl) + return True + elif a.tryv('.stack'): + w = a.code.stackdata + pos = a.code.bytecode.pos + delta_offset = pos - a.code.laststackoff - 1 + frame_type = a.tok.val + if delta_offset < 0: + a.error('Stack frame has same offset as previous frame.', tok) + + if a.tryv('same'): + a._check_delta(tok, frame_type, delta_offset, 63) + w.u8(delta_offset) + elif a.tryv('stack_1'): + a._check_delta(tok, frame_type, delta_offset, 63) + w.u8(delta_offset + 64) + a.verification_type(w) + elif a.tryv('stack_1_extended'): + a._check_delta(tok, frame_type, delta_offset, 0xFFFF) + w.u8(247) + w.u16(delta_offset) + a.verification_type(w) + elif a.tryv('chop'): + a._check_delta(tok, frame_type, delta_offset, 0xFFFF) + w.u8(251 - a.boundedint(1, 4)) + w.u16(delta_offset) + elif a.tryv('same_extended'): + a._check_delta(tok, frame_type, delta_offset, 0xFFFF) + w.u8(251) + w.u16(delta_offset) + elif a.tryv('append'): + a._check_delta(tok, frame_type, delta_offset, 0xFFFF) + + tag = 252 + temp = Writer() + a.verification_type(temp) + if not a.ateol(): + tag += 1 + a.verification_type(temp) + if not a.ateol(): + tag += 1 + a.verification_type(temp) + + w.u8(tag) + w.u16(delta_offset) + w += temp + elif a.tryv('full'): + a._check_delta(tok, frame_type, delta_offset, 0xFFFF) + w.u8(255) + w.u16(delta_offset) + a.eol(), a.val('locals'), a.list(w, a.ateol, a.verification_type) + a.eol(), a.val('stack'), a.list(w, a.ateol, a.verification_type) + a.eol(), a.val('.end'), a.val('stack') + else: + a.fail() + + a.eol() + a.code.laststackoff = pos + a.code.stackcount += 1 + return True + elif a.tryv('.noimplicitstackmap'): + a.eol() + a.code.dont_generate_stackmap = True + + return False + + def code_range(a): + _, start, _, end = a.val('from'), a.lbl(), a.val('to'), a.lbl() + return start, end + + def _check_delta(a, tok, frame_type, delta_offset, maxv): + if delta_offset > maxv: + a.error('Stack frame type "{}" must appear at most {} bytes after the previous frame (actual offset is {}).'.format(frame_type, maxv+1, delta_offset+1), tok) + + def verification_type(a, w): + val = a.tok.val + if not a.hasany(codes.vt_codes): + a.fail() + + w.u8(codes.vt_codes[a.consume().val]) + if val == 'Object': + w.ref(a.clsref()) + elif val == 'Uninitialized': + w.lbl(a.lbl(), 0, 'u16') + + ########################################################################### + ### Attributes ############################################################ + def try_attribute(a, parent): + if a.hasv('.attribute'): + startok, name = a.consume(), a.utfref() + if a.tryv('length'): + attr = assembly.Attribute(startok, name, length=a.u32()) + else: + attr = assembly.Attribute(startok, name) + + # Now get data + if a.hastype('STRING_LITERAL'): + attr.data.writeBytes(a.string(maxlen=0xFFFFFFFF)) + else: + namedattr = a.maybe_named_attribute(attr) + if namedattr is not None: + attr.data = namedattr.data + else: + a.fail() + a.eol() + parent.attributes.append(attr) + return True + else: + namedattr = a.maybe_named_attribute(None) + if namedattr is not None: + a.eol() + parent.attributes.append(namedattr) + return True + return False + + def maybe_named_attribute(a, wrapper_attr): + starttok = a.tok + def create(name): + attr = assembly.Attribute(starttok, name) + return attr, attr.data + + if a.tryv('.annotationdefault'): + attr, w = create(b'AnnotationDefault') + a.element_value(w) + elif a.tryv('.bootstrapmethods'): + attr, w = create(b'BootstrapMethods') + a.cls.bootstrapmethods = wrapper_attr or attr + elif a.code is None and a.tryv('.code'): + a.code = c = assembly.Code(starttok, a.cls.useshortcodeattrs) + limitfunc = a.u8 if c.short else a.u16 + _, c.stack, _, c.locals, _ = a.val('stack'), limitfunc(), a.val('locals'), limitfunc(), a.eol() + a.code_body() + a.val('.end'), a.val('code') + a.code = None + attr, w = create(b'Code') + c.assembleNoCP(w, a.error) + elif a.tryv('.constantvalue'): + attr, w = create(b'ConstantValue') + w.ref(a.ldc_rhs()) + elif a.tryv('.deprecated'): + attr, w = create(b'Deprecated') + elif a.tryv('.enclosing'): + attr, w = create(b'EnclosingMethod') + a.val('method'), w.ref(a.clsref()), w.ref(a.natref()) + elif a.tryv('.exceptions'): + attr, w = create(b'Exceptions') + a.list(w, a.ateol, a._class_item) + elif a.tryv('.innerclasses'): + attr, w = create(b'InnerClasses') + a.eol(), a.list(w, a.atendtok, a._innerclasses_item), a.val('.end'), a.val('innerclasses') + elif a.tryv('.linenumbertable'): + attr, w = create(b'LineNumberTable') + a.eol(), a.list(w, a.atendtok, a._linenumber_item), a.val('.end'), a.val('linenumbertable') + elif a.tryv('.localvariabletable'): + attr, w = create(b'LocalVariableTable') + a.eol(), a.list(w, a.atendtok, a._localvariabletable_item), a.val('.end'), a.val('localvariabletable') + elif a.tryv('.localvariabletypetable'): + attr, w = create(b'LocalVariableTypeTable') # reuse _localvariabletable_item func + a.eol(), a.list(w, a.atendtok, a._localvariabletable_item), a.val('.end'), a.val('localvariabletypetable') + elif a.tryv('.methodparameters'): + attr, w = create(b'MethodParameters') + a.eol(), a.listu8(w, a.atendtok, a._methodparams_item), a.val('.end'), a.val('methodparameters') + elif a.tryv('.module'): + print('Warning! Assembler syntax for Java 9 modules is experimental and subject to change. Please file an issue on Github if you have any opinions or feedback about the syntax') + attr, w = create(b'Module') + w.ref(a.utfref()), w.u16(a.flags()), a.consume(), w.ref(a.utfref()), a.eol(), + a._mod_list(w, '.requires', a._mod_requires_item) + a._mod_list(w, '.exports', a._mod_exports_item) + a._mod_list(w, '.opens', a._mod_exports_item) + a._mod_list(w, '.uses', a._mod_uses_item) + a._mod_list(w, '.provides', a._mod_provides_item) + a.val('.end'), a.val('module') + + elif a.tryv('.modulemainclass'): + print('Warning! Assembler syntax for Java 9 modules is experimental and subject to change. Please file an issue on Github if you have any opinions or feedback about the syntax') + attr, w = create(b'ModuleMainClass') + w.ref(a.clsref()) + elif a.tryv('.modulepackages'): + print('Warning! Assembler syntax for Java 9 modules is experimental and subject to change. Please file an issue on Github if you have any opinions or feedback about the syntax') + attr, w = create(b'ModulePackages') + a.list(w, a.ateol, a._package_item) + + elif a.tryv('.runtime'): + if not a.hasany(['visible', 'invisible']): + a.fail() + prefix = b'Runtime' + a.consume().val.capitalize().encode() + + if a.tryv('annotations'): + attr, w = create(prefix + b'Annotations') + a.eol(), a.list(w, a.atendtok, a.annotation_line) + elif a.tryv('paramannotations'): + attr, w = create(prefix + b'ParameterAnnotations') + a.eol(), a.listu8(w, a.atendtok, a.param_annotation_line) + elif a.tryv('typeannotations'): + attr, w = create(prefix + b'TypeAnnotations') + a.eol(), a.list(w, a.atendtok, a.type_annotation_line) + else: + a.fail() + a.val('.end'), a.val('runtime') + elif a.code is not None and a.tryv('.stackmaptable'): + attr, w = create(b'StackMapTable') + a.code.stackmaptable = wrapper_attr or attr + elif a.tryv('.signature'): + attr, w = create(b'Signature') + w.ref(a.utfref()) + elif a.tryv('.sourcedebugextension'): + attr, w = create(b'SourceDebugExtension') + data = a.string(maxlen=0xFFFFFFFF) + w.writeBytes(data) + elif a.tryv('.sourcefile'): + attr, w = create(b'SourceFile') + w.ref(a.utfref()) + elif a.tryv('.synthetic'): + attr, w = create(b'Synthetic') + else: + return None + return attr + + def _class_item(a, w): w.ref(a.clsref()) + def _package_item(a, w): w.ref(a.clsref(tag='Package')) + def _module_item(a, w): w.ref(a.clsref(tag='Package')) + def _innerclasses_item(a, w): w.ref(a.clsref()), w.ref(a.clsref()), w.ref(a.utfref()), w.u16(a.flags()), a.eol() + def _linenumber_item(a, w): w.lbl(a.lbl(), 0, 'u16'), w.u16(a.u16()), a.eol() + def _methodparams_item(a, w): w.ref(a.utfref()), w.u16(a.flags()), a.eol() + + def _localvariabletable_item(a, w): + ind, _, name, desc, _range, _ = a.u16(), a.val('is'), a.utfref(), a.utfref(), a.code_range(), a.eol() + w.lblrange(*_range), w.ref(name), w.ref(desc), w.u16(ind) + + # module attr callbacks + def _mod_list(a, w, startdir, cb): a.list(w, lambda: not a.tryv(startdir), cb) + def _mod_requires_item(a, w): + w.ref(a.clsref(tag='Module')), w.u16(a.flags()), a.val('version'), w.ref(a.utfref()), a.eol() + def _mod_exports_item(a, w): + w.ref(a.clsref(tag='Package')), w.u16(a.flags()) + if a.tryv('to'): + a.list(w, a.ateol, a._module_item) + else: + w.u16(0) # count of 0 targets + a.eol() + def _mod_uses_item(a, w): w.ref(a.clsref()), a.eol() + def _mod_provides_item(a, w): + w.ref(a.clsref()), a.val('with') + a.list(w, a.ateol, a._class_item) + a.eol() + + ########################################################################### + ### Annotations ########################################################### + def annotation_line(a, w): + a.val('.annotation'), a.annotation_contents(w), a.val('.end'), a.val('annotation'), a.eol() + + def param_annotation_line(a, w): + a.val('.paramannotation'), a.eol() + a.list(w, a.atendtok, a.annotation_line) + a.val('.end'), a.val('paramannotation'), a.eol() + + def type_annotation_line(a, w): + a.val('.typeannotation'), a.ta_target_info(w), a.ta_target_path(w) + a.annotation_contents(w), a.val('.end'), a.val('typeannotation'), a.eol() + + def ta_target_info(a, w): + w.u8(a.u8()) + if a.tryv('typeparam'): + w.u8(a.u8()) + elif a.tryv('super'): + w.u16(a.u16()) + elif a.tryv('typeparambound'): + w.u8(a.u8()), w.u8(a.u8()) + elif a.tryv('empty'): + pass + elif a.tryv('methodparam'): + w.u8(a.u8()) + elif a.tryv('throws'): + w.u16(a.u16()) + elif a.tryv('localvar'): + a.eol() + a.list(w, a.atendtok, a._localvarrange) + a.val('.end'), a.val('localvar') + elif a.tryv('catch'): + w.u16(a.u16()) + elif a.tryv('offset'): + w.lbl(a.lbl(), 0, 'u16') + elif a.tryv('typearg'): + w.lbl(a.lbl(), 0, 'u16'), w.u8(a.u8()) + else: + a.fail() + a.eol() + + def _localvarrange(a, w): + if a.tryv('nowhere'): # WTF, Java? + w.u16(0xFFFF), w.u16(0xFFFF) + else: + w.lblrange(*a.code_range()) + w.u16(a.u16()), a.eol() + + def ta_target_path(a, w): + a.val('.typepath'), a.eol() + a.listu8(w, a.atendtok, a._type_path_segment) + a.val('.end'), a.val('typepath'), a.eol() + + def _type_path_segment(a, w): + w.u8(a.u8()), w.u8(a.u8()), a.eol() + + # The following are recursive and can be nested arbitrarily deep, + # so we use generators and a thunk to avoid the Python stack limit. + def element_value(a, w): thunk(a._element_value(w)) + def annotation_contents(a, w): thunk(a._annotation_contents(w)) + + def _element_value(a, w): + if not a.hasany(codes.et_tags): + a.fail() + + tag = a.consume().val + w.u8(codes.et_tags[tag]) + if tag == 'annotation': + (yield a._annotation_contents(w)), a.val('.end'), a.val('annotation') + elif tag == 'array': + a.eol() + count, pos = 0, w.ph16() + while not a.atendtok(): + if count >= 65535: + a.error('Maximum 65535 items in annotation array element.', a.tok) + count += 1 + (yield a._element_value(w)), a.eol() + w.setph16(pos, count) + a.val('.end'), a.val('array') + elif tag == 'enum': + w.ref(a.utfref()), w.ref(a.utfref()) + elif tag == 'class' or tag == 'string': + w.ref(a.utfref()) + else: + w.ref(a.ldc_rhs()) + + def _annotation_contents(a, w): + w.ref(a.utfref()), a.eol() + count, pos = 0, w.ph16() + while not a.atendtok(): + if count >= 65535: + a.error('Maximum 65535 items in annotation.', a.tok) + count += 1 + w.ref(a.utfref()), a.val('='), (yield a._element_value(w)), a.eol() + w.setph16(pos, count) + +def assemble(source, filename, fatal=False): + tokenizer = Tokenizer(source, filename) + try: + while not tokenizer.atend(): + name, data = Parser(tokenizer).parseClass() + yield name, data + except AsssemblerError: + if fatal: + raise + sys.exit(1) + except Exception: + if fatal: + raise + import traceback + traceback.print_exc() + print('If you see this message, please file an issue at https://github.com/Storyyeller/Krakatau/issues, including the error message and the assembly file that caused the error.\n') diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/pool.py b/src/main/resources/Krakatau-master/Krakatau/assembler/pool.py new file mode 100644 index 00000000..7bbf4364 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/pool.py @@ -0,0 +1,259 @@ +import collections +import itertools + +from .writer import Writer + +TAGS = [None, 'Utf8', None, 'Int', 'Float', 'Long', 'Double', 'Class', 'String', 'Field', 'Method', 'InterfaceMethod', 'NameAndType', None, None, 'MethodHandle', 'MethodType', None, 'InvokeDynamic', 'Module', 'Package'] + +class Ref(object): + def __init__(self, tok, index=None, symbol=None, type=None, refs=None, data=None, isbs=False): + self.tok = tok + self.isbs = isbs + self.index = index + self.symbol = symbol + + assert type == 'Bootstrap' or type in TAGS + self.type = type + self.refs = refs or [] + self.data = data + + self.resolved_index = None + + def israw(self): return self.index is not None + def issym(self): return self.symbol is not None + + def _deepdata(self, pool, error, defstack=()): + if self.issym(): + return pool.sub(self).getroot(self, error)._deepdata(pool, error, defstack) + + if self.israw(): + return 'Raw', self.index + + if len(defstack) > 5: # Maximum legitimate depth is 5: ID -> BS -> MH -> F -> NAT -> UTF + error_args = ['Constant pool definitions cannot be nested more than 5 deep (excluding raw references).', self.tok] + for ref in reversed(defstack): + error_args.append('Included from {} ref here:'.format(ref.type)) + error_args.append(ref.tok) + error(*error_args) + return self.type, self.data, tuple(ref._deepdata(pool, error, defstack + (self,)) for ref in self.refs) + + def _resolve(self, pool, error): + if self.israw(): + return self.index + if self.issym(): + return pool.sub(self).getroot(self, error).resolve(pool, error) + return pool.sub(self).resolvedata(self, error, self._deepdata(pool, error)) + + def resolve(self, pool, error): + if self.resolved_index is None: + self.resolved_index = self._resolve(pool, error) + assert self.resolved_index is not None + return self.resolved_index + + def __str__(self): # pragma: no cover + prefix = 'bs:' if self.isbs else '' + if self.israw(): + return '[{}{}]'.format(prefix, self.index) + elif self.issym(): + return '[{}{}]'.format(prefix, self.symbol) + parts = [self.type] + self.refs + if self.data is not None: + parts.insert(1, self.data) + return ' '.join(map(str, parts)) + +def utf(tok, s): + assert isinstance(s, bytes) + assert len(s) <= 65535 + return Ref(tok, type='Utf8', data=s) + +def single(type, tok, s): + assert type in 'Class String MethodType Module Package'.split() + return Ref(tok, type=type, refs=[utf(tok, s)]) + +def nat(name, desc): + return Ref(name.tok, type='NameAndType', refs=[name, desc]) + +def primitive(type, tok, x): + assert type in 'Int Long Float Double'.split() + return Ref(tok, type=type, data=x) + +class PoolSub(object): + def __init__(self, isbs): + self.isbs = isbs + self.symdefs = {} + self.symrootdefs = {} + self.slot_def_tokens = {} + self.slots = collections.OrderedDict() + self.dataToSlot = {} + self.narrowcounter = itertools.count() + self.widecounter = itertools.count() + + self.dirtyslotdefs = [] + self.defsfrozen = False + if not isbs: + self.slots[0] = None + + def adddef(self, lhs, rhs, error): + assert not self.defsfrozen + assert lhs.israw() or lhs.issym() + if lhs.israw(): + if lhs.index == 0 and not self.isbs: + error('Constant pool index must be nonzero', lhs.tok) + + if lhs.index in self.slots: + error('Conflicting raw reference definition', lhs.tok, + 'Conflicts with previous definition:', self.slot_def_tokens[lhs.index]) + self.slots[lhs.index] = rhs + self.slot_def_tokens[lhs.index] = lhs.tok + self.dirtyslotdefs.append(lhs.index) + assert rhs.type + if rhs.type in ('Long', 'Double'): + if lhs.index + 1 in self.slots: + error('Conflicting raw reference definition', lhs.tok, + 'Conflicts with previous definition:', self.slot_def_tokens[lhs.index + 1]) + self.slots[lhs.index + 1] = None + self.slot_def_tokens[lhs.index + 1] = lhs.tok + else: + if lhs.symbol in self.symdefs: + error('Duplicate symbolic reference definition', lhs.tok, + 'Previously defined here:', self.symdefs[lhs.symbol][0]) + self.symdefs[lhs.symbol] = lhs.tok, rhs + + def freezedefs(self, pool, error): self.defsfrozen = True + + def _getslot(self, iswide): + assert self.defsfrozen + if iswide: + ind = next(self.widecounter) + while ind in self.slots or ind + 1 in self.slots: + ind = next(self.widecounter) + if ind + 1 >= 0xFFFF: + return None + else: + ind = next(self.narrowcounter) + while ind in self.slots: + ind = next(self.narrowcounter) + if ind >= 0xFFFF: + return None + return ind + + def getroot(self, ref, error): + assert self.defsfrozen and ref.issym() + + try: + return self.symrootdefs[ref.symbol] + except KeyError: + stack = [] + visited = set() + while ref.issym(): + sym = ref.symbol + if sym in visited: + error_args = ['Circular symbolic reference', ref.tok] + for tok in stack[::-1]: + error_args.extend(('Included from here:', tok)) + error(*error_args) + stack.append(ref.tok) + visited.add(sym) + + if sym not in self.symdefs: + error('Undefined symbolic reference', ref.tok) + _, ref = self.symdefs[sym] + + for sym in visited: + self.symrootdefs[sym] = ref + return ref + + def resolvedata(self, ref, error, newdata): + try: + return self.dataToSlot[newdata] + except KeyError: + iswide = newdata[0] in ('Long', 'Double') + slot = self._getslot(iswide) + if slot is None: + name = 'bootstrap method' if ref.isbs else 'constant pool' + error('Exhausted {} space.'.format(name), ref.tok) + + self.dataToSlot[newdata] = slot + self.slots[slot] = ref + self.dirtyslotdefs.append(slot) + if iswide: + self.slots[slot + 1] = None + return slot + + def resolveslotrefs(self, pool, error): + while len(self.dirtyslotdefs) > 0: + i = self.dirtyslotdefs.pop() + for ref in self.slots[i].refs: + ref.resolve(pool, error) + + def writeconst(self, w, ref, pool, error): + t = ref.type + w.u8(TAGS.index(t)) + if t == 'Utf8': + w.u16(len(ref.data)) + w.writeBytes(ref.data) + elif t == 'Int' or t == 'Float': + w.u32(ref.data) + elif t == 'Long' or t == 'Double': + w.u64(ref.data) + elif t == 'MethodHandle': + w.u8(ref.data) + w.u16(ref.refs[0].resolve(pool, error)) + else: + for child in ref.refs: + w.u16(child.resolve(pool, error)) + return w + + def writebootstrap(self, w, ref, pool, error): + assert ref.type == 'Bootstrap' + w.u16(ref.refs[0].resolve(pool, error)) + w.u16(len(ref.refs)-1) + for child in ref.refs[1:]: + w.u16(child.resolve(pool, error)) + return w + + def write(self, pool, error): + self.resolveslotrefs(pool, error) + self.dirtyslotdefs = None # make sure we don't accidently add entries after size is taken + + size = max(self.slots) + 1 if self.slots else 0 + dummyentry = b'\1\0\0' # empty UTF8 + if self.isbs and self.slots: + first = next(iter(self.slots.values())) + dummyentry = self.writebootstrap(Writer(), first, pool, error).toBytes() + + w = Writer() + w.u16(size) + for i in range(size): + if i not in self.slots: + w.writeBytes(dummyentry) + continue + + v = self.slots[i] + if v is None: + continue + + if self.isbs: + self.writebootstrap(w, v, pool, error) + if len(w) >= (1<<32): + error('Maximum BootstrapMethods length is {} bytes.'.format((1<<32)-1), v.tok) + else: + self.writeconst(w, v, pool, error) + return w + +class Pool(object): + def __init__(self): + self.cp = PoolSub(False) + self.bs = PoolSub(True) + + def sub(self, ref): return self.bs if ref.isbs else self.cp + + def resolveIDBSRefs(self, error): + for v in self.cp.slots.values(): + if v is not None and v.type == 'InvokeDynamic': + v.refs[0].resolve(self, error) + + def write(self, error): + bsmdata = self.bs.write(self, error) + cpdata = self.cp.write(self, error) + return cpdata, bsmdata diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/token_regexes.py b/src/main/resources/Krakatau-master/Krakatau/assembler/token_regexes.py new file mode 100644 index 00000000..2c49a1d6 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/token_regexes.py @@ -0,0 +1,45 @@ +DIRECTIVE = r'\.[a-z]+' +WORD = r'(?:[a-zA-Z_$\(<]|\[[A-Z\[])[\w$;\/\[\(\)<>*+-]*' +FOLLOWED_BY_WHITESPACE = r'(?=\s|\Z)' +REF = r'\[[a-z0-9_:]+\]' +LABEL_DEF = r'L\w+:' + +COMMENT = r';.*' +# Match optional comment and at least one newline, followed by any number of empty/whitespace lines +NEWLINES = r'(?:{})?\n\s*'.format(COMMENT) + +HEX_DIGIT = r'[0-9a-fA-F]' +ESCAPE_SEQUENCE = r'''\\(?:U00(?:10|0{hd}){hd}{{4}}|u{hd}{{4}}|x{hd}{{2}}|[btnfr'"\\0-7])'''.format(hd=HEX_DIGIT) +# See http://stackoverflow.com/questions/430759/regex-for-managing-escaped-characters-for-items-like-string-literals/5455705# 5455705 +STRING_LITERAL = r''' +[bB]?(?: + " + [^"\n\\]* # any number of unescaped characters + (?:{es}[^"\n\\]* # escape sequence followed by 0 or more unescaped + )* + " +| + ' + [^'\n\\]* # any number of unescaped characters + (?:{es}[^'\n\\]* # escape sequence followed by 0 or more unescaped + )* + ' +)'''.format(es=ESCAPE_SEQUENCE) +# For error detection +STRING_START = r'''[bB]?(?:"(?:[^"\\\n]|{es})*|'(?:[^'\\\n]|{es})*)'''.format(es=ESCAPE_SEQUENCE) + +# Careful here: | is not greedy so hex must come first +INT_LITERAL = r'[+-]?(?:0[xX]{hd}+|[1-9][0-9]*|0)[lL]?'.format(hd=HEX_DIGIT) +FLOAT_LITERAL = r'''(?: + (?: + [-+][Ii][Nn][Ff][Ii][Nn][Ii][Tt][Yy]| # Nan and Inf both have mandatory sign + [-+][Nn][Aa][Nn] + (?:<0[xX]{hd}+>)? # Optional suffix for nonstandard NaNs + )| + [-+]?(?: + \d+\.\d+(?:[eE][+-]?\d+)?| # decimal float + \d+[eE][+-]?\d+| # decimal float with no fraction (exponent mandatory) + 0[xX]{hd}+(?:\.{hd}+)?[pP][+-]?\d+ # hexidecimal float + ) + )[fF]? +'''.format(hd=HEX_DIGIT) diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/tokenize.py b/src/main/resources/Krakatau-master/Krakatau/assembler/tokenize.py new file mode 100644 index 00000000..404aefb8 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/tokenize.py @@ -0,0 +1,113 @@ +from __future__ import print_function + +import collections +import re +import sys + +from . import token_regexes as res + +class AsssemblerError(Exception): + pass + +Token = collections.namedtuple('Token', 'type val pos') + +TOKENS = [ + ('WHITESPACE', r'[ \t]+'), + ('WORD', res.WORD + res.FOLLOWED_BY_WHITESPACE), + ('DIRECTIVE', res.DIRECTIVE + res.FOLLOWED_BY_WHITESPACE), + ('LABEL_DEF', res.LABEL_DEF + res.FOLLOWED_BY_WHITESPACE), + ('NEWLINES', res.NEWLINES), + ('REF', res.REF + res.FOLLOWED_BY_WHITESPACE), + ('COLON', r':' + res.FOLLOWED_BY_WHITESPACE), + ('EQUALS', r'=' + res.FOLLOWED_BY_WHITESPACE), + ('INT_LITERAL', res.INT_LITERAL + res.FOLLOWED_BY_WHITESPACE), + ('DOUBLE_LITERAL', res.FLOAT_LITERAL + res.FOLLOWED_BY_WHITESPACE), + ('STRING_LITERAL', res.STRING_LITERAL + res.FOLLOWED_BY_WHITESPACE), +] +REGEX = re.compile('|'.join('(?P<{}>{})'.format(*pair) for pair in TOKENS), re.VERBOSE) +# For error detection +STRING_START_REGEX = re.compile(res.STRING_START) +WORD_LIKE_REGEX = re.compile(r'.\S*') + +MAXLINELEN = 80 +def formatError(source, filename, message, point, point2): + try: + start = source.rindex('\n', 0, point) + 1 + except ValueError: + start = 0 + line_start = start + + try: + end = source.index('\n', start) + 1 + except ValueError: # pragma: no cover + end = len(source) + 1 + + # Find an 80 char section of the line around the point of interest to display + temp = min(point2, point + MAXLINELEN//2) + if temp < start + MAXLINELEN: + end = min(end, start + MAXLINELEN) + elif point >= end - MAXLINELEN: + start = max(start, end - MAXLINELEN) + else: + mid = (point + temp) // 2 + start = max(start, mid - MAXLINELEN//2) + end = min(end, start + MAXLINELEN) + point2 = min(point2, end) + assert line_start <= start <= point < point2 <= end + + pchars = [' '] * (end - start) + for i in range(point - start, point2 - start): + pchars[i] = '~' + pchars[point - start] = '^' + lineno = source[:line_start].count('\n') + 1 + colno = point - line_start + 1 + return '{}:{}:{}: {}\n{}\n{}'.format(filename, lineno, colno, + message, source[start:end].rstrip('\n'), ''.join(pchars)) + +class Tokenizer(object): + def __init__(self, source, filename): + self.s = source + self.pos = 0 + self.atlineend = True + if isinstance(filename, bytes): + filename = filename.decode() + self.filename = filename.rpartition('/')[-1] + + def error(self, error, *notes): + printerr = lambda s: print(s, file=sys.stderr) + message, point, point2 = error + printerr(formatError(self.s, self.filename, 'error: ' + message, point, point2)) + for message, point, point2 in notes: + printerr(formatError(self.s, self.filename, 'note: ' + message, point, point2)) + raise AsssemblerError() + + def _nextsub(self): + match = REGEX.match(self.s, self.pos) + if match is None: + if self.atend(): + return Token('EOF', '', self.pos) + else: + str_match = STRING_START_REGEX.match(self.s, self.pos) + if str_match is not None: + self.error(('Invalid escape sequence or character in string literal', str_match.end(), str_match.end()+1)) + + match = WORD_LIKE_REGEX.match(self.s, self.pos) + return Token('INVALID_TOKEN', match.group(), match.start()) + assert match.start() == match.pos == self.pos + + self.pos = match.end() + return Token(match.lastgroup, match.group(), match.start()) + + def next(self): + tok = self._nextsub() + while tok.type == 'WHITESPACE' or self.atlineend and tok.type == 'NEWLINES': + tok = self._nextsub() + self.atlineend = tok.type == 'NEWLINES' + + if tok.type == 'INT_LITERAL' and tok.val.lower().endswith('l'): + return tok._replace(type='LONG_LITERAL') + elif tok.type == 'DOUBLE_LITERAL' and tok.val.lower().endswith('f'): + return tok._replace(type='FLOAT_LITERAL') + return tok + + def atend(self): return self.pos == len(self.s) diff --git a/src/main/resources/Krakatau-master/Krakatau/assembler/writer.py b/src/main/resources/Krakatau-master/Krakatau/assembler/writer.py new file mode 100644 index 00000000..fc9aedaf --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/assembler/writer.py @@ -0,0 +1,138 @@ +import collections +import struct + +Label = collections.namedtuple('Label', ['tok', 'sym']) + +class Writer(object): + def __init__(self): + self.b = bytearray() + self.refphs = [] + self.refu8phs = [] + self.lblphs = [] + + # includes lbl and manual phs but not ref phs + self._ph8s = set() + self._ph16s = set() + self._ph32s = set() + + @property + def pos(self): return len(self.b) + + def u8(self, x): self.b.append(x) + def s8(self, x): self.b.append(x % 256) + def u16(self, x): self.b.extend(struct.pack('>H', x)) + def s16(self, x): self.b.extend(struct.pack('>h', x)) + def u32(self, x): self.b.extend(struct.pack('>I', x)) + def s32(self, x): self.b.extend(struct.pack('>i', x)) + def u64(self, x): self.b.extend(struct.pack('>Q', x)) + def writeBytes(self, b): self.b.extend(b) + + def ref(self, ref): + self.refphs.append((self.pos, ref)) + self.u16(0) + + def refu8(self, ref): + self.refu8phs.append((self.pos, ref)) + self.u8(0) + + def ph8(self): + pos = self.pos + self.u8(0) + self._ph8s.add(pos) + return pos + + def ph16(self): + pos = self.pos + self.u16(0) + self._ph16s.add(pos) + return pos + + def ph32(self): + pos = self.pos + self.u32(0) + self._ph32s.add(pos) + return pos + + def lbl(self, lbl, base, dtype): + pos = self.ph32() if dtype == 's32' else self.ph16() + self.lblphs.append((pos, lbl, base, dtype)) + + def lblrange(self, start, end): + self.lbl(start, 0, 'u16') + self.lbl(end, start, 'u16') + + def setph8(self, pos, x): + assert self.b[pos] == 0 + self.b[pos] = x + self._ph8s.remove(pos) + + def setph16(self, pos, x): + assert self.b[pos:pos+2] == b'\0\0' + self.b[pos:pos+2] = struct.pack('>H', x) + self._ph16s.remove(pos) + + def setph32(self, pos, x): + assert self.b[pos:pos+4] == b'\0\0\0\0' + self.b[pos:pos+4] = struct.pack('>I', x) + self._ph32s.remove(pos) + + def _getlbl(self, lbl, labels, error): + if lbl.sym not in labels: + error('Undefined label', lbl.tok) + return labels[lbl.sym][1] + + def fillLabels(self, labels, error): + for pos, lbl, base, dtype in self.lblphs: + tok = lbl.tok + lbl = self._getlbl(lbl, labels, error) + + # base can also be a second label + if isinstance(base, Label): + base = self._getlbl(base, labels, error) + + offset = lbl - base + if dtype == 's16': + if not -1<<15 <= offset < 1<<15: + error('Label offset must fit in signed 16 bit int. (offset is {})'.format(offset), tok) + self.setph16(pos, offset % (1<<16)) + elif dtype == 'u16': + if not 0 <= offset < 1<<16: + error('Label offset must fit in unsigned 16 bit int. (offset is {})'.format(offset), tok) + self.setph16(pos, offset) + elif dtype == 's32': + if not -1<<31 <= offset < 1<<31: + error('Label offset must fit in signed 32 bit int. (offset is {})'.format(offset), tok) + self.setph32(pos, offset % (1<<32)) + else: + assert 0 # pragma: no cover + self.lblphs = [] + return self + + def fillRefs(self, pool, error): + for pos, ref in self.refu8phs: + self.b[pos] = ref.resolve(pool, error) + for pos, ref in self.refphs: + self.b[pos:pos+2] = struct.pack('>H', ref.resolve(pool, error)) + self.refu8phs = [] + self.refphs = [] + + def toBytes(self): + assert not self.refphs and not self.refu8phs + assert not self._ph8s and not self._ph16s and not self._ph32s + return bytes(self.b) + + def __len__(self): return len(self.b) + + def __iadd__(self, other): + # Make sure there are no manual placeholders in other + assert len(other.lblphs) == len(other._ph8s) + len(other._ph16s) + len(other._ph32s) + + offset = self.pos + self.b += other.b + self.refphs.extend((pos + offset, ref) for pos, ref in other.refphs) + self.refu8phs.extend((pos + offset, ref) for pos, ref in other.refu8phs) + self.lblphs.extend((pos + offset, lbl, base, dtype) for pos, lbl, base, dtype in other.lblphs) + self._ph8s.update(pos + offset for pos in other._ph8s) + self._ph16s.update(pos + offset for pos in other._ph16s) + self._ph32s.update(pos + offset for pos in other._ph32s) + return self diff --git a/src/main/resources/Krakatau-master/Krakatau/attributes_raw.py b/src/main/resources/Krakatau-master/Krakatau/attributes_raw.py new file mode 100644 index 00000000..9fb0a11e --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/attributes_raw.py @@ -0,0 +1,21 @@ +def get_attribute_raw(bytestream, ic_indices): + name_ind, length = bytestream.get('>HL') + + # Hotspot does not actually check the attribute length of InnerClasses prior to 49.0 + # so this case requires special handling. We will keep the purported length of the + # attribute so that it can be displayed in the disassembly. For InnerClass attributes + # data is actually a (length, bytes) tuple, rather than storing the bytes directly + if name_ind in ic_indices: + count = bytestream.get('>H', peek=True) + data = length, bytestream.getRaw(2+8*count) + else: + data = bytestream.getRaw(length) + + return name_ind,data + +def get_attributes_raw(bytestream, ic_indices=()): + attribute_count = bytestream.get('>H') + return [get_attribute_raw(bytestream, ic_indices) for _ in range(attribute_count)] + +def fixAttributeNames(attributes_raw, cpool): + return [(cpool.getArgsCheck('Utf8', name_ind), data) for name_ind, data in attributes_raw] diff --git a/src/main/resources/Krakatau-master/Krakatau/bytecode.py b/src/main/resources/Krakatau-master/Krakatau/bytecode.py new file mode 100644 index 00000000..1249a9a3 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/bytecode.py @@ -0,0 +1,217 @@ +from __future__ import division + +from . import opnames + +def parseInstructions(bytestream, isConstructor): + data = bytestream + assert data.off == 0 + + instructions = {} + while data.size() > 0: + address = data.off + inst = getNextInstruction(data, address) + + # replace constructor invocations with synthetic op invokeinit to simplfy things later + if inst[0] == opnames.INVOKESPECIAL and isConstructor(inst[1]): + inst = (opnames.INVOKEINIT,) + inst[1:] + + instructions[address] = inst + assert data.size() == 0 + return instructions + +simpleOps = {0x00:opnames.NOP, 0x01:opnames.CONSTNULL, 0x94:opnames.LCMP, + 0xbe:opnames.ARRLEN, 0xbf:opnames.THROW, 0xc2:opnames.MONENTER, + 0xc3:opnames.MONEXIT, 0x57:opnames.POP, 0x58:opnames.POP2, 0x59:opnames.DUP, + 0x5a:opnames.DUPX1, 0x5b:opnames.DUPX2, 0x5c:opnames.DUP2, + 0x5d:opnames.DUP2X1, 0x5e:opnames.DUP2X2, 0x5f:opnames.SWAP} + +singleIndexOps = {0xb2:opnames.GETSTATIC,0xb3:opnames.PUTSTATIC,0xb4:opnames.GETFIELD, + 0xb5:opnames.PUTFIELD,0xb6:opnames.INVOKEVIRTUAL,0xb7:opnames.INVOKESPECIAL, + 0xb8:opnames.INVOKESTATIC, 0xbb:opnames.NEW,0xbd:opnames.ANEWARRAY, + 0xc0:opnames.CHECKCAST,0xc1:opnames.INSTANCEOF} + +def getNextInstruction(data, address): + byte = data.get('>B') + + # typecode - B,C,S, and Bool are only used for array types and sign extension + A,B,C,D,F,I,L,S = "ABCDFIJS" + Bool = "Z" + + if byte in simpleOps: + inst = (simpleOps[byte],) + elif byte in singleIndexOps: + inst = (singleIndexOps[byte], data.get('>H')) + elif byte <= 0x11: + op = opnames.CONST + if byte <= 0x08: + t, val = I, byte - 0x03 + elif byte <= 0x0a: + t, val = L, byte - 0x09 + elif byte <= 0x0d: + t, val = F, float(byte - 0x0b) + elif byte <= 0x0f: + t, val = D, float(byte - 0x0e) + elif byte == 0x10: + t, val = I, data.get('>b') + else: + t, val = I, data.get('>h') + inst = op, t, val + elif byte == 0x12: + inst = opnames.LDC, data.get('>B'), 1 + elif byte == 0x13: + inst = opnames.LDC, data.get('>H'), 1 + elif byte == 0x14: + inst = opnames.LDC, data.get('>H'), 2 + elif byte <= 0x2d: + op = opnames.LOAD + if byte <= 0x19: + t = [I,L,F,D,A][byte - 0x15] + val = data.get('>B') + else: + temp = byte - 0x1a + t = [I,L,F,D,A][temp // 4] + val = temp % 4 + inst = op, t, val + elif byte <= 0x35: + op = opnames.ARRLOAD + t = [I,L,F,D,A,B,C,S][byte - 0x2e] + inst = (op, t) if t != A else (opnames.ARRLOAD_OBJ,) # split object case into seperate op name to simplify things later + elif byte <= 0x4e: + op = opnames.STORE + if byte <= 0x3a: + t = [I,L,F,D,A][byte - 0x36] + val = data.get('>B') + else: + temp = byte - 0x3b + t = [I,L,F,D,A][temp // 4] + val = temp % 4 + inst = op, t, val + elif byte <= 0x56: + op = opnames.ARRSTORE + t = [I,L,F,D,A,B,C,S][byte - 0x4f] + inst = (op, t) if t != A else (opnames.ARRSTORE_OBJ,) # split object case into seperate op name to simplify things later + elif byte <= 0x77: + temp = byte - 0x60 + opt = (opnames.ADD,opnames.SUB,opnames.MUL,opnames.DIV,opnames.REM,opnames.NEG)[temp//4] + t = (I,L,F,D)[temp % 4] + inst = opt, t + elif byte <= 0x83: + temp = byte - 0x78 + opt = (opnames.SHL,opnames.SHR,opnames.USHR,opnames.AND,opnames.OR,opnames.XOR)[temp//2] + t = (I,L)[temp % 2] + inst = opt, t + elif byte == 0x84: + inst = opnames.IINC, data.get('>B'), data.get('>b') + elif byte <= 0x90: + op = opnames.CONVERT + pairs = ((I,L),(I,F),(I,D),(L,I),(L,F),(L,D),(F,I),(F,L),(F,D), + (D,I),(D,L),(D,F)) + src_t, dest_t = pairs[byte - 0x85] + inst = op, src_t, dest_t + elif byte <= 0x93: + op = opnames.TRUNCATE + dest_t = [B,C,S][byte - 0x91] + inst = op, dest_t + elif byte <= 0x98: + op = opnames.FCMP + temp = byte - 0x95 + t = (F,D)[temp//2] + NaN_val = (-1,1)[temp % 2] + inst = op, t, NaN_val + elif byte <= 0x9e: + op = opnames.IF_I + cmp_t = ('eq','ne','lt','ge','gt','le')[byte - 0x99] + jumptarget = data.get('>h') + address + inst = op, cmp_t, jumptarget + elif byte <= 0xa4: + op = opnames.IF_ICMP + cmp_t = ('eq','ne','lt','ge','gt','le')[byte - 0x9f] + jumptarget = data.get('>h') + address + inst = op, cmp_t, jumptarget + elif byte <= 0xa6: + op = opnames.IF_ACMP + cmp_t = ('eq','ne')[byte - 0xa5] + jumptarget = data.get('>h') + address + inst = op, cmp_t, jumptarget + elif byte == 0xa7: + inst = opnames.GOTO, data.get('>h') + address + elif byte == 0xa8: + inst = opnames.JSR, data.get('>h') + address + elif byte == 0xa9: + inst = opnames.RET, data.get('>B') + elif byte == 0xaa: # Table Switch + padding = data.getRaw((3-address) % 4) + default = data.get('>i') + address + low = data.get('>i') + high = data.get('>i') + assert high >= low + numpairs = high - low + 1 + offsets = [data.get('>i') + address for _ in range(numpairs)] + jumps = zip(range(low, high+1), offsets) + inst = opnames.SWITCH, default, jumps + elif byte == 0xab: # Lookup Switch + padding = data.getRaw((3-address) % 4) + default = data.get('>i') + address + numpairs = data.get('>i') + assert numpairs >= 0 + pairs = [data.get('>ii') for _ in range(numpairs)] + jumps = [(x,(y + address)) for x,y in pairs] + inst = opnames.SWITCH, default, jumps + elif byte <= 0xb1: + op = opnames.RETURN + t = (I,L,F,D,A,None)[byte - 0xac] + inst = op, t + elif byte == 0xb9: + op = opnames.INVOKEINTERFACE + index = data.get('>H') + count, zero = data.get('>B'), data.get('>B') + inst = op, index, count, zero + elif byte == 0xba: + op = opnames.INVOKEDYNAMIC + index = data.get('>H') + zero = data.get('>H') + inst = op, index, zero + elif byte == 0xbc: + typecode = data.get('>b') + types = {4:Bool, 5:C, 6:F, 7:D, 8:B, 9:S, 10:I, 11:L} + t = types.get(typecode) + inst = opnames.NEWARRAY, t + elif byte == 0xc4: # wide + realbyte = data.get('>B') + if realbyte >= 0x15 and realbyte < 0x1a: + t = [I,L,F,D,A][realbyte - 0x15] + inst = opnames.LOAD, t, data.get('>H') + elif realbyte >= 0x36 and realbyte < 0x3b: + t = [I,L,F,D,A][realbyte - 0x36] + inst = opnames.STORE, t, data.get('>H') + elif realbyte == 0xa9: + inst = opnames.RET, data.get('>H') + elif realbyte == 0x84: + inst = opnames.IINC, data.get('>H'), data.get('>h') + else: + assert 0 + elif byte == 0xc5: + op = opnames.MULTINEWARRAY + index = data.get('>H') + dim = data.get('>B') + inst = op, index, dim + elif byte <= 0xc7: + op = opnames.IF_A + cmp_t = ('eq','ne')[byte - 0xc6] + jumptarget = data.get('>h') + address + inst = op, cmp_t, jumptarget + elif byte == 0xc8: + inst = opnames.GOTO, data.get('>i') + address + elif byte == 0xc9: + inst = opnames.JSR, data.get('>i') + address + else: + assert 0 + return inst + +def printInstruction(instr): + if len(instr) == 1: + return instr[0] + elif len(instr) == 2: + return '{}({})'.format(*instr) + else: + return '{}{}'.format(instr[0], instr[1:]) diff --git a/src/main/resources/Krakatau-master/Krakatau/classfile.py b/src/main/resources/Krakatau-master/Krakatau/classfile.py new file mode 100644 index 00000000..ff8ca8b9 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/classfile.py @@ -0,0 +1,107 @@ +from . import constant_pool, field, method +from .attributes_raw import fixAttributeNames, get_attributes_raw + +cp_structFmts = {3: '>i', + 4: '>i', # floats and doubles internally represented as integers with same bit pattern + 5: '>q', + 6: '>q', + 7: '>H', + 8: '>H', + 9: '>HH', + 10: '>HH', + 11: '>HH', + 12: '>HH', + 15: '>BH', + 16: '>H', + 18: '>HH'} + +def get_cp_raw(bytestream): + const_count = bytestream.get('>H') + assert const_count > 1 + + placeholder = None,None + pool = [placeholder] + + while len(pool) < const_count: + tag = bytestream.get('B') + if tag == 1: # utf8 + length = bytestream.get('>H') + data = bytestream.getRaw(length) + val = tag, (data,) + else: + val = tag,bytestream.get(cp_structFmts[tag], True) + pool.append(val) + # Longs and Doubles take up two spaces in the pool + if tag == 5 or tag == 6: + pool.append(placeholder) + assert len(pool) == const_count + return pool + +def get_field_raw(bytestream): + flags, name, desc = bytestream.get('>HHH') + attributes = get_attributes_raw(bytestream) + return flags, name, desc, attributes + +def get_fields_raw(bytestream): + count = bytestream.get('>H') + return [get_field_raw(bytestream) for _ in range(count)] + +# fields and methods have same raw format +get_method_raw = get_field_raw +get_methods_raw = get_fields_raw + +class ClassFile(object): + flagVals = {'PUBLIC':0x0001, + 'FINAL':0x0010, + 'SUPER':0x0020, + 'INTERFACE':0x0200, + 'ABSTRACT':0x0400, + 'SYNTHETIC':0x1000, + 'ANNOTATION':0x2000, + 'ENUM':0x4000, + + # These flags are only used for InnerClasses attributes + 'PRIVATE':0x0002, + 'PROTECTED':0x0004, + 'STATIC':0x0008, + } + + def __init__(self, bytestream): + magic, minor, major = bytestream.get('>LHH') + assert magic == 0xCAFEBABE + self.version = major,minor + + const_pool_raw = get_cp_raw(bytestream) + flags, self.this, self.super = bytestream.get('>HHH') + + interface_count = bytestream.get('>H') + self.interfaces_raw = [bytestream.get('>H') for _ in range(interface_count)] + + self.fields_raw = get_fields_raw(bytestream) + self.methods_raw = get_methods_raw(bytestream) + + ic_indices = [i for i,x in enumerate(const_pool_raw) if x == (1, ("InnerClasses",))] + self.attributes_raw = get_attributes_raw(bytestream, ic_indices) + assert bytestream.size() == 0 + + self.flags = frozenset(name for name,mask in ClassFile.flagVals.items() if (mask & flags)) + self.cpool = constant_pool.ConstPool(const_pool_raw) + self.name = self.cpool.getArgsCheck('Class', self.this) + self.elementsLoaded = False + + self.env = self.supername = None + self.fields = self.methods = self.attributes = None + if self.super: + self.supername = self.cpool.getArgsCheck('Class', self.super) + + def loadElements(self, keepRaw=False): + if self.elementsLoaded: + return + self.fields = [field.Field(m, self, keepRaw) for m in self.fields_raw] + self.methods = [method.Method(m, self, keepRaw) for m in self.methods_raw] + self.attributes = fixAttributeNames(self.attributes_raw, self.cpool) + + self.fields_raw = self.methods_raw = None + if not keepRaw: + self.attributes_raw = None + self.elementsLoaded = True diff --git a/src/main/resources/Krakatau-master/Krakatau/classfileformat/__init__.py b/src/main/resources/Krakatau-master/Krakatau/classfileformat/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/main/resources/Krakatau-master/Krakatau/classfileformat/classdata.py b/src/main/resources/Krakatau-master/Krakatau/classfileformat/classdata.py new file mode 100644 index 00000000..6e2d1dfd --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/classfileformat/classdata.py @@ -0,0 +1,116 @@ +import collections + +from .reader import Reader + +TAGS = [None, 'Utf8', None, 'Int', 'Float', 'Long', 'Double', 'Class', 'String', 'Field', 'Method', 'InterfaceMethod', 'NameAndType', None, None, 'MethodHandle', 'MethodType', None, 'InvokeDynamic', 'Module', 'Package'] + +SlotData = collections.namedtuple('SlotData', ['tag', 'data', 'refs']) +ExceptData = collections.namedtuple('ExceptData', ['start', 'end', 'handler', 'type']) + +class ConstantPoolData(object): + def __init__(self, r): + self.slots = [] + self._null() + + size = r.u16() + while len(self.slots) < size: + self._const(r) + + def _null(self): + self.slots.append(SlotData(None, None, None)) + + def _const(self, r): + t = TAGS[r.u8()] + data = None + refs = [] + + if t == 'Utf8': + data = r.getRaw(r.u16()) + elif t == 'Int' or t == 'Float': + data = r.u32() + elif t == 'Long' or t == 'Double': + data = r.u64() + elif t == 'MethodHandle': + data = r.u8() + refs.append(r.u16()) + elif t in ['Class', 'String', 'MethodType', 'Module', 'Package']: + refs.append(r.u16()) + else: + refs.append(r.u16()) + refs.append(r.u16()) + self.slots.append(SlotData(t, data, refs)) + if t in ('Long', 'Double'): + self._null() + + def getutf(self, ind): + if ind < len(self.slots) and self.slots[ind].tag == 'Utf8': + return self.slots[ind].data + + def getclsutf(self, ind): + if ind < len(self.slots) and self.slots[ind].tag == 'Class': + return self.getutf(self.slots[ind].refs[0]) + +class BootstrapMethodsData(object): + def __init__(self, r): + self.slots = [] + for _ in range(r.u16()): + first = r.u16() + argcount = r.u16() + refs = [first] + [r.u16() for _ in range(argcount)] + self.slots.append(SlotData('Bootstrap', None, refs)) + +class CodeData(object): + def __init__(self, r, pool, short): + if short: + self.stack, self.locals, codelen = r.u8(), r.u8(), r.u16() + else: + self.stack, self.locals, codelen = r.u16(), r.u16(), r.u32() + + self.bytecode = r.getRaw(codelen) + self.exceptions = [ExceptData(r.u16(), r.u16(), r.u16(), r.u16()) for _ in range(r.u16())] + self.attributes = [AttributeData(r) for _ in range(r.u16())] + +class AttributeData(object): + def __init__(self, r, pool=None): + self.name, self.length = r.u16(), r.u32() + + # The JVM allows InnerClasses attributes to have a bogus length field, + # and hence we must calculate the length from the contents + if pool and pool.getutf(self.name) == b'InnerClasses': + actual_length = r.copy().u16() * 8 + 2 + else: + actual_length = self.length + + self.raw = r.getRaw(actual_length) + self.wronglength = actual_length != self.length + + def stream(self): return Reader(self.raw) + +class FieldData(object): + def __init__(self, r): + self.access, self.name, self.desc = r.u16(), r.u16(), r.u16() + self.attributes = [AttributeData(r) for _ in range(r.u16())] + +class MethodData(object): + def __init__(self, r): + self.access, self.name, self.desc = r.u16(), r.u16(), r.u16() + self.attributes = [AttributeData(r) for _ in range(r.u16())] + +class ClassData(object): + def __init__(self, r): + magic, minor, major = r.u32(), r.u16(), r.u16() + self.version = major, minor + + self.pool = ConstantPoolData(r) + + self.access, self.this, self.super = r.u16(), r.u16(), r.u16() + self.interfaces = [r.u16() for _ in range(r.u16())] + self.fields = [FieldData(r) for _ in range(r.u16())] + self.methods = [MethodData(r) for _ in range(r.u16())] + self.attributes = [AttributeData(r, pool=self.pool) for _ in range(r.u16())] + # assert r.done() + + def getattrs(self, name): + for attr in self.attributes: + if self.pool.getutf(attr.name) == name: + yield attr diff --git a/src/main/resources/Krakatau-master/Krakatau/classfileformat/mutf8.py b/src/main/resources/Krakatau-master/Krakatau/classfileformat/mutf8.py new file mode 100644 index 00000000..91acebf0 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/classfileformat/mutf8.py @@ -0,0 +1,28 @@ +import re + +# First alternative handles a single surrogate, in case input string somehow contains unmerged surrogates +NONASTRAL_REGEX = re.compile(u'[\ud800-\udfff]|[\0-\ud7ff\ue000-\uffff]+') + +def encode(s): + assert not isinstance(s, bytes) + b = b'' + pos = 0 + while pos < len(s): + x = ord(s[pos]) + if x >= 1<<16: + x -= 1<<16 + high = 0xD800 + (x >> 10) + low = 0xDC00 + (x % (1 << 10)) + b += unichr(high).encode('utf8') + b += unichr(low).encode('utf8') + pos += 1 + else: + m = NONASTRAL_REGEX.match(s, pos) + b += m.group().encode('utf8') + pos = m.end() + return b.replace(b'\0', b'\xc0\x80') + +# Warning, decode(encode(s)) != s if s contains astral characters, as they are converted to surrogate pairs +def decode(b): + assert isinstance(b, bytes) + return b.replace(b'\xc0\x80', b'\0').decode('utf8') diff --git a/src/main/resources/Krakatau-master/Krakatau/classfileformat/reader.py b/src/main/resources/Krakatau-master/Krakatau/classfileformat/reader.py new file mode 100644 index 00000000..8e2f93d3 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/classfileformat/reader.py @@ -0,0 +1,47 @@ +import struct + + +class TruncatedStreamError(EOFError): + pass + + +class Reader(object): + __slots__ = ['d', 'off'] + def __init__(self, data, off=0): + self.d = data + self.off = off + + def done(self): return self.off >= len(self.d) + def copy(self): return Reader(self.d, self.off) + + def u8(self): return self.get('>B') + def s8(self): return self.get('>b') + def u16(self): return self.get('>H') + def s16(self): return self.get('>h') + def u32(self): return self.get('>I') + def s32(self): return self.get('>i') + def u64(self): return self.get('>Q') + + # binUnpacker functions + def get(self, fmt, forceTuple=False, peek=False): + size = struct.calcsize(fmt) + if self.size() < size: + raise TruncatedStreamError() + + val = struct.unpack_from(fmt, self.d, self.off) + + if not peek: + self.off += size + if not forceTuple and len(val) == 1: + val = val[0] + return val + + def getRaw(self, num): + if self.size() < num: + raise TruncatedStreamError() + val = self.d[self.off:self.off+num] + self.off += num + return val + + def size(self): + return len(self.d) - self.off diff --git a/src/main/resources/Krakatau-master/Krakatau/constant_pool.py b/src/main/resources/Krakatau-master/Krakatau/constant_pool.py new file mode 100644 index 00000000..4b6a1e91 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/constant_pool.py @@ -0,0 +1,103 @@ +import collections +import struct + +# ConstantPool stores strings as strings or unicodes. They are automatically +# converted to and from modified Utf16 when reading and writing to binary + +# Floats and Doubles are internally stored as integers with the same bit pattern +# Since using raw floats breaks equality testing for signed zeroes and NaNs +# cpool.getArgs/getArgsCheck will automatically convert them into Python floats + +def decodeStr(s): + return s.replace('\xc0\x80','\0').decode('utf8'), +def decodeFloat(i): + return struct.unpack('>f', struct.pack('>i', i)) # Note: returns tuple +def decodeDouble(i): + return struct.unpack('>d', struct.pack('>q', i)) + +cpoolInfo_t = collections.namedtuple('cpoolInfo_t', + ['name','tag','recoverArgs']) + +Utf8 = cpoolInfo_t('Utf8',1, + (lambda self,s:(s,))) + +Class = cpoolInfo_t('Class',7, + (lambda self,n_id:self.getArgs(n_id))) + +NameAndType = cpoolInfo_t('NameAndType',12, + (lambda self,n,d:self.getArgs(n) + self.getArgs(d))) + +Field = cpoolInfo_t('Field',9, + (lambda self,c_id,nat_id:self.getArgs(c_id) + self.getArgs(nat_id))) + +Method = cpoolInfo_t('Method',10, + (lambda self,c_id,nat_id:self.getArgs(c_id) + self.getArgs(nat_id))) + +InterfaceMethod = cpoolInfo_t('InterfaceMethod',11, + (lambda self,c_id,nat_id:self.getArgs(c_id) + self.getArgs(nat_id))) + +String = cpoolInfo_t('String',8, + (lambda self,n_id:self.getArgs(n_id))) + +Int = cpoolInfo_t('Int',3, + (lambda self,s:(s,))) + +Long = cpoolInfo_t('Long',5, + (lambda self,s:(s,))) + +Float = cpoolInfo_t('Float',4, + (lambda self,s:decodeFloat(s))) + +Double = cpoolInfo_t('Double',6, + (lambda self,s:decodeDouble(s))) + +MethodHandle = cpoolInfo_t('MethodHandle',15, + (lambda self,t,n_id:(t,)+self.getArgs(n_id))) + +MethodType = cpoolInfo_t('MethodType',16, + (lambda self,n_id:self.getArgs(n_id))) + +InvokeDynamic = cpoolInfo_t('InvokeDynamic',18, + (lambda self,bs_id,nat_id:(bs_id,) + self.getArgs(nat_id))) + +cpoolTypes = [Utf8, Class, NameAndType, Field, Method, InterfaceMethod, + String, Int, Long, Float, Double, + MethodHandle, MethodType, InvokeDynamic] +name2Type = {t.name:t for t in cpoolTypes} +tag2Type = {t.tag:t for t in cpoolTypes} + +class ConstPool(object): + def __init__(self, initialData=((None,None),)): + self.pool = [] + self.reserved = set() + self.available = set() + + for tag, val in initialData: + if tag is None: + self.addEmptySlot() + else: + t = tag2Type[tag] + if t.name == 'Utf8': + val = decodeStr(*val) + self.pool.append((t.name, val)) + + def addEmptySlot(self): + self.pool.append((None, None)) + + def getArgs(self, i): + if not (i >= 0 and i 1 else val[0] + + def getType(self, index): return self.pool[index][0] diff --git a/src/main/resources/Krakatau-master/Krakatau/environment.py b/src/main/resources/Krakatau-master/Krakatau/environment.py new file mode 100644 index 00000000..770fc158 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/environment.py @@ -0,0 +1,110 @@ +import os.path +import zipfile + +from .classfile import ClassFile +from .classfileformat.reader import Reader +from .error import ClassLoaderError + +class Environment(object): + def __init__(self): + self.classes = {} + self.path = [] + self._open = {} + + def addToPath(self, path): + self.path.append(path) + + def _getSuper(self, name): + return self.getClass(name).supername + + def getClass(self, name, partial=False): + try: + result = self.classes[name] + except KeyError: + result = self._loadClass(name) + if not partial: + result.loadElements() + return result + + def isSubclass(self, name1, name2): + if name2 == 'java/lang/Object': + return True + + while name1 != 'java/lang/Object': + if name1 == name2: + return True + name1 = self._getSuper(name1) + return False + + def commonSuperclass(self, name1, name2): + a, b = name1, name2 + supers = {a} + while a != b and a != 'java/lang/Object': + a = self._getSuper(a) + supers.add(a) + + while b not in supers: + b = self._getSuper(b) + return b + + def isInterface(self, name, forceCheck=False): + try: + class_ = self.getClass(name, partial=True) + return 'INTERFACE' in class_.flags + except ClassLoaderError as e: + if forceCheck: + raise e + # If class is not found, assume worst case, that it is a interface + return True + + def isFinal(self, name): + try: + class_ = self.getClass(name, partial=True) + return 'FINAL' in class_.flags + except ClassLoaderError as e: + return False + + def _searchForFile(self, name): + name += '.class' + for place in self.path: + try: + archive = self._open[place] + except KeyError: # plain folder + try: + path = os.path.join(place, name) + with open(path, 'rb') as file_: + return file_.read() + except IOError: + print 'failed to open', path.encode('utf8') + else: # zip archive + try: + return archive.read(name) + except KeyError: + pass + + def _loadClass(self, name): + print "Loading", name[:70] + data = self._searchForFile(name) + + if data is None: + raise ClassLoaderError('ClassNotFoundException', name) + + stream = Reader(data=data) + new = ClassFile(stream) + new.env = self + self.classes[new.name] = new + return new + + # Context Manager methods to manager our zipfiles + def __enter__(self): + assert not self._open + for place in self.path: + if place.endswith('.jar') or place.endswith('.zip'): + self._open[place] = zipfile.ZipFile(place, 'r').__enter__() + return self + + def __exit__(self, type_, value, traceback): + for place in reversed(self.path): + if place in self._open: + self._open[place].__exit__(type_, value, traceback) + del self._open[place] diff --git a/src/main/resources/Krakatau-master/Krakatau/error.py b/src/main/resources/Krakatau-master/Krakatau/error.py new file mode 100644 index 00000000..a9463eee --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/error.py @@ -0,0 +1,12 @@ +class ClassLoaderError(Exception): + def __init__(self, typen=None, data=""): + self.type = typen + self.data = data + + message = "\n{}: {}".format(typen, data) if typen else data + super(ClassLoaderError, self).__init__(message) + +class VerificationError(Exception): + def __init__(self, message, data=None): + super(VerificationError, self).__init__(message) + self.data = data diff --git a/src/main/resources/Krakatau-master/Krakatau/field.py b/src/main/resources/Krakatau-master/Krakatau/field.py new file mode 100644 index 00000000..1d3a7c7d --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/field.py @@ -0,0 +1,29 @@ +from .attributes_raw import fixAttributeNames + +class Field(object): + flagVals = {'PUBLIC':0x0001, + 'PRIVATE':0x0002, + 'PROTECTED':0x0004, + 'STATIC':0x0008, + 'FINAL':0x0010, + 'VOLATILE':0x0040, + 'TRANSIENT':0x0080, + 'SYNTHETIC':0x1000, + 'ENUM':0x4000, + } + + def __init__(self, data, classFile, keepRaw): + self.class_ = classFile + cpool = self.class_.cpool + + flags, name_id, desc_id, attributes_raw = data + + self.name = cpool.getArgsCheck('Utf8', name_id) + self.descriptor = cpool.getArgsCheck('Utf8', desc_id) + self.attributes = fixAttributeNames(attributes_raw, cpool) + + self.flags = set(name for name,mask in Field.flagVals.items() if (mask & flags)) + self.static = 'STATIC' in self.flags + if keepRaw: + self.attributes_raw = attributes_raw + self.name_id, self.desc_id = name_id, desc_id diff --git a/src/main/resources/Krakatau-master/Krakatau/floatutil.py b/src/main/resources/Krakatau-master/Krakatau/floatutil.py new file mode 100644 index 00000000..c4b78068 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/floatutil.py @@ -0,0 +1,81 @@ +import math + +INF_MAG = 1, None +ZERO_MAG = 0, None + +# Numbers are represented as (sign, (mantissa, exponent)) +# For finite nonzero values, the float value is sign * mantissa * 2 ^ (exponent - mbits - 1) +# Mantissa is normalized to always be within (2 ^ mbits) <= m < (2 ^ mbits + 1) even for subnormal numbers +NAN = None,(None,None) +INF = 1,INF_MAG +NINF = -1,INF_MAG +ZERO = 1,ZERO_MAG +NZERO = -1,ZERO_MAG + +# Key suitable for sorting finite (normalized) nonzero values +sortkey = lambda (s,(m,e)):(s,s*e,s*m) + +# Size info for type - mantissa bits, min exponent, max exponent +FLOAT_SIZE = 23,-126,127 +DOUBLE_SIZE = 52,-1022,1023 + +def flog(x): + '''returns f such that 2**f <= x < 2**(f+1)''' + assert x > 0 + return len(bin(x))-3 + +def roundMag(size, mag): + '''Round (unnormalized) magnitude to nearest representable magnitude with ties going to 0 lsb''' + mbits, emin, emax = size + m, e = mag + assert m >= 1 + f = flog(m) + + if e+f < emin: # subnormal + dnmin = emin - mbits + if e+f < (dnmin - 1): + return ZERO_MAG + if e > dnmin: + m = m << (e - dnmin) + f += (e - dnmin) + e = dnmin + s = dnmin - e + i = m >> s + r = (m - (i << s)) * 2 + h = 1 << s + if r > h or r == h and (i&1): + i += 1 + return i, e+s-mbits-1 + else: + if f < mbits: + m = m << (mbits - f) + f = mbits + s = f - mbits + if (e+f) > emax: + return INF_MAG + i = m >> s + r = (m - (i << s)) * 2 + h = 1 << s + if r > h or r == h and (i&1): + i += 1 + if i == (1<> 1 + e += 1 + if e > emax: + return INF_MAG + return i, e+s-mbits-1 + +def fromRawFloat(size, x): + if math.isnan(x): + return NAN + sign = int(math.copysign(1, x)) + x = math.copysign(x, 1) + + if math.isinf(x): + return sign, INF_MAG + elif x == 0.0: + return sign, ZERO_MAG + else: + m, e = math.frexp(x) + m = int(m * (1<<(size[0]+1))) + return sign, roundMag(size, (m, e)) diff --git a/src/main/resources/Krakatau-master/Krakatau/graph_util.py b/src/main/resources/Krakatau-master/Krakatau/graph_util.py new file mode 100644 index 00000000..ff4d9ffc --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/graph_util.py @@ -0,0 +1,68 @@ +import itertools + +def tarjanSCC(roots, getChildren): + """Return a list of strongly connected components in a graph. If getParents is passed instead of getChildren, the result will be topologically sorted. + + roots - list of root nodes to search from + getChildren - function which returns children of a given node + """ + + sccs = [] + indexCounter = itertools.count() + index = {} + lowlink = {} + removed = set() + subtree = [] + + # Use iterative version to avoid stack limits for large datasets + stack = [(node, 0) for node in roots] + while stack: + current, state = stack.pop() + if state == 0: # before recursing + if current not in index: # if it's in index, it was already visited (possibly earlier on the current search stack) + lowlink[current] = index[current] = next(indexCounter) + subtree.append(current) + + stack.append((current, 1)) + stack.extend((child, 0) for child in getChildren(current) if child not in removed) + else: # after recursing + children = [child for child in getChildren(current) if child not in removed] + for child in children: + if index[child] <= index[current]: # backedge (or selfedge) + lowlink[current] = min(lowlink[current], index[child]) + else: + lowlink[current] = min(lowlink[current], lowlink[child]) + assert lowlink[current] <= index[current] + + if index[current] == lowlink[current]: + scc = [] + while not scc or scc[-1] != current: + scc.append(subtree.pop()) + + sccs.append(tuple(scc)) + removed.update(scc) + return sccs + +def topologicalSort(roots, getParents): + """Return a topological sorting of nodes in a graph. + + roots - list of root nodes to search from + getParents - function which returns the parents of a given node + """ + + results = [] + visited = set() + + # Use iterative version to avoid stack limits for large datasets + stack = [(node,0) for node in roots] + while stack: + current, state = stack.pop() + if state == 0: # before recursing + if current not in visited: + visited.add(current) + stack.append((current,1)) + stack.extend((parent,0) for parent in getParents(current)) + else: # after recursing + assert current in visited + results.append(current) + return results diff --git a/src/main/resources/Krakatau-master/Krakatau/java/__init__.py b/src/main/resources/Krakatau-master/Krakatau/java/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/main/resources/Krakatau-master/Krakatau/java/ast.py b/src/main/resources/Krakatau-master/Krakatau/java/ast.py new file mode 100644 index 00000000..4f355e81 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/ast.py @@ -0,0 +1,734 @@ +import itertools +import math + +from ..ssa import objtypes + +from . import visitor +from .stringescape import escapeString + +# Explicitly cast parameters to the desired type in order to avoid potential issues with overloaded methods +ALWAYS_CAST_PARAMS = 1 + +class VariableDeclarator(object): + def __init__(self, typename, identifier): self.typename = typename; self.local = identifier + + def print_(self, printer, print_): + return '{} {}'.format(print_(self.typename), print_(self.local)) + + def tree(self, printer, tree): return [tree(self.typename), tree(self.local)] + +############################################################################################################################################# + +class JavaStatement(object): + expr = None # provide default for subclasses that don't have an expression + def getScopes(self): return () + + def fixLiterals(self): + if self.expr is not None: + self.expr = self.expr.fixLiterals() + + def addCastsAndParens(self, env): + if self.expr is not None: + self.expr.addCasts(env) + self.expr.addParens() + +class ExpressionStatement(JavaStatement): + def __init__(self, expr): + self.expr = expr + assert expr is not None + + def print_(self, printer, print_): return print_(self.expr) + ';' + def tree(self, printer, tree): return [self.__class__.__name__, tree(self.expr)] + +class LocalDeclarationStatement(JavaStatement): + def __init__(self, decl, expr=None): + self.decl = decl + self.expr = expr + + def print_(self, printer, print_): + if self.expr is not None: + return '{} = {};'.format(print_(self.decl), print_(self.expr)) + return print_(self.decl) + ';' + + def tree(self, printer, tree): return [self.__class__.__name__, tree(self.expr), tree(self.decl)] + + def addCastsAndParens(self, env): + if self.expr is not None: + self.expr.addCasts(env) + + if not isJavaAssignable(env, self.expr.dtype, self.decl.typename.tt): + self.expr = makeCastExpr(self.decl.typename.tt, self.expr, fixEnv=env) + self.expr.addParens() + +class ReturnStatement(JavaStatement): + def __init__(self, expr=None, tt=None): + self.expr = expr + self.tt = tt + + def print_(self, printer, print_): return 'return {};'.format(print_(self.expr)) if self.expr is not None else 'return;' + def tree(self, printer, tree): return [self.__class__.__name__, tree(self.expr)] + + def addCastsAndParens(self, env): + if self.expr is not None: + self.expr.addCasts(env) + if not isJavaAssignable(env, self.expr.dtype, self.tt): + self.expr = makeCastExpr(self.tt, self.expr, fixEnv=env) + self.expr.addParens() + +class ThrowStatement(JavaStatement): + def __init__(self, expr): + self.expr = expr + def print_(self, printer, print_): return 'throw {};'.format(print_(self.expr)) + def tree(self, printer, tree): return [self.__class__.__name__, tree(self.expr)] + +class JumpStatement(JavaStatement): + def __init__(self, target, isFront): + self.label = target.getLabel() if target is not None else None + self.keyword = 'continue' if isFront else 'break' + + def print_(self, printer, print_): + label = ' ' + self.label if self.label is not None else '' + return self.keyword + label + ';' + + def tree(self, printer, tree): return [self.__class__.__name__, self.keyword, self.label] + +# Compound Statements +sbcount = itertools.count() +class LazyLabelBase(JavaStatement): + # Jumps are represented by arbitrary 'keys', currently just the key of the + # original proxy node. Each item has a continueKey and a breakKey representing + # the beginning and the point just past the end respectively. breakKey may be + # None if this item appears at the end of the function and there is nothing after it. + # Statement blocks have a jump key representing where it jumps to if any. This + # may be None if the jump is unreachable (such as if there is a throw or return) + def __init__(self, labelfunc, begink, endk): + self.label, self.func = None, labelfunc + self.continueKey = begink + self.breakKey = endk + self.id = next(sbcount) # For debugging purposes + + def getLabel(self): + if self.label is None: + self.label = self.func() # Not a bound function! + return self.label + + def getLabelPrefix(self): return '' if self.label is None else self.label + ': ' + # def getLabelPrefix(self): return self.getLabel() + ': ' + + # For debugging + def __str__(self): # pragma: no cover + if isinstance(self, StatementBlock): + return 'Sb'+str(self.id) + return type(self).__name__[:3]+str(self.id) + __repr__ = __str__ + +class TryStatement(LazyLabelBase): + def __init__(self, labelfunc, begink, endk, tryb, pairs): + super(TryStatement, self).__init__(labelfunc, begink, endk) + self.tryb, self.pairs = tryb, pairs + + def getScopes(self): return (self.tryb,) + zip(*self.pairs)[1] + + def print_(self, printer, print_): + tryb = print_(self.tryb) + parts = ['catch({}) {}'.format(print_(x), print_(y)) for x,y in self.pairs] + return '{}try {} {}'.format(self.getLabelPrefix(), tryb, '\n'.join(parts)) + + def tree(self, printer, tree): + parts = [map(tree, t) for t in self.pairs] + return [self.__class__.__name__, self.label, tree(self.tryb), parts] + +class IfStatement(LazyLabelBase): + def __init__(self, labelfunc, begink, endk, expr, scopes): + super(IfStatement, self).__init__(labelfunc, begink, endk) + self.expr = expr # don't rename without changing how var replacement works! + self.scopes = scopes + + def getScopes(self): return self.scopes + + def print_(self, printer, print_): + lbl = self.getLabelPrefix() + parts = [self.expr] + list(self.scopes) + + if len(self.scopes) == 1: + parts = [print_(x) for x in parts] + return '{}if ({}) {}'.format(lbl, *parts) + + # Special case handling for 'else if' + fblock = self.scopes[1] + if len(fblock.statements) == 1: + stmt = fblock.statements[-1] + if isinstance(stmt, IfStatement) and stmt.label is None: + parts[-1] = stmt + parts = [print_(x) for x in parts] + return '{}if ({}) {} else {}'.format(lbl, *parts) + + def tree(self, printer, tree): return [self.__class__.__name__, self.label, tree(self.expr), map(tree, self.scopes)] + +class SwitchStatement(LazyLabelBase): + def __init__(self, labelfunc, begink, endk, expr, pairs): + super(SwitchStatement, self).__init__(labelfunc, begink, endk) + self.expr = expr # don't rename without changing how var replacement works! + self.pairs = pairs + + def getScopes(self): return zip(*self.pairs)[1] + def hasDefault(self): return None in zip(*self.pairs)[0] + + def print_(self, printer, print_): + expr = print_(self.expr) + + def printCase(keys): + if keys is None: + return 'default: ' + assert keys + return ''.join(map('case {}: '.format, sorted(keys))) + + bodies = [(printCase(keys) + print_(scope)) for keys, scope in self.pairs] + if self.pairs[-1][0] is None and len(self.pairs[-1][1].statements) == 0: + bodies.pop() + + contents = '\n'.join(bodies) + indented = [' '+line for line in contents.splitlines()] + lines = ['{'] + indented + ['}'] + return '{}switch({}) {}'.format(self.getLabelPrefix(), expr, '\n'.join(lines)) + + def tree(self, printer, tree): + parts = [] + for keys, scope in self.pairs: + parts.append([[None] if keys is None else sorted(keys), tree(scope)]) + return [self.__class__.__name__, self.label, tree(self.expr), parts] + +class WhileStatement(LazyLabelBase): + def __init__(self, labelfunc, begink, endk, parts): + super(WhileStatement, self).__init__(labelfunc, begink, endk) + self.expr = Literal.TRUE + self.parts = parts + assert len(self.parts) == 1 + + def getScopes(self): return self.parts + + def print_(self, printer, print_): + parts = print_(self.expr), print_(self.parts[0]) + return '{}while({}) {}'.format(self.getLabelPrefix(), *parts) + + def tree(self, printer, tree): return [self.__class__.__name__, self.label, tree(self.expr), tree(self.parts[0])] + +class StatementBlock(LazyLabelBase): + def __init__(self, labelfunc, begink, endk, statements, jumpk, labelable=True): + super(StatementBlock, self).__init__(labelfunc, begink, endk) + self.parent = None # should be assigned later + self.statements = statements + self.jumpKey = jumpk + self.labelable = labelable + + def doesFallthrough(self): return self.jumpKey is None or self.jumpKey == self.breakKey + + def getScopes(self): return self, + + def print_(self, printer, print_): + assert self.labelable or self.label is None + contents = '\n'.join(print_(x) for x in self.statements) + indented = [' '+line for line in contents.splitlines()] + # indented[:0] = [' //{} {}'.format(self,x) for x in (self.continueKey, self.breakKey, self.jumpKey)] + lines = [self.getLabelPrefix() + '{'] + indented + ['}'] + return '\n'.join(lines) + + @staticmethod + def join(*scopes): + blists = [s.bases for s in scopes if s is not None] # allow None to represent the universe (top element) + if not blists: + return None + common = [x for x in zip(*blists) if len(set(x)) == 1] + return common[-1][0] + + def tree(self, printer, tree): return ['BlockStatement', self.label, map(tree, self.statements)] + +############################################################################################################################################# +# Careful, order is important here! +_assignable_sprims = objtypes.ByteTT, objtypes.ShortTT, objtypes.CharTT +_assignable_lprims = objtypes.IntTT, objtypes.LongTT, objtypes.FloatTT, objtypes.DoubleTT + +# Also used in boolize.py +def isPrimativeAssignable(x, y): # x = fromt, y = to + assert objtypes.dim(x) == objtypes.dim(y) == 0 + + if x == y or (x in _assignable_sprims and y in _assignable_lprims): + return True + elif (x in _assignable_lprims and y in _assignable_lprims): + return _assignable_lprims.index(x) <= _assignable_lprims.index(y) + else: + return (x, y) == (objtypes.ByteTT, objtypes.ShortTT) + +def isReferenceType(tt): + return tt == objtypes.NullTT or objtypes.dim(tt) or (objtypes.className(tt) is not None) + +def isJavaAssignable(env, fromt, to): + if fromt is None or to is None: # this should never happen, except during debugging + return True + + if isReferenceType(to): + assert isReferenceType(fromt) + # todo - make it check interfaces too + return objtypes.isSubtype(env, fromt, to) + else: # allowed if numeric conversion is widening + return isPrimativeAssignable(fromt, to) + +_int_tts = objtypes.LongTT, objtypes.IntTT, objtypes.ShortTT, objtypes.CharTT, objtypes.ByteTT +def makeCastExpr(newtt, expr, fixEnv=None): + if newtt == expr.dtype: + return expr + + # if casting a literal with compatible type, just create a literal of the new type + if isinstance(expr, Literal): + allowed_conversions = [ + (objtypes.FloatTT, objtypes.DoubleTT), + (objtypes.IntTT, objtypes.LongTT), + (objtypes.IntTT, objtypes.BoolTT), + (objtypes.BoolTT, objtypes.IntTT), + ] + if (expr.dtype, newtt) in allowed_conversions: + return Literal(newtt, expr.val) + + if newtt == objtypes.IntTT and expr.dtype == objtypes.BoolTT: + return Ternary(expr, Literal.ONE, Literal.ZERO) + elif newtt == objtypes.BoolTT and expr.dtype == objtypes.IntTT: + return BinaryInfix('!=', [expr, Literal.ZERO], objtypes.BoolTT) + + ret = Cast(TypeName(newtt), expr) + if fixEnv is not None: + ret = ret.fix(fixEnv) + return ret +############################################################################################################################################# +# Precedence: +# 0 - pseudoprimary +# 5 - pseudounary +# 10-19 binary infix +# 20 - ternary +# 21 - assignment +# Associativity: L = Left, R = Right, A = Full + +class JavaExpression(object): + precedence = 0 # Default precedence + params = [] # for subclasses that don't have params + + def complexity(self): return 1 + max(e.complexity() for e in self.params) if self.params else 0 + + def postFlatIter(self): + return itertools.chain([self], *[expr.postFlatIter() for expr in self.params]) + + def print_(self, printer, print_): + return self.fmt.format(*[print_(expr) for expr in self.params]) + + def tree(self, printer, tree): return [self.__class__.__name__, map(tree, self.params)] + + def replaceSubExprs(self, rdict): + if self in rdict: + return rdict[self] + self.params = [param.replaceSubExprs(rdict) for param in self.params] + return self + + def fixLiterals(self): + self.params = [param.fixLiterals() for param in self.params] + return self + + def addCasts(self, env): + for param in self.params: + param.addCasts(env) + self.addCasts_sub(env) + + def addCasts_sub(self, env): pass + + def addParens(self): + for param in self.params: + param.addParens() + self.params = list(self.params) # Copy before editing, just to be extra safe + self.addParens_sub() + + def addParens_sub(self): pass + + def isLocalAssign(self): return isinstance(self, Assignment) and isinstance(self.params[0], Local) + + def __repr__(self): # pragma: no cover + return type(self).__name__.rpartition('.')[-1] + ' ' + visitor.DefaultVisitor().visit(self) + __str__ = __repr__ + +class ArrayAccess(JavaExpression): + def __init__(self, *params): + if params[0].dtype == objtypes.NullTT: + # Unfortunately, Java doesn't really support array access on null constants + #So we'll just cast it to Object[] as a hack + param = makeCastExpr(objtypes.withDimInc(objtypes.ObjectTT, 1), params[0]) + params = param, params[1] + + self.params = list(params) + self.fmt = '{}[{}]' + + @property + def dtype(self): return objtypes.withDimInc(self.params[0].dtype, -1) + + def addParens_sub(self): + p0 = self.params[0] + if p0.precedence > 0 or isinstance(p0, ArrayCreation): + self.params[0] = Parenthesis(p0) + +class ArrayCreation(JavaExpression): + def __init__(self, tt, *sizeargs): + self.dim = objtypes.dim(tt) + self.params = [TypeName(objtypes.withNoDim(tt))] + list(sizeargs) + self.dtype = tt + assert self.dim >= len(sizeargs) > 0 + self.fmt = 'new {}' + '[{}]'*len(sizeargs) + '[]'*(self.dim-len(sizeargs)) + + def tree(self, printer, tree): return [self.__class__.__name__, map(tree, self.params), self.dim] + +class Assignment(JavaExpression): + precedence = 21 + def __init__(self, *params): + self.params = list(params) + self.fmt = '{} = {}' + + @property + def dtype(self): return self.params[0].dtype + + def addCasts_sub(self, env): + left, right = self.params + if not isJavaAssignable(env, right.dtype, left.dtype): + expr = makeCastExpr(left.dtype, right, fixEnv=env) + self.params = [left, expr] + + def tree(self, printer, tree): return [self.__class__.__name__, map(tree, self.params), ''] + +_binary_ptable = ['* / %', '+ -', '<< >> >>>', + '< > <= >= instanceof', '== !=', + '&', '^', '|', '&&', '||'] + +binary_precedences = {} +for _ops, _val in zip(_binary_ptable, range(10,20)): + for _op in _ops.split(): + binary_precedences[_op] = _val + +class BinaryInfix(JavaExpression): + def __init__(self, opstr, params, dtype=None): + assert len(params) == 2 + self.params = params + self.opstr = opstr + self.fmt = '{{}} {} {{}}'.format(opstr) + self._dtype = dtype + self.precedence = binary_precedences[opstr] + + @property + def dtype(self): return self.params[0].dtype if self._dtype is None else self._dtype + + def addParens_sub(self): + myprec = self.precedence + associative = myprec >= 15 # for now we treat +, *, etc as nonassociative due to floats + + for i, p in enumerate(self.params): + if p.precedence > myprec: + self.params[i] = Parenthesis(p) + elif p.precedence == myprec and i > 0 and not associative: + self.params[i] = Parenthesis(p) + + def tree(self, printer, tree): return [self.__class__.__name__, map(tree, self.params), self.opstr] + +class Cast(JavaExpression): + precedence = 5 + def __init__(self, *params): + self.dtype = params[0].tt + self.params = list(params) + self.fmt = '({}){}' + + def fix(self, env): + tt, expr = self.dtype, self.params[1] + # "Impossible" casts are a compile error in Java. + # This can be fixed with an intermediate cast to Object + if isReferenceType(tt): + if not isJavaAssignable(env, tt, expr.dtype): + if not isJavaAssignable(env, expr.dtype, tt): + expr = makeCastExpr(objtypes.ObjectTT, expr) + self.params = [self.params[0], expr] + return self + + def addCasts_sub(self, env): self.fix(env) + def addParens_sub(self): + p1 = self.params[1] + if p1.precedence > 5 or (isinstance(p1, UnaryPrefix) and p1.opstr[0] in '-+'): + self.params[1] = Parenthesis(p1) + +class ClassInstanceCreation(JavaExpression): + def __init__(self, typename, tts, arguments): + self.typename, self.tts, self.params = typename, tts, arguments + self.dtype = typename.tt + + def print_(self, printer, print_): + return 'new {}({})'.format(print_(self.typename), ', '.join(print_(x) for x in self.params)) + + def tree(self, printer, tree): + return [self.__class__.__name__, map(tree, self.params), tree(self.typename)] + + def addCasts_sub(self, env): + newparams = [] + for tt, expr in zip(self.tts, self.params): + if expr.dtype != tt and (ALWAYS_CAST_PARAMS or not isJavaAssignable(env, expr.dtype, tt)): + expr = makeCastExpr(tt, expr, fixEnv=env) + newparams.append(expr) + self.params = newparams + +class FieldAccess(JavaExpression): + def __init__(self, primary, name, dtype, op=None, printLeft=True): + self.dtype = dtype + self.params = [primary] + self.op, self.name = op, name + self.printLeft = printLeft + # self.params, self.name = [primary], escapeString(name) + # self.fmt = ('{}.' if printLeft else '') + self.name + + def print_(self, printer, print_): + if self.op is None: + name = self.name + assert name in ('length','class') + else: + cls, name, desc = self.op.target, self.op.name, self.op.desc + name = escapeString(printer.fieldName(cls, name, desc)) + pre = print_(self.params[0])+'.' if self.printLeft else '' + return pre+name + + def tree(self, printer, tree): + if self.op is None: + trip = None, self.name, None + else: + trip = self.op.target, self.op.name, self.op.desc + return [self.__class__.__name__, map(tree, self.params), trip, self.printLeft] + + def addParens_sub(self): + p0 = self.params[0] + if p0.precedence > 0: + self.params[0] = Parenthesis(p0) + +def printFloat(x, isSingle): + assert x >= 0.0 and not math.isinf(x) + suffix = 'f' if isSingle else '' + if isSingle and x > 0.0: + # Try to find more compract representation for floats, since repr treats everything as doubles + m, e = math.frexp(x) + half_ulp2 = math.ldexp(1.0, max(e - 25, -150)) # don't bother doubling when near the upper range of a given e value + half_ulp1 = (half_ulp2/2) if m == 0.5 and e >= -125 else half_ulp2 + lbound, ubound = x-half_ulp1, x+half_ulp2 + assert lbound < x < ubound + s = '{:g}'.format(x).replace('+','') + if lbound < float(s) < ubound: # strict ineq to avoid potential double rounding issues + return s + suffix + return repr(x) + suffix + +class Literal(JavaExpression): + def __init__(self, vartype, val): + self.dtype = vartype + self.val = val + if self.dtype == objtypes.ClassTT: + self.params = [TypeName(val)] + + def getStr(self): + if self.dtype == objtypes.StringTT: + return '"' + escapeString(self.val) + '"' + elif self.dtype == objtypes.IntTT: + return str(self.val) + elif self.dtype == objtypes.LongTT: + return str(self.val) + 'L' + elif self.dtype == objtypes.FloatTT or self.dtype == objtypes.DoubleTT: + return printFloat(self.val, self.dtype == objtypes.FloatTT) + elif self.dtype == objtypes.NullTT: + return 'null' + elif self.dtype == objtypes.BoolTT: + return 'true' if self.val else 'false' + + def fixLiterals(self): + # From the point of view of the Java Language, there is no such thing as a negative literal. + # This replaces invalid literal values with unary minus (and division for non-finite floats) + if self.dtype == objtypes.IntTT or self.dtype == objtypes.LongTT: + if self.val < 0: + return UnaryPrefix('-', Literal(self.dtype, -self.val)) + elif self.dtype == objtypes.FloatTT or self.dtype == objtypes.DoubleTT: + x = self.val + zero = Literal.DZERO if self.dtype == objtypes.DoubleTT else Literal.FZERO + if math.isnan(x): + return BinaryInfix('/', [zero, zero]) + elif math.isinf(x): #+/- inf + numerator = Literal(self.dtype, math.copysign(1.0, x)).fixLiterals() + return BinaryInfix('/', [numerator, zero]) + # finite negative numbers + if math.copysign(1.0, x) == -1.0: + return UnaryPrefix('-', Literal(self.dtype, math.copysign(x, 1.0))) + + return self + + def print_(self, printer, print_): + if self.dtype == objtypes.ClassTT: + # for printing class literals + return '{}.class'.format(print_(self.params[0])) + return self.getStr() + + def tree(self, printer, tree): + result = tree(self.params[0]) if self.dtype == objtypes.ClassTT else self.getStr() + return [self.__class__.__name__, result, self.dtype] + + def _key(self): return self.dtype, self.val + def __eq__(self, other): return type(self) == type(other) and self._key() == other._key() + def __ne__(self, other): return type(self) != type(other) or self._key() != other._key() + def __hash__(self): return hash(self._key()) +Literal.FALSE = Literal(objtypes.BoolTT, 0) +Literal.TRUE = Literal(objtypes.BoolTT, 1) +Literal.N_ONE = Literal(objtypes.IntTT, -1) +Literal.ZERO = Literal(objtypes.IntTT, 0) +Literal.ONE = Literal(objtypes.IntTT, 1) + +Literal.LZERO = Literal(objtypes.LongTT, 0) +Literal.FZERO = Literal(objtypes.FloatTT, 0.0) +Literal.DZERO = Literal(objtypes.DoubleTT, 0.0) +Literal.NULL = Literal(objtypes.NullTT, None) + +_init_d = {objtypes.BoolTT: Literal.FALSE, + objtypes.IntTT: Literal.ZERO, + objtypes.LongTT: Literal.LZERO, + objtypes.FloatTT: Literal.FZERO, + objtypes.DoubleTT: Literal.DZERO} +def dummyLiteral(tt): + return _init_d.get(tt, Literal.NULL) + +class Local(JavaExpression): + def __init__(self, vartype, namefunc): + self.dtype = vartype + self.name = None + self.func = namefunc + + def print_(self, printer, print_): + if self.name is None: + self.name = self.func(self) + return self.name + + def tree(self, printer, tree): return [self.__class__.__name__, self.print_(None, None)] + +class MethodInvocation(JavaExpression): + def __init__(self, left, name, tts, arguments, op, dtype): + if left is None: + self.params = arguments + else: + self.params = [left] + arguments + self.hasLeft = (left is not None) + self.dtype = dtype + self.name = name + self.tts = tts + self.op = op # keep around for future reference and new merging + + def print_(self, printer, print_): + cls, name, desc = self.op.target, self.op.name, self.op.desc + if name != self.name: + assert name == '' + name = self.name + else: + name = escapeString(printer.methodName(cls, name, desc)) + + if self.hasLeft: + left, arguments = self.params[0], self.params[1:] + return '{}.{}({})'.format(print_(left), name, ', '.join(print_(x) for x in arguments)) + else: + arguments = self.params + return '{}({})'.format(name, ', '.join(print_(x) for x in arguments)) + + def tree(self, printer, tree): + trip = self.op.target, self.op.name, self.op.desc + return [self.__class__.__name__, map(tree, self.params), trip, self.name, self.hasLeft] + + def addCasts_sub(self, env): + newparams = [] + for tt, expr in zip(self.tts, self.params): + if expr.dtype != tt and (ALWAYS_CAST_PARAMS or not isJavaAssignable(env, expr.dtype, tt)): + expr = makeCastExpr(tt, expr, fixEnv=env) + newparams.append(expr) + self.params = newparams + + def addParens_sub(self): + if self.hasLeft: + p0 = self.params[0] + if p0.precedence > 0: + self.params[0] = Parenthesis(p0) + +class Parenthesis(JavaExpression): + def __init__(self, param): + self.params = [param] + self.fmt = '({})' + + @property + def dtype(self): return self.params[0].dtype + +class Ternary(JavaExpression): + precedence = 20 + def __init__(self, *params): + self.params = list(params) + self.fmt = '{} ? {} : {}' + + @property + def dtype(self): return self.params[1].dtype + + def addParens_sub(self): + # Add unecessary parenthesis to complex conditions for readability + if self.params[0].precedence >= 20 or self.params[0].complexity() > 0: + self.params[0] = Parenthesis(self.params[0]) + if self.params[2].precedence > 20: + self.params[2] = Parenthesis(self.params[2]) + +class TypeName(JavaExpression): + def __init__(self, tt): + self.dtype = None + self.tt = tt + + def print_(self, printer, print_): + name = objtypes.className(self.tt) + if name is not None: + name = printer.className(name) + name = escapeString(name.replace('/','.')) + if name.rpartition('.')[0] == 'java.lang': + name = name.rpartition('.')[2] + else: + name = objtypes.primName(self.tt) + s = name + '[]'*objtypes.dim(self.tt) + return s + + def tree(self, printer, tree): return [self.__class__.__name__, self.tt] + + def complexity(self): return -1 # exprs which have this as a param won't be bumped up to 1 uncessarily + +class CatchTypeNames(JavaExpression): # Used for caught exceptions, which can have multiple types specified + def __init__(self, env, tts): + assert(tts and not any(objtypes.dim(tt) for tt in tts)) # at least one type, no array types + self.tnames = map(TypeName, tts) + self.dtype = objtypes.commonSupertype(env, tts) + + def print_(self, printer, print_): + return ' | '.join(print_(tn) for tn in self.tnames) + + def tree(self, printer, tree): return [self.__class__.__name__, map(tree, self.tnames)] + +class UnaryPrefix(JavaExpression): + precedence = 5 + def __init__(self, opstr, param, dtype=None): + self.params = [param] + self.opstr = opstr + self.fmt = opstr + '{}' + self._dtype = dtype + + @property + def dtype(self): return self.params[0].dtype if self._dtype is None else self._dtype + + def addParens_sub(self): + p0 = self.params[0] + if p0.precedence > 5 or (isinstance(p0, UnaryPrefix) and p0.opstr[0] == self.opstr[0]): + self.params[0] = Parenthesis(p0) + + def tree(self, printer, tree): return ['Unary', map(tree, self.params), self.opstr, False] + +class Dummy(JavaExpression): + def __init__(self, fmt, params, isNew=False, dtype=None): + self.params = params + self.fmt = fmt + self.isNew = isNew + self.dtype = dtype diff --git a/src/main/resources/Krakatau-master/Krakatau/java/ast2.py b/src/main/resources/Krakatau-master/Krakatau/java/ast2.py new file mode 100644 index 00000000..d71f9dec --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/ast2.py @@ -0,0 +1,138 @@ +from ..ssa import objtypes + +from . import ast +from .stringescape import escapeString as escape + +class Comments(object): + def __init__(self): + self.lines = [] + + def add(self, s): + self.lines.extend(s.strip('\n').split('\n')) + + def print_(self, printer, print_): + return ''.join(map('// {}\n'.format, self.lines)) + +class MethodDef(object): + def __init__(self, class_, flags, name, desc, retType, paramDecls, body): + self.flagstr = flags + ' ' if flags else '' + self.retType, self.paramDecls = retType, paramDecls + self.body = body + self.comments = Comments() + self.triple = class_.name, name, desc + self.throws = None + + if name == '': + self.isStaticInit, self.isConstructor = True, False + elif name == '': + self.isStaticInit, self.isConstructor = False, True + self.clsname = ast.TypeName(objtypes.TypeTT(class_.name, 0)) + else: + self.isStaticInit, self.isConstructor = False, False + + def print_(self, printer, print_): + header = print_(self.comments) + argstr = ', '.join(print_(decl) for decl in self.paramDecls) + if self.isStaticInit: + header += 'static' + elif self.isConstructor: + name = print_(self.clsname).rpartition('.')[-1] + header += '{}{}({})'.format(self.flagstr, name, argstr) + else: + name = printer.methodName(*self.triple) + header += '{}{} {}({})'.format(self.flagstr, print_(self.retType), escape(name), argstr) + + if self.throws is not None: + header += ' throws ' + print_(self.throws) + + if self.body is None: + if 'abstract' not in self.flagstr and 'native' not in self.flagstr: + # Create dummy body for decompiler error + return header + ' {/*error*/throw null;}\n' + return header + ';\n' + else: + return header + ' ' + print_(self.body) + + def tree(self, printer, tree): + return { + 'triple': self.triple, + 'flags': self.flagstr.split(), + 'ret': tree(self.retType), + 'params': map(tree, self.paramDecls), + 'comments': self.comments.lines, + 'body': tree(self.body), + 'throws': tree(self.throws), + } + +class FieldDef(object): + def __init__(self, flags, type_, class_, name, desc, expr=None): + self.flagstr = flags + ' ' if flags else '' + self.type_ = type_ + self.name = name + self.expr = None if expr is None else ast.makeCastExpr(type_.tt, expr) + self.triple = class_.name, name, desc + + def print_(self, printer, print_): + name = escape(printer.fieldName(*self.triple)) + if self.expr is not None: + return '{}{} {} = {};'.format(self.flagstr, print_(self.type_), name, print_(self.expr)) + return '{}{} {};'.format(self.flagstr, print_(self.type_), name) + + def tree(self, printer, tree): + return { + 'triple': self.triple, + 'type': tree(self.type_), + 'flags': self.flagstr.split(), + 'expr': tree(self.expr), + } + +class ClassDef(object): + def __init__(self, flags, isInterface, name, superc, interfaces, fields, methods): + self.flagstr = flags + ' ' if flags else '' + self.isInterface = isInterface + self.name = ast.TypeName(objtypes.TypeTT(name,0)) + self.super = ast.TypeName(objtypes.TypeTT(superc,0)) if superc is not None else None + self.interfaces = [ast.TypeName(objtypes.TypeTT(iname,0)) for iname in interfaces] + self.fields = fields + self.methods = methods + if superc == 'java/lang/Object': + self.super = None + + def print_(self, printer, print_): + contents = '' + if self.fields: + contents = '\n'.join(print_(x) for x in self.fields) + if self.methods: + if contents: + contents += '\n\n' # extra line to divide fields and methods + contents += '\n\n'.join(print_(x) for x in self.methods) + + indented = [' '+line for line in contents.splitlines()] + name = print_(self.name).rpartition('.')[-1] + defname = 'interface' if self.isInterface else 'class' + header = '{}{} {}'.format(self.flagstr, defname, name) + + if self.super: + header += ' extends ' + print_(self.super) + if self.interfaces: + if self.isInterface: + assert self.super is None + header += ' extends ' + ', '.join(print_(x) for x in self.interfaces) + else: + header += ' implements ' + ', '.join(print_(x) for x in self.interfaces) + + lines = [header + ' {'] + indented + ['}'] + return '\n'.join(lines) + '\n' + + # Experimental - don't use! + def tree(self, printer, tree): + return { + 'rawname': objtypes.className(self.name.tt), + 'name': tree(self.name), + 'super': tree(self.super), + 'flags': self.flagstr.split(), + 'isInterface': self.isInterface, + 'interfaces': map(tree, self.interfaces), + 'fields': map(tree, self.fields), + 'methods': map(tree, self.methods), + } diff --git a/src/main/resources/Krakatau-master/Krakatau/java/astgen.py b/src/main/resources/Krakatau-master/Krakatau/java/astgen.py new file mode 100644 index 00000000..484f543e --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/astgen.py @@ -0,0 +1,322 @@ +from .. import opnames +from ..namegen import LabelGen +from ..ssa import objtypes, ssa_jumps, ssa_ops, ssa_types +from ..verifier.descriptors import parseFieldDescriptor, parseMethodDescriptor + +from . import ast +from .setree import SEBlockItem, SEIf, SEScope, SESwitch, SETry, SEWhile + +# prefixes for name generation +_prefix_map = {objtypes.IntTT:'i', objtypes.LongTT:'j', + objtypes.FloatTT:'f', objtypes.DoubleTT:'d', + objtypes.BoolTT:'b', objtypes.StringTT:'s'} + +_ssaToTT = {ssa_types.SSA_INT:objtypes.IntTT, ssa_types.SSA_LONG:objtypes.LongTT, + ssa_types.SSA_FLOAT:objtypes.FloatTT, ssa_types.SSA_DOUBLE:objtypes.DoubleTT} +class VarInfo(object): + def __init__(self, method, blocks, namegen): + self.env = method.class_.env + self.labelgen = LabelGen().next + + returnTypes = parseMethodDescriptor(method.descriptor, unsynthesize=False)[-1] + self.return_tt = objtypes.verifierToSynthetic(returnTypes[0]) if returnTypes else None + self.clsname = method.class_.name + self._namegen = namegen + + self._uninit_vars = {} + self._vars = {} + self._tts = {} + for block in blocks: + for var, uc in block.unaryConstraints.items(): + if var.type == ssa_types.SSA_OBJECT: + tt = uc.getSingleTType() # temp hack + if uc.types.isBoolOrByteArray(): + tt = objtypes.TypeTT(objtypes.BExpr, objtypes.dim(tt)+1) + # assert (objtypes.BoolTT[0], tt[1]) in uc.types.exact + else: + tt = _ssaToTT[var.type] + self._tts[var] = tt + + def _nameCallback(self, expr): + prefix = _prefix_map.get(expr.dtype, 'a') + return self._namegen.getPrefix(prefix) + + def _newVar(self, var, num, isCast): + tt = self._tts[var] + if var.const is not None and not isCast: + return ast.Literal(tt, var.const) + + if var.name: + # important to not add num when it is 0, since we currently + # use var names to force 'this' + temp = '{}_{}'.format(var.name, num) if num else var.name + if isCast: + temp += 'c' + namefunc = lambda expr:temp + else: + namefunc = self._nameCallback + + result = ast.Local(tt, namefunc) + # merge all variables of uninitialized type to simplify fixObjectCreations in javamethod.py + if var.uninit_orig_num is not None and not isCast: + result = self._uninit_vars.setdefault(var.uninit_orig_num, result) + return result + + def var(self, node, var, isCast=False): + key = node, var, isCast + try: + return self._vars[key] + except KeyError: + new = self._newVar(key[1], key[0].num, key[2]) + self._vars[key] = new + return new + + def customVar(self, tt, prefix): # for use with ignored exceptions + namefunc = lambda expr: self._namegen.getPrefix(prefix) + return ast.Local(tt, namefunc) + +######################################################################################### +_math_types = (ssa_ops.IAdd, ssa_ops.IDiv, ssa_ops.IMul, ssa_ops.IRem, ssa_ops.ISub) +_math_types += (ssa_ops.IAnd, ssa_ops.IOr, ssa_ops.IShl, ssa_ops.IShr, ssa_ops.IUshr, ssa_ops.IXor) +_math_types += (ssa_ops.FAdd, ssa_ops.FDiv, ssa_ops.FMul, ssa_ops.FRem, ssa_ops.FSub) +_math_symbols = dict(zip(_math_types, '+ / * % - & | << >> >>> ^ + / * % -'.split())) +def _convertJExpr(op, getExpr, clsname): + params = [getExpr(var) for var in op.params] + assert None not in params + expr = None + + # Have to do this one seperately since it isn't an expression statement + if isinstance(op, ssa_ops.Throw): + return ast.ThrowStatement(params[0]) + + if isinstance(op, _math_types): + opdict = _math_symbols + expr = ast.BinaryInfix(opdict[type(op)], params) + elif isinstance(op, ssa_ops.ArrLength): + expr = ast.FieldAccess(params[0], 'length', objtypes.IntTT) + elif isinstance(op, ssa_ops.ArrLoad): + expr = ast.ArrayAccess(*params) + elif isinstance(op, ssa_ops.ArrStore): + expr = ast.ArrayAccess(params[0], params[1]) + expr = ast.Assignment(expr, params[2]) + elif isinstance(op, ssa_ops.CheckCast): + expr = ast.Cast(ast.TypeName(op.target_tt), params[0]) + elif isinstance(op, ssa_ops.Convert): + expr = ast.makeCastExpr(_ssaToTT[op.target], params[0]) + elif isinstance(op, (ssa_ops.FCmp, ssa_ops.ICmp)): + boolt = objtypes.BoolTT + cn1, c0, c1 = ast.Literal.N_ONE, ast.Literal.ZERO, ast.Literal.ONE + + ascend = isinstance(op, ssa_ops.ICmp) or op.NaN_val == 1 + if ascend: + expr = ast.Ternary(ast.BinaryInfix('<',params,boolt), cn1, ast.Ternary(ast.BinaryInfix('==',params,boolt), c0, c1)) + else: + assert op.NaN_val == -1 + expr = ast.Ternary(ast.BinaryInfix('>',params,boolt), c1, ast.Ternary(ast.BinaryInfix('==',params,boolt), c0, cn1)) + elif isinstance(op, ssa_ops.FieldAccess): + dtype = objtypes.verifierToSynthetic(parseFieldDescriptor(op.desc, unsynthesize=False)[0]) + + if op.instruction[0] in (opnames.GETSTATIC, opnames.PUTSTATIC): + printLeft = (op.target != clsname) # Don't print classname if it is a static field in current class + tt = objtypes.TypeTT(op.target, 0) # Doesn't handle arrays, but they don't have any fields anyway + expr = ast.FieldAccess(ast.TypeName(tt), op.name, dtype, op, printLeft=printLeft) + else: + expr = ast.FieldAccess(params[0], op.name, dtype, op) + + if op.instruction[0] in (opnames.PUTFIELD, opnames.PUTSTATIC): + expr = ast.Assignment(expr, params[-1]) + + elif isinstance(op, ssa_ops.FNeg): + expr = ast.UnaryPrefix('-', params[0]) + elif isinstance(op, ssa_ops.InstanceOf): + args = [params[0], ast.TypeName(op.target_tt)] + expr = ast.BinaryInfix('instanceof', args, dtype=objtypes.BoolTT) + elif isinstance(op, ssa_ops.Invoke): + vtypes, rettypes = parseMethodDescriptor(op.desc, unsynthesize=False) + tt_types = objtypes.verifierToSynthetic_seq(vtypes) + ret_type = objtypes.verifierToSynthetic(rettypes[0]) if rettypes else None + target_tt = op.target_tt + + if objtypes.dim(target_tt) and op.name == "clone": # In Java, T[].clone returns T[] rather than Object + ret_type = target_tt + + if op.instruction[0] == opnames.INVOKEINIT and op.isThisCtor: + name = 'this' if (op.target == clsname) else 'super' + expr = ast.MethodInvocation(None, name, tt_types, params[1:], op, ret_type) + elif op.instruction[0] == opnames.INVOKESTATIC: # TODO - fix this for special super calls + expr = ast.MethodInvocation(ast.TypeName(target_tt), op.name, [None]+tt_types, params, op, ret_type) + else: + expr = ast.MethodInvocation(params[0], op.name, [target_tt]+tt_types, params[1:], op, ret_type) + elif isinstance(op, ssa_ops.InvokeDynamic): + vtypes, rettypes = parseMethodDescriptor(op.desc, unsynthesize=False) + ret_type = objtypes.verifierToSynthetic(rettypes[0]) if rettypes else None + fmt = '/*invokedynamic*/' + if ret_type is not None: + fmt += '{{{}}}'.format(len(params)) + params.append(ast.dummyLiteral(ret_type)) + expr = ast.Dummy(fmt, params, dtype=ret_type) + elif isinstance(op, ssa_ops.Monitor): + fmt = '/*monexit({})*/' if op.exit else '/*monenter({})*/' + expr = ast.Dummy(fmt, params) + elif isinstance(op, ssa_ops.MultiNewArray): + expr = ast.ArrayCreation(op.tt, *params) + elif isinstance(op, ssa_ops.New): + expr = ast.Dummy('/* {}*/', [ast.TypeName(op.tt)], isNew=True) + elif isinstance(op, ssa_ops.NewArray): + expr = ast.ArrayCreation(op.tt, params[0]) + elif isinstance(op, ssa_ops.Truncate): + tt = {(True,16): objtypes.ShortTT, (False,16): objtypes.CharTT, (True,8): objtypes.ByteTT}[op.signed, op.width] + expr = ast.Cast(ast.TypeName(tt), params[0]) + if op.rval is not None and expr: + expr = ast.Assignment(getExpr(op.rval), expr) + + if expr is None: # Temporary hack + if isinstance(op, (ssa_ops.TryReturn, ssa_ops.ExceptionPhi, ssa_ops.MagicThrow)): + return None # Don't print out anything + return ast.ExpressionStatement(expr) + +######################################################################################### +def _createASTBlock(info, endk, node): + getExpr = lambda var: info.var(node, var) + op2expr = lambda op: _convertJExpr(op, getExpr, info.clsname) + + block = node.block + if block is not None: + split_ind = 0 + if isinstance(block.jump, ssa_jumps.OnException): + # find index of first throwing instruction, so we can insert eassigns before it later + assert isinstance(block.lines[-1], ssa_ops.ExceptionPhi) + split_ind = block.lines.index(block.lines[-1].params[0].origin) + + lines_before = filter(None, map(op2expr, block.lines[:split_ind])) + lines_after = filter(None, map(op2expr, block.lines[split_ind:])) + else: + lines_before, lines_after = [], [] + + # Kind of hackish: If the block ends in a cast and hence it is not known to always + # succeed, assign the results of the cast rather than passing through the variable + # unchanged. The cast will actually be second to last in block.lines due to the ephi + outreplace = {} + if block and len(block.lines) >= 2: + temp_op = block.lines[-2] + if lines_after and isinstance(temp_op, ssa_ops.CheckCast): + assert isinstance(lines_after[-1].expr, ast.Cast) + var = temp_op.params[0] + cexpr = lines_after[-1].expr + lhs = info.var(node, var, True) + assert lhs != cexpr.params[1] + lines_after[-1].expr = ast.Assignment(lhs, cexpr) + nvar = outreplace[var] = lines_after[-1].expr.params[0] + nvar.dtype = cexpr.dtype + + eassigns = [] + nassigns = [] + for n2 in node.successors: + assert (n2 in node.outvars) != (n2 in node.eassigns) + if n2 in node.eassigns: + for outv, inv in zip(node.eassigns[n2], n2.invars): + if outv is None: # this is how we mark the thrown exception, which + # obviously doesn't get an explicit assignment statement + continue + expr = ast.Assignment(info.var(n2, inv), info.var(node, outv)) + if expr.params[0] != expr.params[1]: + eassigns.append(ast.ExpressionStatement(expr)) + else: + for outv, inv in zip(node.outvars[n2], n2.invars): + right = outreplace.get(outv, info.var(node, outv)) + expr = ast.Assignment(info.var(n2, inv), right) + if expr.params[0] != expr.params[1]: + nassigns.append(ast.ExpressionStatement(expr)) + + # Need to put exception assignments before first throwing statement + # While normal assignments must come last as they may depend on it + statements = lines_before + eassigns + lines_after + nassigns + + norm_successors = node.normalSuccessors() + jump = None if block is None else block.jump + if isinstance(jump, (ssa_jumps.Rethrow, ssa_jumps.Return)): + assert not norm_successors + assert not node.eassigns and not node.outvars + if isinstance(jump, ssa_jumps.Rethrow): + param = info.var(node, jump.params[-1]) + statements.append(ast.ThrowStatement(param)) + else: + if len(jump.params) > 0: + param = info.var(node, jump.params[0]) + statements.append(ast.ReturnStatement(param, info.return_tt)) + else: + statements.append(ast.ReturnStatement()) + breakKey, jumpKey = endk, None + elif len(norm_successors) == 0: + assert isinstance(jump, ssa_jumps.OnException) + breakKey, jumpKey = endk, None + elif len(norm_successors) == 1: # normal successors + breakKey, jumpKey = endk, norm_successors[0]._key + else: # case of if and switch jumps handled in parent scope + assert len(norm_successors) > 1 + breakKey, jumpKey = endk, endk + + new = ast.StatementBlock(info.labelgen, node._key, breakKey, statements, jumpKey) + assert None not in statements + return new + +_cmp_strs = dict(zip(('eq','ne','lt','ge','gt','le'), "== != < >= > <=".split())) +def _createASTSub(info, current, ftitem, forceUnlabled=False): + begink = current.entryBlock._key + endk = ftitem.entryBlock._key if ftitem is not None else None + + if isinstance(current, SEBlockItem): + return _createASTBlock(info, endk, current.node) + elif isinstance(current, SEScope): + ftitems = current.items[1:] + [ftitem] + parts = [_createASTSub(info, item, newft) for item, newft in zip(current.items, ftitems)] + return ast.StatementBlock(info.labelgen, begink, endk, parts, endk, labelable=(not forceUnlabled)) + elif isinstance(current, SEWhile): + parts = [_createASTSub(info, scope, current, True) for scope in current.getScopes()] + return ast.WhileStatement(info.labelgen, begink, endk, tuple(parts)) + elif isinstance(current, SETry): + assert len(current.getScopes()) == 2 + parts = [_createASTSub(info, scope, ftitem, True) for scope in current.getScopes()] + catchnode = current.getScopes()[-1].entryBlock + declt = ast.CatchTypeNames(info.env, current.toptts) + + if current.catchvar is None: # exception is ignored and hence not referred to by the graph, so we need to make our own + catchvar = info.customVar(declt.dtype, 'ignoredException') + else: + catchvar = info.var(catchnode, current.catchvar) + decl = ast.VariableDeclarator(declt, catchvar) + pairs = [(decl, parts[1])] + return ast.TryStatement(info.labelgen, begink, endk, parts[0], pairs) + + # Create a fake key to represent the beginning of the conditional statement itself + # doesn't matter what it is as long as it's unique + midk = begink + (-1,) + node = current.head.node + jump = node.block.jump + + if isinstance(current, SEIf): + parts = [_createASTSub(info, scope, ftitem, True) for scope in current.getScopes()] + cmp_str = _cmp_strs[jump.cmp] + exprs = [info.var(node, var) for var in jump.params] + ifexpr = ast.BinaryInfix(cmp_str, exprs, objtypes.BoolTT) + new = ast.IfStatement(info.labelgen, midk, endk, ifexpr, tuple(parts)) + + elif isinstance(current, SESwitch): + ftitems = current.ordered[1:] + [ftitem] + parts = [_createASTSub(info, item, newft, True) for item, newft in zip(current.ordered, ftitems)] + for part in parts: + part.breakKey = endk # createSub will assume break should be ft, which isn't the case with switch statements + + expr = info.var(node, jump.params[0]) + pairs = zip(current.ordered_keysets, parts) + new = ast.SwitchStatement(info.labelgen, midk, endk, expr, pairs) + + # bundle head and if together so we can return as single statement + headscope = _createASTBlock(info, midk, node) + assert headscope.jumpKey is midk + return ast.StatementBlock(info.labelgen, begink, endk, [headscope, new], endk) + +def createAST(method, ssagraph, seroot, namegen): + info = VarInfo(method, ssagraph.blocks, namegen) + astroot = _createASTSub(info, seroot, None) + return astroot, info diff --git a/src/main/resources/Krakatau-master/Krakatau/java/boolize.py b/src/main/resources/Krakatau-master/Krakatau/java/boolize.py new file mode 100644 index 00000000..965481e9 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/boolize.py @@ -0,0 +1,179 @@ +import collections + +from .. import graph_util +from ..ssa import objtypes +from ..ssa.objtypes import BExpr, BoolTT, ByteTT, CharTT, IntTT, ShortTT + +from . import ast + +# Class union-find data structure except that we don't bother with weighting trees and singletons are implicit +# Also, booleans are forced to be seperate roots +FORCED_ROOTS = True, False +class UnionFind(object): + def __init__(self): + self.d = {} + + def find(self, x): + if x not in self.d: + return x + path = [x] + while path[-1] in self.d: + path.append(self.d[path[-1]]) + root = path.pop() + for y in path: + self.d[y] = root + return root + + def union(self, x, x2): + if x is None or x2 is None: + return + root1, root2 = self.find(x), self.find(x2) + if root2 in FORCED_ROOTS: + root1, root2 = root2, root1 + if root1 != root2 and root2 not in FORCED_ROOTS: + self.d[root2] = root1 + +############################################################## +def visitStatementTree(scope, callback, catchcb=None): + for item in scope.statements: + for sub in item.getScopes(): + visitStatementTree(sub, callback, catchcb) + if item.expr is not None: + callback(item, item.expr) + if catchcb is not None and isinstance(item, ast.TryStatement): + for pair in item.pairs: + catchcb(pair[0]) + +int_tags = frozenset(map(objtypes.baset, [IntTT, ShortTT, CharTT, ByteTT, BoolTT])) +array_tags = frozenset(map(objtypes.baset, [ByteTT, BoolTT]) + [objtypes.BExpr]) + +# Fix int/bool and byte[]/bool[] vars +def boolizeVars(root, arg_vars): + varlist = [] + sets = UnionFind() + + def visitExpr(expr, forceExact=False): + # see if we have to merge + if isinstance(expr, ast.Assignment) or isinstance(expr, ast.BinaryInfix) and expr.opstr in ('==','!=','&','|','^'): + subs = [visitExpr(param) for param in expr.params] + sets.union(*subs) # these operators can work on either type but need the same type on each side + elif isinstance(expr, ast.ArrayAccess): + sets.union(False, visitExpr(expr.params[1])) # array index is int only + elif isinstance(expr, ast.BinaryInfix) and expr.opstr in ('* / % + - << >> >>>'): + sets.union(False, visitExpr(expr.params[0])) # these operators are int only + sets.union(False, visitExpr(expr.params[1])) + + if isinstance(expr, ast.Local): + tag, dim = objtypes.baset(expr.dtype), objtypes.dim(expr.dtype) + if (dim == 0 and tag in int_tags) or (dim > 0 and tag in array_tags): + # the only "unknown" vars are bexpr[] and ints. All else have fixed types + if forceExact or (tag != BExpr and tag != objtypes.baset(IntTT)): + sets.union(tag == objtypes.baset(BoolTT), expr) + varlist.append(expr) + return sets.find(expr) + elif isinstance(expr, ast.Literal): + if expr.dtype == IntTT and expr.val not in (0,1): + return False + return None # if val is 0 or 1, or the literal is a null, it is freely convertable + elif isinstance(expr, ast.Assignment) or (isinstance(expr, ast.BinaryInfix) and expr.opstr in ('&','|','^')): + return subs[0] + elif isinstance(expr, (ast.ArrayAccess, ast.Parenthesis, ast.UnaryPrefix)): + return visitExpr(expr.params[0]) + elif expr.dtype is not None and objtypes.baset(expr.dtype) != BExpr: + return expr.dtype[0] == objtypes.baset(BoolTT) + return None + + def visitStatement(item, expr): + root = visitExpr(expr) + if isinstance(item, ast.ReturnStatement): + forced_val = (objtypes.baset(item.tt) == objtypes.baset(BoolTT)) + sets.union(forced_val, root) + elif isinstance(item, ast.SwitchStatement): + sets.union(False, root) # Switch must take an int, not a bool + + for expr in arg_vars: + visitExpr(expr, forceExact=True) + visitStatementTree(root, callback=visitStatement) + + # Fix the propagated types + for var in set(varlist): + tag, dim = objtypes.baset(var.dtype), objtypes.dim(var.dtype) + assert tag in int_tags or (dim>0 and tag == BExpr) + # make everything bool which is not forced to int + if sets.find(var) != False: + var.dtype = objtypes.withDimInc(BoolTT, dim) + elif dim > 0: + var.dtype = objtypes.withDimInc(ByteTT, dim) + + # Fix everything else back up + def fixExpr(item, expr): + for param in expr.params: + fixExpr(None, param) + + if isinstance(expr, ast.Assignment): + left, right = expr.params + if objtypes.baset(left.dtype) in int_tags and objtypes.dim(left.dtype) == 0: + if not ast.isPrimativeAssignable(right.dtype, left.dtype): + expr.params = [left, ast.makeCastExpr(left.dtype, right)] + elif isinstance(expr, ast.BinaryInfix): + a, b = expr.params + # shouldn't need to do anything here for arrays + if expr.opstr in '== != & | ^' and a.dtype == BoolTT or b.dtype == BoolTT: + expr.params = [ast.makeCastExpr(BoolTT, v) for v in expr.params] + visitStatementTree(root, callback=fixExpr) + +# Fix vars of interface/object type +# TODO: do this properly +def interfaceVars(env, root, arg_vars): + varlist = [] + consts = {} + assigns = collections.defaultdict(list) + + def isInterfaceVar(expr): + if not isinstance(expr, ast.Local) or not objtypes.isBaseTClass(expr.dtype): + return False + if objtypes.className(expr.dtype) == objtypes.className(objtypes.ObjectTT): + return True + return env.isInterface(objtypes.className(expr.dtype)) + + def updateConst(var, tt): + varlist.append(var) + if var not in consts: + consts[var] = tt + else: + consts[var] = objtypes.commonSupertype(env, [consts[var], tt]) + + def visitStatement(item, expr): + if isinstance(expr, ast.Assignment) and objtypes.isBaseTClass(expr.dtype): + left, right = expr.params + if isInterfaceVar(left): + if isInterfaceVar(right): + assigns[left].append(right) + varlist.append(right) + varlist.append(left) + else: + updateConst(left, right.dtype) + + def visitCatchDecl(decl): + updateConst(decl.local, decl.typename.dtype) + + for expr in arg_vars: + if objtypes.isBaseTClass(expr.dtype): + updateConst(expr, expr.dtype) + visitStatementTree(root, callback=visitStatement, catchcb=visitCatchDecl) + + # Now calculate actual types and fix + newtypes = {} + + # visit variables in topological order. Doesn't handle case of loops, but this is a temporary hack anyway + order = graph_util.topologicalSort(varlist, lambda v:assigns[v]) + for var in order: + assert var not in newtypes + + tts = [newtypes.get(right, objtypes.ObjectTT) for right in assigns[var]] + if var in consts: + tts.append(consts[var]) + newtypes[var] = newtype = objtypes.commonSupertype(env, tts) + if newtype != objtypes.ObjectTT and newtype != var.dtype and newtype != objtypes.NullTT: + # assert objtypes.baset(var.dtype) == objtypes.baset(objtypes.ObjectTT) + var.dtype = newtype diff --git a/src/main/resources/Krakatau-master/Krakatau/java/cfg.py b/src/main/resources/Krakatau-master/Krakatau/java/cfg.py new file mode 100644 index 00000000..b7e47d2f --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/cfg.py @@ -0,0 +1,227 @@ +from collections import defaultdict as ddict + +from .. import graph_util +from ..ssa import objtypes + +from . import ast + +def flattenDict(replace): + for k in list(replace): + while replace[k] in replace: + replace[k] = replace[replace[k]] + +# The basic block in our temporary CFG +# instead of code, it merely contains a list of defs and uses +# This is an extended basic block, i.e. it only terminates in a normal jump(s). +# exceptions can be thrown from various points within the block +class DUBlock(object): + def __init__(self, key): + self.key = key + self.caught_excepts = () + self.lines = [] # 3 types of lines: ('use', var), ('def', (var, var2_opt)), or ('canthrow', None) + self.e_successors = [] + self.n_successors = [] + self.vars = None # vars used or defined within the block. Does NOT include caught exceptions + + def canThrow(self): return ('canthrow', None) in self.lines + + def recalcVars(self): + self.vars = set() + for line_t, data in self.lines: + if line_t == 'use': + self.vars.add(data) + elif line_t == 'def': + self.vars.add(data[0]) + if data[1] is not None: + self.vars.add(data[1]) + + def replace(self, replace): + if not self.vars.isdisjoint(replace): + newlines = [] + for line_t, data in self.lines: + if line_t == 'use': + data = replace.get(data, data) + elif line_t == 'def': + data = replace.get(data[0], data[0]), replace.get(data[1], data[1]) + newlines.append((line_t, data)) + self.lines = newlines + for k, v in replace.items(): + if k in self.vars: + self.vars.remove(k) + self.vars.add(v) + + def simplify(self): + # try to prune redundant instructions + last = None + newlines = [] + for line in self.lines: + if line[0] == 'def': + if line[1][0] == line[1][1]: + continue + elif line == last: + continue + newlines.append(line) + last = line + self.lines = newlines + self.recalcVars() + +def varOrNone(expr): + return expr if isinstance(expr, ast.Local) else None + +def canThrow(expr): + if isinstance(expr, (ast.ArrayAccess, ast.ArrayCreation, ast.Cast, ast.ClassInstanceCreation, ast.FieldAccess, ast.MethodInvocation)): + return True + if isinstance(expr, ast.BinaryInfix) and expr.opstr in ('/','%'): # check for possible division by 0 + return expr.dtype not in (objtypes.FloatTT, objtypes.DoubleTT) + return False + +def visitExpr(expr, lines): + if expr is None: + return + if isinstance(expr, ast.Local): + lines.append(('use', expr)) + + if isinstance(expr, ast.Assignment): + lhs, rhs = map(varOrNone, expr.params) + + # with assignment we need to only visit LHS if it isn't a local in order to avoid spurious uses + # also, we need to visit RHS before generating the def + if lhs is None: + visitExpr(expr.params[0], lines) + visitExpr(expr.params[1], lines) + if lhs is not None: + lines.append(('def', (lhs, rhs))) + else: + for param in expr.params: + visitExpr(param, lines) + + if canThrow(expr): + lines.append(('canthrow', None)) + +class DUGraph(object): + def __init__(self): + self.blocks = [] + self.entry = None + + def makeBlock(self, key, break_dict, caught_except, myexcept_parents): + block = DUBlock(key) + self.blocks.append(block) + + for parent in break_dict[block.key]: + parent.n_successors.append(block) + del break_dict[block.key] + + assert (myexcept_parents is None) == (caught_except is None) + if caught_except is not None: # this is the head of a catch block: + block.caught_excepts = (caught_except,) + for parent in myexcept_parents: + parent.e_successors.append(block) + return block + + def finishBlock(self, block, catch_stack): + # register exception handlers for completed old block and calculate var set + assert(block.vars is None) # make sure it wasn't finished twice + if block.canThrow(): + for clist in catch_stack: + clist.append(block) + block.recalcVars() + + def visitScope(self, scope, break_dict, catch_stack, caught_except=None, myexcept_parents=None, head_block=None): + # catch_stack is copy on modify + if head_block is None: + head_block = block = self.makeBlock(scope.continueKey, break_dict, caught_except, myexcept_parents) + else: + block = head_block + + for stmt in scope.statements: + if isinstance(stmt, (ast.ExpressionStatement, ast.ThrowStatement, ast.ReturnStatement)): + visitExpr(stmt.expr, block.lines) + if isinstance(stmt, ast.ThrowStatement): + block.lines.append(('canthrow', None)) + continue + + # compound statements + assert stmt.continueKey is not None + if isinstance(stmt, (ast.IfStatement, ast.SwitchStatement)): + visitExpr(stmt.expr, block.lines) + + if isinstance(stmt, ast.SwitchStatement): + ft = not stmt.hasDefault() + else: + ft = len(stmt.getScopes()) == 1 + + for sub in stmt.getScopes(): + break_dict[sub.continueKey].append(block) + self.visitScope(sub, break_dict, catch_stack) + if ft: + break_dict[stmt.breakKey].append(block) + + elif isinstance(stmt, ast.WhileStatement): + if stmt.expr != ast.Literal.TRUE: # while(cond) + assert stmt.breakKey is not None + self.finishBlock(block, catch_stack) + block = self.makeBlock(stmt.continueKey, break_dict, None, None) + visitExpr(stmt.expr, block.lines) + break_dict[stmt.breakKey].append(block) + + break_dict[stmt.continueKey].append(block) + body_block = self.visitScope(stmt.getScopes()[0], break_dict, catch_stack) + continue_target = body_block if stmt.expr == ast.Literal.TRUE else block + + for parent in break_dict[stmt.continueKey]: + parent.n_successors.append(continue_target) + del break_dict[stmt.continueKey] + + elif isinstance(stmt, ast.TryStatement): + new_stack = catch_stack + [[] for _ in stmt.pairs] + + break_dict[stmt.tryb.continueKey].append(block) + self.visitScope(stmt.tryb, break_dict, new_stack) + + for cdecl, catchb in stmt.pairs: + parents = new_stack.pop() + self.visitScope(catchb, break_dict, catch_stack, cdecl.local, parents) + assert new_stack == catch_stack + else: + assert isinstance(stmt, ast.StatementBlock) + break_dict[stmt.continueKey].append(block) + self.visitScope(stmt, break_dict, catch_stack, head_block=block) + + if not isinstance(stmt, ast.StatementBlock): # if we passed it to subscope, it will be finished in the subcall + self.finishBlock(block, catch_stack) + + if stmt.breakKey is not None: # start new block after return from compound statement + block = self.makeBlock(stmt.breakKey, break_dict, None, None) + else: + block = None # should never be accessed anyway if we're exiting abruptly + + if scope.jumpKey is not None: + break_dict[scope.jumpKey].append(block) + + if block is not None: + self.finishBlock(block, catch_stack) + return head_block # head needs to be returned in case of loops so we can fix up backedges + + def makeCFG(self, root): + break_dict = ddict(list) + self.visitScope(root, break_dict, []) + self.entry = self.blocks[0] # entry point should always be first block generated + + reached = graph_util.topologicalSort([self.entry], lambda block:(block.n_successors + block.e_successors)) + # if len(reached) != len(self.blocks): + # print 'warning, {} blocks unreachable!'.format(len(self.blocks) - len(reached)) + self.blocks = reached + + def replace(self, replace): + flattenDict(replace) + for block in self.blocks: + block.replace(replace) + + def simplify(self): + for block in self.blocks: + block.simplify() + +def makeGraph(root): + g = DUGraph() + g.makeCFG(root) + return g diff --git a/src/main/resources/Krakatau-master/Krakatau/java/graphproxy.py b/src/main/resources/Krakatau-master/Krakatau/java/graphproxy.py new file mode 100644 index 00000000..72ceb93a --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/graphproxy.py @@ -0,0 +1,127 @@ +from collections import defaultdict as ddict +import itertools + +def unique(seq): return len(set(seq)) == len(seq) + +# This module provides a view of the ssa graph that can be modified without +# touching the underlying graph. This proxy is tailored towards the need of +# cfg structuring, so it allows easy duplication and indirection of nodes, +# but assumes that the underlying variables and statements are immutable + +class BlockProxy(object): + def __init__(self, key, counter, block=None): + self.bkey = key + self.num = next(counter) + self.counter = counter + self.block = block + + self.predecessors = [] + self.successors = [] + self.outvars = {} + self.eassigns = {} # exception edge assignments, used after try constraint creation + self._key = self.bkey, self.num + + # to be assigned later + self.invars = self.blockdict = None + # assigned by structuring.py calcNoLoopNeighbors + self.successors_nl = self.predecessors_nl = self.norm_suc_nl = None + + def replaceSuccessors(self, rmap): + update = lambda k:rmap.get(k,k) + + self.successors = map(update, self.successors) + self.outvars = {update(k):v for k,v in self.outvars.items()} + if self.block is not None: + d1 = self.blockdict + self.blockdict = {(b.key,t):update(d1[b.key,t]) for (b,t) in self.block.jump.getSuccessorPairs()} + + def newIndirect(self): # for use during graph creation + new = BlockProxy(self.bkey, self.counter) + new.invars = self.invars + new.outvars = {self:new.invars} + new.blockdict = None + new.successors = [self] + self.predecessors.append(new) + return new + + def newDuplicate(self): # for use by structuring.structure return inlining + new = BlockProxy(self.bkey, self.counter, self.block) + new.invars = self.invars + new.outvars = self.outvars.copy() + new.blockdict = self.blockdict + new.successors = self.successors[:] + return new + + def indirectEdges(self, edges): + # Should only be called once graph is completely set up. newIndirect is used during graph creation + new = self.newIndirect() + for parent in edges: + self.predecessors.remove(parent) + new.predecessors.append(parent) + parent.replaceSuccessors({self:new}) + return new + + def normalSuccessors(self): # only works once try constraints have been created + return [x for x in self.successors if x in self.outvars] + + def __str__(self): # pragma: no cover + fmt = 'PB {}x{}' if self.num else 'PB {0}' + return fmt.format(self.bkey, self.num) + __repr__ = __str__ + + +def createGraphProxy(ssagraph): + assert(not ssagraph.procs) # should have already been inlined + + nodes = [BlockProxy(b.key, itertools.count(), block=b) for b in ssagraph.blocks] + allnodes = nodes[:] # will also contain indirected nodes + + entryNode = None + intypes = ddict(set) + for n in nodes: + invars = [phi.rval for phi in n.block.phis] + for b, t in n.block.jump.getSuccessorPairs(): + intypes[b.key].add(t) + + if n.bkey == ssagraph.entryKey: + assert(not entryNode and not invars) # shouldn't have more than one entryBlock and entryBlock shouldn't have phis + entryNode = n + invars = ssagraph.inputArgs # store them in the node so we don't have to keep track seperately + invars = [x for x in invars if x is not None] # will have None placeholders for Long and Double arguments + n.invars = invars + + lookup = {} + for n in nodes: + assert len(intypes[n.bkey]) != 2 # should have been handled by graph.splitDualInedges() + + if False in intypes[n.bkey]: + lookup[n.bkey, False] = n + if True in intypes[n.bkey]: + lookup[n.bkey, True] = n + assert unique(lookup.values()) + + for n in nodes: + n.blockdict = lookup + block = n.block + for (block2, t) in block.jump.getSuccessorPairs(): + out = [phi.get((block, t)) for phi in block2.phis] + + n2 = lookup[block2.key, t] + n.outvars[n2] = out + n.successors.append(n2) + n2.predecessors.append(n) + + # sanity check + for n in allnodes: + assert (n.block is not None) == (n.num == 0) + assert (n is entryNode) == (len(n.predecessors) == 0) + assert unique(n.predecessors) + assert unique(n.successors) + for pn in n.predecessors: + assert n in pn.successors + assert set(n.outvars) == set(n.successors) + for sn in n.successors: + assert n in sn.predecessors + assert len(n.outvars[sn]) == len(sn.invars) + + return entryNode, allnodes diff --git a/src/main/resources/Krakatau-master/Krakatau/java/javaclass.py b/src/main/resources/Krakatau-master/Krakatau/java/javaclass.py new file mode 100644 index 00000000..3d8b8e6f --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/javaclass.py @@ -0,0 +1,70 @@ +import struct + +from ..ssa import objtypes +from ..verifier.descriptors import parseFieldDescriptor + +from . import ast, ast2, javamethod, throws +from .reserved import reserved_identifiers + +def loadConstValue(cpool, index): + entry_type = cpool.pool[index][0] + args = cpool.getArgs(index) + + # Note: field constant values cannot be class literals + tt = {'Int':objtypes.IntTT, 'Long':objtypes.LongTT, + 'Float':objtypes.FloatTT, 'Double':objtypes.DoubleTT, + 'String':objtypes.StringTT}[entry_type] + return ast.Literal(tt, args[0]).fixLiterals() + +def _getField(field): + flags = [x.lower() for x in sorted(field.flags) if x not in ('SYNTHETIC','ENUM')] + desc = field.descriptor + dtype = objtypes.verifierToSynthetic(parseFieldDescriptor(desc, unsynthesize=False)[0]) + + initexpr = None + if field.static: + cpool = field.class_.cpool + const_attrs = [data for name,data in field.attributes if name == 'ConstantValue'] + if const_attrs: + assert len(const_attrs) == 1 + data = const_attrs[0] + index = struct.unpack('>h', data)[0] + initexpr = loadConstValue(cpool, index) + return ast2.FieldDef(' '.join(flags), ast.TypeName(dtype), field.class_, field.name, desc, initexpr) + +def _getMethod(method, cb, forbidden_identifiers, skip_errors): + try: + graph = cb(method) if method.code is not None else None + print 'Decompiling method', method.name.encode('utf8'), method.descriptor.encode('utf8') + code_ast = javamethod.generateAST(method, graph, forbidden_identifiers) + return code_ast + except Exception as e: + if not skip_errors: + raise + + import traceback + message = traceback.format_exc() + code_ast = javamethod.generateAST(method, None, forbidden_identifiers) + code_ast.comments.add(message) + print message + return code_ast + +# Method argument allows decompilng only a single method, primarily useful for debugging +def generateAST(cls, cb, skip_errors, method=None, add_throws=False): + methods = cls.methods if method is None else [cls.methods[method]] + fi = set(reserved_identifiers) + for field in cls.fields: + fi.add(field.name) + forbidden_identifiers = frozenset(fi) + + myflags = [x.lower() for x in sorted(cls.flags) if x not in ('INTERFACE','SUPER','SYNTHETIC','ANNOTATION','ENUM')] + isInterface = 'INTERFACE' in cls.flags + + superc = cls.supername + interfaces = [cls.cpool.getArgsCheck('Class', index) for index in cls.interfaces_raw] # todo - change when class actually loads interfaces + + field_defs = [_getField(f) for f in cls.fields] + method_defs = [_getMethod(m, cb, forbidden_identifiers, skip_errors) for m in methods] + if add_throws: + throws.addSingle(cls.env, method_defs) + return ast2.ClassDef(' '.join(myflags), isInterface, cls.name, superc, interfaces, field_defs, method_defs) diff --git a/src/main/resources/Krakatau-master/Krakatau/java/javamethod.py b/src/main/resources/Krakatau-master/Krakatau/java/javamethod.py new file mode 100644 index 00000000..762fe0b7 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/javamethod.py @@ -0,0 +1,886 @@ +import collections +from functools import partial +import operator + +from .. import graph_util +from ..namegen import NameGen +from ..ssa import objtypes +from ..verifier.descriptors import parseMethodDescriptor + +from . import ast, ast2, astgen, boolize, graphproxy, mergevariables, structuring + +class DeclInfo(object): + __slots__ = "declScope scope defs".split() + def __init__(self): + self.declScope = self.scope = None + self.defs = [] + +def findVarDeclInfo(root, predeclared): + info = collections.OrderedDict() + def visit(scope, expr): + for param in expr.params: + visit(scope, param) + + if expr.isLocalAssign(): + left, right = expr.params + info[left].defs.append(right) + elif isinstance(expr, (ast.Local, ast.Literal)): + # this would be so much nicer if we had Ordered defaultdicts + info.setdefault(expr, DeclInfo()) + info[expr].scope = ast.StatementBlock.join(info[expr].scope, scope) + + def visitDeclExpr(scope, expr): + info.setdefault(expr, DeclInfo()) + assert scope is not None and info[expr].declScope is None + info[expr].declScope = scope + + for expr in predeclared: + visitDeclExpr(root, expr) + + stack = [(root,root)] + while stack: + scope, stmt = stack.pop() + if isinstance(stmt, ast.StatementBlock): + stack.extend((stmt,sub) for sub in stmt.statements) + else: + stack.extend((subscope,subscope) for subscope in stmt.getScopes()) + # temp hack + if stmt.expr is not None: + visit(scope, stmt.expr) + if isinstance(stmt, ast.TryStatement): + for catchdecl, body in stmt.pairs: + visitDeclExpr(body, catchdecl.local) + return info + +def reverseBoolExpr(expr): + assert expr.dtype == objtypes.BoolTT + if isinstance(expr, ast.BinaryInfix): + symbols = "== != < >= > <=".split() + floatts = (objtypes.FloatTT, objtypes.DoubleTT) + if expr.opstr in symbols: + sym2 = symbols[symbols.index(expr.opstr) ^ 1] + left, right = expr.params + # be sure not to reverse floating point comparisons since it's not equivalent for NaN + if expr.opstr in symbols[:2] or (left.dtype not in floatts and right.dtype not in floatts): + return ast.BinaryInfix(sym2, [left, right], objtypes.BoolTT) + elif isinstance(expr, ast.UnaryPrefix) and expr.opstr == '!': + return expr.params[0] + return ast.UnaryPrefix('!', expr) + +def getSubscopeIter(root): + stack = [root] + while stack: + scope = stack.pop() + if isinstance(scope, ast.StatementBlock): + stack.extend(scope.statements) + yield scope + else: + stack.extend(scope.getScopes()) + +def mayBreakTo(root, forbidden): + assert None not in forbidden + for scope in getSubscopeIter(root): + if scope.jumpKey in forbidden: + # We return true if scope has forbidden jump and is reachable + # We assume there is no unreachable code, so in order for a scope + # jump to be unreachable, it must end in a return, throw, or a + # compound statement, all of which are not reachable or do not + # break out of the statement. We omit adding last.breakKey to + # forbidden since it should always match scope.jumpKey anyway + if not scope.statements: + return True + last = scope.statements[-1] + if not last.getScopes(): + if not isinstance(last, (ast.ReturnStatement, ast.ThrowStatement)): + return True + else: + # If and switch statements may allow fallthrough + # A while statement with condition may break implicitly + if isinstance(last, ast.IfStatement) and len(last.getScopes()) == 1: + return True + if isinstance(last, ast.SwitchStatement) and not last.hasDefault(): + return True + if isinstance(last, ast.WhileStatement) and last.expr != ast.Literal.TRUE: + return True + + if not isinstance(last, ast.WhileStatement): + for sub in last.getScopes(): + assert sub.breakKey == last.breakKey == scope.jumpKey + return False + +def replaceKeys(top, replace): + assert None not in replace + get = lambda k:replace.get(k,k) + + if top.getScopes(): + if isinstance(top, ast.StatementBlock) and get(top.breakKey) is None: + # breakKey can be None with non-None jumpKey when we're a scope in a switch statement that falls through + # and the end of the switch statement is unreachable + assert get(top.jumpKey) is None or not top.labelable + + top.breakKey = get(top.breakKey) + if isinstance(top, ast.StatementBlock): + top.jumpKey = get(top.jumpKey) + for item in top.statements: + replaceKeys(item, replace) + else: + for scope in top.getScopes(): + replaceKeys(scope, replace) + +NONE_SET = frozenset([None]) +def _preorder(scope, func): + newitems = [] + for i, item in enumerate(scope.statements): + for sub in item.getScopes(): + _preorder(sub, func) + + val = func(scope, item) + vals = [item] if val is None else val + newitems.extend(vals) + scope.statements = newitems + +def _fixObjectCreations(scope, item): + '''Combines new/invokeinit pairs into Java constructor calls''' + # Thanks to the uninitialized variable merging prior to AST generation, + # we can safely assume there are no copies to worry about + expr = item.expr + if isinstance(expr, ast.Assignment): + left, right = expr.params + if isinstance(right, ast.Dummy) and right.isNew: + return [] # remove item + elif isinstance(expr, ast.MethodInvocation) and expr.name == '': + left = expr.params[0] + newexpr = ast.ClassInstanceCreation(ast.TypeName(left.dtype), expr.tts[1:], expr.params[1:]) + item.expr = ast.Assignment(left, newexpr) + +def _pruneRethrow_cb(item): + '''Convert try{A} catch(T t) {throw t;} to {A}''' + while item.pairs: + decl, body = item.pairs[-1] + caught, lines = decl.local, body.statements + + if len(lines) == 1: + line = lines[0] + if isinstance(line, ast.ThrowStatement) and line.expr == caught: + item.pairs = item.pairs[:-1] + continue + break + if not item.pairs: + new = item.tryb + assert new.breakKey == item.breakKey + assert new.continueKey == item.continueKey + assert not new.labelable + new.labelable = True + return new + return item + +def _pruneIfElse_cb(item): + '''Convert if(A) {B} else {} to if(A) {B}''' + if len(item.scopes) > 1: + tblock, fblock = item.scopes + + # if true block is empty, swap it with false so we can remove it + if not tblock.statements and tblock.doesFallthrough(): + item.expr = reverseBoolExpr(item.expr) + tblock, fblock = item.scopes = fblock, tblock + + if not fblock.statements and fblock.doesFallthrough(): + item.scopes = tblock, + + # if(A) {B throw/return ... } else {C} -> if(A) {B throw/return ...} {C} + if len(item.scopes) > 1: + # How much we want the block to be first, or (3, 0) if it can't be simplified + def priority(block): + # If an empty block survives to this point, it must end in a break so we can simplify in this case too + if not block.statements: + return 2, 0 + # If any complex statements, there might be a labeled break, so it's not safe + if any(stmt.getScopes() for stmt in block.statements): + return 3, 0 + # prefer if(...) {throw...} return... to if(...) {return...} throw... + if isinstance(block.statements[-1], ast.ThrowStatement): + return 0, len(block.statements) + elif isinstance(block.statements[-1], ast.ReturnStatement): + return 1, len(block.statements) + return 3, 0 + + if priority(fblock) < priority(tblock): + item.expr = reverseBoolExpr(item.expr) + tblock, fblock = item.scopes = fblock, tblock + + if priority(tblock) < (3, 0): + assert tblock.statements or not tblock.doesFallthrough() + item.scopes = tblock, + item.breakKey = fblock.continueKey + fblock.labelable = True + return [item], fblock + + # If cond is !(x), reverse it back to simplify cond + if isinstance(item.expr, ast.UnaryPrefix) and item.expr.opstr == '!': + item.expr = reverseBoolExpr(item.expr) + tblock, fblock = item.scopes = fblock, tblock + + # if(A) {if(B) {C}} -> if(A && B) {C} + tblock = item.scopes[0] + if len(item.scopes) == 1 and len(tblock.statements) == 1 and tblock.doesFallthrough(): + first = tblock.statements[0] + if isinstance(first, ast.IfStatement) and len(first.scopes) == 1: + item.expr = ast.BinaryInfix('&&',[item.expr, first.expr], objtypes.BoolTT) + item.scopes = first.scopes + return [], item + +def _whileCondition_cb(item): + '''Convert while(true) {if(A) {B break;} else {C} D} to while(!A) {{C} D} {B} + and while(A) {if(B) {break;} else {C} D} to while(A && !B) {{C} D}''' + failure = [], item # what to return if we didn't inline + body = item.getScopes()[0] + if not body.statements or not isinstance(body.statements[0], ast.IfStatement): + return failure + + head = body.statements[0] + cond = head.expr + trueb, falseb = (head.getScopes() + (None,))[:2] + + # Make sure it doesn't continue the loop or break out of the if statement + badjumps1 = frozenset([head.breakKey, item.continueKey]) - NONE_SET + if mayBreakTo(trueb, badjumps1): + if falseb is not None and not mayBreakTo(falseb, badjumps1): + cond = reverseBoolExpr(cond) + trueb, falseb = falseb, trueb + else: + return failure + assert not mayBreakTo(trueb, badjumps1) + + + trivial = not trueb.statements and trueb.jumpKey == item.breakKey + # If we already have a condition, only a simple break is allowed + if not trivial and item.expr != ast.Literal.TRUE: + return failure + + # If break body is nontrival, we can't insert this after the end of the loop unless + # We're sure that nothing else in the loop breaks out + badjumps2 = frozenset([item.breakKey]) - NONE_SET + if not trivial: + restloop = [falseb] if falseb is not None else [] + restloop += body.statements[1:] + if body.jumpKey == item.breakKey or any(mayBreakTo(s, badjumps2) for s in restloop): + return failure + + # Now inline everything + item.expr = _simplifyExpressions(ast.BinaryInfix('&&', [item.expr, reverseBoolExpr(cond)])) + if falseb is None: + body.continueKey = body.statements.pop(0).breakKey + else: + body.continueKey = falseb.continueKey + body.statements[0] = falseb + falseb.labelable = True + trueb.labelable = True + + if item.breakKey is None: # Make sure to maintain invariant that bkey=None -> jkey=None + assert trueb.doesFallthrough() + trueb.jumpKey = trueb.breakKey = None + trueb.breakKey = item.breakKey + assert trueb.continueKey is not None + if not trivial: + item.breakKey = trueb.continueKey + + # Trueb doesn't break to head.bkey but there might be unreacahble jumps, so we replace + # it too. We don't replace item.ckey because it should never appear, even as an + # unreachable jump + replaceKeys(trueb, {head.breakKey:trueb.breakKey, item.breakKey:trueb.breakKey}) + return [item], trueb + +def _simplifyBlocksSub(scope, item, isLast): + rest = [] + if isinstance(item, ast.TryStatement): + item = _pruneRethrow_cb(item) + elif isinstance(item, ast.IfStatement): + rest, item = _pruneIfElse_cb(item) + elif isinstance(item, ast.WhileStatement): + rest, item = _whileCondition_cb(item) + + if isinstance(item, ast.StatementBlock): + assert item.breakKey is not None or item.jumpKey is None + # If bkey is None, it can't be broken to + # If contents can also break to enclosing scope, it's always safe to inline + bkey = item.breakKey + if bkey is None or (bkey == scope.breakKey and scope.labelable): + rest, item.statements = rest + item.statements, [] + # Now inline statements at the beginning of the scope that don't need to break to it + for sub in item.statements[:]: + if sub.getScopes() and sub.breakKey != bkey and mayBreakTo(sub, frozenset([bkey])): + break + rest.append(item.statements.pop(0)) + + if not item.statements: + if item.jumpKey != bkey: + assert isLast + scope.jumpKey = item.jumpKey + assert scope.breakKey is not None or scope.jumpKey is None + return rest + return rest + [item] + +def _simplifyBlocks(scope): + newitems = [] + for item in reversed(scope.statements): + isLast = not newitems # may be true if all subsequent items pruned + if isLast and item.getScopes(): + if item.breakKey != scope.jumpKey:# and item.breakKey is not None: + replaceKeys(item, {item.breakKey: scope.jumpKey}) + + for sub in reversed(item.getScopes()): + _simplifyBlocks(sub) + vals = _simplifyBlocksSub(scope, item, isLast) + newitems += reversed(vals) + scope.statements = newitems[::-1] + + +_op2bits = {'==':2, '!=':13, '<':1, '<=':3, '>':4, '>=':6} +_bit2ops_float = {v:k for k,v in _op2bits.items()} +_bit2ops = {(v & 7):k for k,v in _op2bits.items()} + +def _getBitfield(expr): + if isinstance(expr, ast.BinaryInfix): + if expr.opstr in ('==','!=','<','<=','>','>='): + # We don't want to merge expressions if they could have side effects + # so only allow literals and locals + if all(isinstance(p, (ast.Literal, ast.Local)) for p in expr.params): + return _op2bits[expr.opstr], list(expr.params) + elif expr.opstr in ('&','&&','|','||'): + bits1, args1 = _getBitfield(expr.params[0]) + bits2, args2 = _getBitfield(expr.params[1]) + if args1 == args2: + bits = (bits1 & bits2) if '&' in expr.opstr else (bits1 | bits2) + return bits, args1 + elif isinstance(expr, ast.UnaryPrefix) and expr.opstr == '!': + bits, args = _getBitfield(expr.params[0]) + return ~bits, args + return 0, None + +def _mergeComparisons(expr): + # a <= b && a != b -> a < b, etc. + bits, args = _getBitfield(expr) + if args is None: + return expr + + assert not hasSideEffects(args[0]) and not hasSideEffects(args[1]) + if args[0].dtype in (objtypes.FloatTT, objtypes.DoubleTT): + mask, d = 15, _bit2ops_float + else: + mask, d = 7, _bit2ops + + bits &= mask + notbits = (~bits) & mask + + if bits == 0: + return ast.Literal.TRUE + elif notbits == 0: + return ast.Literal.FALSE + elif bits in d: + return ast.BinaryInfix(d[bits], args, objtypes.BoolTT) + elif notbits in d: + return ast.UnaryPrefix('!', ast.BinaryInfix(d[notbits], args, objtypes.BoolTT)) + return expr + +def _simplifyExpressions(expr): + TRUE, FALSE = ast.Literal.TRUE, ast.Literal.FALSE + bools = {True:TRUE, False:FALSE} + opfuncs = {'<': operator.lt, '<=': operator.le, '>': operator.gt, '>=': operator.ge} + + simplify = _simplifyExpressions + expr.params = map(simplify, expr.params) + + if isinstance(expr, ast.BinaryInfix): + left, right = expr.params + op = expr.opstr + if op in ('==','!=','<','<=','>','>=') and isinstance(right, ast.Literal): + # la cmp lb -> result (i.e. constant propagation on literal comparisons) + if isinstance(left, ast.Literal): + if op in ('==','!='): + # these could be string or class literals, but those are always nonnull so it still works + res = (left == right) == (op == '==') + else: + assert left.dtype == right.dtype + res = opfuncs[op](left.val, right.val) + expr = bools[res] + # (a ? lb : c) cmp ld -> a ? (lb cmp ld) : (c cmp ld) + elif isinstance(left, ast.Ternary) and isinstance(left.params[1], ast.Literal): + left.params[1] = simplify(ast.BinaryInfix(op, [left.params[1], right], expr._dtype)) + left.params[2] = simplify(ast.BinaryInfix(op, [left.params[2], right], expr._dtype)) + expr = left + + # a ? true : b -> a || b + # a ? false : b -> !a && b + if isinstance(expr, ast.Ternary) and expr.dtype == objtypes.BoolTT: + cond, val1, val2 = expr.params + if not isinstance(val1, ast.Literal): # try to get bool literal to the front + cond, val1, val2 = reverseBoolExpr(cond), val2, val1 + + if val1 == TRUE: + expr = ast.BinaryInfix('||', [cond, val2], objtypes.BoolTT) + elif val1 == FALSE: + expr = ast.BinaryInfix('&&', [reverseBoolExpr(cond), val2], objtypes.BoolTT) + + # true && a -> a, etc. + if isinstance(expr, ast.BinaryInfix) and expr.opstr in ('&&','||'): + left, right = expr.params + if expr.opstr == '&&': + if left == TRUE or (right == FALSE and not hasSideEffects(left)): + expr = right + elif left == FALSE or right == TRUE: + expr = left + else: + if left == TRUE or right == FALSE: + expr = left + elif left == FALSE or (right == TRUE and not hasSideEffects(left)): + expr = right + # a > b || a == b -> a >= b, etc. + expr = _mergeComparisons(expr) + + # a == true -> a + # a == false -> !a + if isinstance(expr, ast.BinaryInfix) and expr.opstr in ('==, !=') and expr.params[0].dtype == objtypes.BoolTT: + left, right = expr.params + if not isinstance(left, ast.Literal): # try to get bool literal to the front + left, right = right, left + if isinstance(left, ast.Literal): + flip = (left == TRUE) != (expr.opstr == '==') + expr = reverseBoolExpr(right) if flip else right + + # !a ? b : c -> a ? c : b + if isinstance(expr, ast.Ternary) and isinstance(expr.params[0], ast.UnaryPrefix): + cond, val1, val2 = expr.params + if cond.opstr == '!': + expr.params = [reverseBoolExpr(cond), val2, val1] + + # 0 - a -> -a + if isinstance(expr, ast.BinaryInfix) and expr.opstr == '-': + if expr.params[0] == ast.Literal.ZERO or expr.params[0] == ast.Literal.LZERO: + expr = ast.UnaryPrefix('-', expr.params[1]) + + # (double)4.2f -> 4.2, etc. + if isinstance(expr, ast.Cast) and isinstance(expr.params[1], ast.Literal): + expr = ast.makeCastExpr(expr.dtype, expr.params[1]) + + return expr + +def _setScopeParents(scope): + for item in scope.statements: + for sub in item.getScopes(): + sub.bases = scope.bases + (sub,) + _setScopeParents(sub) + +def _replaceExpressions(scope, item, rdict): + # Must be done before local declarations are created since it doesn't touch/remove them + if item.expr is not None: + item.expr = item.expr.replaceSubExprs(rdict) + # remove redundant assignments i.e. x=x; + if isinstance(item.expr, ast.Assignment): + assert isinstance(item, ast.ExpressionStatement) + left, right = item.expr.params + if left == right: + return [] + return [item] + +def _oldMergeVariables(root, predeclared): + _setScopeParents(root) + info = findVarDeclInfo(root, predeclared) + + lvars = [expr for expr in info if isinstance(expr, ast.Local)] + forbidden = set() + # If var has any defs which aren't a literal or local, mark it as a leaf node (it can't be merged into something) + for var in lvars: + if not all(isinstance(expr, (ast.Local, ast.Literal)) for expr in info[var].defs): + forbidden.add(var) + elif info[var].declScope is not None: + forbidden.add(var) + + sccs = graph_util.tarjanSCC(lvars, lambda var:([] if var in forbidden else info[var].defs)) + # the sccs will be in topolgical order + varmap = {} + for scc in sccs: + if forbidden.isdisjoint(scc): + alldefs = [] + for expr in scc: + for def_ in info[expr].defs: + if def_ not in scc: + alldefs.append(varmap[def_]) + if len(set(alldefs)) == 1: + target = alldefs[0] + if all(var.dtype == target.dtype for var in scc): + scope = ast.StatementBlock.join(*(info[var].scope for var in scc)) + scope = ast.StatementBlock.join(scope, info[target].declScope) # scope is unchanged if declScope is none like usual + if info[target].declScope is None or info[target].declScope == scope: + for var in scc: + varmap[var] = target + info[target].scope = ast.StatementBlock.join(scope, info[target].scope) + continue + # fallthrough if merging is impossible + for var in scc: + varmap[var] = var + if len(info[var].defs) > 1: + forbidden.add(var) + _preorder(root, partial(_replaceExpressions, rdict=varmap)) + +def _mergeVariables(root, predeclared, isstatic): + _oldMergeVariables(root, predeclared) + + rdict = mergevariables.mergeVariables(root, isstatic, predeclared) + _preorder(root, partial(_replaceExpressions, rdict=rdict)) + +_oktypes = ast.BinaryInfix, ast.Local, ast.Literal, ast.Parenthesis, ast.Ternary, ast.TypeName, ast.UnaryPrefix +def hasSideEffects(expr): + if not isinstance(expr, _oktypes): + return True + # check for division by 0. If it's a float or dividing by nonzero literal, it's ok + elif isinstance(expr, ast.BinaryInfix) and expr.opstr in ('/','%'): + if expr.dtype not in (objtypes.FloatTT, objtypes.DoubleTT): + divisor = expr.params[-1] + if not isinstance(divisor, ast.Literal) or divisor.val == 0: + return True + return False + +def _inlineVariables(root): + # first find all variables with a single def and use + defs = collections.defaultdict(list) + uses = collections.defaultdict(int) + + def visitExprFindDefs(expr): + if expr.isLocalAssign(): + defs[expr.params[0]].append(expr) + elif isinstance(expr, ast.Local): + uses[expr] += 1 + + def visitFindDefs(scope, item): + if item.expr is not None: + stack = [item.expr] + while stack: + expr = stack.pop() + visitExprFindDefs(expr) + stack.extend(expr.params) + + _preorder(root, visitFindDefs) + # These should have 2 uses since the initial assignment also counts + replacevars = {k for k,v in defs.items() if len(v)==1 and uses[k]==2 and k.dtype == v[0].params[1].dtype} + def doReplacement(item, pairs): + old, new = item.expr.params + assert isinstance(old, ast.Local) and old.dtype == new.dtype + stack = [(True, (True, item2, expr)) for item2, expr in reversed(pairs) if expr is not None] + while stack: + recurse, args = stack.pop() + + if recurse: + canReplace, parent, expr = args + stack.append((False, expr)) + + # TODO - fix this for real + if expr.complexity() > 30: + canReplace = False + + # For ternaries, we don't want to replace into the conditionally + # evaluated part, but we still need to check those parts for + # barriers. For both ternaries and short circuit operators, the + # first param is always evaluated, so it is safe + if isinstance(expr, ast.Ternary) or isinstance(expr, ast.BinaryInfix) and expr.opstr in ('&&','||'): + for param in reversed(expr.params[1:]): + stack.append((True, (False, expr, param))) + stack.append((True, (canReplace, expr, expr.params[0]))) + # For assignments, we unroll the LHS arguments, because if assigning + # to an array or field, we don't want that to serve as a barrier + elif isinstance(expr, ast.Assignment): + left, right = expr.params + stack.append((True, (canReplace, expr, right))) + if isinstance(left, (ast.ArrayAccess, ast.FieldAccess)): + for param in reversed(left.params): + stack.append((True, (canReplace, left, param))) + else: + assert isinstance(left, ast.Local) + else: + for param in reversed(expr.params): + stack.append((True, (canReplace, expr, param))) + + if expr == old: + if canReplace: + if isinstance(parent, ast.JavaExpression): + params = parent.params = list(parent.params) + params[params.index(old)] = new + else: # replacing in a top level statement + assert parent.expr == old + parent.expr = new + return canReplace + else: + expr = args + if hasSideEffects(expr): + return False + return False + + def visitReplace(scope): + newstatements = [] + for item in reversed(scope.statements): + for sub in item.getScopes(): + visitReplace(sub) + + if isinstance(item.expr, ast.Assignment) and item.expr.params[0] in replacevars: + expr_roots = [] + for item2 in newstatements: + # Don't inline into a while condition as it may be evaluated more than once + if not isinstance(item2, ast.WhileStatement): + expr_roots.append((item2, item2.expr)) + if item2.getScopes(): + break + success = doReplacement(item, expr_roots) + if success: + continue + newstatements.insert(0, item) + scope.statements = newstatements + visitReplace(root) + +def _createDeclarations(root, predeclared): + _setScopeParents(root) + info = findVarDeclInfo(root, predeclared) + localdefs = collections.defaultdict(list) + newvars = [var for var in info if isinstance(var, ast.Local) and info[var].declScope is None] + remaining = set(newvars) + + def mdVisitVarUse(var): + decl = ast.VariableDeclarator(ast.TypeName(var.dtype), var) + # The compiler treats statements as if they can throw any exception at any time, so + # it may think variables are not definitely assigned even when they really are. + # Therefore, we give an unused initial value to every variable declaration + # TODO - find a better way to handle this + right = ast.dummyLiteral(var.dtype) + localdefs[info[var].scope].append(ast.LocalDeclarationStatement(decl, right)) + remaining.remove(var) + + def mdVisitScope(scope): + if isinstance(scope, ast.StatementBlock): + for i,stmt in enumerate(scope.statements): + if isinstance(stmt, ast.ExpressionStatement): + if isinstance(stmt.expr, ast.Assignment): + var, right = stmt.expr.params + if var in remaining and scope == info[var].scope: + decl = ast.VariableDeclarator(ast.TypeName(var.dtype), var) + new = ast.LocalDeclarationStatement(decl, right) + scope.statements[i] = new + remaining.remove(var) + if stmt.expr is not None: + top = stmt.expr + for expr in top.postFlatIter(): + if expr in remaining: + mdVisitVarUse(expr) + for sub in stmt.getScopes(): + mdVisitScope(sub) + + mdVisitScope(root) + # print remaining + assert not remaining + assert None not in localdefs + for scope, ldefs in localdefs.items(): + scope.statements = ldefs + scope.statements + +def _createTernaries(scope, item): + if isinstance(item, ast.IfStatement) and len(item.getScopes()) == 2: + block1, block2 = item.getScopes() + + if (len(block1.statements) == len(block2.statements) == 1) and block1.jumpKey == block2.jumpKey: + s1, s2 = block1.statements[0], block2.statements[0] + e1, e2 = s1.expr, s2.expr + + if isinstance(s1, ast.ReturnStatement) and isinstance(s2, ast.ReturnStatement): + expr = None if e1 is None else ast.Ternary(item.expr, e1, e2) + item = ast.ReturnStatement(expr, s1.tt) + elif isinstance(s1, ast.ExpressionStatement) and isinstance(s2, ast.ExpressionStatement): + if isinstance(e1, ast.Assignment) and isinstance(e2, ast.Assignment): + # if e1.params[0] == e2.params[0] and max(e1.params[1].complexity(), e2.params[1].complexity()) <= 1: + if e1.params[0] == e2.params[0]: + expr = ast.Ternary(item.expr, e1.params[1], e2.params[1]) + temp = ast.ExpressionStatement(ast.Assignment(e1.params[0], expr)) + + if not block1.doesFallthrough(): + assert not block2.doesFallthrough() + item = ast.StatementBlock(item.func, item.continueKey, item.breakKey, [temp], block1.jumpKey) + else: + item = temp + if item.expr is not None: + item.expr = _simplifyExpressions(item.expr) + return [item] + +def _fixExprStatements(scope, item, namegen): + if isinstance(item, ast.ExpressionStatement): + right = item.expr + if not isinstance(right, (ast.Assignment, ast.ClassInstanceCreation, ast.MethodInvocation)) and right.dtype is not None: + left = ast.Local(right.dtype, lambda expr:namegen.getPrefix('dummy')) + decl = ast.VariableDeclarator(ast.TypeName(left.dtype), left) + item = ast.LocalDeclarationStatement(decl, right) + return [item] + +def _fixLiterals(scope, item): + item.fixLiterals() + +def _addCastsAndParens(scope, item, env): + item.addCastsAndParens(env) + +def _fallsThrough(scope, usedBreakTargets): + # Check if control reaches end of scope and there is no break statement + # We don't have to check keys since breaks should have already been generated for child scopes + # for main scope there won't be one yet, but we don't care since we're just looking for + # whether end of scope is reached on the main scope + if not scope.statements: + return True + last = scope.statements[-1] + if isinstance(last, (ast.JumpStatement, ast.ReturnStatement, ast.ThrowStatement)): + return False + elif not last.getScopes(): + return True + # Scope ends with a complex statement. Determine whether it can fallthrough + if last in usedBreakTargets: + return True + # Less strict than Java reachability rules, but we aren't bothering to follow them exactly + if isinstance(last, ast.WhileStatement): + return last.expr != ast.Literal.TRUE + elif isinstance(last, ast.SwitchStatement): + return not last.hasDefault() or _fallsThrough(last.getScopes()[-1], usedBreakTargets) + else: + if isinstance(last, ast.IfStatement) and len(last.getScopes()) < 2: + return True + return any(_fallsThrough(sub, usedBreakTargets) for sub in last.getScopes()) + +def _chooseJump(choices, breakPair, continuePair): + assert None not in choices + if breakPair in choices: + return breakPair + if continuePair in choices: + return continuePair + # Try to find an already labeled target + for b, t in choices: + if b.label is not None: + return b, t + return choices[0] + +def _generateJumps(scope, usedBreakTargets, targets=collections.defaultdict(tuple), breakPair=None, continuePair=None, fallthroughs=NONE_SET, dryRun=False): + assert None in fallthroughs + newfallthroughs = fallthroughs + newcontinuePair = continuePair + newbreakPair = breakPair + + if scope.jumpKey not in fallthroughs: + newfallthroughs = frozenset([None, scope.jumpKey]) + + for item in reversed(scope.statements): + if not item.getScopes(): + newfallthroughs = NONE_SET + continue + + if isinstance(item, ast.WhileStatement): + newfallthroughs = frozenset([None, item.continueKey]) + else: + newfallthroughs |= frozenset([item.breakKey]) + + newtargets = targets.copy() + if isinstance(item, ast.WhileStatement): + newtargets[item.continueKey] += ((item, True),) + newcontinuePair = item, True + if isinstance(item, (ast.WhileStatement, ast.SwitchStatement)): + newbreakPair = item, False + newtargets[item.breakKey] += ((item, False),) + + for subscope in reversed(item.getScopes()): + _generateJumps(subscope, usedBreakTargets, newtargets, newbreakPair, newcontinuePair, newfallthroughs, dryRun=dryRun) + if isinstance(item, ast.SwitchStatement): + newfallthroughs = frozenset([None, subscope.continueKey]) + newfallthroughs = frozenset([None, item.continueKey]) + + for item in scope.statements: + if isinstance(item, ast.StatementBlock) and item.statements: + if isinstance(item.statements[-1], ast.JumpStatement): + assert item is scope.statements[-1] or item in usedBreakTargets + + # Now that we've visited children, decide if we need a jump for this scope, and if so, generate it + if scope.jumpKey not in fallthroughs: + # Figure out if this jump is actually reachable + if _fallsThrough(scope, usedBreakTargets): + target, isContinue = pair = _chooseJump(targets[scope.jumpKey], breakPair, continuePair) + if not isContinue: + usedBreakTargets.add(target) + if pair == breakPair or pair == continuePair: + target = None + # Now actually add the jump statement + if not dryRun: + scope.statements.append(ast.JumpStatement(target, isContinue)) + +def _pruneVoidReturn(scope): + if scope.statements: + last = scope.statements[-1] + if isinstance(last, ast.ReturnStatement) and last.expr is None: + scope.statements.pop() + +def _pruneCtorSuper(scope): + if scope.statements: + stmt = scope.statements[0] + if isinstance(stmt, ast.ExpressionStatement): + expr = stmt.expr + if isinstance(expr, ast.MethodInvocation) and len(expr.params) == 0 and expr.name == 'super': + scope.statements = scope.statements[1:] + +def generateAST(method, graph, forbidden_identifiers): + env = method.class_.env + namegen = NameGen(forbidden_identifiers) + class_ = method.class_ + inputTypes = parseMethodDescriptor(method.descriptor, unsynthesize=False)[0] + tts = objtypes.verifierToSynthetic_seq(inputTypes) + + if graph is not None: + graph.splitDualInedges() + graph.fixLoops() + entryNode, nodes = graphproxy.createGraphProxy(graph) + if not method.static: + entryNode.invars[0].name = 'this' + + setree = structuring.structure(entryNode, nodes, (method.name == '')) + ast_root, varinfo = astgen.createAST(method, graph, setree, namegen) + + argsources = [varinfo.var(entryNode, var) for var in entryNode.invars] + disp_args = argsources if method.static else argsources[1:] + for expr, tt in zip(disp_args, tts): + expr.dtype = tt + + decls = [ast.VariableDeclarator(ast.TypeName(expr.dtype), expr) for expr in disp_args] + ################################################################################################ + ast_root.bases = (ast_root,) # needed for our setScopeParents later + + assert _generateJumps(ast_root, set(), dryRun=True) is None + _preorder(ast_root, _fixObjectCreations) + boolize.boolizeVars(ast_root, argsources) + boolize.interfaceVars(env, ast_root, argsources) + _simplifyBlocks(ast_root) + assert _generateJumps(ast_root, set(), dryRun=True) is None + + _mergeVariables(ast_root, argsources, method.static) + + _preorder(ast_root, _createTernaries) + _inlineVariables(ast_root) + _simplifyBlocks(ast_root) + _preorder(ast_root, _createTernaries) + _inlineVariables(ast_root) + _simplifyBlocks(ast_root) + + _createDeclarations(ast_root, argsources) + _preorder(ast_root, partial(_fixExprStatements, namegen=namegen)) + _preorder(ast_root, _fixLiterals) + _preorder(ast_root, partial(_addCastsAndParens, env=env)) + _generateJumps(ast_root, set()) + _pruneVoidReturn(ast_root) + _pruneCtorSuper(ast_root) + else: # abstract or native method + ast_root = None + argsources = [ast.Local(tt, lambda expr:namegen.getPrefix('arg')) for tt in tts] + decls = [ast.VariableDeclarator(ast.TypeName(expr.dtype), expr) for expr in argsources] + + flags = method.flags - set(['BRIDGE','SYNTHETIC','VARARGS']) + if method.name == '': # More arbtirary restrictions. Yay! + flags = flags - set(['ABSTRACT','STATIC','FINAL','NATIVE','STRICTFP','SYNCHRONIZED']) + + flagstr = ' '.join(map(str.lower, sorted(flags))) + inputTypes, returnTypes = parseMethodDescriptor(method.descriptor, unsynthesize=False) + ret_tt = objtypes.verifierToSynthetic(returnTypes[0]) if returnTypes else objtypes.VoidTT + return ast2.MethodDef(class_, flagstr, method.name, method.descriptor, ast.TypeName(ret_tt), decls, ast_root) diff --git a/src/main/resources/Krakatau-master/Krakatau/java/mergevariables.py b/src/main/resources/Krakatau-master/Krakatau/java/mergevariables.py new file mode 100644 index 00000000..29e061c8 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/mergevariables.py @@ -0,0 +1,285 @@ +import heapq + +from .cfg import flattenDict, makeGraph + +# Variables x and y can safely be merged when it is true that for any use of y (respectively x) +# that sees a definition of y, either there are no intervening definitions of x, or x was known +# to be equal to y *at the point of its most recent definition* +# Given this info, we greedily merge related variables, that is, those where one is assigned to the other +# to calculate which variables can be merged, we first have to build a CFG from the Java AST again + +class VarInfo(object): + __slots__ = "key", "defs", "rdefs", "extracount" + def __init__(self, key): + self.key = key + self.defs = set() + self.rdefs = set() + self.extracount = 0 + + def priority(self): + return (len(self.defs) + self.extracount), self.key + +class EqualityData(object): + def __init__(self, d=None): + # Equal values point to a representative object instance. Singletons are not represented at all for efficiency + # None represents the top value (i.e. this point has not been visited yet) + self.d = d.copy() if d is not None else None + + def _newval(self): return object() + + def initialize(self): # initialize to bottom value (all variables unequal) + assert self.d is None + self.d = {} + + def handleAssign(self, var1, var2=None): + if var1 == var2: + return + if var2 is None: + if var1 in self.d: + del self.d[var1] + else: + self.d[var1] = self.d.setdefault(var2, self._newval()) + assert self.iseq(var1, var2) + + def iseq(self, var1, var2): + assert var1 != var2 + return var1 in self.d and var2 in self.d and self.d[var1] is self.d[var2] + + def merge_update(self, other): + if other.d is None: + return + elif self.d is None: + self.d = other.d.copy() + else: + d1, d2 = self.d, other.d + new = {} + todo = list(set(d1) & set(d2)) + while todo: + cur = todo.pop() + matches = [k for k in todo if d1[k] is d1[cur] and d2[k] is d2[cur]] + if not matches: + continue + new[cur] = self._newval() + for k in matches: + new[k] = new[cur] + todo = [k for k in todo if k not in new] + self.d = new + + def copy(self): return EqualityData(self.d) + + def __eq__(self, other): + if self.d is None or other.d is None: + return self.d is other.d + if self.d == other.d: + return True + if set(self.d) != set(other.d): + return False + match = {} + for k in self.d: + if match.setdefault(self.d[k], other.d[k]) != other.d[k]: + return False + return True + + def __ne__(self, other): return not self == other + def __hash__(self): raise TypeError('unhashable type') + +def calcEqualityData(graph): + graph.simplify() + blocks = graph.blocks + d = {b:[EqualityData()] for b in blocks} + + d[graph.entry][0].initialize() + stack = [graph.entry] + dirty = set(blocks) + + while stack: + block = stack.pop() + if block not in dirty: + continue + dirty.remove(block) + + cur = d[block][0].copy() + e_out = EqualityData() + del d[block][1:] + + for line_t, data in block.lines: + if line_t == 'def': + cur.handleAssign(*data) + d[block].append(cur.copy()) + elif line_t == 'canthrow': + e_out.merge_update(cur) + + for out, successors in [(e_out, block.e_successors), (cur, block.n_successors)]: + stack += successors + for suc in successors: + old = d[suc][0].copy() + d[suc][0].merge_update(out) + if old != d[suc][0]: + dirty.add(suc) + + for block in blocks: + assert d[block][0].d is not None + assert not dirty + return d + +class VarMergeInfo(object): + def __init__(self, graph, methodparams, isstatic): + self.info = {} + self.final, self.unmergeable, self.external = set(), set(), set() + self.equality = None # to be calculated later + self.graph = graph + + self.pending_graph_replaces = {} + self.touched_vars = set() + + # initialize variables and assignment data + for var in methodparams: + self._addvar(var) + self.external.update(methodparams) + if not isstatic: + self.final.add(methodparams[0]) + + for block in graph.blocks: + for line_t, data in block.lines: + if line_t == 'def': + self._addassign(data[0], data[1]) + for caught in block.caught_excepts: + self._addvar(caught) + self.external.add(caught) + self.unmergeable.add(caught) + + # initialization helper funcs + def _addvar(self, v): + return self.info.setdefault(v, VarInfo(len(self.info))) + + def _addassign(self, v1, v2): + info = self._addvar(v1) + if v2 is not None: + info.defs.add(v2) + self._addvar(v2).rdefs.add(v1) + else: + info.extracount += 1 + + # process helper funcs + def iseq(self, block, index, v1, v2): + return self.equality[block][index].iseq(v1, v2) + + def _doGraphReplacements(self): + self.graph.replace(self.pending_graph_replaces) + self.pending_graph_replaces = {} + self.touched_vars = set() + + def compat(self, v1, v2, doeq): + if v1 in self.touched_vars or v2 in self.touched_vars: + self._doGraphReplacements() + + blocks = self.graph.blocks + vok = {b:3 for b in blocks} # use bitmask v1ok = 1<<0, v2ok = 1<<1 + + stack = [b for b in blocks if v1 in b.vars or v2 in b.vars] + while stack: + block = stack.pop() + cur = vok[block] + e_out = 3 + + if v1 in block.vars or v2 in block.vars: + defcount = 0 + for line_t, data in block.lines: + if line_t == 'use': + if (data == v1 and not cur & 1) or (data == v2 and not cur & 2): + return False + elif line_t == 'def': + defcount += 1 + + if data[0] == v1 and data[1] != v1: + cur = 1 + elif data[0] == v2 and data[1] != v2: + cur = 2 + if doeq and self.iseq(block, defcount, v1, v2): + cur = 3 + elif line_t == 'canthrow': + e_out &= cur + else: + # v1 and v2 not touched in this block, so there is nothing to do + e_out = cur + + for out, successors in [(e_out, block.e_successors), (cur, block.n_successors)]: + for suc in successors: + if vok[suc] & out != vok[suc]: + stack.append(suc) + vok[suc] &= out + return True + + def process(self, replace, doeq): + final, unmergeable, external = self.final, self.unmergeable, self.external + d = self.info + work_q = [(info.priority(), var) for var, info in d.items()] + heapq.heapify(work_q) + dirty = set(d) - external + + while work_q: + _, cur = heapq.heappop(work_q) + if (cur in external) or cur not in dirty: + continue + dirty.remove(cur) + + candidate_set = d[cur].defs - unmergeable + if len(d[cur].defs) > 1 or d[cur].extracount > 0: + candidate_set = candidate_set - final + candidates = [v for v in candidate_set if v.dtype == cur.dtype] + candidates = sorted(candidates, key=lambda v:d[v].key) + assert cur not in candidates + + # find first candidate that is actually compatible + for parent in candidates: + if self.compat(cur, parent, doeq): + break + else: + continue # no candidates found + + replace[cur] = parent + self.pending_graph_replaces[cur] = parent + self.touched_vars.add(cur) + self.touched_vars.add(parent) + + infc, infp = d[cur], d[parent] + # Be careful, there could be a loop with cur in parent.defs + infc.defs.remove(parent) + infc.rdefs.discard(parent) + infp.rdefs.remove(cur) + infp.defs.discard(cur) + + for var in d[cur].rdefs: + d[var].defs.remove(cur) + d[var].defs.add(parent) + heapq.heappush(work_q, (d[var].priority(), var)) + + for var in d[cur].defs: + d[var].rdefs.remove(cur) + d[var].rdefs.add(parent) + + d[parent].defs |= d[cur].defs + d[parent].rdefs |= d[cur].rdefs + d[parent].extracount += d[cur].extracount + + del d[cur] + heapq.heappush(work_q, (d[parent].priority(), parent)) + dirty.add(parent) + + def processMain(self, replace): + self.process(replace, False) + self._doGraphReplacements() + self.equality = calcEqualityData(self.graph) + self.process(replace, True) + +############################################################################### +def mergeVariables(root, isstatic, parameters): + # first, create CFG from the Java AST + graph = makeGraph(root) + mergeinfo = VarMergeInfo(graph, parameters, isstatic) + + replace = {} + mergeinfo.processMain(replace) + + flattenDict(replace) + return replace diff --git a/src/main/resources/Krakatau-master/Krakatau/java/reserved.py b/src/main/resources/Krakatau-master/Krakatau/java/reserved.py new file mode 100644 index 00000000..8a0ae44f --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/reserved.py @@ -0,0 +1,55 @@ +reserved_identifiers = ''' +abstract +assert +boolean +break +byte +case +catch +char +class +const +continue +default +do +double +else +enum +extends +false +final +finally +float +for +goto +if +implements +import +instanceof +int +interface +long +native +new +null +package +private +protected +public +return +short +static +strictfp +super +switch +synchronized +this +throw +throws +transient +true +try +void +volatile +while +'''.split() diff --git a/src/main/resources/Krakatau-master/Krakatau/java/setree.py b/src/main/resources/Krakatau-master/Krakatau/java/setree.py new file mode 100644 index 00000000..42bf2844 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/setree.py @@ -0,0 +1,63 @@ +import itertools + +def update(self, items): + self.entryBlock = items[0].entryBlock + self.nodes = frozenset.union(*(i.nodes for i in items)) + temp = set(self.nodes) + siter = itertools.chain.from_iterable(i.successors for i in items) + self.successors = [n for n in siter if not n in temp and not temp.add(n)] + +class SEBlockItem(object): + def __init__(self, node): + self.successors = node.norm_suc_nl # don't include backedges or exceptional edges + self.node = node + self.nodes = frozenset([node]) + self.entryBlock = node + + def getScopes(self): return () + +class SEScope(object): + def __init__(self, items): + self.items = items + update(self, items) + + def getScopes(self): return () + +class SEWhile(object): + def __init__(self, scope): + self.body = scope + update(self, [scope]) + + def getScopes(self): return self.body, + +class SETry(object): + def __init__(self, tryscope, catchscope, toptts, catchvar): + self.scopes = tryscope, catchscope + self.toptts = toptts + self.catchvar = catchvar # none if ignored + update(self, self.scopes) + + def getScopes(self): return self.scopes + +class SEIf(object): + def __init__(self, head, newscopes): + assert len(newscopes) == 2 + self.scopes = newscopes + self.head = head + update(self, [head] + newscopes) + + def getScopes(self): return self.scopes + +class SESwitch(object): + def __init__(self, head, newscopes): + self.scopes = newscopes + self.head = head + self.ordered = newscopes + update(self, [head] + newscopes) + + jump = head.node.block.jump + keysets = {head.node.blockdict[b.key,False]:jump.reverse.get(b) for b in jump.getNormalSuccessors()} + assert keysets.values().count(None) == 1 + self.ordered_keysets = [keysets[item.entryBlock] for item in newscopes] + + def getScopes(self): return self.scopes diff --git a/src/main/resources/Krakatau-master/Krakatau/java/stringescape.py b/src/main/resources/Krakatau-master/Krakatau/java/stringescape.py new file mode 100644 index 00000000..3016f544 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/stringescape.py @@ -0,0 +1,27 @@ +# double quote, backslash, and newlines are forbidden +ok_chars = " !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~" +ok_chars = frozenset(ok_chars) + +# these characters cannot use unicode escape codes due to the way Java escaping works +late_escape = {u'\u0009':r'\t', u'\u000a':r'\n', u'\u000d':r'\r', u'\u0022':r'\"', u'\u005c':r'\\'} + +def escapeString(u): + if set(u) <= ok_chars: + return u + + escaped = [] + for c in u: + if c in ok_chars: + escaped.append(c) + elif c in late_escape: + escaped.append(late_escape[c]) + else: + i = ord(c) + if i <= 0xFFFF: + escaped.append(r'\u{0:04x}'.format(i)) + else: + i -= 0x10000 + high = 0xD800 + (i>>10) + low = 0xDC00 + (i & 0x3FF) + escaped.append(r'\u{0:04x}\u{1:04x}'.format(high,low)) + return ''.join(escaped) diff --git a/src/main/resources/Krakatau-master/Krakatau/java/structuring.py b/src/main/resources/Krakatau-master/Krakatau/java/structuring.py new file mode 100644 index 00000000..3c36531d --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/structuring.py @@ -0,0 +1,1254 @@ +import collections +from collections import defaultdict as ddict +import itertools + +from .. import graph_util +from ..ssa import objtypes, ssa_jumps +from ..ssa.exceptionset import ExceptionSet + +from .setree import SEBlockItem, SEIf, SEScope, SESwitch, SETry, SEWhile + +# This module is responsible for transforming an arbitrary control flow graph into a tree +# of nested structures corresponding to Java control flow statements. This occurs in +# several main steps +# +# Preprocessing - create graph view and ensure that there are no self loops and every node +# has only one incoming edge type +# Structure loops - ensure every loop has a single entry point. This may result in +# exponential code duplication in pathological cases +# Structure exceptions - create dummy nodes for every throw exception type for every node +# Structure conditionals - order switch targets consistent with fallthrough and create +# dummy nodes where necessary +# Create constraints - sets up the constraints used to represent nested statements +# Merge exceptions - try to merge as any try constraints as possible. This is done by +# extending one until it covers the cases that another one handles, allowing the second +# to be removed +# Parallelize exceptions - freeze try constraints and turn them into multicatch blocks +# where possible (not implemented yet) +# Complete scopes - expand scopes to try to reduce the number of successors +# Add break scopes - add extra scope statements so extra successors can be represented as +# labeled breaks + +######################################################################################### +class DominatorInfo(object): + def __init__(self, root): + self._doms = doms = {root:frozenset([root])} + stack = [root] + while stack: + cur = stack.pop() + assert cur not in stack + for child in cur.successors: + new = doms[cur] | frozenset([child]) + old = doms.get(child) + if new != old: + new = new if old is None else (old & new) + assert child in new + if old is not None: + assert new == old or len(new) < len(old) + if new != old: + doms[child] = new + if child not in stack: + stack.append(child) + self.nodeset = set(self._doms) + self.root = root + + def dominators(self, node): + return self._doms[node] + + def ordered(self, node): # for debugging + return sorted(self._doms[node], key=lambda n:len(self._doms[n])) + + def dominator(self, *nodes): + '''Get the common dominator of nodes''' + doms = reduce(frozenset.intersection, map(self._doms.get, nodes)) + return max(doms, key=lambda n:len(self._doms[n])) + + def set_extend(self, dom, nodes): + nodes = list(nodes) + [dom] + pred_nl_func = lambda x:x.predecessors_nl if x is not dom else [] + return frozenset(graph_util.topologicalSort(nodes, pred_nl_func)) + + def area(self, node): return ClosedSet([k for k,v in self._doms.items() if node in v], node, self) + def extend(self, dom, nodes): return ClosedSet(self.set_extend(dom, nodes), dom, self) + def extend2(self, nodes): return self.extend(self.dominator(*nodes), nodes) + def single(self, head): return ClosedSet([head], head, self) + +# Immutable class representing a dominator closed set of nodes +# TODO clean up usage (remove copy() calls, etc.) +class ClosedSet(object): + __slots__ = "nodes", "head", "info" + + def __init__(self, nodes, head, info): + self.nodes = frozenset(nodes) + self.head = head + self.info = info + if nodes: + assert head in nodes + # assert info.dominator(*nodes) == head + + def touches(self, other): return not self.nodes.isdisjoint(other.nodes) + def isdisjoint(self, other): return self.nodes.isdisjoint(other.nodes) + def issuperset(self, other): return self.nodes.issuperset(other.nodes) + def issubset(self, other): return self.nodes.issubset(other.nodes) + + def __or__(self, other): + assert type(self) == type(other) + + if not other.nodes or self is other: + return self + elif not self.nodes: + return other + assert self.head is not None and other.head is not None + assert self.info is other.info + + if self.head in other.nodes: + self, other = other, self + + nodes, head, info = self.nodes, self.head, self.info + nodes |= other.nodes + if other.head not in self.nodes: + head = info.dominator(head, other.head) + nodes = info.set_extend(head, nodes) + return ClosedSet(nodes, head, info) + + def __and__(self, other): + assert type(self) == type(other) + + nodes = self.nodes & other.nodes + if not nodes: + return ClosedSet.EMPTY + + if self.head in other.nodes: + self, other = other, self + if other.head in self.nodes: + head = other.head + else: + head = self.info.dominator(*nodes) + return ClosedSet(nodes, head, self.info) + + @staticmethod + def union(*sets): + return reduce(ClosedSet.__or__, sets, ClosedSet.EMPTY) + + def __str__(self): # pragma: no cover + return 'set{} ({} nodes)'.format(self.head, len(self.nodes)) + __repr__ = __str__ + + def __lt__(self, other): return self.nodes < other.nodes + def __le__(self, other): return self.nodes <= other.nodes + def __gt__(self, other): return self.nodes > other.nodes + def __ge__(self, other): return self.nodes >= other.nodes +ClosedSet.EMPTY = ClosedSet(frozenset(), None, None) + +######################################################################################### +class ScopeConstraint(object): + def __init__(self, lbound, ubound): + self.lbound = lbound + self.ubound = ubound + +_count = itertools.count() +_gcon_tags = 'while','try','switch','if','scope' +class CompoundConstraint(object): + def __init__(self, tag, head, scopes): + assert tag in _gcon_tags + self.id = next(_count) # for debugging purposes + self.tag = tag + self.scopes = scopes + self.head = head + # self.heads = frozenset([head]) if head is not None else frozenset() + # only used by try constraints, but we leave dummy sets for the rest + self.forcedup = self.forceddown = frozenset() + + self.lbound = ClosedSet.union(*[scope.lbound for scope in self.scopes]) + self.ubound = ClosedSet.union(*[scope.ubound for scope in self.scopes]) + if head is not None: + assert head in self.lbound.nodes and head in self.ubound.nodes + assert self.ubound >= self.lbound + + def __str__(self): # pragma: no cover + return self.tag+str(self.id) + __repr__ = __str__ + +def WhileCon(dom, head): + ubound = dom.area(head) + lbound = dom.extend(head, [n2 for n2 in head.predecessors if head in dom.dominators(n2)]) + return CompoundConstraint('while', None, [ScopeConstraint(lbound, ubound)]) + +def TryCon(dom, trynode, target, cset, catchvar): + trybound = dom.single(trynode) + tryscope = ScopeConstraint(trybound, trybound) + + # Catch scopes are added later, once all the merging is finished + new = CompoundConstraint('try', None, [tryscope]) + new.forcedup = set() + new.forceddown = set() + new.target = target + new.cset = cset + new.catchvar = catchvar + + assert len(new.target.successors) == 1 + new.orig_target = new.target.successors[0] + return new + +def FixedScopeCon(lbound): + return CompoundConstraint('scope', None, [ScopeConstraint(lbound, lbound)]) +######################################################################################### + +def structureLoops(nodes): + todo = nodes + while_heads = [] + while todo: + newtodo = [] + temp = set(todo) + sccs = graph_util.tarjanSCC(todo, lambda block:[x for x in block.predecessors if x in temp]) + + for scc in sccs: + if len(scc) <= 1: + continue + + scc_set = set(scc) + entries = [n for n in scc if not scc_set.issuperset(n.predecessors)] + assert len(entries) == 1 + head = entries[0] + + newtodo.extend(scc) + newtodo.remove(head) + while_heads.append(head) + todo = newtodo + return while_heads + +def structureExceptions(nodes): + thrownodes = [n for n in nodes if n.block and isinstance(n.block.jump, ssa_jumps.OnException)] + + newinfos = [] + for n in thrownodes: + manager = n.block.jump.cs + assert len(n.block.jump.params) == 1 + thrownvar = n.block.jump.params[0] + + mycsets = {} + mytryinfos = [] + newinfos.append((n, manager.mask, mycsets, mytryinfos)) + + for handler, cset in manager.sets.items(): + en = n.blockdict[handler.key, True] + mycsets[en] = cset + + en.predecessors.remove(n) + n.successors.remove(en) + + caughtvars = [v2 for (v1,v2) in zip(n.outvars[en], en.invars) if v1 == thrownvar] + assert len(caughtvars) <= 1 + caughtvar = caughtvars.pop() if caughtvars else None + outvars = n.outvars.pop(en)[:] + assert outvars.count(thrownvar) <= 1 + if caughtvar is not None: + outvars[outvars.index(thrownvar)] = None + + for tt in cset.getTopTTs(): + top = ExceptionSet.fromTops(cset.env, objtypes.className(tt)) + new = en.indirectEdges([]) + new.predecessors.append(n) + n.successors.append(new) + n.eassigns[new] = outvars # should be safe to avoid copy as we'll never modify it + nodes.append(new) + mytryinfos.append((top, new, caughtvar)) + + return newinfos + +def structureConditionals(entryNode, nodes): + dom = DominatorInfo(entryNode) + switchnodes = [n for n in nodes if n.block and isinstance(n.block.jump, ssa_jumps.Switch)] + ifnodes = [n for n in nodes if n.block and isinstance(n.block.jump, ssa_jumps.If)] + + # For switch statements, we can't just blithely indirect all targets as that interferes with fallthrough behavior + switchinfos = [] + for n in switchnodes: + targets = n.successors + # a proper switch block must be dominated by its entry point + # and all other nonloop predecessors must be dominated by a single other target + # keep track of remaining good targets, bad ones will be found later by elimination + target_set = frozenset(targets) + good = [] + parents = {} + for target in targets: + if n not in dom.dominators(target): + continue + + preds = [x for x in target.predecessors if x != n and target not in dom.dominators(x)] + for pred in preds: + choices = dom.dominators(pred) & target_set + if len(choices) != 1: + break + choice = min(choices) + if parents.setdefault(target, choice) != choice: + break + else: + # passed all the tests for now, target appears valid + good.append(target) + + while 1: + size = len(parents), len(good) + # prune bad parents and children from dict + for k,v in parents.items(): + if k not in good: + del parents[k] + elif v not in good: + del parents[k] + good.remove(k) + + # make sure all parents are unique. In case they're not, choose one arbitrarily + chosen = {} + for target in good: + if target in parents and chosen.setdefault(parents[target], target) != target: + del parents[target] + good.remove(target) + + if size == (len(parents), len(good)): # nothing changed this iteration + break + + # Now we need an ordering of the good blocks consistent with fallthrough + # regular topoSort can't be used since we require chains to be immediately contiguous + # which a topological sort doesn't garuentee + children = {v:k for k,v in parents.items()} + leaves = [x for x in good if x not in children] + ordered = [] + for leaf in leaves: + cur = leaf + while cur is not None: + ordered.append(cur) + cur = parents.get(cur) + ordered = ordered[::-1] + assert len(ordered) == len(good) + + # now handle the bad targets + for x in targets: + if x not in good: + new = x.indirectEdges([n]) + nodes.append(new) + ordered.append(new) + assert len(ordered) == len(targets) + switchinfos.append((n, ordered)) + + # if we added new nodes, update dom info + if len(good) < len(targets): + dom = DominatorInfo(entryNode) + + # Now handle if statements. This is much simpler since we can just indirect everything + ifinfos = [] + for n in ifnodes: + targets = [x.indirectEdges([n]) for x in n.successors[:]] + nodes.extend(targets) + ifinfos.append((n, targets)) + return switchinfos, ifinfos + +def createConstraints(dom, while_heads, newtryinfos, switchinfos, ifinfos): + constraints = [] + for head in while_heads: + constraints.append(WhileCon(dom, head)) + + masks = {n:mask for n, mask, _, _ in newtryinfos} + forbid_dicts = ddict(lambda:masks.copy()) + for n, mask, csets, tryinfos in newtryinfos: + for ot, cset in csets.items(): + forbid_dicts[ot][n] -= cset + for forbid in forbid_dicts.values(): + for k in forbid.keys(): + if not forbid[k]: + del forbid[k] + + for n, mask, csets, tryinfos in newtryinfos: + cons = [TryCon(dom, n, target, top, caughtvar) for top, target, caughtvar in tryinfos] + + for con, con2 in itertools.product(cons, repeat=2): + if con is con2: + continue + if not (con.cset - con2.cset): # cset1 is subset of cset2 + assert con2.cset - con.cset + con.forcedup.add(con2) + con2.forceddown.add(con) + + for con in cons: + con.forbidden = forbid_dicts[con.orig_target].copy() + + if n in con.forbidden: + for con2 in con.forceddown: + con.forbidden[n] -= con2.cset + assert con.cset.isdisjoint(con.forbidden[n]) + if not con.forbidden[n]: + del con.forbidden[n] + assert all(con.forbidden.values()) + constraints.extend(cons) + + for n, ordered in switchinfos: + last = [] + scopes = [] + for target in reversed(ordered): + # find all nodes which fallthrough to the next switch block + # these must be included in the current switch block + fallthroughs = [x for x in last if target in dom.dominators(x)] + assert n not in fallthroughs + assert(len(last) - len(fallthroughs) <= 1) # every predecessor should be accounted for except n itself + last = [x for x in target.predecessors if target not in dom.dominators(x)] # make sure not to include backedges + + lbound = dom.extend(target, fallthroughs) + ubound = dom.area(target) + assert lbound <= ubound and n not in ubound.nodes + scopes.append(ScopeConstraint(lbound, ubound)) + con = CompoundConstraint('switch', n, list(reversed(scopes))) + constraints.append(con) + + for n, targets in ifinfos: + scopes = [] + for target in targets: + lbound = dom.single(target) + ubound = dom.area(target) + scopes.append(ScopeConstraint(lbound, ubound)) + con = CompoundConstraint('if', n, scopes) + constraints.append(con) + + return constraints + +def orderConstraints(dom, constraints, nodes): + DummyParent = None # dummy root + children = ddict(list) + frozen = set() + + node_set = ClosedSet(nodes, dom.root, dom) + assert set(dom._doms) == node_set.nodes + for item in constraints: + assert item.lbound <= node_set + assert item.ubound <= node_set + for scope in item.scopes: + assert scope.lbound <= node_set + assert scope.ubound <= node_set + + todo = constraints[:] + while todo: + items = [] + queue = [todo[0]] + iset = set(queue) # set of items to skip when expanding connected component + nset = ClosedSet.EMPTY + parents = set() # items that must be above the entire component + + # Find a connected component of non frozen constraints based on intersecting lbounds + while queue: + item = queue.pop() + if item in frozen: + parents.add(item) + continue + items.append(item) + + # forcedup/down are sets so to maintain deterministic behavior we have to sort them + # use key of target for sorting, since that should be unique + temp = (item.forcedup | item.forceddown) - iset + iset |= temp + assert all(fcon.tag == 'try' for fcon in temp) + assert len(set(fcon.target._key for fcon in temp)) == len(temp) + queue += sorted(temp, key=lambda fcon:fcon.target._key) + + if not item.lbound.issubset(nset): + nset |= item.lbound + hits = [i2 for i2 in constraints if nset.touches(i2.lbound)] + queue += [i2 for i2 in hits if not i2 in iset and not iset.add(i2)] + assert nset <= node_set and nset.nodes + + # Find candidates for the new root of the connected component. + # It must have a big enough ubound and also can't have nonfrozen forced parents + candidates = [i for i in items if i.ubound.issuperset(nset)] + candidates = [i for i in candidates if i.forcedup.issubset(frozen)] + + # make sure for each candidate that all of the nested items fall within a single scope + cscope_assigns = [] + for cnode in candidates: + svals = ddict(lambda:ClosedSet.EMPTY) + bad = False + for item in items: + if item is cnode: + continue + + scopes = [s for s in cnode.scopes if item.lbound.touches(s.ubound)] + if len(scopes) != 1 or not scopes[0].ubound.issuperset(item.lbound): + bad = True + break + svals[scopes[0]] |= item.lbound + + if not bad: + cscope_assigns.append((cnode, svals)) + + cnode, svals = cscope_assigns.pop() # choose candidate arbitrarily if more than 1 + assert len(svals) <= len(cnode.scopes) + for scope, ext in svals.items(): + scope.lbound |= ext + assert scope.lbound <= scope.ubound + + cnode.lbound |= nset # should be extended too + assert cnode.lbound <= cnode.ubound + # assert(cnode.lbound == (cnode.heads.union(*[s.lbound for s in cnode.scopes]))) TODO + + # find lowest parent + parent = DummyParent + while not parents.isdisjoint(children[parent]): + temp = parents.intersection(children[parent]) + assert len(temp) == 1 + parent = temp.pop() + + if parent is not None: + assert cnode.lbound <= parent.lbound + + children[parent].append(cnode) + todo.remove(cnode) + frozen.add(cnode) + + # make sure items are nested + for k, v in children.items(): + temp = set() + for child in v: + assert temp.isdisjoint(child.lbound.nodes) + temp |= child.lbound.nodes + assert k is None or temp <= k.lbound.nodes + + # Add a root so it is a tree, not a forest + croot = FixedScopeCon(node_set) + children[croot] = children[None] + del children[None] + return croot, children + +def mergeExceptions(dom, children, constraints, nodes): + parents = {} # con -> parent, parentscope + for k, cs in children.items(): + for child in cs: + scopes = [s for s in k.scopes if s.lbound.touches(child.lbound)] + assert child not in parents and len(scopes) == 1 + parents[child] = k, scopes[0] + assert set(parents) == set(constraints) + + def removeFromTree(con): + parent, pscope = parents[con] + children[parent] += children[con] + for x in children[con]: + scopes = [s for s in parent.scopes if s.lbound.touches(x.lbound)] + parents[x] = parent, scopes[0] + children[parent].remove(con) + del children[con] + del parents[con] + + def insertInTree(con, parent): + scopes = [s for s in parent.scopes if s.lbound.touches(con.lbound)] + parents[con] = parent, scopes[0] + children[con] = [] + + for scope in con.scopes: + hits = [c for c in children[parent] if c.lbound.touches(scope.lbound)] + for child in hits: + assert parents[child][0] == parent + parents[child] = con, scope + children[con].append(child) + children[parent].remove(child) + children[parent].append(con) + + def unforbid(forbidden, newdown): + for n in newdown.lbound.nodes: + if n in forbidden: + forbidden[n] -= newdown.cset + if not forbidden[n]: + del forbidden[n] + + def tryExtend(con, newblocks, xCSet, xUps, xDowns, removed): + forcedup = con.forcedup | xUps + forceddown = con.forceddown | xDowns + assert con not in forceddown + forcedup.discard(con) + if forcedup & forceddown: + return False + + body = con.lbound | newblocks + ubound = con.ubound + for tcon in forcedup: + ubound &= tcon.lbound + + while 1: + done = True + parent, pscope = parents[con] + # Ugly hack to work around the fact that try bodies are temporarily stored + # in the main constraint, not its scopes + while not body <= (parent if parent.tag == 'try' else pscope).lbound: + # Try to extend parent rather than just failing + if parent.tag == 'try' and parent in forcedup: + # Note this call may mutate the parent + done = not tryExtend(parent, body, ExceptionSet.EMPTY, set(), set(), removed) + # Since the tree may have been updated, start over and rewalk the tree + if not done: + break + + body |= parent.lbound + if parent in forcedup or not body <= ubound: + return False + parent, pscope = parents[parent] + if done: + break + + for child in children[parent]: + if child.lbound.touches(body): + body |= child.lbound + if not body <= ubound: + return False + + cset = con.cset | xCSet + forbidden = con.forbidden.copy() + for newdown in (forceddown - con.forceddown): + unforbid(forbidden, newdown) + assert all(forbidden.values()) + + for node in body.nodes: + if node in forbidden and (cset & forbidden[node]): + # The current cset is not compatible with the current partial order + # Try to find some cons to force down in order to fix this + bad = cset & forbidden[node] + candidates = [c for c in trycons if c not in removed] + candidates = [c for c in candidates if node in c.lbound.nodes and c.lbound.issubset(body)] + candidates = [c for c in candidates if (c.cset & bad)] + candidates = [c for c in candidates if c not in forcedup and c is not con] + + for topnd in candidates: + if topnd in forceddown: + continue + + temp = topnd.forceddown - forceddown - removed + temp.add(topnd) + for newdown in temp: + unforbid(forbidden, newdown) + + assert con not in temp + forceddown |= temp + bad = cset & forbidden.get(node, ExceptionSet.EMPTY) + if not bad: + break + if bad: + assert node not in con.lbound.nodes or cset - con.cset + return False + assert forceddown.isdisjoint(forcedup) + assert all(forbidden.values()) + for tcon in forceddown: + assert tcon.lbound <= body + + # At this point, everything should be all right, so we need to update con and the tree + con.lbound = body + con.cset = cset + con.forbidden = forbidden + con.forcedup = forcedup + con.forceddown = forceddown + con.scopes[0].lbound = body + con.scopes[0].ubound = ubound + + for new in con.forceddown: + new.forcedup.add(con) + new.forcedup |= forcedup + + for new in con.forcedup: + unforbid(new.forbidden, con) + for new2 in forceddown - new.forceddown: + unforbid(new.forbidden, new2) + new.forceddown.add(con) + new.forceddown |= forceddown + + # Move con into it's new position in the tree + removeFromTree(con) + insertInTree(con, parent) + return True + + trycons = [con for con in constraints if con.tag == 'try'] + # print 'Merging exceptions ({1}/{0}) trys'.format(len(constraints), len(trycons)) + topoorder = graph_util.topologicalSort(constraints, lambda cn:([parents[cn]] if cn in parents else [])) + trycons = sorted(trycons, key=topoorder.index) + # note that the tree may be changed while iterating, but constraints should only move up + + removed = set() + for con in trycons: + if con in removed: + continue + + # First find the actual upper bound for the try scope, since it's only the one node on creation + # However, for now we set ubound to be all nodes not reachable from catch, instead of only those + # dominated by the try node. That way we can expand and merge it. We'll fix it up once we're done + assert len(con.lbound.nodes) == 1 + tryhead = con.lbound.head + backnodes = dom.dominators(tryhead) + catchreach = graph_util.topologicalSort([con.target], lambda node:[x for x in node.successors if x not in backnodes]) + ubound_s = set(nodes) - set(catchreach) + con.ubound = ClosedSet(ubound_s, dom.root, dom) + + # Now find which cons we can try to merge with + candidates = [c for c in trycons if c not in removed and c.orig_target == con.orig_target] + candidates = [c for c in candidates if c.lbound.issubset(con.ubound)] + candidates = [c for c in candidates if c not in con.forcedup] + candidates.remove(con) + + success = {} + for con2 in candidates: + success[con2] = tryExtend(con, con2.lbound, con2.cset, con2.forcedup, con2.forceddown, removed) + + # Now find which ones can be removed + def removeable(con2): + okdiff = set([con,con2]) + if con2.lbound <= (con.lbound): + if con2.forceddown <= (con.forceddown | okdiff): + if con2.forcedup <= (con.forcedup | okdiff): + if not con2.cset - con.cset: + return True + return False + + for con2 in candidates: + # Note that since our tryExtend is somewhat conservative, in rare cases we + # may find that we can remove a constraint even if tryExtend failed on it + # but the reverse should obviously never happen + if not removeable(con2): + assert not success[con2] + continue + + removed.add(con2) + for tcon in trycons: + if tcon not in removed and tcon is not con: + assert con in tcon.forceddown or con2 not in tcon.forceddown + assert con in tcon.forcedup or con2 not in tcon.forcedup + tcon.forcedup.discard(con2) + tcon.forceddown.discard(con2) + + assert con not in removed + removeFromTree(con2) + + # Cleanup + removed_nodes = frozenset(c.target for c in removed) + constraints = [c for c in constraints if c not in removed] + trycons = [c for c in trycons if c not in removed] + + for con in trycons: + assert not con.forcedup & removed + assert not con.forceddown & removed + + # For convienence, we were previously storing the try scope bounds in the main constraint bounds + assert len(con.scopes)==1 + tryscope = con.scopes[0] + tryscope.lbound = con.lbound + tryscope.ubound = con.ubound + # print 'Merging done' + # print dict(collections.Counter(con.tag for con in constraints)) + + # Now fix up the nodes. This is a little tricky. + # Note, the _nl lists are also invalidated. They're fixed below once we create the new dom info + nodes = [n for n in nodes if n not in removed_nodes] + for node in nodes: + node.predecessors = [x for x in node.predecessors if x not in removed_nodes] + + # start with normal successors and add exceptions back in + node.successors = [x for x in node.successors if x in node.outvars] + if node.eassigns: + temp = {k.successors[0]:v for k,v in node.eassigns.items()} + node.eassigns = ea = {} + + for con in trycons: + if node in con.lbound.nodes and con.orig_target in temp: + ea[con.target] = temp[con.orig_target] + if node not in con.target.predecessors: + con.target.predecessors.append(node) + node.successors.append(con.target) + assert len(ea) >= len(temp) + assert removed_nodes.isdisjoint(node.successors) + assert dom.root not in removed_nodes + + # Regenerate dominator info to take removed nodes into account + node_set = set(nodes) + dom = DominatorInfo(dom.root) + assert set(dom._doms) == node_set + calcNoLoopNeighbors(dom, nodes) + + def fixBounds(item): + # note, we have to recalculate heads here too due to the altered graph + oldl, oldu = item.lbound, item.ubound + item.lbound = dom.extend2(item.lbound.nodes - removed_nodes) + item.ubound = _dominatorUBoundClosure(dom, item.ubound.nodes - removed_nodes, item.ubound.head) + assert item.lbound.nodes <= oldl.nodes and item.ubound.nodes <= oldu.nodes + + for con in constraints: + fixBounds(con) + for scope in con.scopes: + fixBounds(scope) + return dom, constraints, nodes + +def fixTryConstraints(dom, constraints): + # Add catchscopes and freeze other relations + for con in constraints: + if con.tag != 'try': + continue + + lbound = dom.single(con.target) + ubound = dom.area(con.target) + cscope = ScopeConstraint(lbound, ubound) + con.scopes.append(cscope) + + # After this point, forced relations and cset are frozen + # So if a node is forbbiden, we can't expand to it at all + cset = con.cset + tscope = con.scopes[0] + + empty = ExceptionSet.EMPTY + ubound_s = set(x for x in tscope.ubound.nodes if not (cset & con.forbidden.get(x, empty))) + # Note, we use lbound head, not ubound head! The part dominated by lbound is what we actually care about + tscope.ubound = _dominatorUBoundClosure(dom, ubound_s, tscope.lbound.head) + del con.forbidden + + con.lbound = tscope.lbound | cscope.lbound + con.ubound = tscope.ubound | cscope.ubound + assert tscope.lbound.issubset(tscope.ubound) + assert tscope.ubound.isdisjoint(cscope.ubound) + +def _dominatorUBoundClosure(dom, ubound_s, head): + # Make sure ubound is dominator closed by removing nodes + ubound_s = set(x for x in ubound_s if head in dom.dominators(x)) + assert head in ubound_s + done = len(ubound_s) <= 1 + while not done: + done = True + for x in list(ubound_s): + xpreds_nl = [y for y in x.predecessors if x not in dom.dominators(y)] # pred nl list may not have been created yet + if x != head and not ubound_s.issuperset(xpreds_nl): + done = False + ubound_s.remove(x) + break + assert ubound_s == dom.extend(head, ubound_s).nodes + return ClosedSet(ubound_s, head, dom) + +def _augmentingPath(startnodes, startset, endset, used, backedge, bound): + # Find augmenting path via BFS + # To make sure each node is used only once we treat it as if it were two nodes connected + # by an internal edge of capacity 1. However, to save time we don't explicitly model this + # instead it is encoded by the used set and rules on when we can go forward and backwards + queue = collections.deque([(n,True,(n,)) for n in startnodes if n not in used]) + + seen = set((n,True) for n in startnodes) + while queue: + pos, lastfw, path = queue.popleft() + canfwd = not lastfw or pos not in used + canback = pos in used and pos not in startset + + if canfwd: + if pos in endset: # success! + return path, None + successors = [x for x in pos.norm_suc_nl if x in bound] + for pos2 in successors: + if (pos2, True) not in seen: + seen.add((pos2, True)) + queue.append((pos2, True, path+(pos2,))) + if canback: + pos2 = backedge[pos] + if (pos2, False) not in seen: + seen.add((pos2, False)) + queue.append((pos2, False, path+(pos2,))) + # queue is empty but we didn't find anything + return None, set(x for x,front in seen if front) + +def _mincut(startnodes, endnodes, bound): + startset = frozenset(startnodes) + endset = frozenset(endnodes) + bound = bound | endset + used = set() + backedge = {} + + while 1: + oldlen = len(used) + path, lastseen = _augmentingPath(startnodes, startset, endset, used, backedge, bound) + if path is None: + return lastseen | (startset & used) + + assert path[0] in startset and path[-1] in endset + assert path[0] not in used + + for pos, last in zip(path, (None,)+path): + # In the case of a backward edge, there's nothing to do since it was already part of a used path + used.add(pos) + if last is not None and pos in last.norm_suc_nl: # normal forward edge + backedge[pos] = last + + assert len(used) > oldlen + assert set(backedge) == (used - startset) + +def completeScopes(dom, croot, children, isClinit): + parentscope = {} + for k, v in children.items(): + for child in v: + pscopes = [scope for scope in k.scopes if child.lbound.issubset(scope.lbound)] + assert len(pscopes)==1 + parentscope[child] = pscopes[0] + + nodeorder = graph_util.topologicalSort([dom.root], lambda n:n.successors_nl) + nodeorder = {n:-i for i,n in enumerate(nodeorder)} + + stack = [croot] + while stack: + parent = stack.pop() + + # The problem is that when processing one child, we may want to extend it to include another child + # We solve this by freezing already processed children and ordering them heuristically + # TODO - find a better way to handle this + revorder = sorted(children[parent], key=lambda cnode:(-nodeorder[cnode.lbound.head], len(cnode.ubound.nodes))) + frozen_nodes = set() + + while revorder: + cnode = revorder.pop() + if cnode not in children[parent]: # may have been made a child of a previously processed child + continue + + scopes = [s for s in parent.scopes if s.lbound.touches(cnode.lbound)] + assert len(scopes)==1 + + ubound = cnode.ubound & scopes[0].lbound + ubound_s = ubound.nodes - frozen_nodes + for other in revorder: + if not ubound_s.issuperset(other.lbound.nodes): + ubound_s -= other.lbound.nodes + if isClinit: + # Avoid inlining return block so that it's always at the end and can be pruned later + ubound_s = set(n for n in ubound_s if n.block is None or not isinstance(n.block.jump, ssa_jumps.Return)) + + ubound = _dominatorUBoundClosure(dom, ubound_s, cnode.lbound.head) + assert ubound.issuperset(cnode.lbound) + body = cnode.lbound + + # Be careful to make sure the order is deterministic + temp = set(body.nodes) + parts = [n.norm_suc_nl for n in sorted(body.nodes, key=nodeorder.get)] + startnodes = [n for n in itertools.chain(*parts) if not n in temp and not temp.add(n)] + + temp = set(ubound.nodes) + parts = [n.norm_suc_nl for n in sorted(ubound.nodes, key=nodeorder.get)] + endnodes = [n for n in itertools.chain(*parts) if not n in temp and not temp.add(n)] + + # Now use Edmonds-Karp, modified to find min vertex cut + lastseen = _mincut(startnodes, endnodes, ubound.nodes) + + # Now we have the max flow, try to find the min cut + # Just use the set of nodes visited during the final BFS + interior = [x for x in (lastseen & ubound.nodes) if lastseen.issuperset(x.norm_suc_nl)] + + # TODO - figure out a cleaner way to do this + if interior: + body |= dom.extend(dom.dominator(*interior), interior) + assert body.issubset(ubound) + # The new cut may get messed up by the inclusion of extra children. But this seems unlikely + newchildren = [] + for child in revorder: + if child.lbound.touches(body): + body |= child.lbound + newchildren.append(child) + + assert body.issubset(ubound) + cnode.lbound = body + for scope in cnode.scopes: + scope.lbound |= (body & scope.ubound) + + children[cnode].extend(newchildren) + children[parent] = [c for c in children[parent] if c not in newchildren] + frozen_nodes |= body.nodes + + # Note this is only the immediate children, after some may have been moved down the tree during previous processing + stack.extend(children[parent]) + +# Class used for the trees created internally while deciding where to create scopes +class _mnode(object): + def __init__(self, head): + self.head = head + self.nodes = set() + self.items = [] + # externally set fields: children top selected subtree depth + # def __str__(self): return 'M'+str(self.head)[3:] + # __repr__ = __str__ + +def _addBreak_sub(dom, rno_get, body, childcons): + # Create dom* tree + # This is a subset of dominators that dominate all nodes reachable from themselves + # These "super dominators" are the places where it is possible to create a break scope + + domC = {n:dom.dominators(n) for n in body} + for n in sorted(body, key=rno_get): # reverse topo order + for n2 in n.successors_nl: + if n2 not in body: + continue + domC[n] &= domC[n2] + assert domC[n] + + heads = set(n for n in body if n in domC[n]) # find the super dominators + depths = {n:len(v) for n,v in domC.items()} + parentC = {n:max(v & heads, key=depths.get) for n,v in domC.items()} # find the last dom* parent + assert all((n == parentC[n]) == (n in heads) for n in body) + + # Make sure this is deterministicly ordered + mdata = collections.OrderedDict((k,_mnode(k)) for k in sorted(heads, key=rno_get)) + for n in body: + mdata[parentC[n]].nodes.add(n) + for item in childcons: + head = parentC[item.lbound.head] + mdata[head].items.append(item) + mdata[head].nodes |= item.lbound.nodes + assert mdata[head].nodes <= body + assert set(mdata) <= heads + + # Now merge nodes until they no longer cross item boundaries, i.e. they don't intersect + for h in heads: + if h not in mdata: + continue + + hits = mdata[h].nodes.intersection(mdata) + while len(hits) > 1: + hits.remove(h) + for h2 in hits: + assert h in domC[h2] and h2 not in domC[h] + mdata[h].nodes |= mdata[h2].nodes + mdata[h].items += mdata[h2].items + del mdata[h2] + hits = mdata[h].nodes.intersection(mdata) + assert hits == set([h]) + + # Now that we have the final set of heads, fill in the tree data + # for each mnode, we need to find its immediate parent + ancestors = {h:domC[h].intersection(mdata) for h in mdata} + mparents = {h:(sorted(v,key=depths.get)[-2] if len(v) > 1 else None) for h,v in ancestors.items()} + + for h, mnode in mdata.items(): + mnode.top = True + mnode.selected = [mnode] + mnode.subtree = [mnode] + # Note, this is max nesting depth, NOT depth in the tree + mnode.depth = 1 if mnode.items else 0 + if any(item.tag == 'switch' for item in mnode.items): + mnode.depth = 2 + mnode.tiebreak = rno_get(h) + + assert h in mnode.nodes and len(mnode.nodes) >= len(mnode.items) + mnode.children = [mnode2 for h2, mnode2 in mdata.items() if mparents[h2] == h] + + revorder = graph_util.topologicalSort(mdata.values(), lambda mn:mn.children) + assert len(revorder) == len(mdata) + assert sum(len(mn.children) for mn in revorder) == len(revorder)-1 + + # Now partition tree into subtrees, trying to minimize max nesting + for mnode in revorder: + if mnode.children: + successor = max(mnode.children, key=lambda mn:(mn.depth, len(mn.subtree), mn.tiebreak)) + + depths = sorted(mn.depth for mn in mnode.children) + temp = max(d-i for i,d in enumerate(depths)) + mnode.depth = max(mnode.depth, temp+len(mnode.children)-1) + + for other in mnode.children: + if other is successor: + continue + other.top = False + mnode.selected += other.subtree + mnode.subtree = mnode.selected + successor.subtree + for subnode in mnode.selected[1:]: + subnode.top = False + assert mnode.top + assert len(set(mnode.subtree)) == len(mnode.subtree) + + results = [] + for root in revorder: + if not root.top: + continue + nodes, items = set(), [] + for mnode in root.selected: + nodes |= mnode.nodes + items += mnode.items + results.append((nodes, items)) + + temp = list(itertools.chain.from_iterable(zip(*results)[1])) + assert len(temp) == len(childcons) and set(temp) == set(childcons) + return results + +def addBreakScopes(dom, croot, constraints, children): + nodeorder = graph_util.topologicalSort([dom.root], lambda n:n.successors_nl) + nodeorder = {n:i for i,n in enumerate(nodeorder)} + rno_get = nodeorder.get # key for sorting nodes in rev. topo order + + stack = [croot] + while stack: + cnode = stack.pop() + oldchildren = children[cnode][:] + newchildren = children[cnode] = [] + + for scope in cnode.scopes: + subcons = [c for c in oldchildren if c.lbound <= scope.lbound] + + results = _addBreak_sub(dom, rno_get, scope.lbound.nodes, subcons) + results = [t for t in results if len(t[0]) > 1] + + for nodes, items in results: + if len(items) == 1 and items[0].lbound.nodes == nodes: + new = items[0] # no point wrapping it in a scope if it already has identical body + else: + head = dom.dominator(*nodes) + body = dom.extend(head, nodes) + assert body.nodes == nodes + + new = FixedScopeCon(body) + constraints.append(new) + children[new] = items + newchildren.append(new) + stack.append(new) + _checkNested(children) + +def constraintsToSETree(dom, croot, children, nodes): + seitems = {n:SEBlockItem(n) for n in nodes} # maps entryblock -> item + + # iterate over tree in reverse topological order (bottom up) + revorder = graph_util.topologicalSort([croot], lambda cn:children[cn]) + for cnode in revorder: + sescopes = [] + for scope in cnode.scopes: + pos, body = scope.lbound.head, scope.lbound.nodes + items = [] + while pos is not None: + item = seitems[pos] + del seitems[pos] + items.append(item) + suc = [n for n in item.successors if n in body] + assert len(suc) <= 1 + pos = suc[0] if suc else None + + newscope = SEScope(items) + sescopes.append(newscope) + assert newscope.nodes == frozenset(body) + + if cnode.tag in ('if','switch'): + head = seitems[cnode.head] + assert isinstance(head, SEBlockItem) + del seitems[cnode.head] + + new = None + if cnode.tag == 'while': + new = SEWhile(sescopes[0]) + elif cnode.tag == 'if': + # ssa_jump stores false branch first, but ast gen assumes true branch first + sescopes = [sescopes[1], sescopes[0]] + new = SEIf(head, sescopes) + elif cnode.tag == 'switch': + # Switch fallthrough can only be done implicitly, but we may need to jump to it + # from arbitrary points in the scope, so we add an extra scope so we have a + # labeled break. If unnecessary, it should be removed later on anyway + sescopes = [SEScope([sescope]) for sescope in sescopes] + new = SESwitch(head, sescopes) + elif cnode.tag == 'try': + catchtts = cnode.cset.getTopTTs() + catchvar = cnode.catchvar + new = SETry(sescopes[0], sescopes[1], catchtts, catchvar) + elif cnode.tag == 'scope': + new = sescopes[0] + + assert new.nodes == cnode.lbound.nodes + assert new.entryBlock not in seitems + seitems[new.entryBlock] = new + + assert len(seitems) == 1 + assert isinstance(seitems.values()[0], SEScope) + return seitems.values()[0] + +def _checkNested(ctree_children): + # Check tree for proper nesting + for k, children in ctree_children.items(): + for child in children: + assert child.lbound <= k.lbound + assert child.lbound <= child.ubound + scopes = [s for s in k.scopes if s.ubound.touches(child.lbound)] + assert len(scopes) == 1 + + for c1, c2 in itertools.combinations(child.scopes, 2): + assert c1.lbound.isdisjoint(c2.lbound) + assert c1.ubound.isdisjoint(c2.ubound) + + for c1, c2 in itertools.combinations(children, 2): + assert c1.lbound.isdisjoint(c2.lbound) + +def _debug_draw(nodes, outn=''): + import pygraphviz as pgv + G=pgv.AGraph(directed=True) + G.add_nodes_from(nodes) + for n in nodes: + for n2 in n.successors: + color = 'black' + if isinstance(n.block.jump, ssa_jumps.OnException): + if any(b.key == n2.bkey for b in n.block.jump.getExceptSuccessors()): + color = 'grey' + # color = 'black' if n2 in n.outvars else 'gray' + G.add_edge(n, n2, color=color) + G.layout(prog='dot') + G.draw('file{}.png'.format(outn)) + +def calcNoLoopNeighbors(dom, nodes): + for n in nodes: + n.successors_nl = [x for x in n.successors if x not in dom.dominators(n)] + n.predecessors_nl = [x for x in n.predecessors if n not in dom.dominators(x)] + n.norm_suc_nl = [x for x in n.successors_nl if x in n.outvars] + for n in nodes: + for n2 in n.successors_nl: + assert n in n2.predecessors_nl + for n2 in n.predecessors_nl: + assert n in n2.successors_nl + +def structure(entryNode, nodes, isClinit): + # print 'structuring' + # eliminate self loops + for n in nodes[:]: + if n in n.successors: + nodes.append(n.indirectEdges([n])) + + # inline returns if possible + retblocks = [n for n in nodes if n.block and isinstance(n.block.jump, ssa_jumps.Return)] + if retblocks and not isClinit: + assert len(retblocks) == 1 + ret = retblocks[0] + for pred in ret.predecessors[1:]: + new = ret.newDuplicate() + new.predecessors = [pred] + pred.replaceSuccessors({ret:new}) + nodes.append(new) + ret.predecessors = ret.predecessors[:1] + + for n in nodes: + for x in n.predecessors: + assert n in x.successors + for x in n.successors: + assert n in x.predecessors + assert set(n.successors) == (set(n.outvars) | set(n.eassigns)) + + # note, these add new nodes (list passed by ref) + while_heads = structureLoops(nodes) + newtryinfos = structureExceptions(nodes) + switchinfos, ifinfos = structureConditionals(entryNode, nodes) + + # At this point graph modification is largely done so we can calculate and store dominator info + # this will be invalidated and recalculated near the end of mergeExceptions + dom = DominatorInfo(entryNode) + calcNoLoopNeighbors(dom, nodes) + + constraints = createConstraints(dom, while_heads, newtryinfos, switchinfos, ifinfos) + croot, ctree_children = orderConstraints(dom, constraints, nodes) + + # print 'exception merging' + # May remove nodes (and update dominator info) + dom, constraints, nodes = mergeExceptions(dom, ctree_children, constraints, nodes) + + # TODO - parallelize exceptions + fixTryConstraints(dom, constraints) + + # After freezing the try constraints we need to regenerate the tree + croot, ctree_children = orderConstraints(dom, constraints, nodes) + + # print 'completing scopes' + _checkNested(ctree_children) + completeScopes(dom, croot, ctree_children, isClinit) + + # print 'adding breaks' + _checkNested(ctree_children) + addBreakScopes(dom, croot, constraints, ctree_children) + _checkNested(ctree_children) + + return constraintsToSETree(dom, croot, ctree_children, nodes) diff --git a/src/main/resources/Krakatau-master/Krakatau/java/throws.py b/src/main/resources/Krakatau-master/Krakatau/java/throws.py new file mode 100644 index 00000000..5d39eee7 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/throws.py @@ -0,0 +1,48 @@ +from ..ssa import objtypes + +from . import ast + +# A simple throws declaration inferrer that only considers throw statements within the method +# this is mostly just useful to make sure the ExceptionHandlers test compiles + +def _visit_statement(env, stmt): + if isinstance(stmt, ast.ThrowStatement): + return stmt.expr.dtype + + result = objtypes.NullTT + if isinstance(stmt, ast.TryStatement): + caught_types = [] + for catch, b in stmt.pairs: + caught_types.extend(objtypes.className(tn.tt) for tn in catch.typename.tnames) + if objtypes.ThrowableTT not in caught_types: + temp = _visit_statement(env, stmt.tryb) + if temp != objtypes.NullTT: + assert objtypes.dim(temp) == 0 + name = objtypes.className(temp) + if not any(env.isSubclass(name, caught) for caught in caught_types): + result = temp + + statements = zip(*stmt.pairs)[1] + elif isinstance(stmt, ast.StatementBlock): + statements = stmt.statements + else: + statements = stmt.getScopes() + + for sub in statements: + if result == objtypes.ThrowableTT: + break + result = objtypes.commonSupertype(env, [result, _visit_statement(env, sub)]) + + if result != objtypes.NullTT: + if env.isSubclass(objtypes.className(result), 'java/lang/RuntimeException'): + return objtypes.NullTT + return result + +def addSingle(env, meth_asts): + for meth in meth_asts: + if not meth.body: + continue + tt = _visit_statement(env, meth.body) + assert objtypes.commonSupertype(env, [tt, objtypes.ThrowableTT]) == objtypes.ThrowableTT + if tt != objtypes.NullTT: + meth.throws = ast.TypeName(tt) diff --git a/src/main/resources/Krakatau-master/Krakatau/java/visitor.py b/src/main/resources/Krakatau-master/Krakatau/java/visitor.py new file mode 100644 index 00000000..2fe8646a --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/java/visitor.py @@ -0,0 +1,14 @@ +# Override this to rename classes +class DefaultVisitor(object): + def visit(self, obj): + return obj.print_(self, self.visit) + + # Experimental - don't use! + def toTree(self, obj): + if obj is None: + return None + return obj.tree(self, self.toTree) + + def className(self, name): return name + def methodName(self, cls, name, desc): return name + def fieldName(self, cls, name, desc): return name diff --git a/src/main/resources/Krakatau-master/Krakatau/method.py b/src/main/resources/Krakatau-master/Krakatau/method.py new file mode 100644 index 00000000..6218e109 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/method.py @@ -0,0 +1,115 @@ +import collections + +from . import bytecode +from .attributes_raw import fixAttributeNames, get_attributes_raw +from .classfileformat.reader import Reader + +exceptionHandlerRaw = collections.namedtuple("exceptionHandlerRaw", + ["start","end","handler","type_ind"]) + +class Code(object): + def __init__(self, method, bytestream, keepRaw): + self.method = method + self.class_ = method.class_ + + # Old versions use shorter fields for stack, locals, and code length + field_fmt = ">HHL" if self.class_.version > (45,2) else ">BBH" + self.stack, self.locals, codelen = bytestream.get(field_fmt) + # assert codelen > 0 and codelen < 65536 + self.bytecode_raw = bytestream.getRaw(codelen) + self.codelen = codelen + + except_cnt = bytestream.get('>H') + self.except_raw = [bytestream.get('>HHHH') for _ in range(except_cnt)] + self.except_raw = [exceptionHandlerRaw(*t) for t in self.except_raw] + attributes_raw = get_attributes_raw(bytestream) + assert bytestream.size() == 0 + + if self.except_raw: + assert self.stack >= 1 + + # print 'Parsing code for', method.name, method.descriptor, method.flags + codestream = Reader(data=self.bytecode_raw) + self.bytecode = bytecode.parseInstructions(codestream, self.isIdConstructor) + self.attributes = fixAttributeNames(attributes_raw, self.class_.cpool) + + for e in self.except_raw: + assert e.start in self.bytecode + assert e.end == codelen or e.end in self.bytecode + assert e.handler in self.bytecode + if keepRaw: + self.attributes_raw = attributes_raw + + # This is a callback passed to the bytecode parser to determine if a given method id represents a constructor + def isIdConstructor(self, methId): + args = self.class_.cpool.getArgsCheck('Method', methId) + return args[1] == '' + + + def __str__(self): # pragma: no cover + lines = ['Stack: {}, Locals {}'.format(self.stack, self.locals)] + + instructions = self.bytecode + lines += ['{}: {}'.format(i, bytecode.printInstruction(instructions[i])) for i in sorted(instructions)] + if self.except_raw: + lines += ['Exception Handlers:'] + lines += map(str, self.except_raw) + return '\n'.join(lines) + +class Method(object): + flagVals = {'PUBLIC':0x0001, + 'PRIVATE':0x0002, + 'PROTECTED':0x0004, + 'STATIC':0x0008, + 'FINAL':0x0010, + 'SYNCHRONIZED':0x0020, + 'BRIDGE':0x0040, + 'VARARGS':0x0080, + 'NATIVE':0x0100, + 'ABSTRACT':0x0400, + 'STRICTFP':0x0800, + 'SYNTHETIC':0x1000, + } + + def __init__(self, data, classFile, keepRaw): + self.class_ = classFile + cpool = self.class_.cpool + + flags, name_id, desc_id, attributes_raw = data + + self.name = cpool.getArgsCheck('Utf8', name_id) + self.descriptor = cpool.getArgsCheck('Utf8', desc_id) + # print 'Loading method ', self.name, self.descriptor + self.attributes = fixAttributeNames(attributes_raw, cpool) + + self.flags = set(name for name, mask in Method.flagVals.items() if (mask & flags)) + # Flags are ignored for ? + if self.name == '': + self.flags = set(['STATIC']) + + + self._checkFlags() + self.static = 'STATIC' in self.flags + self.native = 'NATIVE' in self.flags + self.abstract = 'ABSTRACT' in self.flags + self.isConstructor = (self.name == '') + + self.code = self._loadCode(keepRaw) + if keepRaw: + self.attributes_raw = attributes_raw + self.name_id, self.desc_id = name_id, desc_id + + def _checkFlags(self): + assert len(self.flags & set(('PRIVATE','PROTECTED','PUBLIC'))) <= 1 + if 'ABSTRACT' in self.flags: + assert not self.flags & set(['SYNCHRONIZED', 'PRIVATE', 'FINAL', 'STRICT', 'STATIC', 'NATIVE']) + + def _loadCode(self, keepRaw): + code_attrs = [a for a in self.attributes if a[0] == 'Code'] + if not (self.native or self.abstract): + assert len(code_attrs) == 1 + code_raw = code_attrs[0][1] + bytestream = Reader(code_raw) + return Code(self, bytestream, keepRaw) + assert not code_attrs + return None diff --git a/src/main/resources/Krakatau-master/Krakatau/namegen.py b/src/main/resources/Krakatau-master/Krakatau/namegen.py new file mode 100644 index 00000000..352e82ae --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/namegen.py @@ -0,0 +1,18 @@ +import collections +import itertools + +class NameGen(object): + def __init__(self, reserved=frozenset()): + self.counters = collections.defaultdict(itertools.count) + self.names = set(reserved) + + def getPrefix(self, prefix, sep=''): + newname = prefix + while newname in self.names: + newname = prefix + sep + str(next(self.counters[prefix])) + self.names.add(newname) + return newname + +def LabelGen(prefix='label'): + for i in itertools.count(): + yield prefix + str(i) diff --git a/src/main/resources/Krakatau-master/Krakatau/opnames.py b/src/main/resources/Krakatau-master/Krakatau/opnames.py new file mode 100644 index 00000000..8e57f521 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/opnames.py @@ -0,0 +1,65 @@ +ADD = 'add' +AND = 'and' +ANEWARRAY = 'anewarray' +ARRLEN = 'arrlen' +ARRLOAD = 'arrload' +ARRLOAD_OBJ = 'arrload_obj' +ARRSTORE = 'arrstore' +ARRSTORE_OBJ = 'arrstore_obj' +CHECKCAST = 'checkcast' +CONST = 'const' +CONSTNULL = 'constnull' +CONVERT = 'convert' +DIV = 'div' +DUP = 'dup' +DUP2 = 'dup2' +DUP2X1 = 'dup2x1' +DUP2X2 = 'dup2x2' +DUPX1 = 'dupx1' +DUPX2 = 'dupx2' +FCMP = 'fcmp' +GETFIELD = 'getfield' +GETSTATIC = 'getstatic' +GOTO = 'goto' +IF_A = 'if_a' +IF_ACMP = 'if_acmp' +IF_I = 'if_i' +IF_ICMP = 'if_icmp' +IINC = 'iinc' +INSTANCEOF = 'instanceof' +INVOKEDYNAMIC = 'invokedynamic' +INVOKEINIT = 'invokeinit' +INVOKEINTERFACE = 'invokeinterface' +INVOKESPECIAL = 'invokespecial' +INVOKESTATIC = 'invokestatic' +INVOKEVIRTUAL = 'invokevirtual' +JSR = 'jsr' +LCMP = 'lcmp' +LDC = 'ldc' +LOAD = 'load' +MONENTER = 'monenter' +MONEXIT = 'monexit' +MUL = 'mul' +MULTINEWARRAY = 'multinewarray' +NEG = 'neg' +NEW = 'new' +NEWARRAY = 'newarray' +NOP = 'nop' +OR = 'or' +POP = 'pop' +POP2 = 'pop2' +PUTFIELD = 'putfield' +PUTSTATIC = 'putstatic' +REM = 'rem' +RET = 'ret' +RETURN = 'return' +SHL = 'shl' +SHR = 'shr' +STORE = 'store' +SUB = 'sub' +SWAP = 'swap' +SWITCH = 'switch' +THROW = 'throw' +TRUNCATE = 'truncate' +USHR = 'ushr' +XOR = 'xor' diff --git a/src/main/resources/Krakatau-master/Krakatau/script_util.py b/src/main/resources/Krakatau-master/Krakatau/script_util.py new file mode 100644 index 00000000..25deaaa8 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/script_util.py @@ -0,0 +1,191 @@ +from __future__ import print_function + +import collections +import errno +from functools import partial +import hashlib +import os +import os.path +import platform +import zipfile + +# Various utility functions for the top level scripts (decompile.py, assemble.py, disassemble.py) + +copyright = '''Krakatau Copyright (C) 2012-18 Robert Grosse +This program is provided as open source under the GNU General Public License. +See LICENSE.TXT for more details. +''' + +_osname = platform.system().lower() +IS_WINDOWS = 'win' in _osname and 'darwin' not in _osname and 'cygwin' not in _osname + +def findFiles(target, recursive, prefix): + if target.endswith('.jar'): + with zipfile.ZipFile(target, 'r') as archive: + return [name.encode('utf8') for name in archive.namelist() if name.endswith(prefix)] + else: + if recursive: + assert os.path.isdir(target) + targets = [] + + for root, dirs, files in os.walk(target): + targets += [os.path.join(root, fname) for fname in files if fname.endswith(prefix)] + return targets + else: + return [target] + +def normalizeClassname(name): + if name.endswith('.class'): + name = name[:-6] + # Replacing backslashes is ugly since they can be in valid classnames too, but this seems the best option + return name.replace('\\','/').replace('.','/') + +# Windows stuff +illegal_win_chars = frozenset('<>;:|?*\\/"%') +pref_disp_chars = frozenset('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_$0123456789') + +# Prevent creating filename parts matching the legacy device filenames. While Krakatau can create these files +# just fine thanks to using \\?\ paths, the resulting files are impossible to open or delete in Windows Explorer +# or with similar tools, so they are a huge pain to deal with. Therefore, we don't generate them at all. +illegal_parts = frozenset(['CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', + 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9']) + +class PathSanitizer(object): + def __init__(self, base, suffix): + self.base = base + self.suffix = suffix + + def is_part_ok(self, s, parents): + if not 1 <= len(s) <= self.MAX_PART_LEN: + return False + # avoid potential collision with hashed parts + if len(s) >= 66 and '__' in s: + return False + # . cannot appear in a valid class name, but might as well specifically exclude these, just in case + if s.startswith('.') or '..' in s: + return False + return '\x1f' < min(s) <= max(s) < '\x7f' + + def hash(self, s, suffix): + left = ''.join(c for c in s if c in pref_disp_chars) + right = '__' + hashlib.sha256(s.encode('utf8')).hexdigest() + suffix + return left[:self.MAX_PART_LEN - len(right)] + right + + def sanitize(self, path): + if isinstance(path, bytes): + path = path.decode() + + oldparts = path.split('/') + newparts = [] + for i, part in enumerate(oldparts): + suffix = self.suffix if i + 1 == len(oldparts) else '' + if self.is_part_ok(part + suffix, newparts): + newparts.append(part + suffix) + else: + newparts.append(self.hash(part, suffix)) + + result = self.format_path([self.base] + newparts) + if len(result) > self.MAX_PATH_LEN: + result = self.format_path([self.base, self.hash(path, self.suffix)]) + assert result.endswith(self.suffix) + return result + +class LinuxPathSanitizer(PathSanitizer): + MAX_PART_LEN = 255 + MAX_PATH_LEN = 4095 + + def __init__(self, *args): + PathSanitizer.__init__(self, *args) + + def format_path(self, parts): + return os.path.join(*parts) + +class WindowsPathSanitizer(PathSanitizer): + MAX_PART_LEN = 255 + MAX_PATH_LEN = 32000 # close enough + + def __init__(self, *args): + PathSanitizer.__init__(self, *args) + # keep track of previous paths to detect case-insensitive collisions + self.prevs = collections.defaultdict(dict) + + def is_part_ok(self, s, parents): + if not PathSanitizer.is_part_ok(self, s, parents): + return False + if s.upper() in illegal_parts: + return False + # make sure nothing in the current directory is a case insensitive collision + if self.prevs[tuple(parents)].setdefault(s.lower(), s) != s: + return False + return illegal_win_chars.isdisjoint(s) + + def format_path(self, parts): + return '\\\\?\\' + '\\'.join(parts) + +class DirectoryWriter(object): + def __init__(self, base_path, suffix): + if base_path is None: + base_path = os.getcwd() + else: + if not isinstance(base_path, str): + base_path = base_path.decode('utf8') + base_path = os.path.abspath(base_path) + + if IS_WINDOWS: + self.makepath = WindowsPathSanitizer(base_path, suffix).sanitize + else: + self.makepath = LinuxPathSanitizer(base_path, suffix).sanitize + + def write(self, cname, data): + out = self.makepath(cname) + dirpath = os.path.dirname(out) + + try: + if dirpath: + os.makedirs(dirpath) + except OSError as exc: + if exc.errno != errno.EEXIST: + raise + + mode = 'wb' if isinstance(data, bytes) else 'w' + with open(out, mode) as f: + f.write(data) + return out + + def __enter__(self): return self + def __exit__(self, *args): pass + +class JarWriter(object): + def __init__(self, base_path, suffix): + self.zip = zipfile.ZipFile(base_path, mode='w') + self.suffix = suffix + + def write(self, cname, data): + info = zipfile.ZipInfo(cname + self.suffix, (1980, 1, 1, 0, 0, 0)) + self.zip.writestr(info, data) + return 'zipfile' + + def __enter__(self): self.zip.__enter__(); return self + def __exit__(self, *args): self.zip.__exit__(*args) + +class MockWriter(object): + def __init__(self): self.results = [] + def write(self, cname, data): self.results.append((cname, data)) + def __enter__(self): return self + def __exit__(self, *args): pass + +def makeWriter(base_path, suffix): + if base_path is not None: + if base_path.endswith('.zip') or base_path.endswith('.jar'): + return JarWriter(base_path, suffix) + return DirectoryWriter(base_path, suffix) + +############################################################################### +def ignore(*args, **kwargs): + pass + +class Logger(object): + def __init__(self, level): + lvl = ['info', 'warning'].index(level) + self.info = print if lvl <= 0 else ignore + self.warn = print if lvl <= 1 else ignore diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/__init__.py b/src/main/resources/Krakatau-master/Krakatau/ssa/__init__.py new file mode 100644 index 00000000..db1c7313 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/__init__.py @@ -0,0 +1 @@ +from .graph import ssaFromVerified \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/blockmaker.py b/src/main/resources/Krakatau-master/Krakatau/ssa/blockmaker.py new file mode 100644 index 00000000..3918cf08 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/blockmaker.py @@ -0,0 +1,360 @@ +import collections +import operator + +from .. import opnames as vops +from ..verifier import verifier_types + +from . import ssa_jumps, ssa_ops, subproc +from .blockmakerfuncs import ResultDict, instructionHandlers +from .ssa_types import BasicBlock, SSA_OBJECT, slots_t + +def toBits(x): return [i for i in range(x.bit_length()) if x & (1 << i)] + +# keys for special blocks created at the cfg entry and exit. Negative keys ensures they don't collide +ENTRY_KEY, RETURN_KEY, RETHROW_KEY = -1, -2, -3 + +def getUsedLocals(iNodes, iNodeD, exceptions): + # For every instruction, find which locals at that point may be used in the future + except_ranges = [(h, [node.key for node in iNodes if s <= node.key < e]) for s, e, h, i in exceptions] + + old = collections.defaultdict(int) + while 1: + data = old.copy() + # Do one iteration + for node in reversed(iNodes): + used = reduce(operator.__or__, (data[key] for key in node.successors), 0) + + if node.instruction[0] == vops.LOAD: + used |= 1 << node.instruction[2] + elif node.instruction[0] == vops.IINC: + used |= 1 << node.instruction[1] + elif node.instruction[0] == vops.STORE: + bits = 3 if node.instruction[1] in 'JD' else 1 + used &= ~(bits << node.instruction[2]) + elif node.instruction[0] == vops.RET: + # If local is not in mask, it will use the value from the jsr instead of the ret + mask = sum(1< initialized types so we can convert them + self.initMap = {} + for node in self.iNodes: + if node.op == vops.NEW: + self.initMap[node.stack_push[0]] = node.target_type + self.initMap[verifier_types.T_UNINIT_THIS] = verifier_types.T_OBJECT(parent.class_.name) + self.hasmonenter = any(node.instruction[0] == vops.MONENTER for node in self.iNodes) + + self.entryBlock = self.makeBlockWithInslots(ENTRY_KEY, newlocals=inputTypes, stack=[]) + self.returnBlock = self.makeBlockWithInslots(RETURN_KEY, newlocals=[], stack=returnTypes) + self.returnBlock.jump = ssa_jumps.Return(self, [phi.rval for phi in self.returnBlock.phis]) + self.rethrowBlock = self.makeBlockWithInslots(RETHROW_KEY, newlocals=[], stack=[verifier_types.THROWABLE_INFO]) + self.rethrowBlock.jump = ssa_jumps.Rethrow(self, [phi.rval for phi in self.rethrowBlock.phis]) + + # for ssagraph to copy + self.inputArgs = slotsRvals(self.entryBlock.inslots).localsAsList + self.entryBlock.phis = [] + + # We need to create stub blocks for every jump target so we can add them as successors during creation + jump_targets = [eh.handler for eh in exceptions] + for node in self.iNodes: + if node.instruction[0] in _jump_instrs: + jump_targets += node.successors + # add jsr fallthroughs too + if node.instruction[0] == vops.JSR and node.returnedFrom is not None: + jump_targets.append(node.next_instruction) + + # for simplicity, keep jsr stuff in individual instruction blocks. + # Note that subproc.py will need to be modified if this is changed + for node in self.iNodes: + if node.instruction[0] in (vops.JSR, vops.RET): + jump_targets.append(node.key) + for key in jump_targets: + if key not in self.blockd: # jump_targets may have duplicates + self.makeBlock(key) + + self.exceptionhandlers = [] + for (start, end, handler, index) in exceptions: + catchtype = parent.getConstPoolArgs(index)[0] if index else 'java/lang/Throwable' + self.exceptionhandlers.append((start, end, self.blockd[handler], catchtype)) + self.exceptionhandlers.append((0, 65536, self.rethrowBlock, 'java/lang/Throwable')) + + # State variables for the append/builder loop + self.current_block = self.entryBlock + self.current_slots = slotsRvals(self.current_block.inslots) + for node in self.iNodes: + # First do a quick check if we have to start a new block + if not self._canContinueBlock(node): + self._startNewBlock(node.key) + vals, outslot_norm = self._getInstrLine(node) + + # Disable exception pruning + if opts and not vals.jump: + dummyvals = ResultDict(line=ssa_ops.MagicThrow(self.parent)) + if not self._canAppendInstrToCurrent(node.key, dummyvals): + self._startNewBlock(node.key) + assert self._canAppendInstrToCurrent(node.key, dummyvals) + self._appendInstr(node, dummyvals, self.current_slots, check_terminate=False) + vals, outslot_norm = self._getInstrLine(node) + + if not self._canAppendInstrToCurrent(node.key, vals): + self._startNewBlock(node.key) + vals, outslot_norm = self._getInstrLine(node) + + assert self._canAppendInstrToCurrent(node.key, vals) + self._appendInstr(node, vals, outslot_norm) + + # do sanity checks + assert len(self.blocks) == len(self.blockd) + for block in self.blocks: + assert block.jump is not None and block.phis is not None + assert len(block.predecessors) == len(set(block.predecessors)) + # cleanup temp vars + block.inslots = None + block.throwvars = None + block.chpairs = None + block.except_used = None + block.locals_at_except = None + + def _canContinueBlock(self, node): + return (node.key not in self.blockd) and self.current_block.jump is None # fallthrough goto left as None + + def _chPairsAt(self, address): + chpairs = [] + for (start, end, handler, catchtype) in self.exceptionhandlers: + if start <= address < end: + chpairs.append((catchtype, handler)) + return chpairs + + def _canAppendInstrToCurrent(self, address, vals): + # If appending exception line to block with existing exceptions, make sure the handlers are the same + # Also make sure that locals are compatible with all other exceptions in the block + # If appending a jump, make sure there is no existing exceptions + block = self.current_block + if block.chpairs is not None: + if vals.jump: + return False + if vals.line is not None and vals.line.outException is not None: + chpairs = self._chPairsAt(address) + if chpairs != block.chpairs: + return False + + newlocals = {i: self.current_slots.locals[i] for i in block.except_used} + return newlocals == block.locals_at_except + assert block.jump is None + return True + + def pruneUnused(self, key, newlocals): + used = toBits(self.used_locals[key]) + return {i: newlocals[i] for i in used} + + def _startNewBlock(self, key): + ''' We can't continue appending to the current block, so start a new one (or use existing one at location) ''' + # Make new block + if key not in self.blockd: + self.makeBlock(key) + + # Finish current block + block = self.current_block + curslots = self.current_slots + assert block.key != key + if block.jump is None: + if block.chpairs is not None: + assert block.throwvars + self._addOnException(block, self.blockd[key], curslots) + else: + assert not block.throwvars + block.jump = ssa_jumps.Goto(self.parent, self.blockd[key]) + + if curslots is not None: + self.mergeIn((block, False), key, curslots) + + # Update state + self.current_block = self.blockd[key] + self.current_slots = slotsRvals(self.current_block.inslots) + + def _getInstrLine(self, iNode): + parent, initMap = self.parent, self.initMap + inslots = self.current_slots + instr = iNode.instruction + + # internal variables won't have any preset type info associated, so we should add in the info from the verifier + assert len(inslots.stack) == len(iNode.state.stack) + for i, ivar in enumerate(inslots.stack): + if ivar and ivar.type == SSA_OBJECT and ivar.decltype is None: + parent.setObjVarData(ivar, iNode.state.stack[i], initMap) + + for i, ivar in inslots.locals.items(): + if ivar and ivar.type == SSA_OBJECT and ivar.decltype is None: + parent.setObjVarData(ivar, iNode.state.locals[i], initMap) + + vals = instructionHandlers[instr[0]](self, inslots, iNode) + newstack = vals.newstack if vals.newstack is not None else inslots.stack + newlocals = vals.newlocals if vals.newlocals is not None else inslots.locals + outslot_norm = slots_t(locals=newlocals, stack=newstack) + return vals, outslot_norm + + def _addOnException(self, block, fallthrough, outslot_norm): + parent = self.parent + assert block.throwvars and block.chpairs is not None + ephi = ssa_ops.ExceptionPhi(parent, block.throwvars) + block.lines.append(ephi) + + assert block.jump is None + block.jump = ssa_jumps.OnException(parent, ephi.outException, block.chpairs, fallthrough) + outslot_except = slots_t(locals=block.locals_at_except, stack=[ephi.outException]) + for suc in block.jump.getExceptSuccessors(): + self.mergeIn((block, True), suc.key, outslot_except) + + def _appendInstr(self, iNode, vals, outslot_norm, check_terminate=True): + parent = self.parent + block = self.current_block + line, jump = vals.line, vals.jump + if line is not None: + block.lines.append(line) + assert block.jump is None + block.jump = jump + + if line is not None and line.outException is not None: + block.throwvars.append(line.outException) + inslots = self.current_slots + + if block.chpairs is None: + block.chpairs = self._chPairsAt(iNode.key) + temp = (self.used_locals[h.key] for t, h in block.chpairs) + block.except_used = toBits(reduce(operator.__or__, temp, 0)) + block.locals_at_except = {i: inslots.locals[i] for i in block.except_used} + + if check_terminate: + # Return and Throw must be immediately ended because they don't have normal fallthrough + # CheckCast must terminate block because cast type hack later on requires casts to be at end of block + if iNode.instruction[0] in (vops.RETURN, vops.THROW) or isinstance(line, ssa_ops.CheckCast): + fallthrough = self.getExceptFallthrough(iNode) + self._addOnException(block, fallthrough, outslot_norm) + + if block.jump is None: + unmerged_slots = outslot_norm + else: + assert isinstance(block.jump, ssa_jumps.OnException) or not block.throwvars + unmerged_slots = None + # Make sure that branch targets are distinct, since this is assumed everywhere + # Only necessary for if statements as the other jumps merge targets automatically + # If statements with both branches jumping to same target are replaced with gotos + block.jump = block.jump.reduceSuccessors([]) + + if isinstance(block.jump, subproc.ProcCallOp): + self.mergeJSROut(iNode, block, outslot_norm) + else: + for suc in block.jump.getNormalSuccessors(): + self.mergeIn((block, False), suc.key, outslot_norm) + self.current_slots = unmerged_slots + assert (block.chpairs is None) == (block.except_used is None) == (block.locals_at_except is None) + + def mergeIn(self, from_key, target_key, outslots): + inslots = self.blockd[target_key].inslots + + assert len(inslots.stack) == len(outslots.stack) + for i, phi in enumerate(inslots.stack): + if phi is not None: + phi.add(from_key, outslots.stack[i]) + + for i, phi in inslots.locals.items(): + if phi is not None: + phi.add(from_key, outslots.locals[i]) + + self.blockd[target_key].predecessors.append(from_key) + + ## Block Creation ######################################### + def _makePhiFromVType(self, block, vt): + var = self.parent.makeVarFromVtype(vt, self.initMap) + return None if var is None else ssa_ops.Phi(block, var) + + def makeBlockWithInslots(self, key, newlocals, stack): + assert key not in self.blockd + block = BasicBlock(key) + self.blocks.append(block) + self.blockd[key] = block + + # create inslot phis + stack = [self._makePhiFromVType(block, vt) for vt in stack] + newlocals = dict(enumerate(self._makePhiFromVType(block, vt) for vt in newlocals)) + newlocals = self.pruneUnused(key, newlocals) + + block.inslots = slots_t(locals=newlocals, stack=stack) + block.phis = [phi for phi in stack + block.inslots.localsAsList if phi is not None] + return block + + def makeBlock(self, key): + node = self.iNodeD[key] + return self.makeBlockWithInslots(key, node.state.locals, node.state.stack) + + ########################################################### + def getExceptFallthrough(self, iNode): + vop = iNode.instruction[0] + if vop == vops.RETURN: + return self.blockd[RETURN_KEY] + elif vop == vops.THROW: + return None + key = iNode.successors[0] + if key not in self.blockd: + self.makeBlock(key) + return self.blockd[key] + + def mergeJSROut(self, jsrnode, block, outslot_norm): + retnode = self.iNodeD[jsrnode.returnedFrom] + jump = block.jump + target_key, ft_key = jump.target.key, jump.fallthrough.key + assert ft_key == jsrnode.next_instruction + + # first merge regular jump to target + self.mergeIn((block, False), target_key, outslot_norm) + # create merged outslots for fallthrough + fromcall = jump.output + mask = [mask for key, mask in retnode.state.masks if key == target_key][0] + + skiplocs = fromcall.locals + retlocs = outslot_norm.locals + merged = {i: (skiplocs.get(i) if i in mask else retlocs.get(i)) for i in (mask | frozenset(retlocs))} + # jump.debug_skipvars = set(merged) - set(locals) + + outslot_merged = slots_t(locals=merged, stack=fromcall.stack) + # merge merged outputs with fallthrough + self.mergeIn((block, False), ft_key, outslot_merged) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/blockmakerfuncs.py b/src/main/resources/Krakatau-master/Krakatau/ssa/blockmakerfuncs.py new file mode 100644 index 00000000..6f2d785b --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/blockmakerfuncs.py @@ -0,0 +1,461 @@ +from .. import opnames as vops +from ..verifier.descriptors import parseFieldDescriptor, parseMethodDescriptor + +from . import objtypes, ssa_jumps, ssa_ops, subproc +from .ssa_types import SSA_DOUBLE, SSA_FLOAT, SSA_INT, SSA_LONG, SSA_OBJECT, slots_t + + +_charToSSAType = {'D':SSA_DOUBLE, 'F':SSA_FLOAT, 'I':SSA_INT, 'J':SSA_LONG, + 'B':SSA_INT, 'C':SSA_INT, 'S':SSA_INT} +def getCategory(c): return 2 if c in 'JD' else 1 + +class ResultDict(object): + def __init__(self, line=None, jump=None, newstack=None, newlocals=None): + self.line = line + self.jump = jump + self.newstack = newstack + self.newlocals = newlocals + +############################################################################## +def makeConstVar(parent, type_, val): + var = parent.makeVariable(type_) + var.const = val + return var + +def parseArrOrClassName(desc): + # Accept either a class or array descriptor or a raw class name. + if desc.startswith('[') or desc.endswith(';'): + vtypes = parseFieldDescriptor(desc, unsynthesize=False) + tt = objtypes.verifierToSynthetic(vtypes[0]) + else: + tt = objtypes.TypeTT(desc, 0) + return tt + +def _floatOrIntMath(fop, iop): + def math1(maker, input_, iNode): + cat = getCategory(iNode.instruction[1]) + isfloat = (iNode.instruction[1] in 'DF') + op = fop if isfloat else iop + + args = input_.stack[-cat*2::cat] + line = op(maker.parent, args) + + newstack = input_.stack[:-2*cat] + [line.rval] + [None]*(cat-1) + return ResultDict(line=line, newstack=newstack) + return math1 + +def _intMath(op, isShift): + def math2(maker, input_, iNode): + cat = getCategory(iNode.instruction[1]) + # some ops (i.e. shifts) always take int as second argument + size = cat+1 if isShift else cat+cat + args = input_.stack[-size::cat] + line = op(maker.parent, args) + newstack = input_.stack[:-size] + [line.rval] + [None]*(cat-1) + return ResultDict(line=line, newstack=newstack) + return math2 +############################################################################## + +def _anewarray(maker, input_, iNode): + name = maker.parent.getConstPoolArgs(iNode.instruction[1])[0] + tt = parseArrOrClassName(name) + line = ssa_ops.NewArray(maker.parent, input_.stack[-1], tt) + newstack = input_.stack[:-1] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _arrlen(maker, input_, iNode): + line = ssa_ops.ArrLength(maker.parent, input_.stack[-1:]) + newstack = input_.stack[:-1] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _arrload(maker, input_, iNode): + type_ = _charToSSAType[iNode.instruction[1]] + cat = getCategory(iNode.instruction[1]) + + line = ssa_ops.ArrLoad(maker.parent, input_.stack[-2:], type_) + newstack = input_.stack[:-2] + [line.rval] + [None]*(cat-1) + return ResultDict(line=line, newstack=newstack) + +def _arrload_obj(maker, input_, iNode): + line = ssa_ops.ArrLoad(maker.parent, input_.stack[-2:], SSA_OBJECT) + newstack = input_.stack[:-2] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _arrstore(maker, input_, iNode): + if getCategory(iNode.instruction[1]) > 1: + newstack, args = input_.stack[:-4], input_.stack[-4:-1] + arr_vt, ind_vt = iNode.state.stack[-4:-2] + else: + newstack, args = input_.stack[:-3], input_.stack[-3:] + arr_vt, ind_vt = iNode.state.stack[-3:-1] + line = ssa_ops.ArrStore(maker.parent, args) + + # Check if we can prune the exception early because the + # array size and index are known constants + if arr_vt.const is not None and ind_vt.const is not None: + if 0 <= ind_vt.const < arr_vt.const: + line.outException = None + return ResultDict(line=line, newstack=newstack) + +def _arrstore_obj(maker, input_, iNode): + line = ssa_ops.ArrStore(maker.parent, input_.stack[-3:]) + newstack = input_.stack[:-3] + return ResultDict(line=line, newstack=newstack) + +def _checkcast(maker, input_, iNode): + index = iNode.instruction[1] + desc = maker.parent.getConstPoolArgs(index)[0] + tt = parseArrOrClassName(desc) + line = ssa_ops.CheckCast(maker.parent, tt, input_.stack[-1:]) + return ResultDict(line=line) + +def _const(maker, input_, iNode): + ctype, val = iNode.instruction[1:] + cat = getCategory(ctype) + type_ = _charToSSAType[ctype] + var = makeConstVar(maker.parent, type_, val) + newstack = input_.stack + [var] + [None]*(cat-1) + return ResultDict(newstack=newstack) + +def _constnull(maker, input_, iNode): + var = makeConstVar(maker.parent, SSA_OBJECT, 'null') + var.decltype = objtypes.NullTT + newstack = input_.stack + [var] + return ResultDict(newstack=newstack) + +def _convert(maker, input_, iNode): + src_c, dest_c = iNode.instruction[1:] + src_cat, dest_cat = getCategory(src_c), getCategory(dest_c) + + stack, arg = input_.stack[:-src_cat], input_.stack[-src_cat] + line = ssa_ops.Convert(maker.parent, arg, _charToSSAType[src_c], _charToSSAType[dest_c]) + + newstack = stack + [line.rval] + [None]*(dest_cat-1) + return ResultDict(line=line, newstack=newstack) + +def _fcmp(maker, input_, iNode): + op, c, NaN_val = iNode.instruction + cat = getCategory(c) + + args = input_.stack[-cat*2::cat] + line = ssa_ops.FCmp(maker.parent, args, NaN_val) + newstack = input_.stack[:-cat*2] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _field_access(maker, input_, iNode): + index = iNode.instruction[1] + target, name, desc = maker.parent.getConstPoolArgs(index) + cat = len(parseFieldDescriptor(desc)) + + argcnt = cat if 'put' in iNode.instruction[0] else 0 + if not 'static' in iNode.instruction[0]: + argcnt += 1 + splitInd = len(input_.stack) - argcnt + + args = [x for x in input_.stack[splitInd:] if x is not None] + line = ssa_ops.FieldAccess(maker.parent, iNode.instruction, (target, name, desc), args=args) + newstack = input_.stack[:splitInd] + line.returned + return ResultDict(line=line, newstack=newstack) + +def _goto(maker, input_, iNode): + jump = ssa_jumps.Goto(maker.parent, maker.blockd[iNode.successors[0]]) + return ResultDict(jump=jump) + +def _if_a(maker, input_, iNode): + null = makeConstVar(maker.parent, SSA_OBJECT, 'null') + null.decltype = objtypes.NullTT + jump = ssa_jumps.If(maker.parent, iNode.instruction[1], map(maker.blockd.get, iNode.successors), (input_.stack[-1], null)) + newstack = input_.stack[:-1] + return ResultDict(jump=jump, newstack=newstack) + +def _if_i(maker, input_, iNode): + zero = makeConstVar(maker.parent, SSA_INT, 0) + jump = ssa_jumps.If(maker.parent, iNode.instruction[1], map(maker.blockd.get, iNode.successors), (input_.stack[-1], zero)) + newstack = input_.stack[:-1] + return ResultDict(jump=jump, newstack=newstack) + +def _if_cmp(maker, input_, iNode): + jump = ssa_jumps.If(maker.parent, iNode.instruction[1], map(maker.blockd.get, iNode.successors), input_.stack[-2:]) + newstack = input_.stack[:-2] + return ResultDict(jump=jump, newstack=newstack) + +def _iinc(maker, input_, iNode): + _, index, amount = iNode.instruction + + oldval = input_.locals[index] + constval = makeConstVar(maker.parent, SSA_INT, amount) + line = ssa_ops.IAdd(maker.parent, (oldval, constval)) + + newlocals = input_.locals.copy() + newlocals[index] = line.rval + return ResultDict(line=line, newlocals=newlocals) + +def _instanceof(maker, input_, iNode): + index = iNode.instruction[1] + desc = maker.parent.getConstPoolArgs(index)[0] + tt = parseArrOrClassName(desc) + line = ssa_ops.InstanceOf(maker.parent, tt, input_.stack[-1:]) + newstack = input_.stack[:-1] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _invoke(maker, input_, iNode): + index = iNode.instruction[1] + target, name, desc = maker.parent.getConstPoolArgs(index) + target_tt = parseArrOrClassName(target) + + argcnt = len(parseMethodDescriptor(desc)[0]) + if not 'static' in iNode.instruction[0]: + argcnt += 1 + splitInd = len(input_.stack) - argcnt + + # If we are an initializer, store a copy of the uninitialized verifier type so the Java decompiler can patch things up later + isThisCtor = iNode.isThisCtor if iNode.op == vops.INVOKEINIT else False + + args = [x for x in input_.stack[splitInd:] if x is not None] + line = ssa_ops.Invoke(maker.parent, iNode.instruction, (target, name, desc), + args=args, isThisCtor=isThisCtor, target_tt=target_tt) + newstack = input_.stack[:splitInd] + line.returned + return ResultDict(line=line, newstack=newstack) + +def _invoke_dynamic(maker, input_, iNode): + index = iNode.instruction[1] + desc = maker.parent.getConstPoolArgs(index)[2] + argcnt = len(parseMethodDescriptor(desc)[0]) + splitInd = len(input_.stack) - argcnt + + args = [x for x in input_.stack[splitInd:] if x is not None] + line = ssa_ops.InvokeDynamic(maker.parent, desc, args) + newstack = input_.stack[:splitInd] + line.returned + return ResultDict(line=line, newstack=newstack) + +def _jsr(maker, input_, iNode): + newstack = input_.stack + [None] + if iNode.returnedFrom is None: + jump = ssa_jumps.Goto(maker.parent, maker.blockd[iNode.successors[0]]) + return ResultDict(newstack=newstack, jump=jump) + + # create output variables from callop to represent vars received from ret. + # We can use {} for initMap since there will never be unintialized types here + retnode = maker.iNodeD[iNode.returnedFrom] + stack = [maker.parent.makeVarFromVtype(vt, {}) for vt in retnode.out_state.stack] + newlocals = dict(enumerate(maker.parent.makeVarFromVtype(vt, {}) for vt in retnode.out_state.locals)) + newlocals = maker.pruneUnused(retnode.key, newlocals) + out_slots = slots_t(locals=newlocals, stack=stack) + + # Simply store the data for now and fix things up once all the blocks are created + jump = subproc.ProcCallOp(maker.blockd[iNode.successors[0]], maker.blockd[iNode.next_instruction], input_, out_slots) + return ResultDict(jump=jump, newstack=newstack) + +def _lcmp(maker, input_, iNode): + args = input_.stack[-4::2] + line = ssa_ops.ICmp(maker.parent, args) + newstack = input_.stack[:-4] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _ldc(maker, input_, iNode): + index, cat = iNode.instruction[1:] + entry_type = maker.parent.getConstPoolType(index) + args = maker.parent.getConstPoolArgs(index) + + var = None + if entry_type == 'String': + var = makeConstVar(maker.parent, SSA_OBJECT, args[0]) + var.decltype = objtypes.StringTT + elif entry_type == 'Int': + var = makeConstVar(maker.parent, SSA_INT, args[0]) + elif entry_type == 'Long': + var = makeConstVar(maker.parent, SSA_LONG, args[0]) + elif entry_type == 'Float': + var = makeConstVar(maker.parent, SSA_FLOAT, args[0]) + elif entry_type == 'Double': + var = makeConstVar(maker.parent, SSA_DOUBLE, args[0]) + elif entry_type == 'Class': + var = makeConstVar(maker.parent, SSA_OBJECT, parseArrOrClassName(args[0])) + var.decltype = objtypes.ClassTT + # Todo - handle MethodTypes and MethodHandles? + + assert var + newstack = input_.stack + [var] + [None]*(cat-1) + return ResultDict(newstack=newstack) + +def _load(maker, input_, iNode): + cat = getCategory(iNode.instruction[1]) + index = iNode.instruction[2] + newstack = input_.stack + [input_.locals[index]] + [None]*(cat-1) + return ResultDict(newstack=newstack) + +def _monitor(maker, input_, iNode): + isExit = 'exit' in iNode.instruction[0] + line = ssa_ops.Monitor(maker.parent, input_.stack[-1:], isExit) + newstack = input_.stack[:-1] + return ResultDict(line=line, newstack=newstack) + +def _multinewarray(maker, input_, iNode): + op, index, dim = iNode.instruction + name = maker.parent.getConstPoolArgs(index)[0] + tt = parseArrOrClassName(name) + assert objtypes.dim(tt) >= dim + + line = ssa_ops.MultiNewArray(maker.parent, input_.stack[-dim:], tt) + newstack = input_.stack[:-dim] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _neg(maker, input_, iNode): + cat = getCategory(iNode.instruction[1]) + arg = input_.stack[-cat:][0] + + if (iNode.instruction[1] in 'DF'): + line = ssa_ops.FNeg(maker.parent, [arg]) + else: # for integers, we can just write -x as 0 - x + zero = makeConstVar(maker.parent, arg.type, 0) + line = ssa_ops.ISub(maker.parent, [zero,arg]) + + newstack = input_.stack[:-cat] + [line.rval] + [None]*(cat-1) + return ResultDict(line=line, newstack=newstack) + +def _new(maker, input_, iNode): + index = iNode.instruction[1] + classname = maker.parent.getConstPoolArgs(index)[0] + if classname.endswith(';'): + classname = classname[1:-1] + + line = ssa_ops.New(maker.parent, classname, iNode.key) + newstack = input_.stack + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _newarray(maker, input_, iNode): + vtypes = parseFieldDescriptor(iNode.instruction[1], unsynthesize=False) + tt = objtypes.verifierToSynthetic(vtypes[0]) + + line = ssa_ops.NewArray(maker.parent, input_.stack[-1], tt) + newstack = input_.stack[:-1] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def _nop(maker, input_, iNode): + return ResultDict() + +def _ret(maker, input_, iNode): + jump = subproc.DummyRet(input_, maker.blockd[iNode.jsrTarget]) + return ResultDict(jump=jump) + +def _return(maker, input_, iNode): + # Our special return block expects only the return values on the stack + rtype = iNode.instruction[1] + if rtype is None: + newstack = [] + else: + newstack = input_.stack[-getCategory(rtype):] + + # TODO: enable once structuring is smarter + # if not maker.hasmonenter: + # jump = ssa_jumps.Goto(maker.parent, maker.returnBlock) + # return ResultDict(jump=jump, newstack=newstack) + + line = ssa_ops.TryReturn(maker.parent) + return ResultDict(line=line, newstack=newstack) + +def _store(maker, input_, iNode): + cat = getCategory(iNode.instruction[1]) + index = iNode.instruction[2] + + newlocals = input_.locals.copy() + newlocals[index] = input_.stack[-cat] + newstack = input_.stack[:-cat] + return ResultDict(newstack=newstack, newlocals=newlocals) + +def _switch(maker, input_, iNode): + default, raw_table = iNode.instruction[1:3] + table = [(k, maker.blockd[v]) for k,v in raw_table] + jump = ssa_jumps.Switch(maker.parent, maker.blockd[default], table, input_.stack[-1:]) + newstack = input_.stack[:-1] + return ResultDict(jump=jump, newstack=newstack) + +def _throw(maker, input_, iNode): + line = ssa_ops.Throw(maker.parent, input_.stack[-1:]) + return ResultDict(line=line, newstack=[]) + +def _truncate(maker, input_, iNode): + dest_c = iNode.instruction[1] + signed, width = {'B':(True, 8), 'C':(False, 16), 'S':(True, 16)}[dest_c] + + line = ssa_ops.Truncate(maker.parent, input_.stack[-1], signed=signed, width=width) + newstack = input_.stack[:-1] + [line.rval] + return ResultDict(line=line, newstack=newstack) + +def genericStackUpdate(maker, input_, iNode): + n = iNode.pop_amount + stack = input_.stack + stack, popped = stack[:-n], stack[-n:] + + for i in iNode.stack_code: + stack.append(popped[i]) + return ResultDict(newstack=stack) + +instructionHandlers = { + vops.ADD: _floatOrIntMath(ssa_ops.FAdd, ssa_ops.IAdd), + vops.AND: _intMath(ssa_ops.IAnd, isShift=False), + vops.ANEWARRAY: _anewarray, + vops.ARRLEN: _arrlen, + vops.ARRLOAD: _arrload, + vops.ARRLOAD_OBJ: _arrload_obj, + vops.ARRSTORE: _arrstore, + vops.ARRSTORE_OBJ: _arrstore_obj, + vops.CHECKCAST: _checkcast, + vops.CONST: _const, + vops.CONSTNULL: _constnull, + vops.CONVERT: _convert, + vops.DIV: _floatOrIntMath(ssa_ops.FDiv, ssa_ops.IDiv), + vops.FCMP: _fcmp, + vops.GETSTATIC: _field_access, + vops.GETFIELD: _field_access, + vops.GOTO: _goto, + vops.IF_A: _if_a, + vops.IF_ACMP: _if_cmp, # cmp works on ints or objs + vops.IF_I: _if_i, + vops.IF_ICMP: _if_cmp, + vops.IINC: _iinc, + vops.INSTANCEOF: _instanceof, + vops.INVOKEINIT: _invoke, + vops.INVOKEINTERFACE: _invoke, + vops.INVOKESPECIAL: _invoke, + vops.INVOKESTATIC: _invoke, + vops.INVOKEVIRTUAL: _invoke, + vops.INVOKEDYNAMIC: _invoke_dynamic, + vops.JSR: _jsr, + vops.LCMP: _lcmp, + vops.LDC: _ldc, + vops.LOAD: _load, + vops.MONENTER: _monitor, + vops.MONEXIT: _monitor, + vops.MULTINEWARRAY: _multinewarray, + vops.MUL: _floatOrIntMath(ssa_ops.FMul, ssa_ops.IMul), + vops.NEG: _neg, + vops.NEW: _new, + vops.NEWARRAY: _newarray, + vops.NOP: _nop, + vops.OR: _intMath(ssa_ops.IOr, isShift=False), + vops.PUTSTATIC: _field_access, + vops.PUTFIELD: _field_access, + vops.REM: _floatOrIntMath(ssa_ops.FRem, ssa_ops.IRem), + vops.RET: _ret, + vops.RETURN: _return, + vops.SHL: _intMath(ssa_ops.IShl, isShift=True), + vops.SHR: _intMath(ssa_ops.IShr, isShift=True), + vops.STORE: _store, + vops.SUB: _floatOrIntMath(ssa_ops.FSub, ssa_ops.ISub), + vops.SWITCH: _switch, + vops.THROW: _throw, + vops.TRUNCATE: _truncate, + vops.USHR: _intMath(ssa_ops.IUshr, isShift=True), + vops.XOR: _intMath(ssa_ops.IXor, isShift=False), + + vops.SWAP: genericStackUpdate, + vops.POP: genericStackUpdate, + vops.POP2: genericStackUpdate, + vops.DUP: genericStackUpdate, + vops.DUPX1: genericStackUpdate, + vops.DUPX2: genericStackUpdate, + vops.DUP2: genericStackUpdate, + vops.DUP2X1: genericStackUpdate, + vops.DUP2X2: genericStackUpdate, + } diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/__init__.py b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/__init__.py new file mode 100644 index 00000000..d93cf315 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/__init__.py @@ -0,0 +1,66 @@ +import collections, itertools + +from ... import floatutil +from .. import objtypes +from .int_c import IntConstraint +from .float_c import FloatConstraint +from .obj_c import ObjectConstraint + +from ..ssa_types import SSA_INT, SSA_LONG, SSA_FLOAT, SSA_DOUBLE, SSA_OBJECT + +# joins become more precise (intersection), meets become more general (union) +# Join currently supports joining a max of two constraints +# Meet assumes all inputs are not None +def join(*cons): + if None in cons: + return None + return cons[0].join(*cons[1:]) + +def meet(*cons): + if not cons: + return None + return cons[0].meet(*cons[1:]) + +def fromConstant(env, var): + ssa_type = var.type + cval = var.const + + if ssa_type[0] == SSA_INT[0]: + return IntConstraint.const(ssa_type[1], cval) + elif ssa_type[0] == SSA_FLOAT[0]: + xt = floatutil.fromRawFloat(ssa_type[1], cval) + return FloatConstraint.const(ssa_type[1], xt) + elif ssa_type[0] == SSA_OBJECT[0]: + if var.decltype == objtypes.NullTT: + return ObjectConstraint.constNull(env) + return ObjectConstraint.fromTops(env, *objtypes.declTypeToActual(env, var.decltype)) + +_bots = { + SSA_INT: IntConstraint.bot(SSA_INT[1]), + SSA_LONG: IntConstraint.bot(SSA_LONG[1]), + SSA_FLOAT: FloatConstraint.bot(SSA_FLOAT[1]), + SSA_DOUBLE: FloatConstraint.bot(SSA_DOUBLE[1]), +} + +def fromVariable(env, var): + if var.const is not None: + return fromConstant(env, var) + ssa_type = var.type + + try: + return _bots[ssa_type] + except KeyError: + assert ssa_type == SSA_OBJECT + isnew = var.uninit_orig_num is not None + if var.decltype is not None: + if var.decltype == objtypes.NullTT: + return ObjectConstraint.constNull(env) + return ObjectConstraint.fromTops(env, *objtypes.declTypeToActual(env, var.decltype), nonnull=isnew) + else: + return ObjectConstraint.fromTops(env, [objtypes.ObjectTT], [], nonnull=isnew) + +OpReturnInfo = collections.namedtuple('OpReturnInfo', ['rval', 'eval', 'must_throw']) +def returnOrThrow(rval, eval): return OpReturnInfo(rval, eval, False) +def maybeThrow(eval): return OpReturnInfo(None, eval, False) +def throw(eval): return OpReturnInfo(None, eval, True) +def return_(rval): return OpReturnInfo(rval, None, False) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/float_c.py b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/float_c.py new file mode 100644 index 00000000..d9e7ce42 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/float_c.py @@ -0,0 +1,59 @@ +from ... import floatutil as fu + +from ..mixin import ValueType + +SPECIALS = frozenset((fu.NAN, fu.INF, fu.NINF, fu.ZERO, fu.NZERO)) + +def botRange(size): + mbits, emin, emax = size + mag = (1<<(mbits+1))-1, emax-mbits + return (-1,mag), (1,mag) + +class FloatConstraint(ValueType): + def __init__(self, size, finite, special): + self.size = size + self.finite = finite + self.spec = special + + self.isBot = (special == SPECIALS) and (finite == botRange(size)) + + @staticmethod + def const(size, val): + if val in SPECIALS: + return FloatConstraint(size, (None, None), frozenset([val])) + return FloatConstraint(size, (val, val), frozenset()) + + @staticmethod + def bot(size): + finite = botRange(size) + return FloatConstraint(size, finite, SPECIALS) + + def _key(self): return self.finite, self.spec + + def join(*cons): # more precise (intersection) + spec = frozenset.intersection(*[c.spec for c in cons]) + ranges = [c.finite for c in cons] + + if (None, None) in ranges: + xmin = xmax = None + else: + mins, maxs = zip(*ranges) + xmin = max(mins, key=fu.sortkey) + xmax = min(maxs, key=fu.sortkey) + if fu.sortkey(xmax) < fu.sortkey(xmin): + xmin = xmax = None + if not xmin and not spec: + return None + return FloatConstraint(cons[0].size, (xmin, xmax), spec) + + def meet(*cons): + spec = frozenset.union(*[c.spec for c in cons]) + ranges = [c.finite for c in cons if c.finite != (None,None)] + + if ranges: + mins, maxs = zip(*ranges) + xmin = min(mins, key=fu.sortkey) + xmax = max(maxs, key=fu.sortkey) + else: + xmin = xmax = None + return FloatConstraint(cons[0].size, (xmin, xmax), spec) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/int_c.py b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/int_c.py new file mode 100644 index 00000000..7ef2e45a --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/int_c.py @@ -0,0 +1,48 @@ +from ..mixin import ValueType + +class IntConstraint(ValueType): + __slots__ = "width min max".split() + + def __init__(self, width, min_, max_): + self.width = width + self.min = min_ + self.max = max_ + # self.isBot = (-min_ == max_+1 == (1< max_: + return None + return IntConstraint(width, min_, max_) + + @staticmethod + def const(width, val): + return IntConstraint(width, val, val) + + @staticmethod + def bot(width): + return IntConstraint(width, -1<<(width-1), (1<<(width-1))-1) + + def _key(self): return self.min, self.max + + def join(*cons): + xmin = max(c.min for c in cons) + xmax = min(c.max for c in cons) + if xmin > xmax: + return None + res = IntConstraint(cons[0].width, xmin, xmax) + return cons[0] if cons[0] == res else res + + def meet(*cons): + xmin = min(c.min for c in cons) + xmax = max(c.max for c in cons) + return IntConstraint(cons[0].width, xmin, xmax) + + def __str__(self): # pragma: no cover + t = 'Int' if self.width == 32 else 'Long' + if self.min == self.max: + return '{}({})'.format(t, self.min) + elif self == self.bot(self.width): + return t + return '{}({}, {})'.format(t, self.min, self.max) + __repr__ = __str__ diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/mixin.py b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/mixin.py new file mode 100644 index 00000000..927c7097 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/mixin.py @@ -0,0 +1,6 @@ +class ValueType(object): + '''Define _key() and inherit from this class to implement comparison and hashing''' + # def __init__(self, *args, **kwargs): super(ValueType, self).__init__(*args, **kwargs) + def __eq__(self, other): return type(self) == type(other) and self._key() == other._key() + def __ne__(self, other): return type(self) != type(other) or self._key() != other._key() + def __hash__(self): return hash(self._key()) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/obj_c.py b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/obj_c.py new file mode 100644 index 00000000..8befcd19 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/constraints/obj_c.py @@ -0,0 +1,123 @@ +import itertools + +from .. import objtypes +from ..mixin import ValueType + +array_supers = 'java/lang/Object','java/lang/Cloneable','java/io/Serializable' +obj_fset = frozenset([objtypes.ObjectTT]) + +def isAnySubtype(env, x, seq): + return any(objtypes.isSubtype(env,x,y) for y in seq) + +class TypeConstraint(ValueType): + __slots__ = "env supers exact isBot".split() + def __init__(self, env, supers, exact): + self.env, self.supers, self.exact = env, frozenset(supers), frozenset(exact) + self.isBot = objtypes.ObjectTT in supers + + temp = self.supers | self.exact + assert objtypes.NullTT not in temp + assert all(objtypes.isBaseTClass(tt) for tt in supers) + assert all(objtypes.dim(tt) < 999 for tt in exact) + + def _key(self): return self.supers, self.exact + def __nonzero__(self): return bool(self.supers or self.exact) + + def getSingleTType(self): + # comSuper doesn't care about order so we can freely pass in nondeterministic order + return objtypes.commonSupertype(self.env, list(self.supers) + list(self.exact)) + + def isBoolOrByteArray(self): + if self.supers or len(self.exact) != 2: + return False + tt1, tt2 = self.exact + bases = objtypes.baset(tt1), objtypes.baset(tt2) + return objtypes.dim(tt1) == objtypes.dim(tt2) and sorted(bases) == [objtypes.baset(objtypes.BoolTT), objtypes.baset(objtypes.ByteTT)] + + @staticmethod + def reduce(env, supers, exact): + newsupers = [] + for x in supers: + if not isAnySubtype(env, x, newsupers): + newsupers = [y for y in newsupers if not objtypes.isSubtype(env, y, x)] + newsupers.append(x) + + newexact = [x for x in exact if not isAnySubtype(env, x, newsupers)] + return TypeConstraint(env, newsupers, newexact) + + def join(*cons): + assert len(set(map(type, cons))) == 1 + env = cons[0].env + + # optimize for the common case of joining with itself or with bot + cons = set(c for c in cons if not c.isBot) + if not cons: + return TypeConstraint(env, obj_fset, []) + elif len(cons) == 1: + return cons.pop() + assert(len(cons) == 2) # joining more than 2 not currently supported + + supers_l, exact_l = zip(*(c._key() for c in cons)) + + newsupers = set() + for t1,t2 in itertools.product(*supers_l): + if objtypes.isSubtype(env, t1, t2): + newsupers.add(t1) + elif objtypes.isSubtype(env, t2, t1): + newsupers.add(t2) + else: # TODO: need to add special handling for interfaces here + pass + + newexact = frozenset.union(*exact_l) + for c in cons: + newexact = [x for x in newexact if x in c.exact or isAnySubtype(env, x, c.supers)] + return TypeConstraint.reduce(env, newsupers, newexact) + + def meet(*cons): + supers = frozenset.union(*(c.supers for c in cons)) + exact = frozenset.union(*(c.exact for c in cons)) + return TypeConstraint.reduce(cons[0].env, supers, exact) + +class ObjectConstraint(ValueType): + __slots__ = "null types isBot".split() + def __init__(self, null, types): + self.null, self.types = null, types + self.isBot = null and types.isBot + + @staticmethod + def constNull(env): + return ObjectConstraint(True, TypeConstraint(env, [], [])) + + @staticmethod + def fromTops(env, supers, exact, nonnull=False): + types = TypeConstraint(env, supers, exact) + if nonnull and not types: + return None + return ObjectConstraint(not nonnull, types) + + def _key(self): return self.null, self.types + + def isConstNull(self): return self.null and not self.types + + def getSingleTType(self): + return self.types.getSingleTType() if self.types else objtypes.NullTT + + def join(*cons): + null = all(c.null for c in cons) + types = TypeConstraint.join(*(c.types for c in cons)) + if not null and not types: + return None + + res = ObjectConstraint(null, types) + return cons[0] if cons[0] == res else res + + def meet(*cons): + null = any(c.null for c in cons) + types = TypeConstraint.meet(*(c.types for c in cons)) + return ObjectConstraint(null, types) + + def __str__(self): # pragma: no cover + if not self.types: + return 'Obj(null)' + return 'Obj({}, {}, {})'.format(self.null, sorted(self.types.supers), sorted(self.types.exact)) + __repr__ = __str__ diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/exceptionset.py b/src/main/resources/Krakatau-master/Krakatau/ssa/exceptionset.py new file mode 100644 index 00000000..e592cb45 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/exceptionset.py @@ -0,0 +1,207 @@ +import collections +import itertools + +from . import objtypes +from .mixin import ValueType + +class CatchSetManager(object): + def __init__(self, env, sets, mask): + self.env, self.sets, self.mask = env, sets, mask + assert not self._conscheck() + + @staticmethod # factory + def new(env, chpairs): + sets = collections.OrderedDict() # make this ordered since OnException relies on it + sofar = empty = ExceptionSet.EMPTY + for catchtype, handler in chpairs: + old = sets.get(handler, empty) + new = ExceptionSet.fromTops(env, catchtype) + sets[handler] = old | (new - sofar) + sofar = sofar | new + return CatchSetManager(env, sets, sofar) + + def newMask(self, mask): + for k in self.sets: + self.sets[k] &= mask + self.mask &= mask + assert not self._conscheck() + + def pruneKeys(self): + for handler, catchset in list(self.sets.items()): + if not catchset: + del self.sets[handler] + + def copy(self): + return CatchSetManager(self.env, self.sets.copy(), self.mask) + + def replaceKeys(self, replace): + self.sets = collections.OrderedDict((replace.get(key,key), val) for key, val in self.sets.items()) + + def _conscheck(self): + temp = ExceptionSet.EMPTY + for v in self.sets.values(): + assert not v & temp + temp |= v + assert temp == self.mask + assert isinstance(self.sets, collections.OrderedDict) + +class ExceptionSet(ValueType): + __slots__ = "env pairs".split() + def __init__(self, env, pairs): # assumes arguments are in reduced form + self.env = env + self.pairs = frozenset([(x,frozenset(y)) for x,y in pairs]) + + # We allow env to be None for the empty set so we can construct empty sets easily + # Any operation resulting in a nonempty set will get its env from the nonempty argument + assert self.empty() or self.env is not None + + # make sure set is fully reduced + parts = [] + for t, holes in pairs: + parts.append(t) + parts.extend(holes) + assert len(set(parts)) == len(parts) + + @staticmethod # factory + def fromTops(env, *tops): + return ExceptionSet(env, [(x, frozenset()) for x in tops]) + + def _key(self): return self.pairs + def empty(self): return not self.pairs + def __nonzero__(self): return bool(self.pairs) + + def getTopTTs(self): return sorted([objtypes.TypeTT(top,0) for (top,holes) in self.pairs]) + + def __sub__(self, other): + assert type(self) == type(other) + if self.empty() or other.empty(): + return self + if self == other: + return ExceptionSet.EMPTY + + subtest = self.env.isSubclass + pairs = self.pairs + + for pair2 in other.pairs: + # Warning, due to a bug in Python, TypeErrors raised inside the gen expr will give an incorect error message + # TypeError: type object argument after * must be a sequence, not generator + # This can be worked around by using a list comprehension instead of a genexpr after the * + pairs = itertools.chain(*[ExceptionSet.diffPair(subtest, pair1, pair2) for pair1 in pairs]) + return ExceptionSet.reduce(self.env, pairs) + + def __or__(self, other): + assert type(self) == type(other) + if other.empty() or self == other: + return self + if self.empty(): + return other + return ExceptionSet.reduce(self.env, self.pairs | other.pairs) + + def __and__(self, other): + assert type(self) == type(other) + new = self - (self - other) + return new + + def isdisjoint(self, other): + return (self-other) == self + + def __str__(self): # pragma: no cover + parts = [('{} - [{}]'.format(top, ', '.join(sorted(holes))) if holes else top) for top, holes in self.pairs] + return 'ES[{}]'.format(', '.join(parts)) + __repr__ = __str__ + + @staticmethod + def diffPair(subtest, pair1, pair2): # subtract pair2 from pair1. Returns a list of new pairs + # todo - find way to make this less ugly + t1, holes1 = pair1 + t2, holes2 = pair2 + if subtest(t1,t2): # t2 >= t1 + if any(subtest(t1, h) for h in holes2): + return pair1, + else: + newpairs = [] + holes2 = [h for h in holes2 if subtest(h, t1) and not any(subtest(h,h2) for h2 in holes1)] + + for h in holes2: + newholes = [h2 for h2 in holes1 if subtest(h2, h)] + newpairs.append((h, newholes)) + return newpairs + elif subtest(t2,t1): # t2 < t1 + if any(subtest(t2, h) for h in holes1): + return pair1, + else: + newpairs = [(t1,ExceptionSet.reduceHoles(subtest, list(holes1)+[t2]))] + holes2 = [h for h in holes2 if not any(subtest(h,h2) for h2 in holes1)] + + for h in holes2: + newholes = [h2 for h2 in holes1 if subtest(h2, h)] + newpairs.append((h, newholes)) + return newpairs + else: + return pair1, + + @staticmethod + def mergePair(subtest, pair1, pair2): # merge pair2 into pair1 and return the union + t1, holes1 = pair1 + t2, holes2 = pair2 + assert subtest(t2,t1) + + if t2 in holes1: + holes1 = list(holes1) + holes1.remove(t2) + return t1, holes1 + list(holes2) + + # TODO - this can probably be made more efficient + holes1a = set(h for h in holes1 if not subtest(h, t2)) + holes1b = [h for h in holes1 if h not in holes1a] + + merged_holes = set() + for h1, h2 in itertools.product(holes1b, holes2): + if subtest(h2, h1): + merged_holes.add(h1) + elif subtest(h1, h2): + merged_holes.add(h2) + merged_holes = ExceptionSet.reduceHoles(subtest, merged_holes) + assert len(merged_holes) <= len(holes1b) + len(holes2) + return t1, (list(holes1a) + merged_holes) + + @staticmethod + def reduceHoles(subtest, holes): + newholes = [] + for hole in holes: + for ehole in newholes: + if subtest(hole, ehole): + break + else: + newholes = [hole] + [h for h in newholes if not subtest(h, hole)] + return newholes + + @staticmethod + def reduce(env, pairs): + subtest = env.isSubclass + pairs = [pair for pair in pairs if pair[0] not in pair[1]] # remove all degenerate pairs + + newpairs = [] + while pairs: + top, holes = pair = pairs.pop() + + # look for an existing top to merge into + for epair in newpairs[:]: + etop, eholes = epair + # new pair can be merged into existing pair + if subtest(top, etop) and (top in eholes or not any(subtest(top, ehole) for ehole in eholes)): + new = ExceptionSet.mergePair(subtest, epair, pair) + newpairs, pairs = [new], [p for p in newpairs if p is not epair] + pairs + break + # existing pair can be merged into new pair + elif subtest(etop, top) and (etop in holes or not any(subtest(etop, hole) for hole in holes)): + new = ExceptionSet.mergePair(subtest, pair, epair) + newpairs, pairs = [new], [p for p in newpairs if p is not epair] + pairs + break + # pair is incomparable to all existing pairs + else: + holes = ExceptionSet.reduceHoles(subtest, holes) + newpairs.append((top,holes)) + return ExceptionSet(env, newpairs) + +ExceptionSet.EMPTY = ExceptionSet(None, []) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/excepttypes.py b/src/main/resources/Krakatau-master/Krakatau/ssa/excepttypes.py new file mode 100644 index 00000000..ca9e1316 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/excepttypes.py @@ -0,0 +1,11 @@ +from . import objtypes + +# common exception types +Arithmetic = objtypes.TypeTT('java/lang/ArithmeticException', 0) +ArrayOOB = objtypes.TypeTT('java/lang/ArrayIndexOutOfBoundsException', 0) +ArrayStore = objtypes.TypeTT('java/lang/ArrayStoreException', 0) +ClassCast = objtypes.TypeTT('java/lang/ClassCastException', 0) +MonState = objtypes.TypeTT('java/lang/IllegalMonitorStateException', 0) +NegArrSize = objtypes.TypeTT('java/lang/NegativeArraySizeException', 0) +NullPtr = objtypes.TypeTT('java/lang/NullPointerException', 0) +OOM = objtypes.TypeTT('java/lang/OutOfMemoryError', 0) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/functionbase.py b/src/main/resources/Krakatau-master/Krakatau/ssa/functionbase.py new file mode 100644 index 00000000..35ca69a8 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/functionbase.py @@ -0,0 +1,9 @@ +class SSAFunctionBase(object): + def __init__(self, parent, arguments): + self.parent = parent + self.params = list(arguments) + assert None not in self.params + + def replaceVars(self, rdict): + self.params = [rdict.get(x,x) for x in self.params] + assert None not in self.params diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/graph.py b/src/main/resources/Krakatau-master/Krakatau/ssa/graph.py new file mode 100644 index 00000000..cfab4d13 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/graph.py @@ -0,0 +1,764 @@ +import collections +import copy +import functools +import itertools + +from .. import graph_util +from ..verifier.descriptors import parseUnboundMethodDescriptor + +from . import blockmaker, constraints, objtypes, ssa_jumps, ssa_ops, subproc +from .ssa_types import BasicBlock, SSA_OBJECT, verifierToSSAType + +class SSA_Variable(object): + __slots__ = 'type','origin','name','const','decltype','uninit_orig_num' + + def __init__(self, type_, origin=None, name=""): + self.type = type_ # SSA_INT, SSA_OBJECT, etc. + self.origin = origin + self.name = name + self.const = None + self.decltype = None # for objects, the inferred type from the verifier if any + self.uninit_orig_num = None # if uninitialized, the bytecode offset of the new instr + + # for debugging + def __str__(self): # pragma: no cover + return self.name if self.name else super(SSA_Variable, self).__str__() + + def __repr__(self): # pragma: no cover + name = self.name if self.name else "@" + hex(id(self)) + return "Var {}".format(name) + +# This class is the main IR for bytecode level methods. It consists of a control +# flow graph (CFG) in static single assignment form (SSA). Each node in the +# graph is a BasicBlock. This consists of a list of phi statements representing +# inputs, a list of operations, and a jump statement. Exceptions are represented +# explicitly in the graph with the OnException jump. Each block also keeps track +# of the unary constraints on the variables in that block. + +# Handling of subprocedures is rather annoying. Each complete subproc has an associated +# ProcInfo while jsrs and rets are represented by ProcCallOp and DummyRet respectively. +# The jsrblock has the target and fallthrough as successors, while the fallthrough has +# the jsrblock as predecessor, but not the retblock. Control flow paths where the proc +# never returns are represented by ordinary jumps from blocks in the procedure to outside +# Successful completion of the proc is represented by the fallthrough edge. The fallthrough +# block gets its variables from the jsrblock, including skip vars which don't depend on the +# proc, and variables from jsr.output which represent what would have been returned from ret +# Every proc has a reachable retblock. Jsrs with no associated ret are simply turned +# into gotos during the initial basic block creation. + +class SSA_Graph(object): + entryKey = blockmaker.ENTRY_KEY + + def __init__(self, code): + self.code = code + self.class_ = code.class_ + self.env = self.class_.env + + self.inputArgs = None + self.entryBlock = None + self.blocks = None + self.procs = None # used to store information on subprocedues (from the JSR instructions) + + self.block_numberer = itertools.count(-4,-1) + + def condenseBlocks(self): + assert not self.procs + old = self.blocks + # Can't do a consistency check on entry as the graph may be in an inconsistent state at this point + # Since the purpose of this function is to prune unreachable blocks from self.blocks + sccs = graph_util.tarjanSCC([self.entryBlock], lambda block:block.jump.getSuccessors()) + self.blocks = list(itertools.chain.from_iterable(map(reversed, sccs[::-1]))) + + assert set(self.blocks) <= set(old) + if len(self.blocks) < len(old): + kept = set(self.blocks) + for block in self.blocks: + for pair in block.predecessors[:]: + if pair[0] not in kept: + block.removePredPair(pair) + return [b for b in old if b not in kept] + return [] + + def removeUnusedVariables(self): + assert not self.procs + roots = [x for x in self.inputArgs if x is not None] + for block in self.blocks: + roots += block.jump.params + for op in block.lines: + if op.has_side_effects: + roots += op.params + + reachable = graph_util.topologicalSort(roots, lambda var:(var.origin.params if var.origin else [])) + + keepset = set(reachable) + assert None not in keepset + def filterOps(oldops): + newops = [] + for op in oldops: + # if any of the params is being removed due to being unreachable, we can assume the whole function can be removed + keep = keepset.issuperset(op.params) and (op.has_side_effects or not keepset.isdisjoint(op.getOutputs())) + if keep: + newops.append(op) + for v in op.getOutputs(): + if v and v not in keepset: + op.removeOutput(v) + else: + assert keepset.isdisjoint(op.getOutputs()) + assert not op.has_side_effects + return newops + + for block in self.blocks: + block.phis = filterOps(block.phis) + block.lines = filterOps(block.lines) + block.filterVarConstraints(keepset) + assert self._conscheck() is None + + def mergeSingleSuccessorBlocks(self): + assert(not self.procs) # Make sure that all single jsr procs are inlined first + assert self._conscheck() is None + + removed = set() + for block in self.blocks: + if block in removed: + continue + while isinstance(block.jump, ssa_jumps.Goto): + jump = block.jump + block2 = jump.getNormalSuccessors()[0] + fromkey = block, False + if block2.predecessors != [fromkey]: + break + + jump2 = block2.jump + ucs = block.unaryConstraints + ucs2 = block2.unaryConstraints + replace = {phi.rval: phi.get(fromkey) for phi in block2.phis} + for var2, var in replace.items(): + ucs[var] = constraints.join(ucs[var], ucs2.pop(var2)) + ucs.update(ucs2) + + for op in block2.lines: + op.replaceVars(replace) + block.lines += block2.lines + + jump2.replaceVars(replace) + block.jump = jump2 + + # remember to update phis of blocks referring to old child! + for successor, t in block.jump.getSuccessorPairs(): + successor.replacePredPair((block2, t), (block, t)) + for phi in successor.phis: + phi.replaceVars(replace) + removed.add(block2) + self.blocks = [b for b in self.blocks if b not in removed] + assert self._conscheck() is None + + def disconnectConstantVariables(self): + for block in self.blocks: + for var, uc in block.unaryConstraints.items(): + if var.origin is not None: + newval = None + if var.type[0] == 'int': + if uc.min == uc.max: + newval = uc.min + elif var.type[0] == 'obj': + if uc.isConstNull(): + newval = 'null' + + if newval is not None: + var.origin.removeOutput(var) + var.origin = None + var.const = newval + block.phis = [phi for phi in block.phis if phi.rval is not None] + assert self._conscheck() is None + + def _conscheck(self): + '''Sanity check''' + for block in self.blocks: + assert block.jump is not None + for phi in block.phis: + assert phi.rval is None or phi.rval in block.unaryConstraints + for k,v in phi.dict.items(): + assert v in k[0].unaryConstraints + + keys = [block.key for block in self.blocks] + assert len(set(keys)) == len(keys) + temp = [self.entryBlock] + for proc in self.procs: + temp += [proc.retblock] + temp += proc.jsrblocks + assert len(set(temp)) == len(temp) + + def copyPropagation(self): + # Loop aware copy propagation + assert not self.procs + assert self._conscheck() is None + + # The goal is to propagate constants that would never be inferred pessimistically + # due to the prescence of loops. Variables that aren't derived from a constant or phi + # are treated as opaque and variables are processed by SCC in topological order. + # For each scc, we can infer that it is the meet of all inputs that come from variables + # in different sccs that come before it in topological order, thus ignoring variables + # in the current scc (the loop problem). + v2b = {} + assigns = collections.OrderedDict() + for block in self.blocks: + for var in block.unaryConstraints: + v2b[var] = block + for phi in block.phis: + assigns[phi.rval] = map(phi.get, block.predecessors) + + UCs = {} + sccs = graph_util.tarjanSCC(assigns, lambda v:assigns.get(v, [])) + for scc in sccs: + if all(var in assigns for var in scc): + invars = sum(map(assigns.get, scc), []) + inputs = [UCs[invar] for invar in invars if invar in UCs] + assert inputs + uc = constraints.meet(*inputs) + + for var in scc: + old = v2b[var].unaryConstraints[var] + new = constraints.join(uc, old) or old # temporary hack + v2b[var].unaryConstraints[var] = UCs[var] = new + else: + # There is a root in this scc, so we can't do anything + for var in scc: + UCs[var] = v2b[var].unaryConstraints[var] + + assert self._conscheck() is None + + def abstractInterpert(self): + # Sparse conditional constant propagation and type inference + assert not self.procs + assert self._conscheck() is None + + visit_counts = collections.defaultdict(int) + dirty_phis = set(itertools.chain.from_iterable(block.phis for block in self.blocks)) + while dirty_phis: + for block in self.blocks: + assert block in self.blocks + UCs = block.unaryConstraints + assert None not in UCs.values() + dirty = visit_counts[block] == 0 + for phi in block.phis: + if phi in dirty_phis: + dirty_phis.remove(phi) + inputs = [key[0].unaryConstraints[phi.get(key)] for key in block.predecessors] + out = constraints.meet(*inputs) + old = UCs[phi.rval] + UCs[phi.rval] = out = constraints.join(old, out) + dirty = dirty or out != old + assert out + + if not dirty or visit_counts[block] >= 5: + continue + visit_counts[block] += 1 + + must_throw = False + dirty_vars = set() + last_line = block.lines[-1] if block.lines else None # Keep reference handy to exception phi, if any + for i, op in enumerate(block.lines): + if hasattr(op, 'propagateConstraints'): + output_vars = op.getOutputs() + inputs = [UCs[var] for var in op.params] + assert None not in inputs + output_info = op.propagateConstraints(*inputs) + + for var, out in zip(output_vars, [output_info.rval, output_info.eval]): + if var is None: + continue + old = UCs[var] + UCs[var] = out = constraints.join(old, out) + if out is None: + if var is op.outException: + assert isinstance(last_line, ssa_ops.ExceptionPhi) + last_line.params.remove(var) + op.removeOutput(var) # Note, this must be done after the op.outException check! + del UCs[var] + elif out != old: + dirty_vars.add(var) + + if output_info.must_throw: + must_throw = True + # Remove all code after this in the basic block and adjust exception code + # at end as appropriate + assert isinstance(last_line, ssa_ops.ExceptionPhi) + assert i < len(block.lines) and op.outException + removed = block.lines[i+1:-1] + block.lines = block.lines[:i+1] + [last_line] + for op2 in removed: + if op2.outException: + last_line.params.remove(op2.outException) + for var in op2.getOutputs(): + if var is not None: + del UCs[var] + break + + # now handle end of block + if isinstance(last_line, ssa_ops.ExceptionPhi): + inputs = map(UCs.get, last_line.params) + out = constraints.meet(*inputs) + old = UCs[last_line.outException] + assert out is None or not out.null + UCs[last_line.outException] = out = constraints.join(old, out) + if out is None: + del UCs[last_line.outException] + block.lines.pop() + elif out != old: + dirty_vars.add(last_line.outException) + + # prune jumps + dobreak = False + if hasattr(block.jump, 'constrainJumps'): + assert block.jump.params + oldEdges = block.jump.getSuccessorPairs() + inputs = map(UCs.get, block.jump.params) + block.jump = block.jump.constrainJumps(*inputs) + # No exception case ordinarily won't be pruned, so we have to handle it explicitly + if must_throw and isinstance(block.jump, ssa_jumps.OnException): + if block.jump.getNormalSuccessors(): # make sure it wasn't already pruned + fallthrough = block.jump.getNormalSuccessors()[0] + block.jump = block.jump.reduceSuccessors([(fallthrough, False)]) + + newEdges = block.jump.getSuccessorPairs() + if newEdges != oldEdges: + pruned = [x for x in oldEdges if x not in newEdges] + for (child,t) in pruned: + child.removePredPair((block,t)) + + removed_blocks = self.condenseBlocks() + # In case where no blocks were removed, self.blocks will possibly be in a different + # order than the version of self.blocks we are iterating over, but it still has the + # same contents, so this should be safe. If blocks were removed, we break out of the + # list and restart to avoid the possibility of processing an unreachable block. + dobreak = len(removed_blocks) > 0 + for removed in removed_blocks: + for phi in removed.phis: + dirty_phis.discard(phi) + + # update dirty set + for child, t in block.jump.getSuccessorPairs(): + assert child in self.blocks + for phi in child.phis: + if phi.get((block, t)) in dirty_vars: + dirty_phis.add(phi) + if dobreak: + break + + # Try to turn switches into if statements - note that this may + # introduce a new variable and this modify block.unaryConstraints + # However, it won't change the control flow graph structure + for block in self.blocks: + if isinstance(block.jump, ssa_jumps.Switch): + block.jump = block.jump.simplifyToIf(block) + + def simplifyThrows(self): + # Try to turn throws into gotos where possible. This primarily helps with certain patterns of try-with-resources + # To do this, the exception must be known to be non null and there must be only one target that can catch it + # As a heuristic, we also restrict it to cases where every predecessor of the target can be converted + candidates = collections.defaultdict(list) + for block in self.blocks: + if not isinstance(block.jump, ssa_jumps.OnException) or len(block.jump.getSuccessorPairs()) != 1: + continue + if len(block.lines[-1].params) != 1 or not isinstance(block.lines[-2], ssa_ops.Throw): + continue + if block.unaryConstraints[block.lines[-2].params[0]].null: + continue + + candidates[block.jump.getExceptSuccessors()[0]].append(block) + + for child in self.blocks: + if not candidates[child] or len(candidates[child]) < len(child.predecessors): + continue + + for parent in candidates[child]: + ephi = parent.lines.pop() + throw_op = parent.lines.pop() + + var1 = throw_op.params[0] + var2 = throw_op.outException + assert ephi.params == [var2] + var3 = ephi.outException + assert parent.jump.params[0] == var3 + + for phi in child.phis: + phi.replaceVars({var3: var1}) + child.replacePredPair((parent, True), (parent, False)) + + del parent.unaryConstraints[var2] + del parent.unaryConstraints[var3] + parent.jump = ssa_jumps.Goto(self, child) + + def simplifyCatchIgnored(self): + # When there is a single throwing instruction, which is garuenteed to throw, has a single handler, and + # the caught exception is unused, turn it into a goto. This simplifies a pattern used by some obfuscators + # that do stuff like try{new int[-1];} catch(Exception e) {...} + candidates = collections.defaultdict(list) + for block in self.blocks: + if not isinstance(block.jump, ssa_jumps.OnException) or len(block.jump.getSuccessorPairs()) != 1: + continue + if len(block.lines[-1].params) != 1: + continue + candidates[block.jump.getExceptSuccessors()[0]].append(block) + + for child in self.blocks: + if not candidates[child] or len(candidates[child]) < len(child.predecessors): + continue + + # Make sure caught exception is unused + temp = candidates[child][0].lines[-1].outException + if any(temp in phi.params for phi in child.phis): + continue + + for parent in candidates[child]: + ephi = parent.lines.pop() + throw_op = parent.lines.pop() + del parent.unaryConstraints[throw_op.outException] + del parent.unaryConstraints[ephi.outException] + child.replacePredPair((parent, True), (parent, False)) + parent.jump = ssa_jumps.Goto(self, child) + + # Subprocedure stuff ##################################################### + def _newBlockFrom(self, block): + b = BasicBlock(next(self.block_numberer)) + self.blocks.append(b) + return b + + def _copyVar(self, var, vard=None): + v = copy.copy(var) + v.name = v.origin = None # TODO - generate new names? + if vard is not None: + vard[var] = v + return v + + def _region(self, proc): + # Find the set of blocks 'in' a subprocedure, i.e. those reachable from the target that can reach the ret block + region = graph_util.topologicalSort([proc.retblock], lambda block:[] if block == proc.target else [b for b,t in block.predecessors]) + temp = set(region) + assert self.entryBlock not in temp and proc.target in temp and temp.isdisjoint(proc.jsrblocks) + return region + + def _duplicateBlocks(self, region, excludedPreds): + # Duplicate a region of blocks. All inedges will be redirected to the new blocks + # except for those from excludedPreds + excludedPreds = excludedPreds | set(region) + outsideBlocks = [b for b in self.blocks if b not in excludedPreds] + + blockd, vard = {}, {} + for oldb in region: + block = blockd[oldb] = self._newBlockFrom(oldb) + block.unaryConstraints = {self._copyVar(k, vard):v for k, v in oldb.unaryConstraints.items()} + block.phis = [ssa_ops.Phi(block, vard[oldphi.rval]) for oldphi in oldb.phis] + + for op in oldb.lines: + new = copy.copy(op) + new.replaceVars(vard) + new.replaceOutVars(vard) + assert new.getOutputs().count(None) == op.getOutputs().count(None) + for outv in new.getOutputs(): + if outv is not None: + assert outv.origin is None + outv.origin = new + block.lines.append(new) + + assert set(vard).issuperset(oldb.jump.params) + block.jump = oldb.jump.clone() + block.jump.replaceVars(vard) + + # Fix up blocks outside the region that jump into the region. + for key in oldb.predecessors[:]: + pred = key[0] + if pred not in excludedPreds: + for phi1, phi2 in zip(oldb.phis, block.phis): + phi2.add(key, phi1.get(key)) + del phi1.dict[key] + oldb.predecessors.remove(key) + block.predecessors.append(key) + + # fix up jump targets of newly created blocks + for oldb, block in blockd.items(): + block.jump.replaceBlocks(blockd) + for suc, t in block.jump.getSuccessorPairs(): + suc.predecessors.append((block, t)) + + # update the jump targets of predecessor blocks + for block in outsideBlocks: + block.jump.replaceBlocks(blockd) + + for old, new in vard.items(): + assert type(old.origin) == type(new.origin) + + # Fill in phi args in successors of new blocks + for oldb, block in blockd.items(): + for oldc, t in oldb.jump.getSuccessorPairs(): + child = blockd.get(oldc, oldc) + assert len(child.phis) == len(oldc.phis) + for phi1, phi2 in zip(oldc.phis, child.phis): + phi2.add((block, t), vard[phi1.get((oldb, t))]) + + assert self._conscheck() is None + return blockd + + def _splitSubProc(self, proc): + # Splits a proc into two, with one callsite using the new proc instead + # this involves duplicating the body of the procedure + # the new proc is appended to the list of procs so it can work properly + # with the stack processing in inlineSubprocs + assert len(proc.jsrblocks) > 1 + target, retblock = proc.target, proc.retblock + region = self._region(proc) + + split_jsrs = [proc.jsrblocks.pop()] + blockd = self._duplicateBlocks(region, set(proc.jsrblocks)) + + newproc = subproc.ProcInfo(blockd[proc.retblock], blockd[proc.target]) + newproc.jsrblocks = split_jsrs + # Sanity check + for temp in self.procs + [newproc]: + for jsr in temp.jsrblocks: + assert jsr.jump.target == temp.target + return newproc + + def _inlineSubProc(self, proc): + # Inline a proc with single callsite inplace + assert len(proc.jsrblocks) == 1 + target, retblock = proc.target, proc.retblock + region = self._region(proc) + + jsrblock = proc.jsrblocks[0] + jsrop = jsrblock.jump + ftblock = jsrop.fallthrough + + # first we find any vars that bypass the proc since we have to pass them through the new blocks + skipvars = [phi.get((jsrblock, False)) for phi in ftblock.phis] + skipvars = [var for var in skipvars if var.origin is not jsrop] + + svarcopy = {(var, block):self._copyVar(var) for var, block in itertools.product(skipvars, region)} + for var, block in itertools.product(skipvars, region): + # Create a new phi for the passed through var for this block + rval = svarcopy[var, block] + phi = ssa_ops.Phi(block, rval) + block.phis.append(phi) + block.unaryConstraints[rval] = jsrblock.unaryConstraints[var] + + for key in block.predecessors: + if key == (jsrblock, False): + phi.add(key, var) + else: + phi.add(key, svarcopy[var, key[0]]) + + outreplace = {jv:rv for jv, rv in zip(jsrblock.jump.output.stack, retblock.jump.input.stack) if jv is not None} + outreplace.update({jv:retblock.jump.input.locals[i] for i, jv in jsrblock.jump.output.locals.items() if jv is not None}) + for var in outreplace: # don't need jsrop's out vars anymore + del jsrblock.unaryConstraints[var] + + for var in skipvars: + outreplace[var] = svarcopy[var, retblock] + jsrblock.jump = ssa_jumps.Goto(self, target) + retblock.jump = ssa_jumps.Goto(self, ftblock) + + ftblock.replacePredPair((jsrblock, False), (retblock, False)) + for phi in ftblock.phis: + phi.replaceVars(outreplace) + + def inlineSubprocs(self): + assert self._conscheck() is None + assert self.procs + + # establish DAG of subproc callstacks if we're doing nontrivial inlining, since we can only inline leaf procs + regions = {proc:frozenset(self._region(proc)) for proc in self.procs} + parents = {proc:[] for proc in self.procs} + for x,y in itertools.product(self.procs, repeat=2): + if not regions[y].isdisjoint(x.jsrblocks): + parents[x].append(y) + + self.procs = graph_util.topologicalSort(self.procs, parents.get) + if any(parents.values()): + print 'Warning, nesting subprocedures detected! This method may take a long time to decompile.' + print 'Subprocedures for', self.code.method.name + ':', self.procs + + # now inline the procs + while self.procs: + proc = self.procs.pop() + while len(proc.jsrblocks) > 1: + print 'splitting', proc + # push new subproc onto stack + self.procs.append(self._splitSubProc(proc)) + assert self._conscheck() is None + # When a subprocedure has only one call point, it can just be inlined instead of splitted + print 'inlining', proc + self._inlineSubProc(proc) + assert self._conscheck() is None + ########################################################################## + def splitDualInedges(self): + # Split any blocks that have both normal and exceptional in edges + assert not self.procs + for block in self.blocks[:]: + if block is self.entryBlock: + continue + types = set(zip(*block.predecessors)[1]) + if len(types) <= 1: + continue + assert not isinstance(block.jump, (ssa_jumps.Return, ssa_jumps.Rethrow)) + + new = self._newBlockFrom(block) + print 'Splitting', block, '->', new + # first fix up CFG edges + badpreds = [t for t in block.predecessors if t[1]] + new.predecessors = badpreds + for t in badpreds: + block.predecessors.remove(t) + + for pred, _ in badpreds: + assert isinstance(pred.jump, ssa_jumps.OnException) + pred.jump.replaceExceptTarget(block, new) + + new.jump = ssa_jumps.Goto(self, block) + block.predecessors.append((new, False)) + + # fix up variables + new.phis = [] + new.unaryConstraints = {} + for phi in block.phis: + newrval = self._copyVar(phi.rval) + new.unaryConstraints[newrval] = block.unaryConstraints[phi.rval] + newphi = ssa_ops.Phi(new, newrval) + new.phis.append(newphi) + + for t in badpreds: + arg = phi.get(t) + phi.delete(t) + newphi.add(t, arg) + phi.add((new, False), newrval) + assert self._conscheck() is None + + def fixLoops(self): + assert not self.procs + todo = self.blocks[:] + while todo: + newtodo = [] + temp = set(todo) + sccs = graph_util.tarjanSCC(todo, lambda block:[x for x,t in block.predecessors if x in temp]) + + for scc in sccs: + if len(scc) <= 1: + continue + + scc_pair_set = {(x, False) for x in scc} | {(x, True) for x in scc} + entries = [n for n in scc if not scc_pair_set.issuperset(n.predecessors)] + + if len(entries) <= 1: + head = entries[0] + else: + # if more than one entry point into the loop, we have to choose one as the head and duplicate the rest + print 'Warning, multiple entry point loop detected. Generated code may be extremely large', + print '({} entry points, {} blocks)'.format(len(entries), len(scc)) + def loopSuccessors(head, block): + if block == head: + return [] + return [x for x in block.jump.getSuccessors() if (x, False) in scc_pair_set] + + reaches = [(n, graph_util.topologicalSort(entries, functools.partial(loopSuccessors, n))) for n in scc] + for head, reachable in reaches: + reachable.remove(head) + + head, reachable = min(reaches, key=lambda t:(len(t[1]), -len(t[0].predecessors))) + assert head not in reachable + print 'Duplicating {} nodes'.format(len(reachable)) + blockd = self._duplicateBlocks(reachable, set(scc) - set(reachable)) + newtodo += map(blockd.get, reachable) + newtodo.extend(scc) + newtodo.remove(head) + todo = newtodo + assert self._conscheck() is None + + # Functions called by children ########################################### + # assign variable names for debugging + varnum = collections.defaultdict(itertools.count) + def makeVariable(self, *args, **kwargs): + # Note: Make sure this doesn't hold on to created variables in any way, + # since this func may be called for temporary results that are discarded + var = SSA_Variable(*args, **kwargs) + # pref = args[0][0][0].replace('o','a') + # var.name = pref + str(next(self.varnum[pref])) + return var + + def setObjVarData(self, var, vtype, initMap): + vtype2 = initMap.get(vtype, vtype) + tt = objtypes.verifierToSynthetic(vtype2) + assert var.decltype is None or var.decltype == tt + var.decltype = tt + # if uninitialized, record the offset of originating new instruction for later + if vtype.tag == '.new': + assert var.uninit_orig_num is None or var.uninit_orig_num == vtype.extra + var.uninit_orig_num = vtype.extra + + def makeVarFromVtype(self, vtype, initMap): + vtype2 = initMap.get(vtype, vtype) + type_ = verifierToSSAType(vtype2) + if type_ is not None: + var = self.makeVariable(type_) + if type_ == SSA_OBJECT: + self.setObjVarData(var, vtype, initMap) + return var + return None + + def getConstPoolArgs(self, index): + return self.class_.cpool.getArgs(index) + + def getConstPoolType(self, index): + return self.class_.cpool.getType(index) + +def ssaFromVerified(code, iNodes, opts): + method = code.method + inputTypes, returnTypes = parseUnboundMethodDescriptor(method.descriptor, method.class_.name, method.static) + + parent = SSA_Graph(code) + data = blockmaker.BlockMaker(parent, iNodes, inputTypes, returnTypes, code.except_raw, opts=opts) + + parent.blocks = blocks = data.blocks + parent.entryBlock = data.entryBlock + parent.inputArgs = data.inputArgs + assert parent.entryBlock in blocks + + # create subproc info + procd = {block.jump.target: subproc.ProcInfo(block, block.jump.target) for block in blocks if isinstance(block.jump, subproc.DummyRet)} + for block in blocks: + if isinstance(block.jump, subproc.ProcCallOp): + procd[block.jump.target].jsrblocks.append(block) + parent.procs = sorted(procd.values(), key=lambda p:p.target.key) + + # Intern constraints to save a bit of memory for long methods + def makeConstraint(var, _cache={}): + key = var.type, var.const, var.decltype, var.uninit_orig_num is None + try: + return _cache[key] + except KeyError: + _cache[key] = temp = constraints.fromVariable(parent.env, var) + return temp + + # create unary constraints for each variable + for block in blocks: + bvars = [] + if isinstance(block.jump, subproc.ProcCallOp): + bvars += block.jump.flatOutput() + # entry block has no phis + if block is parent.entryBlock: + bvars += parent.inputArgs + + bvars = [v for v in bvars if v is not None] + bvars += [phi.rval for phi in block.phis] + for op in block.lines: + bvars += op.params + bvars += [x for x in op.getOutputs() if x is not None] + bvars += block.jump.params + + for suc, t in block.jump.getSuccessorPairs(): + for phi in suc.phis: + bvars.append(phi.get((block, t))) + assert None not in bvars + # Note that makeConstraint can indirectly cause class loading + block.unaryConstraints = {var:makeConstraint(var) for var in bvars} + + parent._conscheck() + return parent diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/mixin.py b/src/main/resources/Krakatau-master/Krakatau/ssa/mixin.py new file mode 100644 index 00000000..927c7097 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/mixin.py @@ -0,0 +1,6 @@ +class ValueType(object): + '''Define _key() and inherit from this class to implement comparison and hashing''' + # def __init__(self, *args, **kwargs): super(ValueType, self).__init__(*args, **kwargs) + def __eq__(self, other): return type(self) == type(other) and self._key() == other._key() + def __ne__(self, other): return type(self) != type(other) or self._key() != other._key() + def __hash__(self): return hash(self._key()) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/objtypes.py b/src/main/resources/Krakatau-master/Krakatau/ssa/objtypes.py new file mode 100644 index 00000000..145c6f65 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/objtypes.py @@ -0,0 +1,126 @@ +from ..verifier import verifier_types as vtypes + +# types are represented by classname, dimension +# primitive types are .int, etc since these cannot be valid classnames since periods are forbidden +def TypeTT(baset, dim): + assert dim >= 0 + return baset, dim + +# Not real types +VoidTT = TypeTT('.void', 0) +NullTT = TypeTT('.null', 0) + +ObjectTT = TypeTT('java/lang/Object', 0) +StringTT = TypeTT('java/lang/String', 0) +ThrowableTT = TypeTT('java/lang/Throwable', 0) +ClassTT = TypeTT('java/lang/Class', 0) + +BoolTT = TypeTT('.boolean', 0) +IntTT = TypeTT('.int', 0) +LongTT = TypeTT('.long', 0) +FloatTT = TypeTT('.float', 0) +DoubleTT = TypeTT('.double', 0) + +ByteTT = TypeTT('.byte', 0) +CharTT = TypeTT('.char', 0) +ShortTT = TypeTT('.short', 0) + +BExpr = '.bexpr' # bool or byte + +def baset(tt): return tt[0] +def dim(tt): return tt[1] +def withDimInc(tt, inc): return TypeTT(baset(tt), dim(tt)+inc) +def withNoDim(tt): return TypeTT(baset(tt), 0) + +def isBaseTClass(tt): return not baset(tt).startswith('.') +def className(tt): return baset(tt) if not baset(tt).startswith('.') else None +def primName(tt): return baset(tt)[1:] if baset(tt).startswith('.') else None + +############################################################################### + +def isSubtype(env, x, y): + if x == y or y == ObjectTT or x == NullTT: + return True + elif y == NullTT: + return False + + xname, xdim = baset(x), dim(x) + yname, ydim = baset(y), dim(y) + if ydim > xdim: + return False + elif xdim > ydim: # TODO - these constants should be defined in one place to reduce risk of typos + return yname in ('java/lang/Object','java/lang/Cloneable','java/io/Serializable') + else: + return isBaseTClass(x) and isBaseTClass(y) and env.isSubclass(xname, yname) + +# Will not return interface unless all inputs are same interface or null +def commonSupertype(env, tts): + assert(hasattr(env, 'getClass')) # catch common errors where we forget the env argument + + tts = set(tts) + tts.discard(NullTT) + + if len(tts) == 1: + return tts.pop() + elif not tts: + return NullTT + + dims = map(dim, tts) + newdim = min(dims) + if max(dims) > newdim or any(baset(tt) == 'java/lang/Object' for tt in tts): + return TypeTT('java/lang/Object', newdim) + # if any are primitive arrays, result is object array of dim-1 + if not all(isBaseTClass(tt) for tt in tts): + return TypeTT('java/lang/Object', newdim-1) + + # find common superclass of base types + bases = sorted(map(baset, tts)) + superclass = reduce(env.commonSuperclass, bases) + return TypeTT(superclass, newdim) + +###################################################################################################### +_verifierConvert = {vtypes.T_INT:IntTT, vtypes.T_FLOAT:FloatTT, vtypes.T_LONG:LongTT, + vtypes.T_DOUBLE:DoubleTT, vtypes.T_SHORT:ShortTT, vtypes.T_CHAR:CharTT, + vtypes.T_BYTE:ByteTT, vtypes.T_BOOL:BoolTT, vtypes.T_NULL:NullTT, + vtypes.OBJECT_INFO:ObjectTT} + +def verifierToSynthetic_seq(vts): + return [verifierToSynthetic(vt) for vt in vts if vt != vtypes.T_INVALID] + +def verifierToSynthetic(vtype): + assert vtype.tag not in (None, '.address', '.new', '.init') + vtype = vtypes.withNoConst(vtype) + + if vtype in _verifierConvert: + return _verifierConvert[vtype] + + base = vtypes.withNoDimension(vtype) + if base in _verifierConvert: + return withDimInc(_verifierConvert[base], vtype.dim) + + return TypeTT(vtype.extra, vtype.dim) + +# returns supers, exacts +def declTypeToActual(env, decltype): + name, newdim = baset(decltype), dim(decltype) + + # Verifier treats bool[]s and byte[]s as interchangeable, so it could really be either + if newdim and (name == baset(ByteTT) or name == baset(BoolTT)): + return [], [withDimInc(ByteTT, newdim), withDimInc(BoolTT, newdim)] + elif not isBaseTClass(decltype): # primitive types can't be subclassed anyway + return [], [decltype] + + # Verifier doesn't fully verify interfaces so they could be anything + if env.isInterface(name): + return [withDimInc(ObjectTT, newdim)], [] + # If class is final, return it as exact, not super + elif env.isFinal(name): + return [], [decltype] + else: + return [decltype], [] + +def removeInterface(env, decltype): + name, newdim = baset(decltype), dim(decltype) + if isBaseTClass(decltype) and env.isInterface(name): + return withDimInc(ObjectTT, newdim) + return decltype diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/__init__.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/__init__.py new file mode 100644 index 00000000..b1124368 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/__init__.py @@ -0,0 +1,10 @@ +from .base import BaseJump + +from .onexception import OnException +from .goto import Goto +from .ifcmp import If +from .exit import Return, Rethrow +from .switch import Switch + +from . import placeholder +OnAbscond = Ret = placeholder.Placeholder diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/base.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/base.py new file mode 100644 index 00000000..27c74348 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/base.py @@ -0,0 +1,18 @@ +import copy + +from ..functionbase import SSAFunctionBase + +class BaseJump(SSAFunctionBase): + def __init__(self, parent, arguments=()): + super(BaseJump, self).__init__(parent,arguments) + + def replaceBlocks(self, blockDict): + assert not self.getSuccessors() + + def getNormalSuccessors(self): return [] + def getExceptSuccessors(self): return [] + def getSuccessors(self): return self.getNormalSuccessors() + self.getExceptSuccessors() + def getSuccessorPairs(self): return [(x,False) for x in self.getNormalSuccessors()] + [(x,True) for x in self.getExceptSuccessors()] + def reduceSuccessors(self, pairsToRemove): return self + + def clone(self): return copy.copy(self) # overriden by classes which need to do a deep copy diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/exit.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/exit.py new file mode 100644 index 00000000..0cccc65d --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/exit.py @@ -0,0 +1,9 @@ +from .base import BaseJump + +class Return(BaseJump): + def __init__(self, parent, arguments): + super(Return, self).__init__(parent, arguments) + +class Rethrow(BaseJump): + def __init__(self, parent, arguments): + super(Rethrow, self).__init__(parent, arguments) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/goto.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/goto.py new file mode 100644 index 00000000..6969c35b --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/goto.py @@ -0,0 +1,17 @@ +from .base import BaseJump + +class Goto(BaseJump): + def __init__(self, parent, target): + super(Goto, self).__init__(parent, []) + self.successors = [target] + + def replaceBlocks(self, blockDict): + self.successors = [blockDict.get(key,key) for key in self.successors] + + def getNormalSuccessors(self): + return self.successors + + def reduceSuccessors(self, pairsToRemove): + if (self.successors[0], False) in pairsToRemove: + return None + return self diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/ifcmp.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/ifcmp.py new file mode 100644 index 00000000..64a936a5 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/ifcmp.py @@ -0,0 +1,101 @@ +from .. import ssa_types +from ..constraints import IntConstraint, ObjectConstraint + +from .base import BaseJump +from .goto import Goto + +class If(BaseJump): + opposites = {'eq':'ne', 'ne':'eq', 'lt':'ge', 'ge':'lt', 'gt':'le', 'le':'gt'} + + def __init__(self, parent, cmp, successors, arguments): + super(If, self).__init__(parent, arguments) + assert cmp in ('eq','ne','lt','ge','gt','le') + self.cmp = cmp + self.successors = successors + self.isObj = (arguments[0].type == ssa_types.SSA_OBJECT) + assert None not in successors + + def replaceBlocks(self, blockDict): + self.successors = [blockDict.get(key,key) for key in self.successors] + + def getNormalSuccessors(self): + return self.successors + + def reduceSuccessors(self, pairsToRemove): + temp = set(self.successors) + for (child, t) in pairsToRemove: + temp.remove(child) + + if len(temp) == 0: + return None + elif len(temp) == 1: + return Goto(self.parent, temp.pop()) + return self + + ############################################################################### + def constrainJumps(self, x, y): + impossible = [] + for child in self.successors: + func = self.getSuccessorConstraints((child,False)) + + results = func(x,y) + if None in results: + assert results == (None,None) + impossible.append((child,False)) + return self.reduceSuccessors(impossible) + + def getSuccessorConstraints(self, (block, t)): + assert t is False + cmp_t = If.opposites[self.cmp] if block == self.successors[0] else self.cmp + + if self.isObj: + def propagateConstraints_obj(x, y): + if x is None or y is None: + return None, None + if cmp_t == 'eq': + z = x.join(y) + return z,z + else: + x2, y2 = x, y + if x.isConstNull(): + yt = y.types + y2 = ObjectConstraint.fromTops(yt.env, yt.supers, yt.exact, nonnull=True) + if y.isConstNull(): + xt = x.types + x2 = ObjectConstraint.fromTops(xt.env, xt.supers, xt.exact, nonnull=True) + return x2, y2 + return propagateConstraints_obj + else: + def propagateConstraints_int(x, y): + if x is None or y is None: + return None, None + x1, x2, y1, y2 = x.min, x.max, y.min, y.max + if cmp_t == 'ge' or cmp_t == 'gt': + x1, x2, y1, y2 = y1, y2, x1, x2 + + # treat greater like less than swap before and afterwards + if cmp_t == 'lt' or cmp_t == 'gt': + x2 = min(x2, y2-1) + y1 = max(x1+1, y1) + elif cmp_t == 'le' or cmp_t == 'ge': + x2 = min(x2, y2) + y1 = max(x1, y1) + elif cmp_t == 'eq': + x1 = y1 = max(x1, y1) + x2 = y2 = min(x2, y2) + elif cmp_t == 'ne': + if x1 == x2 == y1 == y2: + return None, None + if x1 == x2: + y1 = y1 if y1 != x1 else y1+1 + y2 = y2 if y2 != x2 else y2-1 + if y1 == y2: + x1 = x1 if x1 != y1 else x1+1 + x2 = x2 if x2 != y2 else x2-1 + + if cmp_t == 'ge' or cmp_t == 'gt': + x1, x2, y1, y2 = y1, y2, x1, x2 + con1 = IntConstraint.range(x.width, x1, x2) if x1 <= x2 else None + con2 = IntConstraint.range(y.width, y1, y2) if y1 <= y2 else None + return con1, con2 + return propagateConstraints_int diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/onexception.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/onexception.py new file mode 100644 index 00000000..4c56c0fe --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/onexception.py @@ -0,0 +1,59 @@ +from .. import objtypes +from ..constraints import ObjectConstraint +from ..exceptionset import CatchSetManager, ExceptionSet + +from .base import BaseJump +from .goto import Goto + +class OnException(BaseJump): + def __init__(self, parent, throwvar, chpairs, fallthrough=None): + super(OnException, self).__init__(parent, [throwvar]) + self.default = fallthrough + self.cs = CatchSetManager.new(parent.env, chpairs) + self.cs.pruneKeys() + + def replaceExceptTarget(self, old, new): + self.cs.replaceKeys({old:new}) + + def replaceNormalTarget(self, old, new): + self.default = new if self.default == old else self.default + + def replaceBlocks(self, blockDict): + self.cs.replaceKeys(blockDict) + if self.default is not None: + self.default = blockDict.get(self.default, self.default) + + def reduceSuccessors(self, pairsToRemove): + for (child, t) in pairsToRemove: + if t: + self.cs.mask -= self.cs.sets[child] + del self.cs.sets[child] + else: + self.replaceNormalTarget(child, None) + + self.cs.pruneKeys() + if not self.cs.sets: + if not self.default: + return None + return Goto(self.parent, self.default) + return self + + def getNormalSuccessors(self): + return [self.default] if self.default is not None else [] + + def getExceptSuccessors(self): + return self.cs.sets.keys() + + def clone(self): + new = super(OnException, self).clone() + new.cs = self.cs.copy() + return new + + ############################################################################### + def constrainJumps(self, x): + if x is None: + mask = ExceptionSet.EMPTY + else: + mask = ExceptionSet(x.types.env, [(objtypes.className(tt),()) for tt in x.types.supers | x.types.exact]) + self.cs.newMask(mask) + return self.reduceSuccessors([]) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/placeholder.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/placeholder.py new file mode 100644 index 00000000..db6b94d3 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/placeholder.py @@ -0,0 +1,5 @@ +from .base import BaseJump + +class Placeholder(BaseJump): + def __init__(self, parent, *args, **kwargs): + super(Placeholder, self).__init__(parent) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/switch.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/switch.py new file mode 100644 index 00000000..12506124 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/switch.py @@ -0,0 +1,86 @@ +import collections + +from ..constraints import IntConstraint +from ..ssa_types import SSA_INT + +from .base import BaseJump +from .goto import Goto +from .ifcmp import If + +class Switch(BaseJump): + def __init__(self, parent, default, table, arguments): + super(Switch, self).__init__(parent, arguments) + + # get ordered successors since our map will be unordered. Default is always first successor + if not table: + ordered = [default] + else: + tset = set() + ordered = [x for x in (default,) + zip(*table)[1] if not x in tset and not tset.add(x)] + + self.successors = ordered + reverse = collections.defaultdict(set) + for k,v in table: + if v != default: + reverse[v].add(k) + self.reverse = {k: frozenset(v) for k, v in reverse.items()} + + def getNormalSuccessors(self): + return self.successors + + def replaceBlocks(self, blockDict): + self.successors = [blockDict.get(key,key) for key in self.successors] + self.reverse = {blockDict.get(k,k):v for k,v in self.reverse.items()} + + def reduceSuccessors(self, pairsToRemove): + temp = list(self.successors) + for (child, t) in pairsToRemove: + temp.remove(child) + + if len(temp) == 0: + return None + elif len(temp) == 1: + return Goto(self.parent, temp.pop()) + + if len(temp) < len(self.successors): + self.successors = temp + self.reverse = {v:self.reverse[v] for v in temp[1:]} + return self + + def simplifyToIf(self, block): + # Try to replace with an if statement if possible + # e.g. switch(x) {case C: ... default: ...} -> if (x == C) {...} else {...} + if len(self.successors) == 2: + cases = self.reverse[self.successors[-1]] + if len(cases) == 1: + const = self.parent.makeVariable(SSA_INT) + const.const = min(cases) + block.unaryConstraints[const] = IntConstraint.const(32, const.const) + return If(self.parent, 'eq', self.successors, self.params + [const]) + return self + + ############################################################################### + def constrainJumps(self, x): + impossible = [] + for child in self.successors: + func = self.getSuccessorConstraints((child,False)) + results = func(x) + if results[0] is None: + impossible.append((child,False)) + return self.reduceSuccessors(impossible) + + def getSuccessorConstraints(self, (block, t)): + if block in self.reverse: + cmin = min(self.reverse[block]) + cmax = max(self.reverse[block]) + def propagateConstraints(x): + if x is None: + return None, + return IntConstraint.range(x.width, max(cmin, x.min), min(cmax, x.max)), + else: + allcases = set().union(*self.reverse.values()) + def propagateConstraints(x): + if x is None or (x.min == x.max and x.min in allcases): + return None, + return x, + return propagateConstraints diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/__init__.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/__init__.py new file mode 100644 index 00000000..a8b586f9 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/__init__.py @@ -0,0 +1,16 @@ +from .base import BaseOp + +from .array import ArrLoad, ArrStore, ArrLength +from .checkcast import CheckCast, InstanceOf +from .convert import Convert +from .fieldaccess import FieldAccess +from .fmath import FAdd, FDiv, FMul, FRem, FSub, FNeg, FCmp +from .invoke import Invoke, InvokeDynamic +from .imath import IAdd, IDiv, IMul, IRem, ISub, IAnd, IOr, IShl, IShr, IUshr, IXor, ICmp +from .monitor import Monitor +from .new import New, NewArray, MultiNewArray +from .throw import Throw, MagicThrow +from .truncate import Truncate +from .tryreturn import TryReturn + +from .phi import Phi, ExceptionPhi diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/array.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/array.py new file mode 100644 index 00000000..ad4d1041 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/array.py @@ -0,0 +1,79 @@ +from .. import excepttypes, objtypes +from ..constraints import FloatConstraint, IntConstraint, ObjectConstraint, maybeThrow, returnOrThrow, throw +from ..ssa_types import SSA_INT + +from .base import BaseOp + +def getElementTypes(env, tops): + types = [objtypes.withDimInc(tt, -1) for tt in tops] + # temporary hack + types = [objtypes.removeInterface(env, tt) for tt in types] + + supers = [tt for tt in types if objtypes.isBaseTClass(tt)] + exact = [tt for tt in types if not objtypes.isBaseTClass(tt)] + return ObjectConstraint.fromTops(env, supers, exact) + +class ArrLoad(BaseOp): + def __init__(self, parent, args, ssatype): + super(ArrLoad, self).__init__(parent, args, makeException=True) + self.env = parent.env + self.rval = parent.makeVariable(ssatype, origin=self) + self.ssatype = ssatype + + def propagateConstraints(self, a, i): + etypes = (excepttypes.ArrayOOB,) + if a.null: + etypes += (excepttypes.NullPtr,) + if a.isConstNull(): + return throw(ObjectConstraint.fromTops(self.env, [], [excepttypes.NullPtr], nonnull=True)) + + if self.ssatype[0] == 'int': + rout = IntConstraint.bot(self.ssatype[1]) + elif self.ssatype[0] == 'float': + rout = FloatConstraint.bot(self.ssatype[1]) + elif self.ssatype[0] == 'obj': + rout = getElementTypes(self.env, a.types.supers | a.types.exact) + + eout = ObjectConstraint.fromTops(self.env, [], etypes, nonnull=True) + return returnOrThrow(rout, eout) + +class ArrStore(BaseOp): + has_side_effects = True + + def __init__(self, parent, args): + super(ArrStore, self).__init__(parent, args, makeException=True) + self.env = parent.env + + def propagateConstraints(self, a, i, x): + etypes = (excepttypes.ArrayOOB,) + if a.null: + etypes += (excepttypes.NullPtr,) + if a.isConstNull(): + return throw(ObjectConstraint.fromTops(self.env, [], [excepttypes.NullPtr], nonnull=True)) + + if isinstance(x, ObjectConstraint): + # If the type of a is known exactly to be the single possibility T[] + # and x is assignable to T, we can assume there is no ArrayStore exception + # if a's type has multiple possibilities, then there can be an exception + known_type = a.types.exact if len(a.types.exact) == 1 else frozenset() + allowed = getElementTypes(self.env, known_type) + if allowed.meet(x) != allowed: + etypes += (excepttypes.ArrayStore,) + + return maybeThrow(ObjectConstraint.fromTops(self.env, [], etypes, nonnull=True)) + +class ArrLength(BaseOp): + def __init__(self, parent, args): + super(ArrLength, self).__init__(parent, args, makeException=True) + self.env = parent.env + self.rval = parent.makeVariable(SSA_INT, origin=self) + + def propagateConstraints(self, x): + etypes = () + if x.null: + etypes += (excepttypes.NullPtr,) + if x.isConstNull(): + return throw(ObjectConstraint.fromTops(self.env, [], [excepttypes.NullPtr], nonnull=True)) + + excons = ObjectConstraint.fromTops(self.env, [], etypes, nonnull=True) + return returnOrThrow(IntConstraint.range(32, 0, (1<<31)-1), excons) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/base.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/base.py new file mode 100644 index 00000000..f2ae467f --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/base.py @@ -0,0 +1,30 @@ +from ..functionbase import SSAFunctionBase +from ..ssa_types import SSA_OBJECT + +class BaseOp(SSAFunctionBase): + has_side_effects = False + + def __init__(self, parent, arguments, makeException=False): + super(BaseOp, self).__init__(parent, arguments) + + self.rval = None + self.outException = None + + if makeException: + self.outException = parent.makeVariable(SSA_OBJECT, origin=self) + + def getOutputs(self): + return self.rval, self.outException + + def removeOutput(self, var): + outs = self.rval, self.outException + assert var is not None and var in outs + self.rval, self.outException = [(x if x != var else None) for x in outs] + + def replaceOutVars(self, vardict): + self.rval, self.outException = map(vardict.get, (self.rval, self.outException)) + + # Given input constraints, return constraints on outputs. Output is (rval, exception) + # With None returned for unused or impossible values. This should only be defined if it is + # actually implemented. + # def propagateConstraints(self, *cons): diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/bitwise_util.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/bitwise_util.py new file mode 100644 index 00000000..da9f521b --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/bitwise_util.py @@ -0,0 +1,54 @@ +import itertools +import operator + +from ..constraints import IntConstraint + +def split_pow2ranges(x,y): + '''split given range into power of two ranges of form [x, x+2^k)''' + out = [] + while x<=y: + # The largest power of two range of the form x,k + # has k min of number of zeros at end of x + # and the largest power of two that fits in y-x + bx = bin(x) + numzeroes = float('inf') if x==0 else (len(bx)-bx.rindex('1')-1) + k = min(numzeroes, (y-x+1).bit_length()-1) + out.append((x,k)) + x += 1< k2: + (s1,k1),(s2,k2) = (s2,k2),(s1,k1) + + mask1 = (1<>w != zmax>>w) + + if split: + return return_(IntConstraint.range(w, -HN, HN-1)) + else: + N = 1<= -H) else H-1 + return m1, m2 + +class IShl(BaseOp): + def __init__(self, parent, args): + BaseOp.__init__(self, parent, args) + self.rval = parent.makeVariable(args[0].type, origin=self) + + def propagateConstraints(self, x, y): + if y.min < y.max: + return return_(IntConstraint.bot(x.width)) + shift = y.min % x.width + if not shift: + return return_(x) + m1, m2 = getMaskedRange(x, x.width - shift) + return return_(IntConstraint.range(x.width, m1<>shift, m2>>shift)) + +class IUshr(BaseOp): + def __init__(self, parent, args): + BaseOp.__init__(self, parent, args) + self.rval = parent.makeVariable(args[0].type, origin=self) + + def propagateConstraints(self, x, y): + M = 1<>shift, m2>>shift)) + +############################################################################################# +exec_tts = excepttypes.Arithmetic, +class IDiv(BaseOp): + def __init__(self, parent, args): + super(IDiv, self).__init__(parent, args, makeException=True) + self.rval = parent.makeVariable(args[0].type, origin=self) + self.outExceptionCons = ObjectConstraint.fromTops(parent.env, [], exec_tts, nonnull=True) + + def propagateConstraints(self, x, y): + excons = self.outExceptionCons if (y.min <= 0 <= y.max) else None + if y.min == 0 == y.max: + return throw(excons) + + # Calculate possible extremes for division, taking into account special case of intmin/-1 + intmin = -1<<(x.width - 1) + xvals = set([x.min, x.max]) + yvals = set([y.min, y.max]) + + for val in (intmin+1, 0): + if x.min <= val <= x.max: + xvals.add(val) + for val in (-2,-1,1): + if y.min <= val <= y.max: + yvals.add(val) + yvals.discard(0) + + vals = set() + for xv, yv in itertools.product(xvals, yvals): + if xv == intmin and yv == -1: + vals.add(intmin) + elif xv*yv < 0: # Unlike Python, Java rounds to 0 so opposite sign case must be handled specially + vals.add(-(-xv//yv)) + else: + vals.add(xv//yv) + + rvalcons = IntConstraint.range(x.width, min(vals), max(vals)) + return returnOrThrow(rvalcons, excons) + +class IRem(BaseOp): + def __init__(self, parent, args): + super(IRem, self).__init__(parent, args, makeException=True) + self.rval = parent.makeVariable(args[0].type, origin=self) + self.outExceptionCons = ObjectConstraint.fromTops(parent.env, [], exec_tts, nonnull=True) + + def propagateConstraints(self, x, y): + excons = self.outExceptionCons if (y.min <= 0 <= y.max) else None + if y.min == 0 == y.max: + return throw(excons) + # only do an exact result if both values are constants, and otherwise + # just approximate the range as -(y-1) to (y-1) (or 0 to y-1 if it's positive) + if x.min == x.max and y.min == y.max: + val = abs(x.min) % abs(y.min) + val = val if x.min >= 0 else -val + return return_(IntConstraint.range(x.width, val, val)) + + mag = max(abs(y.min), abs(y.max)) - 1 + rmin = -min(mag, abs(x.min)) if x.min < 0 else 0 + rmax = min(mag, abs(x.max)) if x.max > 0 else 0 + + rvalcons = IntConstraint.range(x.width, rmin, rmax) + return returnOrThrow(rvalcons, excons) + +############################################################################### +class ICmp(BaseOp): + def __init__(self, parent, args): + BaseOp.__init__(self, parent, args) + self.rval = parent.makeVariable(ssa_types.SSA_INT, origin=self) + + def propagateConstraints(self, x, y): + rvalcons = IntConstraint.range(32, -1, 1) + return return_(rvalcons) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/invoke.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/invoke.py new file mode 100644 index 00000000..a403f2ae --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/invoke.py @@ -0,0 +1,87 @@ +from ...verifier.descriptors import parseMethodDescriptor + +from .. import constraints, excepttypes, objtypes +from ..constraints import ObjectConstraint, returnOrThrow, throw +from ..ssa_types import SSA_OBJECT, verifierToSSAType + +from .base import BaseOp + +class Invoke(BaseOp): + has_side_effects = True + + def __init__(self, parent, instr, info, args, isThisCtor, target_tt): + super(Invoke, self).__init__(parent, args, makeException=True) + + self.instruction = instr + self.target, self.name, self.desc = info + self.isThisCtor = isThisCtor # whether this is a ctor call for the current class + self.target_tt = target_tt + vtypes = parseMethodDescriptor(self.desc)[1] + + dtype = None + if vtypes: + stype = verifierToSSAType(vtypes[0]) + dtype = objtypes.verifierToSynthetic(vtypes[0]) + cat = len(vtypes) + # clone() on an array type is known to always return that type, rather than any Object + if self.name == "clone" and target_tt[1] > 0: + dtype = target_tt + + self.rval = parent.makeVariable(stype, origin=self) + self.returned = [self.rval] + [None]*(cat-1) + else: + self.rval, self.returned = None, [] + + # just use a fixed constraint until we can do interprocedural analysis + # output order is rval, exception, defined by BaseOp.getOutputs + env = parent.env + self.eout = ObjectConstraint.fromTops(env, [objtypes.ThrowableTT], [], nonnull=True) + self.eout_npe = ObjectConstraint.fromTops(env, [excepttypes.NullPtr], [], nonnull=True) + if self.rval is not None: + if self.rval.type == SSA_OBJECT: + supers, exact = objtypes.declTypeToActual(env, dtype) + self.rout = ObjectConstraint.fromTops(env, supers, exact) + else: + self.rout = constraints.fromVariable(env, self.rval) + else: + self.rout = None + + def propagateConstraints(self, *incons): + if self.instruction[0] != 'invokestatic' and incons[0].isConstNull(): + return throw(self.eout_npe) + return returnOrThrow(self.rout, self.eout) + +# TODO - cleanup +class InvokeDynamic(BaseOp): + has_side_effects = True + + def __init__(self, parent, desc, args): + super(InvokeDynamic, self).__init__(parent, args, makeException=True) + self.desc = desc + vtypes = parseMethodDescriptor(self.desc)[1] + + dtype = None + if vtypes: + stype = verifierToSSAType(vtypes[0]) + dtype = objtypes.verifierToSynthetic(vtypes[0]) + cat = len(vtypes) + self.rval = parent.makeVariable(stype, origin=self) + self.returned = [self.rval] + [None]*(cat-1) + else: + self.rval, self.returned = None, [] + + # just use a fixed constraint until we can do interprocedural analysis + # output order is rval, exception, defined by BaseOp.getOutputs + env = parent.env + self.eout = ObjectConstraint.fromTops(env, [objtypes.ThrowableTT], [], nonnull=True) + if self.rval is not None: + if self.rval.type == SSA_OBJECT: + supers, exact = objtypes.declTypeToActual(env, dtype) + self.rout = ObjectConstraint.fromTops(env, supers, exact) + else: + self.rout = constraints.fromVariable(env, self.rval) + else: + self.rout = None + + def propagateConstraints(self, *incons): + return returnOrThrow(self.rout, self.eout) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/monitor.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/monitor.py new file mode 100644 index 00000000..80396d3b --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/monitor.py @@ -0,0 +1,21 @@ +from .. import excepttypes +from ..constraints import ObjectConstraint, maybeThrow + +from .base import BaseOp + +class Monitor(BaseOp): + has_side_effects = True + + def __init__(self, parent, args, isExit): + BaseOp.__init__(self, parent, args, makeException=True) + self.exit = isExit + self.env = parent.env + + def propagateConstraints(self, x): + etypes = () + if x.null: + etypes += (excepttypes.NullPtr,) + if self.exit and not x.isConstNull(): + etypes += (excepttypes.MonState,) + eout = ObjectConstraint.fromTops(self.env, [], etypes, nonnull=True) + return maybeThrow(eout) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/new.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/new.py new file mode 100644 index 00000000..7c4aabf0 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/new.py @@ -0,0 +1,68 @@ +from .. import excepttypes, objtypes +from ..constraints import ObjectConstraint, returnOrThrow, throw +from ..ssa_types import SSA_OBJECT + +from .base import BaseOp + +class New(BaseOp): + has_side_effects = True + + def __init__(self, parent, name, inode_key): + super(New, self).__init__(parent, [], makeException=True) + self.env = parent.env + self.tt = objtypes.TypeTT(name, 0) + self.rval = parent.makeVariable(SSA_OBJECT, origin=self) + self.rval.uninit_orig_num = inode_key + + def propagateConstraints(self): + eout = ObjectConstraint.fromTops(self.env, [], (excepttypes.OOM,), nonnull=True) + rout = ObjectConstraint.fromTops(self.env, [], [self.tt], nonnull=True) + return returnOrThrow(rout, eout) + +class NewArray(BaseOp): + has_side_effects = True + + def __init__(self, parent, param, baset): + super(NewArray, self).__init__(parent, [param], makeException=True) + self.baset = baset + self.rval = parent.makeVariable(SSA_OBJECT, origin=self) + self.tt = objtypes.withDimInc(baset, 1) + self.env = parent.env + + def propagateConstraints(self, i): + if i.max < 0: + eout = ObjectConstraint.fromTops(self.env, [], (excepttypes.NegArrSize,), nonnull=True) + return throw(eout) + + etypes = (excepttypes.OOM,) + if i.min < 0: + etypes += (excepttypes.NegArrSize,) + + eout = ObjectConstraint.fromTops(self.env, [], etypes, nonnull=True) + rout = ObjectConstraint.fromTops(self.env, [], [self.tt], nonnull=True) + return returnOrThrow(rout, eout) + +class MultiNewArray(BaseOp): + has_side_effects = True + + def __init__(self, parent, params, type_): + super(MultiNewArray, self).__init__(parent, params, makeException=True) + self.tt = type_ + self.rval = parent.makeVariable(SSA_OBJECT, origin=self) + self.env = parent.env + + def propagateConstraints(self, *dims): + for i in dims: + if i.max < 0: # ignore possibility of OOM here + eout = ObjectConstraint.fromTops(self.env, [], (excepttypes.NegArrSize,), nonnull=True) + return throw(eout) + + etypes = (excepttypes.OOM,) + for i in dims: + if i.min < 0: + etypes += (excepttypes.NegArrSize,) + break + + eout = ObjectConstraint.fromTops(self.env, [], etypes, nonnull=True) + rout = ObjectConstraint.fromTops(self.env, [], [self.tt], nonnull=True) + return returnOrThrow(rout, eout) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/phi.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/phi.py new file mode 100644 index 00000000..0ce08a74 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/phi.py @@ -0,0 +1,46 @@ +from .base import BaseOp + +class Phi(object): + __slots__ = 'block dict rval'.split() + has_side_effects = False + + def __init__(self, block, rval): + self.block = block # used in constraint propagation + self.dict = {} + self.rval = rval + assert rval is not None and rval.origin is None + rval.origin = self + + def add(self, key, val): + assert key not in self.dict + assert val.type == self.rval.type + assert val is not None + self.dict[key] = val + + @property + def params(self): return [self.dict[k] for k in self.block.predecessors] + + def get(self, key): return self.dict[key] + def delete(self, key): del self.dict[key] + + # Copy these over from BaseOp so we don't need to inherit + def replaceVars(self, rdict): + for k in self.dict: + self.dict[k] = rdict.get(self.dict[k], self.dict[k]) + + def getOutputs(self): + return self.rval, None, None + + def removeOutput(self, var): + assert var == self.rval + self.rval = None + +# An extended basic block can contain multiple throwing instructions +# but the OnException jump expects a single param. The solution is +# to create a dummy op that behaves like a phi function, selecting +# among the possible thrown exceptions in the block. This is always +# the last op in block.lines when there are exceptions. +# As this is a phi, params can be variable length +class ExceptionPhi(BaseOp): + def __init__(self, parent, params): + BaseOp.__init__(self, parent, params, makeException=True) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/throw.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/throw.py new file mode 100644 index 00000000..0a17c899 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/throw.py @@ -0,0 +1,25 @@ +from .. import excepttypes, objtypes +from ..constraints import ObjectConstraint, maybeThrow, throw + +from .base import BaseOp + +class Throw(BaseOp): + def __init__(self, parent, args): + super(Throw, self).__init__(parent, args, makeException=True) + self.env = parent.env + + def propagateConstraints(self, x): + if x.null: + t = x.types + exact = list(t.exact) + [excepttypes.NullPtr] + return throw(ObjectConstraint.fromTops(t.env, t.supers, exact, nonnull=True)) + return throw(x) + +# Dummy instruction that can throw anything +class MagicThrow(BaseOp): + def __init__(self, parent): + super(MagicThrow, self).__init__(parent, [], makeException=True) + self.eout = ObjectConstraint.fromTops(parent.env, [objtypes.ThrowableTT], [], nonnull=True) + + def propagateConstraints(self): + return maybeThrow(self.eout) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/truncate.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/truncate.py new file mode 100644 index 00000000..e1dc8e89 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/truncate.py @@ -0,0 +1,37 @@ +from ..constraints import IntConstraint, return_ + +from . import bitwise_util +from .base import BaseOp + +class Truncate(BaseOp): + def __init__(self, parent, arg, signed, width): + super(Truncate, self).__init__(parent, [arg]) + + self.signed, self.width = signed, width + self.rval = parent.makeVariable(arg.type, origin=self) + + def propagateConstraints(self, x): + # get range of target type + w = self.width + intw = x.width + assert w < intw + M = 1<>1 + + parts = [(i-M if i>=HM else i) for i in (x.min, x.max)] + if x.min <= HM-1 <= x.max: + parts.append(HM-1) + if x.min <= HM <= x.max: + parts.append(-HM) + + assert -HM <= min(parts) <= max(parts) <= HM-1 + return return_(IntConstraint.range(intw, min(parts), max(parts))) + else: + return return_(x) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/tryreturn.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/tryreturn.py new file mode 100644 index 00000000..cc14acc1 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/tryreturn.py @@ -0,0 +1,12 @@ +from .. import excepttypes +from ..constraints import ObjectConstraint, maybeThrow + +from .base import BaseOp + +class TryReturn(BaseOp): + def __init__(self, parent, canthrow=True): + super(TryReturn, self).__init__(parent, [], makeException=True) + self.outExceptionCons = ObjectConstraint.fromTops(parent.env, [], (excepttypes.MonState,), nonnull=True) + + def propagateConstraints(self): + return maybeThrow(self.outExceptionCons) diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_types.py b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_types.py new file mode 100644 index 00000000..37081fbb --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/ssa_types.py @@ -0,0 +1,77 @@ +from collections import namedtuple as nt + +from .. import floatutil as fu +from ..verifier import verifier_types as vtypes + +slots_t = nt('slots_t', ('locals', 'stack')) + +def _localsAsList(self): return [t[1] for t in sorted(self.locals.items())] +slots_t.localsAsList = property(_localsAsList) + +# types +SSA_INT = 'int', 32 +SSA_LONG = 'int', 64 +SSA_FLOAT = 'float', fu.FLOAT_SIZE +SSA_DOUBLE = 'float', fu.DOUBLE_SIZE +SSA_OBJECT = 'obj', + +def verifierToSSAType(vtype): + vtype_dict = {vtypes.T_INT:SSA_INT, + vtypes.T_LONG:SSA_LONG, + vtypes.T_FLOAT:SSA_FLOAT, + vtypes.T_DOUBLE:SSA_DOUBLE} + # These should never be passed in here + assert vtype.tag not in ('.new','.init') + vtype = vtypes.withNoConst(vtype) + if vtypes.objOrArray(vtype): + return SSA_OBJECT + elif vtype in vtype_dict: + return vtype_dict[vtype] + return None + +# Note: This is actually an Extended Basic Block. A normal basic block has to end whenever there is +# an instruction that can throw. This means that there is a seperate basic block for every throwing +# method, which causes horrible performance, especially in a large method with otherwise linear code. +# The solution is to use extended basic blocks, which are like normal basic blocks except that they +# can contain multiple throwing instructions as long as every throwing instruction has the same +# handlers. Due to the use of SSA, we also require that there are no changes to the locals between the +# first and last throwing instruction. +class BasicBlock(object): + __slots__ = "key phis lines jump unaryConstraints predecessors inslots throwvars chpairs except_used locals_at_except".split() + + def __init__(self, key): + self.key = key + self.phis = None # The list of phi statements merging incoming variables + self.lines = [] # List of operations in the block + self.jump = None # The exit point (if, goto, etc) + + # Holds constraints (range and type information) for each variable in the block. + # If the value is None, this variable cannot be reached + self.unaryConstraints = None + # List of predecessor pairs in deterministic order + self.predecessors = [] + + # temp vars used during graph creation + self.inslots = None + self.throwvars = [] + self.chpairs = None + self.except_used = None + self.locals_at_except = None + + def filterVarConstraints(self, keepvars): + self.unaryConstraints = {k:v for k,v in self.unaryConstraints.items() if k in keepvars} + + def removePredPair(self, pair): + self.predecessors.remove(pair) + for phi in self.phis: + del phi.dict[pair] + + def replacePredPair(self, oldp, newp): + self.predecessors[self.predecessors.index(oldp)] = newp + for phi in self.phis: + phi.dict[newp] = phi.dict[oldp] + del phi.dict[oldp] + + def __str__(self): # pragma: no cover + return 'Block ' + str(self.key) + __repr__ = __str__ diff --git a/src/main/resources/Krakatau-master/Krakatau/ssa/subproc.py b/src/main/resources/Krakatau-master/Krakatau/ssa/subproc.py new file mode 100644 index 00000000..b410e725 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/ssa/subproc.py @@ -0,0 +1,59 @@ +import copy + +from .ssa_types import slots_t + +class ProcInfo(object): + def __init__(self, retblock, target): + self.retblock = retblock + self.target = target + self.jsrblocks = [] + assert target is retblock.jump.target + + def __str__(self): # pragma: no cover + return 'Proc{}<{}>'.format(self.target.key, ', '.join(str(b.key) for b in self.jsrblocks)) + __repr__ = __str__ + +########################################################################################### +class ProcJumpBase(object): + @property + def params(self): + return [v for v in self.input.stack + self.input.localsAsList if v is not None] + # [v for v in self.input.stack if v] + [v for k, v in sorted(self.input.locals.items()) if v] + + def replaceBlocks(self, blockDict): + self.target = blockDict.get(self.target, self.target) + + def getExceptSuccessors(self): return () + def getSuccessors(self): return self.getNormalSuccessors() + def getSuccessorPairs(self): return [(x,False) for x in self.getNormalSuccessors()] + def reduceSuccessors(self, pairsToRemove): return self + +class ProcCallOp(ProcJumpBase): + def __init__(self, target, fallthrough, inslots, outslots): + self.fallthrough = fallthrough + self.target = target + self.input = inslots + self.output = outslots + + for var in self.output.stack + self.output.locals.values(): + if var is not None: + assert var.origin is None + var.origin = self + + # def flatOutput(self): return [v for v in self.output.stack if v] + [v for k, v in sorted(self.output.locals.items()) if v] + def flatOutput(self): return self.output.stack + self.output.localsAsList + + def getNormalSuccessors(self): return self.fallthrough, self.target + +class DummyRet(ProcJumpBase): + def __init__(self, inslots, target): + self.target = target + self.input = inslots + + def replaceVars(self, varDict): + newstack = [varDict.get(v, v) for v in self.input.stack] + newlocals = {k: varDict.get(v, v) for k, v in self.input.locals.items()} + self.input = slots_t(stack=newstack, locals=newlocals) + + def getNormalSuccessors(self): return () + def clone(self): return copy.copy(self) # target and input will be replaced later by calls to replaceBlocks/Vars diff --git a/src/main/resources/Krakatau-master/Krakatau/util/__init__.py b/src/main/resources/Krakatau-master/Krakatau/util/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/main/resources/Krakatau-master/Krakatau/util/thunk.py b/src/main/resources/Krakatau-master/Krakatau/util/thunk.py new file mode 100644 index 00000000..970cfd7c --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/util/thunk.py @@ -0,0 +1,7 @@ +def thunk(initial): + stack = [initial] + while stack: + try: + stack.append(next(stack[-1])) + except StopIteration: + stack.pop() diff --git a/src/main/resources/Krakatau-master/Krakatau/verifier/__init__.py b/src/main/resources/Krakatau-master/Krakatau/verifier/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/main/resources/Krakatau-master/Krakatau/verifier/descriptors.py b/src/main/resources/Krakatau-master/Krakatau/verifier/descriptors.py new file mode 100644 index 00000000..51a3bf96 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/verifier/descriptors.py @@ -0,0 +1,85 @@ +from .verifier_types import T_ARRAY, T_BOOL, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_INVALID, T_LONG, T_OBJECT, T_SHORT, unSynthesizeType + +_cat2tops = T_LONG, T_DOUBLE + +def parseFieldDescriptors(desc_str, unsynthesize=True): + baseTypes = {'B':T_BYTE, 'C':T_CHAR, 'D':T_DOUBLE, 'F':T_FLOAT, + 'I':T_INT, 'J':T_LONG, 'S':T_SHORT, 'Z':T_BOOL} + + fields = [] + while desc_str: + oldlen = len(desc_str) + desc_str = desc_str.lstrip('[') + dim = oldlen - len(desc_str) + if dim > 255: + raise ValueError('Dimension {} > 255 in descriptor'.format(dim)) + if not desc_str: + raise ValueError('Descriptor contains [s at end of string') + + if desc_str[0] == 'L': + end = desc_str.find(';') + if end == -1: + raise ValueError('Unmatched L in descriptor') + + name = desc_str[1:end] + desc_str = desc_str[end+1:] + baset = T_OBJECT(name) + else: + if desc_str[0] not in baseTypes: + raise ValueError('Unrecognized code {} in descriptor'.format(desc_str[0])) + baset = baseTypes[desc_str[0]] + desc_str = desc_str[1:] + + if dim: + # Hotspot considers byte[] and bool[] identical for type checking purposes + if unsynthesize and baset == T_BOOL: + baset = T_BYTE + baset = T_ARRAY(baset, dim) + elif unsynthesize: + # synthetics are only meaningful as basetype of an array + # if they are by themselves, convert to int. + baset = unSynthesizeType(baset) + + fields.append(baset) + if baset in _cat2tops: + fields.append(T_INVALID) + return fields + +# get a single descriptor +def parseFieldDescriptor(desc_str, unsynthesize=True): + rval = parseFieldDescriptors(desc_str, unsynthesize) + + cat = 2 if (rval and rval[0] in _cat2tops) else 1 + if len(rval) != cat: + raise ValueError('Incorrect number of fields in descriptor, expected {} but found {}'.format(cat, len(rval))) + return rval + +# Parse a string to get a Java Method Descriptor +def parseMethodDescriptor(desc_str, unsynthesize=True): + if not desc_str.startswith('('): + raise ValueError('Method descriptor does not start with (') + + # we need to split apart the argument list and return value + # this is greatly complicated by the fact that ) is a legal + # character that can appear in class names + + lp_pos = desc_str.rfind(')') # this case will work if return type is not an object + if desc_str.endswith(';'): + lbound = max(desc_str.rfind(';', 1, -1), 1) + lp_pos = desc_str.find(')', lbound, -1) + if lp_pos < 0 or desc_str[lp_pos] != ')': + raise ValueError('Unable to split method descriptor into arguments and return type') + + arg_str = desc_str[1:lp_pos] + rval_str = desc_str[lp_pos+1:] + + args = parseFieldDescriptors(arg_str, unsynthesize) + rval = [] if rval_str == 'V' else parseFieldDescriptor(rval_str, unsynthesize) + return args, rval + +# Adds self argument for nonstatic. Constructors must be handled seperately +def parseUnboundMethodDescriptor(desc_str, target, isstatic): + args, rval = parseMethodDescriptor(desc_str) + if not isstatic: + args = [T_OBJECT(target)] + args + return args, rval diff --git a/src/main/resources/Krakatau-master/Krakatau/verifier/inference_verifier.py b/src/main/resources/Krakatau-master/Krakatau/verifier/inference_verifier.py new file mode 100644 index 00000000..9ab8cb3f --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/verifier/inference_verifier.py @@ -0,0 +1,508 @@ +import itertools + +from .. import bytecode, error as error_types, opnames as ops + +from .descriptors import parseFieldDescriptor, parseMethodDescriptor, parseUnboundMethodDescriptor +from .verifier_types import OBJECT_INFO, T_ADDRESS, T_ARRAY, T_DOUBLE, T_FLOAT, T_INT, T_INT_CONST, T_INVALID, T_LONG, T_NULL, T_OBJECT, T_UNINIT_OBJECT, T_UNINIT_THIS, decrementDim, exactArrayFrom, fullinfo_t, mergeTypes + +class VerifierTypesState(object): + def __init__(self, stack, locals, masks): + self.stack = stack + self.locals = locals + self.masks = masks + + def copy(self): return VerifierTypesState(self.stack, self.locals, self.masks) + + def withExcept(self, t): return VerifierTypesState([t], self.locals, self.masks) + + def pop(self, n): + if n == 0: + return [] + self.stack, popped = self.stack[:-n], self.stack[-n:] + return popped + + def push(self, vals): + self.stack = self.stack + list(vals) + + def setLocal(self, i, v): + if len(self.locals) < i: + self.locals = self.locals + [T_INVALID]*(i - len(self.locals)) + self.locals = self.locals[:i] + [v] + self.locals[i+1:] + + new = frozenset([i]) + self.masks = [(addr, old | new) for addr, old in self.masks] + + def local(self, i): + if len(self.locals) <= i: + return T_INVALID + return self.locals[i] + + def jsr(self, target): + self.masks = self.masks + [(target, frozenset())] + + def replace(self, old, new): + self.stack = [(new if v == old else v) for v in self.stack] + + mask = frozenset(i for i, v in enumerate(self.locals) if v == old) + self.locals = [(new if v == old else v) for v in self.locals] + self.masks = [(addr, oldmask | mask) for addr, oldmask in self.masks] + + def invalidateNews(self): + # Doesn't need to update mask + self.stack = [(T_INVALID if v.tag == '.new' else v) for v in self.stack] + self.locals = [(T_INVALID if v.tag == '.new' else v) for v in self.locals] + + def maskFor(self, called): + self.masks = self.masks[:] + target, mask = self.masks.pop() + while target != called: + target, mask = self.masks.pop() + return mask + + def returnTo(self, called, jsrstate): + mask = self.maskFor(called) + # merge locals using mask + zipped = itertools.izip_longest(self.locals, jsrstate.locals, fillvalue=T_INVALID) + self.locals = [(x if i in mask else y) for i,(x,y) in enumerate(zipped)] + + def merge(self, other, env): + old_triple = self.stack, self.locals, self.masks + assert len(self.stack) == len(other.stack) + self.stack = [mergeTypes(env, new, old) for old, new in zip(self.stack, other.stack)] + self.locals = [mergeTypes(env, new, old) for old, new in zip(self.locals, other.locals)] + while self.locals and self.locals[-1] == T_INVALID: + self.locals.pop() + + # Merge Masks + last_match = -1 + mergedmasks = [] + for entry1, mask1 in self.masks: + for j, (entry2, mask2) in enumerate(other.masks): + if j > last_match and entry1 == entry2: + item = entry1, (mask1 | mask2) + mergedmasks.append(item) + last_match = j + self.masks = mergedmasks + return (self.stack, self.locals, self.masks) != old_triple + +def stateFromInitialArgs(args): return VerifierTypesState([], args[:], []) + + + +_invoke_ops = (ops.INVOKESPECIAL, ops.INVOKESTATIC, ops.INVOKEVIRTUAL, ops.INVOKEINTERFACE, ops.INVOKEINIT, ops.INVOKEDYNAMIC) + +def _loadFieldDesc(cpool, ind): + target, name, desc = cpool.getArgsCheck('Field', ind) + return parseFieldDescriptor(desc) + +def _loadMethodDesc(cpool, ind): + target, name, desc = cpool.getArgs(ind) + return parseMethodDescriptor(desc) + +def _indexToCFMInfo(cpool, ind, typen): + actual = cpool.getType(ind) + # JVM_GetCPMethodClassNameUTF accepts both + assert actual == typen or actual == 'InterfaceMethod' and typen == 'Method' + + cname = cpool.getArgs(ind)[0] + if cname.startswith('[') or cname.endswith(';'): + try: + return parseFieldDescriptor(cname)[0] + except ValueError as e: + return T_INVALID + else: + return T_OBJECT(cname) + +# Instructions which pop a fixed amount +_popAmount = { + ops.ARRLOAD_OBJ: 2, + ops.ARRSTORE_OBJ: 3, + ops.ARRLOAD: 2, + ops.TRUNCATE: 1, + ops.LCMP: 4, + ops.IF_A: 1, + ops.IF_I: 1, + ops.IF_ACMP: 2, + ops.IF_ICMP: 2, + ops.SWITCH: 1, + ops.NEWARRAY: 1, + ops.ANEWARRAY: 1, + ops.ARRLEN: 1, + ops.THROW: 1, + ops.CHECKCAST: 1, + ops.INSTANCEOF: 1, + ops.MONENTER: 1, + ops.MONEXIT: 1, + ops.GETFIELD: 1, + + ops.NOP: 0, + ops.CONSTNULL: 0, + ops.CONST: 0, + ops.LDC: 0, + ops.LOAD: 0, + ops.IINC: 0, + ops.GOTO: 0, + ops.JSR: 0, + ops.RET: 0, + ops.NEW: 0, + ops.GETSTATIC: 0, +} +# Instructions which pop a variable amount depending on whether type is category 2 +_popAmountVar = { + ops.STORE: (1, 0), + ops.NEG: (1, 0), + ops.CONVERT: (1, 0), + + ops.ADD: (2, 0), + ops.SUB: (2, 0), + ops.MUL: (2, 0), + ops.DIV: (2, 0), + ops.REM: (2, 0), + ops.XOR: (2, 0), + ops.OR: (2, 0), + ops.AND: (2, 0), + ops.FCMP: (2, 0), + + ops.SHL: (1, 1), + ops.SHR: (1, 1), + ops.USHR: (1, 1), + + ops.ARRSTORE: (1, 2), +} +# Generic stack codes +genericStackCodes = { + ops.POP: (1, []), + ops.POP2: (2, []), + ops.DUP: (1, [0, 0]), + ops.DUPX1: (2, [1, 0, 1]), + ops.DUPX2: (3, [2, 0, 1, 2]), + ops.DUP2: (2, [0, 1, 0, 1]), + ops.DUP2X1: (3, [1, 2, 0, 1, 2]), + ops.DUP2X2: (4, [2, 3, 0, 1, 2, 3]), + ops.SWAP: (2, [1, 0]), +} + +def _getPopAmount(cpool, instr, method): + op = instr[0] + if op in _popAmount: + return _popAmount[op] + if op in _popAmountVar: + a, b = _popAmountVar[op] + cat = 2 if instr[1] in 'JD' else 1 + return a * cat + b + if op in genericStackCodes: + return genericStackCodes[op][0] + + if op == ops.MULTINEWARRAY: + return instr[2] + elif op == ops.RETURN: + return len(parseMethodDescriptor(method.descriptor)[1]) + elif op in (ops.PUTFIELD, ops.PUTSTATIC): + args = len(_loadFieldDesc(cpool, instr[1])) + if op == ops.PUTFIELD: + args += 1 + return args + elif op in _invoke_ops: + args = len(_loadMethodDesc(cpool, instr[1])[0]) + if op != ops.INVOKESTATIC and op != ops.INVOKEDYNAMIC: + args += 1 + return args + +codes = dict(zip('IFJD', [T_INT, T_FLOAT, T_LONG, T_DOUBLE])) +def _getStackResult(cpool, instr, key): + op = instr[0] + + if op in (ops.TRUNCATE, ops.LCMP, ops.FCMP, ops.ARRLEN, ops.INSTANCEOF): + return T_INT + elif op in (ops.ADD, ops.SUB, ops.MUL, ops.DIV, ops.REM, ops.XOR, ops.AND, ops.OR, ops.SHL, ops.SHR, ops.USHR, ops.NEG): + return codes[instr[1]] + elif op == ops.CONSTNULL: + return T_NULL + elif op == ops.CONST: + if instr[1] == 'I': + return T_INT_CONST(instr[2]) + return codes[instr[1]] + elif op == ops.ARRLOAD: + return codes.get(instr[1], T_INT) + elif op == ops.CONVERT: + return codes[instr[2]] + + elif op == ops.LDC: + return { + 'Int': T_INT, + 'Long': T_LONG, + 'Float': T_FLOAT, + 'Double': T_DOUBLE, + 'String': T_OBJECT('java/lang/String'), + 'Class': T_OBJECT('java/lang/Class'), + 'MethodType': T_OBJECT('java/lang/invoke/MethodType'), + 'MethodHandle': T_OBJECT('java/lang/invoke/MethodHandle'), + }[cpool.getType(instr[1])] + + elif op == ops.JSR: + return T_ADDRESS(instr[1]) + + elif op in (ops.CHECKCAST, ops.NEW, ops.ANEWARRAY, ops.MULTINEWARRAY): + target = _indexToCFMInfo(cpool, instr[1], 'Class') + if op == ops.ANEWARRAY: + return T_ARRAY(target) + elif op == ops.NEW: + return T_UNINIT_OBJECT(key) + return target + elif op == ops.NEWARRAY: + return parseFieldDescriptor('[' + instr[1])[0] + + elif op in (ops.GETFIELD, ops.GETSTATIC): + return _loadFieldDesc(cpool, instr[1])[0] + elif op in _invoke_ops: + out = _loadMethodDesc(cpool, instr[1])[1] + assert 0 <= len(out) <= 2 + return out[0] if out else None + +class InstructionNode(object): + __slots__ = "key code env class_ cpool instruction op visited changed offsetToIndex indexToOffset state out_state jsrTarget next_instruction returnedFrom successors pop_amount stack_push stack_code target_type isThisCtor".split() + + def __init__(self, code, offsetToIndex, indexToOffset, key): + self.key = key + assert(self.key is not None) # if it is this will cause problems with origin tracking + + self.code = code + self.env = code.class_.env + self.class_ = code.class_ + self.cpool = self.class_.cpool + + self.instruction = code.bytecode[key] + self.op = self.instruction[0] + + self.visited, self.changed = False, False + # store for usage calculating JSRs, finding successor instructions and the like + self.offsetToIndex = offsetToIndex + self.indexToOffset = indexToOffset + + self.state = None + + # Fields to be assigned later + self.jsrTarget = None + self.next_instruction = None + self.returnedFrom = None + self.successors = None + + self.pop_amount = -1 + self.stack_push = [] + self.stack_code = None + + # for blockmaker + self.target_type = None + self.isThisCtor = False + self.out_state = None # store out state for JSR/RET instructions + + self._precomputeValues() + + def _removeInterface(self, vt): + if vt.tag == '.obj' and vt.extra is not None and self.env.isInterface(vt.extra, forceCheck=True): + return T_ARRAY(OBJECT_INFO, vt.dim) + return vt + + def _precomputeValues(self): + # parsed_desc, successors + off_i = self.offsetToIndex[self.key] + self.next_instruction = self.indexToOffset[off_i+1] # None if end of code + op = self.instruction[0] + + self.pop_amount = _getPopAmount(self.cpool, self.instruction, self.code.method) + + # cache these, since they're not state dependent + result = _getStackResult(self.cpool, self.instruction, self.key) + # temporary hack + if op == ops.CHECKCAST: + result = self._removeInterface(result) + + if result is not None: + self.stack_push = [result] + if result in (T_LONG, T_DOUBLE): + self.stack_push.append(T_INVALID) + + if op in genericStackCodes: + self.stack_code = genericStackCodes[op][1] + + if op == ops.NEW: + self.target_type = _indexToCFMInfo(self.cpool, self.instruction[1], 'Class') + + # Now get successors + next_ = self.next_instruction + if op in (ops.IF_A, ops.IF_I, ops.IF_ICMP, ops.IF_ACMP): + self.successors = next_, self.instruction[2] + elif op in (ops.JSR, ops.GOTO): + self.successors = self.instruction[1], + elif op in (ops.RETURN, ops.THROW): + self.successors = () + elif op == ops.RET: + self.successors = None # calculate it when the node is reached + elif op == ops.SWITCH: + opname, default, jumps = self.instruction + targets = (default,) + if jumps: + targets += zip(*jumps)[1] + self.successors = targets + else: + self.successors = next_, + + def _getNewState(self, iNodes): + state = self.state.copy() + popped = state.pop(self.pop_amount) + + # Local updates/reading + op = self.instruction[0] + if op == ops.LOAD: + state.push([state.local(self.instruction[2])]) + if self.instruction[1] in 'JD': + state.push([T_INVALID]) + elif op == ops.STORE: + for i, val in enumerate(popped): + state.setLocal(self.instruction[2] + i, val) + elif op == ops.IINC: + state.setLocal(self.instruction[1], T_INT) # Make sure to clobber constants + elif op == ops.JSR: + state.jsr(self.instruction[1]) + elif op == ops.NEW: + # This should never happen, but better safe than sorry. + state.replace(self.stack_push[0], T_INVALID) + elif op == ops.INVOKEINIT: + old = popped[0] + if old.tag == '.new': + new = _indexToCFMInfo(self.cpool, self.instruction[1], 'Method') + else: # .init + new = T_OBJECT(self.class_.name) + self.isThisCtor = True + state.replace(old, new) + + # Make sure that push happens after local replacement in case of new/invokeinit + if self.stack_code is not None: + state.push(popped[i] for i in self.stack_code) + elif op == ops.ARRLOAD_OBJ: + # temporary hack + result = self._removeInterface(decrementDim(popped[0])) + state.push([result]) + + elif op == ops.NEWARRAY or op == ops.ANEWARRAY: + arrt = self.stack_push[0] + size = popped[0].const + if size is not None: + arrt = exactArrayFrom(arrt, size) + state.push([arrt]) + else: + state.push(self.stack_push) + + if self.op in (ops.RET, ops.JSR): + state.invalidateNews() + self.out_state = state # store for later convienence + + assert all(isinstance(vt, fullinfo_t) for vt in state.stack) + assert all(isinstance(vt, fullinfo_t) for vt in state.locals) + return state + + def _mergeSingleSuccessor(self, other, newstate, iNodes, isException): + if self.op == ops.RET and not isException: + # Get the instruction before other + off_i = self.offsetToIndex[other.key] + jsrnode = iNodes[self.indexToOffset[off_i-1]] + jsrnode.returnedFrom = self.key + + if jsrnode.visited: # if not, skip for later + newstate = newstate.copy() + newstate.returnTo(jsrnode.instruction[1], jsrnode.state) + else: + return + + if not other.visited: + other.state = newstate.copy() + other.visited = other.changed = True + else: + changed = other.state.merge(newstate, self.env) + other.changed = other.changed or changed + + def update(self, iNodes, exceptions): + assert self.visited + self.changed = False + newstate = self._getNewState(iNodes) + + successors = self.successors + if self.op == ops.JSR and self.returnedFrom is not None: + iNodes[self.returnedFrom].changed = True + + if successors is None: + assert self.op == ops.RET + called = self.state.local(self.instruction[1]).extra + temp = [n.next_instruction for n in iNodes.values() if (n.op == ops.JSR and n.instruction[1] == called)] + successors = self.successors = tuple(temp) + self.jsrTarget = called # store for later use in ssa creation + + # Merge into exception handlers first + for (start, end, handler, except_info) in exceptions: + if start <= self.key < end: + self._mergeSingleSuccessor(handler, self.state.withExcept(except_info), iNodes, True) + if self.op == ops.INVOKEINIT: # two cases since the ctor may suceed or fail before throwing + self._mergeSingleSuccessor(handler, newstate.withExcept(except_info), iNodes, True) + + # Now regular successors + for k in self.successors: + self._mergeSingleSuccessor(iNodes[k], newstate, iNodes, False) + + def __str__(self): # pragma: no cover + lines = ['{}: {}'.format(self.key, bytecode.printInstruction(self.instruction))] + if self.visited: + lines.append('Stack: ' + ', '.join(map(str, self.state.stack))) + lines.append('Locals: ' + ', '.join(map(str, self.state.locals))) + if self.state.masks: + lines.append('Masks:') + lines += ['\t{}: {}'.format(entry, sorted(cset)) for entry, cset in self.state.masks] + else: + lines.append('\tunvisited') + return '\n'.join(lines) + '\n' + +def verifyBytecode(code): + method, class_ = code.method, code.class_ + args, rval = parseUnboundMethodDescriptor(method.descriptor, class_.name, method.static) + env = class_.env + + # Object has no superclass to construct, so it doesn't get an uninit this + if method.isConstructor and class_.name != 'java/lang/Object': + assert args[0] == T_OBJECT(class_.name) + args[0] = T_UNINIT_THIS + assert len(args) <= 255 and len(args) <= code.locals + + offsets = sorted(code.bytecode.keys()) + offset_rmap = {v:i for i,v in enumerate(offsets)} + offsets.append(None) # Sentinel for end of code + iNodes = [InstructionNode(code, offset_rmap, offsets, key) for key in offsets[:-1]] + iNodeLookup = {n.key:n for n in iNodes} + + keys = frozenset(iNodeLookup) + for raw in code.except_raw: + if not ((0 <= raw.start < raw.end) and (raw.start in keys) and + (raw.handler in keys) and (raw.end in keys or raw.end == code.codelen)): + + keylist = sorted(keys) + [code.codelen] + msg = "Illegal exception handler: {}\nValid offsets are: {}".format(raw, ', '.join(map(str, keylist))) + raise error_types.VerificationError(msg) + + def makeException(rawdata): + if rawdata.type_ind: + typen = class_.cpool.getArgsCheck('Class', rawdata.type_ind) + else: + typen = 'java/lang/Throwable' + return (rawdata.start, rawdata.end, iNodeLookup[rawdata.handler], T_OBJECT(typen)) + exceptions = map(makeException, code.except_raw) + + start = iNodes[0] + start.state = stateFromInitialArgs(args) + start.visited, start.changed = True, True + + done = False + while not done: + done = True + for node in iNodes: + if node.changed: + node.update(iNodeLookup, exceptions) + done = False + return iNodes diff --git a/src/main/resources/Krakatau-master/Krakatau/verifier/verifier_types.py b/src/main/resources/Krakatau-master/Krakatau/verifier/verifier_types.py new file mode 100644 index 00000000..a19f0e34 --- /dev/null +++ b/src/main/resources/Krakatau-master/Krakatau/verifier/verifier_types.py @@ -0,0 +1,141 @@ +from collections import namedtuple as nt + +# Define types for Inference +# Extra stores address for .new and .address and class name for object types +# Const stores value for int constants and length for exact arrays. This isn't needed for normal verification but is +# useful for optimizing the code later. +fullinfo_t = nt('fullinfo_t', ['tag','dim','extra','const']) + +valid_tags = ['.'+_x for _x in 'int float double long obj new init address byte short char boolean'.split()] +valid_tags = frozenset([None] + valid_tags) + +def _makeinfo(tag, dim=0, extra=None, const=None): + assert tag in valid_tags + return fullinfo_t(tag, dim, extra, const) + +T_INVALID = _makeinfo(None) +T_INT = _makeinfo('.int') +T_FLOAT = _makeinfo('.float') +T_DOUBLE = _makeinfo('.double') +T_LONG = _makeinfo('.long') + +T_NULL = _makeinfo('.obj') +T_UNINIT_THIS = _makeinfo('.init') + +T_BYTE = _makeinfo('.byte') +T_SHORT = _makeinfo('.short') +T_CHAR = _makeinfo('.char') +T_BOOL = _makeinfo('.boolean') # Hotspot doesn't have a bool type, but we can use this elsewhere + +# types with arguments +def T_ADDRESS(entry): + return _makeinfo('.address', extra=entry) + +def T_OBJECT(name): + return _makeinfo('.obj', extra=name) + +def T_ARRAY(baset, newDimensions=1): + assert 0 <= baset.dim <= 255-newDimensions + return _makeinfo(baset.tag, baset.dim+newDimensions, baset.extra) + +def T_UNINIT_OBJECT(origin): + return _makeinfo('.new', extra=origin) + +def T_INT_CONST(val): + assert -0x80000000 <= val < 0x80000000 + return _makeinfo(T_INT.tag, const=val) + +OBJECT_INFO = T_OBJECT('java/lang/Object') +CLONE_INFO = T_OBJECT('java/lang/Cloneable') +SERIAL_INFO = T_OBJECT('java/io/Serializable') +THROWABLE_INFO = T_OBJECT('java/lang/Throwable') + +def objOrArray(fi): # False on uninitialized + return fi.tag == '.obj' or fi.dim > 0 + +def unSynthesizeType(t): + if t in (T_BOOL, T_BYTE, T_CHAR, T_SHORT): + return T_INT + return t + +def decrementDim(fi): + if fi == T_NULL: + return T_NULL + assert fi.dim + + tag = unSynthesizeType(fi).tag if fi.dim <= 1 else fi.tag + return _makeinfo(tag, fi.dim-1, fi.extra) + +def exactArrayFrom(fi, size): + assert fi.dim > 0 + if size >= 0: + return _makeinfo(fi.tag, fi.dim, fi.extra, size) + return fi + +def withNoDimension(fi): + return _makeinfo(fi.tag, 0, fi.extra) + +def withNoConst(fi): + if fi.const is None: + return fi + return _makeinfo(fi.tag, fi.dim, fi.extra) + +def _decToObjArray(fi): + return fi if fi.tag == '.obj' else T_ARRAY(OBJECT_INFO, fi.dim-1) + +def mergeTypes(env, t1, t2): + if t1 == t2: + return t1 + + t1 = withNoConst(t1) + t2 = withNoConst(t2) + if t1 == t2: + return t1 + + # non objects must match exactly + if not objOrArray(t1) or not objOrArray(t2): + return T_INVALID + + if t1 == T_NULL: + return t2 + elif t2 == T_NULL: + return t1 + + if t1 == OBJECT_INFO or t2 == OBJECT_INFO: + return OBJECT_INFO + + if t1.dim or t2.dim: + for x in (t1,t2): + if x in (CLONE_INFO,SERIAL_INFO): + return x + t1 = _decToObjArray(t1) + t2 = _decToObjArray(t2) + + if t1.dim > t2.dim: + t1, t2 = t2, t1 + + if t1.dim == t2.dim: + res = mergeTypes(env, withNoDimension(t1), withNoDimension(t2)) + return res if res == T_INVALID else _makeinfo('.obj', t1.dim, res.extra) + else: # t1.dim < t2.dim + return t1 if withNoDimension(t1) in (CLONE_INFO, SERIAL_INFO) else T_ARRAY(OBJECT_INFO, t1.dim) + else: # neither is array + if env.isInterface(t2.extra, forceCheck=True): + return OBJECT_INFO + return T_OBJECT(env.commonSuperclass(t1.extra, t2.extra)) + + +# Make verifier types printable for easy debugging +def vt_toStr(self): # pragma: no cover + if self == T_INVALID: + return '.none' + elif self == T_NULL: + return '.null' + if self.tag == '.obj': + base = self.extra + elif self.extra is not None: + base = '{}<{}>'.format(self.tag, self.extra) + else: + base = self.tag + return base + '[]'*self.dim +fullinfo_t.__str__ = fullinfo_t.__repr__ = vt_toStr diff --git a/libs/krakata-license.txt b/src/main/resources/Krakatau-master/LICENSE.TXT similarity index 99% rename from libs/krakata-license.txt rename to src/main/resources/Krakatau-master/LICENSE.TXT index 20d40b6b..94a9ed02 100644 --- a/libs/krakata-license.txt +++ b/src/main/resources/Krakatau-master/LICENSE.TXT @@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read -. \ No newline at end of file +. diff --git a/src/main/resources/Krakatau-master/README.TXT b/src/main/resources/Krakatau-master/README.TXT new file mode 100644 index 00000000..feb2f60d --- /dev/null +++ b/src/main/resources/Krakatau-master/README.TXT @@ -0,0 +1,134 @@ +Krakatau Bytecode Tools +Copyright (C) 2012-18 Robert Grosse + +=== Introduction === + +Krakatau currently contains three tools - a decompiler and disassembler for +Java classfiles and an assembler to create classfiles. + +=== Requirements === + +The Krakatau decompiler requires Python 2.7 while the assembler and disassembler +support both Python 2.7 and Python 3. Note that if you want to do decompilation, +you'll probably want an installation of the JDK as well. For assembly and +disassembly, a Java installation is not strictly necessary, but it is still +useful for testing the resulting classes. + +=== Decompilation === + +Usage: +python Krakatau\decompile.py [-nauto] [-path PATH] [-out OUT] [-r] [-skip] + target + +PATH : An optional list of directories, jars, or zipfiles to search for + classes in. Krakatau will attempt to automatically detect and add the + jar containing core language classes, but you can disable this with + the -nauto option. For multiple jars, you can either pass a semicolon + seperated list of jars or pass the -path option multiple times. + +OUT : Directory name where source files are to be written. Defaults to the + current directory. If the name ends in .zip or .jar, the output will be a + zipfile instead. + +-r : Decompiles all .class files found in the directory target (recursively) + +-skip : Continue upon errors. If an error occurs while decompiling a specific + method, the traceback will be printed as comments in the source file. If the + error occurs while decompiling at the class level, no source file will be + emitted and an error message will be printed to the console. + +target : Class name or jar name to decompile. If a jar is specified, all + classes in the jar will be decompiled. If -r is specified, this should + be a directory. + +The Krakatau decompiler takes a different approach to most Java decompilers. +It can be thought of more as a compiler whose input language is Java bytecode +and whose target language happens to be Java source code. Krakatau takes in +arbitrary bytecode, and attempts to transform it to equivalent Java code. This +makes it robust to minor obfuscation, though it has the drawback of not +reconstructing the "original" source, leading to less readable output than a +pattern matching decompiler would produce for unobfuscated Java classes. + +However, it will not always produce valid Java since there are some things +that are difficult or impossible to decompile at all thanks to the limitations +of the Java language. In most cases, Krakatau will try to at least produce +readable pseudocode, but sometimes it may just throw an exception. + +Warning: Output on Windows uses UNC-style paths, which means that depending on + the input class name, it may create files which are difficult or impossible + to access through Windows Explorer or other non-UNC aware tools. + +Note that the decompiler does not currently support Java 8 or invokedynamic, +although the assembler and disassembler do. + +=== Assembly === + +Usage: +python Krakatau\assemble.py [-out OUT] [-r] [-q] target + +OUT : Directory name where class files are to be written. Defaults to the + current directory. If the name ends in .zip or .jar, the output will be a + zipfile instead. + +-r : Assembles all .j files found in the directory target (recursively) + +-q : Quiet mode (only display warnings and errors) + +target : Name of file to assemble. If -r is specified, this should be a + directory. + +The Krakatau assembler uses a syntax similar to Jasmin, but with many new +features, most importantly the ability to directly specify constant pool +references. For more information about the syntax look in the Documentation +folder. + +=== Disassembly === + +Usage: +python Krakatau\disassemble.py [-out OUT] [-r] [-roundtrip] target + +OUT : File or directory name where source files are to be written. Defaults + to the current directory. If the name ends in .zip or .jar, the output will + be a zipfile instead. + +-r : Disassembles all .class files found in the directory target (recursively) + +-roundtrip : Creates an assembly file that will assemble back to the exact + binary file that was disassembled. + + Without -roundtrip, it will assemble to a classfile which is equivalent to + the original and has the same behavior, but may differ in binary encoding + details such as the precise ordering of constant pool entries. Reproducing + the exact original classfile requires outputting such low level information + in the assembly file, which makes the assembly harder for humans to read and + edit. Therefore this option is disabled by default. + +target : Filename or jar name to disassemble. If a jar is specified, all + classes in the jar will be disassembled. If -r is specified, this should + be a directory. + +This takes a classfile and converts it into a human readable assembly format. +Unlike Javap, this can handle even pathological classes, and the output can +be reassembled. Together with the Krakatau assembler, this tool can roundtrip +any class through assembly and back into an equivalent class. If the -roundtrip +option is passed, then it can roundtrip any valid class through assembly and +exactly reproduce the original binary classfile. + +Note: If you find a valid class which Krakatau cannot disassemble, please file +an issue at https://github.com/Storyyeller/Krakatau/issues. + +=== Java 10 === + +The assembler and disassembler fully support Java 10, while the decompiler only +supports Java 7. In particular, decompilation of lambdas is not supported. + +=== Performance === + +You can disable the internal debugging checks by passing -O to Python. This +will make Krakatau slightly faster, so it is recommended for normal usage. + +=== Pypy === + +If you want to use Pypy, you'll need a build from 15 Feb 2016 or later. +Previous versions of Pypy have a bug that causes a segfault when running +Krakatau. diff --git a/src/main/resources/Krakatau-master/assemble.py b/src/main/resources/Krakatau-master/assemble.py new file mode 100644 index 00000000..db4f26ab --- /dev/null +++ b/src/main/resources/Krakatau-master/assemble.py @@ -0,0 +1,44 @@ +#!/usr/bin/env python2 +from __future__ import print_function + +import os.path, time + +import Krakatau +from Krakatau.assembler import parse +from Krakatau import script_util + +def assembleSource(source, basename, fatal=False): + source = source.replace('\t', ' ') + '\n' + return list(parse.assemble(source, basename, fatal=fatal)) + +def assembleClass(filename): + basename = os.path.basename(filename) + with open(filename, 'rU') as f: + source = f.read() + return assembleSource(source, basename) + +if __name__== "__main__": + import argparse + parser = argparse.ArgumentParser(description='Krakatau bytecode assembler') + parser.add_argument('-out', help='Path to generate files in') + parser.add_argument('-r', action='store_true', help="Process all files in the directory target and subdirectories") + parser.add_argument('-q', action='store_true', help="Only display warnings and errors") + parser.add_argument('target', help='Name of file to assemble') + args = parser.parse_args() + + log = script_util.Logger('warning' if args.q else 'info') + log.info(script_util.copyright) + + out = script_util.makeWriter(args.out, '.class') + targets = script_util.findFiles(args.target, args.r, '.j') + + start_time = time.time() + with out: + for i, target in enumerate(targets): + log.info('Processing file {}, {}/{} remaining'.format(target, len(targets)-i, len(targets))) + + pairs = assembleClass(target) + for name, data in pairs: + filename = out.write(name, data) + log.info('Class written to', filename) + print('Total time', time.time() - start_time) diff --git a/src/main/resources/Krakatau-master/decompile.py b/src/main/resources/Krakatau-master/decompile.py new file mode 100644 index 00000000..4c455e41 --- /dev/null +++ b/src/main/resources/Krakatau-master/decompile.py @@ -0,0 +1,158 @@ +#!/usr/bin/env python2 +from __future__ import print_function + +import os.path +import time, random, subprocess, functools + +import Krakatau +import Krakatau.ssa +from Krakatau.error import ClassLoaderError +from Krakatau.environment import Environment +from Krakatau.java import javaclass, visitor +from Krakatau.java.stringescape import escapeString +from Krakatau.verifier.inference_verifier import verifyBytecode +from Krakatau import script_util + +def findJRE(): + try: + home = os.environ.get('JAVA_HOME') + if home: + path = os.path.join(home, 'jre', 'lib', 'rt.jar') + if os.path.isfile(path): + return path + + # For macs + path = os.path.join(home, 'bundle', 'Classes', 'classes.jar') + if os.path.isfile(path): + return path + + # Ubuntu and co + out = subprocess.Popen(['update-java-alternatives', '-l'], stdout=subprocess.PIPE).communicate()[0] + basedir = out.split('\n')[0].rpartition(' ')[-1] + path = os.path.join(basedir, 'jre', 'lib', 'rt.jar') + if os.path.isfile(path): + return path + except Exception as e: + pass + +def _stats(s): + bc = len(s.blocks) + vc = sum(len(b.unaryConstraints) for b in s.blocks) + return '{} blocks, {} variables'.format(bc,vc) + +def _print(s): + from Krakatau.ssa.printer import SSAPrinter + return SSAPrinter(s).print_() + +def makeGraph(opts, m): + v = verifyBytecode(m.code) + s = Krakatau.ssa.ssaFromVerified(m.code, v, opts) + + if s.procs: + # s.mergeSingleSuccessorBlocks() + # s.removeUnusedVariables() + s.inlineSubprocs() + + # print(_stats(s)) + s.condenseBlocks() + s.mergeSingleSuccessorBlocks() + s.removeUnusedVariables() + # print(_stats(s)) + + s.copyPropagation() + s.abstractInterpert() + s.disconnectConstantVariables() + + s.simplifyThrows() + s.simplifyCatchIgnored() + s.mergeSingleSuccessorBlocks() + s.mergeSingleSuccessorBlocks() + s.removeUnusedVariables() + # print(_stats(s)) + return s + +def deleteUnusued(cls): + # Delete attributes we aren't going to use + # pretty hackish, but it does help when decompiling large jars + for e in cls.fields + cls.methods: + del e.class_, e.attributes, e.static + for m in cls.methods: + del m.native, m.abstract, m.isConstructor + del m.code + del cls.version, cls.this, cls.super, cls.env + del cls.interfaces_raw, cls.cpool + del cls.attributes + +def decompileClass(path=[], targets=None, outpath=None, skip_errors=False, add_throws=False, magic_throw=False): + out = script_util.makeWriter(outpath, '.java') + + e = Environment() + for part in path: + e.addToPath(part) + + start_time = time.time() + # random.shuffle(targets) + with e, out: + printer = visitor.DefaultVisitor() + for i,target in enumerate(targets): + print('processing target {}, {} remaining'.format(target, len(targets)-i)) + + try: + c = e.getClass(target.decode('utf8')) + makeGraphCB = functools.partial(makeGraph, magic_throw) + source = printer.visit(javaclass.generateAST(c, makeGraphCB, skip_errors, add_throws=add_throws)) + except Exception as err: + if not skip_errors: + raise + if isinstance(err, ClassLoaderError): + print('Failed to decompile {} due to missing or invalid class {}'.format(target, err.data)) + else: + import traceback + print(traceback.format_exc()) + continue + + # The single class decompiler doesn't add package declaration currently so we add it here + if '/' in target: + package = 'package {};\n\n'.format(escapeString(target.replace('/','.').rpartition('.')[0])) + source = package + source + + filename = out.write(c.name.encode('utf8'), source) + print('Class written to', filename) + print(time.time() - start_time, ' seconds elapsed') + deleteUnusued(c) + print(len(e.classes) - len(targets), 'extra classes loaded') + +if __name__== "__main__": + print(script_util.copyright) + + import argparse + parser = argparse.ArgumentParser(description='Krakatau decompiler and bytecode analysis tool') + parser.add_argument('-path',action='append',help='Semicolon seperated paths or jars to search when loading classes') + parser.add_argument('-out',help='Path to generate source files in') + parser.add_argument('-nauto', action='store_true', help="Don't attempt to automatically locate the Java standard library. If enabled, you must specify the path explicitly.") + parser.add_argument('-r', action='store_true', help="Process all files in the directory target and subdirectories") + parser.add_argument('-skip', action='store_true', help="Upon errors, skip class or method and continue decompiling") + parser.add_argument('-xmagicthrow', action='store_true') + parser.add_argument('target',help='Name of class or jar file to decompile') + args = parser.parse_args() + + path = [] + if not args.nauto: + print('Attempting to automatically locate the standard library...') + found = findJRE() + if found: + print('Found at ', found) + path.append(found) + else: + print('Unable to find the standard library') + + if args.path: + for part in args.path: + path.extend(part.split(';')) + + if args.target.endswith('.jar'): + path.append(args.target) + + targets = script_util.findFiles(args.target, args.r, '.class') + targets = map(script_util.normalizeClassname, targets) + decompileClass(path, targets, args.out, args.skip, magic_throw=args.xmagicthrow) diff --git a/src/main/resources/Krakatau-master/disassemble.py b/src/main/resources/Krakatau-master/disassemble.py new file mode 100644 index 00000000..480f9b75 --- /dev/null +++ b/src/main/resources/Krakatau-master/disassemble.py @@ -0,0 +1,75 @@ +#!/usr/bin/env python2 +from __future__ import print_function + +import functools +import os.path +import time, zipfile, sys + +try: + from StringIO import StringIO +except ImportError: + from io import StringIO + + +import Krakatau +from Krakatau import script_util +from Krakatau.classfileformat.reader import Reader +from Krakatau.classfileformat.classdata import ClassData +from Krakatau.assembler.disassembly import Disassembler + +def readArchive(archive, name): + with archive.open(name.decode('utf8')) as f: + return f.read() + +def readFile(filename): + with open(filename, 'rb') as f: + return f.read() + +def disassembleSub(readTarget, out, targets, roundtrip=False, outputClassName=True): + start_time = time.time() + with out: + for i, target in enumerate(targets): + print('processing target {}, {}/{} remaining'.format(target, len(targets)-i, len(targets))) + + data = readTarget(target) + clsdata = ClassData(Reader(data)) + + if outputClassName: + name = clsdata.pool.getclsutf(clsdata.this) + else: + name = target.rpartition('.')[0] or target + + output = StringIO() + # output = sys.stdout + Disassembler(clsdata, output.write, roundtrip=roundtrip).disassemble() + + filename = out.write(name, output.getvalue()) + if filename is not None: + print('Class written to', filename) + print(time.time() - start_time, ' seconds elapsed') + +if __name__== "__main__": + print(script_util.copyright) + + import argparse + parser = argparse.ArgumentParser(description='Krakatau decompiler and bytecode analysis tool') + parser.add_argument('-out', help='Path to generate files in') + parser.add_argument('-r', action='store_true', help="Process all files in the directory target and subdirectories") + parser.add_argument('-path', help='Jar to look for class in') + parser.add_argument('-roundtrip', action='store_true', help='Create assembly file that can roundtrip to original binary.') + parser.add_argument('target', help='Name of class or jar file to decompile') + args = parser.parse_args() + + targets = script_util.findFiles(args.target, args.r, '.class') + + jar = args.path + if jar is None and args.target.endswith('.jar'): + jar = args.target + + out = script_util.makeWriter(args.out, '.j') + if jar is not None: + with zipfile.ZipFile(jar, 'r') as archive: + readFunc = functools.partial(readArchive, archive) + disassembleSub(readFunc, out, targets, roundtrip=args.roundtrip) + else: + disassembleSub(readFile, out, targets, roundtrip=args.roundtrip, outputClassName=False) diff --git a/src/main/resources/Krakatau-master/examples/exceptions.j b/src/main/resources/Krakatau-master/examples/exceptions.j new file mode 100644 index 00000000..3120b57d --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/exceptions.j @@ -0,0 +1,36 @@ +.class public exceptions +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + + ldc "Hello " + aload_0 + iconst_0 + +LTRY: + aaload +LTRY2: + .catch java/lang/ArrayIndexOutOfBoundsException from LTRY to LTRY2 using LCATCH + + ldc "!" + + invokevirtual java/lang/String concat (Ljava/lang/String;)Ljava/lang/String; + invokevirtual java/lang/String concat (Ljava/lang/String;)Ljava/lang/String; + + astore_1 + goto LPRINT + +LCATCH: + pop + ldc "Please enter your name" + astore_1 + +LPRINT: + getstatic java/lang/System out Ljava/io/PrintStream; + aload_1 + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/examples/hello.j b/src/main/resources/Krakatau-master/examples/hello.j new file mode 100644 index 00000000..e0d7b2a3 --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/hello.j @@ -0,0 +1,12 @@ +.class public hello +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + getstatic java/lang/System out Ljava/io/PrintStream; + ldc "Hello World!" + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/examples/input.j b/src/main/resources/Krakatau-master/examples/input.j new file mode 100644 index 00000000..fc15fe56 --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/input.j @@ -0,0 +1,21 @@ +.class public input +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + ; + getstatic java/lang/System out Ljava/io/PrintStream; ; System + + ldc "Hello " ; System, "Hello " + aload_0 ; System, "Hello ", args + iconst_0 ; System, "Hello ", args, 0 + aaload ; System, "Hello ", name + ldc "!" ; System, "Hello ", name, "!" + + invokevirtual java/lang/String concat (Ljava/lang/String;)Ljava/lang/String; ; System, "Hello ", "name!" + invokevirtual java/lang/String concat (Ljava/lang/String;)Ljava/lang/String; ; System, "Hello name!" + + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V ; + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/examples/invokedynamic.j b/src/main/resources/Krakatau-master/examples/invokedynamic.j new file mode 100644 index 00000000..ffeddaf3 --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/invokedynamic.j @@ -0,0 +1,59 @@ +.version 51 0 +.class public invokedynamic +.super java/lang/Object + +.const [mycls] = Class invokedynamic +.const [mymeth] = Method [mycls] mybsm (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; + +.const [mydyn] = InvokeDynamic invokeStatic [mymeth] : whatever (I)V +.const [mydyn2] = InvokeDynamic invokeStatic [mymeth] : whatever (Ljava/lang/Integer;)V + +.method public static print : (Ljava/lang/Integer;)V + .limit stack 10 + .limit locals 10 + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method + +.const [intclass] = Class java/lang/Integer + +.method public static mybsm : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; + .limit stack 10 + .limit locals 10 + + new java/lang/invoke/ConstantCallSite + dup + + aload_0 + ldc [mycls] + ldc "print" + + getstatic java/lang/Void TYPE Ljava/lang/Class; + ldc [intclass] + invokestatic java/lang/invoke/MethodType methodType (Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType; + + invokevirtual java/lang/invoke/MethodHandles$Lookup findStatic (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; + + ;Adapter to box int arg + aload_2 + invokevirtual java/lang/invoke/MethodHandle asType (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; + + invokespecial java/lang/invoke/ConstantCallSite (Ljava/lang/invoke/MethodHandle;)V + areturn +.end method + +.method static public main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + iconst_m1 + invokedynamic [mydyn] + + ldc "#ABC" + invokestatic [intclass] decode (Ljava/lang/String;)Ljava/lang/Integer; + invokedynamic [mydyn2] + + return +.end method diff --git a/src/main/resources/Krakatau-master/examples/loop.j b/src/main/resources/Krakatau-master/examples/loop.j new file mode 100644 index 00000000..c73bca9c --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/loop.j @@ -0,0 +1,26 @@ +.class public loop +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + iconst_1 + istore_0 + +LOOP_START: + getstatic java/lang/System out Ljava/io/PrintStream; + dup + + iload_0 + invokevirtual java/io/PrintStream print (I)V + + ldc " " + invokevirtual java/io/PrintStream print (Ljava/lang/Object;)V + + iinc 0 1 + iload_0 + bipush 100 + if_icmple LOOP_START + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/examples/minimal.j b/src/main/resources/Krakatau-master/examples/minimal.j new file mode 100644 index 00000000..37b36ce5 --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/minimal.j @@ -0,0 +1,2 @@ +.class public minimal +.super java/lang/Object \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/examples/multipleclasses.j b/src/main/resources/Krakatau-master/examples/multipleclasses.j new file mode 100644 index 00000000..dc64cacc --- /dev/null +++ b/src/main/resources/Krakatau-master/examples/multipleclasses.j @@ -0,0 +1,10 @@ +.class A +.super java/lang/Object +.end class + +.class B +.super A +.end class + +.class C +.super A \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/pylintrc b/src/main/resources/Krakatau-master/pylintrc new file mode 100644 index 00000000..11206abc --- /dev/null +++ b/src/main/resources/Krakatau-master/pylintrc @@ -0,0 +1,302 @@ +[MASTER] + +# Specify a configuration file. +#rcfile= + +# Python code to execute, usually for sys.path manipulation such as + +# pygtk.require(). +#init-hook= + +# Profiled execution. +profile=no + +# Add files or directories to the blacklist. They should be base names, not + +# paths. +ignore=CVS + +# Pickle collected data for later comparisons. +persistent=yes + +# List of plugins (as comma separated values of python modules names) to load, + +# usually to register additional checkers. +load-plugins= + + +[MESSAGES CONTROL] + +# Enable the message, report, category or checker with the given id(s). You can + +# either give multiple identifier separated by comma (,) or put this option + +# multiple time. See also the "--disable" option for examples. +#enable= + +# Disable the message, report, category or checker with the given id(s). You + +# can either give multiple identifiers separated by comma (,) or put this + +# option multiple times (only on the command line, not in the configuration + +# file where it should appear only once).You can also use "--disable=all" to + +# disable everything first and then reenable specific checks. For example, if + +# you want to run only the similarities checker, you can use "--disable=all + +# --enable=similarities". If you want to run only the classes checker, but have + +# no Warning level messages displayed, use"--disable=all --enable=classes + +# --disable=W" +disable=C0301,C0111,C0103,C0324,W0142,C0321,C0325,C0304,C0330 + + +[REPORTS] + +# Set the output format. Available formats are text, parseable, colorized, msvs + +# (visual studio) and html. You can also give a reporter class, eg + +# mypackage.mymodule.MyReporterClass. +output-format=text + +# Include message's id in output +include-ids=no + +# Include symbolic ids of messages in output +symbols=no + +# Put messages in a separate file for each module / package specified on the + +# command line instead of printing them on stdout. Reports (if any) will be + +# written in a file name "pylint_global.[txt|html]". +files-output=no + +# Tells whether to display a full report or only the messages +reports=yes + +# Python expression which should return a note less than 10 (10 is the highest + +# note). You have access to the variables errors warning, statement which + +# respectively contain the number of errors / warnings messages and the total + +# number of statements analyzed. This is used by the global evaluation report + +# (RP0004). +evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) + +# Add a comment according to your evaluation note. This is used by the global + +# evaluation report (RP0004). +comment=no + + +[BASIC] + +# Required attributes for module, separated by a comma +required-attributes= + +# List of builtins function names that should not be used, separated by a comma +bad-functions=filter,apply,input,eval + +# Regular expression which should only match correct module names +module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ + +# Regular expression which should only match correct module level names +const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$ + +# Regular expression which should only match correct class names +class-rgx=[A-Z_][a-zA-Z0-9]+$ + +# Regular expression which should only match correct function names +function-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct method names +method-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct instance attribute names +attr-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct argument names +argument-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct variable names +variable-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct list comprehension / + +# generator expression variable names +inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$ + +# Good variable names which should always be accepted, separated by a comma +good-names=i,j,k,ex,Run,_ + +# Bad variable names which should always be refused, separated by a comma +bad-names=foo,bar,baz,toto,tutu,tata + +# Regular expression which should only match functions or classes name which do + +# not require a docstring +no-docstring-rgx=__.*__ + + +[FORMAT] + +# Maximum number of characters on a single line. +max-line-length=80 + +# Maximum number of lines in a module +max-module-lines=1000 + +# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 + +# tab). +indent-string=' ' + + +[MISCELLANEOUS] + +# List of note tags to take in consideration, separated by a comma. +notes=FIXME,XXX,TODO + + +[SIMILARITIES] + +# Minimum lines number of a similarity. +min-similarity-lines=4 + +# Ignore comments when computing similarities. +ignore-comments=yes + +# Ignore docstrings when computing similarities. +ignore-docstrings=yes + +# Ignore imports when computing similarities. +ignore-imports=no + + +[TYPECHECK] + +# Tells whether missing members accessed in mixin class should be ignored. A + +# mixin class is detected if its name ends with "mixin" (case insensitive). +ignore-mixin-members=yes + +# List of classes names for which member attributes should not be checked + +# (useful for classes with attributes dynamically set). +ignored-classes=SQLObject + +# When zope mode is activated, add a predefined set of Zope acquired attributes + +# to generated-members. +zope=no + +# List of members which are set dynamically and missed by pylint inference + +# system, and so shouldn't trigger E0201 when accessed. Python regular + +# expressions are accepted. +generated-members=REQUEST,acl_users,aq_parent + + +[VARIABLES] + +# Tells whether we should check for unused import in __init__ files. +init-import=no + +# A regular expression matching the beginning of the name of dummy variables + +# (i.e. not used). +dummy-variables-rgx=_|dummy + +# List of additional names supposed to be defined in builtins. Remember that + +# you should avoid to define new builtins when possible. +additional-builtins= + + +[CLASSES] + +# List of interface methods to ignore, separated by a comma. This is used for + +# instance to not check methods defines in Zope's Interface base class. +ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by + +# List of method names used to declare (i.e. assign) instance attributes. +defining-attr-methods=__init__,__new__ + +# List of valid names for the first argument in a class method. +valid-classmethod-first-arg=cls + +# List of valid names for the first argument in a metaclass class method. +valid-metaclass-classmethod-first-arg=mcs + + +[DESIGN] + +# Maximum number of arguments for function / method +max-args=10 + +# Argument names that match this expression will be ignored. Default to name + +# with leading underscore +ignored-argument-names=_.* + +# Maximum number of locals for function / method body +max-locals=915 + +# Maximum number of return / yield for function / method body +max-returns=96 + +# Maximum number of branch for function / method body +max-branches=912 + +# Maximum number of statements in function / method body +max-statements=950 + +# Maximum number of parents for a class (see R0901). +max-parents=4 + +# Maximum number of attributes for a class (see R0902). +max-attributes=97 + +# Minimum number of public methods for a class (see R0903). +min-public-methods=0 + +# Maximum number of public methods for a class (see R0904). +max-public-methods=920 + + +[IMPORTS] + +# Deprecated modules which should not be used, separated by a comma +deprecated-modules=regsub,string,TERMIOS,Bastion,rexec + +# Create a graph of every (i.e. internal and external) dependencies in the + +# given file (report RP0402 must not be disabled) +import-graph= + +# Create a graph of external dependencies in the given file (report RP0402 must + +# not be disabled) +ext-import-graph= + +# Create a graph of internal dependencies in the given file (report RP0402 must + +# not be disabled) +int-import-graph= + + +[EXCEPTIONS] + +# Exceptions that will emit a warning when being caught. Defaults to + +# "Exception" +overgeneral-exceptions=BaseException diff --git a/src/main/resources/Krakatau-master/runtests.py b/src/main/resources/Krakatau-master/runtests.py new file mode 100644 index 00000000..4bf52b4a --- /dev/null +++ b/src/main/resources/Krakatau-master/runtests.py @@ -0,0 +1,310 @@ +from __future__ import print_function +map = lambda *args: list(__builtins__.map(*args)) + +import ast +import collections +import hashlib +import json +import multiprocessing +import os +import re +import shutil +import subprocess +import sys +import tempfile +import time +import zipfile + +from Krakatau import script_util +from Krakatau.assembler.tokenize import AsssemblerError +if sys.version_info < (3, 0): + import decompile +import disassemble +import assemble +import tests + +# Note: If this script is moved, be sure to update this path. +krakatau_root = os.path.dirname(os.path.abspath(__file__)) +cache_location = os.path.join(krakatau_root, 'tests', '.cache') +dec_class_location = os.path.join(krakatau_root, 'tests', 'decompiler', 'classes') +dis_class_location = os.path.join(krakatau_root, 'tests', 'disassembler', 'classes') +dis2_class_location = os.path.join(krakatau_root, 'tests', 'roundtrip', 'classes') + + +class TestFailed(Exception): + pass + +def execute(args, cwd): + print('executing command', args, 'in directory', cwd) + process = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=cwd) + return process.communicate() + +def read(filename): + with open(filename, 'rb') as f: + return f.read() + +def shash(data): return hashlib.sha256(data).hexdigest() + +############################################################################### +# workaround for broken unicode handling on Window - turn nonascii bytes into corresponding utf8 encoding +def _forceUtf8(s): + if script_util.IS_WINDOWS and s and max(s) > '\x7f': + return ''.join(unichr(ord(b)).encode('utf8') for b in s) + return s + +def _runJava(target, in_fname, argslist): + tdir = tempfile.mkdtemp() + with open(in_fname, 'rb') as temp: + isclass = temp.read(4) == b'\xCA\xFE\xBA\xBE' + + if isclass: + shutil.copy2(in_fname, os.path.join(tdir, target + '.class')) + func = lambda args: execute(['java', target] + list(args), cwd=tdir) + else: + shutil.copy2(in_fname, os.path.join(tdir, target + '.jar')) + func = lambda args: execute(['java', '-cp', target + '.jar', target] + list(args), cwd=tdir) + + for args in argslist: + # results = execute(['java', target] + list(args), cwd=tdir) + results = func(args) + assert 'VerifyError' not in results[1] + assert 'ClassFormatError' not in results[1] + # yield results + yield map(_forceUtf8, results) + shutil.rmtree(tdir) + +def runJava(target, in_fname, argslist): + digest = shash(read(in_fname) + json.dumps(argslist).encode()) + cache = os.path.join(cache_location, digest) + try: + with open(cache, 'r') as f: + return json.load(f) + except IOError: + print('failed to load cache', digest) + + results = list(_runJava(target, in_fname, argslist)) + with open(cache, 'w') as f: + json.dump(results, f) + # reparse json to ensure consistent results in 1st time vs cache hit + with open(cache, 'r') as f: + return json.load(f) + +def compileJava(target, in_fname): + assert not in_fname.endswith('.class') + digest = shash(read(in_fname)) + cache = os.path.join(cache_location, digest) + + if not os.path.exists(cache): + tdir = tempfile.mkdtemp() + shutil.copy2(in_fname, os.path.join(tdir, target + '.java')) + + _, stderr = execute(['javac', target + '.java', '-g:none'], cwd=tdir) + if 'error:' in stderr: # Ignore compiler unchecked warnings by looking for 'error:' + raise TestFailed('Compile failed: ' + stderr) + shutil.copy2(os.path.join(tdir, target + '.class'), cache) + + shutil.rmtree(tdir) + return cache + +def runJavaAndCompare(target, testcases, good_fname, new_fname): + expected_results = runJava(target, good_fname, testcases) + actual_results = runJava(target, new_fname, testcases) + + for args, expected, actual in zip(testcases, expected_results, actual_results): + if expected != actual: + message = ['Failed test {} w/ args {}:'.format(target, args)] + if actual[0] != expected[0]: + message.append(' expected stdout: ' + repr(expected[0])) + message.append(' actual stdout : ' + repr(actual[0])) + if actual[1] != expected[1]: + message.append(' expected stderr: ' + repr(expected[1])) + message.append(' actual stderr : ' + repr(actual[1])) + raise TestFailed('\n'.join(message)) + +def runDecompilerTest(target, testcases): + print('Running decompiler test {}...'.format(target)) + tdir = tempfile.mkdtemp() + + cpath = [decompile.findJRE(), dec_class_location] + if cpath[0] is None: + raise RuntimeError('Unable to locate rt.jar') + + decompile.decompileClass(cpath, targets=[target], outpath=tdir, add_throws=True) + new_fname = compileJava(target, os.path.join(tdir, target + '.java')) + + # testcases = map(tuple, tests.decompiler.registry[target]) + good_fname = os.path.join(dec_class_location, target + '.class') + runJavaAndCompare(target, testcases, good_fname, new_fname) + shutil.rmtree(tdir) + +def _readTestContents(base, target): + classloc = os.path.join(base, target + '.class') + jarloc = os.path.join(base, target + '.jar') + isjar = not os.path.exists(classloc) + + contents = collections.OrderedDict() + if isjar: + with zipfile.ZipFile(jarloc, 'r') as archive: + for name in archive.namelist(): + if not name.endswith('.class'): + continue + name = name[:-len('.class')] + assert name not in contents + with archive.open(name + '.class') as f: + contents[name] = f.read() + good_fname = jarloc + else: + with open(classloc, 'rb') as f: + contents[target] = f.read() + good_fname = classloc + return contents, good_fname, isjar + +def _disassemble(contents, roundtrip): + with script_util.MockWriter() as out: + disassemble.disassembleSub(contents.get, out, list(contents), roundtrip=roundtrip) + disassembled = collections.OrderedDict(out.results) + assert out.results == list(disassembled.items()) + return disassembled + +def _assemble(disassembled): + assembled = collections.OrderedDict() + for name, source in disassembled.items(): + for name2, data in assemble.assembleSource(source, name, fatal=True): + assert name == name2 + assembled[name.decode()] = data + return assembled + +def runDisassemblerTest(disonly, basedir, target, testcases): + print('Running disassembler test {}...'.format(target)) + tdir = tempfile.mkdtemp() + + contents, good_fname, isjar = _readTestContents(basedir, target) + # roundtrip test + disassembled = _disassemble(contents, True) + assembled = _assemble(disassembled) + for name, classfile in contents.items(): + assert classfile == assembled[name] + + # non roundtrip + disassembled = _disassemble(contents, False) + assembled = _assemble(disassembled) + for name, classfile in contents.items(): + assert len(classfile) >= len(assembled[name]) + + if not disonly: + if isjar: + new_fname = os.path.join(tdir, target + '.jar') + with script_util.JarWriter(new_fname, '.class') as out: + for cname, data in assembled.items(): + out.write(cname, data) + else: + # new_fname = os.path.join(tdir, target + '.class') + with script_util.DirectoryWriter(tdir, '.class') as out: + new_fname = out.write(target, assembled[target]) + + runJavaAndCompare(target, testcases, good_fname, new_fname) + shutil.rmtree(tdir) + +PP_MARKER = b'###preprocess###\n' +RANGE_RE = re.compile(br'###range(\([^)]+\)):') +def preprocess(source, fname): + if source.startswith(PP_MARKER): + print('Preprocessing', fname) + buf = bytearray() + pos = len(PP_MARKER) + dstart = source.find(b'###range', pos) + while dstart != -1: + buf += source[pos:dstart] + dend = source.find(b'###', dstart + 3) + m = RANGE_RE.match(source, dstart, dend) + pattern = source[m.end():dend].decode() + for i in range(*ast.literal_eval(m.group(1).decode())): + buf += pattern.format(i, ip1=i+1).encode() + pos = dend + 3 + dstart = source.find(b'###range', pos) + buf += source[pos:] + source = bytes(buf) + # with open('temp/' + os.path.basename(fname), 'wb') as f: + # f.write(source) + return source.decode('utf8') + +def runAssemblerTest(fname, exceptFailure): + basename = os.path.basename(fname) + print('Running assembler test', basename) + with open(fname, 'rb') as f: # not unicode + source = f.read() + source = preprocess(source, fname) + + error = False + try: + assemble.assembleSource(source, basename, fatal=True) + except AsssemblerError: + error = True + assert error == exceptFailure + +def runTest(data): + try: + { + 'decompiler': runDecompilerTest, + 'disassembler': runDisassemblerTest, + 'assembler': runAssemblerTest, + }[data[0]](*data[1:]) + except Exception: + import traceback + return 'Test {} failed:\n'.format(data) + traceback.format_exc() + +def addAssemblerTests(testlist, target_filter, basedir, exceptFailure): + for fname in os.listdir(basedir): + if fname.endswith('.j') and target_filter(fname.rpartition('.')): + testlist.append(('assembler', os.path.join(basedir, fname), exceptFailure)) + +if __name__ == '__main__': + do_decompile = 'd' in sys.argv[1] if len(sys.argv) > 1 else True + do_disassemble = 's' in sys.argv[1] if len(sys.argv) > 1 else True + do_assemble = 'a' in sys.argv[1] if len(sys.argv) > 1 else True + + if len(sys.argv) > 2: + def target_filter(x): + return x[0] == sys.argv[2] + else: + target_filter = lambda x: True + + try: + os.mkdir(cache_location) + except OSError: + pass + + start_time = time.time() + testlist = [] + + if do_decompile: + for target, testcases in filter(target_filter, sorted(tests.decompiler.registry.items())): + testlist.append(('decompiler', target, map(tuple, testcases))) + if do_disassemble: + for target, testcases in filter(target_filter, sorted(tests.disassembler.registry.items())): + testlist.append(('disassembler', False, dis_class_location, target, map(tuple, testcases))) + for target, testcases in filter(target_filter, sorted(tests.decompiler.registry.items())): + testlist.append(('disassembler', False, dec_class_location, target, map(tuple, testcases))) + + for fname in os.listdir(dis2_class_location): + target = fname.rpartition('.')[0] + if target_filter(target): + testlist.append(('disassembler', True, dis2_class_location, target, None)) + + if do_assemble: + test_base = os.path.join(krakatau_root, 'tests') + addAssemblerTests(testlist, target_filter, os.path.join(test_base, 'assembler', 'bad'), True) + addAssemblerTests(testlist, target_filter, os.path.join(test_base, 'assembler', 'good'), False) + addAssemblerTests(testlist, target_filter, os.path.join(test_base, 'decompiler', 'source'), False) + addAssemblerTests(testlist, target_filter, os.path.join(test_base, 'disassembler', 'source'), False) + + print(len(testlist), 'test cases found') + assert testlist + for error in multiprocessing.Pool(processes=5).map(runTest, testlist): + # for error in map(runTest, testlist): + if error: + print(error) + break + else: + print('All {} tests passed!'.format(len(testlist))) + print('elapsed time:', time.time()-start_time) diff --git a/src/main/resources/Krakatau-master/tests/__init__.py b/src/main/resources/Krakatau-master/tests/__init__.py new file mode 100644 index 00000000..d791a0a0 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/__init__.py @@ -0,0 +1 @@ +from . import decompiler, disassembler diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/adjacentframes.j b/src/main/resources/Krakatau-master/tests/assembler/bad/adjacentframes.j new file mode 100644 index 00000000..5e4abda1 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/adjacentframes.j @@ -0,0 +1,14 @@ +.class adjacentframes +.super java/lang/Object +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 1 + .stack full + locals + stack + .end stack + .stack same +L1: return +L2: + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp.j new file mode 100644 index 00000000..adf704b4 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp.j @@ -0,0 +1,8 @@ +.class public Nest +.super java/lang/Object + +.const [1] = Class [r1] +.const [r1] = Class [r1] + + +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp2.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp2.j new file mode 100644 index 00000000..7a7cabf7 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp2.j @@ -0,0 +1,10 @@ +.class public Nest +.super java/lang/Object + +.const [1] = Class [r1] +.const [r1] = [r2] +.const [r2] = [r3] +.const [r3] = [r1] + + +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes1.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes1.j new file mode 100644 index 00000000..17ea25de --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes1.j @@ -0,0 +1,3 @@ +.class public b'\x3' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes2.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes2.j new file mode 100644 index 00000000..9deda866 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes2.j @@ -0,0 +1,3 @@ +.class public '\x3' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes3.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes3.j new file mode 100644 index 00000000..68a2489e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes3.j @@ -0,0 +1,3 @@ +.class public '\u3' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes4.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes4.j new file mode 100644 index 00000000..93744d19 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes4.j @@ -0,0 +1,3 @@ +.class public '\U111111' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes5.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes5.j new file mode 100644 index 00000000..438f6f3e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes5.j @@ -0,0 +1,3 @@ +.class public '\U00110000' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes6.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes6.j new file mode 100644 index 00000000..636e8775 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badescapes6.j @@ -0,0 +1,3 @@ +.class public 'qqqqqqqqqqq\x32qqqqqqqqqqqq\u1111qqqqqq\U00100010qqqqqqqqqqqqqqqqqqq\n\b\t\rqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\000qqqq\8qqqqqq' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badintlitval.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badintlitval.j new file mode 100644 index 00000000..5ee0bcd1 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badintlitval.j @@ -0,0 +1,4 @@ +.class public whocares +.super java/lang/Object +.const [1] = Int 444444444444 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badlonglitval.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badlonglitval.j new file mode 100644 index 00000000..675c6e86 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badlonglitval.j @@ -0,0 +1,4 @@ +.class public whocares +.super java/lang/Object +.const [1] = Long 999999999444444444444L +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badmhcode.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badmhcode.j new file mode 100644 index 00000000..be2bd7b3 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badmhcode.j @@ -0,0 +1,4 @@ +.class public badmhcode +.super [0] +.const [1] = MethodHandle notACode Method java/lang/Runtime getRuntime ()Ljava/lang/Runtime; +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badnestedcp.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badnestedcp.j new file mode 100644 index 00000000..f22407b9 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badnestedcp.j @@ -0,0 +1,21 @@ +.class public Nest +.super java/lang/Object + +.const [1] = Class [r1] +.const [r1] = Class [r2] +.const [r2] = Class [r3] +.const [r3] = Class [r4] +.const [r4] = Class [r5] +.const [r5] = Class [r6] +.const [r6] = Class [r7] +.const [r7] = Class [r8] +.const [r8] = Class [r9] +.const [r9] = Class [r10] +.const [r10] = Class [r11] +.const [r11] = Class [r12] +.const [r12] = Class [r13] +.const [r13] = Class [r14] +.const [r14] = Class Foo + + +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badrawref.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badrawref.j new file mode 100644 index 00000000..a3a01ac5 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badrawref.j @@ -0,0 +1,4 @@ +.class public whocares +.super java/lang/Object +.const [65536] = Int 444 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badstring.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badstring.j new file mode 100644 index 00000000..824fd8ee --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badstring.j @@ -0,0 +1,3 @@ +.class public u'\u3' +.super java/lang/Object +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/badversion.j b/src/main/resources/Krakatau-master/tests/assembler/bad/badversion.j new file mode 100644 index 00000000..a7dcafe0 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/badversion.j @@ -0,0 +1,4 @@ +.version 99999999999 0 +.class public whocares +.super java/lang/Object +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup.j b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup.j new file mode 100644 index 00000000..4d684f8a --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup.j @@ -0,0 +1,5 @@ +.class public whocares +.super java/lang/Object + +.const [bs:0] = Bootstrap [1] : +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup2.j b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup2.j new file mode 100644 index 00000000..85f33f16 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup2.j @@ -0,0 +1,5 @@ +.class public whocares +.super java/lang/Object + +.const [1] = Bootstrap [1] : +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup3.j b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup3.j new file mode 100644 index 00000000..b001b890 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup3.j @@ -0,0 +1,5 @@ +.class public whocares +.super java/lang/Object + +.bootstrap [bs:0] = Int 3 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup4.j b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup4.j new file mode 100644 index 00000000..27741c79 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup4.j @@ -0,0 +1,5 @@ +.class public whocares +.super java/lang/Object + +.bootstrap [bs:0] = [1] +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/const0.j b/src/main/resources/Krakatau-master/tests/assembler/bad/const0.j new file mode 100644 index 00000000..c494fc58 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/const0.j @@ -0,0 +1,4 @@ +.class test +.super java/lang/Object +.const [0] = Int 8 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/constnospace.j b/src/main/resources/Krakatau-master/tests/assembler/bad/constnospace.j new file mode 100644 index 00000000..069afd4e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/constnospace.j @@ -0,0 +1,4 @@ +.class public whocares +.super java/lang/Object +.const[1] = Int 4 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/duplicatelabels.j b/src/main/resources/Krakatau-master/tests/assembler/bad/duplicatelabels.j new file mode 100644 index 00000000..82bbfc95 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/duplicatelabels.j @@ -0,0 +1,12 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + LFOO: + nop + LFOO: + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/duplookupswitchkey.j b/src/main/resources/Krakatau-master/tests/assembler/bad/duplookupswitchkey.j new file mode 100644 index 00000000..e81919ea --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/duplookupswitchkey.j @@ -0,0 +1,17 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 +L1: nop +L2: + lookupswitch + 1 : L1 + 2 : L2 + 1 : L2 + default : LFOO +LFOO: + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/duprawdef.j b/src/main/resources/Krakatau-master/tests/assembler/bad/duprawdef.j new file mode 100644 index 00000000..73c744d8 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/duprawdef.j @@ -0,0 +1,6 @@ +.class public whocares +.super java/lang/Object + +.const [1] = Int 4 +.const [1] = Int 5 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/dupsymdef.j b/src/main/resources/Krakatau-master/tests/assembler/bad/dupsymdef.j new file mode 100644 index 00000000..b1923d9f --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/dupsymdef.j @@ -0,0 +1,6 @@ +.class public whocares +.super java/lang/Object + +.const [x1] = Int 4 +.const [x1] = Int 5 +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/emptytable.j b/src/main/resources/Krakatau-master/tests/assembler/bad/emptytable.j new file mode 100644 index 00000000..5664a44e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/emptytable.j @@ -0,0 +1,12 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + tableswitch -2 + default : LS2 + LS2: + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/evenscpdouble.j b/src/main/resources/Krakatau-master/tests/assembler/bad/evenscpdouble.j new file mode 100644 index 00000000..dac038e5 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/evenscpdouble.j @@ -0,0 +1,14 @@ +###preprocess### +.class public oddscp +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + ldc2_w 5.5 + return + .end code +.end method + +###range(2, 65535, 2):.const [{}] = Utf8 '' +### +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustbs.j b/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustbs.j new file mode 100644 index 00000000..414df1bf --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustbs.j @@ -0,0 +1,11 @@ +###preprocess### +.class public whocares +.super java/lang/Object + +.const [mycls] = Class invokedynamic +.const [mymeth] = Method [mycls] mybsm (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; +.const [2] = InvokeDynamic invokeStatic [mymeth] : whatever (I)V + +###range(65535,):.bootstrap [bs:{}] = Bootstrap [1] : +### +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impbs.j b/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impbs.j new file mode 100644 index 00000000..0cd83794 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impbs.j @@ -0,0 +1,111 @@ +###preprocess### +.version 51 0 +.class public [1] +.super [4] + +.method public static [5] : [6] + .attribute [7] .code stack 10 locals 10 +L0: getstatic [8] +L3: aload_0 +L4: invokevirtual [9] +L7: return +L8: + .end code +.end method + +.method public static [10] : [11] + .attribute [7] .code stack 10 locals 10 +L0: new [12] +L3: dup +L4: aload_0 +L5: ldc [1] +L7: ldc [2] +L9: getstatic [13] +L12: ldc [3] +L14: invokestatic [14] +L17: invokevirtual [15] +L20: aload_2 +L21: invokevirtual [16] +L24: invokespecial [17] +L27: areturn +L28: + .end code +.end method + +.method public static [18] : [19] + .attribute [7] .code stack 10 locals 10 +L0: iconst_m1 +L1: invokedynamic [20] +L6: return +L7: + .end code +.end method + +.bootstrap [bs:0] = Bootstrap [22] : +.const [1] = Class [64] +.const [2] = String [5] +.const [3] = Class [63] +.const [4] = Class [62] +.const [5] = Utf8 print +.const [6] = Utf8 (Ljava/lang/Integer;)V +.const [7] = Utf8 Code +.const [8] = Field [57] [58] +.const [9] = Method [52] [53] +.const [10] = Utf8 mybsm +.const [11] = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; +.const [12] = Class [51] +.const [13] = Field [46] [47] +.const [14] = Method [41] [42] +.const [15] = Method [36] [37] +.const [16] = Method [31] [32] +.const [17] = Method [12] [28] +.const [18] = Utf8 main +.const [19] = Utf8 ([Ljava/lang/String;)V +.const [20] = InvokeDynamic [bs:0] [25] +.const [21] = Utf8 BootstrapMethods +.const [22] = MethodHandle invokeStatic [23] +.const [23] = Method [1] [24] +.const [24] = NameAndType [10] [11] +.const [25] = NameAndType [26] [27] +.const [26] = Utf8 whatever +.const [27] = Utf8 (I)V +.const [28] = NameAndType [29] [30] +.const [29] = Utf8 +.const [30] = Utf8 (Ljava/lang/invoke/MethodHandle;)V +.const [31] = Class [35] +.const [32] = NameAndType [33] [34] +.const [33] = Utf8 asType +.const [34] = Utf8 (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; +.const [35] = Utf8 java/lang/invoke/MethodHandle +.const [36] = Class [40] +.const [37] = NameAndType [38] [39] +.const [38] = Utf8 findStatic +.const [39] = Utf8 (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; +.const [40] = Utf8 java/lang/invoke/MethodHandles$Lookup +.const [41] = Class [45] +.const [42] = NameAndType [43] [44] +.const [43] = Utf8 methodType +.const [44] = Utf8 (Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType; +.const [45] = Utf8 java/lang/invoke/MethodType +.const [46] = Class [50] +.const [47] = NameAndType [48] [49] +.const [48] = Utf8 TYPE +.const [49] = Utf8 Ljava/lang/Class; +.const [50] = Utf8 java/lang/Void +.const [51] = Utf8 java/lang/invoke/ConstantCallSite +.const [52] = Class [56] +.const [53] = NameAndType [54] [55] +.const [54] = Utf8 println +.const [55] = Utf8 (Ljava/lang/Object;)V +.const [56] = Utf8 java/io/PrintStream +.const [57] = Class [61] +.const [58] = NameAndType [59] [60] +.const [59] = Utf8 out +.const [60] = Utf8 Ljava/io/PrintStream; +.const [61] = Utf8 java/lang/System +.const [62] = Utf8 java/lang/Object +.const [63] = Utf8 java/lang/Integer +.const [64] = Utf8 exhaustion +###range(65, 65535):.const [{}] = Utf8 '' +### +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impsmt.j b/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impsmt.j new file mode 100644 index 00000000..1412a451 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impsmt.j @@ -0,0 +1,113 @@ +###preprocess### +.version 51 0 +.class public [1] +.super [4] + +.method public static [5] : [6] + .attribute [7] .code stack 10 locals 10 +L0: getstatic [8] +L3: aload_0 +L4: invokevirtual [9] +L7: return +L8: + .end code +.end method + +.method public static [10] : [11] + .attribute [7] .code stack 10 locals 10 +L0: new [12] +L3: dup +L4: aload_0 +L5: ldc [1] +L7: ldc [2] +L9: getstatic [13] +L12: ldc [3] +L14: invokestatic [14] +L17: invokevirtual [15] +L20: aload_2 +L21: invokevirtual [16] +L24: invokespecial [17] +L27: areturn +L28: + .end code +.end method + +.method public static [18] : [19] + .attribute [7] .code stack 10 locals 10 + .stack same +L0: iconst_m1 +L1: invokedynamic [20] +L6: return +L7: + .end code +.end method +.attribute [21] .bootstrapmethods + +.bootstrap [bs:0] = Bootstrap [22] : +.const [1] = Class [64] +.const [2] = String [5] +.const [3] = Class [63] +.const [4] = Class [62] +.const [5] = Utf8 print +.const [6] = Utf8 (Ljava/lang/Integer;)V +.const [7] = Utf8 Code +.const [8] = Field [57] [58] +.const [9] = Method [52] [53] +.const [10] = Utf8 mybsm +.const [11] = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; +.const [12] = Class [51] +.const [13] = Field [46] [47] +.const [14] = Method [41] [42] +.const [15] = Method [36] [37] +.const [16] = Method [31] [32] +.const [17] = Method [12] [28] +.const [18] = Utf8 main +.const [19] = Utf8 ([Ljava/lang/String;)V +.const [20] = InvokeDynamic [bs:0] [25] +.const [21] = Utf8 BootstrapMethods +.const [22] = MethodHandle invokeStatic [23] +.const [23] = Method [1] [24] +.const [24] = NameAndType [10] [11] +.const [25] = NameAndType [26] [27] +.const [26] = Utf8 whatever +.const [27] = Utf8 (I)V +.const [28] = NameAndType [29] [30] +.const [29] = Utf8 +.const [30] = Utf8 (Ljava/lang/invoke/MethodHandle;)V +.const [31] = Class [35] +.const [32] = NameAndType [33] [34] +.const [33] = Utf8 asType +.const [34] = Utf8 (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; +.const [35] = Utf8 java/lang/invoke/MethodHandle +.const [36] = Class [40] +.const [37] = NameAndType [38] [39] +.const [38] = Utf8 findStatic +.const [39] = Utf8 (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; +.const [40] = Utf8 java/lang/invoke/MethodHandles$Lookup +.const [41] = Class [45] +.const [42] = NameAndType [43] [44] +.const [43] = Utf8 methodType +.const [44] = Utf8 (Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType; +.const [45] = Utf8 java/lang/invoke/MethodType +.const [46] = Class [50] +.const [47] = NameAndType [48] [49] +.const [48] = Utf8 TYPE +.const [49] = Utf8 Ljava/lang/Class; +.const [50] = Utf8 java/lang/Void +.const [51] = Utf8 java/lang/invoke/ConstantCallSite +.const [52] = Class [56] +.const [53] = NameAndType [54] [55] +.const [54] = Utf8 println +.const [55] = Utf8 (Ljava/lang/Object;)V +.const [56] = Utf8 java/io/PrintStream +.const [57] = Class [61] +.const [58] = NameAndType [59] [60] +.const [59] = Utf8 out +.const [60] = Utf8 Ljava/io/PrintStream; +.const [61] = Utf8 java/lang/System +.const [62] = Utf8 java/lang/Object +.const [63] = Utf8 java/lang/Integer +.const [64] = Utf8 exhaustion +###range(65, 65535):.const [{}] = Utf8 '' +### +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/invalidarraycode.j b/src/main/resources/Krakatau-master/tests/assembler/bad/invalidarraycode.j new file mode 100644 index 00000000..da60d856 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/invalidarraycode.j @@ -0,0 +1,10 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + newarray nop + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/jumptoofar.j b/src/main/resources/Krakatau-master/tests/assembler/bad/jumptoofar.j new file mode 100644 index 00000000..a7f3bac0 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/jumptoofar.j @@ -0,0 +1,16 @@ +###preprocess### +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + goto LFOO +###range(17000,): + iconst_0 + pop +### +LFOO: + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/lbloutsidecode.j b/src/main/resources/Krakatau-master/tests/assembler/bad/lbloutsidecode.j new file mode 100644 index 00000000..857203ed --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/lbloutsidecode.j @@ -0,0 +1,9 @@ +.class public 'Boo!' +.super java/lang/Object + + .linenumbertable + L0 33 + L4 108 + .end linenumbertable + +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/ldc256.j b/src/main/resources/Krakatau-master/tests/assembler/bad/ldc256.j new file mode 100644 index 00000000..1ab0f0cd --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/ldc256.j @@ -0,0 +1,10 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + ldc [256] + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/longstring.j b/src/main/resources/Krakatau-master/tests/assembler/bad/longstring.j new file mode 100644 index 00000000..92c5b50b --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/longstring.j @@ -0,0 +1,6 @@ +###preprocess### +.class public longSTRING +.super java/lang/Object + +.const [1] = Utf8 '###range(32768,):\0###' +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/missingmethod.j b/src/main/resources/Krakatau-master/tests/assembler/bad/missingmethod.j new file mode 100644 index 00000000..ea6ad14a --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/missingmethod.j @@ -0,0 +1,12 @@ +.version 47 0 +.class public super missingmethod +.super java/lang/Object + +.method public static varargs main : ([Ljava/lang/String;)V + .code stack 94 locals 2 + invokeinterface + + + return + .end code +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/name0.j b/src/main/resources/Krakatau-master/tests/assembler/bad/name0.j new file mode 100644 index 00000000..94b72e2e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/name0.j @@ -0,0 +1,3 @@ +.class [0] +.super [0] +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/nametoolong.j b/src/main/resources/Krakatau-master/tests/assembler/bad/nametoolong.j new file mode 100644 index 00000000..ef9ed18c --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/nametoolong.j @@ -0,0 +1,4 @@ +###preprocess### +.class public ###range(65536,):xxxx### +.super java/lang/Object +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/noconstrhs.j b/src/main/resources/Krakatau-master/tests/assembler/bad/noconstrhs.j new file mode 100644 index 00000000..29535f93 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/noconstrhs.j @@ -0,0 +1,6 @@ +.version 52 30 +.class public super eeeee +.super java/lang/Object + +.const [r2] = +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/nonllabel.j b/src/main/resources/Krakatau-master/tests/assembler/bad/nonllabel.j new file mode 100644 index 00000000..6a124373 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/nonllabel.j @@ -0,0 +1,10 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + goto FOO + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/nosuper.j b/src/main/resources/Krakatau-master/tests/assembler/bad/nosuper.j new file mode 100644 index 00000000..73f09f6c --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/nosuper.j @@ -0,0 +1,2 @@ +.class public whocares +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/oddscpdouble.j b/src/main/resources/Krakatau-master/tests/assembler/bad/oddscpdouble.j new file mode 100644 index 00000000..2927a6ff --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/oddscpdouble.j @@ -0,0 +1,14 @@ +###preprocess### +.class public oddscp +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + ldc2_w 5.5 + return + .end code +.end method + +###range(1, 65535, 2):.const [{}] = Utf8 '' +### +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/rawalias.j b/src/main/resources/Krakatau-master/tests/assembler/bad/rawalias.j new file mode 100644 index 00000000..b2167c18 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/rawalias.j @@ -0,0 +1,5 @@ +.class public whocares +.super java/lang/Object + +.const [1] = [2] +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/stackframe_offset_toobig.j b/src/main/resources/Krakatau-master/tests/assembler/bad/stackframe_offset_toobig.j new file mode 100644 index 00000000..2e5edfb4 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/stackframe_offset_toobig.j @@ -0,0 +1,78 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + .stack same + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + nop + + nop + .stack same + + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/strictfp.j b/src/main/resources/Krakatau-master/tests/assembler/bad/strictfp.j new file mode 100644 index 00000000..031d40bb --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/strictfp.j @@ -0,0 +1,9 @@ +.class public strictfp +.super java/lang/Object + +.method static strict public main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + return + .end code +.end method +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/toomanyldcs.j b/src/main/resources/Krakatau-master/tests/assembler/bad/toomanyldcs.j new file mode 100644 index 00000000..fcd805e9 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/toomanyldcs.j @@ -0,0 +1,12 @@ +###preprocess### +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 910 locals 10 +###range(256,):ldc {} +### + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/undefinedref.j b/src/main/resources/Krakatau-master/tests/assembler/bad/undefinedref.j new file mode 100644 index 00000000..f15197ab --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/undefinedref.j @@ -0,0 +1,10 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + ldc [foo] + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/undeflabel.j b/src/main/resources/Krakatau-master/tests/assembler/bad/undeflabel.j new file mode 100644 index 00000000..45f655ac --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/undeflabel.j @@ -0,0 +1,10 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + goto LFOO + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/verticaltab.j b/src/main/resources/Krakatau-master/tests/assembler/bad/verticaltab.j new file mode 100644 index 00000000..b7d7e703 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/verticaltab.j @@ -0,0 +1,2 @@ +.class public vt .super java/lang/Object +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/widenop.j b/src/main/resources/Krakatau-master/tests/assembler/bad/widenop.j new file mode 100644 index 00000000..f02b8fdd --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/widenop.j @@ -0,0 +1,10 @@ +.class public whocares +.super java/lang/Object + +.method public static print : (F)V + .code stack 10 locals 10 + wide nop + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/bad/widerawdefconflict.j b/src/main/resources/Krakatau-master/tests/assembler/bad/widerawdefconflict.j new file mode 100644 index 00000000..fcfe3b9a --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/bad/widerawdefconflict.j @@ -0,0 +1,6 @@ +.class public whocares +.super java/lang/Object + +.const [2] = Int 5 +.const [1] = Long 4L +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/LambdaTest.j b/src/main/resources/Krakatau-master/tests/assembler/good/LambdaTest.j new file mode 100644 index 00000000..0e4a3079 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/LambdaTest.j @@ -0,0 +1,40 @@ +.version 52 0 +.class public super LambdaTest1 +.super java/lang/Object + +.method public : ()V + .code stack 1 locals 1 + aload_0 + invokespecial Method java/lang/Object ()V + return + .end code +.end method + +.method public static varargs main : ([Ljava/lang/String;)V + .code stack 4 locals 2 + invokedynamic InvokeDynamic invokeStatic Method java/lang/invoke/LambdaMetafactory metafactory (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; MethodType (J)J MethodHandle invokeStatic Method LambdaTest1 lambda$main$0 (J)J MethodType (J)J : applyAsLong ()Ljava/util/function/LongUnaryOperator; + astore_1 + getstatic Field java/lang/System out Ljava/io/PrintStream; + aload_1 + ldc2_w 42L + invokeinterface InterfaceMethod java/util/function/LongUnaryOperator applyAsLong (J)J 3 + invokevirtual Method java/io/PrintStream println (J)V + return + .end code +.end method + +.method private static synthetic lambda$main$0 : (J)J + .code stack 4 locals 2 + lload_0 + lload_0 + l2i + lshl + lreturn + .end code +.end method + +.innerclasses + java/lang/invoke/MethodHandles$Lookup java/lang/invoke/MethodHandles Lookup public static final +.end innerclasses + +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/bs0.j b/src/main/resources/Krakatau-master/tests/assembler/good/bs0.j new file mode 100644 index 00000000..27ba1fa7 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/bs0.j @@ -0,0 +1,5 @@ +.class test +.super java/lang/Object + +.bootstrap [bs:0] = Bootstrap invokeStatic Method LambdaTest1 lambda$main$0 (J)J : +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/floatliterals.j b/src/main/resources/Krakatau-master/tests/assembler/good/floatliterals.j new file mode 100644 index 00000000..43e672e1 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/floatliterals.j @@ -0,0 +1,40 @@ +###preprocess### +.class public [6] +.super [7] + + +.const [1] = Utf8 floatliterals +.const [2] = Utf8 java/lang/Object +.const [3] = Utf8 Code +.const [4] = Utf8 main +.const [5] = Utf8 ([Ljava/lang/String;)V +.const [6] = Class [1] +.const [7] = Class [2] + + +.method public static [4] : [5] + .attribute [3] .code stack 10 locals 10 + ; Min denormal + ldc2_w -0x0.0000000000001p-1022 + ldc2_w -0x1p-1074 + ldc2_w -0x10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000p-1474 + ldc2_w -0x1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000p-2274 + + ; Max denormal + ldc2_w -0x0.fffffffffffffp-1022 + ldc2_w -0xfffffffffffffp-1074 + + ; Float min denormal + ldc 0x0.000002p-126F + ldc 0x0.000001p-125F + ldc 0x10.000000p-153F + ldc 0x01p-149F + ldc 0x10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000p-549F + ldc 0x100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000p-2149F + return + .end code +.end method + +###range(13, 65535):.const [{}] = Utf8 '' +### +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/invokeinterface.j b/src/main/resources/Krakatau-master/tests/assembler/good/invokeinterface.j new file mode 100644 index 00000000..600ea363 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/invokeinterface.j @@ -0,0 +1,33 @@ +.version 47 0 +.class public super invokeinterface +.super java/lang/Object + +.method public static varargs main : ([Ljava/lang/String;)V + .code stack 94 locals 2 + aconst_null + aconst_null + dup2 + dup2 + dup2 + dup2 + dup2 + + invokeinterface InterfaceMethod java/util/function/LongUnaryOperator applyAsLong (J)J + invokeinterface InterfaceMethod [luo] applyAsLong (J)J + + invokeinterface InterfaceMethod java/util/function/LongUnaryOperator applyAsLong [jj] 3 + invokeinterface InterfaceMethod [luo] [nat] 3 + invokeinterface [im] 3 + + + return + .end code +.end method + +.const [desc] = Utf8 (J)J +.const [jj] = [desc] +.const [luo] = Class java/util/function/LongUnaryOperator +.const [aal] = Utf8 applyAsLong +.const [nat] = NameAndType applyAsLong (J)J +.const [im] = InterfaceMethod [luo] [nat] + diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/jasminfield.j b/src/main/resources/Krakatau-master/tests/assembler/good/jasminfield.j new file mode 100644 index 00000000..05280e12 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/jasminfield.j @@ -0,0 +1,12 @@ +.class public jasmin +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + getstatic java/lang/System/out Ljava/io/PrintStream; + ldc "Hello World!" + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/jasminmethod.j b/src/main/resources/Krakatau-master/tests/assembler/good/jasminmethod.j new file mode 100644 index 00000000..96b853fe --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/jasminmethod.j @@ -0,0 +1,12 @@ +.class public jasmin +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + getstatic java/lang/System out Ljava/io/PrintStream; + ldc "Hello World!" + invokevirtual java/io/PrintStream println(Ljava/lang/Object;)V + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/ldcs.j b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs.j new file mode 100644 index 00000000..572c950c --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs.j @@ -0,0 +1,13 @@ +###preprocess### +.class public LdcTest +.super java/lang/Object + +.method public static print : (F)V + .code stack 910 locals 10 +###range(255,): + ldc {} +### + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/ldcs2.j b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs2.j new file mode 100644 index 00000000..30c41cab --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs2.j @@ -0,0 +1,16 @@ +###preprocess### +.class public LdcTest +.super java/lang/Object + +.const [11] = Long 1L +.const [3] = Double 1.0 + +.method public static print : (F)V + .code stack 910 locals 10 +###range(250,): + ldc {} +### + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/ldcs3.j b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs3.j new file mode 100644 index 00000000..e0d7db7c --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs3.j @@ -0,0 +1,15 @@ +###preprocess### +.class public LdcTest +.super java/lang/Object + +.method public static print : (F)V + .code stack 910 locals 10 + ldc 'LdcTest' + ldc_w Class "LdcTest" +###range(253,): + ldc "{}" +### + return + .end code +.end method +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/ldcs_plus.j b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs_plus.j new file mode 100644 index 00000000..e532b68e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/ldcs_plus.j @@ -0,0 +1,39 @@ +.version +50 0x0 +.class public LdcTest +.super java/lang/Object + +.method public static print : (F)V + .code stack 910 locals 10 + ldc 0 + ldc -0 + ldc +0 + ldc +1 + ldc +0x1 + ldc -0x1 + ldc -10e1f + ldc +10e1f + ldc +0.0f + ldc -0.0f + ldc -0x80000000 + ldc -0x7FFFFFFF + ldc +0x7FFFFFFF + + ldc2_w 0L + ldc2_w -0L + ldc2_w +0L + ldc2_w +1L + ldc2_w +0x1L + ldc2_w -0x1L + ldc2_w -10e1 + ldc2_w +10e1 + ldc2_w +0.0 + ldc2_w -0.0 + ldc2_w -0x8000000000000000L + ldc2_w -0x7FFFFFFFffffffffL + ldc2_w +0x7FFFFFFFffffffffL + + + return + .end code +.end method +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/longsymrefchain.j b/src/main/resources/Krakatau-master/tests/assembler/good/longsymrefchain.j new file mode 100644 index 00000000..64c4405b --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/longsymrefchain.j @@ -0,0 +1,9 @@ +###preprocess### +.class public [s0] +.super java/lang/Object + +.const [s67890] = Class longsymrefchain + +###range(67890,):.const [s{}] = [s{ip1}] +### +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/module.j b/src/main/resources/Krakatau-master/tests/assembler/good/module.j new file mode 100644 index 00000000..36f7dfd2 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/module.j @@ -0,0 +1,10 @@ +.version 53 0 +.class module module-info +.super [0] +.module 'bar.foo' version [0] + .requires 'java.base' transitive version '9' + .requires 'base.java' static_phase version [0] + .exports bar/foo to test test2 'bar.foo' + .opens bar/foo +.end module +.end class diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/nans.j b/src/main/resources/Krakatau-master/tests/assembler/good/nans.j new file mode 100644 index 00000000..e997d294 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/nans.j @@ -0,0 +1,75 @@ +.class public NaNTest +.super java/lang/Object + +.method public static print : (D)V + .code stack 10 locals 10 + getstatic java/lang/System out Ljava/io/PrintStream; + dload_0 + invokevirtual Method java/io/PrintStream println (D)V + return + .end code +.end method + +.method public static print : (F)V + .code stack 10 locals 10 + getstatic java/lang/System out Ljava/io/PrintStream; + fload_0 + invokevirtual Method java/io/PrintStream println (F)V + return + .end code +.end method + +.method static public main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + + ldc2_w +Infinity + invokestatic Method NaNTest print (D)V + ldc2_w -Infinity + invokestatic Method NaNTest print (D)V + ldc2_w +NaN + invokestatic Method NaNTest print (D)V + ldc2_w -NaN + invokestatic Method NaNTest print (D)V + + ldc2_w +NaN<0x7ff0000000000001> + invokestatic Method NaNTest print (D)V + ldc2_w +NaN<0x7ff0123456789abc> + invokestatic Method NaNTest print (D)V + ldc2_w +NaN<0x7fffffffffffffff> + invokestatic Method NaNTest print (D)V + ldc2_w +NaN<0xFff0000000000001> + invokestatic Method NaNTest print (D)V + ldc2_w +NaN<0xFff0123456789abc> + invokestatic Method NaNTest print (D)V + ldc2_w +NaN<0xFfffffffffffffff> + invokestatic Method NaNTest print (D)V + + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + + ldc +Infinityf + invokestatic Method NaNTest print (F)V + ldc -Infinityf + invokestatic Method NaNTest print (F)V + ldc +NaNf + invokestatic Method NaNTest print (F)V + ldc -NaNf + invokestatic Method NaNTest print (F)V + + ldc +NaN<0x7f800001>F + invokestatic Method NaNTest print (F)V + ldc +NaN<0x7f801234>F + invokestatic Method NaNTest print (F)V + ldc +NaN<0x7fffffff>f + invokestatic Method NaNTest print (F)V + ldc +NaN<0xff800001>F + invokestatic Method NaNTest print (F)V + ldc +NaN<0xff801234>F + invokestatic Method NaNTest print (F)V + ldc +NaN<0xFfffffff>f + invokestatic Method NaNTest print (F)V + + return + + .end code +.end method +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/oddscpdouble2.j b/src/main/resources/Krakatau-master/tests/assembler/good/oddscpdouble2.j new file mode 100644 index 00000000..0a02d458 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/oddscpdouble2.j @@ -0,0 +1,17 @@ +###preprocess### +.class public oddscpdouble2 +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + ldc2_w 5.5 + return + .end code +.end method + +###range(1, 201, 2):.const [{}] = Utf8 '' +### +.const [r201] = Utf8 '' +###range(203, 65535, 2):.const [{}] = Utf8 '' +### +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/assembler/good/strictfp.j b/src/main/resources/Krakatau-master/tests/assembler/good/strictfp.j new file mode 100644 index 00000000..d489fca0 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/assembler/good/strictfp.j @@ -0,0 +1,9 @@ +.class public 'strictfp' +.super java/lang/Object + +.method static strictfp public main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + return + .end code +.end method +.end class \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/__init__.py b/src/main/resources/Krakatau-master/tests/decompiler/__init__.py new file mode 100644 index 00000000..8a986cd7 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/__init__.py @@ -0,0 +1,35 @@ +# Mapping from test name -> tuple of argument lists. +registry = { + 'ArgumentTypes': (['42', 'false'], ['43', 'true'], ['1', '1', '1']), + 'ArrayTest': ([], ['x']), + 'BoolizeTest': ([],), + 'ClinitFlagsTest': ([],), + 'ConditionalTest': ([],), + 'ControlFlow': ([], ['.Na', 'q'], ['ddKK', '-2'], ['hB7X', '-1'], + ['R%%X', '0', '0'], ['>OE=.K', '#FF'], + ['95', ' ', 'x', 'x'], ['Hello, Word!']), + 'DoubleEdge': ([], ['x']), + 'DuplicateInit': ([], ['5', '-7'], ['x', 'x', 'x']), + 'ExceptionHandlers': tuple([str(x)] for x in range(-1, 12)), + 'floattest': ([],), + 'JSRTests': ([], ['x'], ['x', 'x', 'x', 'x']), + # 'LClassLiteralTest': ([],), # JVM 9 no longer accepts weird class literals + # 'NonexistentCheckcast': ([],), + 'NullInference': ([], ['alice'], ['bob', 'carol']), + 'OddsAndEnds': ([], ['x'], ['42'], ['4'], ['-2'], ['-0x567'], ['-5678']), + 'splitnew': ([], ['-0'], ['-0', ''], ['-0', '', '', ''], + ['-0', '', '', '', '', '', '', '', '', '', '', '', '', '']), + 'SamSunTests': ([],), + 'StaticInitializer': ([],), + 'SwapLoopTest': (['Hello, World!'], ['Hello,', 'World!']), + 'Switch': ([], ['0'], ['0', '1'], ['0', '1', '2'], ['0', '1', '2', '3'], + ['0', '1', '2', '3', '4']), + 'Synchronized': ([], [''], ['', '', '', '']), + 'TryCatchTest': ([], ['bad'], ['bad', 'boy'], ['good'], [u'f'], ['=', '='], + ['<<', '<', ':', '>', '>>']), + 'TryWithResources': ([],), + 'UnicodeTest': ([],), + 'WhileLoops': ([], ['#9'], ['x', 'x'], ['x', 'xx', 'x'], + ['The', 'Quick', 'Brown', 'Fox', 'Jumped', 'Over', 'The', 'Lazy', 'Dogs.'], + ['46', '08'], ['4608']), +} diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ArgumentTypes.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ArgumentTypes.class new file mode 100644 index 00000000..b645be5b Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ArgumentTypes.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ArrayTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ArrayTest.class new file mode 100644 index 00000000..62796cf7 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ArrayTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/BadInnerTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/BadInnerTest.class new file mode 100644 index 00000000..724287e4 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/BadInnerTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/BoolizeTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/BoolizeTest.class new file mode 100644 index 00000000..7fba2836 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/BoolizeTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ClinitFlagsTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ClinitFlagsTest.class new file mode 100644 index 00000000..4c966deb Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ClinitFlagsTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ConditionalTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ConditionalTest.class new file mode 100644 index 00000000..8024299a Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ConditionalTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ControlFlow.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ControlFlow.class new file mode 100644 index 00000000..db9d8df4 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ControlFlow.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/DoubleEdge.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/DoubleEdge.class new file mode 100644 index 00000000..d6a82d68 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/DoubleEdge.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/DuplicateInit.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/DuplicateInit.class new file mode 100644 index 00000000..2eab4928 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/DuplicateInit.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ExceptionHandlers.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ExceptionHandlers.class new file mode 100644 index 00000000..2c76943b Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ExceptionHandlers.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/ExprInlining.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/ExprInlining.class new file mode 100644 index 00000000..edf8476b Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/ExprInlining.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/JSRTests.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/JSRTests.class new file mode 100644 index 00000000..dcaec68a Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/JSRTests.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/LClassLiteralTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/LClassLiteralTest.class new file mode 100644 index 00000000..ca628d6a Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/LClassLiteralTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/NonexistentCheckcast.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/NonexistentCheckcast.class new file mode 100644 index 00000000..1cd439c8 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/NonexistentCheckcast.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/NullInference.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/NullInference.class new file mode 100644 index 00000000..b5e8ecc9 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/NullInference.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/OddsAndEnds.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/OddsAndEnds.class new file mode 100644 index 00000000..fe4fe308 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/OddsAndEnds.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/OldVersionTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/OldVersionTest.class new file mode 100644 index 00000000..0f0e3528 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/OldVersionTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/SamSunTests.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/SamSunTests.class new file mode 100644 index 00000000..51792d1b Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/SamSunTests.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/StaticInitializer.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/StaticInitializer.class new file mode 100644 index 00000000..98252b3e Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/StaticInitializer.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/SwapLoopTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/SwapLoopTest.class new file mode 100644 index 00000000..a552645b Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/SwapLoopTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/Switch.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/Switch.class new file mode 100644 index 00000000..25504498 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/Switch.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/Synchronized.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/Synchronized.class new file mode 100644 index 00000000..babff254 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/Synchronized.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/TryCatchTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/TryCatchTest.class new file mode 100644 index 00000000..7a384deb Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/TryCatchTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/TryWithResources.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/TryWithResources.class new file mode 100644 index 00000000..4f22fe14 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/TryWithResources.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/UnicodeTest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/UnicodeTest.class new file mode 100644 index 00000000..c75619a7 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/UnicodeTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/WhileLoops.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/WhileLoops.class new file mode 100644 index 00000000..2c52f9a9 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/WhileLoops.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/floattest.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/floattest.class new file mode 100644 index 00000000..cefe3d9c Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/floattest.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/classes/splitnew.class b/src/main/resources/Krakatau-master/tests/decompiler/classes/splitnew.class new file mode 100644 index 00000000..16ba827e Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/decompiler/classes/splitnew.class differ diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ArgumentTypes.java b/src/main/resources/Krakatau-master/tests/decompiler/source/ArgumentTypes.java new file mode 100644 index 00000000..15a4f2b7 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ArgumentTypes.java @@ -0,0 +1,81 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +import java.util.*; + +public class ArgumentTypes{ + + public static int main(boolean b){ + return b ? 1 : 0; + } + + public static boolean main(int x){ + return x <= 42; + } + + public static char main(char x){ + return x ^= '*'; + } + + public static String main(Object x){ + if (x instanceof boolean[]){ + return Arrays.toString((boolean[])x); + } + else if (x instanceof String[]) { + } + else if (x instanceof int[]) { + return "" + ((int[])x)[0]; + } + else { + return java.util.Arrays.toString((byte[])x); + } + return null; + } + + public static void main(java.lang.String[] a) + { + int x = Integer.decode(a[0]); + boolean y = Boolean.valueOf(a[1]); + + System.out.println(main(x)); + System.out.println(main(y)); + + byte[] z = {1,2,3,45,6}; + boolean[] w = {false, true, false}; + Object[] v = a; + CharSequence[] u = a; + + println(main(u)); + println(main(v)); + println(main(w)); + println(main(z)); + + char c = 'C'; + System.out.println(c); + System.out.println((int)c); + + for(byte b=0; b<=2; ++b) { + foo(b); foo2(b); + } + } + + public static byte[] main(byte[][] x){ + if (x.length > 0) { + return x[0]; + } + return null; + } + + public static Object main(CharSequence[] x)[] { + if (x == null) {return null;} + CharSequence[] y = new CharSequence[x.length + 1]; + System.arraycopy(x, 0, y, 1, x.length); + y[0] = new StringBuffer(45).append((long)y.length).append(45); + return y; + } + + public static void foo(byte b) {print(b);} + public static void foo2(byte b) {print(b != 0 ? 1 : 0);} + public static void print(int i) {System.out.println(i);} + + protected static void println(Object x) {System.out.println(x);} + protected static void println(Object[] x) {println(java.util.Arrays.deepToString(x));} +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ArrayTest.java b/src/main/resources/Krakatau-master/tests/decompiler/source/ArrayTest.java new file mode 100644 index 00000000..aa4ebc86 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ArrayTest.java @@ -0,0 +1,41 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +import java.io.Serializable; +import java.util.Arrays; + +public class ArrayTest { + public static void main(String args[]){ + Object[] x = new Cloneable[4][]; + Serializable[][] y = new Serializable[4][2]; + + y[3] = args; + x[1] = y; + y[2][1] = x; + + System.out.println(Arrays.deepToString(x)); + System.out.println(Arrays.deepToString(y)); + try{ + y[3][0] = x; + } catch (Throwable t) {System.out.println(t);} + + long[] z = new long[1]; + z[0] = (long)-(int)z[~+~0]; + + x = y[0]; + x[0] = y.clone(); + x[1] = z.clone(); + + foo(x.clone()); + foo(y.clone()); + foo((Object)y.clone()); + foo(z.clone()); + + Object[] w = args.length > 0 ? new String[1] : new Integer[2]; + try { + w[0] = "Hello!"; + } catch (ArrayStoreException e) {System.out.println(" :( ");} + } + + static void foo(Object x) {System.out.println("Object");} + static void foo(Object[] x) {System.out.println("Object[]");} + static void foo(long[] x) {System.out.println("long[]");} +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/BadInnerTest.j b/src/main/resources/Krakatau-master/tests/decompiler/source/BadInnerTest.j new file mode 100644 index 00000000..796fc6bc --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/BadInnerTest.j @@ -0,0 +1,16 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.version 48 0 +.class public BadInnerTest +.super java/lang/Object + +.attribute InnerClasses length 0xFFFFFFFF b'\0\0' + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + getstatic java/lang/System out Ljava/io/PrintStream; + ldc "Bad inners, bad inners, whatcha gonna do?" + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/BoolizeTest.java b/src/main/resources/Krakatau-master/tests/decompiler/source/BoolizeTest.java new file mode 100644 index 00000000..b707f454 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/BoolizeTest.java @@ -0,0 +1,17 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class BoolizeTest{ + + static void main(boolean x, int y) {} + static void main(boolean[] x, byte[] y) {} + + public static void main(String[] args){ + main(false, 0); + main(null, null); + test(new byte[2][2]); + } + + static void test(byte[][] bbb) { + byte b = bbb[0][0]; + bbb[1][1] = b; + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ClinitFlagsTest.j b/src/main/resources/Krakatau-master/tests/decompiler/source/ClinitFlagsTest.j new file mode 100644 index 00000000..2b972b5b --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ClinitFlagsTest.j @@ -0,0 +1,18 @@ +.version 49 0 +.class public final ClinitFlagsTest +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit locals 11 + .limit stack 11 + + return +.end method + +.method native abstract : ()V + .code stack 10 locals 10 + return + .end code +.end method + +.end class diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ConditionalTest.java b/src/main/resources/Krakatau-master/tests/decompiler/source/ConditionalTest.java new file mode 100644 index 00000000..df9d8924 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ConditionalTest.java @@ -0,0 +1,112 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class ConditionalTest{ + + public static void main(String[] args){ + short s; + float f = -4.2f; + + test(true); + test(false); + test((s = -42)); + test(f = f); + + testLabels(0, 0); + testLabels(0, 2); + testLabels(2, 2); + testLabels(2, 3); + testLabels(3, 3); + testLabels(1, 1); + } + + static void test(boolean b) { + long j; + int i, k; + char c; + byte bb; + boolean z; + double f,g = 5_5_5; + + if (b) { + j = 77 * (i = 7 ^ (c = '1')); + bb = (byte)(f = (float)j); + g = 0x1234p567; + z = true; + k = 1; + } else { + j = 077 * (i = 07 ^ (c = '\1')); + bb = (byte)(f = (float)j); + g = 0xfdecbap-567; + z = false; + k = 0; + } + + System.out.println(j); + System.out.println(i); + System.out.println(k); + System.out.println(c); + System.out.println(bb); + System.out.println(z); + System.out.println(f); + System.out.println(g); + } + + static void test(long j) { + System.out.println(~j); + } + + static void test(double j) { + System.out.println(j - 0x1p-51); + System.out.println(j - 0x1p-52); + } + + static void testLabels(int arg1, int arg2) { + System.out.print("x0"); + boolean b; + label5: { + label2: { + label0: { + label1: { + label3: { + label4: { + if (arg1 >= 2) + { + break label4; + } + if (foo(arg2, 2)) + { + break label3; + } + { + break label2; + } + } + if (foo(arg2 & 1, 1)) + { + break label1; + } + if (foo(arg1 & 1, 1)) + { + break label0; + } + } + b = false; + break label5; + } + System.out.print("x1"); + b = false; + break label5; + } + System.out.print("x2"); + b = true; + break label5; + } + System.out.print("x3"); + b = true; + } + System.out.print("x4"); + System.out.println(b); + } + + static boolean foo(int x, int y) {return x < y;} + +}\u001a \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ControlFlow.j b/src/main/resources/Krakatau-master/tests/decompiler/source/ControlFlow.j new file mode 100644 index 00000000..0dd1e5c7 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ControlFlow.j @@ -0,0 +1,273 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.version 49 49 +.class public ControlFlow +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit locals 11 + .limit stack 11 + + ; Test unused iinc results + iconst_3 + iconst_3 + istore 3 + istore 4 + iconst_4 + iconst_4 + if_icmpgt Lendiinc + iinc 4 -44 +Lendiinc: + iinc 3 33 + +LSTART: + aload_0 + dup + arraylength + istore_0 + + dup + iconst_0 + aaload + dup + invokestatic ControlFlow dsm (Ljava/lang/String;)V + + + invokevirtual java/lang/String hashCode ()I + invokestatic ControlFlow switchtest2 (I)I + getstatic java/lang/System out Ljava/io/PrintStream; + swap + invokevirtual java/io/PrintStream print (I)V + + + + iconst_1 + aaload + invokestatic java/lang/Integer decode (Ljava/lang/String;)Ljava/lang/Integer; + invokevirtual java/lang/Integer intValue ()I + dup + +LDEC: + iload_0 + iconst_m1 + i2c + if_icmple LDEC2 + iinc 0 -113 + goto LDEC +LDEC2: + + iinc 0 1 + ifne LIF +LIF: + iload_0 + dup2 + ixor + istore_0 + + iconst_m1 + if_icmpeq LIF + + tableswitch -2 + LS1 + LS2 + LS1 + default : LS2 + +LS1: + iinc 0 4 +LS2: + wide iinc 0 -1289 + + iload_0 + i2l + invokestatic java/lang/Long valueOf (J)Ljava/lang/Long; + +LPRINT: + getstatic java/lang/System out Ljava/io/PrintStream; + swap + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return + +LEX: + checkcast java/lang/ClassCastException +LEX2: + goto LPRINT + +.catch java/lang/IndexOutOfBoundsException from LSTART to LS1 using LEX +.catch java/lang/RuntimeException from LSTART to LS2 using LEX2 +.catch java/lang/NumberFormatException from LSTART to LS2 using LEX +.catch java/lang/Throwable from LSTART to LS1 using LEX2 + +.catch [0] from LSTART to LS2 using LEX +.catch [0] from LEX to LEX2 using LEX +.catch [0] from LEX to LEX2 using LEX2 +.end method + +.method static switchtest2 : (I)I + .limit locals 65535 + .limit stack 65535 + iload_0 + iload_0 + iload_0 + + iconst_2 + irem + + tableswitch 0 + LSWITCHA + LSWITCHB + default : LSWITCHC +LSWITCHC: + imul + ireturn +LSWITCHA: + iconst_5 + goto LMERGE +LSWITCHB: + bipush -42 +LMERGE: + swap + pop + dup2 + if_icmple LSWITCHC + ixor + ireturn +.end method + +.method static dsm : (Ljava/lang/String;)V + .limit locals 11 + .limit stack 11 + + aload_0 + invokevirtual java/lang/String toCharArray ()[C + + bipush 127 + newarray char + astore_0 + iconst_m1 + istore_2 + bipush 32 + +LS0: + bipush 64 +LSUB_BEGIN_0: + ixor + aconst_null + iinc 2 1 + swap + aload_0 + swap + iload_2 + swap + castore + astore_3 + dup + iload_2 + caload + dup + iconst_5 + irem +LSUB_END_0: + lookupswitch + 0 : LS0 + 1 : LS1 + 2 : LS2 + default : LS3 + +LS1: + bipush 32 +LSUB_BEGIN_1: + ixor + aconst_null + iinc 2 1 + swap + aload_0 + swap + iload_2 + swap + castore + astore_3 + dup + iload_2 + caload + dup + iconst_5 + irem +LSUB_END_1: + lookupswitch + 0 : LS1 + 3 : LS2 + 4 : LS0 + default : LS3 + +LS2: + bipush 16 +LSUB_BEGIN_2: + ixor + aconst_null + iinc 2 1 + swap + aload_0 + swap + iload_2 + swap + castore + astore_3 + dup + iload_2 + caload + dup + iconst_5 + irem +LSUB_END_2: + lookupswitch + 0 : LS3 + 1 : LS0 + 2 : LS1 + 4 : LS1 + default : LS0 + +LS3: + bipush 8 +LSUB_BEGIN_3: + ixor + aconst_null + iinc 2 1 + swap + aload_0 + swap + iload_2 + swap + castore + astore_3 + dup + iload_2 + caload + dup + iconst_5 + irem +LSUB_END_3: + lookupswitch + 0 : LS0 + 1 : LS1 + 2 : LS3 + default : LS2 + +.catch java/lang/IndexOutOfBoundsException from LSUB_BEGIN_0 to LSUB_END_0 using LEND +.catch java/lang/IndexOutOfBoundsException from LSUB_BEGIN_1 to LSUB_END_1 using LEND +.catch java/lang/IndexOutOfBoundsException from LSUB_BEGIN_2 to LSUB_END_2 using LEND +.catch java/lang/IndexOutOfBoundsException from LSUB_BEGIN_3 to LSUB_END_3 using LEND + +LEND: + getstatic java/lang/System out Ljava/io/PrintStream; + + new java/lang/String + dup + aload_0 + iconst_0 + iload_2 + invokespecial java/lang/String ([CII)V + + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/DoubleEdge.j b/src/main/resources/Krakatau-master/tests/decompiler/source/DoubleEdge.j new file mode 100644 index 00000000..3427e344 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/DoubleEdge.j @@ -0,0 +1,19 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.class public DoubleEdge +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit locals 1111 + .limit stack 1111 + .catch [0] from L1 to L5 using L5 + + aload 0 + bipush 0 +L1: + aaload +L5: + getstatic java/lang/System out Ljava/io/PrintStream; + swap + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/DuplicateInit.j b/src/main/resources/Krakatau-master/tests/decompiler/source/DuplicateInit.j new file mode 100644 index 00000000..99b9b850 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/DuplicateInit.j @@ -0,0 +1,112 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.class abstract super public DuplicateInit +.super java/lang/Object +.implements java/lang/CharSequence +.implements java/lang/Cloneable + +.method static public synchronized main : ([Ljava/lang/String;)V + .limit stack 19 + .limit locals 2 + + iconst_0 + invokestatic Method DuplicateInit withCast (Z)V + invokestatic Method DuplicateInit ifnonnull ()V + + ; Test dead code + goto LREALSTART + nop + ifnull LREALSTART + nop + +LREALSTART: + + new java/lang/Integer + dup +LFOO: + dup2 + astore_1 + ;ifnull LFOO + pop + + aload_0 + dup + arraylength + sipush 2 + if_icmpne LINT + + iconst_m1 + dup + iushr + + aaload + invokespecial java/lang/Integer (Ljava/lang/String;)V + goto_w LFINAL + +LINT: + arraylength + iconst_5 + ishl + + invokespecial java/lang/Integer (I)V + +LFINAL: + + getstatic java/lang/System out Ljava/io/PrintStream; + dup_x1 + aload_1 + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + + return +.end method + +.method static public withCast : (Z)V + .code stack 3 locals 1 + new java/lang/Integer + iload_0 + ifeq LLL + dup + ldc 2 + invokespecial Method java/lang/Integer (I)V + checkcast java/lang/System + return + + LLL: + dup + ldc -1 + invokespecial Method java/lang/Integer (I)V + getstatic java/lang/System out Ljava/io/PrintStream; + swap + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return + + .end code +.end method + +.method public static ifnonnull : ()V + .code stack 10 locals 1 + + new java/lang/Integer +Ltemp: + iconst_0 + ifeq Lrest + goto Ltemp + +Lrest: + ifnonnull Lbranch + ldc 'bad' + astore_0 + goto Lend +Lbranch: + ldc 'good' + astore_0 +Lend: + getstatic Field java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + return + + .end code +.end method + +.end class diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ExceptionHandlers.j b/src/main/resources/Krakatau-master/tests/decompiler/source/ExceptionHandlers.j new file mode 100644 index 00000000..eeabb863 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ExceptionHandlers.j @@ -0,0 +1,269 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.class public ExceptionHandlers +.super java/util/UnknownFormatFlagsException + +.method public static main : ([Ljava/lang/String;)V + .limit stack 111 + .limit locals 111 + + aload_0 + iconst_0 + aaload + + invokestatic java/lang/Integer parseInt (Ljava/lang/String;)I + dup + dup_x1 + + invokestatic ExceptionHandlers test (I)V + invokestatic ExceptionHandlers test2 (I)V + invokestatic ExceptionHandlers test3 (I)V + + return +.end method + + +.method public static test : (I)V + .limit stack 111 + .limit locals 111 + + .catch ExceptionHandlers from LBEGIN to LBEGIN2 using L7 + .catch java/util/UnknownFormatFlagsException from LBEGIN to LBEGIN2 using L6 + .catch java/util/IllegalFormatException from LBEGIN to LBEGIN2 using L5 + .catch java/lang/IllegalArgumentException from LBEGIN to LBEGIN2 using L4 + .catch java/lang/RuntimeException from LBEGIN to LBEGIN2 using L3 + .catch java/lang/Exception from LBEGIN to LBEGIN2 using L2 + .catch java/lang/Throwable from LBEGIN to LBEGIN2 using L1 + +LBEGIN: + iload 0 + invokestatic ExceptionHandlers _throw (I)V + return +LBEGIN2: + +L1: + ldc '1' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L2: + ldc '2' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L3: + ldc '3' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L4: + ldc '4' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L5: + ldc '5' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L6: + ldc '6' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L7: + ldc '7' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + +LEND: + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + return +.end method + +.method public static test2 : (I)V + .limit stack 111 + .limit locals 111 + + .catch ExceptionHandlers from LBEGIN to LBEGIN2 using L1 + .catch java/util/UnknownFormatFlagsException from LBEGIN to LBEGIN2 using L2 + .catch java/util/IllegalFormatException from LBEGIN to LBEGIN2 using L1 + .catch java/lang/IllegalArgumentException from LBEGIN to LBEGIN2 using L2 + .catch java/lang/RuntimeException from LBEGIN to LBEGIN2 using L1 + .catch java/lang/Exception from LBEGIN to LBEGIN2 using L2 + .catch java/lang/Throwable from LBEGIN to LBEGIN2 using L1 + +LBEGIN: + iload 0 + invokestatic ExceptionHandlers _throw (I)V + return +LBEGIN2: + +L1: + ldc '1' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L2: + ldc '2' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + +LEND: + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + return +.end method + +.method public static test3 : (I)V + .limit stack 111 + .limit locals 111 + + .catch ExceptionHandlers from LBEGIN to LBEGIN2 using L4 + .catch java/util/UnknownFormatFlagsException from LBEGIN to LBEGIN2 using L6 + .catch java/util/UnknownFormatFlagsException from LBEGIN to LBEGIN2 using L6 + .catch java/lang/RuntimeException from LBEGIN to LBEGIN2 using L3 + .catch java/util/IllegalFormatException from LBEGIN to LBEGIN2 using L5 + .catch java/lang/IllegalArgumentException from LBEGIN to LBEGIN2 using L4 + .catch java/lang/RuntimeException from LBEGIN to LBEGIN2 using L3 + .catch java/lang/Exception from LBEGIN to LBEGIN2 using L2 + .catch [0] from LBEGIN to LBEGIN2 using L2 + .catch java/lang/Throwable from LBEGIN to LBEGIN2 using L1 + .catch java/util/IllegalFormatException from LBEGIN to LBEGIN2 using L2 + .catch [0] from LBEGIN to LBEGIN2 using LEND + +LBEGIN: + iload 0 + invokestatic ExceptionHandlers _throw (I)V + return +LBEGIN2: + +L1: + ldc '1' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L2: + ldc '2' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L3: + ldc '3' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L4: + ldc '4' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L5: + ldc '5' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + goto LEND +L6: + ldc '6' + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + +LEND: + invokestatic ExceptionHandlers _print (Ljava/lang/Object;)V + return +.end method + + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +.method public : ()V + .limit stack 111 + .limit locals 111 + + aload_0 + ldc '' + invokespecial java/util/UnknownFormatFlagsException (Ljava/lang/String;)V + return +.end method + +.method public static _throw : (I)V +.throws java/lang/Throwable + .limit stack 111 + .limit locals 111 + + iload_0 + tableswitch 0 + L1 + L2 + L2b + L3 + L3b + L4 + L4b + L5b + L6 + L6b + L7 + default : LDEF + +L1: + new java/lang/Throwable + dup + invokespecial java/lang/Throwable ()V + goto LEND +L2: + new java/lang/Exception + dup + invokespecial java/lang/Exception ()V + goto LEND +L3: + new java/lang/RuntimeException + dup + invokespecial java/lang/RuntimeException ()V + goto LEND +L4: + new java/lang/IllegalArgumentException + dup + invokespecial java/lang/IllegalArgumentException ()V + goto LEND +L6: + new java/util/UnknownFormatFlagsException + dup + ldc '' + invokespecial java/util/UnknownFormatFlagsException (Ljava/lang/String;)V + goto LEND +L2b: + new java/lang/Error + dup + invokespecial java/lang/Error ()V + goto LEND +L3b: + new java/io/IOException + dup + invokespecial java/io/IOException ()V + goto LEND +L4b: + new java/lang/ArrayStoreException + dup + invokespecial java/lang/ArrayStoreException ()V + goto LEND +L5b: + new java/nio/charset/UnsupportedCharsetException + dup + ldc '' + invokespecial java/nio/charset/UnsupportedCharsetException (Ljava/lang/String;)V + goto LEND +L6b: + new java/util/DuplicateFormatFlagsException + dup + ldc '' + invokespecial java/util/DuplicateFormatFlagsException (Ljava/lang/String;)V + goto LEND +L7: + new ExceptionHandlers + dup + invokespecial ExceptionHandlers ()V + goto LEND +LDEF: + aconst_null + goto LEND + +LEND: + athrow +.end method + + + +.method static _print : (Ljava/lang/Object;)V + .limit stack 111 + .limit locals 111 + + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/ExprInlining.java b/src/main/resources/Krakatau-master/tests/decompiler/source/ExprInlining.java new file mode 100644 index 00000000..f69674df --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/ExprInlining.java @@ -0,0 +1,6 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class ExprInlining { + public static void main(String args[]){ + System.out.println(java.math.BigInteger.ZERO.flipBit(0).flipBit(69).flipBit(127).flipBit(145).flipBit(42).flipBit(73).flipBit(42).flipBit(111).flipBit(189).flipBit(24).flipBit(72).flipBit(150).flipBit(98).flipBit(23).flipBit(97).flipBit(129).flipBit(136).flipBit(195).flipBit(147).flipBit(69).flipBit(93).flipBit(147).flipBit(68).flipBit(168).flipBit(107).flipBit(61).flipBit(32).flipBit(62).flipBit(46).flipBit(79).flipBit(160).flipBit(16).flipBit(84).flipBit(161).flipBit(103).flipBit(165).flipBit(102).flipBit(98).flipBit(125).flipBit(148).flipBit(123).flipBit(46).flipBit(151).flipBit(134).flipBit(40).flipBit(55).flipBit(40).flipBit(45).flipBit(41).flipBit(38).flipBit(79).flipBit(39).flipBit(31).flipBit(91).flipBit(106).flipBit(55).flipBit(137).flipBit(92).flipBit(90).flipBit(119).flipBit(81).flipBit(157).flipBit(22).flipBit(156).flipBit(138).flipBit(184).flipBit(169).flipBit(95).flipBit(31).flipBit(91).flipBit(81).flipBit(61).flipBit(141).flipBit(36).flipBit(105).flipBit(192).flipBit(66).flipBit(134).flipBit(103).flipBit(38).flipBit(222).flipBit(82).flipBit(15).flipBit(129).flipBit(97).flipBit(19).flipBit(67).flipBit(152).flipBit(94).flipBit(74).flipBit(99).flipBit(62).flipBit(108).flipBit(26).flipBit(20).flipBit(73).flipBit(107).flipBit(61).flipBit(164).flipBit(32).flipBit(59).flipBit(57).flipBit(51).flipBit(140).flipBit(218).flipBit(199).flipBit(38).flipBit(71).flipBit(100).flipBit(85).flipBit(226).flipBit(174).flipBit(117).flipBit(62).flipBit(94).flipBit(58).flipBit(69).flipBit(36).flipBit(95).flipBit(37).flipBit(56).flipBit(20).flipBit(69).flipBit(89).flipBit(134).flipBit(66).flipBit(109).flipBit(91).flipBit(38).flipBit(97).flipBit(159).flipBit(47).flipBit(130).flipBit(31).flipBit(40).flipBit(137).flipBit(77).flipBit(19).flipBit(85).flipBit(183).flipBit(168).flipBit(87).flipBit(108).flipBit(72).flipBit(117).flipBit(199).flipBit(75).flipBit(119).flipBit(85).flipBit(78).flipBit(206).flipBit(144).flipBit(106).flipBit(132).flipBit(33).flipBit(129).flipBit(121).flipBit(162).flipBit(182).flipBit(90).flipBit(83).flipBit(48).flipBit(166).flipBit(203).flipBit(52).flipBit(98).flipBit(173).flipBit(93).flipBit(183).flipBit(30).flipBit(76).flipBit(185).flipBit(96).flipBit(35).flipBit(71).flipBit(126).flipBit(61).flipBit(57).flipBit(83).flipBit(15).flipBit(102).flipBit(48).flipBit(150).flipBit(105).flipBit(89).flipBit(143).flipBit(74).flipBit(105).flipBit(97).flipBit(89).flipBit(148).flipBit(156).flipBit(20).flipBit(25).flipBit(163).flipBit(57).flipBit(148).flipBit(35).flipBit(83).flipBit(86).flipBit(158).flipBit(61).flipBit(87).flipBit(52).flipBit(170).flipBit(168).flipBit(23).flipBit(34).flipBit(29).flipBit(32).flipBit(142).flipBit(33).flipBit(76).flipBit(7).flipBit(77).flipBit(31).flipBit(126).flipBit(82).flipBit(190).flipBit(118).flipBit(67).flipBit(131).flipBit(23).flipBit(88).flipBit(28).flipBit(92).flipBit(91).flipBit(189).flipBit(183).flipBit(38).flipBit(40).flipBit(169).flipBit(135).flipBit(206).flipBit(86).flipBit(36).flipBit(102).flipBit(68).flipBit(92).flipBit(108).flipBit(94).flipBit(73).flipBit(143).flipBit(63).flipBit(17).flipBit(21).flipBit(34).flipBit(57).flipBit(159).flipBit(54).flipBit(135).flipBit(154).flipBit(138).flipBit(189).flipBit(100).flipBit(81).flipBit(78).flipBit(39).flipBit(80).flipBit(119).flipBit(90).flipBit(70).flipBit(170).flipBit(35).flipBit(104).flipBit(62).flipBit(53).flipBit(128).flipBit(171).flipBit(109).flipBit(49).flipBit(73).flipBit(121).flipBit(100).flipBit(40).flipBit(88).flipBit(46).flipBit(44).flipBit(45).flipBit(111).flipBit(147).flipBit(69).flipBit(94).flipBit(131).flipBit(75).flipBit(126).flipBit(88).flipBit(96).flipBit(116).flipBit(155).flipBit(201).flipBit(42).flipBit(90).flipBit(28).flipBit(44).flipBit(97).flipBit(101).flipBit(73).flipBit(38).flipBit(86).flipBit(187).flipBit(86).flipBit(66).flipBit(65).flipBit(136).flipBit(25).flipBit(67).flipBit(152).flipBit(221).flipBit(102).flipBit(160).flipBit(85).flipBit(83).flipBit(208).flipBit(168).flipBit(90).flipBit(120).flipBit(49).flipBit(146).flipBit(51).flipBit(97).flipBit(63).flipBit(219).flipBit(38).flipBit(24).flipBit(51).flipBit(115).flipBit(103).flipBit(63).flipBit(34).flipBit(31).flipBit(18).flipBit(104).flipBit(163).flipBit(126).flipBit(104).flipBit(76).flipBit(23).flipBit(91).flipBit(60).flipBit(197).flipBit(75).flipBit(67).flipBit(47).flipBit(83).flipBit(170).flipBit(32).flipBit(157).flipBit(189).flipBit(99).flipBit(91).flipBit(88).flipBit(104).flipBit(105).flipBit(136).flipBit(55).flipBit(32).flipBit(41).flipBit(75).flipBit(69).flipBit(73).flipBit(40).flipBit(125).flipBit(9).flipBit(90).flipBit(150).flipBit(115).flipBit(132).flipBit(65).flipBit(107).flipBit(76).flipBit(87).flipBit(85).flipBit(94).flipBit(185).flipBit(59).flipBit(76).flipBit(40).flipBit(34).flipBit(42).flipBit(92).flipBit(30).flipBit(178).flipBit(70).flipBit(22).flipBit(42).flipBit(33).flipBit(24).flipBit(67).flipBit(154).flipBit(152).flipBit(198).flipBit(27).flipBit(6).flipBit(213).flipBit(97).flipBit(62).flipBit(98).flipBit(132).flipBit(69).flipBit(48).flipBit(32).flipBit(70).flipBit(62).flipBit(46).flipBit(109).flipBit(29).flipBit(172).flipBit(45).flipBit(83).flipBit(88).flipBit(85).flipBit(88).flipBit(143).flipBit(110).flipBit(63).flipBit(78).flipBit(101).flipBit(52).flipBit(51).flipBit(95).flipBit(25).flipBit(54).flipBit(73).flipBit(31).flipBit(39).flipBit(60).flipBit(95).flipBit(97).flipBit(83).flipBit(107).flipBit(66).flipBit(212).flipBit(89).flipBit(125).flipBit(156).flipBit(29).flipBit(101).flipBit(167).flipBit(99).flipBit(62).flipBit(33).flipBit(91).flipBit(42).flipBit(43).flipBit(75).flipBit(35).flipBit(80).flipBit(173).flipBit(35).flipBit(178).flipBit(21).flipBit(123).flipBit(105).flipBit(63).flipBit(74).flipBit(90).flipBit(50).flipBit(92).flipBit(83).flipBit(46).flipBit(79).flipBit(105).flipBit(164).flipBit(73).flipBit(177).flipBit(180).flipBit(140).flipBit(199).flipBit(117).flipBit(78).flipBit(67).flipBit(57).flipBit(49).flipBit(89).flipBit(51).flipBit(67).flipBit(52).flipBit(98).flipBit(33).flipBit(96).flipBit(64).flipBit(95).flipBit(94).flipBit(107).flipBit(86).flipBit(142).flipBit(153).flipBit(69).flipBit(201).flipBit(51).flipBit(93).flipBit(41).flipBit(8).flipBit(104).flipBit(57).flipBit(37).flipBit(103).flipBit(70).flipBit(72).flipBit(105).flipBit(63).flipBit(39).flipBit(61).flipBit(38).flipBit(191).flipBit(73).flipBit(193).flipBit(102).flipBit(16).flipBit(78).flipBit(79).flipBit(22).flipBit(95).flipBit(76).flipBit(34).flipBit(121).flipBit(32).flipBit(108).flipBit(195).flipBit(83).flipBit(96).flipBit(107).flipBit(107).flipBit(36).flipBit(64).flipBit(70).flipBit(90).flipBit(85).flipBit(122).flipBit(83).flipBit(155).flipBit(85).flipBit(125).flipBit(82).flipBit(216).flipBit(60).flipBit(122).flipBit(166).flipBit(104).flipBit(122).flipBit(59).flipBit(94).flipBit(105).flipBit(53).flipBit(37).flipBit(71).flipBit(67).flipBit(18).flipBit(158).flipBit(83).flipBit(80).flipBit(46).flipBit(58).flipBit(38).flipBit(71).flipBit(50).flipBit(39).flipBit(162).flipBit(26).flipBit(95).flipBit(177).flipBit(111).flipBit(41).flipBit(121).flipBit(28).flipBit(69).flipBit(60).flipBit(49).flipBit(74).flipBit(85).flipBit(77).flipBit(97).flipBit(69).flipBit(119).flipBit(168).flipBit(63).flipBit(67).flipBit(45).flipBit(50).flipBit(45).flipBit(13).flipBit(47).flipBit(204).flipBit(98).flipBit(117).flipBit(121).flipBit(128).flipBit(106).flipBit(36).flipBit(56).flipBit(76).flipBit(150).flipBit(171).flipBit(171).flipBit(65).flipBit(225).flipBit(37).flipBit(169).flipBit(50).flipBit(66).flipBit(152).flipBit(105).flipBit(224).flipBit(119).flipBit(60).flipBit(65).flipBit(17).flipBit(64).flipBit(164).flipBit(64).flipBit(136).flipBit(153).flipBit(90).flipBit(86).flipBit(220).flipBit(69).flipBit(70).flipBit(115).flipBit(98).flipBit(65).flipBit(78).flipBit(167).flipBit(118).flipBit(183).flipBit(79).flipBit(21).flipBit(131).flipBit(188).flipBit(92).flipBit(144).flipBit(33).flipBit(78).flipBit(39).flipBit(9).flipBit(160).flipBit(25).flipBit(81).flipBit(95).flipBit(80).flipBit(89).flipBit(112).flipBit(20).flipBit(97).flipBit(42).flipBit(17).flipBit(167).flipBit(79).flipBit(32).flipBit(185).flipBit(129).flipBit(56).flipBit(90).flipBit(37).flipBit(108).flipBit(220).flipBit(56).flipBit(108).flipBit(70).flipBit(140).flipBit(22).flipBit(72).flipBit(141).flipBit(50).flipBit(136).flipBit(40).flipBit(193).flipBit(171).flipBit(158).flipBit(167).flipBit(58).flipBit(165).flipBit(176).flipBit(44).flipBit(51).flipBit(88).flipBit(84).flipBit(154).flipBit(82).flipBit(19).flipBit(26).flipBit(41).flipBit(41).flipBit(89).flipBit(48).flipBit(78).flipBit(108).flipBit(127).flipBit(77).flipBit(82).flipBit(127).flipBit(119).flipBit(71).flipBit(81).flipBit(75).flipBit(165).flipBit(26).flipBit(68).flipBit(34).flipBit(105).flipBit(27).flipBit(83).flipBit(109).flipBit(23).flipBit(87).flipBit(204).flipBit(119).flipBit(73).flipBit(226).flipBit(42).flipBit(83).flipBit(111).flipBit(164).flipBit(144).flipBit(131).flipBit(167).flipBit(101).flipBit(171).flipBit(137).flipBit(106).flipBit(108).flipBit(110).flipBit(203).flipBit(98).flipBit(109).flipBit(67).flipBit(69).flipBit(81).flipBit(106).flipBit(22).flipBit(86).flipBit(44).flipBit(53).flipBit(28).flipBit(42).flipBit(93).flipBit(34).flipBit(12).flipBit(23).flipBit(58).flipBit(36).flipBit(32).flipBit(168).flipBit(53).flipBit(101).flipBit(68).flipBit(55).flipBit(80).flipBit(11).flipBit(116).flipBit(41).flipBit(82).flipBit(184).flipBit(61).flipBit(80).flipBit(86).flipBit(188).flipBit(162).flipBit(79).flipBit(126).flipBit(173).flipBit(27).flipBit(76).flipBit(149).flipBit(31).flipBit(75).flipBit(130).flipBit(29).flipBit(105).flipBit(200).flipBit(76).flipBit(53).flipBit(37).flipBit(81).flipBit(59).flipBit(56).flipBit(167).flipBit(57).flipBit(128).flipBit(204).flipBit(163).flipBit(157).flipBit(91).flipBit(74).flipBit(93).flipBit(26).flipBit(79).flipBit(53).flipBit(34).flipBit(176).flipBit(56).flipBit(72).flipBit(53).flipBit(35).flipBit(57).flipBit(99).flipBit(184).flipBit(82).flipBit(190).flipBit(85).flipBit(82).flipBit(104).flipBit(207).flipBit(206).flipBit(105).flipBit(43).flipBit(74).flipBit(167).flipBit(201).flipBit(94).flipBit(57).flipBit(96).flipBit(45).flipBit(122).flipBit(82).flipBit(156).flipBit(175).flipBit(58).flipBit(75).flipBit(127).flipBit(90).flipBit(103).flipBit(41).flipBit(89).flipBit(79).flipBit(86).flipBit(158).flipBit(64).flipBit(114).flipBit(70).flipBit(23).flipBit(71).flipBit(125).flipBit(89).flipBit(147).flipBit(31).flipBit(93).flipBit(99).flipBit(59).flipBit(97).flipBit(69).flipBit(51).flipBit(73).flipBit(81).flipBit(41).flipBit(83).flipBit(58).flipBit(97).flipBit(48).flipBit(82).flipBit(100).flipBit(72).flipBit(22).flipBit(78).flipBit(124).flipBit(95).flipBit(68).flipBit(79).flipBit(103).flipBit(154).flipBit(41).flipBit(74).flipBit(65).flipBit(76).flipBit(34).flipBit(120).flipBit(94).flipBit(191).flipBit(65).flipBit(52).flipBit(4).flipBit(46).flipBit(104).flipBit(187).flipBit(85).flipBit(55).flipBit(113).flipBit(58).flipBit(86).flipBit(58).flipBit(49).flipBit(173).flipBit(153).flipBit(104).flipBit(180).flipBit(148).flipBit(111).flipBit(196).flipBit(111).flipBit(105).flipBit(86).flipBit(215).flipBit(104).flipBit(82).flipBit(142).flipBit(79).flipBit(69).flipBit(228).flipBit(173).flipBit(158).flipBit(93).flipBit(82).flipBit(147).flipBit(72).flipBit(35).flipBit(131).flipBit(64).flipBit(191).flipBit(57).flipBit(108).flipBit(81).flipBit(76).flipBit(61).flipBit(149).flipBit(139).flipBit(30).flipBit(65).flipBit(180).flipBit(57).flipBit(112).flipBit(106).flipBit(50).flipBit(57).flipBit(38).flipBit(49).flipBit(65).flipBit(211).flipBit(57).flipBit(126).flipBit(52).flipBit(29).flipBit(32).flipBit(93).flipBit(61).flipBit(93).flipBit(100).flipBit(160).flipBit(90).flipBit(98).flipBit(11).flipBit(67).flipBit(58).flipBit(67).flipBit(25).flipBit(79).flipBit(31).flipBit(99).flipBit(100).flipBit(91).flipBit(20).flipBit(44).flipBit(23).flipBit(42).flipBit(73).flipBit(93).flipBit(63).flipBit(99).flipBit(47).flipBit(138).flipBit(98).flipBit(50).flipBit(87).flipBit(132).flipBit(94).flipBit(182).flipBit(116).flipBit(63).flipBit(84).flipBit(88).flipBit(125).flipBit(64).flipBit(132).flipBit(27).flipBit(51).flipBit(26).flipBit(70).flipBit(87).flipBit(30).flipBit(85).flipBit(131).flipBit(96).flipBit(69).flipBit(138).flipBit(99).flipBit(89).flipBit(27).flipBit(186).flipBit(171).flipBit(194).flipBit(87).flipBit(181).flipBit(44).flipBit(49).flipBit(183).flipBit(43).flipBit(38).flipBit(26).flipBit(21).flipBit(122).flipBit(29).flipBit(59)); + } +} diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/JSRTests.j b/src/main/resources/Krakatau-master/tests/decompiler/source/JSRTests.j new file mode 100644 index 00000000..c5f71999 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/JSRTests.j @@ -0,0 +1,243 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) + +.class public JSRTests +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit locals 11 + .limit stack 11 + + aload_0 + dup + invokestatic JSRTests skipJSR ([Ljava/lang/String;)V + invokestatic JSRTests nestedJSRs ([Ljava/lang/String;)V + invokestatic JSRTests doubleJumpRet ()V + invokestatic JSRTests retWithStack ()V + return +.end method + +.method public static nestedJSRs : ([Ljava/lang/String;)V + .limit locals 11 + .limit stack 11 + + ; JSR as goto + jsr_w L1 +L1: jsr L2 +L2: pop2 + + ; Test a non-regular loop inside nested subprocedures + aload_0 + arraylength + istore_0 + + sipush 1337 + istore_2 + + iload_0 + jsr LSUB1 + iconst_0 + jsr LSUB1 + bipush 12 + jsr LSUB1 + return + +LSUB1: + swap + istore_1 + jsr LSUB2 + astore_1 + ret 1 + +LSUB2: + jsr LSUB3 + iconst_5 + istore_1 + jsr LSUB3 + astore_1 + ret 1 + +LSUB3: + iload_1 + dup + iconst_3 + irem + + ifeq LLOOP_ENTRY_2 +LLOOP_ENTRY_1: + iinc 2 -27 + jsr LPRINT + + dup + iconst_2 + irem + ifne LLOOP_TAIL + +LLOOP_ENTRY_2: + jsr LPRINT + iinc 2 -7 + dup + iflt LLOOP_EXIT + +LLOOP_TAIL: + iconst_m1 + iadd + goto_w LLOOP_ENTRY_1 +LLOOP_EXIT: + swap + wide astore 1 + pop + ret 1 + +LPRINT: + iinc 0 17 + getstatic java/lang/System out Ljava/io/PrintStream; + wide iload 0 + iload_2 + imul + invokevirtual java/io/PrintStream println (I)V + astore_1 + ret 1 + +.end method + +.method public static skipJSR : ([Ljava/lang/String;)V + .limit locals 1111 + .limit stack 11 + + iconst_1 + istore_1 + jsr LSUB + + iconst_1 + newarray double + dup + astore_2 + iconst_0 + iload_1 + i2d + dastore + iinc 1 1 + + jsr LSUB + jsr LSUB + aload_2 + iconst_0 + daload + iload_1 + i2d + ddiv + dstore_0 + + getstatic java/lang/System out Ljava/io/PrintStream; + dload_0 + invokevirtual java/io/PrintStream println (D)V + return + +LS_2: + arraylength + iadd + istore_1 + wide ret 333 + +LSUB: + wide astore 333 + aload_0 + iload_1 + dup_x1 + lookupswitch + default : LS_2 +.end method + +.method public static jsrStack : ([Ljava/lang/String;)V + .limit locals 11 + .limit stack 11 + ; Test for returning from JSR which isn't top of the stack + + aload_0 + arraylength + istore_0 + + jsr LTOP + ldc 'TM' + invokestatic JSRTests print (Ljava/lang/String;)V + jsr LTOP + ldc 'TR' + invokestatic JSRTests print (Ljava/lang/String;)V + return + +LTOP: + astore_1 + jsr LSUB + ldc 'SM' + invokestatic JSRTests print (Ljava/lang/String;)V + jsr LSUB + ldc 'SR' + invokestatic JSRTests print (Ljava/lang/String;)V + return + +LSUB: + astore_2 + iinc 0 -1 + iload_0 + lookupswitch + -1 : LBRANCH1 + default : LBRANCH2 + + ; return either from this or from the caller +LBRANCH1: + ret 1 +LBRANCH2: + ret 2 +.end method + +.method public static print : (Ljava/lang/String;)V + .limit locals 1 + .limit stack 2 + + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method + +.method public static doubleJumpRet : ()V + .attribute "Code" .code stack 2 locals 3 + iconst_2 + istore_2 +Lproc0: + jsr Lproc1 + ldc 'Pass' + invokestatic JSRTests print (Ljava/lang/String;)V + return +Lproc2: + pop + iload_2 + ifeq Lproc1 + astore_0 + ret 0 +Lproc1: + jsr Lproc2 + ldc 'Fail' + invokestatic JSRTests print (Ljava/lang/String;)V + return + .end code +.end method + +.method public static retWithStack : ()V + .code stack 21 locals 3 + jsr Lproc + invokestatic JSRTests print (Ljava/lang/String;)V + invokestatic JSRTests print (Ljava/lang/String;)V + invokestatic JSRTests print (Ljava/lang/String;)V + return +Lproc: + dup + astore_0 + ldc 'str 1' + ldc 'str 2' + ldc 'str 3' + ret 0 + .end code +.end method + + diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/LClassLiteralTest.j b/src/main/resources/Krakatau-master/tests/decompiler/source/LClassLiteralTest.j new file mode 100644 index 00000000..0fb511ce --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/LClassLiteralTest.j @@ -0,0 +1,73 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.version 49 0 +.class public abstract LClassLiteralTest ; Make class name start with L to test descriptor parsing +.super java/util/AbstractList + + +.const [this_c1] = Class LClassLiteralTest +.const [this_c2] = Class LLClassLiteralTest; +.const [obj_c1] = Class java/lang/Object +.const [obj_c2] = Class Ljava/lang/Object; +.const [iarr_c] = Class [I +.const [aarr_c] = Class [Ljava/lang/Object; +.const [longarr_c] = Class [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[D + + +.method public static main : ([Ljava/lang/String;)V + .limit stack 12 + .limit locals 1 + + ldc [obj_c1] + ldc [obj_c2] + dup2 + ldc [this_c1] + ldc [this_c2] + dup2_x2 + ldc [iarr_c] + ldc [aarr_c] + ldc [longarr_c] + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V + + + new Ljava/lang/String; + dup + ldc_w "Lwtf;" + invokespecial Ljava/lang/String; (Ljava/lang/String;)V + invokestatic LLClassLiteralTest; print (Ljava/lang/Object;)V + + + if_acmpne LENDIF1 + ldc "Equal1" + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V +LENDIF1: + + if_acmpne LENDIF2 + ldc "Equal2" + invokestatic LClassLiteralTest print (Ljava/lang/Object;)V +LENDIF2: + + return +.end method + + +.method public static print : (Ljava/lang/Object;)V + .limit stack 2 + .limit locals 1 + + aload 0 + checkcast java/lang/Object + checkcast Ljava/lang/Object; + astore 0 + + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual java/lang/Object toString ()Ljava/lang/String; + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/NonexistentCheckcast.j b/src/main/resources/Krakatau-master/tests/decompiler/source/NonexistentCheckcast.j new file mode 100644 index 00000000..90481e6c --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/NonexistentCheckcast.j @@ -0,0 +1,12 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.class public NonexistentCheckcast +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + aconst_null + checkcast wtf + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/NullInference.java b/src/main/resources/Krakatau-master/tests/decompiler/source/NullInference.java new file mode 100644 index 00000000..43765bdd --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/NullInference.java @@ -0,0 +1,27 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class NullInference { + public static void main(String args[]) throws Throwable{ + String s = null; + String s2 = null; + + try{ + try{ + s2 = args[0]; + + if (args == null){ + throw (Exception)(Object)args; + } + + s = args[1]; + } catch (ArrayIndexOutOfBoundsException e){ + } + + } catch (Throwable t){ + System.out.println(t instanceof NullPointerException); + throw t; + } + + System.out.println(s2); + System.out.println(s); + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/OddsAndEnds.java b/src/main/resources/Krakatau-master/tests/decompiler/source/OddsAndEnds.java new file mode 100644 index 00000000..91580b93 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/OddsAndEnds.java @@ -0,0 +1,76 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public final strictfp class OddsAndEnds { + + static private void test(float f, Object o){ + //synchronized(o) + { + long x = (long)f; + if (o instanceof Long) { + long y = (Long)o; + + if (y <= x){ + System.out.println((-y) % (-f)); + } + } + } + + int x = print("Hello, World!"); + int y = (o == null) ? (x ^ -1) : 42; + print("" + f + y + (f + y)); + } + + public static void main(String args[]){ + System.out.println("u\\\'''\"\"\"\t\b\n\r\f\0\7\00\000\07\077\377\123" + + "uUu\uuuuuuuuuuuu00fF\u0100\uFfFFUuU\n"); + System.out.println("b\\'''\"\"\"\t" + + "\ud800\uudc00\udbff\udfff\uD800\uDFFF\uDBFF\uDC00\n"); + + if (args != null) { + Object x = args; + try { + java.util.List y; + System.out.println(y = (java.util.ArrayList)x); + args = y.toArray(new String[0]); + } + catch (final ClassCastException e) { + args = true?args:null; + } + } + + test(42.24f, args); + test(4.224f, Long.valueOf(args[0])); + + test(-0.0f, main(999999999L)); + + testCastToInterface("This is a string"); + testCastToInterface2("This is also a string"); + } + + public static int main(Object x){ + boolean a = false; + boolean b = true; + boolean c = x == null == a; + boolean d = b?a?b:a?b:a:b?a:b; + boolean e = (a?b:c)?d:c?b:a; + + return ((Number) x).shortValue(); + } + + + static int print(String s){ + System.out.println(s); + return s.hashCode(); + } + + public static void testCastToInterface(String s){ + CharSequence cs = (CharSequence)(Object)s; + System.out.println(s); + System.out.println(cs); + } + + public static void testCastToInterface2(String... s){ + CharSequence[] cs = (CharSequence[])(Object[])s; + System.out.println(java.util.Arrays.deepToString(s)); + System.out.println(java.util.Arrays.deepToString(cs)); + } +} diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/OldVersionTest.j b/src/main/resources/Krakatau-master/tests/decompiler/source/OldVersionTest.j new file mode 100644 index 00000000..ce949b22 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/OldVersionTest.j @@ -0,0 +1,14 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.version 45 2 +.class public OldVersionTest +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + getstatic java/lang/System out Ljava/io/PrintStream; + ldc "Hello World!" + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/SamSunTests.j b/src/main/resources/Krakatau-master/tests/decompiler/source/SamSunTests.j new file mode 100644 index 00000000..ac0eba0e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/SamSunTests.j @@ -0,0 +1,168 @@ + +.class public super [cls] +.super java/lang/Object + +.const [cls] = Class SamSunTests + +.method public static main : ([Ljava/lang/String;)V + .code stack 10 locals 10 + aload_0 + dup + dup2 + invokestatic [cls] exceptionVerificationUsesOldLocalsState ([Ljava/lang/String;)V + invokestatic [cls] castToInterface ([Ljava/lang/String;)V + dup2 + invokestatic [cls] castFromInterface ([Ljava/lang/String;)V + invokestatic [cls] castStringLiteral ([Ljava/lang/String;)V + dup2 + invokestatic [cls] returnFromJSRWithSingleValueOnStack ([Ljava/lang/String;)V + return + .end code +.end method + +.method public static exceptionVerificationUsesOldLocalsState : ([Ljava/lang/String;)V + .code stack 10 locals 10 + .catch java/lang/Throwable from L0 to L1 using L0 + new java/lang/Integer + astore_1 + aconst_null +L0: + pop + aload_1 + ifnonnull L3 + new java/lang/Long + astore_1 +L1: + return +L3: + aload_1 + dup + iconst_0 + invokespecial Method java/lang/Integer (I)V + getstatic java/lang/System out Ljava/io/PrintStream; + swap + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return + .end code +.end method + +.method public static num : ()I + .code stack 10 locals 10 +L0: iconst_0 +L1: ireturn +L2: + .end code +.end method + +.method public static infiniteLoop : ([Ljava/lang/String;)V + .code stack 10 locals 10 + invokestatic Method [cls] num ()I +L0: + dup + tableswitch 0 + L0 + default : L4 +L4: + return + .end code +.end method + +.method public static castToInterface : ([Ljava/lang/String;)V + .code stack 10 locals 10 + iconst_2 + anewarray java/io/Serializable + astore_0 + aload_0 + iconst_0 + new java/util/concurrent/atomic/AtomicReference + dup + aload_0 + invokespecial Method java/util/concurrent/atomic/AtomicReference (Ljava/lang/Object;)V + checkcast java/io/Serializable + aastore + aload_0 + iconst_1 + aconst_null + aastore + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + iconst_1 + aaload + invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + return + .end code +.end method + +.method public static castFromInterface : ([Ljava/lang/String;)V + .code stack 10 locals 10 + .catch java/lang/Throwable from L0 to L1 using L2 + iconst_1 + anewarray java/io/Serializable + astore_0 + aload_0 + iconst_0 + new java/lang/Exception + dup + invokespecial Method java/lang/Exception ()V + aastore + aload_0 + iconst_0 + aaload +L0: + checkcast java/lang/Exception +L1: + astore_0 + aconst_null +L2: + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + return + .end code +.end method + +.method public static castStringLiteral : ([Ljava/lang/String;)V + .code stack 10 locals 10 + .catch java/lang/Exception from L1 to L2 using L3 + ldc "\n\n\n" + getstatic java/lang/System out Ljava/io/PrintStream; + swap +L1: + checkcast java/lang/Exception + goto L4 +L2: +L3: + getstatic java/lang/System out Ljava/io/PrintStream; + swap +L4: + invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + return + .end code +.end method + +.method public static returnFromJSRWithSingleValueOnStack : ([Ljava/lang/String;)V + .code stack 1024 locals 10 + jsr Lret + return +Lret: + astore 5 + ldc "Hi" + invokevirtual Method java/lang/String toCharArray ()[C + ret 5 + .end code +.end method + +.method public static soleCatchOfNon$Non$NullThrow : ([Ljava/lang/String;)V + .code stack 1024 locals 10 + .catch [0] from Lb to Lc using Ld +Lb: + aconst_null + athrow +Lc: +Ld: + athrow + return + .end code +.end method +.end class + diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/StaticInitializer.java b/src/main/resources/Krakatau-master/tests/decompiler/source/StaticInitializer.java new file mode 100644 index 00000000..49a309eb --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/StaticInitializer.java @@ -0,0 +1,16 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class StaticInitializer { + public static final boolean b = true; + + static { + for(char c = 66; c < 70; ++c){ + System.out.println((int)c); + System.out.println(c); + } + } + + public static void main(String[] a) + { + System.out.println(b & b); + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/SwapLoopTest.j b/src/main/resources/Krakatau-master/tests/decompiler/source/SwapLoopTest.j new file mode 100644 index 00000000..958b3af1 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/SwapLoopTest.j @@ -0,0 +1,45 @@ +; Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +.version 49 0 +.class public SwapLoopTest +.super java/lang/Object + +.field static test I = 9 + +.method public static main : ([Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + aload_0 + iconst_0 + aaload + aload_0 + iconst_1 + aaload + +LBEGIN: + swap + dup2 + invokestatic SwapLoopTest print (Ljava/lang/String;)V + invokestatic SwapLoopTest print (Ljava/lang/String;)V + goto LBEGIN + +.end method + + +.method public static print : (Ljava/lang/String;)V + .limit stack 10 + .limit locals 10 + + iconst_m1 + getstatic SwapLoopTest test I + dup2 + idiv + pop + iadd + putstatic SwapLoopTest test I + + getstatic java/lang/System out Ljava/io/PrintStream; + aload_0 + invokevirtual java/io/PrintStream println (Ljava/lang/Object;)V + return +.end method diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/Switch.java b/src/main/resources/Krakatau-master/tests/decompiler/source/Switch.java new file mode 100644 index 00000000..003556e8 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/Switch.java @@ -0,0 +1,48 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class Switch { + strictfp public static void main(String args[]){ + int x = -1; + + x:switch(args.length % -5){ + case 3: + x += 3; + case 1: + x--; + + switch(x) { + case -2: + if (x == -2){ + break x; + } + } + case 0: + switch((x == -1) ? 1 : 0) { + default: break; + case 1: System.out.println("Came from 0"); + } + + x += (x << x); + break; + case 2: + default: + x = x ^ (int)0xABCD000L; + case 4: + x *= 4; + break; + } + + System.out.println(x); + System.out.println(i(args.length)); + } + + static public int i(int x){ + switch (x) { + case 2: + x += 4; + default: + return -x; + case 1: case 3: + throw null; + } + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/Synchronized.java b/src/main/resources/Krakatau-master/tests/decompiler/source/Synchronized.java new file mode 100644 index 00000000..a6c5d07e --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/Synchronized.java @@ -0,0 +1,19 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) + +public class Synchronized { + public static int x; + + public static void main(String[] a) + { + try{ + synchronized(a){ + x = (1<<-1)/a.length; + } + } catch (Throwable t){ + x = 1; + } + + int y = x+2; + System.out.println(y); + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/TryCatchTest.java b/src/main/resources/Krakatau-master/tests/decompiler/source/TryCatchTest.java new file mode 100644 index 00000000..5120488b --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/TryCatchTest.java @@ -0,0 +1,128 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +import java.nio.channels.*; +import java.net.*; +import java.io.*; + +public class TryCatchTest { + static volatile boolean i2 = true; + + public static void main(String[] args) + { + try{ + int x = args.length; + + try{ + if (args[0].equals("bad") && i2){ + throw new MalformedURLException(args[1] + args[1]); + } + + if (args[0].equals("good") || ++x == 3){ + throw new FileLockInterruptionException(); + } + } catch (final MalformedURLException e) { + throw e; + } catch (Exception e) { + Throwable t = new MalformedURLException(e.getClass().getName()); + Throwable t2 = e.initCause(t); + throw (MalformedURLException)t; + } + + System.out.println(x); + } catch (IOException e){ + System.out.println(e); + } + + test2(54); test2(0); + test3(args); + test3b(args); + System.out.println(i); + test4(args); + try{ test5(); }catch(ClassCastException e) {} + } + + static String x; static int i; + public static void test2(int i) { + String[] x = null; + try { + TryCatchTest.i = 54/i; + TryCatchTest.x = x[0]; + System.out.println(x);} + catch (RuntimeException e) {} + catch (Throwable e) {x = new String[0];} + + try { + TryCatchTest.i = 54/i; + TryCatchTest.x = x[0] = ""; + System.out.println(x);} + catch (RuntimeException e) {} + catch (Throwable e) {x = new String[-1];} + } + + Object z; + public static void test3(Object x) { + long j = 0; + try { + (new TryCatchTest()).z = x; + i = 123456; + i = (int)(123456L/j); + } + catch (Throwable e) {} + } + + public static void test3b(Object[] x) { + int i = 0; + try { + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + x[i] = x[i++]; + } + catch (Throwable e) {} + System.out.println(i); + } + + public static void test4(Object x) { + int y = 1; + try{x = new int[-1];}catch(Throwable t){ + try{y = 52 % 0;}catch(Throwable t2){ + try{y = ((String)null).length();}catch(Throwable t3){ + System.out.println("test4 passed"); + return; + } + } + } + System.out.println("fail!"); + } + + public static void test5() { + Number n = new Long(-1); + if (n != null) { + System.out.println((Integer)n); + } + } + + // This function was added because it breaks Procyon 0.5.25 + public static int bar() + { + while(true) { + ltry: + try { + main(null); + return 0; + } catch (Throwable t) { + t.printStackTrace(); + continue; + } finally { + int x = 0; + break ltry; + } + } + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/TryWithResources.java b/src/main/resources/Krakatau-master/tests/decompiler/source/TryWithResources.java new file mode 100644 index 00000000..b6ace732 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/TryWithResources.java @@ -0,0 +1,60 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class TryWithResources extends RuntimeException implements AutoCloseable { + public static TryWithResources $ = new TryWithResources(5); + public final int i; + + static public TryWithResources $(int i) {return new TryWithResources(i);} + public TryWithResources(int i) {System.out.println("Opened "+i); this.i=new int[i].length;} + public void close() {System.out.println("Closed "+i); if(i%4==1) {throw this;}} + static public void $(int i, RuntimeException e) {if(null != e) {throw e;}} + static public void $(RuntimeException e) {System.out.println(e);} + public static void main(String[] args) throws Throwable {$.main();} + + public void main(String[]... args) + { + try{ + int i=-123,j=4567; + + try{++i;i++;} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + System.out.println(i); System.out.println(j); + + try(TryWithResources $=null) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(0)) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(-3)) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(0)) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1)) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1)) {$(++i, $);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1)) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + System.out.println(i); System.out.println(j); + + try(AutoCloseable _=null; TryWithResources $=null) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$(0)) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$(-3)) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$(0)) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$(1)) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$(1)) {$(++i, $);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$(1)) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(AutoCloseable _=null; TryWithResources $=this.$) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + System.out.println(i); System.out.println(j); + + try(TryWithResources $=this.$(0);AutoCloseable _=null;) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(-3);AutoCloseable _=null;) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(0);AutoCloseable _=null;) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1);AutoCloseable _=null;) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1);AutoCloseable _=null;) {$(++i, $);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1);AutoCloseable _=null;) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$;AutoCloseable _=null;) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + System.out.println(i); System.out.println(j); + + try(TryWithResources $=this.$(0); TryWithResources $$=$) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(-3); TryWithResources $$=$) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(0); TryWithResources $$=$) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1); TryWithResources $$=$) {$(++i, null);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1); TryWithResources $$=$) {$(++i, $);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$(1); TryWithResources $$=$) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + try(TryWithResources $=this.$; TryWithResources $$=$) {$(++i, this.$);} catch(RuntimeException _) {$(_);j++;} finally {int k=k=i;i=j;j=k;} + System.out.println(i); System.out.println(j); + } catch (Throwable t) {t.printStackTrace();} + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/UnicodeTest.java b/src/main/resources/Krakatau-master/tests/decompiler/source/UnicodeTest.java new file mode 100644 index 00000000..5f17c0bb --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/UnicodeTest.java @@ -0,0 +1,15 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class UnicodeTest \u007b + final static String \ufe4f\u2167 = "\uFEFF\uD800\uD8D8\uDFFD"; + transient static short x\u03A7x = 5; + + protected static String __\u0130\u00dFI(UnicodeTest x) {return \ufe4f\u2167\u003b} + + public static void main(String[] a) + { + System.out.println(__\u0130\u00dFI(null)); + System.out.println("\0\17u\\\u005c"\ff'\rr\u0027\nn \u0123\u1234O\uFFFFF"); + } +} + +\u001a \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/WhileLoops.java b/src/main/resources/Krakatau-master/tests/decompiler/source/WhileLoops.java new file mode 100644 index 00000000..72e1f3af --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/WhileLoops.java @@ -0,0 +1,97 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class WhileLoops { + static int x; + + public static void main(String[] a) + { + boolean y = a.length > 0; + boolean z = a.length < 2; + x = 42; + + while(1==1){ + x++; + + if (x <= 127){ + if (y ^ z){ + //x = y ? 4 : z ? x%7 : 127; + x = a.length ^ x; + break; + } + else{ + y = y & true; + z = z | false; + continue; + } + } + x = ~(~x) >>> 3L; + break; + } + + System.out.println(x); + System.out.println(y); + System.out.println(z); + try{ + main(a[0]); + } catch (IllegalArgumentException x) {} + + viod(); + } + + static int i,i2; + + private static int foo(){ + --i; + return 0x1111; + } + + + private static void main(String a) + { + int xx = java.lang.Integer.valueOf(a); + while(true){ + if (i2 < 0) { + if (xx > 1111 && i > foo()) { + continue; + } + + ++i; + break; + } + else { + L0: { + L1: { + i = xx; + if (++i == 10) {break L0;} + if (++i == 20) {break L1;} + if (++i == 30) {break L0;} + if (++i == 50) {break L1;} + } + i2 = i - (i * i); + continue; + } + break; + } + } + + System.out.println(i); + } + + protected static void viod() { + int x = 1337; + int y = 0; + + while(x >= 0) { + if(x == 0) { + y = 1; + x = 0; + } + if (y != 0) { + if (x == 0) {x = 0;} else {y = 0;} + System.out.println(y + ',' + y); + x = -40; + } + + x--; + } + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/floattest.java b/src/main/resources/Krakatau-master/tests/decompiler/source/floattest.java new file mode 100644 index 00000000..5a29f0b8 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/floattest.java @@ -0,0 +1,58 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +abstract public class floattest { + static final float e = 2.7182818459f; + static double d = 2.7182818459; + + static double x = -1./.0; + static double y = -5e-324d; + static float z = 700649232162408535461864791644958065640130970938257885878534141944895541342930300743319094181060791015626E-150f; + + final static float Float = 0X.0P0f/-0X0p-0f; + static float __ = 5.25E1F; + + strictfp public static void main(String[] args) + { + floattest self = null; x++; + + double t = (double)(1L << 53); + double x = t*t; + double y = (double)(-1L >>> 11); + double z = x % y; + System.out.println(z); + System.out.println(1.0 == z); + System.out.println(z*e); + System.out.println(z*d); + + System.out.println(self.x); + System.out.println(self.y); + System.out.println(self.z); + System.out.println((double)self.z); + + x = 1.23; + System.out.println(Float); + System.out.println(-.0F); + System.out.println(-.0); + System.out.println(1e29f); + System.out.println(129f); + System.out.println(__); + System.out.println(x); + System.out.println(x == (__ = (float)x)); + System.out.println(3.14159f); + double __ = __ = 0x1.8ap50; + double floattest = -1.0/.0; + + if ((__ >= 0x1.8ap50) & (__ <= 0x1.8ap50)) { + System.out.println((self.x%x)); + } + + System.out.println(-floattest); + floattest = -0.0; + System.out.println(-floattest); + System.out.println(__); + System.out.println(self.__); + System.out.println((float)(null==self?1.00000017881393421514957253748434595763683319091796875001f:.0f)); + System.out.println((float)(null==self?1.00000017881393421514957253748434595763683319091796875001d:.0d)); + } + + abstract void classIsAbstract(); +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/decompiler/source/splitnew.java b/src/main/resources/Krakatau-master/tests/decompiler/source/splitnew.java new file mode 100644 index 00000000..fe06312d --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/decompiler/source/splitnew.java @@ -0,0 +1,15 @@ +// Originally created as a test for Krakatau (https://github.com/Storyyeller/Krakatau) +public class splitnew { + public static void main(String... args){ + Number x = null; + int y = args.length; + while (y --> 0){ + if (y%3 == 2){ + break; + } + } + x = new Long(args[0]); + System.out.println(x); + System.out.println((byte)y); + } +} \ No newline at end of file diff --git a/src/main/resources/Krakatau-master/tests/disassembler/__init__.py b/src/main/resources/Krakatau-master/tests/disassembler/__init__.py new file mode 100644 index 00000000..fc83e027 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/__init__.py @@ -0,0 +1,19 @@ +# Mapping from test name -> tuple of argument lists. +registry = { + 'AnachAttrBadCP': ([],), + 'AnachAttrBadLowLbl': ([],), + 'AnachAttrExtraData': ([],), + 'AnachAttrTruncated': ([],), + 'AnachAttrStackMapExtra': ([],), + 'AnachAttrStackMapLbl': ([],), + 'AnachAttrStackMapTruncated': ([],), + 'AnachAttrStackMapTwice': ([],), + 'AnachAttrStackMapVTCode': ([],), + + + 'AnnotationsTest': ([],), + 'LineNumbersTest': ([],), + 'MethodParametersTest': ([],), + 'Primes': (['2'], ['3'], ['55555']), + 'SelfInner': ([],), +} diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadCP.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadCP.class new file mode 100644 index 00000000..b4e69beb Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadCP.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadLowLbl.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadLowLbl.class new file mode 100644 index 00000000..1cef74a1 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadLowLbl.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrExtraData.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrExtraData.class new file mode 100644 index 00000000..5f5d6d3e Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrExtraData.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapExtra.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapExtra.class new file mode 100644 index 00000000..51c361f1 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapExtra.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapLbl.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapLbl.class new file mode 100644 index 00000000..3f3cb10c Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapLbl.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTruncated.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTruncated.class new file mode 100644 index 00000000..a1d44e70 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTruncated.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTwice.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTwice.class new file mode 100644 index 00000000..45d043d1 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTwice.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapVTCode.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapVTCode.class new file mode 100644 index 00000000..46eec597 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapVTCode.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrTruncated.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrTruncated.class new file mode 100644 index 00000000..6c8e9ec6 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrTruncated.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/AnnotationsTest.jar b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnnotationsTest.jar new file mode 100644 index 00000000..b500590b Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/AnnotationsTest.jar differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/LineNumbersTest.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/LineNumbersTest.class new file mode 100644 index 00000000..6874cc64 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/LineNumbersTest.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/MethodParametersTest.jar b/src/main/resources/Krakatau-master/tests/disassembler/classes/MethodParametersTest.jar new file mode 100644 index 00000000..71b6a4ff Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/MethodParametersTest.jar differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/Primes.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/Primes.class new file mode 100644 index 00000000..8054a1f1 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/Primes.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/classes/SelfInner.class b/src/main/resources/Krakatau-master/tests/disassembler/classes/SelfInner.class new file mode 100644 index 00000000..2999cdd2 Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/disassembler/classes/SelfInner.class differ diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadCP.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadCP.j new file mode 100644 index 00000000..f2cbd3ef --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadCP.j @@ -0,0 +1,17 @@ +.version 48 0 +.class public super AnachAttrBadCP +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "QFVS" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V +L35: return + .end code +.end method + +.signature [77] + + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadLowLbl.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadLowLbl.j new file mode 100644 index 00000000..fc8de51b --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadLowLbl.j @@ -0,0 +1,19 @@ +.version 48 0 +.class public super AnachAttrBadLowLbl +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "lbl" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V +L35: return + + .attribute LocalVariableTypeTable b"\x00\x01\x00\x01\x00\x02\x00\x01\x00\x01\x00\x00" + + .end code +.end method + +.const [1] = Utf8 Code + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrExtraData.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrExtraData.j new file mode 100644 index 00000000..6314aee2 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrExtraData.j @@ -0,0 +1,16 @@ +.version 48 0 +.class public super AnachAttrExtraData +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "ExtraData" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V +L35: return + .end code +.end method + +.attribute EnclosingMethod "77----------------" + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapExtra.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapExtra.j new file mode 100644 index 00000000..d5a91743 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapExtra.j @@ -0,0 +1,25 @@ +.version 50 0 +.class public super AnachAttrStackMapExtra +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 + + +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "stackmap +++" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + + + nop + nop + nop +L35: return +LEND: + + .attribute StackMapTable b'\x00\x01@\x08\x00\x0b' + .end code +.end method + + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapLbl.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapLbl.j new file mode 100644 index 00000000..e5520409 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapLbl.j @@ -0,0 +1,23 @@ +.version 50 0 +.class public super AnachAttrStackMapLbl +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 + + +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "stackmap lbl" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + + + nop +L35: return +LEND: + + .attribute StackMapTable b'\x00\x01@\x08\x00\x0b' + .end code +.end method + + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTruncated.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTruncated.j new file mode 100644 index 00000000..20cdcb17 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTruncated.j @@ -0,0 +1,25 @@ +.version 49 0 +.class public super AnachAttrStackMapTruncated +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 + + +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "stackm" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + + + nop + nop + nop +L35: return +LEND: + + .attribute StackMapTable b'\x00\x01@\x08' + .end code +.end method + + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTwice.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTwice.j new file mode 100644 index 00000000..a0aa1be7 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTwice.j @@ -0,0 +1,26 @@ +.version 49 0 +.class public super AnachAttrStackMapTwice +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 + + +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "stackmap x2" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + + + nop + nop + nop +L35: return +LEND: + + .attribute StackMapTable b'\x00\x01@\x08\x00\x0b' + .attribute StackMapTable b'\x00\x01@\x08\x00\x0b' + .end code +.end method + + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapVTCode.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapVTCode.j new file mode 100644 index 00000000..ceb687e4 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapVTCode.j @@ -0,0 +1,25 @@ +.version 49 0 +.class public super AnachAttrStackMapVTCode +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 + + +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "stackmap vt" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V + + + nop + nop + nop +L35: return +LEND: + + .attribute StackMapTable b'\x00\x01@\x18\x00\x0b' + .end code +.end method + + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrTruncated.j b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrTruncated.j new file mode 100644 index 00000000..59e9fd92 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrTruncated.j @@ -0,0 +1,16 @@ +.version 48 0 +.class public super AnachAttrTruncated +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; + ldc "truncated" +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V +L35: return + .end code +.end method + +.attribute EnclosingMethod "77" + +.end class diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/AnnotationsTest.java b/src/main/resources/Krakatau-master/tests/disassembler/source/AnnotationsTest.java new file mode 100644 index 00000000..70dc6862 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/AnnotationsTest.java @@ -0,0 +1,96 @@ +import java.lang.annotation.*; +import java.util.function.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +@Target({ + ElementType.ANNOTATION_TYPE, + ElementType.CONSTRUCTOR, + ElementType.FIELD, + ElementType.LOCAL_VARIABLE, + ElementType.METHOD, + ElementType.PACKAGE, + ElementType.PARAMETER, + ElementType.TYPE, + ElementType.TYPE_PARAMETER, + ElementType.TYPE_USE +}) +@Retention(RetentionPolicy.RUNTIME) +@interface A { + double value() default 0.0/0.0; +} + +@Target({ + ElementType.TYPE_USE +}) +@A(0) +@interface B { + @A(1) A value() default @A(2); +} + +@A(3) +interface test<@A(4)T extends @A(5)Cloneable, @A(6)U> extends java.util.@A(7)Map<@A(8)U, @A(9)T> { +} + +@A(10) +public class AnnotationsTest<@A(11) T> extends java.util.Stack<@A(12) T> implements @A(13) Cloneable, java.io.@A(14) Serializable { + + @A(15) + public class Inner { + @A(16)public Inner() {} + @A(17)public <@A(18)T> Inner(@A(19)T t) {} + } + + @A(20) + static class Inner2 { + @A(21)public Inner2() {} + @A(22)public <@A(23)T2> Inner2(@A(24)T2 t) {} + } + + @A(25) + String foo() throws @A(26)RuntimeException, @A(27)Error { + @A(28)String p = "::"; + @A(29)Object x = new @A(30)AnnotationsTest(); + @A(31)Object[] y = new @A(32)AnnotationsTest[0]; + @A(33)Map.@A(34)Entry<@A(35)String,@A(36)A> z = null; + + x = this.new @A(37)Inner(); + x = x instanceof @A(38)String; + + return (@A(39)String)p; + } + + static <@A(40)T2> void foo(@A(41)T2 x) {} + + @A(43) + static public void main(@A(44)String... args) { + new @A(Double.NEGATIVE_INFINITY)AnnotationsTest().foo(); + java.util.Arrays.stream(args).forEach(@A(45)AnnotationsTest::<@A(46)String>foo); + + Function<@B() String, @A(47)AutoCloseable> newsr = @A(48)java.io.StringReader::new; + try ( + @A(49)java.io.StringReader sr = new java.io.@A(50)StringReader(""); + @A(51)AutoCloseable sr2 = newsr.apply(""); + ) + { + Object x; + x = new @A(52)AnnotationsTest.@A(53)Inner[0]; + x = new AnnotationsTest.@A(54)Inner2(); + { @A(55)Map.Entry<@A(56)?, @A(57)?> y = null; } + { @A(58)Map.Entry, @A(61)?> y = null; } + { @A(62)Map.Entry, AnnotationsTest.@A(65)Inner> y = null; } + + } catch (@A(66)Exception | @A(67)Error e) {} finally { + @B(@A(-0.0)) Object x = adfs$adf; + java.lang.System.out.println(x); + } + } + + final @A(68)Object adfsadf = "Hello!"; + static final @A(69)Object adfs$adf = "\"Hello!\""; + + public @A(70)String toString() {return null;} + public @A(71)test<@A(72)Cloneable, @A(Double.NaN)test> toString2() {return null;} + +} diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/LineNumbersTest.java b/src/main/resources/Krakatau-master/tests/disassembler/source/LineNumbersTest.java new file mode 100644 index 00000000..f5ef050a --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/LineNumbersTest.java @@ -0,0 +1,25 @@ +import java.util.*; + +public class LineNumbersTest extends LinkedList{ + public LineNumbersTest(int x) { + super((x & 0) == 1 ? + new LinkedList((x & 1) == x++ ? new ArrayList() : new HashSet()) + :new HashSet()); + super.add(x = getLineNo()); + this.add(x = getLineNo()); + } + + static int getLineNo() { + return new Throwable().fillInStackTrace().getStackTrace()[1].getLineNumber(); + } + + public static void main(String[] args) { + System.out.println(getLineNo()); + System.out.println(new Throwable().fillInStackTrace().getStackTrace()[0].getFileName()); + System.out.println(getLineNo()); + + System.out.println(new LineNumbersTest(2)); + List foo = new ArrayList<>(); + System.out.println(foo.addAll(foo)); + } +} diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/MethodParametersTest.java b/src/main/resources/Krakatau-master/tests/disassembler/source/MethodParametersTest.java new file mode 100644 index 00000000..ea26cb19 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/MethodParametersTest.java @@ -0,0 +1,29 @@ +import java.lang.reflect.*; + +public class MethodParametersTest { + public static void main(String[] args) throws Throwable { + (new Object() { + String ident(String foo, final double d, String[] bar)[] throws Throwable { + class Nested { + void main3(final int foo, String... args) throws Throwable { + System.out.println(args.length == bar.length); + Method m = Nested.class.getDeclaredMethods()[0]; + + while (m != null) { + System.out.println(m.getName()); + System.out.println(m.getParameterCount()); + for (Parameter p: m.getParameters()) { + System.out.println(p); + } + + m = m.getDeclaringClass().getEnclosingMethod(); + } + } + } + + new Nested().main3(0, args); + return bar; + } + }).ident("Test", 5.666, args); + } +} diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/Primes.java b/src/main/resources/Krakatau-master/tests/disassembler/source/Primes.java new file mode 100644 index 00000000..ce51e7d2 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/Primes.java @@ -0,0 +1,27 @@ +import java.util.Arrays; + +public class Primes { + public Object x; + public Primes(Object x) {this.x = x;} + public Primes(int n) {this(null, null, n, 0);} + + public Primes(int[] a, int[] b, int c, int d) { + this((a==null)?((b==null)?((c<2)?(new int[0]):((a=new int[c])==null)?a + :((a[0]=a[1]=1)!=((b=new int[c])[(0)]=1))?b:((new Primes(a,null,0, + (c-1)/2))==(new Primes(a,b,1,c-1)))?a:Arrays.copyOfRange(b,1,b[0]) + ):(((c^d)==0==true)?(b[c*b[0]]=1):((new Primes(a,b,c,c+(d-c)/2)) + .hashCode()|(new Primes(a,b,1+c+(d-c)/2,d)).hashCode()))):((null== + b)?((c<=d && c>=d)?((a[c]==0)?((new Primes(b,a,2+(0&(a[0]=d)),(a + .length-1)/c)).hashCode()):(0)):((new Primes(a,b,c,c+(d-c)/2)) + .hashCode()^(new Primes(a,b,1+c+(d-c)/2,d)).hashCode())):(((c==d) + ||(new Primes(a,b,c,c+(d-c)/2)).equals(new Primes(a,b,1+c+(d-c)/2, + d)))?((-0==a[c])?(b[b[0]++]=d):(0)):~~5))); + } + + @Override + public String toString() {return Arrays.toString((int[])x);} + + public static void main(String[] args) { + System.out.println(new Primes(Integer.parseInt(args[0]))); + } +} diff --git a/src/main/resources/Krakatau-master/tests/disassembler/source/SelfInner.j b/src/main/resources/Krakatau-master/tests/disassembler/source/SelfInner.j new file mode 100644 index 00000000..e8d76e50 --- /dev/null +++ b/src/main/resources/Krakatau-master/tests/disassembler/source/SelfInner.j @@ -0,0 +1,39 @@ +.version 49 0 +.class public super SelfInner +.super java/lang/Object + +.method public static main : ([Ljava/lang/String;)V + .code stack 2 locals 5 +L0: ldc Class SelfInner +L2: invokevirtual Method java/lang/Class getDeclaredClasses ()[Ljava/lang/Class; +L5: astore_1 +L6: aload_1 +L7: arraylength +L8: istore_2 +L9: iconst_0 +L10: istore_3 +L11: iload_3 +L12: iload_2 +L13: if_icmpge L35 +L16: aload_1 +L17: iload_3 +L18: aaload +L19: astore 4 +L21: getstatic Field java/lang/System out Ljava/io/PrintStream; +L24: aload 4 +L26: invokevirtual Method java/io/PrintStream println (Ljava/lang/Object;)V +L29: iinc 3 1 +L32: goto L11 +L35: return +L36: + .end code +.end method + +.const [1] = Class SelfInner +.innerclasses + [1] SelfInner Foo public +.end innerclasses + + +.attribute SourceDebugExtension b'' +.end class diff --git a/src/main/resources/Krakatau-master/tests/roundtrip/classes/module-info.class b/src/main/resources/Krakatau-master/tests/roundtrip/classes/module-info.class new file mode 100644 index 00000000..c65c9dec Binary files /dev/null and b/src/main/resources/Krakatau-master/tests/roundtrip/classes/module-info.class differ diff --git a/src/main/resources/enjarify-master/CONTRIBUTING.txt b/src/main/resources/enjarify-master/CONTRIBUTING.txt new file mode 100644 index 00000000..052f6dca --- /dev/null +++ b/src/main/resources/enjarify-master/CONTRIBUTING.txt @@ -0,0 +1,24 @@ +Want to contribute? Great! First, read this page (including the small print at the end). + +### Before you contribute +Before we can use your code, you must sign the +[Google Individual Contributor License Agreement](https://developers.google.com/open-source/cla/individual?csw=1) +(CLA), which you can do online. The CLA is necessary mainly because you own the +copyright to your changes, even after your contribution becomes part of our +codebase, so we need your permission to use and distribute your code. We also +need to be sure of various other things—for instance that you'll tell us if you +know that your code infringes on other people's patents. You don't have to sign +the CLA until after you've submitted your code for review and a member has +approved it, but you must do it before we can put your code into our codebase. +Before you start working on a larger contribution, you should get in touch with +us first through the issue tracker with your idea so that we can help out and +possibly guide you. Coordinating up front makes it much easier to avoid +frustration later on. + +### Code reviews +All submissions, including submissions by project members, require review. We +use Github pull requests for this purpose. + +### The small print +Contributions made by corporations are covered by a different agreement than +the one above, the Software Grant and Corporate Contributor License Agreement. \ No newline at end of file diff --git a/libs/enjarif-license.txt b/src/main/resources/enjarify-master/LICENSE.txt similarity index 99% rename from libs/enjarif-license.txt rename to src/main/resources/enjarify-master/LICENSE.txt index 7a4a3ea2..d6456956 100644 --- a/libs/enjarif-license.txt +++ b/src/main/resources/enjarify-master/LICENSE.txt @@ -199,4 +199,4 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file + limitations under the License. diff --git a/src/main/resources/enjarify-master/README.md b/src/main/resources/enjarify-master/README.md new file mode 100644 index 00000000..101bf749 --- /dev/null +++ b/src/main/resources/enjarify-master/README.md @@ -0,0 +1,62 @@ +### Introduction + +Enjarify is a tool for translating Dalvik bytecode to equivalent Java bytecode. This allows Java analysis tools to analyze Android applications. + + +### Usage and installation + +Enjarify is a pure python 3 application, so you can just git clone and run it. To run it directly, assuming you are in the top directory of the repository, you can just do + + python3 -O -m enjarify.main yourapp.apk + +For normal use, you'll probably want to use the wrapper scripts and set it up on your path. + +#### Linux + +For convenience, a wrapper shell script is provided, enjarify.sh. This will try to use Pypy if available, since it is faster than CPython. If you want to be able to call Enjarify from anywhere, you can create a symlink from somewhere on your PATH, such as ~/bin. To do this, assuming you are inside the top level of the repository, + + ln -s "$PWD/enjarify.sh" ~/bin/enjarify + +#### Windows + +A wrapper batch script, enjarify.bat, is provided. To be able to call it from anywhere, just add the root directory of the repository to your PATH. The batch script will always invoke python3 as interpreter. If you want to use pypy, just edit the script. + +#### Usage + +Assuming you set up the script on your path correctly, you can call it from anywhere by just typing enjarify, e.g. + + enjarify yourapp.apk + +The most basic form of usage is to just specify an apk file or dex file as input. If you specify a multidex apk, Enjarify will automatically translate all of the dex files and output the results in a single combined jar. If you specify a dex file, only that dex file will be translated. E.g. assuming you manually extracted the dex files you could do + + enjarify classes2.dex + +The default output file is [inputname]-enjarify.jar in the current directory. To specify the filename for the output explicitly, pass the -o or --output option. + + enjarify yourapp.apk -o yourapp.jar + +By default, Enjarify will refuse to overwrite the output file if it already exists. To overwrite the output, pass the -f or --force option. + + +### Why not dex2jar? + +Dex2jar is an older tool that also tries to translate Dalvik to Java bytecode. It works reasonable well most of the time, but a lot of obscure features or edge cases will cause it to fail or even silently produce incorrect results. By contrast, Enjarify is designed to work in as many cases as possible, even for code where Dex2jar would fail. Among other things, Enjarify correctly handles unicode class names, constants used as multiple types, implicit casts, exception handlers jumping into normal control flow, classes that reference too many constants, very long methods, exception handlers after a catchall handler, and static initial values of the wrong type. + + +### Limitations + +Enjarify does not currently translate optional metadata such as sourcefile attributes, line numbers, and annotations. + +Enjarify tries hard to successfully translate as many classes as possible, but there are some potential cases where it is simply not possible due to limitations in Android, Java, or both. Luckily, this only happens in contrived circumstances, so it shouldn't be a problem in practice. + + +### Performance tips + +PyPy is much faster than CPython. To install PyPy, see http://pypy.org/. Make sure you get PyPy3 rather than regular PyPy. The Linux wrapper script will automatically use the command pypy3 if available. On Windows, you'll need to edit the wrapper script yourself. + +By default, Enjarify runs optimizations on the bytecode which make it more readable for humans (copy propagation, unused value removal, etc.). If you don't need this, you can speed things up by disabling the optimizations with the --fast option. Note that in the very rare case where a class is too big to fit in a classfile without optimization, Enjarify will automatically retry it with all optimizations enabled, so this option does not affect the number of classes that are successfully translated. + + +### Disclaimer + +This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google. diff --git a/src/main/resources/enjarify-master/debug.py b/src/main/resources/enjarify-master/debug.py new file mode 100644 index 00000000..28c48ac2 --- /dev/null +++ b/src/main/resources/enjarify-master/debug.py @@ -0,0 +1,3 @@ +import enjarify.main + +enjarify.main.main() diff --git a/src/main/resources/enjarify-master/enjarify.bat b/src/main/resources/enjarify-master/enjarify.bat new file mode 100644 index 00000000..69fc480b --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify.bat @@ -0,0 +1,18 @@ +@echo off + +REM Copyright 2015 Google Inc. All Rights Reserved. +REM +REM Licensed under the Apache License, Version 2.0 (the "License"); +REM you may not use this file except in compliance with the License. +REM You may obtain a copy of the License at +REM +REM http://www.apache.org/licenses/LICENSE-2.0 +REM +REM Unless required by applicable law or agreed to in writing, software +REM distributed under the License is distributed on an "AS IS" BASIS, +REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +REM See the License for the specific language governing permissions and +REM limitations under the License. + +set PYTHONPATH=%~dp0 +python3 -O -m enjarify.main %* diff --git a/src/main/resources/enjarify-master/enjarify.sh b/src/main/resources/enjarify-master/enjarify.sh new file mode 100644 index 00000000..118dc901 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# Try to find a valid python3 command, preferring pypy if available +function guess { + if [ -z "$PYTHON" ]; then + result=$($1 -c "print(range)" 2>/dev/null) + if [ "$result" = "" ]; then + PYTHON=$1 + fi + fi +} + +guess "pypy3" +guess "python3" +guess "pypy" +guess "python" + +if [ -z "$PYTHON" ]; then + echo "Unable to find python3 on path" +else + echo "Using $PYTHON as Python interpreter" + + # Find location of this bash script, and set its directory as the PYTHONPATH + export PYTHONPATH=$(dirname "$(readlink "${BASH_SOURCE[0]}")") + + # Now execute the actual program + exec $PYTHON -O -m enjarify.main "$@" +fi diff --git a/src/main/resources/enjarify-master/enjarify/__init__.py b/src/main/resources/enjarify-master/enjarify/__init__.py new file mode 100644 index 00000000..e7522b2c --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/src/main/resources/enjarify-master/enjarify/byteio.py b/src/main/resources/enjarify-master/enjarify/byteio.py new file mode 100644 index 00000000..b6065a68 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/byteio.py @@ -0,0 +1,80 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import struct + +from .util import signExtend + +class Reader: + def __init__(self, data, pos=0): + self.data = data + self.pos = pos + + def read(self, size): + if not 0 <= size <= len(self.data) - self.pos: + raise IndexError + result = self.data[self.pos: self.pos+size] + self.pos += size + return result + + def _unpack(self, fmt): + fmt = struct.Struct(fmt) + return fmt.unpack_from(self.read(fmt.size))[0] + + def u8(self): return self.read(1)[0] + def u16(self): return self._unpack('> 7: + result ^= (self.data[self.pos] & 0x7f) << size + size += 7 + self.pos += 1 + result ^= (self.data[self.pos] & 0x7f) << size + size += 7 + self.pos += 1 + + if signed: + result = signExtend(result, size) + return result + + def uleb128(self): return self._leb128() + def sleb128(self): return self._leb128(signed=True) + + # Maintain strings in binary encoding instead of attempting to decode them + # since the output will be using the same encoding anyway + def readCStr(self): + oldpos, self.pos = self.pos, self.data.find(b'\0', self.pos) + return self.data[oldpos:self.pos] + +class Writer: + def __init__(self): + self.buf = bytearray() + + def write(self, s): + self.buf += s + + def _pack(self, fmt, arg): + return self.write(struct.pack(fmt, arg)) + + def u8(self, x): return self.write(bytes([x])) + def u16(self, x): return self._pack('>H', x) + def u32(self, x): return self._pack('>I', x) + def u64(self, x): return self._pack('>Q', x) + + def toBytes(self): + return bytes(self.buf) diff --git a/src/main/resources/enjarify-master/enjarify/dalvik.py b/src/main/resources/enjarify-master/enjarify/dalvik.py new file mode 100644 index 00000000..415d2b61 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/dalvik.py @@ -0,0 +1,219 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from . import dalvikformats +from . import util + +class DalvikInstruction: + def __init__(self, type_, pos, newpos, opcode, args): + self.type = type_ + self.pos = pos + self.pos2 = newpos + self.opcode = opcode + self.args = args + + self.implicit_casts = None + self.prev_result = None # for move-result/exception + self.fillarrdata = None + self.switchdata = None + +_it = iter(range(999)) +Nop = next(_it) +Move = next(_it) +MoveWide = next(_it) +MoveResult = next(_it) +Return = next(_it) +Const32 = next(_it) +Const64 = next(_it) +ConstString = next(_it) +ConstClass = next(_it) +MonitorEnter = next(_it) +MonitorExit = next(_it) +CheckCast = next(_it) +InstanceOf = next(_it) +ArrayLen = next(_it) +NewInstance = next(_it) +NewArray = next(_it) +FilledNewArray = next(_it) +FillArrayData = next(_it) +Throw = next(_it) +Goto = next(_it) +Switch = next(_it) +Cmp = next(_it) +If = next(_it) +IfZ = next(_it) + +ArrayGet = next(_it) +ArrayPut = next(_it) +InstanceGet = next(_it) +InstancePut = next(_it) +StaticGet = next(_it) +StaticPut = next(_it) + +# Invoke = next(_it) +InvokeVirtual = next(_it) +InvokeSuper = next(_it) +InvokeDirect = next(_it) +InvokeStatic = next(_it) +InvokeInterface = next(_it) + +# actual ops for these are defined in jvm/mathops.py +UnaryOp = next(_it) +BinaryOp = next(_it) +BinaryOpConst = next(_it) + +INVOKE_TYPES = InvokeVirtual, InvokeSuper, InvokeDirect, InvokeStatic, InvokeInterface + +# instructions which Dalvik considers to throw +THROW_TYPES = INVOKE_TYPES + (ConstString, ConstClass, MonitorEnter, MonitorExit, CheckCast, InstanceOf, ArrayLen, NewArray, NewInstance, FilledNewArray, FillArrayData, Throw, ArrayGet, ArrayPut, InstanceGet, InstancePut, StaticGet, StaticPut, BinaryOp, BinaryOpConst) +# last two only if it is int/long div or rem + +# ignore the possiblity of linkage errors (i.e. constants and instanceof can't throw) +# in theory MonitorExit can't throw either due to the structured locking checks, but these are broken and work inconsistently +PRUNED_THROW_TYPES = INVOKE_TYPES + (MonitorEnter, MonitorExit, CheckCast, ArrayLen, NewArray, NewInstance, FilledNewArray, FillArrayData, Throw, ArrayGet, ArrayPut, InstanceGet, InstancePut, StaticGet, StaticPut, BinaryOp, BinaryOpConst) + +OPCODES = util.keysToRanges({ + 0x00: Nop, + 0x01: Move, + 0x04: MoveWide, + 0x07: Move, + 0x0a: MoveResult, + 0x0e: Return, + 0x12: Const32, + 0x16: Const64, + 0x1a: ConstString, + 0x1c: ConstClass, + 0x1d: MonitorEnter, + 0x1e: MonitorExit, + 0x1f: CheckCast, + 0x20: InstanceOf, + 0x21: ArrayLen, + 0x22: NewInstance, + 0x23: NewArray, + 0x24: FilledNewArray, + 0x26: FillArrayData, + 0x27: Throw, + 0x28: Goto, + 0x2b: Switch, + 0x2d: Cmp, + 0x32: If, + 0x38: IfZ, + 0x3e: Nop, # unused + 0x44: ArrayGet, + 0x4b: ArrayPut, + 0x52: InstanceGet, + 0x59: InstancePut, + 0x60: StaticGet, + 0x67: StaticPut, + 0x6e: InvokeVirtual, + 0x6f: InvokeSuper, + 0x70: InvokeDirect, + 0x71: InvokeStatic, + 0x72: InvokeInterface, + 0x73: Nop, # unused + 0x74: InvokeVirtual, + 0x75: InvokeSuper, + 0x76: InvokeDirect, + 0x77: InvokeStatic, + 0x78: InvokeInterface, + 0x79: Nop, # unused + 0x7b: UnaryOp, + 0x90: BinaryOp, + 0xd0: BinaryOpConst, + 0xe3: Nop, # unused +}, 256) + + +def parseInstruction(dex, insns_start_pos, shorts, pos): + word = shorts[pos] + opcode = word & 0xFF + newpos, args = dalvikformats.decode(shorts, pos, opcode) + + # parse special data instructions + switchdata = None + fillarrdata = None + if word == 0x100 or word == 0x200: #switch + size = shorts[pos+1] + st = dex.stream(insns_start_pos + pos*2 + 4) + + if word == 0x100: #packed + first_key = st.u32() + targets = [st.u32() for _ in range(size)] + newpos = pos + 2 + (1 + size)*2 + switchdata = {(i+first_key):x for i,x in enumerate(targets)} + else: #sparse + keys = [st.u32() for _ in range(size)] + targets = [st.u32() for _ in range(size)] + newpos = pos + 2 + (size + size)*2 + switchdata = dict(zip(keys, targets)) + + if word == 0x300: + width = shorts[pos+1] % 16 + size = shorts[pos+2] ^ (shorts[pos+3] << 16) + newpos = pos + ((size * width + 1) // 2 + 4) + # get array data + stream = dex.stream(insns_start_pos + pos*2 + 8) + func = { + 1: stream.u8, + 2: stream.u16, + 4: stream.u32, + 8: stream.u64 + }[width] + fillarrdata = width, [func() for _ in range(size)] + + # warning, this must go below the special data handling that calculates newpos + instruction = DalvikInstruction(OPCODES[opcode], pos, newpos, opcode, args) + instruction.fillarrdata = fillarrdata + instruction.switchdata = switchdata + + return newpos, instruction + +def parseBytecode(dex, insns_start_pos, shorts, catch_addrs): + ops = [] + pos = 0 + while pos < len(shorts): + pos, op = parseInstruction(dex, insns_start_pos, shorts, pos) + ops.append(op) + + # Fill in data for move-result + for instr, instr2 in zip(ops, ops[1:]): + if not instr2.type == MoveResult: + continue + if instr.type in INVOKE_TYPES: + called_id = dex.method_id(instr.args[0]) + if called_id.return_type != b'V': + instr2.prev_result = called_id.return_type + elif instr.type == FilledNewArray: + instr2.prev_result = dex.type(instr.args[0]) + elif instr2.pos in catch_addrs: + instr2.prev_result = b'Ljava/lang/Throwable;' + assert 0 not in catch_addrs + + # Fill in implicit cast data + for i, instr in enumerate(ops): + if instr.opcode in (0x38, 0x39): # if-eqz, if-nez + if i > 0 and ops[i-1].type == InstanceOf: + prev = ops[i-1] + desc_ind = prev.args[2] + regs = {prev.args[1]} + + if i > 1 and ops[i-2].type == Move: + prev2 = ops[i-2] + if prev2.args[0] == prev.args[1]: + regs.add(prev2.args[1]) + # Don't cast result of instanceof if it overwrites the input + regs.discard(prev.args[0]) + if regs: + instr.implicit_casts = desc_ind, sorted(regs) + return ops diff --git a/src/main/resources/enjarify-master/enjarify/dalvikformats.py b/src/main/resources/enjarify-master/enjarify/dalvikformats.py new file mode 100644 index 00000000..a02fa55b --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/dalvikformats.py @@ -0,0 +1,163 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from . import util + +# Code for parsing the various Dalvik opcode formats +INSTRUCTION_FORMAT = util.keysToRanges({ + 0x00: '10x', + 0x01: '12x', + 0x02: '22x', + 0x03: '32x', + 0x04: '12x', + 0x05: '22x', + 0x06: '32x', + 0x07: '12x', + 0x08: '22x', + 0x09: '32x', + 0x0a: '11x', + 0x0b: '11x', + 0x0c: '11x', + 0x0d: '11x', + 0x0e: '10x', + 0x0f: '11x', + 0x10: '11x', + 0x11: '11x', + 0x12: '11n', + 0x13: '21s', + 0x14: '31i', + 0x15: '21h', + 0x16: '21s', + 0x17: '31i', + 0x18: '51l', + 0x19: '21h', + 0x1a: '21c', + 0x1b: '31c', + 0x1c: '21c', + 0x1d: '11x', + 0x1e: '11x', + 0x1f: '21c', + 0x20: '22c', + 0x21: '12x', + 0x22: '21c', + 0x23: '22c', + 0x24: '35c', + 0x25: '3rc', + 0x26: '31t', + 0x27: '11x', + 0x28: '10t', + 0x29: '20t', + 0x2a: '30t', + 0x2b: '31t', + 0x2c: '31t', + 0x2d: '23x', + 0x32: '22t', + 0x38: '21t', + 0x3e: '10x', + 0x44: '23x', + 0x52: '22c', + 0x60: '21c', + 0x6e: '35c', + 0x73: '10x', + 0x74: '3rc', + 0x79: '10x', + 0x7b: '12x', + 0x90: '23x', + 0xb0: '12x', + 0xd0: '22s', + 0xd8: '22b', + 0xe3: '10x', +}, 256) + +# parsing funcs +def p00op(w): return [] +def pBAop(w): return [(w >> 8) & 0xF, w >> 12] +def pAAop(w): return [w >> 8] +def p00opAAAA(w, w2): return [w2] +def pAAopBBBB(w, w2): return [w >> 8, w2] +def pAAopCCBB(w, w2): return [w >> 8, w2 & 0xFF, w2 >> 8] +def pBAopCCCC(w, w2): return [(w >> 8) & 0xF, w >> 12, w2] +def p00opAAAAAAAA(w, w2, w3): return [w2 ^ (w3 << 16)] +def p00opAAAABBBB(w, w2, w3): return [w2, w3] +def pAAopBBBBBBBB(w, w2, w3): return [w >> 8, w2 ^ (w3 << 16)] + +def pAGopBBBBFEDC(w, w2, w3): + a = w >> 12 + c, d, e, f = (w3) & 0xF, (w3 >> 4) & 0xF, (w3 >> 8) & 0xF, (w3 >> 12) & 0xF + g = (w >> 8) & 0xF + return [w2, [c, d, e, f, g][:a]] + +def pAAopBBBBCCCC(w, w2, w3): + a = w >> 8 + return [w2, range(w3, w3+a)] + +def pAAopBBBBBBBBBBBBBBBB(w, w2, w3, w4, w5): + b = w2 ^ (w3 << 16) ^ (w4 << 32) ^ (w5 << 48) + return [w >> 8, b] + +_FUNC = { + '10x': p00op, + '12x': pBAop, + '11n': pBAop, + '11x': pAAop, + '10t': pAAop, + '20t': p00opAAAA, + '22x': pAAopBBBB, + '21t': pAAopBBBB, + '21s': pAAopBBBB, + '21h': pAAopBBBB, + '21c': pAAopBBBB, + '23x': pAAopCCBB, + '22b': pAAopCCBB, + '22t': pBAopCCCC, + '22s': pBAopCCCC, + '22c': pBAopCCCC, + '30t': p00opAAAAAAAA, + '32x': p00opAAAABBBB, + '31i': pAAopBBBBBBBB, + '31t': pAAopBBBBBBBB, + '31c': pAAopBBBBBBBB, + '35c': pAGopBBBBFEDC, + '3rc': pAAopBBBBCCCC, + '51l': pAAopBBBBBBBBBBBBBBBB, +} + +def sign(x, bits): + if x >= (1 << (bits-1)): + x -= 1 << bits + return x + +def decode(shorts, pos, opcode): + fmt = INSTRUCTION_FORMAT[opcode] + size = int(fmt[0]) + results = _FUNC[fmt](*shorts[pos:pos+size]) + # Check if we need to sign extend + if fmt[2] == 'n': + results[-1] = sign(results[-1], 4) + elif fmt[2] == 'b' or (fmt[2] == 't' and size == 1): + results[-1] = sign(results[-1], 8) + elif fmt[2] == 's' or (fmt[2] == 't' and size == 2): + results[-1] = sign(results[-1], 16) + elif fmt[2] == 't' and size == 3: + results[-1] = sign(results[-1], 32) + + # Hats depend on actual size expected, so we rely on opcode as a hack + if fmt[2] == 'h': + assert opcode == 0x15 or opcode == 0x19 + results[-1] = results[-1] << (16 if opcode == 0x15 else 48) + + # Convert code offsets to actual code position + if fmt[2] == 't': + results[-1] += pos + return pos + size, results diff --git a/src/main/resources/enjarify-master/enjarify/flags.py b/src/main/resources/enjarify-master/enjarify/flags.py new file mode 100644 index 00000000..6785e2e0 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/flags.py @@ -0,0 +1,40 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +ACC_PUBLIC = 0x1 +ACC_PRIVATE = 0x2 +ACC_PROTECTED = 0x4 +ACC_STATIC = 0x8 +ACC_FINAL = 0x10 +ACC_SYNCHRONIZED = 0x20 +ACC_VOLATILE = 0x40 +ACC_BRIDGE = 0x40 +ACC_TRANSIENT = 0x80 +ACC_VARARGS = 0x80 +ACC_NATIVE = 0x100 +ACC_INTERFACE = 0x200 +ACC_ABSTRACT = 0x400 +ACC_STRICT = 0x800 +ACC_SYNTHETIC = 0x1000 +ACC_ANNOTATION = 0x2000 +ACC_ENUM = 0x4000 +ACC_CONSTRUCTOR = 0x10000 +ACC_DECLARED_SYNCHRONIZED = 0x20000 + +# Might as well include this for completeness even though modern JVMs ignore it +ACC_SUPER = 0x20 + +CLASS_FLAGS = ACC_PUBLIC | ACC_FINAL | ACC_SUPER | ACC_INTERFACE | ACC_ABSTRACT | ACC_SYNTHETIC | ACC_ANNOTATION | ACC_ENUM +FIELD_FLAGS = ACC_PUBLIC | ACC_PRIVATE | ACC_PROTECTED | ACC_STATIC | ACC_FINAL | ACC_VOLATILE | ACC_TRANSIENT | ACC_SYNTHETIC | ACC_ENUM +METHOD_FLAGS = ACC_PUBLIC | ACC_PRIVATE | ACC_PROTECTED | ACC_STATIC | ACC_FINAL | ACC_SYNCHRONIZED | ACC_BRIDGE | ACC_VARARGS | ACC_NATIVE | ACC_ABSTRACT | ACC_STRICT | ACC_SYNTHETIC diff --git a/src/main/resources/enjarify-master/enjarify/jvm/__init__.py b/src/main/resources/enjarify-master/enjarify/jvm/__init__.py new file mode 100644 index 00000000..e7522b2c --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/src/main/resources/enjarify-master/enjarify/jvm/arraytypes.py b/src/main/resources/enjarify-master/enjarify/jvm/arraytypes.py new file mode 100644 index 00000000..9a588a20 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/arraytypes.py @@ -0,0 +1,55 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from . import scalartypes as scalars + +# Array type inference - +# For object arrays, we don't actually care which type of object it is, so we just +# use a single value for them (INVALID) and assume all such values are an object +# array of some type. For primative arrays, we just use the entire array descriptor +# e.g. b'[[[C', except that bool arrays are treated as byte arrays. +# For null we use a special marker object + +# These strings can't be valid descriptors so there's no conflict +INVALID = b'INVALID' +NULL = b'NULL' + +def merge(t1, t2): + if t1 is NULL: + return t2 + if t2 is NULL: + return t1 + return t1 if (t1 == t2) else INVALID + +# intersect types +def narrow(t1, t2): + if t1 is INVALID: + return t2 + if t2 is INVALID: + return t1 + return t1 if (t1 == t2) else NULL + +def eletPair(t): + assert t is not NULL + if t is INVALID: + return scalars.OBJ, t + + assert t.startswith(b'[') + t = t[1:] + return scalars.fromDesc(t), t + +def fromDesc(desc): + if not desc.startswith(b'[') or desc.endswith(b';'): + return INVALID + return desc diff --git a/src/main/resources/enjarify-master/enjarify/jvm/constantpool.py b/src/main/resources/enjarify-master/enjarify/jvm/constantpool.py new file mode 100644 index 00000000..b5dbf62b --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/constantpool.py @@ -0,0 +1,189 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import struct + +from . import error + +CONSTANT_Class = 7 +CONSTANT_Fieldref = 9 +CONSTANT_Methodref = 10 +CONSTANT_InterfaceMethodref = 11 +CONSTANT_String = 8 +CONSTANT_Integer = 3 +CONSTANT_Float = 4 +CONSTANT_Long = 5 +CONSTANT_Double = 6 +CONSTANT_NameAndType = 12 +CONSTANT_Utf8 = 1 +# CONSTANT_MethodHandle = 15 +# CONSTANT_MethodType = 16 +# CONSTANT_InvokeDynamic = 18 +MAX_CONST = CONSTANT_NameAndType + +def _width(tag): + return 2 if tag in (CONSTANT_Long, CONSTANT_Double) else 1 + +class ConstantPoolBase: + def __init__(self): + # lookup dicts for deduplicating constants + self.lookup = [{} for _ in range(MAX_CONST + 1)] + + def _get(self, tag, args): + d = self.lookup[tag] + try: + return d[args] + except KeyError: + low = tag in (CONSTANT_Integer, CONSTANT_Float, CONSTANT_String) + d[args] = index = self._getInd(low, _width(tag)) + + assert self.vals[index] is None + self.vals[index] = tag, args + return d[args] + + def insertDirectly(self, pair, low): + tag, x = pair + d = self.lookup[tag] + d[x] = index = self._getInd(low, _width(tag)) + self.vals[index] = pair + + def tryGet(self, pair): + tag, x = pair + d = self.lookup[tag] + try: + return d[x] + except KeyError: + pass + width = _width(tag) + if width > self.space(): + return None + d[x] = index = self._getInd(True, width) + self.vals[index] = pair + return index + + def utf8(self, s): + assert isinstance(s, bytes) + return self._get(CONSTANT_Utf8, s) + + def class_(self, s): return self._get(CONSTANT_Class, self.utf8(s)) + def string(self, s): return self._get(CONSTANT_String, self.utf8(s)) + + def nat(self, name, desc): + return self._get(CONSTANT_NameAndType, (self.utf8(name), self.utf8(desc))) + + def _triple(self, tag, trip): + return self._get(tag, (self.class_(trip[0]), self.nat(trip[1], trip[2]))) + + def field(self, trip): return self._triple(CONSTANT_Fieldref, trip) + def method(self, trip): return self._triple(CONSTANT_Methodref, trip) + def imethod(self, trip): return self._triple(CONSTANT_InterfaceMethodref, trip) + + def int(self, x): return self._get(CONSTANT_Integer, x) + def float(self, x): return self._get(CONSTANT_Float, x) + def long(self, x): return self._get(CONSTANT_Long, x) + def double(self, x): return self._get(CONSTANT_Double, x) + + def _writeEntry(self, stream, item): + if item is None: + return + tag, val = item + stream.u8(tag) + + if tag == CONSTANT_Utf8: + stream.u16(len(val)) + stream.write(val) + elif tag in (CONSTANT_Integer, CONSTANT_Float): + stream.u32(val) + elif tag in (CONSTANT_Long, CONSTANT_Double): + stream.u64(val) + elif tag in (CONSTANT_Class, CONSTANT_String): + stream.u16(val) + else: + stream.u16(val[0]) + stream.u16(val[1]) + +# A simple constant pool that just allocates slots in increasing order. +class SimpleConstantPool(ConstantPoolBase): + def __init__(self): + super().__init__() + self.vals = [None] + + def space(self): return 65535 - len(self.vals) + def lowspace(self): return 256 - len(self.vals) + + def _getInd(self, low, width): + if self.space() < width: + raise error.ClassfileLimitExceeded() + temp = len(self.vals) + self.vals += [None]*width + return temp + + def write(self, stream): + stream.u16(len(self.vals)) + for item in self.vals: + self._writeEntry(stream, item) + +# Constant pool slots 1-255 are special because they can be referred to by the +# two byte ldc instruction (as opposed to 3 byte ldc_w/ldc2_w). Therefore, it is +# desireable to allocate constants which could use ldc in the first 255 slots, +# while not wasting these valuable low slots with pool entries that can't use +# ldc (utf8s, longs, etc.) +# One possible approach is to allocate the ldc entries starting at 1 and the +# others starting at 256, (possibly leaving a gap if there are less than 255 of +# the former). However, this is not ideal because the empty slots are not +# continguous. This means that you could end up in the sitatuation where there +# are exactly two free slots and you wish to add a long/double entry but the +# free slots are not continguous. +# To solve this, we take a different approach - always create the pool as the +# largest possible size (65534 entries) and allocate the non-ldc constants +# starting from the highest index and counting down. This ensures that the free +# slots are always contiguous. Since the classfile representation doesn't +# actually allow gaps like that, the empty spaces if any are filled in with +# dummy entries at the end. +# For simplicity, we always allocate ints, floats, and strings in the low entries +# and everything else in the high entries, regardless of whether they are actaully +# referenced by a ldc or not. (see ConstantPoolBase._get) + +# Fill in unused space with shortest possible item (Utf8 ''), preencoded for efficiency +PLACEHOLDER_ENTRY = struct.pack('>BH', CONSTANT_Utf8, 0) +class SplitConstantPool(ConstantPoolBase): + def __init__(self): + super().__init__() + self.vals = [None]*65535 + self.bot = 1 + self.top = len(self.vals) + + def space(self): return self.top - self.bot + def lowspace(self): return 256 - self.bot + + def _getInd(self, low, width): + if self.space() < width: + raise error.ClassfileLimitExceeded() + if low: + self.bot += width + return self.bot - width + self.top -= width + return self.top + + def write(self, stream): + stream.u16(len(self.vals)) + + assert self.bot <= self.top + for item in self.vals[:self.bot]: + self._writeEntry(stream, item) + + stream.write(PLACEHOLDER_ENTRY * self.space()) + + for item in self.vals[self.top:]: + self._writeEntry(stream, item) diff --git a/src/main/resources/enjarify-master/enjarify/jvm/constants/__init__.py b/src/main/resources/enjarify-master/enjarify/jvm/constants/__init__.py new file mode 100644 index 00000000..e7522b2c --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/constants/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/src/main/resources/enjarify-master/enjarify/jvm/constants/calc.py b/src/main/resources/enjarify-master/enjarify/jvm/constants/calc.py new file mode 100644 index 00000000..e13c6dd6 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/constants/calc.py @@ -0,0 +1,191 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from ...util import s16, s32, s64 +from .. import scalartypes as scalars +from ..jvmops import * + +from . import lookup +from .genlookup import FLOAT_SIGN, FLOAT_INF, FLOAT_NINF, FLOAT_NAN, DOUBLE_SIGN, DOUBLE_INF, DOUBLE_NINF, DOUBLE_NAN + +# Calculate a sequence of bytecode instructions to generate the given constant +# to be used in the rare case that the constant pool is full. + +# NaN has multiple representations, so normalize Floats to a single NaN representation +def normalizeFloat(x): + x %= 1<<32 + if x | FLOAT_SIGN > FLOAT_NINF: + return FLOAT_NAN + return x + +def normalizeDouble(x): + x %= 1<<64 + if x | DOUBLE_SIGN > DOUBLE_NINF: + return DOUBLE_NAN + return x + +def _calcInt(x): + assert x == s32(x) + if x in lookup.INTS: + return lookup.INTS[x] + + # max required - 10 bytes + # (high << 16) ^ low + low = s16(x) + high = (x ^ low) >> 16 + assert high + if not low: + return _calcInt(high) + _calcInt(16) + bytes([ISHL]) + return _calcInt(high) + _calcInt(16) + bytes([ISHL]) + _calcInt(low) + bytes([IXOR]) + +def _calcLong(x): + assert x == s64(x) + if x in lookup.LONGS: + return lookup.LONGS[x] + + # max required - 26 bytes + # (high << 32) ^ low + low = s32(x) + high = (x ^ low) >> 32 + if not high: + return _calcInt(low) + bytes([I2L]) + + result = _calcInt(high) + bytes([I2L]) + _calcInt(32) + bytes([LSHL]) + if low: + result += _calcInt(low) + bytes([I2L, LXOR]) + return result + +def _calcFloat(x): + assert x == normalizeFloat(x) + if x in lookup.FLOATS: + return lookup.FLOATS[x] + + # max required - 27 bytes + exponent = ((x >> 23) & 0xFF) - 127 + mantissa = x % (1<<23) + # check for denormals! + if exponent == -127: + exponent += 1 + else: + mantissa += 1<<23 + exponent -= 23 + + if x & FLOAT_SIGN: + mantissa = -mantissa + + ex_combine_op = FDIV if exponent < 0 else FMUL + exponent = abs(exponent) + exponent_parts = bytearray() + while exponent >= 63: # max 2 iterations since -149 <= exp <= 104 + exponent_parts.extend([LCONST_1, ICONST_M1, LSHL, L2F, ex_combine_op]) + mantissa = -mantissa + exponent -= 63 + + if exponent > 0: + exponent_parts.append(LCONST_1) + exponent_parts.extend(_calcInt(exponent)) + exponent_parts.extend([LSHL, L2F, ex_combine_op]) + return _calcInt(mantissa) + bytes([I2F]) + exponent_parts + +def _calcDouble(x): + assert x == normalizeDouble(x) + if x in lookup.DOUBLES: + return lookup.DOUBLES[x] + + # max required - 55 bytes + exponent = ((x >> 52) & 0x7FF) - 1023 + mantissa = x % (1<<52) + # check for denormals! + if exponent == -1023: + exponent += 1 + else: + mantissa += 1<<52 + exponent -= 52 + + if x & DOUBLE_SIGN: + mantissa = -mantissa + + abs_exponent = abs(exponent) + exponent_parts = bytearray() + + part63 = abs_exponent // 63 + if part63: #create *63 part of exponent by repeated squaring + # use 2^-x instead of calculating 2^x and dividing to avoid overflow in + # case we need 2^-1071 + if exponent < 0: # -2^-63 + exponent_parts.extend([DCONST_1, LCONST_1, ICONST_M1, LSHL, L2D, DDIV]) + else: # -2^63 + exponent_parts.extend([LCONST_1, ICONST_M1, LSHL, L2D]) + # adjust sign of mantissa for odd powers since we're actually using -2^63 rather than positive + if part63 & 1: + mantissa = -mantissa + + last_needed = part63 & 1 + stack = [1] # Not actually required to compute the results - it's just used for a sanity check + for bi in range(1, part63.bit_length()): + exponent_parts.append(DUP2) + stack.append(stack[-1]) + if last_needed: + exponent_parts.append(DUP2) + stack.append(stack[-1]) + exponent_parts.append(DMUL) + stack.append(stack.pop() + stack.pop()) + last_needed = part63 & (1< sipush 128 +# -65535 -> iconst_m1 i2c ineg +# 2147483647 -> iconst_m1 iconst_m1 iushr +# 1L -> lconst_1 +# 127L -> bipush 127 i2l +# 42.0f -> bipush 42 i2f +# -Inf -> dconst_1 dneg dconst_0 ddiv +# +# Lookup table keys are s32/s64 for ints/longs and u32/u64 for floats/doubles +# There are multiple NaN representations, so we normalize NaNs to the +# representation of all 1s (e.g. float NaN = 0xFFFFFFFF) + +def u32(x): return x % (1<<32) +def u64(x): return x % (1<<64) + +FLOAT_SIGN = 1<<31 +FLOAT_NAN = u32(-1) +FLOAT_INF = 0xFF << 23 +FLOAT_NINF = FLOAT_INF ^ FLOAT_SIGN +def i2f(x): + if x == 0: + return 0 + if x < 0: + return i2f(-x) ^ FLOAT_SIGN + shift = 24 - x.bit_length() + # Don't bother implementing rounding since we'll only convert small ints + # that can be exactly represented anyway + assert shift >= 0 + mantissa = x << shift + exponent = shift + 127 + return (exponent << 23) | mantissa + +DOUBLE_SIGN = 1<<63 +DOUBLE_NAN = u64(-1) +DOUBLE_INF = 0x7FF << 52 +DOUBLE_NINF = DOUBLE_INF ^ DOUBLE_SIGN +def i2d(x): + if x == 0: + return 0 + if x < 0: + return i2d(-x) ^ DOUBLE_SIGN + shift = 53 - x.bit_length() + assert shift >= 0 + mantissa = x << shift + exponent = shift + 1023 + return (exponent << 52) | mantissa + +# add if value is shorter then current best +def add(d, k, v): + if k not in d or len(v) < len(d[k]): + d[k] = v + +if __name__ == "__main__": + # int constants + all_ints = {} + + # 1 byte ints + for i in range(-1, 6): + add(all_ints, i, bytes([ICONST_0 + i])) + # Sort for determinism. Otherwise -0x80000000 could be either + # 1 << -1 or -1 << -1, for example + int_1s = sorted({k for k,v in all_ints.items() if len(v) == 1}) + + # 2 byte ints + for i in range(-128, 128): + add(all_ints, i, struct.pack('>Bb', BIPUSH, i)) + for i in int_1s: + add(all_ints, i % 65536, all_ints[i] + bytes([I2C])) + int_2s = sorted({k for k,v in all_ints.items() if len(v) == 2}) + + # 3 byte ints + for i in range(-32768, 32768): + add(all_ints, i, struct.pack('>Bh', SIPUSH, i)) + for i in int_2s: + add(all_ints, i % 65536, all_ints[i] + bytes([I2C])) + add(all_ints, s32(-i), all_ints[i] + bytes([INEG])) + for x, y in itertools.product(int_1s, int_1s): + add(all_ints, s32(x << (y % 32)), all_ints[x] + all_ints[y] + bytes([ISHL])) + add(all_ints, s32(x >> (y % 32)), all_ints[x] + all_ints[y] + bytes([ISHR])) + add(all_ints, s32(u32(x) >> (y % 32)), all_ints[x] + all_ints[y] + bytes([IUSHR])) + + # long constants + all_longs = {} + for i in range(0, 2): + add(all_longs, i, bytes([LCONST_0 + i])) + + for i in int_1s + int_2s: + add(all_longs, i, all_ints[i] + bytes([I2L])) + + # float constants + all_floats = {} + for i in range(0, 2): + add(all_floats, i2f(i), bytes([FCONST_0 + i])) + + for i in int_1s + int_2s: + add(all_floats, i2f(i), all_ints[i] + bytes([I2F])) + + # hardcode unusual float values for simplicity + add(all_floats, FLOAT_SIGN, bytes([FCONST_0, FNEG])) # -0.0 + add(all_floats, FLOAT_NAN, bytes([FCONST_0, FCONST_0, FDIV])) # NaN + add(all_floats, FLOAT_INF, bytes([FCONST_1, FCONST_0, FDIV])) # Inf + add(all_floats, FLOAT_NINF, bytes([FCONST_1, FNEG, FCONST_0, FDIV])) # -Inf + + # double constants + all_doubles = {} + for i in range(0, 2): + add(all_doubles, i2d(i), bytes([DCONST_0 + i])) + + for i in int_1s + int_2s: + add(all_doubles, i2d(i), all_ints[i] + bytes([I2D])) + + add(all_doubles, DOUBLE_SIGN, bytes([DCONST_0, DNEG])) # -0.0 + add(all_doubles, DOUBLE_NAN, bytes([DCONST_0, DCONST_0, DDIV])) # NaN + add(all_doubles, DOUBLE_INF, bytes([DCONST_1, DCONST_0, DDIV])) # Inf + add(all_doubles, DOUBLE_NINF, bytes([DCONST_1, DNEG, DCONST_0, DDIV])) # -Inf + + print(''' +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Autogenerated by genlookup.py - do not edit''') + + for name, d in zip('INTS LONGS FLOATS DOUBLES'.split(), [all_ints, all_longs, all_floats, all_doubles]): + print(name + ' = {') + for k, v in sorted(d.items()): + print(' {}: {},'.format(hex(k), v)) + print('}') \ No newline at end of file diff --git a/src/main/resources/enjarify-master/enjarify/jvm/constants/lookup.py b/src/main/resources/enjarify-master/enjarify/jvm/constants/lookup.py new file mode 100644 index 00000000..c39b9992 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/constants/lookup.py @@ -0,0 +1,66347 @@ + +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Autogenerated by genlookup.py - do not edit +INTS = { + -0x80000000: b'\x02\x02x', + -0xffff: b'\x02\x92t', + -0x8000: b'\x11\x80\x00', + -0x7fff: b'\x11\x80\x01', + -0x7ffe: b'\x11\x80\x02', + -0x7ffd: b'\x11\x80\x03', + -0x7ffc: b'\x11\x80\x04', + -0x7ffb: b'\x11\x80\x05', + -0x7ffa: b'\x11\x80\x06', + -0x7ff9: b'\x11\x80\x07', + -0x7ff8: b'\x11\x80\x08', + -0x7ff7: b'\x11\x80\t', + -0x7ff6: b'\x11\x80\n', + -0x7ff5: b'\x11\x80\x0b', + -0x7ff4: b'\x11\x80\x0c', + -0x7ff3: b'\x11\x80\r', + -0x7ff2: b'\x11\x80\x0e', + -0x7ff1: b'\x11\x80\x0f', + -0x7ff0: b'\x11\x80\x10', + -0x7fef: b'\x11\x80\x11', + -0x7fee: b'\x11\x80\x12', + -0x7fed: b'\x11\x80\x13', + -0x7fec: b'\x11\x80\x14', + -0x7feb: b'\x11\x80\x15', + -0x7fea: b'\x11\x80\x16', + -0x7fe9: b'\x11\x80\x17', + -0x7fe8: b'\x11\x80\x18', + -0x7fe7: b'\x11\x80\x19', + -0x7fe6: b'\x11\x80\x1a', + -0x7fe5: b'\x11\x80\x1b', + -0x7fe4: b'\x11\x80\x1c', + -0x7fe3: b'\x11\x80\x1d', + -0x7fe2: b'\x11\x80\x1e', + -0x7fe1: b'\x11\x80\x1f', + -0x7fe0: b'\x11\x80 ', + -0x7fdf: b'\x11\x80!', + -0x7fde: b'\x11\x80"', + -0x7fdd: b'\x11\x80#', + -0x7fdc: b'\x11\x80$', + -0x7fdb: b'\x11\x80%', + -0x7fda: b'\x11\x80&', + -0x7fd9: b"\x11\x80'", + -0x7fd8: b'\x11\x80(', + -0x7fd7: b'\x11\x80)', + -0x7fd6: b'\x11\x80*', + -0x7fd5: b'\x11\x80+', + -0x7fd4: b'\x11\x80,', + -0x7fd3: b'\x11\x80-', + -0x7fd2: b'\x11\x80.', + -0x7fd1: b'\x11\x80/', + -0x7fd0: b'\x11\x800', + -0x7fcf: b'\x11\x801', + -0x7fce: b'\x11\x802', + -0x7fcd: b'\x11\x803', + -0x7fcc: b'\x11\x804', + -0x7fcb: b'\x11\x805', + -0x7fca: b'\x11\x806', + -0x7fc9: b'\x11\x807', + -0x7fc8: b'\x11\x808', + -0x7fc7: b'\x11\x809', + -0x7fc6: b'\x11\x80:', + -0x7fc5: b'\x11\x80;', + -0x7fc4: b'\x11\x80<', + -0x7fc3: b'\x11\x80=', + -0x7fc2: b'\x11\x80>', + -0x7fc1: b'\x11\x80?', + -0x7fc0: b'\x11\x80@', + -0x7fbf: b'\x11\x80A', + -0x7fbe: b'\x11\x80B', + -0x7fbd: b'\x11\x80C', + -0x7fbc: b'\x11\x80D', + -0x7fbb: b'\x11\x80E', + -0x7fba: b'\x11\x80F', + -0x7fb9: b'\x11\x80G', + -0x7fb8: b'\x11\x80H', + -0x7fb7: b'\x11\x80I', + -0x7fb6: b'\x11\x80J', + -0x7fb5: b'\x11\x80K', + -0x7fb4: b'\x11\x80L', + -0x7fb3: b'\x11\x80M', + -0x7fb2: b'\x11\x80N', + -0x7fb1: b'\x11\x80O', + -0x7fb0: b'\x11\x80P', + -0x7faf: b'\x11\x80Q', + -0x7fae: b'\x11\x80R', + -0x7fad: b'\x11\x80S', + -0x7fac: b'\x11\x80T', + -0x7fab: b'\x11\x80U', + -0x7faa: b'\x11\x80V', + -0x7fa9: b'\x11\x80W', + -0x7fa8: b'\x11\x80X', + -0x7fa7: b'\x11\x80Y', + -0x7fa6: b'\x11\x80Z', + -0x7fa5: b'\x11\x80[', + -0x7fa4: b'\x11\x80\\', + -0x7fa3: b'\x11\x80]', + -0x7fa2: b'\x11\x80^', + -0x7fa1: b'\x11\x80_', + -0x7fa0: b'\x11\x80`', + -0x7f9f: b'\x11\x80a', + -0x7f9e: b'\x11\x80b', + -0x7f9d: b'\x11\x80c', + -0x7f9c: b'\x11\x80d', + -0x7f9b: b'\x11\x80e', + -0x7f9a: b'\x11\x80f', + -0x7f99: b'\x11\x80g', + -0x7f98: b'\x11\x80h', + -0x7f97: b'\x11\x80i', + -0x7f96: b'\x11\x80j', + -0x7f95: b'\x11\x80k', + -0x7f94: b'\x11\x80l', + -0x7f93: b'\x11\x80m', + -0x7f92: b'\x11\x80n', + -0x7f91: b'\x11\x80o', + -0x7f90: b'\x11\x80p', + -0x7f8f: b'\x11\x80q', + -0x7f8e: b'\x11\x80r', + -0x7f8d: b'\x11\x80s', + -0x7f8c: b'\x11\x80t', + -0x7f8b: b'\x11\x80u', + -0x7f8a: b'\x11\x80v', + -0x7f89: b'\x11\x80w', + -0x7f88: b'\x11\x80x', + -0x7f87: b'\x11\x80y', + -0x7f86: b'\x11\x80z', + -0x7f85: b'\x11\x80{', + -0x7f84: b'\x11\x80|', + -0x7f83: b'\x11\x80}', + -0x7f82: b'\x11\x80~', + -0x7f81: b'\x11\x80\x7f', + -0x7f80: b'\x11\x80\x80', + -0x7f7f: b'\x11\x80\x81', + -0x7f7e: b'\x11\x80\x82', + -0x7f7d: b'\x11\x80\x83', + -0x7f7c: b'\x11\x80\x84', + -0x7f7b: b'\x11\x80\x85', + -0x7f7a: b'\x11\x80\x86', + -0x7f79: b'\x11\x80\x87', + -0x7f78: b'\x11\x80\x88', + -0x7f77: b'\x11\x80\x89', + -0x7f76: b'\x11\x80\x8a', + -0x7f75: b'\x11\x80\x8b', + -0x7f74: b'\x11\x80\x8c', + -0x7f73: b'\x11\x80\x8d', + -0x7f72: b'\x11\x80\x8e', + -0x7f71: b'\x11\x80\x8f', + -0x7f70: b'\x11\x80\x90', + -0x7f6f: b'\x11\x80\x91', + -0x7f6e: b'\x11\x80\x92', + -0x7f6d: b'\x11\x80\x93', + -0x7f6c: b'\x11\x80\x94', + -0x7f6b: b'\x11\x80\x95', + -0x7f6a: b'\x11\x80\x96', + -0x7f69: b'\x11\x80\x97', + -0x7f68: b'\x11\x80\x98', + -0x7f67: b'\x11\x80\x99', + -0x7f66: b'\x11\x80\x9a', + -0x7f65: b'\x11\x80\x9b', + -0x7f64: b'\x11\x80\x9c', + -0x7f63: b'\x11\x80\x9d', + -0x7f62: b'\x11\x80\x9e', + -0x7f61: b'\x11\x80\x9f', + -0x7f60: b'\x11\x80\xa0', + -0x7f5f: b'\x11\x80\xa1', + -0x7f5e: b'\x11\x80\xa2', + -0x7f5d: b'\x11\x80\xa3', + -0x7f5c: b'\x11\x80\xa4', + -0x7f5b: b'\x11\x80\xa5', + -0x7f5a: b'\x11\x80\xa6', + -0x7f59: b'\x11\x80\xa7', + -0x7f58: b'\x11\x80\xa8', + -0x7f57: b'\x11\x80\xa9', + -0x7f56: b'\x11\x80\xaa', + -0x7f55: b'\x11\x80\xab', + -0x7f54: b'\x11\x80\xac', + -0x7f53: b'\x11\x80\xad', + -0x7f52: b'\x11\x80\xae', + -0x7f51: b'\x11\x80\xaf', + -0x7f50: b'\x11\x80\xb0', + -0x7f4f: b'\x11\x80\xb1', + -0x7f4e: b'\x11\x80\xb2', + -0x7f4d: b'\x11\x80\xb3', + -0x7f4c: b'\x11\x80\xb4', + -0x7f4b: b'\x11\x80\xb5', + -0x7f4a: b'\x11\x80\xb6', + -0x7f49: b'\x11\x80\xb7', + -0x7f48: b'\x11\x80\xb8', + -0x7f47: b'\x11\x80\xb9', + -0x7f46: b'\x11\x80\xba', + -0x7f45: b'\x11\x80\xbb', + -0x7f44: b'\x11\x80\xbc', + -0x7f43: b'\x11\x80\xbd', + -0x7f42: b'\x11\x80\xbe', + -0x7f41: b'\x11\x80\xbf', + -0x7f40: b'\x11\x80\xc0', + -0x7f3f: b'\x11\x80\xc1', + -0x7f3e: b'\x11\x80\xc2', + -0x7f3d: b'\x11\x80\xc3', + -0x7f3c: b'\x11\x80\xc4', + -0x7f3b: b'\x11\x80\xc5', + -0x7f3a: b'\x11\x80\xc6', + -0x7f39: b'\x11\x80\xc7', + -0x7f38: b'\x11\x80\xc8', + -0x7f37: b'\x11\x80\xc9', + -0x7f36: b'\x11\x80\xca', + -0x7f35: b'\x11\x80\xcb', + -0x7f34: b'\x11\x80\xcc', + -0x7f33: b'\x11\x80\xcd', + -0x7f32: b'\x11\x80\xce', + -0x7f31: b'\x11\x80\xcf', + -0x7f30: b'\x11\x80\xd0', + -0x7f2f: b'\x11\x80\xd1', + -0x7f2e: b'\x11\x80\xd2', + -0x7f2d: b'\x11\x80\xd3', + -0x7f2c: b'\x11\x80\xd4', + -0x7f2b: b'\x11\x80\xd5', + -0x7f2a: b'\x11\x80\xd6', + -0x7f29: b'\x11\x80\xd7', + -0x7f28: b'\x11\x80\xd8', + -0x7f27: b'\x11\x80\xd9', + -0x7f26: b'\x11\x80\xda', + -0x7f25: b'\x11\x80\xdb', + -0x7f24: b'\x11\x80\xdc', + -0x7f23: b'\x11\x80\xdd', + -0x7f22: b'\x11\x80\xde', + -0x7f21: b'\x11\x80\xdf', + -0x7f20: b'\x11\x80\xe0', + -0x7f1f: b'\x11\x80\xe1', + -0x7f1e: b'\x11\x80\xe2', + -0x7f1d: b'\x11\x80\xe3', + -0x7f1c: b'\x11\x80\xe4', + -0x7f1b: b'\x11\x80\xe5', + -0x7f1a: b'\x11\x80\xe6', + -0x7f19: b'\x11\x80\xe7', + -0x7f18: b'\x11\x80\xe8', + -0x7f17: b'\x11\x80\xe9', + -0x7f16: b'\x11\x80\xea', + -0x7f15: b'\x11\x80\xeb', + -0x7f14: b'\x11\x80\xec', + -0x7f13: b'\x11\x80\xed', + -0x7f12: b'\x11\x80\xee', + -0x7f11: b'\x11\x80\xef', + -0x7f10: b'\x11\x80\xf0', + -0x7f0f: b'\x11\x80\xf1', + -0x7f0e: b'\x11\x80\xf2', + -0x7f0d: b'\x11\x80\xf3', + -0x7f0c: b'\x11\x80\xf4', + -0x7f0b: b'\x11\x80\xf5', + -0x7f0a: b'\x11\x80\xf6', + -0x7f09: b'\x11\x80\xf7', + -0x7f08: b'\x11\x80\xf8', + -0x7f07: b'\x11\x80\xf9', + -0x7f06: b'\x11\x80\xfa', + -0x7f05: b'\x11\x80\xfb', + -0x7f04: b'\x11\x80\xfc', + -0x7f03: b'\x11\x80\xfd', + -0x7f02: b'\x11\x80\xfe', + -0x7f01: b'\x11\x80\xff', + -0x7f00: b'\x11\x81\x00', + -0x7eff: b'\x11\x81\x01', + -0x7efe: b'\x11\x81\x02', + -0x7efd: b'\x11\x81\x03', + -0x7efc: b'\x11\x81\x04', + -0x7efb: b'\x11\x81\x05', + -0x7efa: b'\x11\x81\x06', + -0x7ef9: b'\x11\x81\x07', + -0x7ef8: b'\x11\x81\x08', + -0x7ef7: b'\x11\x81\t', + -0x7ef6: b'\x11\x81\n', + -0x7ef5: b'\x11\x81\x0b', + -0x7ef4: b'\x11\x81\x0c', + -0x7ef3: b'\x11\x81\r', + -0x7ef2: b'\x11\x81\x0e', + -0x7ef1: b'\x11\x81\x0f', + -0x7ef0: b'\x11\x81\x10', + -0x7eef: b'\x11\x81\x11', + -0x7eee: b'\x11\x81\x12', + -0x7eed: b'\x11\x81\x13', + -0x7eec: b'\x11\x81\x14', + -0x7eeb: b'\x11\x81\x15', + -0x7eea: b'\x11\x81\x16', + -0x7ee9: b'\x11\x81\x17', + -0x7ee8: b'\x11\x81\x18', + -0x7ee7: b'\x11\x81\x19', + -0x7ee6: b'\x11\x81\x1a', + -0x7ee5: b'\x11\x81\x1b', + -0x7ee4: b'\x11\x81\x1c', + -0x7ee3: b'\x11\x81\x1d', + -0x7ee2: b'\x11\x81\x1e', + -0x7ee1: b'\x11\x81\x1f', + -0x7ee0: b'\x11\x81 ', + -0x7edf: b'\x11\x81!', + -0x7ede: b'\x11\x81"', + -0x7edd: b'\x11\x81#', + -0x7edc: b'\x11\x81$', + -0x7edb: b'\x11\x81%', + -0x7eda: b'\x11\x81&', + -0x7ed9: b"\x11\x81'", + -0x7ed8: b'\x11\x81(', + -0x7ed7: b'\x11\x81)', + -0x7ed6: b'\x11\x81*', + -0x7ed5: b'\x11\x81+', + -0x7ed4: b'\x11\x81,', + -0x7ed3: b'\x11\x81-', + -0x7ed2: b'\x11\x81.', + -0x7ed1: b'\x11\x81/', + -0x7ed0: b'\x11\x810', + -0x7ecf: b'\x11\x811', + -0x7ece: b'\x11\x812', + -0x7ecd: b'\x11\x813', + -0x7ecc: b'\x11\x814', + -0x7ecb: b'\x11\x815', + -0x7eca: b'\x11\x816', + -0x7ec9: b'\x11\x817', + -0x7ec8: b'\x11\x818', + -0x7ec7: b'\x11\x819', + -0x7ec6: b'\x11\x81:', + -0x7ec5: b'\x11\x81;', + -0x7ec4: b'\x11\x81<', + -0x7ec3: b'\x11\x81=', + -0x7ec2: b'\x11\x81>', + -0x7ec1: b'\x11\x81?', + -0x7ec0: b'\x11\x81@', + -0x7ebf: b'\x11\x81A', + -0x7ebe: b'\x11\x81B', + -0x7ebd: b'\x11\x81C', + -0x7ebc: b'\x11\x81D', + -0x7ebb: b'\x11\x81E', + -0x7eba: b'\x11\x81F', + -0x7eb9: b'\x11\x81G', + -0x7eb8: b'\x11\x81H', + -0x7eb7: b'\x11\x81I', + -0x7eb6: b'\x11\x81J', + -0x7eb5: b'\x11\x81K', + -0x7eb4: b'\x11\x81L', + -0x7eb3: b'\x11\x81M', + -0x7eb2: b'\x11\x81N', + -0x7eb1: b'\x11\x81O', + -0x7eb0: b'\x11\x81P', + -0x7eaf: b'\x11\x81Q', + -0x7eae: b'\x11\x81R', + -0x7ead: b'\x11\x81S', + -0x7eac: b'\x11\x81T', + -0x7eab: b'\x11\x81U', + -0x7eaa: b'\x11\x81V', + -0x7ea9: b'\x11\x81W', + -0x7ea8: b'\x11\x81X', + -0x7ea7: b'\x11\x81Y', + -0x7ea6: b'\x11\x81Z', + -0x7ea5: b'\x11\x81[', + -0x7ea4: b'\x11\x81\\', + -0x7ea3: b'\x11\x81]', + -0x7ea2: b'\x11\x81^', + -0x7ea1: b'\x11\x81_', + -0x7ea0: b'\x11\x81`', + -0x7e9f: b'\x11\x81a', + -0x7e9e: b'\x11\x81b', + -0x7e9d: b'\x11\x81c', + -0x7e9c: b'\x11\x81d', + -0x7e9b: b'\x11\x81e', + -0x7e9a: b'\x11\x81f', + -0x7e99: b'\x11\x81g', + -0x7e98: b'\x11\x81h', + -0x7e97: b'\x11\x81i', + -0x7e96: b'\x11\x81j', + -0x7e95: b'\x11\x81k', + -0x7e94: b'\x11\x81l', + -0x7e93: b'\x11\x81m', + -0x7e92: b'\x11\x81n', + -0x7e91: b'\x11\x81o', + -0x7e90: b'\x11\x81p', + -0x7e8f: b'\x11\x81q', + -0x7e8e: b'\x11\x81r', + -0x7e8d: b'\x11\x81s', + -0x7e8c: b'\x11\x81t', + -0x7e8b: b'\x11\x81u', + -0x7e8a: b'\x11\x81v', + -0x7e89: b'\x11\x81w', + -0x7e88: b'\x11\x81x', + -0x7e87: b'\x11\x81y', + -0x7e86: b'\x11\x81z', + -0x7e85: b'\x11\x81{', + -0x7e84: b'\x11\x81|', + -0x7e83: b'\x11\x81}', + -0x7e82: b'\x11\x81~', + -0x7e81: b'\x11\x81\x7f', + -0x7e80: b'\x11\x81\x80', + -0x7e7f: b'\x11\x81\x81', + -0x7e7e: b'\x11\x81\x82', + -0x7e7d: b'\x11\x81\x83', + -0x7e7c: b'\x11\x81\x84', + -0x7e7b: b'\x11\x81\x85', + -0x7e7a: b'\x11\x81\x86', + -0x7e79: b'\x11\x81\x87', + -0x7e78: b'\x11\x81\x88', + -0x7e77: b'\x11\x81\x89', + -0x7e76: b'\x11\x81\x8a', + -0x7e75: b'\x11\x81\x8b', + -0x7e74: b'\x11\x81\x8c', + -0x7e73: b'\x11\x81\x8d', + -0x7e72: b'\x11\x81\x8e', + -0x7e71: b'\x11\x81\x8f', + -0x7e70: b'\x11\x81\x90', + -0x7e6f: b'\x11\x81\x91', + -0x7e6e: b'\x11\x81\x92', + -0x7e6d: b'\x11\x81\x93', + -0x7e6c: b'\x11\x81\x94', + -0x7e6b: b'\x11\x81\x95', + -0x7e6a: b'\x11\x81\x96', + -0x7e69: b'\x11\x81\x97', + -0x7e68: b'\x11\x81\x98', + -0x7e67: b'\x11\x81\x99', + -0x7e66: b'\x11\x81\x9a', + -0x7e65: b'\x11\x81\x9b', + -0x7e64: b'\x11\x81\x9c', + -0x7e63: b'\x11\x81\x9d', + -0x7e62: b'\x11\x81\x9e', + -0x7e61: b'\x11\x81\x9f', + -0x7e60: b'\x11\x81\xa0', + -0x7e5f: b'\x11\x81\xa1', + -0x7e5e: b'\x11\x81\xa2', + -0x7e5d: b'\x11\x81\xa3', + -0x7e5c: b'\x11\x81\xa4', + -0x7e5b: b'\x11\x81\xa5', + -0x7e5a: b'\x11\x81\xa6', + -0x7e59: b'\x11\x81\xa7', + -0x7e58: b'\x11\x81\xa8', + -0x7e57: b'\x11\x81\xa9', + -0x7e56: b'\x11\x81\xaa', + -0x7e55: b'\x11\x81\xab', + -0x7e54: b'\x11\x81\xac', + -0x7e53: b'\x11\x81\xad', + -0x7e52: b'\x11\x81\xae', + -0x7e51: b'\x11\x81\xaf', + -0x7e50: b'\x11\x81\xb0', + -0x7e4f: b'\x11\x81\xb1', + -0x7e4e: b'\x11\x81\xb2', + -0x7e4d: b'\x11\x81\xb3', + -0x7e4c: b'\x11\x81\xb4', + -0x7e4b: b'\x11\x81\xb5', + -0x7e4a: b'\x11\x81\xb6', + -0x7e49: b'\x11\x81\xb7', + -0x7e48: b'\x11\x81\xb8', + -0x7e47: b'\x11\x81\xb9', + -0x7e46: b'\x11\x81\xba', + -0x7e45: b'\x11\x81\xbb', + -0x7e44: b'\x11\x81\xbc', + -0x7e43: b'\x11\x81\xbd', + -0x7e42: b'\x11\x81\xbe', + -0x7e41: b'\x11\x81\xbf', + -0x7e40: b'\x11\x81\xc0', + -0x7e3f: b'\x11\x81\xc1', + -0x7e3e: b'\x11\x81\xc2', + -0x7e3d: b'\x11\x81\xc3', + -0x7e3c: b'\x11\x81\xc4', + -0x7e3b: b'\x11\x81\xc5', + -0x7e3a: b'\x11\x81\xc6', + -0x7e39: b'\x11\x81\xc7', + -0x7e38: b'\x11\x81\xc8', + -0x7e37: b'\x11\x81\xc9', + -0x7e36: b'\x11\x81\xca', + -0x7e35: b'\x11\x81\xcb', + -0x7e34: b'\x11\x81\xcc', + -0x7e33: b'\x11\x81\xcd', + -0x7e32: b'\x11\x81\xce', + -0x7e31: b'\x11\x81\xcf', + -0x7e30: b'\x11\x81\xd0', + -0x7e2f: b'\x11\x81\xd1', + -0x7e2e: b'\x11\x81\xd2', + -0x7e2d: b'\x11\x81\xd3', + -0x7e2c: b'\x11\x81\xd4', + -0x7e2b: b'\x11\x81\xd5', + -0x7e2a: b'\x11\x81\xd6', + -0x7e29: b'\x11\x81\xd7', + -0x7e28: b'\x11\x81\xd8', + -0x7e27: b'\x11\x81\xd9', + -0x7e26: b'\x11\x81\xda', + -0x7e25: b'\x11\x81\xdb', + -0x7e24: b'\x11\x81\xdc', + -0x7e23: b'\x11\x81\xdd', + -0x7e22: b'\x11\x81\xde', + -0x7e21: b'\x11\x81\xdf', + -0x7e20: b'\x11\x81\xe0', + -0x7e1f: b'\x11\x81\xe1', + -0x7e1e: b'\x11\x81\xe2', + -0x7e1d: b'\x11\x81\xe3', + -0x7e1c: b'\x11\x81\xe4', + -0x7e1b: b'\x11\x81\xe5', + -0x7e1a: b'\x11\x81\xe6', + -0x7e19: b'\x11\x81\xe7', + -0x7e18: b'\x11\x81\xe8', + -0x7e17: b'\x11\x81\xe9', + -0x7e16: b'\x11\x81\xea', + -0x7e15: b'\x11\x81\xeb', + -0x7e14: b'\x11\x81\xec', + -0x7e13: b'\x11\x81\xed', + -0x7e12: b'\x11\x81\xee', + -0x7e11: b'\x11\x81\xef', + -0x7e10: b'\x11\x81\xf0', + -0x7e0f: b'\x11\x81\xf1', + -0x7e0e: b'\x11\x81\xf2', + -0x7e0d: b'\x11\x81\xf3', + -0x7e0c: b'\x11\x81\xf4', + -0x7e0b: b'\x11\x81\xf5', + -0x7e0a: b'\x11\x81\xf6', + -0x7e09: b'\x11\x81\xf7', + -0x7e08: b'\x11\x81\xf8', + -0x7e07: b'\x11\x81\xf9', + -0x7e06: b'\x11\x81\xfa', + -0x7e05: b'\x11\x81\xfb', + -0x7e04: b'\x11\x81\xfc', + -0x7e03: b'\x11\x81\xfd', + -0x7e02: b'\x11\x81\xfe', + -0x7e01: b'\x11\x81\xff', + -0x7e00: b'\x11\x82\x00', + -0x7dff: b'\x11\x82\x01', + -0x7dfe: b'\x11\x82\x02', + -0x7dfd: b'\x11\x82\x03', + -0x7dfc: b'\x11\x82\x04', + -0x7dfb: b'\x11\x82\x05', + -0x7dfa: b'\x11\x82\x06', + -0x7df9: b'\x11\x82\x07', + -0x7df8: b'\x11\x82\x08', + -0x7df7: b'\x11\x82\t', + -0x7df6: b'\x11\x82\n', + -0x7df5: b'\x11\x82\x0b', + -0x7df4: b'\x11\x82\x0c', + -0x7df3: b'\x11\x82\r', + -0x7df2: b'\x11\x82\x0e', + -0x7df1: b'\x11\x82\x0f', + -0x7df0: b'\x11\x82\x10', + -0x7def: b'\x11\x82\x11', + -0x7dee: b'\x11\x82\x12', + -0x7ded: b'\x11\x82\x13', + -0x7dec: b'\x11\x82\x14', + -0x7deb: b'\x11\x82\x15', + -0x7dea: b'\x11\x82\x16', + -0x7de9: b'\x11\x82\x17', + -0x7de8: b'\x11\x82\x18', + -0x7de7: b'\x11\x82\x19', + -0x7de6: b'\x11\x82\x1a', + -0x7de5: b'\x11\x82\x1b', + -0x7de4: b'\x11\x82\x1c', + -0x7de3: b'\x11\x82\x1d', + -0x7de2: b'\x11\x82\x1e', + -0x7de1: b'\x11\x82\x1f', + -0x7de0: b'\x11\x82 ', + -0x7ddf: b'\x11\x82!', + -0x7dde: b'\x11\x82"', + -0x7ddd: b'\x11\x82#', + -0x7ddc: b'\x11\x82$', + -0x7ddb: b'\x11\x82%', + -0x7dda: b'\x11\x82&', + -0x7dd9: b"\x11\x82'", + -0x7dd8: b'\x11\x82(', + -0x7dd7: b'\x11\x82)', + -0x7dd6: b'\x11\x82*', + -0x7dd5: b'\x11\x82+', + -0x7dd4: b'\x11\x82,', + -0x7dd3: b'\x11\x82-', + -0x7dd2: b'\x11\x82.', + -0x7dd1: b'\x11\x82/', + -0x7dd0: b'\x11\x820', + -0x7dcf: b'\x11\x821', + -0x7dce: b'\x11\x822', + -0x7dcd: b'\x11\x823', + -0x7dcc: b'\x11\x824', + -0x7dcb: b'\x11\x825', + -0x7dca: b'\x11\x826', + -0x7dc9: b'\x11\x827', + -0x7dc8: b'\x11\x828', + -0x7dc7: b'\x11\x829', + -0x7dc6: b'\x11\x82:', + -0x7dc5: b'\x11\x82;', + -0x7dc4: b'\x11\x82<', + -0x7dc3: b'\x11\x82=', + -0x7dc2: b'\x11\x82>', + -0x7dc1: b'\x11\x82?', + -0x7dc0: b'\x11\x82@', + -0x7dbf: b'\x11\x82A', + -0x7dbe: b'\x11\x82B', + -0x7dbd: b'\x11\x82C', + -0x7dbc: b'\x11\x82D', + -0x7dbb: b'\x11\x82E', + -0x7dba: b'\x11\x82F', + -0x7db9: b'\x11\x82G', + -0x7db8: b'\x11\x82H', + -0x7db7: b'\x11\x82I', + -0x7db6: b'\x11\x82J', + -0x7db5: b'\x11\x82K', + -0x7db4: b'\x11\x82L', + -0x7db3: b'\x11\x82M', + -0x7db2: b'\x11\x82N', + -0x7db1: b'\x11\x82O', + -0x7db0: b'\x11\x82P', + -0x7daf: b'\x11\x82Q', + -0x7dae: b'\x11\x82R', + -0x7dad: b'\x11\x82S', + -0x7dac: b'\x11\x82T', + -0x7dab: b'\x11\x82U', + -0x7daa: b'\x11\x82V', + -0x7da9: b'\x11\x82W', + -0x7da8: b'\x11\x82X', + -0x7da7: b'\x11\x82Y', + -0x7da6: b'\x11\x82Z', + -0x7da5: b'\x11\x82[', + -0x7da4: b'\x11\x82\\', + -0x7da3: b'\x11\x82]', + -0x7da2: b'\x11\x82^', + -0x7da1: b'\x11\x82_', + -0x7da0: b'\x11\x82`', + -0x7d9f: b'\x11\x82a', + -0x7d9e: b'\x11\x82b', + -0x7d9d: b'\x11\x82c', + -0x7d9c: b'\x11\x82d', + -0x7d9b: b'\x11\x82e', + -0x7d9a: b'\x11\x82f', + -0x7d99: b'\x11\x82g', + -0x7d98: b'\x11\x82h', + -0x7d97: b'\x11\x82i', + -0x7d96: b'\x11\x82j', + -0x7d95: b'\x11\x82k', + -0x7d94: b'\x11\x82l', + -0x7d93: b'\x11\x82m', + -0x7d92: b'\x11\x82n', + -0x7d91: b'\x11\x82o', + -0x7d90: b'\x11\x82p', + -0x7d8f: b'\x11\x82q', + -0x7d8e: b'\x11\x82r', + -0x7d8d: b'\x11\x82s', + -0x7d8c: b'\x11\x82t', + -0x7d8b: b'\x11\x82u', + -0x7d8a: b'\x11\x82v', + -0x7d89: b'\x11\x82w', + -0x7d88: b'\x11\x82x', + -0x7d87: b'\x11\x82y', + -0x7d86: b'\x11\x82z', + -0x7d85: b'\x11\x82{', + -0x7d84: b'\x11\x82|', + -0x7d83: b'\x11\x82}', + -0x7d82: b'\x11\x82~', + -0x7d81: b'\x11\x82\x7f', + -0x7d80: b'\x11\x82\x80', + -0x7d7f: b'\x11\x82\x81', + -0x7d7e: b'\x11\x82\x82', + -0x7d7d: b'\x11\x82\x83', + -0x7d7c: b'\x11\x82\x84', + -0x7d7b: b'\x11\x82\x85', + -0x7d7a: b'\x11\x82\x86', + -0x7d79: b'\x11\x82\x87', + -0x7d78: b'\x11\x82\x88', + -0x7d77: b'\x11\x82\x89', + -0x7d76: b'\x11\x82\x8a', + -0x7d75: b'\x11\x82\x8b', + -0x7d74: b'\x11\x82\x8c', + -0x7d73: b'\x11\x82\x8d', + -0x7d72: b'\x11\x82\x8e', + -0x7d71: b'\x11\x82\x8f', + -0x7d70: b'\x11\x82\x90', + -0x7d6f: b'\x11\x82\x91', + -0x7d6e: b'\x11\x82\x92', + -0x7d6d: b'\x11\x82\x93', + -0x7d6c: b'\x11\x82\x94', + -0x7d6b: b'\x11\x82\x95', + -0x7d6a: b'\x11\x82\x96', + -0x7d69: b'\x11\x82\x97', + -0x7d68: b'\x11\x82\x98', + -0x7d67: b'\x11\x82\x99', + -0x7d66: b'\x11\x82\x9a', + -0x7d65: b'\x11\x82\x9b', + -0x7d64: b'\x11\x82\x9c', + -0x7d63: b'\x11\x82\x9d', + -0x7d62: b'\x11\x82\x9e', + -0x7d61: b'\x11\x82\x9f', + -0x7d60: b'\x11\x82\xa0', + -0x7d5f: b'\x11\x82\xa1', + -0x7d5e: b'\x11\x82\xa2', + -0x7d5d: b'\x11\x82\xa3', + -0x7d5c: b'\x11\x82\xa4', + -0x7d5b: b'\x11\x82\xa5', + -0x7d5a: b'\x11\x82\xa6', + -0x7d59: b'\x11\x82\xa7', + -0x7d58: b'\x11\x82\xa8', + -0x7d57: b'\x11\x82\xa9', + -0x7d56: b'\x11\x82\xaa', + -0x7d55: b'\x11\x82\xab', + -0x7d54: b'\x11\x82\xac', + -0x7d53: b'\x11\x82\xad', + -0x7d52: b'\x11\x82\xae', + -0x7d51: b'\x11\x82\xaf', + -0x7d50: b'\x11\x82\xb0', + -0x7d4f: b'\x11\x82\xb1', + -0x7d4e: b'\x11\x82\xb2', + -0x7d4d: b'\x11\x82\xb3', + -0x7d4c: b'\x11\x82\xb4', + -0x7d4b: b'\x11\x82\xb5', + -0x7d4a: b'\x11\x82\xb6', + -0x7d49: b'\x11\x82\xb7', + -0x7d48: b'\x11\x82\xb8', + -0x7d47: b'\x11\x82\xb9', + -0x7d46: b'\x11\x82\xba', + -0x7d45: b'\x11\x82\xbb', + -0x7d44: b'\x11\x82\xbc', + -0x7d43: b'\x11\x82\xbd', + -0x7d42: b'\x11\x82\xbe', + -0x7d41: b'\x11\x82\xbf', + -0x7d40: b'\x11\x82\xc0', + -0x7d3f: b'\x11\x82\xc1', + -0x7d3e: b'\x11\x82\xc2', + -0x7d3d: b'\x11\x82\xc3', + -0x7d3c: b'\x11\x82\xc4', + -0x7d3b: b'\x11\x82\xc5', + -0x7d3a: b'\x11\x82\xc6', + -0x7d39: b'\x11\x82\xc7', + -0x7d38: b'\x11\x82\xc8', + -0x7d37: b'\x11\x82\xc9', + -0x7d36: b'\x11\x82\xca', + -0x7d35: b'\x11\x82\xcb', + -0x7d34: b'\x11\x82\xcc', + -0x7d33: b'\x11\x82\xcd', + -0x7d32: b'\x11\x82\xce', + -0x7d31: b'\x11\x82\xcf', + -0x7d30: b'\x11\x82\xd0', + -0x7d2f: b'\x11\x82\xd1', + -0x7d2e: b'\x11\x82\xd2', + -0x7d2d: b'\x11\x82\xd3', + -0x7d2c: b'\x11\x82\xd4', + -0x7d2b: b'\x11\x82\xd5', + -0x7d2a: b'\x11\x82\xd6', + -0x7d29: b'\x11\x82\xd7', + -0x7d28: b'\x11\x82\xd8', + -0x7d27: b'\x11\x82\xd9', + -0x7d26: b'\x11\x82\xda', + -0x7d25: b'\x11\x82\xdb', + -0x7d24: b'\x11\x82\xdc', + -0x7d23: b'\x11\x82\xdd', + -0x7d22: b'\x11\x82\xde', + -0x7d21: b'\x11\x82\xdf', + -0x7d20: b'\x11\x82\xe0', + -0x7d1f: b'\x11\x82\xe1', + -0x7d1e: b'\x11\x82\xe2', + -0x7d1d: b'\x11\x82\xe3', + -0x7d1c: b'\x11\x82\xe4', + -0x7d1b: b'\x11\x82\xe5', + -0x7d1a: b'\x11\x82\xe6', + -0x7d19: b'\x11\x82\xe7', + -0x7d18: b'\x11\x82\xe8', + -0x7d17: b'\x11\x82\xe9', + -0x7d16: b'\x11\x82\xea', + -0x7d15: b'\x11\x82\xeb', + -0x7d14: b'\x11\x82\xec', + -0x7d13: b'\x11\x82\xed', + -0x7d12: b'\x11\x82\xee', + -0x7d11: b'\x11\x82\xef', + -0x7d10: b'\x11\x82\xf0', + -0x7d0f: b'\x11\x82\xf1', + -0x7d0e: b'\x11\x82\xf2', + -0x7d0d: b'\x11\x82\xf3', + -0x7d0c: b'\x11\x82\xf4', + -0x7d0b: b'\x11\x82\xf5', + -0x7d0a: b'\x11\x82\xf6', + -0x7d09: b'\x11\x82\xf7', + -0x7d08: b'\x11\x82\xf8', + -0x7d07: b'\x11\x82\xf9', + -0x7d06: b'\x11\x82\xfa', + -0x7d05: b'\x11\x82\xfb', + -0x7d04: b'\x11\x82\xfc', + -0x7d03: b'\x11\x82\xfd', + -0x7d02: b'\x11\x82\xfe', + -0x7d01: b'\x11\x82\xff', + -0x7d00: b'\x11\x83\x00', + -0x7cff: b'\x11\x83\x01', + -0x7cfe: b'\x11\x83\x02', + -0x7cfd: b'\x11\x83\x03', + -0x7cfc: b'\x11\x83\x04', + -0x7cfb: b'\x11\x83\x05', + -0x7cfa: b'\x11\x83\x06', + -0x7cf9: b'\x11\x83\x07', + -0x7cf8: b'\x11\x83\x08', + -0x7cf7: b'\x11\x83\t', + -0x7cf6: b'\x11\x83\n', + -0x7cf5: b'\x11\x83\x0b', + -0x7cf4: b'\x11\x83\x0c', + -0x7cf3: b'\x11\x83\r', + -0x7cf2: b'\x11\x83\x0e', + -0x7cf1: b'\x11\x83\x0f', + -0x7cf0: b'\x11\x83\x10', + -0x7cef: b'\x11\x83\x11', + -0x7cee: b'\x11\x83\x12', + -0x7ced: b'\x11\x83\x13', + -0x7cec: b'\x11\x83\x14', + -0x7ceb: b'\x11\x83\x15', + -0x7cea: b'\x11\x83\x16', + -0x7ce9: b'\x11\x83\x17', + -0x7ce8: b'\x11\x83\x18', + -0x7ce7: b'\x11\x83\x19', + -0x7ce6: b'\x11\x83\x1a', + -0x7ce5: b'\x11\x83\x1b', + -0x7ce4: b'\x11\x83\x1c', + -0x7ce3: b'\x11\x83\x1d', + -0x7ce2: b'\x11\x83\x1e', + -0x7ce1: b'\x11\x83\x1f', + -0x7ce0: b'\x11\x83 ', + -0x7cdf: b'\x11\x83!', + -0x7cde: b'\x11\x83"', + -0x7cdd: b'\x11\x83#', + -0x7cdc: b'\x11\x83$', + -0x7cdb: b'\x11\x83%', + -0x7cda: b'\x11\x83&', + -0x7cd9: b"\x11\x83'", + -0x7cd8: b'\x11\x83(', + -0x7cd7: b'\x11\x83)', + -0x7cd6: b'\x11\x83*', + -0x7cd5: b'\x11\x83+', + -0x7cd4: b'\x11\x83,', + -0x7cd3: b'\x11\x83-', + -0x7cd2: b'\x11\x83.', + -0x7cd1: b'\x11\x83/', + -0x7cd0: b'\x11\x830', + -0x7ccf: b'\x11\x831', + -0x7cce: b'\x11\x832', + -0x7ccd: b'\x11\x833', + -0x7ccc: b'\x11\x834', + -0x7ccb: b'\x11\x835', + -0x7cca: b'\x11\x836', + -0x7cc9: b'\x11\x837', + -0x7cc8: b'\x11\x838', + -0x7cc7: b'\x11\x839', + -0x7cc6: b'\x11\x83:', + -0x7cc5: b'\x11\x83;', + -0x7cc4: b'\x11\x83<', + -0x7cc3: b'\x11\x83=', + -0x7cc2: b'\x11\x83>', + -0x7cc1: b'\x11\x83?', + -0x7cc0: b'\x11\x83@', + -0x7cbf: b'\x11\x83A', + -0x7cbe: b'\x11\x83B', + -0x7cbd: b'\x11\x83C', + -0x7cbc: b'\x11\x83D', + -0x7cbb: b'\x11\x83E', + -0x7cba: b'\x11\x83F', + -0x7cb9: b'\x11\x83G', + -0x7cb8: b'\x11\x83H', + -0x7cb7: b'\x11\x83I', + -0x7cb6: b'\x11\x83J', + -0x7cb5: b'\x11\x83K', + -0x7cb4: b'\x11\x83L', + -0x7cb3: b'\x11\x83M', + -0x7cb2: b'\x11\x83N', + -0x7cb1: b'\x11\x83O', + -0x7cb0: b'\x11\x83P', + -0x7caf: b'\x11\x83Q', + -0x7cae: b'\x11\x83R', + -0x7cad: b'\x11\x83S', + -0x7cac: b'\x11\x83T', + -0x7cab: b'\x11\x83U', + -0x7caa: b'\x11\x83V', + -0x7ca9: b'\x11\x83W', + -0x7ca8: b'\x11\x83X', + -0x7ca7: b'\x11\x83Y', + -0x7ca6: b'\x11\x83Z', + -0x7ca5: b'\x11\x83[', + -0x7ca4: b'\x11\x83\\', + -0x7ca3: b'\x11\x83]', + -0x7ca2: b'\x11\x83^', + -0x7ca1: b'\x11\x83_', + -0x7ca0: b'\x11\x83`', + -0x7c9f: b'\x11\x83a', + -0x7c9e: b'\x11\x83b', + -0x7c9d: b'\x11\x83c', + -0x7c9c: b'\x11\x83d', + -0x7c9b: b'\x11\x83e', + -0x7c9a: b'\x11\x83f', + -0x7c99: b'\x11\x83g', + -0x7c98: b'\x11\x83h', + -0x7c97: b'\x11\x83i', + -0x7c96: b'\x11\x83j', + -0x7c95: b'\x11\x83k', + -0x7c94: b'\x11\x83l', + -0x7c93: b'\x11\x83m', + -0x7c92: b'\x11\x83n', + -0x7c91: b'\x11\x83o', + -0x7c90: b'\x11\x83p', + -0x7c8f: b'\x11\x83q', + -0x7c8e: b'\x11\x83r', + -0x7c8d: b'\x11\x83s', + -0x7c8c: b'\x11\x83t', + -0x7c8b: b'\x11\x83u', + -0x7c8a: b'\x11\x83v', + -0x7c89: b'\x11\x83w', + -0x7c88: b'\x11\x83x', + -0x7c87: b'\x11\x83y', + -0x7c86: b'\x11\x83z', + -0x7c85: b'\x11\x83{', + -0x7c84: b'\x11\x83|', + -0x7c83: b'\x11\x83}', + -0x7c82: b'\x11\x83~', + -0x7c81: b'\x11\x83\x7f', + -0x7c80: b'\x11\x83\x80', + -0x7c7f: b'\x11\x83\x81', + -0x7c7e: b'\x11\x83\x82', + -0x7c7d: b'\x11\x83\x83', + -0x7c7c: b'\x11\x83\x84', + -0x7c7b: b'\x11\x83\x85', + -0x7c7a: b'\x11\x83\x86', + -0x7c79: b'\x11\x83\x87', + -0x7c78: b'\x11\x83\x88', + -0x7c77: b'\x11\x83\x89', + -0x7c76: b'\x11\x83\x8a', + -0x7c75: b'\x11\x83\x8b', + -0x7c74: b'\x11\x83\x8c', + -0x7c73: b'\x11\x83\x8d', + -0x7c72: b'\x11\x83\x8e', + -0x7c71: b'\x11\x83\x8f', + -0x7c70: b'\x11\x83\x90', + -0x7c6f: b'\x11\x83\x91', + -0x7c6e: b'\x11\x83\x92', + -0x7c6d: b'\x11\x83\x93', + -0x7c6c: b'\x11\x83\x94', + -0x7c6b: b'\x11\x83\x95', + -0x7c6a: b'\x11\x83\x96', + -0x7c69: b'\x11\x83\x97', + -0x7c68: b'\x11\x83\x98', + -0x7c67: b'\x11\x83\x99', + -0x7c66: b'\x11\x83\x9a', + -0x7c65: b'\x11\x83\x9b', + -0x7c64: b'\x11\x83\x9c', + -0x7c63: b'\x11\x83\x9d', + -0x7c62: b'\x11\x83\x9e', + -0x7c61: b'\x11\x83\x9f', + -0x7c60: b'\x11\x83\xa0', + -0x7c5f: b'\x11\x83\xa1', + -0x7c5e: b'\x11\x83\xa2', + -0x7c5d: b'\x11\x83\xa3', + -0x7c5c: b'\x11\x83\xa4', + -0x7c5b: b'\x11\x83\xa5', + -0x7c5a: b'\x11\x83\xa6', + -0x7c59: b'\x11\x83\xa7', + -0x7c58: b'\x11\x83\xa8', + -0x7c57: b'\x11\x83\xa9', + -0x7c56: b'\x11\x83\xaa', + -0x7c55: b'\x11\x83\xab', + -0x7c54: b'\x11\x83\xac', + -0x7c53: b'\x11\x83\xad', + -0x7c52: b'\x11\x83\xae', + -0x7c51: b'\x11\x83\xaf', + -0x7c50: b'\x11\x83\xb0', + -0x7c4f: b'\x11\x83\xb1', + -0x7c4e: b'\x11\x83\xb2', + -0x7c4d: b'\x11\x83\xb3', + -0x7c4c: b'\x11\x83\xb4', + -0x7c4b: b'\x11\x83\xb5', + -0x7c4a: b'\x11\x83\xb6', + -0x7c49: b'\x11\x83\xb7', + -0x7c48: b'\x11\x83\xb8', + -0x7c47: b'\x11\x83\xb9', + -0x7c46: b'\x11\x83\xba', + -0x7c45: b'\x11\x83\xbb', + -0x7c44: b'\x11\x83\xbc', + -0x7c43: b'\x11\x83\xbd', + -0x7c42: b'\x11\x83\xbe', + -0x7c41: b'\x11\x83\xbf', + -0x7c40: b'\x11\x83\xc0', + -0x7c3f: b'\x11\x83\xc1', + -0x7c3e: b'\x11\x83\xc2', + -0x7c3d: b'\x11\x83\xc3', + -0x7c3c: b'\x11\x83\xc4', + -0x7c3b: b'\x11\x83\xc5', + -0x7c3a: b'\x11\x83\xc6', + -0x7c39: b'\x11\x83\xc7', + -0x7c38: b'\x11\x83\xc8', + -0x7c37: b'\x11\x83\xc9', + -0x7c36: b'\x11\x83\xca', + -0x7c35: b'\x11\x83\xcb', + -0x7c34: b'\x11\x83\xcc', + -0x7c33: b'\x11\x83\xcd', + -0x7c32: b'\x11\x83\xce', + -0x7c31: b'\x11\x83\xcf', + -0x7c30: b'\x11\x83\xd0', + -0x7c2f: b'\x11\x83\xd1', + -0x7c2e: b'\x11\x83\xd2', + -0x7c2d: b'\x11\x83\xd3', + -0x7c2c: b'\x11\x83\xd4', + -0x7c2b: b'\x11\x83\xd5', + -0x7c2a: b'\x11\x83\xd6', + -0x7c29: b'\x11\x83\xd7', + -0x7c28: b'\x11\x83\xd8', + -0x7c27: b'\x11\x83\xd9', + -0x7c26: b'\x11\x83\xda', + -0x7c25: b'\x11\x83\xdb', + -0x7c24: b'\x11\x83\xdc', + -0x7c23: b'\x11\x83\xdd', + -0x7c22: b'\x11\x83\xde', + -0x7c21: b'\x11\x83\xdf', + -0x7c20: b'\x11\x83\xe0', + -0x7c1f: b'\x11\x83\xe1', + -0x7c1e: b'\x11\x83\xe2', + -0x7c1d: b'\x11\x83\xe3', + -0x7c1c: b'\x11\x83\xe4', + -0x7c1b: b'\x11\x83\xe5', + -0x7c1a: b'\x11\x83\xe6', + -0x7c19: b'\x11\x83\xe7', + -0x7c18: b'\x11\x83\xe8', + -0x7c17: b'\x11\x83\xe9', + -0x7c16: b'\x11\x83\xea', + -0x7c15: b'\x11\x83\xeb', + -0x7c14: b'\x11\x83\xec', + -0x7c13: b'\x11\x83\xed', + -0x7c12: b'\x11\x83\xee', + -0x7c11: b'\x11\x83\xef', + -0x7c10: b'\x11\x83\xf0', + -0x7c0f: b'\x11\x83\xf1', + -0x7c0e: b'\x11\x83\xf2', + -0x7c0d: b'\x11\x83\xf3', + -0x7c0c: b'\x11\x83\xf4', + -0x7c0b: b'\x11\x83\xf5', + -0x7c0a: b'\x11\x83\xf6', + -0x7c09: b'\x11\x83\xf7', + -0x7c08: b'\x11\x83\xf8', + -0x7c07: b'\x11\x83\xf9', + -0x7c06: b'\x11\x83\xfa', + -0x7c05: b'\x11\x83\xfb', + -0x7c04: b'\x11\x83\xfc', + -0x7c03: b'\x11\x83\xfd', + -0x7c02: b'\x11\x83\xfe', + -0x7c01: b'\x11\x83\xff', + -0x7c00: b'\x11\x84\x00', + -0x7bff: b'\x11\x84\x01', + -0x7bfe: b'\x11\x84\x02', + -0x7bfd: b'\x11\x84\x03', + -0x7bfc: b'\x11\x84\x04', + -0x7bfb: b'\x11\x84\x05', + -0x7bfa: b'\x11\x84\x06', + -0x7bf9: b'\x11\x84\x07', + -0x7bf8: b'\x11\x84\x08', + -0x7bf7: b'\x11\x84\t', + -0x7bf6: b'\x11\x84\n', + -0x7bf5: b'\x11\x84\x0b', + -0x7bf4: b'\x11\x84\x0c', + -0x7bf3: b'\x11\x84\r', + -0x7bf2: b'\x11\x84\x0e', + -0x7bf1: b'\x11\x84\x0f', + -0x7bf0: b'\x11\x84\x10', + -0x7bef: b'\x11\x84\x11', + -0x7bee: b'\x11\x84\x12', + -0x7bed: b'\x11\x84\x13', + -0x7bec: b'\x11\x84\x14', + -0x7beb: b'\x11\x84\x15', + -0x7bea: b'\x11\x84\x16', + -0x7be9: b'\x11\x84\x17', + -0x7be8: b'\x11\x84\x18', + -0x7be7: b'\x11\x84\x19', + -0x7be6: b'\x11\x84\x1a', + -0x7be5: b'\x11\x84\x1b', + -0x7be4: b'\x11\x84\x1c', + -0x7be3: b'\x11\x84\x1d', + -0x7be2: b'\x11\x84\x1e', + -0x7be1: b'\x11\x84\x1f', + -0x7be0: b'\x11\x84 ', + -0x7bdf: b'\x11\x84!', + -0x7bde: b'\x11\x84"', + -0x7bdd: b'\x11\x84#', + -0x7bdc: b'\x11\x84$', + -0x7bdb: b'\x11\x84%', + -0x7bda: b'\x11\x84&', + -0x7bd9: b"\x11\x84'", + -0x7bd8: b'\x11\x84(', + -0x7bd7: b'\x11\x84)', + -0x7bd6: b'\x11\x84*', + -0x7bd5: b'\x11\x84+', + -0x7bd4: b'\x11\x84,', + -0x7bd3: b'\x11\x84-', + -0x7bd2: b'\x11\x84.', + -0x7bd1: b'\x11\x84/', + -0x7bd0: b'\x11\x840', + -0x7bcf: b'\x11\x841', + -0x7bce: b'\x11\x842', + -0x7bcd: b'\x11\x843', + -0x7bcc: b'\x11\x844', + -0x7bcb: b'\x11\x845', + -0x7bca: b'\x11\x846', + -0x7bc9: b'\x11\x847', + -0x7bc8: b'\x11\x848', + -0x7bc7: b'\x11\x849', + -0x7bc6: b'\x11\x84:', + -0x7bc5: b'\x11\x84;', + -0x7bc4: b'\x11\x84<', + -0x7bc3: b'\x11\x84=', + -0x7bc2: b'\x11\x84>', + -0x7bc1: b'\x11\x84?', + -0x7bc0: b'\x11\x84@', + -0x7bbf: b'\x11\x84A', + -0x7bbe: b'\x11\x84B', + -0x7bbd: b'\x11\x84C', + -0x7bbc: b'\x11\x84D', + -0x7bbb: b'\x11\x84E', + -0x7bba: b'\x11\x84F', + -0x7bb9: b'\x11\x84G', + -0x7bb8: b'\x11\x84H', + -0x7bb7: b'\x11\x84I', + -0x7bb6: b'\x11\x84J', + -0x7bb5: b'\x11\x84K', + -0x7bb4: b'\x11\x84L', + -0x7bb3: b'\x11\x84M', + -0x7bb2: b'\x11\x84N', + -0x7bb1: b'\x11\x84O', + -0x7bb0: b'\x11\x84P', + -0x7baf: b'\x11\x84Q', + -0x7bae: b'\x11\x84R', + -0x7bad: b'\x11\x84S', + -0x7bac: b'\x11\x84T', + -0x7bab: b'\x11\x84U', + -0x7baa: b'\x11\x84V', + -0x7ba9: b'\x11\x84W', + -0x7ba8: b'\x11\x84X', + -0x7ba7: b'\x11\x84Y', + -0x7ba6: b'\x11\x84Z', + -0x7ba5: b'\x11\x84[', + -0x7ba4: b'\x11\x84\\', + -0x7ba3: b'\x11\x84]', + -0x7ba2: b'\x11\x84^', + -0x7ba1: b'\x11\x84_', + -0x7ba0: b'\x11\x84`', + -0x7b9f: b'\x11\x84a', + -0x7b9e: b'\x11\x84b', + -0x7b9d: b'\x11\x84c', + -0x7b9c: b'\x11\x84d', + -0x7b9b: b'\x11\x84e', + -0x7b9a: b'\x11\x84f', + -0x7b99: b'\x11\x84g', + -0x7b98: b'\x11\x84h', + -0x7b97: b'\x11\x84i', + -0x7b96: b'\x11\x84j', + -0x7b95: b'\x11\x84k', + -0x7b94: b'\x11\x84l', + -0x7b93: b'\x11\x84m', + -0x7b92: b'\x11\x84n', + -0x7b91: b'\x11\x84o', + -0x7b90: b'\x11\x84p', + -0x7b8f: b'\x11\x84q', + -0x7b8e: b'\x11\x84r', + -0x7b8d: b'\x11\x84s', + -0x7b8c: b'\x11\x84t', + -0x7b8b: b'\x11\x84u', + -0x7b8a: b'\x11\x84v', + -0x7b89: b'\x11\x84w', + -0x7b88: b'\x11\x84x', + -0x7b87: b'\x11\x84y', + -0x7b86: b'\x11\x84z', + -0x7b85: b'\x11\x84{', + -0x7b84: b'\x11\x84|', + -0x7b83: b'\x11\x84}', + -0x7b82: b'\x11\x84~', + -0x7b81: b'\x11\x84\x7f', + -0x7b80: b'\x11\x84\x80', + -0x7b7f: b'\x11\x84\x81', + -0x7b7e: b'\x11\x84\x82', + -0x7b7d: b'\x11\x84\x83', + -0x7b7c: b'\x11\x84\x84', + -0x7b7b: b'\x11\x84\x85', + -0x7b7a: b'\x11\x84\x86', + -0x7b79: b'\x11\x84\x87', + -0x7b78: b'\x11\x84\x88', + -0x7b77: b'\x11\x84\x89', + -0x7b76: b'\x11\x84\x8a', + -0x7b75: b'\x11\x84\x8b', + -0x7b74: b'\x11\x84\x8c', + -0x7b73: b'\x11\x84\x8d', + -0x7b72: b'\x11\x84\x8e', + -0x7b71: b'\x11\x84\x8f', + -0x7b70: b'\x11\x84\x90', + -0x7b6f: b'\x11\x84\x91', + -0x7b6e: b'\x11\x84\x92', + -0x7b6d: b'\x11\x84\x93', + -0x7b6c: b'\x11\x84\x94', + -0x7b6b: b'\x11\x84\x95', + -0x7b6a: b'\x11\x84\x96', + -0x7b69: b'\x11\x84\x97', + -0x7b68: b'\x11\x84\x98', + -0x7b67: b'\x11\x84\x99', + -0x7b66: b'\x11\x84\x9a', + -0x7b65: b'\x11\x84\x9b', + -0x7b64: b'\x11\x84\x9c', + -0x7b63: b'\x11\x84\x9d', + -0x7b62: b'\x11\x84\x9e', + -0x7b61: b'\x11\x84\x9f', + -0x7b60: b'\x11\x84\xa0', + -0x7b5f: b'\x11\x84\xa1', + -0x7b5e: b'\x11\x84\xa2', + -0x7b5d: b'\x11\x84\xa3', + -0x7b5c: b'\x11\x84\xa4', + -0x7b5b: b'\x11\x84\xa5', + -0x7b5a: b'\x11\x84\xa6', + -0x7b59: b'\x11\x84\xa7', + -0x7b58: b'\x11\x84\xa8', + -0x7b57: b'\x11\x84\xa9', + -0x7b56: b'\x11\x84\xaa', + -0x7b55: b'\x11\x84\xab', + -0x7b54: b'\x11\x84\xac', + -0x7b53: b'\x11\x84\xad', + -0x7b52: b'\x11\x84\xae', + -0x7b51: b'\x11\x84\xaf', + -0x7b50: b'\x11\x84\xb0', + -0x7b4f: b'\x11\x84\xb1', + -0x7b4e: b'\x11\x84\xb2', + -0x7b4d: b'\x11\x84\xb3', + -0x7b4c: b'\x11\x84\xb4', + -0x7b4b: b'\x11\x84\xb5', + -0x7b4a: b'\x11\x84\xb6', + -0x7b49: b'\x11\x84\xb7', + -0x7b48: b'\x11\x84\xb8', + -0x7b47: b'\x11\x84\xb9', + -0x7b46: b'\x11\x84\xba', + -0x7b45: b'\x11\x84\xbb', + -0x7b44: b'\x11\x84\xbc', + -0x7b43: b'\x11\x84\xbd', + -0x7b42: b'\x11\x84\xbe', + -0x7b41: b'\x11\x84\xbf', + -0x7b40: b'\x11\x84\xc0', + -0x7b3f: b'\x11\x84\xc1', + -0x7b3e: b'\x11\x84\xc2', + -0x7b3d: b'\x11\x84\xc3', + -0x7b3c: b'\x11\x84\xc4', + -0x7b3b: b'\x11\x84\xc5', + -0x7b3a: b'\x11\x84\xc6', + -0x7b39: b'\x11\x84\xc7', + -0x7b38: b'\x11\x84\xc8', + -0x7b37: b'\x11\x84\xc9', + -0x7b36: b'\x11\x84\xca', + -0x7b35: b'\x11\x84\xcb', + -0x7b34: b'\x11\x84\xcc', + -0x7b33: b'\x11\x84\xcd', + -0x7b32: b'\x11\x84\xce', + -0x7b31: b'\x11\x84\xcf', + -0x7b30: b'\x11\x84\xd0', + -0x7b2f: b'\x11\x84\xd1', + -0x7b2e: b'\x11\x84\xd2', + -0x7b2d: b'\x11\x84\xd3', + -0x7b2c: b'\x11\x84\xd4', + -0x7b2b: b'\x11\x84\xd5', + -0x7b2a: b'\x11\x84\xd6', + -0x7b29: b'\x11\x84\xd7', + -0x7b28: b'\x11\x84\xd8', + -0x7b27: b'\x11\x84\xd9', + -0x7b26: b'\x11\x84\xda', + -0x7b25: b'\x11\x84\xdb', + -0x7b24: b'\x11\x84\xdc', + -0x7b23: b'\x11\x84\xdd', + -0x7b22: b'\x11\x84\xde', + -0x7b21: b'\x11\x84\xdf', + -0x7b20: b'\x11\x84\xe0', + -0x7b1f: b'\x11\x84\xe1', + -0x7b1e: b'\x11\x84\xe2', + -0x7b1d: b'\x11\x84\xe3', + -0x7b1c: b'\x11\x84\xe4', + -0x7b1b: b'\x11\x84\xe5', + -0x7b1a: b'\x11\x84\xe6', + -0x7b19: b'\x11\x84\xe7', + -0x7b18: b'\x11\x84\xe8', + -0x7b17: b'\x11\x84\xe9', + -0x7b16: b'\x11\x84\xea', + -0x7b15: b'\x11\x84\xeb', + -0x7b14: b'\x11\x84\xec', + -0x7b13: b'\x11\x84\xed', + -0x7b12: b'\x11\x84\xee', + -0x7b11: b'\x11\x84\xef', + -0x7b10: b'\x11\x84\xf0', + -0x7b0f: b'\x11\x84\xf1', + -0x7b0e: b'\x11\x84\xf2', + -0x7b0d: b'\x11\x84\xf3', + -0x7b0c: b'\x11\x84\xf4', + -0x7b0b: b'\x11\x84\xf5', + -0x7b0a: b'\x11\x84\xf6', + -0x7b09: b'\x11\x84\xf7', + -0x7b08: b'\x11\x84\xf8', + -0x7b07: b'\x11\x84\xf9', + -0x7b06: b'\x11\x84\xfa', + -0x7b05: b'\x11\x84\xfb', + -0x7b04: b'\x11\x84\xfc', + -0x7b03: b'\x11\x84\xfd', + -0x7b02: b'\x11\x84\xfe', + -0x7b01: b'\x11\x84\xff', + -0x7b00: b'\x11\x85\x00', + -0x7aff: b'\x11\x85\x01', + -0x7afe: b'\x11\x85\x02', + -0x7afd: b'\x11\x85\x03', + -0x7afc: b'\x11\x85\x04', + -0x7afb: b'\x11\x85\x05', + -0x7afa: b'\x11\x85\x06', + -0x7af9: b'\x11\x85\x07', + -0x7af8: b'\x11\x85\x08', + -0x7af7: b'\x11\x85\t', + -0x7af6: b'\x11\x85\n', + -0x7af5: b'\x11\x85\x0b', + -0x7af4: b'\x11\x85\x0c', + -0x7af3: b'\x11\x85\r', + -0x7af2: b'\x11\x85\x0e', + -0x7af1: b'\x11\x85\x0f', + -0x7af0: b'\x11\x85\x10', + -0x7aef: b'\x11\x85\x11', + -0x7aee: b'\x11\x85\x12', + -0x7aed: b'\x11\x85\x13', + -0x7aec: b'\x11\x85\x14', + -0x7aeb: b'\x11\x85\x15', + -0x7aea: b'\x11\x85\x16', + -0x7ae9: b'\x11\x85\x17', + -0x7ae8: b'\x11\x85\x18', + -0x7ae7: b'\x11\x85\x19', + -0x7ae6: b'\x11\x85\x1a', + -0x7ae5: b'\x11\x85\x1b', + -0x7ae4: b'\x11\x85\x1c', + -0x7ae3: b'\x11\x85\x1d', + -0x7ae2: b'\x11\x85\x1e', + -0x7ae1: b'\x11\x85\x1f', + -0x7ae0: b'\x11\x85 ', + -0x7adf: b'\x11\x85!', + -0x7ade: b'\x11\x85"', + -0x7add: b'\x11\x85#', + -0x7adc: b'\x11\x85$', + -0x7adb: b'\x11\x85%', + -0x7ada: b'\x11\x85&', + -0x7ad9: b"\x11\x85'", + -0x7ad8: b'\x11\x85(', + -0x7ad7: b'\x11\x85)', + -0x7ad6: b'\x11\x85*', + -0x7ad5: b'\x11\x85+', + -0x7ad4: b'\x11\x85,', + -0x7ad3: b'\x11\x85-', + -0x7ad2: b'\x11\x85.', + -0x7ad1: b'\x11\x85/', + -0x7ad0: b'\x11\x850', + -0x7acf: b'\x11\x851', + -0x7ace: b'\x11\x852', + -0x7acd: b'\x11\x853', + -0x7acc: b'\x11\x854', + -0x7acb: b'\x11\x855', + -0x7aca: b'\x11\x856', + -0x7ac9: b'\x11\x857', + -0x7ac8: b'\x11\x858', + -0x7ac7: b'\x11\x859', + -0x7ac6: b'\x11\x85:', + -0x7ac5: b'\x11\x85;', + -0x7ac4: b'\x11\x85<', + -0x7ac3: b'\x11\x85=', + -0x7ac2: b'\x11\x85>', + -0x7ac1: b'\x11\x85?', + -0x7ac0: b'\x11\x85@', + -0x7abf: b'\x11\x85A', + -0x7abe: b'\x11\x85B', + -0x7abd: b'\x11\x85C', + -0x7abc: b'\x11\x85D', + -0x7abb: b'\x11\x85E', + -0x7aba: b'\x11\x85F', + -0x7ab9: b'\x11\x85G', + -0x7ab8: b'\x11\x85H', + -0x7ab7: b'\x11\x85I', + -0x7ab6: b'\x11\x85J', + -0x7ab5: b'\x11\x85K', + -0x7ab4: b'\x11\x85L', + -0x7ab3: b'\x11\x85M', + -0x7ab2: b'\x11\x85N', + -0x7ab1: b'\x11\x85O', + -0x7ab0: b'\x11\x85P', + -0x7aaf: b'\x11\x85Q', + -0x7aae: b'\x11\x85R', + -0x7aad: b'\x11\x85S', + -0x7aac: b'\x11\x85T', + -0x7aab: b'\x11\x85U', + -0x7aaa: b'\x11\x85V', + -0x7aa9: b'\x11\x85W', + -0x7aa8: b'\x11\x85X', + -0x7aa7: b'\x11\x85Y', + -0x7aa6: b'\x11\x85Z', + -0x7aa5: b'\x11\x85[', + -0x7aa4: b'\x11\x85\\', + -0x7aa3: b'\x11\x85]', + -0x7aa2: b'\x11\x85^', + -0x7aa1: b'\x11\x85_', + -0x7aa0: b'\x11\x85`', + -0x7a9f: b'\x11\x85a', + -0x7a9e: b'\x11\x85b', + -0x7a9d: b'\x11\x85c', + -0x7a9c: b'\x11\x85d', + -0x7a9b: b'\x11\x85e', + -0x7a9a: b'\x11\x85f', + -0x7a99: b'\x11\x85g', + -0x7a98: b'\x11\x85h', + -0x7a97: b'\x11\x85i', + -0x7a96: b'\x11\x85j', + -0x7a95: b'\x11\x85k', + -0x7a94: b'\x11\x85l', + -0x7a93: b'\x11\x85m', + -0x7a92: b'\x11\x85n', + -0x7a91: b'\x11\x85o', + -0x7a90: b'\x11\x85p', + -0x7a8f: b'\x11\x85q', + -0x7a8e: b'\x11\x85r', + -0x7a8d: b'\x11\x85s', + -0x7a8c: b'\x11\x85t', + -0x7a8b: b'\x11\x85u', + -0x7a8a: b'\x11\x85v', + -0x7a89: b'\x11\x85w', + -0x7a88: b'\x11\x85x', + -0x7a87: b'\x11\x85y', + -0x7a86: b'\x11\x85z', + -0x7a85: b'\x11\x85{', + -0x7a84: b'\x11\x85|', + -0x7a83: b'\x11\x85}', + -0x7a82: b'\x11\x85~', + -0x7a81: b'\x11\x85\x7f', + -0x7a80: b'\x11\x85\x80', + -0x7a7f: b'\x11\x85\x81', + -0x7a7e: b'\x11\x85\x82', + -0x7a7d: b'\x11\x85\x83', + -0x7a7c: b'\x11\x85\x84', + -0x7a7b: b'\x11\x85\x85', + -0x7a7a: b'\x11\x85\x86', + -0x7a79: b'\x11\x85\x87', + -0x7a78: b'\x11\x85\x88', + -0x7a77: b'\x11\x85\x89', + -0x7a76: b'\x11\x85\x8a', + -0x7a75: b'\x11\x85\x8b', + -0x7a74: b'\x11\x85\x8c', + -0x7a73: b'\x11\x85\x8d', + -0x7a72: b'\x11\x85\x8e', + -0x7a71: b'\x11\x85\x8f', + -0x7a70: b'\x11\x85\x90', + -0x7a6f: b'\x11\x85\x91', + -0x7a6e: b'\x11\x85\x92', + -0x7a6d: b'\x11\x85\x93', + -0x7a6c: b'\x11\x85\x94', + -0x7a6b: b'\x11\x85\x95', + -0x7a6a: b'\x11\x85\x96', + -0x7a69: b'\x11\x85\x97', + -0x7a68: b'\x11\x85\x98', + -0x7a67: b'\x11\x85\x99', + -0x7a66: b'\x11\x85\x9a', + -0x7a65: b'\x11\x85\x9b', + -0x7a64: b'\x11\x85\x9c', + -0x7a63: b'\x11\x85\x9d', + -0x7a62: b'\x11\x85\x9e', + -0x7a61: b'\x11\x85\x9f', + -0x7a60: b'\x11\x85\xa0', + -0x7a5f: b'\x11\x85\xa1', + -0x7a5e: b'\x11\x85\xa2', + -0x7a5d: b'\x11\x85\xa3', + -0x7a5c: b'\x11\x85\xa4', + -0x7a5b: b'\x11\x85\xa5', + -0x7a5a: b'\x11\x85\xa6', + -0x7a59: b'\x11\x85\xa7', + -0x7a58: b'\x11\x85\xa8', + -0x7a57: b'\x11\x85\xa9', + -0x7a56: b'\x11\x85\xaa', + -0x7a55: b'\x11\x85\xab', + -0x7a54: b'\x11\x85\xac', + -0x7a53: b'\x11\x85\xad', + -0x7a52: b'\x11\x85\xae', + -0x7a51: b'\x11\x85\xaf', + -0x7a50: b'\x11\x85\xb0', + -0x7a4f: b'\x11\x85\xb1', + -0x7a4e: b'\x11\x85\xb2', + -0x7a4d: b'\x11\x85\xb3', + -0x7a4c: b'\x11\x85\xb4', + -0x7a4b: b'\x11\x85\xb5', + -0x7a4a: b'\x11\x85\xb6', + -0x7a49: b'\x11\x85\xb7', + -0x7a48: b'\x11\x85\xb8', + -0x7a47: b'\x11\x85\xb9', + -0x7a46: b'\x11\x85\xba', + -0x7a45: b'\x11\x85\xbb', + -0x7a44: b'\x11\x85\xbc', + -0x7a43: b'\x11\x85\xbd', + -0x7a42: b'\x11\x85\xbe', + -0x7a41: b'\x11\x85\xbf', + -0x7a40: b'\x11\x85\xc0', + -0x7a3f: b'\x11\x85\xc1', + -0x7a3e: b'\x11\x85\xc2', + -0x7a3d: b'\x11\x85\xc3', + -0x7a3c: b'\x11\x85\xc4', + -0x7a3b: b'\x11\x85\xc5', + -0x7a3a: b'\x11\x85\xc6', + -0x7a39: b'\x11\x85\xc7', + -0x7a38: b'\x11\x85\xc8', + -0x7a37: b'\x11\x85\xc9', + -0x7a36: b'\x11\x85\xca', + -0x7a35: b'\x11\x85\xcb', + -0x7a34: b'\x11\x85\xcc', + -0x7a33: b'\x11\x85\xcd', + -0x7a32: b'\x11\x85\xce', + -0x7a31: b'\x11\x85\xcf', + -0x7a30: b'\x11\x85\xd0', + -0x7a2f: b'\x11\x85\xd1', + -0x7a2e: b'\x11\x85\xd2', + -0x7a2d: b'\x11\x85\xd3', + -0x7a2c: b'\x11\x85\xd4', + -0x7a2b: b'\x11\x85\xd5', + -0x7a2a: b'\x11\x85\xd6', + -0x7a29: b'\x11\x85\xd7', + -0x7a28: b'\x11\x85\xd8', + -0x7a27: b'\x11\x85\xd9', + -0x7a26: b'\x11\x85\xda', + -0x7a25: b'\x11\x85\xdb', + -0x7a24: b'\x11\x85\xdc', + -0x7a23: b'\x11\x85\xdd', + -0x7a22: b'\x11\x85\xde', + -0x7a21: b'\x11\x85\xdf', + -0x7a20: b'\x11\x85\xe0', + -0x7a1f: b'\x11\x85\xe1', + -0x7a1e: b'\x11\x85\xe2', + -0x7a1d: b'\x11\x85\xe3', + -0x7a1c: b'\x11\x85\xe4', + -0x7a1b: b'\x11\x85\xe5', + -0x7a1a: b'\x11\x85\xe6', + -0x7a19: b'\x11\x85\xe7', + -0x7a18: b'\x11\x85\xe8', + -0x7a17: b'\x11\x85\xe9', + -0x7a16: b'\x11\x85\xea', + -0x7a15: b'\x11\x85\xeb', + -0x7a14: b'\x11\x85\xec', + -0x7a13: b'\x11\x85\xed', + -0x7a12: b'\x11\x85\xee', + -0x7a11: b'\x11\x85\xef', + -0x7a10: b'\x11\x85\xf0', + -0x7a0f: b'\x11\x85\xf1', + -0x7a0e: b'\x11\x85\xf2', + -0x7a0d: b'\x11\x85\xf3', + -0x7a0c: b'\x11\x85\xf4', + -0x7a0b: b'\x11\x85\xf5', + -0x7a0a: b'\x11\x85\xf6', + -0x7a09: b'\x11\x85\xf7', + -0x7a08: b'\x11\x85\xf8', + -0x7a07: b'\x11\x85\xf9', + -0x7a06: b'\x11\x85\xfa', + -0x7a05: b'\x11\x85\xfb', + -0x7a04: b'\x11\x85\xfc', + -0x7a03: b'\x11\x85\xfd', + -0x7a02: b'\x11\x85\xfe', + -0x7a01: b'\x11\x85\xff', + -0x7a00: b'\x11\x86\x00', + -0x79ff: b'\x11\x86\x01', + -0x79fe: b'\x11\x86\x02', + -0x79fd: b'\x11\x86\x03', + -0x79fc: b'\x11\x86\x04', + -0x79fb: b'\x11\x86\x05', + -0x79fa: b'\x11\x86\x06', + -0x79f9: b'\x11\x86\x07', + -0x79f8: b'\x11\x86\x08', + -0x79f7: b'\x11\x86\t', + -0x79f6: b'\x11\x86\n', + -0x79f5: b'\x11\x86\x0b', + -0x79f4: b'\x11\x86\x0c', + -0x79f3: b'\x11\x86\r', + -0x79f2: b'\x11\x86\x0e', + -0x79f1: b'\x11\x86\x0f', + -0x79f0: b'\x11\x86\x10', + -0x79ef: b'\x11\x86\x11', + -0x79ee: b'\x11\x86\x12', + -0x79ed: b'\x11\x86\x13', + -0x79ec: b'\x11\x86\x14', + -0x79eb: b'\x11\x86\x15', + -0x79ea: b'\x11\x86\x16', + -0x79e9: b'\x11\x86\x17', + -0x79e8: b'\x11\x86\x18', + -0x79e7: b'\x11\x86\x19', + -0x79e6: b'\x11\x86\x1a', + -0x79e5: b'\x11\x86\x1b', + -0x79e4: b'\x11\x86\x1c', + -0x79e3: b'\x11\x86\x1d', + -0x79e2: b'\x11\x86\x1e', + -0x79e1: b'\x11\x86\x1f', + -0x79e0: b'\x11\x86 ', + -0x79df: b'\x11\x86!', + -0x79de: b'\x11\x86"', + -0x79dd: b'\x11\x86#', + -0x79dc: b'\x11\x86$', + -0x79db: b'\x11\x86%', + -0x79da: b'\x11\x86&', + -0x79d9: b"\x11\x86'", + -0x79d8: b'\x11\x86(', + -0x79d7: b'\x11\x86)', + -0x79d6: b'\x11\x86*', + -0x79d5: b'\x11\x86+', + -0x79d4: b'\x11\x86,', + -0x79d3: b'\x11\x86-', + -0x79d2: b'\x11\x86.', + -0x79d1: b'\x11\x86/', + -0x79d0: b'\x11\x860', + -0x79cf: b'\x11\x861', + -0x79ce: b'\x11\x862', + -0x79cd: b'\x11\x863', + -0x79cc: b'\x11\x864', + -0x79cb: b'\x11\x865', + -0x79ca: b'\x11\x866', + -0x79c9: b'\x11\x867', + -0x79c8: b'\x11\x868', + -0x79c7: b'\x11\x869', + -0x79c6: b'\x11\x86:', + -0x79c5: b'\x11\x86;', + -0x79c4: b'\x11\x86<', + -0x79c3: b'\x11\x86=', + -0x79c2: b'\x11\x86>', + -0x79c1: b'\x11\x86?', + -0x79c0: b'\x11\x86@', + -0x79bf: b'\x11\x86A', + -0x79be: b'\x11\x86B', + -0x79bd: b'\x11\x86C', + -0x79bc: b'\x11\x86D', + -0x79bb: b'\x11\x86E', + -0x79ba: b'\x11\x86F', + -0x79b9: b'\x11\x86G', + -0x79b8: b'\x11\x86H', + -0x79b7: b'\x11\x86I', + -0x79b6: b'\x11\x86J', + -0x79b5: b'\x11\x86K', + -0x79b4: b'\x11\x86L', + -0x79b3: b'\x11\x86M', + -0x79b2: b'\x11\x86N', + -0x79b1: b'\x11\x86O', + -0x79b0: b'\x11\x86P', + -0x79af: b'\x11\x86Q', + -0x79ae: b'\x11\x86R', + -0x79ad: b'\x11\x86S', + -0x79ac: b'\x11\x86T', + -0x79ab: b'\x11\x86U', + -0x79aa: b'\x11\x86V', + -0x79a9: b'\x11\x86W', + -0x79a8: b'\x11\x86X', + -0x79a7: b'\x11\x86Y', + -0x79a6: b'\x11\x86Z', + -0x79a5: b'\x11\x86[', + -0x79a4: b'\x11\x86\\', + -0x79a3: b'\x11\x86]', + -0x79a2: b'\x11\x86^', + -0x79a1: b'\x11\x86_', + -0x79a0: b'\x11\x86`', + -0x799f: b'\x11\x86a', + -0x799e: b'\x11\x86b', + -0x799d: b'\x11\x86c', + -0x799c: b'\x11\x86d', + -0x799b: b'\x11\x86e', + -0x799a: b'\x11\x86f', + -0x7999: b'\x11\x86g', + -0x7998: b'\x11\x86h', + -0x7997: b'\x11\x86i', + -0x7996: b'\x11\x86j', + -0x7995: b'\x11\x86k', + -0x7994: b'\x11\x86l', + -0x7993: b'\x11\x86m', + -0x7992: b'\x11\x86n', + -0x7991: b'\x11\x86o', + -0x7990: b'\x11\x86p', + -0x798f: b'\x11\x86q', + -0x798e: b'\x11\x86r', + -0x798d: b'\x11\x86s', + -0x798c: b'\x11\x86t', + -0x798b: b'\x11\x86u', + -0x798a: b'\x11\x86v', + -0x7989: b'\x11\x86w', + -0x7988: b'\x11\x86x', + -0x7987: b'\x11\x86y', + -0x7986: b'\x11\x86z', + -0x7985: b'\x11\x86{', + -0x7984: b'\x11\x86|', + -0x7983: b'\x11\x86}', + -0x7982: b'\x11\x86~', + -0x7981: b'\x11\x86\x7f', + -0x7980: b'\x11\x86\x80', + -0x797f: b'\x11\x86\x81', + -0x797e: b'\x11\x86\x82', + -0x797d: b'\x11\x86\x83', + -0x797c: b'\x11\x86\x84', + -0x797b: b'\x11\x86\x85', + -0x797a: b'\x11\x86\x86', + -0x7979: b'\x11\x86\x87', + -0x7978: b'\x11\x86\x88', + -0x7977: b'\x11\x86\x89', + -0x7976: b'\x11\x86\x8a', + -0x7975: b'\x11\x86\x8b', + -0x7974: b'\x11\x86\x8c', + -0x7973: b'\x11\x86\x8d', + -0x7972: b'\x11\x86\x8e', + -0x7971: b'\x11\x86\x8f', + -0x7970: b'\x11\x86\x90', + -0x796f: b'\x11\x86\x91', + -0x796e: b'\x11\x86\x92', + -0x796d: b'\x11\x86\x93', + -0x796c: b'\x11\x86\x94', + -0x796b: b'\x11\x86\x95', + -0x796a: b'\x11\x86\x96', + -0x7969: b'\x11\x86\x97', + -0x7968: b'\x11\x86\x98', + -0x7967: b'\x11\x86\x99', + -0x7966: b'\x11\x86\x9a', + -0x7965: b'\x11\x86\x9b', + -0x7964: b'\x11\x86\x9c', + -0x7963: b'\x11\x86\x9d', + -0x7962: b'\x11\x86\x9e', + -0x7961: b'\x11\x86\x9f', + -0x7960: b'\x11\x86\xa0', + -0x795f: b'\x11\x86\xa1', + -0x795e: b'\x11\x86\xa2', + -0x795d: b'\x11\x86\xa3', + -0x795c: b'\x11\x86\xa4', + -0x795b: b'\x11\x86\xa5', + -0x795a: b'\x11\x86\xa6', + -0x7959: b'\x11\x86\xa7', + -0x7958: b'\x11\x86\xa8', + -0x7957: b'\x11\x86\xa9', + -0x7956: b'\x11\x86\xaa', + -0x7955: b'\x11\x86\xab', + -0x7954: b'\x11\x86\xac', + -0x7953: b'\x11\x86\xad', + -0x7952: b'\x11\x86\xae', + -0x7951: b'\x11\x86\xaf', + -0x7950: b'\x11\x86\xb0', + -0x794f: b'\x11\x86\xb1', + -0x794e: b'\x11\x86\xb2', + -0x794d: b'\x11\x86\xb3', + -0x794c: b'\x11\x86\xb4', + -0x794b: b'\x11\x86\xb5', + -0x794a: b'\x11\x86\xb6', + -0x7949: b'\x11\x86\xb7', + -0x7948: b'\x11\x86\xb8', + -0x7947: b'\x11\x86\xb9', + -0x7946: b'\x11\x86\xba', + -0x7945: b'\x11\x86\xbb', + -0x7944: b'\x11\x86\xbc', + -0x7943: b'\x11\x86\xbd', + -0x7942: b'\x11\x86\xbe', + -0x7941: b'\x11\x86\xbf', + -0x7940: b'\x11\x86\xc0', + -0x793f: b'\x11\x86\xc1', + -0x793e: b'\x11\x86\xc2', + -0x793d: b'\x11\x86\xc3', + -0x793c: b'\x11\x86\xc4', + -0x793b: b'\x11\x86\xc5', + -0x793a: b'\x11\x86\xc6', + -0x7939: b'\x11\x86\xc7', + -0x7938: b'\x11\x86\xc8', + -0x7937: b'\x11\x86\xc9', + -0x7936: b'\x11\x86\xca', + -0x7935: b'\x11\x86\xcb', + -0x7934: b'\x11\x86\xcc', + -0x7933: b'\x11\x86\xcd', + -0x7932: b'\x11\x86\xce', + -0x7931: b'\x11\x86\xcf', + -0x7930: b'\x11\x86\xd0', + -0x792f: b'\x11\x86\xd1', + -0x792e: b'\x11\x86\xd2', + -0x792d: b'\x11\x86\xd3', + -0x792c: b'\x11\x86\xd4', + -0x792b: b'\x11\x86\xd5', + -0x792a: b'\x11\x86\xd6', + -0x7929: b'\x11\x86\xd7', + -0x7928: b'\x11\x86\xd8', + -0x7927: b'\x11\x86\xd9', + -0x7926: b'\x11\x86\xda', + -0x7925: b'\x11\x86\xdb', + -0x7924: b'\x11\x86\xdc', + -0x7923: b'\x11\x86\xdd', + -0x7922: b'\x11\x86\xde', + -0x7921: b'\x11\x86\xdf', + -0x7920: b'\x11\x86\xe0', + -0x791f: b'\x11\x86\xe1', + -0x791e: b'\x11\x86\xe2', + -0x791d: b'\x11\x86\xe3', + -0x791c: b'\x11\x86\xe4', + -0x791b: b'\x11\x86\xe5', + -0x791a: b'\x11\x86\xe6', + -0x7919: b'\x11\x86\xe7', + -0x7918: b'\x11\x86\xe8', + -0x7917: b'\x11\x86\xe9', + -0x7916: b'\x11\x86\xea', + -0x7915: b'\x11\x86\xeb', + -0x7914: b'\x11\x86\xec', + -0x7913: b'\x11\x86\xed', + -0x7912: b'\x11\x86\xee', + -0x7911: b'\x11\x86\xef', + -0x7910: b'\x11\x86\xf0', + -0x790f: b'\x11\x86\xf1', + -0x790e: b'\x11\x86\xf2', + -0x790d: b'\x11\x86\xf3', + -0x790c: b'\x11\x86\xf4', + -0x790b: b'\x11\x86\xf5', + -0x790a: b'\x11\x86\xf6', + -0x7909: b'\x11\x86\xf7', + -0x7908: b'\x11\x86\xf8', + -0x7907: b'\x11\x86\xf9', + -0x7906: b'\x11\x86\xfa', + -0x7905: b'\x11\x86\xfb', + -0x7904: b'\x11\x86\xfc', + -0x7903: b'\x11\x86\xfd', + -0x7902: b'\x11\x86\xfe', + -0x7901: b'\x11\x86\xff', + -0x7900: b'\x11\x87\x00', + -0x78ff: b'\x11\x87\x01', + -0x78fe: b'\x11\x87\x02', + -0x78fd: b'\x11\x87\x03', + -0x78fc: b'\x11\x87\x04', + -0x78fb: b'\x11\x87\x05', + -0x78fa: b'\x11\x87\x06', + -0x78f9: b'\x11\x87\x07', + -0x78f8: b'\x11\x87\x08', + -0x78f7: b'\x11\x87\t', + -0x78f6: b'\x11\x87\n', + -0x78f5: b'\x11\x87\x0b', + -0x78f4: b'\x11\x87\x0c', + -0x78f3: b'\x11\x87\r', + -0x78f2: b'\x11\x87\x0e', + -0x78f1: b'\x11\x87\x0f', + -0x78f0: b'\x11\x87\x10', + -0x78ef: b'\x11\x87\x11', + -0x78ee: b'\x11\x87\x12', + -0x78ed: b'\x11\x87\x13', + -0x78ec: b'\x11\x87\x14', + -0x78eb: b'\x11\x87\x15', + -0x78ea: b'\x11\x87\x16', + -0x78e9: b'\x11\x87\x17', + -0x78e8: b'\x11\x87\x18', + -0x78e7: b'\x11\x87\x19', + -0x78e6: b'\x11\x87\x1a', + -0x78e5: b'\x11\x87\x1b', + -0x78e4: b'\x11\x87\x1c', + -0x78e3: b'\x11\x87\x1d', + -0x78e2: b'\x11\x87\x1e', + -0x78e1: b'\x11\x87\x1f', + -0x78e0: b'\x11\x87 ', + -0x78df: b'\x11\x87!', + -0x78de: b'\x11\x87"', + -0x78dd: b'\x11\x87#', + -0x78dc: b'\x11\x87$', + -0x78db: b'\x11\x87%', + -0x78da: b'\x11\x87&', + -0x78d9: b"\x11\x87'", + -0x78d8: b'\x11\x87(', + -0x78d7: b'\x11\x87)', + -0x78d6: b'\x11\x87*', + -0x78d5: b'\x11\x87+', + -0x78d4: b'\x11\x87,', + -0x78d3: b'\x11\x87-', + -0x78d2: b'\x11\x87.', + -0x78d1: b'\x11\x87/', + -0x78d0: b'\x11\x870', + -0x78cf: b'\x11\x871', + -0x78ce: b'\x11\x872', + -0x78cd: b'\x11\x873', + -0x78cc: b'\x11\x874', + -0x78cb: b'\x11\x875', + -0x78ca: b'\x11\x876', + -0x78c9: b'\x11\x877', + -0x78c8: b'\x11\x878', + -0x78c7: b'\x11\x879', + -0x78c6: b'\x11\x87:', + -0x78c5: b'\x11\x87;', + -0x78c4: b'\x11\x87<', + -0x78c3: b'\x11\x87=', + -0x78c2: b'\x11\x87>', + -0x78c1: b'\x11\x87?', + -0x78c0: b'\x11\x87@', + -0x78bf: b'\x11\x87A', + -0x78be: b'\x11\x87B', + -0x78bd: b'\x11\x87C', + -0x78bc: b'\x11\x87D', + -0x78bb: b'\x11\x87E', + -0x78ba: b'\x11\x87F', + -0x78b9: b'\x11\x87G', + -0x78b8: b'\x11\x87H', + -0x78b7: b'\x11\x87I', + -0x78b6: b'\x11\x87J', + -0x78b5: b'\x11\x87K', + -0x78b4: b'\x11\x87L', + -0x78b3: b'\x11\x87M', + -0x78b2: b'\x11\x87N', + -0x78b1: b'\x11\x87O', + -0x78b0: b'\x11\x87P', + -0x78af: b'\x11\x87Q', + -0x78ae: b'\x11\x87R', + -0x78ad: b'\x11\x87S', + -0x78ac: b'\x11\x87T', + -0x78ab: b'\x11\x87U', + -0x78aa: b'\x11\x87V', + -0x78a9: b'\x11\x87W', + -0x78a8: b'\x11\x87X', + -0x78a7: b'\x11\x87Y', + -0x78a6: b'\x11\x87Z', + -0x78a5: b'\x11\x87[', + -0x78a4: b'\x11\x87\\', + -0x78a3: b'\x11\x87]', + -0x78a2: b'\x11\x87^', + -0x78a1: b'\x11\x87_', + -0x78a0: b'\x11\x87`', + -0x789f: b'\x11\x87a', + -0x789e: b'\x11\x87b', + -0x789d: b'\x11\x87c', + -0x789c: b'\x11\x87d', + -0x789b: b'\x11\x87e', + -0x789a: b'\x11\x87f', + -0x7899: b'\x11\x87g', + -0x7898: b'\x11\x87h', + -0x7897: b'\x11\x87i', + -0x7896: b'\x11\x87j', + -0x7895: b'\x11\x87k', + -0x7894: b'\x11\x87l', + -0x7893: b'\x11\x87m', + -0x7892: b'\x11\x87n', + -0x7891: b'\x11\x87o', + -0x7890: b'\x11\x87p', + -0x788f: b'\x11\x87q', + -0x788e: b'\x11\x87r', + -0x788d: b'\x11\x87s', + -0x788c: b'\x11\x87t', + -0x788b: b'\x11\x87u', + -0x788a: b'\x11\x87v', + -0x7889: b'\x11\x87w', + -0x7888: b'\x11\x87x', + -0x7887: b'\x11\x87y', + -0x7886: b'\x11\x87z', + -0x7885: b'\x11\x87{', + -0x7884: b'\x11\x87|', + -0x7883: b'\x11\x87}', + -0x7882: b'\x11\x87~', + -0x7881: b'\x11\x87\x7f', + -0x7880: b'\x11\x87\x80', + -0x787f: b'\x11\x87\x81', + -0x787e: b'\x11\x87\x82', + -0x787d: b'\x11\x87\x83', + -0x787c: b'\x11\x87\x84', + -0x787b: b'\x11\x87\x85', + -0x787a: b'\x11\x87\x86', + -0x7879: b'\x11\x87\x87', + -0x7878: b'\x11\x87\x88', + -0x7877: b'\x11\x87\x89', + -0x7876: b'\x11\x87\x8a', + -0x7875: b'\x11\x87\x8b', + -0x7874: b'\x11\x87\x8c', + -0x7873: b'\x11\x87\x8d', + -0x7872: b'\x11\x87\x8e', + -0x7871: b'\x11\x87\x8f', + -0x7870: b'\x11\x87\x90', + -0x786f: b'\x11\x87\x91', + -0x786e: b'\x11\x87\x92', + -0x786d: b'\x11\x87\x93', + -0x786c: b'\x11\x87\x94', + -0x786b: b'\x11\x87\x95', + -0x786a: b'\x11\x87\x96', + -0x7869: b'\x11\x87\x97', + -0x7868: b'\x11\x87\x98', + -0x7867: b'\x11\x87\x99', + -0x7866: b'\x11\x87\x9a', + -0x7865: b'\x11\x87\x9b', + -0x7864: b'\x11\x87\x9c', + -0x7863: b'\x11\x87\x9d', + -0x7862: b'\x11\x87\x9e', + -0x7861: b'\x11\x87\x9f', + -0x7860: b'\x11\x87\xa0', + -0x785f: b'\x11\x87\xa1', + -0x785e: b'\x11\x87\xa2', + -0x785d: b'\x11\x87\xa3', + -0x785c: b'\x11\x87\xa4', + -0x785b: b'\x11\x87\xa5', + -0x785a: b'\x11\x87\xa6', + -0x7859: b'\x11\x87\xa7', + -0x7858: b'\x11\x87\xa8', + -0x7857: b'\x11\x87\xa9', + -0x7856: b'\x11\x87\xaa', + -0x7855: b'\x11\x87\xab', + -0x7854: b'\x11\x87\xac', + -0x7853: b'\x11\x87\xad', + -0x7852: b'\x11\x87\xae', + -0x7851: b'\x11\x87\xaf', + -0x7850: b'\x11\x87\xb0', + -0x784f: b'\x11\x87\xb1', + -0x784e: b'\x11\x87\xb2', + -0x784d: b'\x11\x87\xb3', + -0x784c: b'\x11\x87\xb4', + -0x784b: b'\x11\x87\xb5', + -0x784a: b'\x11\x87\xb6', + -0x7849: b'\x11\x87\xb7', + -0x7848: b'\x11\x87\xb8', + -0x7847: b'\x11\x87\xb9', + -0x7846: b'\x11\x87\xba', + -0x7845: b'\x11\x87\xbb', + -0x7844: b'\x11\x87\xbc', + -0x7843: b'\x11\x87\xbd', + -0x7842: b'\x11\x87\xbe', + -0x7841: b'\x11\x87\xbf', + -0x7840: b'\x11\x87\xc0', + -0x783f: b'\x11\x87\xc1', + -0x783e: b'\x11\x87\xc2', + -0x783d: b'\x11\x87\xc3', + -0x783c: b'\x11\x87\xc4', + -0x783b: b'\x11\x87\xc5', + -0x783a: b'\x11\x87\xc6', + -0x7839: b'\x11\x87\xc7', + -0x7838: b'\x11\x87\xc8', + -0x7837: b'\x11\x87\xc9', + -0x7836: b'\x11\x87\xca', + -0x7835: b'\x11\x87\xcb', + -0x7834: b'\x11\x87\xcc', + -0x7833: b'\x11\x87\xcd', + -0x7832: b'\x11\x87\xce', + -0x7831: b'\x11\x87\xcf', + -0x7830: b'\x11\x87\xd0', + -0x782f: b'\x11\x87\xd1', + -0x782e: b'\x11\x87\xd2', + -0x782d: b'\x11\x87\xd3', + -0x782c: b'\x11\x87\xd4', + -0x782b: b'\x11\x87\xd5', + -0x782a: b'\x11\x87\xd6', + -0x7829: b'\x11\x87\xd7', + -0x7828: b'\x11\x87\xd8', + -0x7827: b'\x11\x87\xd9', + -0x7826: b'\x11\x87\xda', + -0x7825: b'\x11\x87\xdb', + -0x7824: b'\x11\x87\xdc', + -0x7823: b'\x11\x87\xdd', + -0x7822: b'\x11\x87\xde', + -0x7821: b'\x11\x87\xdf', + -0x7820: b'\x11\x87\xe0', + -0x781f: b'\x11\x87\xe1', + -0x781e: b'\x11\x87\xe2', + -0x781d: b'\x11\x87\xe3', + -0x781c: b'\x11\x87\xe4', + -0x781b: b'\x11\x87\xe5', + -0x781a: b'\x11\x87\xe6', + -0x7819: b'\x11\x87\xe7', + -0x7818: b'\x11\x87\xe8', + -0x7817: b'\x11\x87\xe9', + -0x7816: b'\x11\x87\xea', + -0x7815: b'\x11\x87\xeb', + -0x7814: b'\x11\x87\xec', + -0x7813: b'\x11\x87\xed', + -0x7812: b'\x11\x87\xee', + -0x7811: b'\x11\x87\xef', + -0x7810: b'\x11\x87\xf0', + -0x780f: b'\x11\x87\xf1', + -0x780e: b'\x11\x87\xf2', + -0x780d: b'\x11\x87\xf3', + -0x780c: b'\x11\x87\xf4', + -0x780b: b'\x11\x87\xf5', + -0x780a: b'\x11\x87\xf6', + -0x7809: b'\x11\x87\xf7', + -0x7808: b'\x11\x87\xf8', + -0x7807: b'\x11\x87\xf9', + -0x7806: b'\x11\x87\xfa', + -0x7805: b'\x11\x87\xfb', + -0x7804: b'\x11\x87\xfc', + -0x7803: b'\x11\x87\xfd', + -0x7802: b'\x11\x87\xfe', + -0x7801: b'\x11\x87\xff', + -0x7800: b'\x11\x88\x00', + -0x77ff: b'\x11\x88\x01', + -0x77fe: b'\x11\x88\x02', + -0x77fd: b'\x11\x88\x03', + -0x77fc: b'\x11\x88\x04', + -0x77fb: b'\x11\x88\x05', + -0x77fa: b'\x11\x88\x06', + -0x77f9: b'\x11\x88\x07', + -0x77f8: b'\x11\x88\x08', + -0x77f7: b'\x11\x88\t', + -0x77f6: b'\x11\x88\n', + -0x77f5: b'\x11\x88\x0b', + -0x77f4: b'\x11\x88\x0c', + -0x77f3: b'\x11\x88\r', + -0x77f2: b'\x11\x88\x0e', + -0x77f1: b'\x11\x88\x0f', + -0x77f0: b'\x11\x88\x10', + -0x77ef: b'\x11\x88\x11', + -0x77ee: b'\x11\x88\x12', + -0x77ed: b'\x11\x88\x13', + -0x77ec: b'\x11\x88\x14', + -0x77eb: b'\x11\x88\x15', + -0x77ea: b'\x11\x88\x16', + -0x77e9: b'\x11\x88\x17', + -0x77e8: b'\x11\x88\x18', + -0x77e7: b'\x11\x88\x19', + -0x77e6: b'\x11\x88\x1a', + -0x77e5: b'\x11\x88\x1b', + -0x77e4: b'\x11\x88\x1c', + -0x77e3: b'\x11\x88\x1d', + -0x77e2: b'\x11\x88\x1e', + -0x77e1: b'\x11\x88\x1f', + -0x77e0: b'\x11\x88 ', + -0x77df: b'\x11\x88!', + -0x77de: b'\x11\x88"', + -0x77dd: b'\x11\x88#', + -0x77dc: b'\x11\x88$', + -0x77db: b'\x11\x88%', + -0x77da: b'\x11\x88&', + -0x77d9: b"\x11\x88'", + -0x77d8: b'\x11\x88(', + -0x77d7: b'\x11\x88)', + -0x77d6: b'\x11\x88*', + -0x77d5: b'\x11\x88+', + -0x77d4: b'\x11\x88,', + -0x77d3: b'\x11\x88-', + -0x77d2: b'\x11\x88.', + -0x77d1: b'\x11\x88/', + -0x77d0: b'\x11\x880', + -0x77cf: b'\x11\x881', + -0x77ce: b'\x11\x882', + -0x77cd: b'\x11\x883', + -0x77cc: b'\x11\x884', + -0x77cb: b'\x11\x885', + -0x77ca: b'\x11\x886', + -0x77c9: b'\x11\x887', + -0x77c8: b'\x11\x888', + -0x77c7: b'\x11\x889', + -0x77c6: b'\x11\x88:', + -0x77c5: b'\x11\x88;', + -0x77c4: b'\x11\x88<', + -0x77c3: b'\x11\x88=', + -0x77c2: b'\x11\x88>', + -0x77c1: b'\x11\x88?', + -0x77c0: b'\x11\x88@', + -0x77bf: b'\x11\x88A', + -0x77be: b'\x11\x88B', + -0x77bd: b'\x11\x88C', + -0x77bc: b'\x11\x88D', + -0x77bb: b'\x11\x88E', + -0x77ba: b'\x11\x88F', + -0x77b9: b'\x11\x88G', + -0x77b8: b'\x11\x88H', + -0x77b7: b'\x11\x88I', + -0x77b6: b'\x11\x88J', + -0x77b5: b'\x11\x88K', + -0x77b4: b'\x11\x88L', + -0x77b3: b'\x11\x88M', + -0x77b2: b'\x11\x88N', + -0x77b1: b'\x11\x88O', + -0x77b0: b'\x11\x88P', + -0x77af: b'\x11\x88Q', + -0x77ae: b'\x11\x88R', + -0x77ad: b'\x11\x88S', + -0x77ac: b'\x11\x88T', + -0x77ab: b'\x11\x88U', + -0x77aa: b'\x11\x88V', + -0x77a9: b'\x11\x88W', + -0x77a8: b'\x11\x88X', + -0x77a7: b'\x11\x88Y', + -0x77a6: b'\x11\x88Z', + -0x77a5: b'\x11\x88[', + -0x77a4: b'\x11\x88\\', + -0x77a3: b'\x11\x88]', + -0x77a2: b'\x11\x88^', + -0x77a1: b'\x11\x88_', + -0x77a0: b'\x11\x88`', + -0x779f: b'\x11\x88a', + -0x779e: b'\x11\x88b', + -0x779d: b'\x11\x88c', + -0x779c: b'\x11\x88d', + -0x779b: b'\x11\x88e', + -0x779a: b'\x11\x88f', + -0x7799: b'\x11\x88g', + -0x7798: b'\x11\x88h', + -0x7797: b'\x11\x88i', + -0x7796: b'\x11\x88j', + -0x7795: b'\x11\x88k', + -0x7794: b'\x11\x88l', + -0x7793: b'\x11\x88m', + -0x7792: b'\x11\x88n', + -0x7791: b'\x11\x88o', + -0x7790: b'\x11\x88p', + -0x778f: b'\x11\x88q', + -0x778e: b'\x11\x88r', + -0x778d: b'\x11\x88s', + -0x778c: b'\x11\x88t', + -0x778b: b'\x11\x88u', + -0x778a: b'\x11\x88v', + -0x7789: b'\x11\x88w', + -0x7788: b'\x11\x88x', + -0x7787: b'\x11\x88y', + -0x7786: b'\x11\x88z', + -0x7785: b'\x11\x88{', + -0x7784: b'\x11\x88|', + -0x7783: b'\x11\x88}', + -0x7782: b'\x11\x88~', + -0x7781: b'\x11\x88\x7f', + -0x7780: b'\x11\x88\x80', + -0x777f: b'\x11\x88\x81', + -0x777e: b'\x11\x88\x82', + -0x777d: b'\x11\x88\x83', + -0x777c: b'\x11\x88\x84', + -0x777b: b'\x11\x88\x85', + -0x777a: b'\x11\x88\x86', + -0x7779: b'\x11\x88\x87', + -0x7778: b'\x11\x88\x88', + -0x7777: b'\x11\x88\x89', + -0x7776: b'\x11\x88\x8a', + -0x7775: b'\x11\x88\x8b', + -0x7774: b'\x11\x88\x8c', + -0x7773: b'\x11\x88\x8d', + -0x7772: b'\x11\x88\x8e', + -0x7771: b'\x11\x88\x8f', + -0x7770: b'\x11\x88\x90', + -0x776f: b'\x11\x88\x91', + -0x776e: b'\x11\x88\x92', + -0x776d: b'\x11\x88\x93', + -0x776c: b'\x11\x88\x94', + -0x776b: b'\x11\x88\x95', + -0x776a: b'\x11\x88\x96', + -0x7769: b'\x11\x88\x97', + -0x7768: b'\x11\x88\x98', + -0x7767: b'\x11\x88\x99', + -0x7766: b'\x11\x88\x9a', + -0x7765: b'\x11\x88\x9b', + -0x7764: b'\x11\x88\x9c', + -0x7763: b'\x11\x88\x9d', + -0x7762: b'\x11\x88\x9e', + -0x7761: b'\x11\x88\x9f', + -0x7760: b'\x11\x88\xa0', + -0x775f: b'\x11\x88\xa1', + -0x775e: b'\x11\x88\xa2', + -0x775d: b'\x11\x88\xa3', + -0x775c: b'\x11\x88\xa4', + -0x775b: b'\x11\x88\xa5', + -0x775a: b'\x11\x88\xa6', + -0x7759: b'\x11\x88\xa7', + -0x7758: b'\x11\x88\xa8', + -0x7757: b'\x11\x88\xa9', + -0x7756: b'\x11\x88\xaa', + -0x7755: b'\x11\x88\xab', + -0x7754: b'\x11\x88\xac', + -0x7753: b'\x11\x88\xad', + -0x7752: b'\x11\x88\xae', + -0x7751: b'\x11\x88\xaf', + -0x7750: b'\x11\x88\xb0', + -0x774f: b'\x11\x88\xb1', + -0x774e: b'\x11\x88\xb2', + -0x774d: b'\x11\x88\xb3', + -0x774c: b'\x11\x88\xb4', + -0x774b: b'\x11\x88\xb5', + -0x774a: b'\x11\x88\xb6', + -0x7749: b'\x11\x88\xb7', + -0x7748: b'\x11\x88\xb8', + -0x7747: b'\x11\x88\xb9', + -0x7746: b'\x11\x88\xba', + -0x7745: b'\x11\x88\xbb', + -0x7744: b'\x11\x88\xbc', + -0x7743: b'\x11\x88\xbd', + -0x7742: b'\x11\x88\xbe', + -0x7741: b'\x11\x88\xbf', + -0x7740: b'\x11\x88\xc0', + -0x773f: b'\x11\x88\xc1', + -0x773e: b'\x11\x88\xc2', + -0x773d: b'\x11\x88\xc3', + -0x773c: b'\x11\x88\xc4', + -0x773b: b'\x11\x88\xc5', + -0x773a: b'\x11\x88\xc6', + -0x7739: b'\x11\x88\xc7', + -0x7738: b'\x11\x88\xc8', + -0x7737: b'\x11\x88\xc9', + -0x7736: b'\x11\x88\xca', + -0x7735: b'\x11\x88\xcb', + -0x7734: b'\x11\x88\xcc', + -0x7733: b'\x11\x88\xcd', + -0x7732: b'\x11\x88\xce', + -0x7731: b'\x11\x88\xcf', + -0x7730: b'\x11\x88\xd0', + -0x772f: b'\x11\x88\xd1', + -0x772e: b'\x11\x88\xd2', + -0x772d: b'\x11\x88\xd3', + -0x772c: b'\x11\x88\xd4', + -0x772b: b'\x11\x88\xd5', + -0x772a: b'\x11\x88\xd6', + -0x7729: b'\x11\x88\xd7', + -0x7728: b'\x11\x88\xd8', + -0x7727: b'\x11\x88\xd9', + -0x7726: b'\x11\x88\xda', + -0x7725: b'\x11\x88\xdb', + -0x7724: b'\x11\x88\xdc', + -0x7723: b'\x11\x88\xdd', + -0x7722: b'\x11\x88\xde', + -0x7721: b'\x11\x88\xdf', + -0x7720: b'\x11\x88\xe0', + -0x771f: b'\x11\x88\xe1', + -0x771e: b'\x11\x88\xe2', + -0x771d: b'\x11\x88\xe3', + -0x771c: b'\x11\x88\xe4', + -0x771b: b'\x11\x88\xe5', + -0x771a: b'\x11\x88\xe6', + -0x7719: b'\x11\x88\xe7', + -0x7718: b'\x11\x88\xe8', + -0x7717: b'\x11\x88\xe9', + -0x7716: b'\x11\x88\xea', + -0x7715: b'\x11\x88\xeb', + -0x7714: b'\x11\x88\xec', + -0x7713: b'\x11\x88\xed', + -0x7712: b'\x11\x88\xee', + -0x7711: b'\x11\x88\xef', + -0x7710: b'\x11\x88\xf0', + -0x770f: b'\x11\x88\xf1', + -0x770e: b'\x11\x88\xf2', + -0x770d: b'\x11\x88\xf3', + -0x770c: b'\x11\x88\xf4', + -0x770b: b'\x11\x88\xf5', + -0x770a: b'\x11\x88\xf6', + -0x7709: b'\x11\x88\xf7', + -0x7708: b'\x11\x88\xf8', + -0x7707: b'\x11\x88\xf9', + -0x7706: b'\x11\x88\xfa', + -0x7705: b'\x11\x88\xfb', + -0x7704: b'\x11\x88\xfc', + -0x7703: b'\x11\x88\xfd', + -0x7702: b'\x11\x88\xfe', + -0x7701: b'\x11\x88\xff', + -0x7700: b'\x11\x89\x00', + -0x76ff: b'\x11\x89\x01', + -0x76fe: b'\x11\x89\x02', + -0x76fd: b'\x11\x89\x03', + -0x76fc: b'\x11\x89\x04', + -0x76fb: b'\x11\x89\x05', + -0x76fa: b'\x11\x89\x06', + -0x76f9: b'\x11\x89\x07', + -0x76f8: b'\x11\x89\x08', + -0x76f7: b'\x11\x89\t', + -0x76f6: b'\x11\x89\n', + -0x76f5: b'\x11\x89\x0b', + -0x76f4: b'\x11\x89\x0c', + -0x76f3: b'\x11\x89\r', + -0x76f2: b'\x11\x89\x0e', + -0x76f1: b'\x11\x89\x0f', + -0x76f0: b'\x11\x89\x10', + -0x76ef: b'\x11\x89\x11', + -0x76ee: b'\x11\x89\x12', + -0x76ed: b'\x11\x89\x13', + -0x76ec: b'\x11\x89\x14', + -0x76eb: b'\x11\x89\x15', + -0x76ea: b'\x11\x89\x16', + -0x76e9: b'\x11\x89\x17', + -0x76e8: b'\x11\x89\x18', + -0x76e7: b'\x11\x89\x19', + -0x76e6: b'\x11\x89\x1a', + -0x76e5: b'\x11\x89\x1b', + -0x76e4: b'\x11\x89\x1c', + -0x76e3: b'\x11\x89\x1d', + -0x76e2: b'\x11\x89\x1e', + -0x76e1: b'\x11\x89\x1f', + -0x76e0: b'\x11\x89 ', + -0x76df: b'\x11\x89!', + -0x76de: b'\x11\x89"', + -0x76dd: b'\x11\x89#', + -0x76dc: b'\x11\x89$', + -0x76db: b'\x11\x89%', + -0x76da: b'\x11\x89&', + -0x76d9: b"\x11\x89'", + -0x76d8: b'\x11\x89(', + -0x76d7: b'\x11\x89)', + -0x76d6: b'\x11\x89*', + -0x76d5: b'\x11\x89+', + -0x76d4: b'\x11\x89,', + -0x76d3: b'\x11\x89-', + -0x76d2: b'\x11\x89.', + -0x76d1: b'\x11\x89/', + -0x76d0: b'\x11\x890', + -0x76cf: b'\x11\x891', + -0x76ce: b'\x11\x892', + -0x76cd: b'\x11\x893', + -0x76cc: b'\x11\x894', + -0x76cb: b'\x11\x895', + -0x76ca: b'\x11\x896', + -0x76c9: b'\x11\x897', + -0x76c8: b'\x11\x898', + -0x76c7: b'\x11\x899', + -0x76c6: b'\x11\x89:', + -0x76c5: b'\x11\x89;', + -0x76c4: b'\x11\x89<', + -0x76c3: b'\x11\x89=', + -0x76c2: b'\x11\x89>', + -0x76c1: b'\x11\x89?', + -0x76c0: b'\x11\x89@', + -0x76bf: b'\x11\x89A', + -0x76be: b'\x11\x89B', + -0x76bd: b'\x11\x89C', + -0x76bc: b'\x11\x89D', + -0x76bb: b'\x11\x89E', + -0x76ba: b'\x11\x89F', + -0x76b9: b'\x11\x89G', + -0x76b8: b'\x11\x89H', + -0x76b7: b'\x11\x89I', + -0x76b6: b'\x11\x89J', + -0x76b5: b'\x11\x89K', + -0x76b4: b'\x11\x89L', + -0x76b3: b'\x11\x89M', + -0x76b2: b'\x11\x89N', + -0x76b1: b'\x11\x89O', + -0x76b0: b'\x11\x89P', + -0x76af: b'\x11\x89Q', + -0x76ae: b'\x11\x89R', + -0x76ad: b'\x11\x89S', + -0x76ac: b'\x11\x89T', + -0x76ab: b'\x11\x89U', + -0x76aa: b'\x11\x89V', + -0x76a9: b'\x11\x89W', + -0x76a8: b'\x11\x89X', + -0x76a7: b'\x11\x89Y', + -0x76a6: b'\x11\x89Z', + -0x76a5: b'\x11\x89[', + -0x76a4: b'\x11\x89\\', + -0x76a3: b'\x11\x89]', + -0x76a2: b'\x11\x89^', + -0x76a1: b'\x11\x89_', + -0x76a0: b'\x11\x89`', + -0x769f: b'\x11\x89a', + -0x769e: b'\x11\x89b', + -0x769d: b'\x11\x89c', + -0x769c: b'\x11\x89d', + -0x769b: b'\x11\x89e', + -0x769a: b'\x11\x89f', + -0x7699: b'\x11\x89g', + -0x7698: b'\x11\x89h', + -0x7697: b'\x11\x89i', + -0x7696: b'\x11\x89j', + -0x7695: b'\x11\x89k', + -0x7694: b'\x11\x89l', + -0x7693: b'\x11\x89m', + -0x7692: b'\x11\x89n', + -0x7691: b'\x11\x89o', + -0x7690: b'\x11\x89p', + -0x768f: b'\x11\x89q', + -0x768e: b'\x11\x89r', + -0x768d: b'\x11\x89s', + -0x768c: b'\x11\x89t', + -0x768b: b'\x11\x89u', + -0x768a: b'\x11\x89v', + -0x7689: b'\x11\x89w', + -0x7688: b'\x11\x89x', + -0x7687: b'\x11\x89y', + -0x7686: b'\x11\x89z', + -0x7685: b'\x11\x89{', + -0x7684: b'\x11\x89|', + -0x7683: b'\x11\x89}', + -0x7682: b'\x11\x89~', + -0x7681: b'\x11\x89\x7f', + -0x7680: b'\x11\x89\x80', + -0x767f: b'\x11\x89\x81', + -0x767e: b'\x11\x89\x82', + -0x767d: b'\x11\x89\x83', + -0x767c: b'\x11\x89\x84', + -0x767b: b'\x11\x89\x85', + -0x767a: b'\x11\x89\x86', + -0x7679: b'\x11\x89\x87', + -0x7678: b'\x11\x89\x88', + -0x7677: b'\x11\x89\x89', + -0x7676: b'\x11\x89\x8a', + -0x7675: b'\x11\x89\x8b', + -0x7674: b'\x11\x89\x8c', + -0x7673: b'\x11\x89\x8d', + -0x7672: b'\x11\x89\x8e', + -0x7671: b'\x11\x89\x8f', + -0x7670: b'\x11\x89\x90', + -0x766f: b'\x11\x89\x91', + -0x766e: b'\x11\x89\x92', + -0x766d: b'\x11\x89\x93', + -0x766c: b'\x11\x89\x94', + -0x766b: b'\x11\x89\x95', + -0x766a: b'\x11\x89\x96', + -0x7669: b'\x11\x89\x97', + -0x7668: b'\x11\x89\x98', + -0x7667: b'\x11\x89\x99', + -0x7666: b'\x11\x89\x9a', + -0x7665: b'\x11\x89\x9b', + -0x7664: b'\x11\x89\x9c', + -0x7663: b'\x11\x89\x9d', + -0x7662: b'\x11\x89\x9e', + -0x7661: b'\x11\x89\x9f', + -0x7660: b'\x11\x89\xa0', + -0x765f: b'\x11\x89\xa1', + -0x765e: b'\x11\x89\xa2', + -0x765d: b'\x11\x89\xa3', + -0x765c: b'\x11\x89\xa4', + -0x765b: b'\x11\x89\xa5', + -0x765a: b'\x11\x89\xa6', + -0x7659: b'\x11\x89\xa7', + -0x7658: b'\x11\x89\xa8', + -0x7657: b'\x11\x89\xa9', + -0x7656: b'\x11\x89\xaa', + -0x7655: b'\x11\x89\xab', + -0x7654: b'\x11\x89\xac', + -0x7653: b'\x11\x89\xad', + -0x7652: b'\x11\x89\xae', + -0x7651: b'\x11\x89\xaf', + -0x7650: b'\x11\x89\xb0', + -0x764f: b'\x11\x89\xb1', + -0x764e: b'\x11\x89\xb2', + -0x764d: b'\x11\x89\xb3', + -0x764c: b'\x11\x89\xb4', + -0x764b: b'\x11\x89\xb5', + -0x764a: b'\x11\x89\xb6', + -0x7649: b'\x11\x89\xb7', + -0x7648: b'\x11\x89\xb8', + -0x7647: b'\x11\x89\xb9', + -0x7646: b'\x11\x89\xba', + -0x7645: b'\x11\x89\xbb', + -0x7644: b'\x11\x89\xbc', + -0x7643: b'\x11\x89\xbd', + -0x7642: b'\x11\x89\xbe', + -0x7641: b'\x11\x89\xbf', + -0x7640: b'\x11\x89\xc0', + -0x763f: b'\x11\x89\xc1', + -0x763e: b'\x11\x89\xc2', + -0x763d: b'\x11\x89\xc3', + -0x763c: b'\x11\x89\xc4', + -0x763b: b'\x11\x89\xc5', + -0x763a: b'\x11\x89\xc6', + -0x7639: b'\x11\x89\xc7', + -0x7638: b'\x11\x89\xc8', + -0x7637: b'\x11\x89\xc9', + -0x7636: b'\x11\x89\xca', + -0x7635: b'\x11\x89\xcb', + -0x7634: b'\x11\x89\xcc', + -0x7633: b'\x11\x89\xcd', + -0x7632: b'\x11\x89\xce', + -0x7631: b'\x11\x89\xcf', + -0x7630: b'\x11\x89\xd0', + -0x762f: b'\x11\x89\xd1', + -0x762e: b'\x11\x89\xd2', + -0x762d: b'\x11\x89\xd3', + -0x762c: b'\x11\x89\xd4', + -0x762b: b'\x11\x89\xd5', + -0x762a: b'\x11\x89\xd6', + -0x7629: b'\x11\x89\xd7', + -0x7628: b'\x11\x89\xd8', + -0x7627: b'\x11\x89\xd9', + -0x7626: b'\x11\x89\xda', + -0x7625: b'\x11\x89\xdb', + -0x7624: b'\x11\x89\xdc', + -0x7623: b'\x11\x89\xdd', + -0x7622: b'\x11\x89\xde', + -0x7621: b'\x11\x89\xdf', + -0x7620: b'\x11\x89\xe0', + -0x761f: b'\x11\x89\xe1', + -0x761e: b'\x11\x89\xe2', + -0x761d: b'\x11\x89\xe3', + -0x761c: b'\x11\x89\xe4', + -0x761b: b'\x11\x89\xe5', + -0x761a: b'\x11\x89\xe6', + -0x7619: b'\x11\x89\xe7', + -0x7618: b'\x11\x89\xe8', + -0x7617: b'\x11\x89\xe9', + -0x7616: b'\x11\x89\xea', + -0x7615: b'\x11\x89\xeb', + -0x7614: b'\x11\x89\xec', + -0x7613: b'\x11\x89\xed', + -0x7612: b'\x11\x89\xee', + -0x7611: b'\x11\x89\xef', + -0x7610: b'\x11\x89\xf0', + -0x760f: b'\x11\x89\xf1', + -0x760e: b'\x11\x89\xf2', + -0x760d: b'\x11\x89\xf3', + -0x760c: b'\x11\x89\xf4', + -0x760b: b'\x11\x89\xf5', + -0x760a: b'\x11\x89\xf6', + -0x7609: b'\x11\x89\xf7', + -0x7608: b'\x11\x89\xf8', + -0x7607: b'\x11\x89\xf9', + -0x7606: b'\x11\x89\xfa', + -0x7605: b'\x11\x89\xfb', + -0x7604: b'\x11\x89\xfc', + -0x7603: b'\x11\x89\xfd', + -0x7602: b'\x11\x89\xfe', + -0x7601: b'\x11\x89\xff', + -0x7600: b'\x11\x8a\x00', + -0x75ff: b'\x11\x8a\x01', + -0x75fe: b'\x11\x8a\x02', + -0x75fd: b'\x11\x8a\x03', + -0x75fc: b'\x11\x8a\x04', + -0x75fb: b'\x11\x8a\x05', + -0x75fa: b'\x11\x8a\x06', + -0x75f9: b'\x11\x8a\x07', + -0x75f8: b'\x11\x8a\x08', + -0x75f7: b'\x11\x8a\t', + -0x75f6: b'\x11\x8a\n', + -0x75f5: b'\x11\x8a\x0b', + -0x75f4: b'\x11\x8a\x0c', + -0x75f3: b'\x11\x8a\r', + -0x75f2: b'\x11\x8a\x0e', + -0x75f1: b'\x11\x8a\x0f', + -0x75f0: b'\x11\x8a\x10', + -0x75ef: b'\x11\x8a\x11', + -0x75ee: b'\x11\x8a\x12', + -0x75ed: b'\x11\x8a\x13', + -0x75ec: b'\x11\x8a\x14', + -0x75eb: b'\x11\x8a\x15', + -0x75ea: b'\x11\x8a\x16', + -0x75e9: b'\x11\x8a\x17', + -0x75e8: b'\x11\x8a\x18', + -0x75e7: b'\x11\x8a\x19', + -0x75e6: b'\x11\x8a\x1a', + -0x75e5: b'\x11\x8a\x1b', + -0x75e4: b'\x11\x8a\x1c', + -0x75e3: b'\x11\x8a\x1d', + -0x75e2: b'\x11\x8a\x1e', + -0x75e1: b'\x11\x8a\x1f', + -0x75e0: b'\x11\x8a ', + -0x75df: b'\x11\x8a!', + -0x75de: b'\x11\x8a"', + -0x75dd: b'\x11\x8a#', + -0x75dc: b'\x11\x8a$', + -0x75db: b'\x11\x8a%', + -0x75da: b'\x11\x8a&', + -0x75d9: b"\x11\x8a'", + -0x75d8: b'\x11\x8a(', + -0x75d7: b'\x11\x8a)', + -0x75d6: b'\x11\x8a*', + -0x75d5: b'\x11\x8a+', + -0x75d4: b'\x11\x8a,', + -0x75d3: b'\x11\x8a-', + -0x75d2: b'\x11\x8a.', + -0x75d1: b'\x11\x8a/', + -0x75d0: b'\x11\x8a0', + -0x75cf: b'\x11\x8a1', + -0x75ce: b'\x11\x8a2', + -0x75cd: b'\x11\x8a3', + -0x75cc: b'\x11\x8a4', + -0x75cb: b'\x11\x8a5', + -0x75ca: b'\x11\x8a6', + -0x75c9: b'\x11\x8a7', + -0x75c8: b'\x11\x8a8', + -0x75c7: b'\x11\x8a9', + -0x75c6: b'\x11\x8a:', + -0x75c5: b'\x11\x8a;', + -0x75c4: b'\x11\x8a<', + -0x75c3: b'\x11\x8a=', + -0x75c2: b'\x11\x8a>', + -0x75c1: b'\x11\x8a?', + -0x75c0: b'\x11\x8a@', + -0x75bf: b'\x11\x8aA', + -0x75be: b'\x11\x8aB', + -0x75bd: b'\x11\x8aC', + -0x75bc: b'\x11\x8aD', + -0x75bb: b'\x11\x8aE', + -0x75ba: b'\x11\x8aF', + -0x75b9: b'\x11\x8aG', + -0x75b8: b'\x11\x8aH', + -0x75b7: b'\x11\x8aI', + -0x75b6: b'\x11\x8aJ', + -0x75b5: b'\x11\x8aK', + -0x75b4: b'\x11\x8aL', + -0x75b3: b'\x11\x8aM', + -0x75b2: b'\x11\x8aN', + -0x75b1: b'\x11\x8aO', + -0x75b0: b'\x11\x8aP', + -0x75af: b'\x11\x8aQ', + -0x75ae: b'\x11\x8aR', + -0x75ad: b'\x11\x8aS', + -0x75ac: b'\x11\x8aT', + -0x75ab: b'\x11\x8aU', + -0x75aa: b'\x11\x8aV', + -0x75a9: b'\x11\x8aW', + -0x75a8: b'\x11\x8aX', + -0x75a7: b'\x11\x8aY', + -0x75a6: b'\x11\x8aZ', + -0x75a5: b'\x11\x8a[', + -0x75a4: b'\x11\x8a\\', + -0x75a3: b'\x11\x8a]', + -0x75a2: b'\x11\x8a^', + -0x75a1: b'\x11\x8a_', + -0x75a0: b'\x11\x8a`', + -0x759f: b'\x11\x8aa', + -0x759e: b'\x11\x8ab', + -0x759d: b'\x11\x8ac', + -0x759c: b'\x11\x8ad', + -0x759b: b'\x11\x8ae', + -0x759a: b'\x11\x8af', + -0x7599: b'\x11\x8ag', + -0x7598: b'\x11\x8ah', + -0x7597: b'\x11\x8ai', + -0x7596: b'\x11\x8aj', + -0x7595: b'\x11\x8ak', + -0x7594: b'\x11\x8al', + -0x7593: b'\x11\x8am', + -0x7592: b'\x11\x8an', + -0x7591: b'\x11\x8ao', + -0x7590: b'\x11\x8ap', + -0x758f: b'\x11\x8aq', + -0x758e: b'\x11\x8ar', + -0x758d: b'\x11\x8as', + -0x758c: b'\x11\x8at', + -0x758b: b'\x11\x8au', + -0x758a: b'\x11\x8av', + -0x7589: b'\x11\x8aw', + -0x7588: b'\x11\x8ax', + -0x7587: b'\x11\x8ay', + -0x7586: b'\x11\x8az', + -0x7585: b'\x11\x8a{', + -0x7584: b'\x11\x8a|', + -0x7583: b'\x11\x8a}', + -0x7582: b'\x11\x8a~', + -0x7581: b'\x11\x8a\x7f', + -0x7580: b'\x11\x8a\x80', + -0x757f: b'\x11\x8a\x81', + -0x757e: b'\x11\x8a\x82', + -0x757d: b'\x11\x8a\x83', + -0x757c: b'\x11\x8a\x84', + -0x757b: b'\x11\x8a\x85', + -0x757a: b'\x11\x8a\x86', + -0x7579: b'\x11\x8a\x87', + -0x7578: b'\x11\x8a\x88', + -0x7577: b'\x11\x8a\x89', + -0x7576: b'\x11\x8a\x8a', + -0x7575: b'\x11\x8a\x8b', + -0x7574: b'\x11\x8a\x8c', + -0x7573: b'\x11\x8a\x8d', + -0x7572: b'\x11\x8a\x8e', + -0x7571: b'\x11\x8a\x8f', + -0x7570: b'\x11\x8a\x90', + -0x756f: b'\x11\x8a\x91', + -0x756e: b'\x11\x8a\x92', + -0x756d: b'\x11\x8a\x93', + -0x756c: b'\x11\x8a\x94', + -0x756b: b'\x11\x8a\x95', + -0x756a: b'\x11\x8a\x96', + -0x7569: b'\x11\x8a\x97', + -0x7568: b'\x11\x8a\x98', + -0x7567: b'\x11\x8a\x99', + -0x7566: b'\x11\x8a\x9a', + -0x7565: b'\x11\x8a\x9b', + -0x7564: b'\x11\x8a\x9c', + -0x7563: b'\x11\x8a\x9d', + -0x7562: b'\x11\x8a\x9e', + -0x7561: b'\x11\x8a\x9f', + -0x7560: b'\x11\x8a\xa0', + -0x755f: b'\x11\x8a\xa1', + -0x755e: b'\x11\x8a\xa2', + -0x755d: b'\x11\x8a\xa3', + -0x755c: b'\x11\x8a\xa4', + -0x755b: b'\x11\x8a\xa5', + -0x755a: b'\x11\x8a\xa6', + -0x7559: b'\x11\x8a\xa7', + -0x7558: b'\x11\x8a\xa8', + -0x7557: b'\x11\x8a\xa9', + -0x7556: b'\x11\x8a\xaa', + -0x7555: b'\x11\x8a\xab', + -0x7554: b'\x11\x8a\xac', + -0x7553: b'\x11\x8a\xad', + -0x7552: b'\x11\x8a\xae', + -0x7551: b'\x11\x8a\xaf', + -0x7550: b'\x11\x8a\xb0', + -0x754f: b'\x11\x8a\xb1', + -0x754e: b'\x11\x8a\xb2', + -0x754d: b'\x11\x8a\xb3', + -0x754c: b'\x11\x8a\xb4', + -0x754b: b'\x11\x8a\xb5', + -0x754a: b'\x11\x8a\xb6', + -0x7549: b'\x11\x8a\xb7', + -0x7548: b'\x11\x8a\xb8', + -0x7547: b'\x11\x8a\xb9', + -0x7546: b'\x11\x8a\xba', + -0x7545: b'\x11\x8a\xbb', + -0x7544: b'\x11\x8a\xbc', + -0x7543: b'\x11\x8a\xbd', + -0x7542: b'\x11\x8a\xbe', + -0x7541: b'\x11\x8a\xbf', + -0x7540: b'\x11\x8a\xc0', + -0x753f: b'\x11\x8a\xc1', + -0x753e: b'\x11\x8a\xc2', + -0x753d: b'\x11\x8a\xc3', + -0x753c: b'\x11\x8a\xc4', + -0x753b: b'\x11\x8a\xc5', + -0x753a: b'\x11\x8a\xc6', + -0x7539: b'\x11\x8a\xc7', + -0x7538: b'\x11\x8a\xc8', + -0x7537: b'\x11\x8a\xc9', + -0x7536: b'\x11\x8a\xca', + -0x7535: b'\x11\x8a\xcb', + -0x7534: b'\x11\x8a\xcc', + -0x7533: b'\x11\x8a\xcd', + -0x7532: b'\x11\x8a\xce', + -0x7531: b'\x11\x8a\xcf', + -0x7530: b'\x11\x8a\xd0', + -0x752f: b'\x11\x8a\xd1', + -0x752e: b'\x11\x8a\xd2', + -0x752d: b'\x11\x8a\xd3', + -0x752c: b'\x11\x8a\xd4', + -0x752b: b'\x11\x8a\xd5', + -0x752a: b'\x11\x8a\xd6', + -0x7529: b'\x11\x8a\xd7', + -0x7528: b'\x11\x8a\xd8', + -0x7527: b'\x11\x8a\xd9', + -0x7526: b'\x11\x8a\xda', + -0x7525: b'\x11\x8a\xdb', + -0x7524: b'\x11\x8a\xdc', + -0x7523: b'\x11\x8a\xdd', + -0x7522: b'\x11\x8a\xde', + -0x7521: b'\x11\x8a\xdf', + -0x7520: b'\x11\x8a\xe0', + -0x751f: b'\x11\x8a\xe1', + -0x751e: b'\x11\x8a\xe2', + -0x751d: b'\x11\x8a\xe3', + -0x751c: b'\x11\x8a\xe4', + -0x751b: b'\x11\x8a\xe5', + -0x751a: b'\x11\x8a\xe6', + -0x7519: b'\x11\x8a\xe7', + -0x7518: b'\x11\x8a\xe8', + -0x7517: b'\x11\x8a\xe9', + -0x7516: b'\x11\x8a\xea', + -0x7515: b'\x11\x8a\xeb', + -0x7514: b'\x11\x8a\xec', + -0x7513: b'\x11\x8a\xed', + -0x7512: b'\x11\x8a\xee', + -0x7511: b'\x11\x8a\xef', + -0x7510: b'\x11\x8a\xf0', + -0x750f: b'\x11\x8a\xf1', + -0x750e: b'\x11\x8a\xf2', + -0x750d: b'\x11\x8a\xf3', + -0x750c: b'\x11\x8a\xf4', + -0x750b: b'\x11\x8a\xf5', + -0x750a: b'\x11\x8a\xf6', + -0x7509: b'\x11\x8a\xf7', + -0x7508: b'\x11\x8a\xf8', + -0x7507: b'\x11\x8a\xf9', + -0x7506: b'\x11\x8a\xfa', + -0x7505: b'\x11\x8a\xfb', + -0x7504: b'\x11\x8a\xfc', + -0x7503: b'\x11\x8a\xfd', + -0x7502: b'\x11\x8a\xfe', + -0x7501: b'\x11\x8a\xff', + -0x7500: b'\x11\x8b\x00', + -0x74ff: b'\x11\x8b\x01', + -0x74fe: b'\x11\x8b\x02', + -0x74fd: b'\x11\x8b\x03', + -0x74fc: b'\x11\x8b\x04', + -0x74fb: b'\x11\x8b\x05', + -0x74fa: b'\x11\x8b\x06', + -0x74f9: b'\x11\x8b\x07', + -0x74f8: b'\x11\x8b\x08', + -0x74f7: b'\x11\x8b\t', + -0x74f6: b'\x11\x8b\n', + -0x74f5: b'\x11\x8b\x0b', + -0x74f4: b'\x11\x8b\x0c', + -0x74f3: b'\x11\x8b\r', + -0x74f2: b'\x11\x8b\x0e', + -0x74f1: b'\x11\x8b\x0f', + -0x74f0: b'\x11\x8b\x10', + -0x74ef: b'\x11\x8b\x11', + -0x74ee: b'\x11\x8b\x12', + -0x74ed: b'\x11\x8b\x13', + -0x74ec: b'\x11\x8b\x14', + -0x74eb: b'\x11\x8b\x15', + -0x74ea: b'\x11\x8b\x16', + -0x74e9: b'\x11\x8b\x17', + -0x74e8: b'\x11\x8b\x18', + -0x74e7: b'\x11\x8b\x19', + -0x74e6: b'\x11\x8b\x1a', + -0x74e5: b'\x11\x8b\x1b', + -0x74e4: b'\x11\x8b\x1c', + -0x74e3: b'\x11\x8b\x1d', + -0x74e2: b'\x11\x8b\x1e', + -0x74e1: b'\x11\x8b\x1f', + -0x74e0: b'\x11\x8b ', + -0x74df: b'\x11\x8b!', + -0x74de: b'\x11\x8b"', + -0x74dd: b'\x11\x8b#', + -0x74dc: b'\x11\x8b$', + -0x74db: b'\x11\x8b%', + -0x74da: b'\x11\x8b&', + -0x74d9: b"\x11\x8b'", + -0x74d8: b'\x11\x8b(', + -0x74d7: b'\x11\x8b)', + -0x74d6: b'\x11\x8b*', + -0x74d5: b'\x11\x8b+', + -0x74d4: b'\x11\x8b,', + -0x74d3: b'\x11\x8b-', + -0x74d2: b'\x11\x8b.', + -0x74d1: b'\x11\x8b/', + -0x74d0: b'\x11\x8b0', + -0x74cf: b'\x11\x8b1', + -0x74ce: b'\x11\x8b2', + -0x74cd: b'\x11\x8b3', + -0x74cc: b'\x11\x8b4', + -0x74cb: b'\x11\x8b5', + -0x74ca: b'\x11\x8b6', + -0x74c9: b'\x11\x8b7', + -0x74c8: b'\x11\x8b8', + -0x74c7: b'\x11\x8b9', + -0x74c6: b'\x11\x8b:', + -0x74c5: b'\x11\x8b;', + -0x74c4: b'\x11\x8b<', + -0x74c3: b'\x11\x8b=', + -0x74c2: b'\x11\x8b>', + -0x74c1: b'\x11\x8b?', + -0x74c0: b'\x11\x8b@', + -0x74bf: b'\x11\x8bA', + -0x74be: b'\x11\x8bB', + -0x74bd: b'\x11\x8bC', + -0x74bc: b'\x11\x8bD', + -0x74bb: b'\x11\x8bE', + -0x74ba: b'\x11\x8bF', + -0x74b9: b'\x11\x8bG', + -0x74b8: b'\x11\x8bH', + -0x74b7: b'\x11\x8bI', + -0x74b6: b'\x11\x8bJ', + -0x74b5: b'\x11\x8bK', + -0x74b4: b'\x11\x8bL', + -0x74b3: b'\x11\x8bM', + -0x74b2: b'\x11\x8bN', + -0x74b1: b'\x11\x8bO', + -0x74b0: b'\x11\x8bP', + -0x74af: b'\x11\x8bQ', + -0x74ae: b'\x11\x8bR', + -0x74ad: b'\x11\x8bS', + -0x74ac: b'\x11\x8bT', + -0x74ab: b'\x11\x8bU', + -0x74aa: b'\x11\x8bV', + -0x74a9: b'\x11\x8bW', + -0x74a8: b'\x11\x8bX', + -0x74a7: b'\x11\x8bY', + -0x74a6: b'\x11\x8bZ', + -0x74a5: b'\x11\x8b[', + -0x74a4: b'\x11\x8b\\', + -0x74a3: b'\x11\x8b]', + -0x74a2: b'\x11\x8b^', + -0x74a1: b'\x11\x8b_', + -0x74a0: b'\x11\x8b`', + -0x749f: b'\x11\x8ba', + -0x749e: b'\x11\x8bb', + -0x749d: b'\x11\x8bc', + -0x749c: b'\x11\x8bd', + -0x749b: b'\x11\x8be', + -0x749a: b'\x11\x8bf', + -0x7499: b'\x11\x8bg', + -0x7498: b'\x11\x8bh', + -0x7497: b'\x11\x8bi', + -0x7496: b'\x11\x8bj', + -0x7495: b'\x11\x8bk', + -0x7494: b'\x11\x8bl', + -0x7493: b'\x11\x8bm', + -0x7492: b'\x11\x8bn', + -0x7491: b'\x11\x8bo', + -0x7490: b'\x11\x8bp', + -0x748f: b'\x11\x8bq', + -0x748e: b'\x11\x8br', + -0x748d: b'\x11\x8bs', + -0x748c: b'\x11\x8bt', + -0x748b: b'\x11\x8bu', + -0x748a: b'\x11\x8bv', + -0x7489: b'\x11\x8bw', + -0x7488: b'\x11\x8bx', + -0x7487: b'\x11\x8by', + -0x7486: b'\x11\x8bz', + -0x7485: b'\x11\x8b{', + -0x7484: b'\x11\x8b|', + -0x7483: b'\x11\x8b}', + -0x7482: b'\x11\x8b~', + -0x7481: b'\x11\x8b\x7f', + -0x7480: b'\x11\x8b\x80', + -0x747f: b'\x11\x8b\x81', + -0x747e: b'\x11\x8b\x82', + -0x747d: b'\x11\x8b\x83', + -0x747c: b'\x11\x8b\x84', + -0x747b: b'\x11\x8b\x85', + -0x747a: b'\x11\x8b\x86', + -0x7479: b'\x11\x8b\x87', + -0x7478: b'\x11\x8b\x88', + -0x7477: b'\x11\x8b\x89', + -0x7476: b'\x11\x8b\x8a', + -0x7475: b'\x11\x8b\x8b', + -0x7474: b'\x11\x8b\x8c', + -0x7473: b'\x11\x8b\x8d', + -0x7472: b'\x11\x8b\x8e', + -0x7471: b'\x11\x8b\x8f', + -0x7470: b'\x11\x8b\x90', + -0x746f: b'\x11\x8b\x91', + -0x746e: b'\x11\x8b\x92', + -0x746d: b'\x11\x8b\x93', + -0x746c: b'\x11\x8b\x94', + -0x746b: b'\x11\x8b\x95', + -0x746a: b'\x11\x8b\x96', + -0x7469: b'\x11\x8b\x97', + -0x7468: b'\x11\x8b\x98', + -0x7467: b'\x11\x8b\x99', + -0x7466: b'\x11\x8b\x9a', + -0x7465: b'\x11\x8b\x9b', + -0x7464: b'\x11\x8b\x9c', + -0x7463: b'\x11\x8b\x9d', + -0x7462: b'\x11\x8b\x9e', + -0x7461: b'\x11\x8b\x9f', + -0x7460: b'\x11\x8b\xa0', + -0x745f: b'\x11\x8b\xa1', + -0x745e: b'\x11\x8b\xa2', + -0x745d: b'\x11\x8b\xa3', + -0x745c: b'\x11\x8b\xa4', + -0x745b: b'\x11\x8b\xa5', + -0x745a: b'\x11\x8b\xa6', + -0x7459: b'\x11\x8b\xa7', + -0x7458: b'\x11\x8b\xa8', + -0x7457: b'\x11\x8b\xa9', + -0x7456: b'\x11\x8b\xaa', + -0x7455: b'\x11\x8b\xab', + -0x7454: b'\x11\x8b\xac', + -0x7453: b'\x11\x8b\xad', + -0x7452: b'\x11\x8b\xae', + -0x7451: b'\x11\x8b\xaf', + -0x7450: b'\x11\x8b\xb0', + -0x744f: b'\x11\x8b\xb1', + -0x744e: b'\x11\x8b\xb2', + -0x744d: b'\x11\x8b\xb3', + -0x744c: b'\x11\x8b\xb4', + -0x744b: b'\x11\x8b\xb5', + -0x744a: b'\x11\x8b\xb6', + -0x7449: b'\x11\x8b\xb7', + -0x7448: b'\x11\x8b\xb8', + -0x7447: b'\x11\x8b\xb9', + -0x7446: b'\x11\x8b\xba', + -0x7445: b'\x11\x8b\xbb', + -0x7444: b'\x11\x8b\xbc', + -0x7443: b'\x11\x8b\xbd', + -0x7442: b'\x11\x8b\xbe', + -0x7441: b'\x11\x8b\xbf', + -0x7440: b'\x11\x8b\xc0', + -0x743f: b'\x11\x8b\xc1', + -0x743e: b'\x11\x8b\xc2', + -0x743d: b'\x11\x8b\xc3', + -0x743c: b'\x11\x8b\xc4', + -0x743b: b'\x11\x8b\xc5', + -0x743a: b'\x11\x8b\xc6', + -0x7439: b'\x11\x8b\xc7', + -0x7438: b'\x11\x8b\xc8', + -0x7437: b'\x11\x8b\xc9', + -0x7436: b'\x11\x8b\xca', + -0x7435: b'\x11\x8b\xcb', + -0x7434: b'\x11\x8b\xcc', + -0x7433: b'\x11\x8b\xcd', + -0x7432: b'\x11\x8b\xce', + -0x7431: b'\x11\x8b\xcf', + -0x7430: b'\x11\x8b\xd0', + -0x742f: b'\x11\x8b\xd1', + -0x742e: b'\x11\x8b\xd2', + -0x742d: b'\x11\x8b\xd3', + -0x742c: b'\x11\x8b\xd4', + -0x742b: b'\x11\x8b\xd5', + -0x742a: b'\x11\x8b\xd6', + -0x7429: b'\x11\x8b\xd7', + -0x7428: b'\x11\x8b\xd8', + -0x7427: b'\x11\x8b\xd9', + -0x7426: b'\x11\x8b\xda', + -0x7425: b'\x11\x8b\xdb', + -0x7424: b'\x11\x8b\xdc', + -0x7423: b'\x11\x8b\xdd', + -0x7422: b'\x11\x8b\xde', + -0x7421: b'\x11\x8b\xdf', + -0x7420: b'\x11\x8b\xe0', + -0x741f: b'\x11\x8b\xe1', + -0x741e: b'\x11\x8b\xe2', + -0x741d: b'\x11\x8b\xe3', + -0x741c: b'\x11\x8b\xe4', + -0x741b: b'\x11\x8b\xe5', + -0x741a: b'\x11\x8b\xe6', + -0x7419: b'\x11\x8b\xe7', + -0x7418: b'\x11\x8b\xe8', + -0x7417: b'\x11\x8b\xe9', + -0x7416: b'\x11\x8b\xea', + -0x7415: b'\x11\x8b\xeb', + -0x7414: b'\x11\x8b\xec', + -0x7413: b'\x11\x8b\xed', + -0x7412: b'\x11\x8b\xee', + -0x7411: b'\x11\x8b\xef', + -0x7410: b'\x11\x8b\xf0', + -0x740f: b'\x11\x8b\xf1', + -0x740e: b'\x11\x8b\xf2', + -0x740d: b'\x11\x8b\xf3', + -0x740c: b'\x11\x8b\xf4', + -0x740b: b'\x11\x8b\xf5', + -0x740a: b'\x11\x8b\xf6', + -0x7409: b'\x11\x8b\xf7', + -0x7408: b'\x11\x8b\xf8', + -0x7407: b'\x11\x8b\xf9', + -0x7406: b'\x11\x8b\xfa', + -0x7405: b'\x11\x8b\xfb', + -0x7404: b'\x11\x8b\xfc', + -0x7403: b'\x11\x8b\xfd', + -0x7402: b'\x11\x8b\xfe', + -0x7401: b'\x11\x8b\xff', + -0x7400: b'\x11\x8c\x00', + -0x73ff: b'\x11\x8c\x01', + -0x73fe: b'\x11\x8c\x02', + -0x73fd: b'\x11\x8c\x03', + -0x73fc: b'\x11\x8c\x04', + -0x73fb: b'\x11\x8c\x05', + -0x73fa: b'\x11\x8c\x06', + -0x73f9: b'\x11\x8c\x07', + -0x73f8: b'\x11\x8c\x08', + -0x73f7: b'\x11\x8c\t', + -0x73f6: b'\x11\x8c\n', + -0x73f5: b'\x11\x8c\x0b', + -0x73f4: b'\x11\x8c\x0c', + -0x73f3: b'\x11\x8c\r', + -0x73f2: b'\x11\x8c\x0e', + -0x73f1: b'\x11\x8c\x0f', + -0x73f0: b'\x11\x8c\x10', + -0x73ef: b'\x11\x8c\x11', + -0x73ee: b'\x11\x8c\x12', + -0x73ed: b'\x11\x8c\x13', + -0x73ec: b'\x11\x8c\x14', + -0x73eb: b'\x11\x8c\x15', + -0x73ea: b'\x11\x8c\x16', + -0x73e9: b'\x11\x8c\x17', + -0x73e8: b'\x11\x8c\x18', + -0x73e7: b'\x11\x8c\x19', + -0x73e6: b'\x11\x8c\x1a', + -0x73e5: b'\x11\x8c\x1b', + -0x73e4: b'\x11\x8c\x1c', + -0x73e3: b'\x11\x8c\x1d', + -0x73e2: b'\x11\x8c\x1e', + -0x73e1: b'\x11\x8c\x1f', + -0x73e0: b'\x11\x8c ', + -0x73df: b'\x11\x8c!', + -0x73de: b'\x11\x8c"', + -0x73dd: b'\x11\x8c#', + -0x73dc: b'\x11\x8c$', + -0x73db: b'\x11\x8c%', + -0x73da: b'\x11\x8c&', + -0x73d9: b"\x11\x8c'", + -0x73d8: b'\x11\x8c(', + -0x73d7: b'\x11\x8c)', + -0x73d6: b'\x11\x8c*', + -0x73d5: b'\x11\x8c+', + -0x73d4: b'\x11\x8c,', + -0x73d3: b'\x11\x8c-', + -0x73d2: b'\x11\x8c.', + -0x73d1: b'\x11\x8c/', + -0x73d0: b'\x11\x8c0', + -0x73cf: b'\x11\x8c1', + -0x73ce: b'\x11\x8c2', + -0x73cd: b'\x11\x8c3', + -0x73cc: b'\x11\x8c4', + -0x73cb: b'\x11\x8c5', + -0x73ca: b'\x11\x8c6', + -0x73c9: b'\x11\x8c7', + -0x73c8: b'\x11\x8c8', + -0x73c7: b'\x11\x8c9', + -0x73c6: b'\x11\x8c:', + -0x73c5: b'\x11\x8c;', + -0x73c4: b'\x11\x8c<', + -0x73c3: b'\x11\x8c=', + -0x73c2: b'\x11\x8c>', + -0x73c1: b'\x11\x8c?', + -0x73c0: b'\x11\x8c@', + -0x73bf: b'\x11\x8cA', + -0x73be: b'\x11\x8cB', + -0x73bd: b'\x11\x8cC', + -0x73bc: b'\x11\x8cD', + -0x73bb: b'\x11\x8cE', + -0x73ba: b'\x11\x8cF', + -0x73b9: b'\x11\x8cG', + -0x73b8: b'\x11\x8cH', + -0x73b7: b'\x11\x8cI', + -0x73b6: b'\x11\x8cJ', + -0x73b5: b'\x11\x8cK', + -0x73b4: b'\x11\x8cL', + -0x73b3: b'\x11\x8cM', + -0x73b2: b'\x11\x8cN', + -0x73b1: b'\x11\x8cO', + -0x73b0: b'\x11\x8cP', + -0x73af: b'\x11\x8cQ', + -0x73ae: b'\x11\x8cR', + -0x73ad: b'\x11\x8cS', + -0x73ac: b'\x11\x8cT', + -0x73ab: b'\x11\x8cU', + -0x73aa: b'\x11\x8cV', + -0x73a9: b'\x11\x8cW', + -0x73a8: b'\x11\x8cX', + -0x73a7: b'\x11\x8cY', + -0x73a6: b'\x11\x8cZ', + -0x73a5: b'\x11\x8c[', + -0x73a4: b'\x11\x8c\\', + -0x73a3: b'\x11\x8c]', + -0x73a2: b'\x11\x8c^', + -0x73a1: b'\x11\x8c_', + -0x73a0: b'\x11\x8c`', + -0x739f: b'\x11\x8ca', + -0x739e: b'\x11\x8cb', + -0x739d: b'\x11\x8cc', + -0x739c: b'\x11\x8cd', + -0x739b: b'\x11\x8ce', + -0x739a: b'\x11\x8cf', + -0x7399: b'\x11\x8cg', + -0x7398: b'\x11\x8ch', + -0x7397: b'\x11\x8ci', + -0x7396: b'\x11\x8cj', + -0x7395: b'\x11\x8ck', + -0x7394: b'\x11\x8cl', + -0x7393: b'\x11\x8cm', + -0x7392: b'\x11\x8cn', + -0x7391: b'\x11\x8co', + -0x7390: b'\x11\x8cp', + -0x738f: b'\x11\x8cq', + -0x738e: b'\x11\x8cr', + -0x738d: b'\x11\x8cs', + -0x738c: b'\x11\x8ct', + -0x738b: b'\x11\x8cu', + -0x738a: b'\x11\x8cv', + -0x7389: b'\x11\x8cw', + -0x7388: b'\x11\x8cx', + -0x7387: b'\x11\x8cy', + -0x7386: b'\x11\x8cz', + -0x7385: b'\x11\x8c{', + -0x7384: b'\x11\x8c|', + -0x7383: b'\x11\x8c}', + -0x7382: b'\x11\x8c~', + -0x7381: b'\x11\x8c\x7f', + -0x7380: b'\x11\x8c\x80', + -0x737f: b'\x11\x8c\x81', + -0x737e: b'\x11\x8c\x82', + -0x737d: b'\x11\x8c\x83', + -0x737c: b'\x11\x8c\x84', + -0x737b: b'\x11\x8c\x85', + -0x737a: b'\x11\x8c\x86', + -0x7379: b'\x11\x8c\x87', + -0x7378: b'\x11\x8c\x88', + -0x7377: b'\x11\x8c\x89', + -0x7376: b'\x11\x8c\x8a', + -0x7375: b'\x11\x8c\x8b', + -0x7374: b'\x11\x8c\x8c', + -0x7373: b'\x11\x8c\x8d', + -0x7372: b'\x11\x8c\x8e', + -0x7371: b'\x11\x8c\x8f', + -0x7370: b'\x11\x8c\x90', + -0x736f: b'\x11\x8c\x91', + -0x736e: b'\x11\x8c\x92', + -0x736d: b'\x11\x8c\x93', + -0x736c: b'\x11\x8c\x94', + -0x736b: b'\x11\x8c\x95', + -0x736a: b'\x11\x8c\x96', + -0x7369: b'\x11\x8c\x97', + -0x7368: b'\x11\x8c\x98', + -0x7367: b'\x11\x8c\x99', + -0x7366: b'\x11\x8c\x9a', + -0x7365: b'\x11\x8c\x9b', + -0x7364: b'\x11\x8c\x9c', + -0x7363: b'\x11\x8c\x9d', + -0x7362: b'\x11\x8c\x9e', + -0x7361: b'\x11\x8c\x9f', + -0x7360: b'\x11\x8c\xa0', + -0x735f: b'\x11\x8c\xa1', + -0x735e: b'\x11\x8c\xa2', + -0x735d: b'\x11\x8c\xa3', + -0x735c: b'\x11\x8c\xa4', + -0x735b: b'\x11\x8c\xa5', + -0x735a: b'\x11\x8c\xa6', + -0x7359: b'\x11\x8c\xa7', + -0x7358: b'\x11\x8c\xa8', + -0x7357: b'\x11\x8c\xa9', + -0x7356: b'\x11\x8c\xaa', + -0x7355: b'\x11\x8c\xab', + -0x7354: b'\x11\x8c\xac', + -0x7353: b'\x11\x8c\xad', + -0x7352: b'\x11\x8c\xae', + -0x7351: b'\x11\x8c\xaf', + -0x7350: b'\x11\x8c\xb0', + -0x734f: b'\x11\x8c\xb1', + -0x734e: b'\x11\x8c\xb2', + -0x734d: b'\x11\x8c\xb3', + -0x734c: b'\x11\x8c\xb4', + -0x734b: b'\x11\x8c\xb5', + -0x734a: b'\x11\x8c\xb6', + -0x7349: b'\x11\x8c\xb7', + -0x7348: b'\x11\x8c\xb8', + -0x7347: b'\x11\x8c\xb9', + -0x7346: b'\x11\x8c\xba', + -0x7345: b'\x11\x8c\xbb', + -0x7344: b'\x11\x8c\xbc', + -0x7343: b'\x11\x8c\xbd', + -0x7342: b'\x11\x8c\xbe', + -0x7341: b'\x11\x8c\xbf', + -0x7340: b'\x11\x8c\xc0', + -0x733f: b'\x11\x8c\xc1', + -0x733e: b'\x11\x8c\xc2', + -0x733d: b'\x11\x8c\xc3', + -0x733c: b'\x11\x8c\xc4', + -0x733b: b'\x11\x8c\xc5', + -0x733a: b'\x11\x8c\xc6', + -0x7339: b'\x11\x8c\xc7', + -0x7338: b'\x11\x8c\xc8', + -0x7337: b'\x11\x8c\xc9', + -0x7336: b'\x11\x8c\xca', + -0x7335: b'\x11\x8c\xcb', + -0x7334: b'\x11\x8c\xcc', + -0x7333: b'\x11\x8c\xcd', + -0x7332: b'\x11\x8c\xce', + -0x7331: b'\x11\x8c\xcf', + -0x7330: b'\x11\x8c\xd0', + -0x732f: b'\x11\x8c\xd1', + -0x732e: b'\x11\x8c\xd2', + -0x732d: b'\x11\x8c\xd3', + -0x732c: b'\x11\x8c\xd4', + -0x732b: b'\x11\x8c\xd5', + -0x732a: b'\x11\x8c\xd6', + -0x7329: b'\x11\x8c\xd7', + -0x7328: b'\x11\x8c\xd8', + -0x7327: b'\x11\x8c\xd9', + -0x7326: b'\x11\x8c\xda', + -0x7325: b'\x11\x8c\xdb', + -0x7324: b'\x11\x8c\xdc', + -0x7323: b'\x11\x8c\xdd', + -0x7322: b'\x11\x8c\xde', + -0x7321: b'\x11\x8c\xdf', + -0x7320: b'\x11\x8c\xe0', + -0x731f: b'\x11\x8c\xe1', + -0x731e: b'\x11\x8c\xe2', + -0x731d: b'\x11\x8c\xe3', + -0x731c: b'\x11\x8c\xe4', + -0x731b: b'\x11\x8c\xe5', + -0x731a: b'\x11\x8c\xe6', + -0x7319: b'\x11\x8c\xe7', + -0x7318: b'\x11\x8c\xe8', + -0x7317: b'\x11\x8c\xe9', + -0x7316: b'\x11\x8c\xea', + -0x7315: b'\x11\x8c\xeb', + -0x7314: b'\x11\x8c\xec', + -0x7313: b'\x11\x8c\xed', + -0x7312: b'\x11\x8c\xee', + -0x7311: b'\x11\x8c\xef', + -0x7310: b'\x11\x8c\xf0', + -0x730f: b'\x11\x8c\xf1', + -0x730e: b'\x11\x8c\xf2', + -0x730d: b'\x11\x8c\xf3', + -0x730c: b'\x11\x8c\xf4', + -0x730b: b'\x11\x8c\xf5', + -0x730a: b'\x11\x8c\xf6', + -0x7309: b'\x11\x8c\xf7', + -0x7308: b'\x11\x8c\xf8', + -0x7307: b'\x11\x8c\xf9', + -0x7306: b'\x11\x8c\xfa', + -0x7305: b'\x11\x8c\xfb', + -0x7304: b'\x11\x8c\xfc', + -0x7303: b'\x11\x8c\xfd', + -0x7302: b'\x11\x8c\xfe', + -0x7301: b'\x11\x8c\xff', + -0x7300: b'\x11\x8d\x00', + -0x72ff: b'\x11\x8d\x01', + -0x72fe: b'\x11\x8d\x02', + -0x72fd: b'\x11\x8d\x03', + -0x72fc: b'\x11\x8d\x04', + -0x72fb: b'\x11\x8d\x05', + -0x72fa: b'\x11\x8d\x06', + -0x72f9: b'\x11\x8d\x07', + -0x72f8: b'\x11\x8d\x08', + -0x72f7: b'\x11\x8d\t', + -0x72f6: b'\x11\x8d\n', + -0x72f5: b'\x11\x8d\x0b', + -0x72f4: b'\x11\x8d\x0c', + -0x72f3: b'\x11\x8d\r', + -0x72f2: b'\x11\x8d\x0e', + -0x72f1: b'\x11\x8d\x0f', + -0x72f0: b'\x11\x8d\x10', + -0x72ef: b'\x11\x8d\x11', + -0x72ee: b'\x11\x8d\x12', + -0x72ed: b'\x11\x8d\x13', + -0x72ec: b'\x11\x8d\x14', + -0x72eb: b'\x11\x8d\x15', + -0x72ea: b'\x11\x8d\x16', + -0x72e9: b'\x11\x8d\x17', + -0x72e8: b'\x11\x8d\x18', + -0x72e7: b'\x11\x8d\x19', + -0x72e6: b'\x11\x8d\x1a', + -0x72e5: b'\x11\x8d\x1b', + -0x72e4: b'\x11\x8d\x1c', + -0x72e3: b'\x11\x8d\x1d', + -0x72e2: b'\x11\x8d\x1e', + -0x72e1: b'\x11\x8d\x1f', + -0x72e0: b'\x11\x8d ', + -0x72df: b'\x11\x8d!', + -0x72de: b'\x11\x8d"', + -0x72dd: b'\x11\x8d#', + -0x72dc: b'\x11\x8d$', + -0x72db: b'\x11\x8d%', + -0x72da: b'\x11\x8d&', + -0x72d9: b"\x11\x8d'", + -0x72d8: b'\x11\x8d(', + -0x72d7: b'\x11\x8d)', + -0x72d6: b'\x11\x8d*', + -0x72d5: b'\x11\x8d+', + -0x72d4: b'\x11\x8d,', + -0x72d3: b'\x11\x8d-', + -0x72d2: b'\x11\x8d.', + -0x72d1: b'\x11\x8d/', + -0x72d0: b'\x11\x8d0', + -0x72cf: b'\x11\x8d1', + -0x72ce: b'\x11\x8d2', + -0x72cd: b'\x11\x8d3', + -0x72cc: b'\x11\x8d4', + -0x72cb: b'\x11\x8d5', + -0x72ca: b'\x11\x8d6', + -0x72c9: b'\x11\x8d7', + -0x72c8: b'\x11\x8d8', + -0x72c7: b'\x11\x8d9', + -0x72c6: b'\x11\x8d:', + -0x72c5: b'\x11\x8d;', + -0x72c4: b'\x11\x8d<', + -0x72c3: b'\x11\x8d=', + -0x72c2: b'\x11\x8d>', + -0x72c1: b'\x11\x8d?', + -0x72c0: b'\x11\x8d@', + -0x72bf: b'\x11\x8dA', + -0x72be: b'\x11\x8dB', + -0x72bd: b'\x11\x8dC', + -0x72bc: b'\x11\x8dD', + -0x72bb: b'\x11\x8dE', + -0x72ba: b'\x11\x8dF', + -0x72b9: b'\x11\x8dG', + -0x72b8: b'\x11\x8dH', + -0x72b7: b'\x11\x8dI', + -0x72b6: b'\x11\x8dJ', + -0x72b5: b'\x11\x8dK', + -0x72b4: b'\x11\x8dL', + -0x72b3: b'\x11\x8dM', + -0x72b2: b'\x11\x8dN', + -0x72b1: b'\x11\x8dO', + -0x72b0: b'\x11\x8dP', + -0x72af: b'\x11\x8dQ', + -0x72ae: b'\x11\x8dR', + -0x72ad: b'\x11\x8dS', + -0x72ac: b'\x11\x8dT', + -0x72ab: b'\x11\x8dU', + -0x72aa: b'\x11\x8dV', + -0x72a9: b'\x11\x8dW', + -0x72a8: b'\x11\x8dX', + -0x72a7: b'\x11\x8dY', + -0x72a6: b'\x11\x8dZ', + -0x72a5: b'\x11\x8d[', + -0x72a4: b'\x11\x8d\\', + -0x72a3: b'\x11\x8d]', + -0x72a2: b'\x11\x8d^', + -0x72a1: b'\x11\x8d_', + -0x72a0: b'\x11\x8d`', + -0x729f: b'\x11\x8da', + -0x729e: b'\x11\x8db', + -0x729d: b'\x11\x8dc', + -0x729c: b'\x11\x8dd', + -0x729b: b'\x11\x8de', + -0x729a: b'\x11\x8df', + -0x7299: b'\x11\x8dg', + -0x7298: b'\x11\x8dh', + -0x7297: b'\x11\x8di', + -0x7296: b'\x11\x8dj', + -0x7295: b'\x11\x8dk', + -0x7294: b'\x11\x8dl', + -0x7293: b'\x11\x8dm', + -0x7292: b'\x11\x8dn', + -0x7291: b'\x11\x8do', + -0x7290: b'\x11\x8dp', + -0x728f: b'\x11\x8dq', + -0x728e: b'\x11\x8dr', + -0x728d: b'\x11\x8ds', + -0x728c: b'\x11\x8dt', + -0x728b: b'\x11\x8du', + -0x728a: b'\x11\x8dv', + -0x7289: b'\x11\x8dw', + -0x7288: b'\x11\x8dx', + -0x7287: b'\x11\x8dy', + -0x7286: b'\x11\x8dz', + -0x7285: b'\x11\x8d{', + -0x7284: b'\x11\x8d|', + -0x7283: b'\x11\x8d}', + -0x7282: b'\x11\x8d~', + -0x7281: b'\x11\x8d\x7f', + -0x7280: b'\x11\x8d\x80', + -0x727f: b'\x11\x8d\x81', + -0x727e: b'\x11\x8d\x82', + -0x727d: b'\x11\x8d\x83', + -0x727c: b'\x11\x8d\x84', + -0x727b: b'\x11\x8d\x85', + -0x727a: b'\x11\x8d\x86', + -0x7279: b'\x11\x8d\x87', + -0x7278: b'\x11\x8d\x88', + -0x7277: b'\x11\x8d\x89', + -0x7276: b'\x11\x8d\x8a', + -0x7275: b'\x11\x8d\x8b', + -0x7274: b'\x11\x8d\x8c', + -0x7273: b'\x11\x8d\x8d', + -0x7272: b'\x11\x8d\x8e', + -0x7271: b'\x11\x8d\x8f', + -0x7270: b'\x11\x8d\x90', + -0x726f: b'\x11\x8d\x91', + -0x726e: b'\x11\x8d\x92', + -0x726d: b'\x11\x8d\x93', + -0x726c: b'\x11\x8d\x94', + -0x726b: b'\x11\x8d\x95', + -0x726a: b'\x11\x8d\x96', + -0x7269: b'\x11\x8d\x97', + -0x7268: b'\x11\x8d\x98', + -0x7267: b'\x11\x8d\x99', + -0x7266: b'\x11\x8d\x9a', + -0x7265: b'\x11\x8d\x9b', + -0x7264: b'\x11\x8d\x9c', + -0x7263: b'\x11\x8d\x9d', + -0x7262: b'\x11\x8d\x9e', + -0x7261: b'\x11\x8d\x9f', + -0x7260: b'\x11\x8d\xa0', + -0x725f: b'\x11\x8d\xa1', + -0x725e: b'\x11\x8d\xa2', + -0x725d: b'\x11\x8d\xa3', + -0x725c: b'\x11\x8d\xa4', + -0x725b: b'\x11\x8d\xa5', + -0x725a: b'\x11\x8d\xa6', + -0x7259: b'\x11\x8d\xa7', + -0x7258: b'\x11\x8d\xa8', + -0x7257: b'\x11\x8d\xa9', + -0x7256: b'\x11\x8d\xaa', + -0x7255: b'\x11\x8d\xab', + -0x7254: b'\x11\x8d\xac', + -0x7253: b'\x11\x8d\xad', + -0x7252: b'\x11\x8d\xae', + -0x7251: b'\x11\x8d\xaf', + -0x7250: b'\x11\x8d\xb0', + -0x724f: b'\x11\x8d\xb1', + -0x724e: b'\x11\x8d\xb2', + -0x724d: b'\x11\x8d\xb3', + -0x724c: b'\x11\x8d\xb4', + -0x724b: b'\x11\x8d\xb5', + -0x724a: b'\x11\x8d\xb6', + -0x7249: b'\x11\x8d\xb7', + -0x7248: b'\x11\x8d\xb8', + -0x7247: b'\x11\x8d\xb9', + -0x7246: b'\x11\x8d\xba', + -0x7245: b'\x11\x8d\xbb', + -0x7244: b'\x11\x8d\xbc', + -0x7243: b'\x11\x8d\xbd', + -0x7242: b'\x11\x8d\xbe', + -0x7241: b'\x11\x8d\xbf', + -0x7240: b'\x11\x8d\xc0', + -0x723f: b'\x11\x8d\xc1', + -0x723e: b'\x11\x8d\xc2', + -0x723d: b'\x11\x8d\xc3', + -0x723c: b'\x11\x8d\xc4', + -0x723b: b'\x11\x8d\xc5', + -0x723a: b'\x11\x8d\xc6', + -0x7239: b'\x11\x8d\xc7', + -0x7238: b'\x11\x8d\xc8', + -0x7237: b'\x11\x8d\xc9', + -0x7236: b'\x11\x8d\xca', + -0x7235: b'\x11\x8d\xcb', + -0x7234: b'\x11\x8d\xcc', + -0x7233: b'\x11\x8d\xcd', + -0x7232: b'\x11\x8d\xce', + -0x7231: b'\x11\x8d\xcf', + -0x7230: b'\x11\x8d\xd0', + -0x722f: b'\x11\x8d\xd1', + -0x722e: b'\x11\x8d\xd2', + -0x722d: b'\x11\x8d\xd3', + -0x722c: b'\x11\x8d\xd4', + -0x722b: b'\x11\x8d\xd5', + -0x722a: b'\x11\x8d\xd6', + -0x7229: b'\x11\x8d\xd7', + -0x7228: b'\x11\x8d\xd8', + -0x7227: b'\x11\x8d\xd9', + -0x7226: b'\x11\x8d\xda', + -0x7225: b'\x11\x8d\xdb', + -0x7224: b'\x11\x8d\xdc', + -0x7223: b'\x11\x8d\xdd', + -0x7222: b'\x11\x8d\xde', + -0x7221: b'\x11\x8d\xdf', + -0x7220: b'\x11\x8d\xe0', + -0x721f: b'\x11\x8d\xe1', + -0x721e: b'\x11\x8d\xe2', + -0x721d: b'\x11\x8d\xe3', + -0x721c: b'\x11\x8d\xe4', + -0x721b: b'\x11\x8d\xe5', + -0x721a: b'\x11\x8d\xe6', + -0x7219: b'\x11\x8d\xe7', + -0x7218: b'\x11\x8d\xe8', + -0x7217: b'\x11\x8d\xe9', + -0x7216: b'\x11\x8d\xea', + -0x7215: b'\x11\x8d\xeb', + -0x7214: b'\x11\x8d\xec', + -0x7213: b'\x11\x8d\xed', + -0x7212: b'\x11\x8d\xee', + -0x7211: b'\x11\x8d\xef', + -0x7210: b'\x11\x8d\xf0', + -0x720f: b'\x11\x8d\xf1', + -0x720e: b'\x11\x8d\xf2', + -0x720d: b'\x11\x8d\xf3', + -0x720c: b'\x11\x8d\xf4', + -0x720b: b'\x11\x8d\xf5', + -0x720a: b'\x11\x8d\xf6', + -0x7209: b'\x11\x8d\xf7', + -0x7208: b'\x11\x8d\xf8', + -0x7207: b'\x11\x8d\xf9', + -0x7206: b'\x11\x8d\xfa', + -0x7205: b'\x11\x8d\xfb', + -0x7204: b'\x11\x8d\xfc', + -0x7203: b'\x11\x8d\xfd', + -0x7202: b'\x11\x8d\xfe', + -0x7201: b'\x11\x8d\xff', + -0x7200: b'\x11\x8e\x00', + -0x71ff: b'\x11\x8e\x01', + -0x71fe: b'\x11\x8e\x02', + -0x71fd: b'\x11\x8e\x03', + -0x71fc: b'\x11\x8e\x04', + -0x71fb: b'\x11\x8e\x05', + -0x71fa: b'\x11\x8e\x06', + -0x71f9: b'\x11\x8e\x07', + -0x71f8: b'\x11\x8e\x08', + -0x71f7: b'\x11\x8e\t', + -0x71f6: b'\x11\x8e\n', + -0x71f5: b'\x11\x8e\x0b', + -0x71f4: b'\x11\x8e\x0c', + -0x71f3: b'\x11\x8e\r', + -0x71f2: b'\x11\x8e\x0e', + -0x71f1: b'\x11\x8e\x0f', + -0x71f0: b'\x11\x8e\x10', + -0x71ef: b'\x11\x8e\x11', + -0x71ee: b'\x11\x8e\x12', + -0x71ed: b'\x11\x8e\x13', + -0x71ec: b'\x11\x8e\x14', + -0x71eb: b'\x11\x8e\x15', + -0x71ea: b'\x11\x8e\x16', + -0x71e9: b'\x11\x8e\x17', + -0x71e8: b'\x11\x8e\x18', + -0x71e7: b'\x11\x8e\x19', + -0x71e6: b'\x11\x8e\x1a', + -0x71e5: b'\x11\x8e\x1b', + -0x71e4: b'\x11\x8e\x1c', + -0x71e3: b'\x11\x8e\x1d', + -0x71e2: b'\x11\x8e\x1e', + -0x71e1: b'\x11\x8e\x1f', + -0x71e0: b'\x11\x8e ', + -0x71df: b'\x11\x8e!', + -0x71de: b'\x11\x8e"', + -0x71dd: b'\x11\x8e#', + -0x71dc: b'\x11\x8e$', + -0x71db: b'\x11\x8e%', + -0x71da: b'\x11\x8e&', + -0x71d9: b"\x11\x8e'", + -0x71d8: b'\x11\x8e(', + -0x71d7: b'\x11\x8e)', + -0x71d6: b'\x11\x8e*', + -0x71d5: b'\x11\x8e+', + -0x71d4: b'\x11\x8e,', + -0x71d3: b'\x11\x8e-', + -0x71d2: b'\x11\x8e.', + -0x71d1: b'\x11\x8e/', + -0x71d0: b'\x11\x8e0', + -0x71cf: b'\x11\x8e1', + -0x71ce: b'\x11\x8e2', + -0x71cd: b'\x11\x8e3', + -0x71cc: b'\x11\x8e4', + -0x71cb: b'\x11\x8e5', + -0x71ca: b'\x11\x8e6', + -0x71c9: b'\x11\x8e7', + -0x71c8: b'\x11\x8e8', + -0x71c7: b'\x11\x8e9', + -0x71c6: b'\x11\x8e:', + -0x71c5: b'\x11\x8e;', + -0x71c4: b'\x11\x8e<', + -0x71c3: b'\x11\x8e=', + -0x71c2: b'\x11\x8e>', + -0x71c1: b'\x11\x8e?', + -0x71c0: b'\x11\x8e@', + -0x71bf: b'\x11\x8eA', + -0x71be: b'\x11\x8eB', + -0x71bd: b'\x11\x8eC', + -0x71bc: b'\x11\x8eD', + -0x71bb: b'\x11\x8eE', + -0x71ba: b'\x11\x8eF', + -0x71b9: b'\x11\x8eG', + -0x71b8: b'\x11\x8eH', + -0x71b7: b'\x11\x8eI', + -0x71b6: b'\x11\x8eJ', + -0x71b5: b'\x11\x8eK', + -0x71b4: b'\x11\x8eL', + -0x71b3: b'\x11\x8eM', + -0x71b2: b'\x11\x8eN', + -0x71b1: b'\x11\x8eO', + -0x71b0: b'\x11\x8eP', + -0x71af: b'\x11\x8eQ', + -0x71ae: b'\x11\x8eR', + -0x71ad: b'\x11\x8eS', + -0x71ac: b'\x11\x8eT', + -0x71ab: b'\x11\x8eU', + -0x71aa: b'\x11\x8eV', + -0x71a9: b'\x11\x8eW', + -0x71a8: b'\x11\x8eX', + -0x71a7: b'\x11\x8eY', + -0x71a6: b'\x11\x8eZ', + -0x71a5: b'\x11\x8e[', + -0x71a4: b'\x11\x8e\\', + -0x71a3: b'\x11\x8e]', + -0x71a2: b'\x11\x8e^', + -0x71a1: b'\x11\x8e_', + -0x71a0: b'\x11\x8e`', + -0x719f: b'\x11\x8ea', + -0x719e: b'\x11\x8eb', + -0x719d: b'\x11\x8ec', + -0x719c: b'\x11\x8ed', + -0x719b: b'\x11\x8ee', + -0x719a: b'\x11\x8ef', + -0x7199: b'\x11\x8eg', + -0x7198: b'\x11\x8eh', + -0x7197: b'\x11\x8ei', + -0x7196: b'\x11\x8ej', + -0x7195: b'\x11\x8ek', + -0x7194: b'\x11\x8el', + -0x7193: b'\x11\x8em', + -0x7192: b'\x11\x8en', + -0x7191: b'\x11\x8eo', + -0x7190: b'\x11\x8ep', + -0x718f: b'\x11\x8eq', + -0x718e: b'\x11\x8er', + -0x718d: b'\x11\x8es', + -0x718c: b'\x11\x8et', + -0x718b: b'\x11\x8eu', + -0x718a: b'\x11\x8ev', + -0x7189: b'\x11\x8ew', + -0x7188: b'\x11\x8ex', + -0x7187: b'\x11\x8ey', + -0x7186: b'\x11\x8ez', + -0x7185: b'\x11\x8e{', + -0x7184: b'\x11\x8e|', + -0x7183: b'\x11\x8e}', + -0x7182: b'\x11\x8e~', + -0x7181: b'\x11\x8e\x7f', + -0x7180: b'\x11\x8e\x80', + -0x717f: b'\x11\x8e\x81', + -0x717e: b'\x11\x8e\x82', + -0x717d: b'\x11\x8e\x83', + -0x717c: b'\x11\x8e\x84', + -0x717b: b'\x11\x8e\x85', + -0x717a: b'\x11\x8e\x86', + -0x7179: b'\x11\x8e\x87', + -0x7178: b'\x11\x8e\x88', + -0x7177: b'\x11\x8e\x89', + -0x7176: b'\x11\x8e\x8a', + -0x7175: b'\x11\x8e\x8b', + -0x7174: b'\x11\x8e\x8c', + -0x7173: b'\x11\x8e\x8d', + -0x7172: b'\x11\x8e\x8e', + -0x7171: b'\x11\x8e\x8f', + -0x7170: b'\x11\x8e\x90', + -0x716f: b'\x11\x8e\x91', + -0x716e: b'\x11\x8e\x92', + -0x716d: b'\x11\x8e\x93', + -0x716c: b'\x11\x8e\x94', + -0x716b: b'\x11\x8e\x95', + -0x716a: b'\x11\x8e\x96', + -0x7169: b'\x11\x8e\x97', + -0x7168: b'\x11\x8e\x98', + -0x7167: b'\x11\x8e\x99', + -0x7166: b'\x11\x8e\x9a', + -0x7165: b'\x11\x8e\x9b', + -0x7164: b'\x11\x8e\x9c', + -0x7163: b'\x11\x8e\x9d', + -0x7162: b'\x11\x8e\x9e', + -0x7161: b'\x11\x8e\x9f', + -0x7160: b'\x11\x8e\xa0', + -0x715f: b'\x11\x8e\xa1', + -0x715e: b'\x11\x8e\xa2', + -0x715d: b'\x11\x8e\xa3', + -0x715c: b'\x11\x8e\xa4', + -0x715b: b'\x11\x8e\xa5', + -0x715a: b'\x11\x8e\xa6', + -0x7159: b'\x11\x8e\xa7', + -0x7158: b'\x11\x8e\xa8', + -0x7157: b'\x11\x8e\xa9', + -0x7156: b'\x11\x8e\xaa', + -0x7155: b'\x11\x8e\xab', + -0x7154: b'\x11\x8e\xac', + -0x7153: b'\x11\x8e\xad', + -0x7152: b'\x11\x8e\xae', + -0x7151: b'\x11\x8e\xaf', + -0x7150: b'\x11\x8e\xb0', + -0x714f: b'\x11\x8e\xb1', + -0x714e: b'\x11\x8e\xb2', + -0x714d: b'\x11\x8e\xb3', + -0x714c: b'\x11\x8e\xb4', + -0x714b: b'\x11\x8e\xb5', + -0x714a: b'\x11\x8e\xb6', + -0x7149: b'\x11\x8e\xb7', + -0x7148: b'\x11\x8e\xb8', + -0x7147: b'\x11\x8e\xb9', + -0x7146: b'\x11\x8e\xba', + -0x7145: b'\x11\x8e\xbb', + -0x7144: b'\x11\x8e\xbc', + -0x7143: b'\x11\x8e\xbd', + -0x7142: b'\x11\x8e\xbe', + -0x7141: b'\x11\x8e\xbf', + -0x7140: b'\x11\x8e\xc0', + -0x713f: b'\x11\x8e\xc1', + -0x713e: b'\x11\x8e\xc2', + -0x713d: b'\x11\x8e\xc3', + -0x713c: b'\x11\x8e\xc4', + -0x713b: b'\x11\x8e\xc5', + -0x713a: b'\x11\x8e\xc6', + -0x7139: b'\x11\x8e\xc7', + -0x7138: b'\x11\x8e\xc8', + -0x7137: b'\x11\x8e\xc9', + -0x7136: b'\x11\x8e\xca', + -0x7135: b'\x11\x8e\xcb', + -0x7134: b'\x11\x8e\xcc', + -0x7133: b'\x11\x8e\xcd', + -0x7132: b'\x11\x8e\xce', + -0x7131: b'\x11\x8e\xcf', + -0x7130: b'\x11\x8e\xd0', + -0x712f: b'\x11\x8e\xd1', + -0x712e: b'\x11\x8e\xd2', + -0x712d: b'\x11\x8e\xd3', + -0x712c: b'\x11\x8e\xd4', + -0x712b: b'\x11\x8e\xd5', + -0x712a: b'\x11\x8e\xd6', + -0x7129: b'\x11\x8e\xd7', + -0x7128: b'\x11\x8e\xd8', + -0x7127: b'\x11\x8e\xd9', + -0x7126: b'\x11\x8e\xda', + -0x7125: b'\x11\x8e\xdb', + -0x7124: b'\x11\x8e\xdc', + -0x7123: b'\x11\x8e\xdd', + -0x7122: b'\x11\x8e\xde', + -0x7121: b'\x11\x8e\xdf', + -0x7120: b'\x11\x8e\xe0', + -0x711f: b'\x11\x8e\xe1', + -0x711e: b'\x11\x8e\xe2', + -0x711d: b'\x11\x8e\xe3', + -0x711c: b'\x11\x8e\xe4', + -0x711b: b'\x11\x8e\xe5', + -0x711a: b'\x11\x8e\xe6', + -0x7119: b'\x11\x8e\xe7', + -0x7118: b'\x11\x8e\xe8', + -0x7117: b'\x11\x8e\xe9', + -0x7116: b'\x11\x8e\xea', + -0x7115: b'\x11\x8e\xeb', + -0x7114: b'\x11\x8e\xec', + -0x7113: b'\x11\x8e\xed', + -0x7112: b'\x11\x8e\xee', + -0x7111: b'\x11\x8e\xef', + -0x7110: b'\x11\x8e\xf0', + -0x710f: b'\x11\x8e\xf1', + -0x710e: b'\x11\x8e\xf2', + -0x710d: b'\x11\x8e\xf3', + -0x710c: b'\x11\x8e\xf4', + -0x710b: b'\x11\x8e\xf5', + -0x710a: b'\x11\x8e\xf6', + -0x7109: b'\x11\x8e\xf7', + -0x7108: b'\x11\x8e\xf8', + -0x7107: b'\x11\x8e\xf9', + -0x7106: b'\x11\x8e\xfa', + -0x7105: b'\x11\x8e\xfb', + -0x7104: b'\x11\x8e\xfc', + -0x7103: b'\x11\x8e\xfd', + -0x7102: b'\x11\x8e\xfe', + -0x7101: b'\x11\x8e\xff', + -0x7100: b'\x11\x8f\x00', + -0x70ff: b'\x11\x8f\x01', + -0x70fe: b'\x11\x8f\x02', + -0x70fd: b'\x11\x8f\x03', + -0x70fc: b'\x11\x8f\x04', + -0x70fb: b'\x11\x8f\x05', + -0x70fa: b'\x11\x8f\x06', + -0x70f9: b'\x11\x8f\x07', + -0x70f8: b'\x11\x8f\x08', + -0x70f7: b'\x11\x8f\t', + -0x70f6: b'\x11\x8f\n', + -0x70f5: b'\x11\x8f\x0b', + -0x70f4: b'\x11\x8f\x0c', + -0x70f3: b'\x11\x8f\r', + -0x70f2: b'\x11\x8f\x0e', + -0x70f1: b'\x11\x8f\x0f', + -0x70f0: b'\x11\x8f\x10', + -0x70ef: b'\x11\x8f\x11', + -0x70ee: b'\x11\x8f\x12', + -0x70ed: b'\x11\x8f\x13', + -0x70ec: b'\x11\x8f\x14', + -0x70eb: b'\x11\x8f\x15', + -0x70ea: b'\x11\x8f\x16', + -0x70e9: b'\x11\x8f\x17', + -0x70e8: b'\x11\x8f\x18', + -0x70e7: b'\x11\x8f\x19', + -0x70e6: b'\x11\x8f\x1a', + -0x70e5: b'\x11\x8f\x1b', + -0x70e4: b'\x11\x8f\x1c', + -0x70e3: b'\x11\x8f\x1d', + -0x70e2: b'\x11\x8f\x1e', + -0x70e1: b'\x11\x8f\x1f', + -0x70e0: b'\x11\x8f ', + -0x70df: b'\x11\x8f!', + -0x70de: b'\x11\x8f"', + -0x70dd: b'\x11\x8f#', + -0x70dc: b'\x11\x8f$', + -0x70db: b'\x11\x8f%', + -0x70da: b'\x11\x8f&', + -0x70d9: b"\x11\x8f'", + -0x70d8: b'\x11\x8f(', + -0x70d7: b'\x11\x8f)', + -0x70d6: b'\x11\x8f*', + -0x70d5: b'\x11\x8f+', + -0x70d4: b'\x11\x8f,', + -0x70d3: b'\x11\x8f-', + -0x70d2: b'\x11\x8f.', + -0x70d1: b'\x11\x8f/', + -0x70d0: b'\x11\x8f0', + -0x70cf: b'\x11\x8f1', + -0x70ce: b'\x11\x8f2', + -0x70cd: b'\x11\x8f3', + -0x70cc: b'\x11\x8f4', + -0x70cb: b'\x11\x8f5', + -0x70ca: b'\x11\x8f6', + -0x70c9: b'\x11\x8f7', + -0x70c8: b'\x11\x8f8', + -0x70c7: b'\x11\x8f9', + -0x70c6: b'\x11\x8f:', + -0x70c5: b'\x11\x8f;', + -0x70c4: b'\x11\x8f<', + -0x70c3: b'\x11\x8f=', + -0x70c2: b'\x11\x8f>', + -0x70c1: b'\x11\x8f?', + -0x70c0: b'\x11\x8f@', + -0x70bf: b'\x11\x8fA', + -0x70be: b'\x11\x8fB', + -0x70bd: b'\x11\x8fC', + -0x70bc: b'\x11\x8fD', + -0x70bb: b'\x11\x8fE', + -0x70ba: b'\x11\x8fF', + -0x70b9: b'\x11\x8fG', + -0x70b8: b'\x11\x8fH', + -0x70b7: b'\x11\x8fI', + -0x70b6: b'\x11\x8fJ', + -0x70b5: b'\x11\x8fK', + -0x70b4: b'\x11\x8fL', + -0x70b3: b'\x11\x8fM', + -0x70b2: b'\x11\x8fN', + -0x70b1: b'\x11\x8fO', + -0x70b0: b'\x11\x8fP', + -0x70af: b'\x11\x8fQ', + -0x70ae: b'\x11\x8fR', + -0x70ad: b'\x11\x8fS', + -0x70ac: b'\x11\x8fT', + -0x70ab: b'\x11\x8fU', + -0x70aa: b'\x11\x8fV', + -0x70a9: b'\x11\x8fW', + -0x70a8: b'\x11\x8fX', + -0x70a7: b'\x11\x8fY', + -0x70a6: b'\x11\x8fZ', + -0x70a5: b'\x11\x8f[', + -0x70a4: b'\x11\x8f\\', + -0x70a3: b'\x11\x8f]', + -0x70a2: b'\x11\x8f^', + -0x70a1: b'\x11\x8f_', + -0x70a0: b'\x11\x8f`', + -0x709f: b'\x11\x8fa', + -0x709e: b'\x11\x8fb', + -0x709d: b'\x11\x8fc', + -0x709c: b'\x11\x8fd', + -0x709b: b'\x11\x8fe', + -0x709a: b'\x11\x8ff', + -0x7099: b'\x11\x8fg', + -0x7098: b'\x11\x8fh', + -0x7097: b'\x11\x8fi', + -0x7096: b'\x11\x8fj', + -0x7095: b'\x11\x8fk', + -0x7094: b'\x11\x8fl', + -0x7093: b'\x11\x8fm', + -0x7092: b'\x11\x8fn', + -0x7091: b'\x11\x8fo', + -0x7090: b'\x11\x8fp', + -0x708f: b'\x11\x8fq', + -0x708e: b'\x11\x8fr', + -0x708d: b'\x11\x8fs', + -0x708c: b'\x11\x8ft', + -0x708b: b'\x11\x8fu', + -0x708a: b'\x11\x8fv', + -0x7089: b'\x11\x8fw', + -0x7088: b'\x11\x8fx', + -0x7087: b'\x11\x8fy', + -0x7086: b'\x11\x8fz', + -0x7085: b'\x11\x8f{', + -0x7084: b'\x11\x8f|', + -0x7083: b'\x11\x8f}', + -0x7082: b'\x11\x8f~', + -0x7081: b'\x11\x8f\x7f', + -0x7080: b'\x11\x8f\x80', + -0x707f: b'\x11\x8f\x81', + -0x707e: b'\x11\x8f\x82', + -0x707d: b'\x11\x8f\x83', + -0x707c: b'\x11\x8f\x84', + -0x707b: b'\x11\x8f\x85', + -0x707a: b'\x11\x8f\x86', + -0x7079: b'\x11\x8f\x87', + -0x7078: b'\x11\x8f\x88', + -0x7077: b'\x11\x8f\x89', + -0x7076: b'\x11\x8f\x8a', + -0x7075: b'\x11\x8f\x8b', + -0x7074: b'\x11\x8f\x8c', + -0x7073: b'\x11\x8f\x8d', + -0x7072: b'\x11\x8f\x8e', + -0x7071: b'\x11\x8f\x8f', + -0x7070: b'\x11\x8f\x90', + -0x706f: b'\x11\x8f\x91', + -0x706e: b'\x11\x8f\x92', + -0x706d: b'\x11\x8f\x93', + -0x706c: b'\x11\x8f\x94', + -0x706b: b'\x11\x8f\x95', + -0x706a: b'\x11\x8f\x96', + -0x7069: b'\x11\x8f\x97', + -0x7068: b'\x11\x8f\x98', + -0x7067: b'\x11\x8f\x99', + -0x7066: b'\x11\x8f\x9a', + -0x7065: b'\x11\x8f\x9b', + -0x7064: b'\x11\x8f\x9c', + -0x7063: b'\x11\x8f\x9d', + -0x7062: b'\x11\x8f\x9e', + -0x7061: b'\x11\x8f\x9f', + -0x7060: b'\x11\x8f\xa0', + -0x705f: b'\x11\x8f\xa1', + -0x705e: b'\x11\x8f\xa2', + -0x705d: b'\x11\x8f\xa3', + -0x705c: b'\x11\x8f\xa4', + -0x705b: b'\x11\x8f\xa5', + -0x705a: b'\x11\x8f\xa6', + -0x7059: b'\x11\x8f\xa7', + -0x7058: b'\x11\x8f\xa8', + -0x7057: b'\x11\x8f\xa9', + -0x7056: b'\x11\x8f\xaa', + -0x7055: b'\x11\x8f\xab', + -0x7054: b'\x11\x8f\xac', + -0x7053: b'\x11\x8f\xad', + -0x7052: b'\x11\x8f\xae', + -0x7051: b'\x11\x8f\xaf', + -0x7050: b'\x11\x8f\xb0', + -0x704f: b'\x11\x8f\xb1', + -0x704e: b'\x11\x8f\xb2', + -0x704d: b'\x11\x8f\xb3', + -0x704c: b'\x11\x8f\xb4', + -0x704b: b'\x11\x8f\xb5', + -0x704a: b'\x11\x8f\xb6', + -0x7049: b'\x11\x8f\xb7', + -0x7048: b'\x11\x8f\xb8', + -0x7047: b'\x11\x8f\xb9', + -0x7046: b'\x11\x8f\xba', + -0x7045: b'\x11\x8f\xbb', + -0x7044: b'\x11\x8f\xbc', + -0x7043: b'\x11\x8f\xbd', + -0x7042: b'\x11\x8f\xbe', + -0x7041: b'\x11\x8f\xbf', + -0x7040: b'\x11\x8f\xc0', + -0x703f: b'\x11\x8f\xc1', + -0x703e: b'\x11\x8f\xc2', + -0x703d: b'\x11\x8f\xc3', + -0x703c: b'\x11\x8f\xc4', + -0x703b: b'\x11\x8f\xc5', + -0x703a: b'\x11\x8f\xc6', + -0x7039: b'\x11\x8f\xc7', + -0x7038: b'\x11\x8f\xc8', + -0x7037: b'\x11\x8f\xc9', + -0x7036: b'\x11\x8f\xca', + -0x7035: b'\x11\x8f\xcb', + -0x7034: b'\x11\x8f\xcc', + -0x7033: b'\x11\x8f\xcd', + -0x7032: b'\x11\x8f\xce', + -0x7031: b'\x11\x8f\xcf', + -0x7030: b'\x11\x8f\xd0', + -0x702f: b'\x11\x8f\xd1', + -0x702e: b'\x11\x8f\xd2', + -0x702d: b'\x11\x8f\xd3', + -0x702c: b'\x11\x8f\xd4', + -0x702b: b'\x11\x8f\xd5', + -0x702a: b'\x11\x8f\xd6', + -0x7029: b'\x11\x8f\xd7', + -0x7028: b'\x11\x8f\xd8', + -0x7027: b'\x11\x8f\xd9', + -0x7026: b'\x11\x8f\xda', + -0x7025: b'\x11\x8f\xdb', + -0x7024: b'\x11\x8f\xdc', + -0x7023: b'\x11\x8f\xdd', + -0x7022: b'\x11\x8f\xde', + -0x7021: b'\x11\x8f\xdf', + -0x7020: b'\x11\x8f\xe0', + -0x701f: b'\x11\x8f\xe1', + -0x701e: b'\x11\x8f\xe2', + -0x701d: b'\x11\x8f\xe3', + -0x701c: b'\x11\x8f\xe4', + -0x701b: b'\x11\x8f\xe5', + -0x701a: b'\x11\x8f\xe6', + -0x7019: b'\x11\x8f\xe7', + -0x7018: b'\x11\x8f\xe8', + -0x7017: b'\x11\x8f\xe9', + -0x7016: b'\x11\x8f\xea', + -0x7015: b'\x11\x8f\xeb', + -0x7014: b'\x11\x8f\xec', + -0x7013: b'\x11\x8f\xed', + -0x7012: b'\x11\x8f\xee', + -0x7011: b'\x11\x8f\xef', + -0x7010: b'\x11\x8f\xf0', + -0x700f: b'\x11\x8f\xf1', + -0x700e: b'\x11\x8f\xf2', + -0x700d: b'\x11\x8f\xf3', + -0x700c: b'\x11\x8f\xf4', + -0x700b: b'\x11\x8f\xf5', + -0x700a: b'\x11\x8f\xf6', + -0x7009: b'\x11\x8f\xf7', + -0x7008: b'\x11\x8f\xf8', + -0x7007: b'\x11\x8f\xf9', + -0x7006: b'\x11\x8f\xfa', + -0x7005: b'\x11\x8f\xfb', + -0x7004: b'\x11\x8f\xfc', + -0x7003: b'\x11\x8f\xfd', + -0x7002: b'\x11\x8f\xfe', + -0x7001: b'\x11\x8f\xff', + -0x7000: b'\x11\x90\x00', + -0x6fff: b'\x11\x90\x01', + -0x6ffe: b'\x11\x90\x02', + -0x6ffd: b'\x11\x90\x03', + -0x6ffc: b'\x11\x90\x04', + -0x6ffb: b'\x11\x90\x05', + -0x6ffa: b'\x11\x90\x06', + -0x6ff9: b'\x11\x90\x07', + -0x6ff8: b'\x11\x90\x08', + -0x6ff7: b'\x11\x90\t', + -0x6ff6: b'\x11\x90\n', + -0x6ff5: b'\x11\x90\x0b', + -0x6ff4: b'\x11\x90\x0c', + -0x6ff3: b'\x11\x90\r', + -0x6ff2: b'\x11\x90\x0e', + -0x6ff1: b'\x11\x90\x0f', + -0x6ff0: b'\x11\x90\x10', + -0x6fef: b'\x11\x90\x11', + -0x6fee: b'\x11\x90\x12', + -0x6fed: b'\x11\x90\x13', + -0x6fec: b'\x11\x90\x14', + -0x6feb: b'\x11\x90\x15', + -0x6fea: b'\x11\x90\x16', + -0x6fe9: b'\x11\x90\x17', + -0x6fe8: b'\x11\x90\x18', + -0x6fe7: b'\x11\x90\x19', + -0x6fe6: b'\x11\x90\x1a', + -0x6fe5: b'\x11\x90\x1b', + -0x6fe4: b'\x11\x90\x1c', + -0x6fe3: b'\x11\x90\x1d', + -0x6fe2: b'\x11\x90\x1e', + -0x6fe1: b'\x11\x90\x1f', + -0x6fe0: b'\x11\x90 ', + -0x6fdf: b'\x11\x90!', + -0x6fde: b'\x11\x90"', + -0x6fdd: b'\x11\x90#', + -0x6fdc: b'\x11\x90$', + -0x6fdb: b'\x11\x90%', + -0x6fda: b'\x11\x90&', + -0x6fd9: b"\x11\x90'", + -0x6fd8: b'\x11\x90(', + -0x6fd7: b'\x11\x90)', + -0x6fd6: b'\x11\x90*', + -0x6fd5: b'\x11\x90+', + -0x6fd4: b'\x11\x90,', + -0x6fd3: b'\x11\x90-', + -0x6fd2: b'\x11\x90.', + -0x6fd1: b'\x11\x90/', + -0x6fd0: b'\x11\x900', + -0x6fcf: b'\x11\x901', + -0x6fce: b'\x11\x902', + -0x6fcd: b'\x11\x903', + -0x6fcc: b'\x11\x904', + -0x6fcb: b'\x11\x905', + -0x6fca: b'\x11\x906', + -0x6fc9: b'\x11\x907', + -0x6fc8: b'\x11\x908', + -0x6fc7: b'\x11\x909', + -0x6fc6: b'\x11\x90:', + -0x6fc5: b'\x11\x90;', + -0x6fc4: b'\x11\x90<', + -0x6fc3: b'\x11\x90=', + -0x6fc2: b'\x11\x90>', + -0x6fc1: b'\x11\x90?', + -0x6fc0: b'\x11\x90@', + -0x6fbf: b'\x11\x90A', + -0x6fbe: b'\x11\x90B', + -0x6fbd: b'\x11\x90C', + -0x6fbc: b'\x11\x90D', + -0x6fbb: b'\x11\x90E', + -0x6fba: b'\x11\x90F', + -0x6fb9: b'\x11\x90G', + -0x6fb8: b'\x11\x90H', + -0x6fb7: b'\x11\x90I', + -0x6fb6: b'\x11\x90J', + -0x6fb5: b'\x11\x90K', + -0x6fb4: b'\x11\x90L', + -0x6fb3: b'\x11\x90M', + -0x6fb2: b'\x11\x90N', + -0x6fb1: b'\x11\x90O', + -0x6fb0: b'\x11\x90P', + -0x6faf: b'\x11\x90Q', + -0x6fae: b'\x11\x90R', + -0x6fad: b'\x11\x90S', + -0x6fac: b'\x11\x90T', + -0x6fab: b'\x11\x90U', + -0x6faa: b'\x11\x90V', + -0x6fa9: b'\x11\x90W', + -0x6fa8: b'\x11\x90X', + -0x6fa7: b'\x11\x90Y', + -0x6fa6: b'\x11\x90Z', + -0x6fa5: b'\x11\x90[', + -0x6fa4: b'\x11\x90\\', + -0x6fa3: b'\x11\x90]', + -0x6fa2: b'\x11\x90^', + -0x6fa1: b'\x11\x90_', + -0x6fa0: b'\x11\x90`', + -0x6f9f: b'\x11\x90a', + -0x6f9e: b'\x11\x90b', + -0x6f9d: b'\x11\x90c', + -0x6f9c: b'\x11\x90d', + -0x6f9b: b'\x11\x90e', + -0x6f9a: b'\x11\x90f', + -0x6f99: b'\x11\x90g', + -0x6f98: b'\x11\x90h', + -0x6f97: b'\x11\x90i', + -0x6f96: b'\x11\x90j', + -0x6f95: b'\x11\x90k', + -0x6f94: b'\x11\x90l', + -0x6f93: b'\x11\x90m', + -0x6f92: b'\x11\x90n', + -0x6f91: b'\x11\x90o', + -0x6f90: b'\x11\x90p', + -0x6f8f: b'\x11\x90q', + -0x6f8e: b'\x11\x90r', + -0x6f8d: b'\x11\x90s', + -0x6f8c: b'\x11\x90t', + -0x6f8b: b'\x11\x90u', + -0x6f8a: b'\x11\x90v', + -0x6f89: b'\x11\x90w', + -0x6f88: b'\x11\x90x', + -0x6f87: b'\x11\x90y', + -0x6f86: b'\x11\x90z', + -0x6f85: b'\x11\x90{', + -0x6f84: b'\x11\x90|', + -0x6f83: b'\x11\x90}', + -0x6f82: b'\x11\x90~', + -0x6f81: b'\x11\x90\x7f', + -0x6f80: b'\x11\x90\x80', + -0x6f7f: b'\x11\x90\x81', + -0x6f7e: b'\x11\x90\x82', + -0x6f7d: b'\x11\x90\x83', + -0x6f7c: b'\x11\x90\x84', + -0x6f7b: b'\x11\x90\x85', + -0x6f7a: b'\x11\x90\x86', + -0x6f79: b'\x11\x90\x87', + -0x6f78: b'\x11\x90\x88', + -0x6f77: b'\x11\x90\x89', + -0x6f76: b'\x11\x90\x8a', + -0x6f75: b'\x11\x90\x8b', + -0x6f74: b'\x11\x90\x8c', + -0x6f73: b'\x11\x90\x8d', + -0x6f72: b'\x11\x90\x8e', + -0x6f71: b'\x11\x90\x8f', + -0x6f70: b'\x11\x90\x90', + -0x6f6f: b'\x11\x90\x91', + -0x6f6e: b'\x11\x90\x92', + -0x6f6d: b'\x11\x90\x93', + -0x6f6c: b'\x11\x90\x94', + -0x6f6b: b'\x11\x90\x95', + -0x6f6a: b'\x11\x90\x96', + -0x6f69: b'\x11\x90\x97', + -0x6f68: b'\x11\x90\x98', + -0x6f67: b'\x11\x90\x99', + -0x6f66: b'\x11\x90\x9a', + -0x6f65: b'\x11\x90\x9b', + -0x6f64: b'\x11\x90\x9c', + -0x6f63: b'\x11\x90\x9d', + -0x6f62: b'\x11\x90\x9e', + -0x6f61: b'\x11\x90\x9f', + -0x6f60: b'\x11\x90\xa0', + -0x6f5f: b'\x11\x90\xa1', + -0x6f5e: b'\x11\x90\xa2', + -0x6f5d: b'\x11\x90\xa3', + -0x6f5c: b'\x11\x90\xa4', + -0x6f5b: b'\x11\x90\xa5', + -0x6f5a: b'\x11\x90\xa6', + -0x6f59: b'\x11\x90\xa7', + -0x6f58: b'\x11\x90\xa8', + -0x6f57: b'\x11\x90\xa9', + -0x6f56: b'\x11\x90\xaa', + -0x6f55: b'\x11\x90\xab', + -0x6f54: b'\x11\x90\xac', + -0x6f53: b'\x11\x90\xad', + -0x6f52: b'\x11\x90\xae', + -0x6f51: b'\x11\x90\xaf', + -0x6f50: b'\x11\x90\xb0', + -0x6f4f: b'\x11\x90\xb1', + -0x6f4e: b'\x11\x90\xb2', + -0x6f4d: b'\x11\x90\xb3', + -0x6f4c: b'\x11\x90\xb4', + -0x6f4b: b'\x11\x90\xb5', + -0x6f4a: b'\x11\x90\xb6', + -0x6f49: b'\x11\x90\xb7', + -0x6f48: b'\x11\x90\xb8', + -0x6f47: b'\x11\x90\xb9', + -0x6f46: b'\x11\x90\xba', + -0x6f45: b'\x11\x90\xbb', + -0x6f44: b'\x11\x90\xbc', + -0x6f43: b'\x11\x90\xbd', + -0x6f42: b'\x11\x90\xbe', + -0x6f41: b'\x11\x90\xbf', + -0x6f40: b'\x11\x90\xc0', + -0x6f3f: b'\x11\x90\xc1', + -0x6f3e: b'\x11\x90\xc2', + -0x6f3d: b'\x11\x90\xc3', + -0x6f3c: b'\x11\x90\xc4', + -0x6f3b: b'\x11\x90\xc5', + -0x6f3a: b'\x11\x90\xc6', + -0x6f39: b'\x11\x90\xc7', + -0x6f38: b'\x11\x90\xc8', + -0x6f37: b'\x11\x90\xc9', + -0x6f36: b'\x11\x90\xca', + -0x6f35: b'\x11\x90\xcb', + -0x6f34: b'\x11\x90\xcc', + -0x6f33: b'\x11\x90\xcd', + -0x6f32: b'\x11\x90\xce', + -0x6f31: b'\x11\x90\xcf', + -0x6f30: b'\x11\x90\xd0', + -0x6f2f: b'\x11\x90\xd1', + -0x6f2e: b'\x11\x90\xd2', + -0x6f2d: b'\x11\x90\xd3', + -0x6f2c: b'\x11\x90\xd4', + -0x6f2b: b'\x11\x90\xd5', + -0x6f2a: b'\x11\x90\xd6', + -0x6f29: b'\x11\x90\xd7', + -0x6f28: b'\x11\x90\xd8', + -0x6f27: b'\x11\x90\xd9', + -0x6f26: b'\x11\x90\xda', + -0x6f25: b'\x11\x90\xdb', + -0x6f24: b'\x11\x90\xdc', + -0x6f23: b'\x11\x90\xdd', + -0x6f22: b'\x11\x90\xde', + -0x6f21: b'\x11\x90\xdf', + -0x6f20: b'\x11\x90\xe0', + -0x6f1f: b'\x11\x90\xe1', + -0x6f1e: b'\x11\x90\xe2', + -0x6f1d: b'\x11\x90\xe3', + -0x6f1c: b'\x11\x90\xe4', + -0x6f1b: b'\x11\x90\xe5', + -0x6f1a: b'\x11\x90\xe6', + -0x6f19: b'\x11\x90\xe7', + -0x6f18: b'\x11\x90\xe8', + -0x6f17: b'\x11\x90\xe9', + -0x6f16: b'\x11\x90\xea', + -0x6f15: b'\x11\x90\xeb', + -0x6f14: b'\x11\x90\xec', + -0x6f13: b'\x11\x90\xed', + -0x6f12: b'\x11\x90\xee', + -0x6f11: b'\x11\x90\xef', + -0x6f10: b'\x11\x90\xf0', + -0x6f0f: b'\x11\x90\xf1', + -0x6f0e: b'\x11\x90\xf2', + -0x6f0d: b'\x11\x90\xf3', + -0x6f0c: b'\x11\x90\xf4', + -0x6f0b: b'\x11\x90\xf5', + -0x6f0a: b'\x11\x90\xf6', + -0x6f09: b'\x11\x90\xf7', + -0x6f08: b'\x11\x90\xf8', + -0x6f07: b'\x11\x90\xf9', + -0x6f06: b'\x11\x90\xfa', + -0x6f05: b'\x11\x90\xfb', + -0x6f04: b'\x11\x90\xfc', + -0x6f03: b'\x11\x90\xfd', + -0x6f02: b'\x11\x90\xfe', + -0x6f01: b'\x11\x90\xff', + -0x6f00: b'\x11\x91\x00', + -0x6eff: b'\x11\x91\x01', + -0x6efe: b'\x11\x91\x02', + -0x6efd: b'\x11\x91\x03', + -0x6efc: b'\x11\x91\x04', + -0x6efb: b'\x11\x91\x05', + -0x6efa: b'\x11\x91\x06', + -0x6ef9: b'\x11\x91\x07', + -0x6ef8: b'\x11\x91\x08', + -0x6ef7: b'\x11\x91\t', + -0x6ef6: b'\x11\x91\n', + -0x6ef5: b'\x11\x91\x0b', + -0x6ef4: b'\x11\x91\x0c', + -0x6ef3: b'\x11\x91\r', + -0x6ef2: b'\x11\x91\x0e', + -0x6ef1: b'\x11\x91\x0f', + -0x6ef0: b'\x11\x91\x10', + -0x6eef: b'\x11\x91\x11', + -0x6eee: b'\x11\x91\x12', + -0x6eed: b'\x11\x91\x13', + -0x6eec: b'\x11\x91\x14', + -0x6eeb: b'\x11\x91\x15', + -0x6eea: b'\x11\x91\x16', + -0x6ee9: b'\x11\x91\x17', + -0x6ee8: b'\x11\x91\x18', + -0x6ee7: b'\x11\x91\x19', + -0x6ee6: b'\x11\x91\x1a', + -0x6ee5: b'\x11\x91\x1b', + -0x6ee4: b'\x11\x91\x1c', + -0x6ee3: b'\x11\x91\x1d', + -0x6ee2: b'\x11\x91\x1e', + -0x6ee1: b'\x11\x91\x1f', + -0x6ee0: b'\x11\x91 ', + -0x6edf: b'\x11\x91!', + -0x6ede: b'\x11\x91"', + -0x6edd: b'\x11\x91#', + -0x6edc: b'\x11\x91$', + -0x6edb: b'\x11\x91%', + -0x6eda: b'\x11\x91&', + -0x6ed9: b"\x11\x91'", + -0x6ed8: b'\x11\x91(', + -0x6ed7: b'\x11\x91)', + -0x6ed6: b'\x11\x91*', + -0x6ed5: b'\x11\x91+', + -0x6ed4: b'\x11\x91,', + -0x6ed3: b'\x11\x91-', + -0x6ed2: b'\x11\x91.', + -0x6ed1: b'\x11\x91/', + -0x6ed0: b'\x11\x910', + -0x6ecf: b'\x11\x911', + -0x6ece: b'\x11\x912', + -0x6ecd: b'\x11\x913', + -0x6ecc: b'\x11\x914', + -0x6ecb: b'\x11\x915', + -0x6eca: b'\x11\x916', + -0x6ec9: b'\x11\x917', + -0x6ec8: b'\x11\x918', + -0x6ec7: b'\x11\x919', + -0x6ec6: b'\x11\x91:', + -0x6ec5: b'\x11\x91;', + -0x6ec4: b'\x11\x91<', + -0x6ec3: b'\x11\x91=', + -0x6ec2: b'\x11\x91>', + -0x6ec1: b'\x11\x91?', + -0x6ec0: b'\x11\x91@', + -0x6ebf: b'\x11\x91A', + -0x6ebe: b'\x11\x91B', + -0x6ebd: b'\x11\x91C', + -0x6ebc: b'\x11\x91D', + -0x6ebb: b'\x11\x91E', + -0x6eba: b'\x11\x91F', + -0x6eb9: b'\x11\x91G', + -0x6eb8: b'\x11\x91H', + -0x6eb7: b'\x11\x91I', + -0x6eb6: b'\x11\x91J', + -0x6eb5: b'\x11\x91K', + -0x6eb4: b'\x11\x91L', + -0x6eb3: b'\x11\x91M', + -0x6eb2: b'\x11\x91N', + -0x6eb1: b'\x11\x91O', + -0x6eb0: b'\x11\x91P', + -0x6eaf: b'\x11\x91Q', + -0x6eae: b'\x11\x91R', + -0x6ead: b'\x11\x91S', + -0x6eac: b'\x11\x91T', + -0x6eab: b'\x11\x91U', + -0x6eaa: b'\x11\x91V', + -0x6ea9: b'\x11\x91W', + -0x6ea8: b'\x11\x91X', + -0x6ea7: b'\x11\x91Y', + -0x6ea6: b'\x11\x91Z', + -0x6ea5: b'\x11\x91[', + -0x6ea4: b'\x11\x91\\', + -0x6ea3: b'\x11\x91]', + -0x6ea2: b'\x11\x91^', + -0x6ea1: b'\x11\x91_', + -0x6ea0: b'\x11\x91`', + -0x6e9f: b'\x11\x91a', + -0x6e9e: b'\x11\x91b', + -0x6e9d: b'\x11\x91c', + -0x6e9c: b'\x11\x91d', + -0x6e9b: b'\x11\x91e', + -0x6e9a: b'\x11\x91f', + -0x6e99: b'\x11\x91g', + -0x6e98: b'\x11\x91h', + -0x6e97: b'\x11\x91i', + -0x6e96: b'\x11\x91j', + -0x6e95: b'\x11\x91k', + -0x6e94: b'\x11\x91l', + -0x6e93: b'\x11\x91m', + -0x6e92: b'\x11\x91n', + -0x6e91: b'\x11\x91o', + -0x6e90: b'\x11\x91p', + -0x6e8f: b'\x11\x91q', + -0x6e8e: b'\x11\x91r', + -0x6e8d: b'\x11\x91s', + -0x6e8c: b'\x11\x91t', + -0x6e8b: b'\x11\x91u', + -0x6e8a: b'\x11\x91v', + -0x6e89: b'\x11\x91w', + -0x6e88: b'\x11\x91x', + -0x6e87: b'\x11\x91y', + -0x6e86: b'\x11\x91z', + -0x6e85: b'\x11\x91{', + -0x6e84: b'\x11\x91|', + -0x6e83: b'\x11\x91}', + -0x6e82: b'\x11\x91~', + -0x6e81: b'\x11\x91\x7f', + -0x6e80: b'\x11\x91\x80', + -0x6e7f: b'\x11\x91\x81', + -0x6e7e: b'\x11\x91\x82', + -0x6e7d: b'\x11\x91\x83', + -0x6e7c: b'\x11\x91\x84', + -0x6e7b: b'\x11\x91\x85', + -0x6e7a: b'\x11\x91\x86', + -0x6e79: b'\x11\x91\x87', + -0x6e78: b'\x11\x91\x88', + -0x6e77: b'\x11\x91\x89', + -0x6e76: b'\x11\x91\x8a', + -0x6e75: b'\x11\x91\x8b', + -0x6e74: b'\x11\x91\x8c', + -0x6e73: b'\x11\x91\x8d', + -0x6e72: b'\x11\x91\x8e', + -0x6e71: b'\x11\x91\x8f', + -0x6e70: b'\x11\x91\x90', + -0x6e6f: b'\x11\x91\x91', + -0x6e6e: b'\x11\x91\x92', + -0x6e6d: b'\x11\x91\x93', + -0x6e6c: b'\x11\x91\x94', + -0x6e6b: b'\x11\x91\x95', + -0x6e6a: b'\x11\x91\x96', + -0x6e69: b'\x11\x91\x97', + -0x6e68: b'\x11\x91\x98', + -0x6e67: b'\x11\x91\x99', + -0x6e66: b'\x11\x91\x9a', + -0x6e65: b'\x11\x91\x9b', + -0x6e64: b'\x11\x91\x9c', + -0x6e63: b'\x11\x91\x9d', + -0x6e62: b'\x11\x91\x9e', + -0x6e61: b'\x11\x91\x9f', + -0x6e60: b'\x11\x91\xa0', + -0x6e5f: b'\x11\x91\xa1', + -0x6e5e: b'\x11\x91\xa2', + -0x6e5d: b'\x11\x91\xa3', + -0x6e5c: b'\x11\x91\xa4', + -0x6e5b: b'\x11\x91\xa5', + -0x6e5a: b'\x11\x91\xa6', + -0x6e59: b'\x11\x91\xa7', + -0x6e58: b'\x11\x91\xa8', + -0x6e57: b'\x11\x91\xa9', + -0x6e56: b'\x11\x91\xaa', + -0x6e55: b'\x11\x91\xab', + -0x6e54: b'\x11\x91\xac', + -0x6e53: b'\x11\x91\xad', + -0x6e52: b'\x11\x91\xae', + -0x6e51: b'\x11\x91\xaf', + -0x6e50: b'\x11\x91\xb0', + -0x6e4f: b'\x11\x91\xb1', + -0x6e4e: b'\x11\x91\xb2', + -0x6e4d: b'\x11\x91\xb3', + -0x6e4c: b'\x11\x91\xb4', + -0x6e4b: b'\x11\x91\xb5', + -0x6e4a: b'\x11\x91\xb6', + -0x6e49: b'\x11\x91\xb7', + -0x6e48: b'\x11\x91\xb8', + -0x6e47: b'\x11\x91\xb9', + -0x6e46: b'\x11\x91\xba', + -0x6e45: b'\x11\x91\xbb', + -0x6e44: b'\x11\x91\xbc', + -0x6e43: b'\x11\x91\xbd', + -0x6e42: b'\x11\x91\xbe', + -0x6e41: b'\x11\x91\xbf', + -0x6e40: b'\x11\x91\xc0', + -0x6e3f: b'\x11\x91\xc1', + -0x6e3e: b'\x11\x91\xc2', + -0x6e3d: b'\x11\x91\xc3', + -0x6e3c: b'\x11\x91\xc4', + -0x6e3b: b'\x11\x91\xc5', + -0x6e3a: b'\x11\x91\xc6', + -0x6e39: b'\x11\x91\xc7', + -0x6e38: b'\x11\x91\xc8', + -0x6e37: b'\x11\x91\xc9', + -0x6e36: b'\x11\x91\xca', + -0x6e35: b'\x11\x91\xcb', + -0x6e34: b'\x11\x91\xcc', + -0x6e33: b'\x11\x91\xcd', + -0x6e32: b'\x11\x91\xce', + -0x6e31: b'\x11\x91\xcf', + -0x6e30: b'\x11\x91\xd0', + -0x6e2f: b'\x11\x91\xd1', + -0x6e2e: b'\x11\x91\xd2', + -0x6e2d: b'\x11\x91\xd3', + -0x6e2c: b'\x11\x91\xd4', + -0x6e2b: b'\x11\x91\xd5', + -0x6e2a: b'\x11\x91\xd6', + -0x6e29: b'\x11\x91\xd7', + -0x6e28: b'\x11\x91\xd8', + -0x6e27: b'\x11\x91\xd9', + -0x6e26: b'\x11\x91\xda', + -0x6e25: b'\x11\x91\xdb', + -0x6e24: b'\x11\x91\xdc', + -0x6e23: b'\x11\x91\xdd', + -0x6e22: b'\x11\x91\xde', + -0x6e21: b'\x11\x91\xdf', + -0x6e20: b'\x11\x91\xe0', + -0x6e1f: b'\x11\x91\xe1', + -0x6e1e: b'\x11\x91\xe2', + -0x6e1d: b'\x11\x91\xe3', + -0x6e1c: b'\x11\x91\xe4', + -0x6e1b: b'\x11\x91\xe5', + -0x6e1a: b'\x11\x91\xe6', + -0x6e19: b'\x11\x91\xe7', + -0x6e18: b'\x11\x91\xe8', + -0x6e17: b'\x11\x91\xe9', + -0x6e16: b'\x11\x91\xea', + -0x6e15: b'\x11\x91\xeb', + -0x6e14: b'\x11\x91\xec', + -0x6e13: b'\x11\x91\xed', + -0x6e12: b'\x11\x91\xee', + -0x6e11: b'\x11\x91\xef', + -0x6e10: b'\x11\x91\xf0', + -0x6e0f: b'\x11\x91\xf1', + -0x6e0e: b'\x11\x91\xf2', + -0x6e0d: b'\x11\x91\xf3', + -0x6e0c: b'\x11\x91\xf4', + -0x6e0b: b'\x11\x91\xf5', + -0x6e0a: b'\x11\x91\xf6', + -0x6e09: b'\x11\x91\xf7', + -0x6e08: b'\x11\x91\xf8', + -0x6e07: b'\x11\x91\xf9', + -0x6e06: b'\x11\x91\xfa', + -0x6e05: b'\x11\x91\xfb', + -0x6e04: b'\x11\x91\xfc', + -0x6e03: b'\x11\x91\xfd', + -0x6e02: b'\x11\x91\xfe', + -0x6e01: b'\x11\x91\xff', + -0x6e00: b'\x11\x92\x00', + -0x6dff: b'\x11\x92\x01', + -0x6dfe: b'\x11\x92\x02', + -0x6dfd: b'\x11\x92\x03', + -0x6dfc: b'\x11\x92\x04', + -0x6dfb: b'\x11\x92\x05', + -0x6dfa: b'\x11\x92\x06', + -0x6df9: b'\x11\x92\x07', + -0x6df8: b'\x11\x92\x08', + -0x6df7: b'\x11\x92\t', + -0x6df6: b'\x11\x92\n', + -0x6df5: b'\x11\x92\x0b', + -0x6df4: b'\x11\x92\x0c', + -0x6df3: b'\x11\x92\r', + -0x6df2: b'\x11\x92\x0e', + -0x6df1: b'\x11\x92\x0f', + -0x6df0: b'\x11\x92\x10', + -0x6def: b'\x11\x92\x11', + -0x6dee: b'\x11\x92\x12', + -0x6ded: b'\x11\x92\x13', + -0x6dec: b'\x11\x92\x14', + -0x6deb: b'\x11\x92\x15', + -0x6dea: b'\x11\x92\x16', + -0x6de9: b'\x11\x92\x17', + -0x6de8: b'\x11\x92\x18', + -0x6de7: b'\x11\x92\x19', + -0x6de6: b'\x11\x92\x1a', + -0x6de5: b'\x11\x92\x1b', + -0x6de4: b'\x11\x92\x1c', + -0x6de3: b'\x11\x92\x1d', + -0x6de2: b'\x11\x92\x1e', + -0x6de1: b'\x11\x92\x1f', + -0x6de0: b'\x11\x92 ', + -0x6ddf: b'\x11\x92!', + -0x6dde: b'\x11\x92"', + -0x6ddd: b'\x11\x92#', + -0x6ddc: b'\x11\x92$', + -0x6ddb: b'\x11\x92%', + -0x6dda: b'\x11\x92&', + -0x6dd9: b"\x11\x92'", + -0x6dd8: b'\x11\x92(', + -0x6dd7: b'\x11\x92)', + -0x6dd6: b'\x11\x92*', + -0x6dd5: b'\x11\x92+', + -0x6dd4: b'\x11\x92,', + -0x6dd3: b'\x11\x92-', + -0x6dd2: b'\x11\x92.', + -0x6dd1: b'\x11\x92/', + -0x6dd0: b'\x11\x920', + -0x6dcf: b'\x11\x921', + -0x6dce: b'\x11\x922', + -0x6dcd: b'\x11\x923', + -0x6dcc: b'\x11\x924', + -0x6dcb: b'\x11\x925', + -0x6dca: b'\x11\x926', + -0x6dc9: b'\x11\x927', + -0x6dc8: b'\x11\x928', + -0x6dc7: b'\x11\x929', + -0x6dc6: b'\x11\x92:', + -0x6dc5: b'\x11\x92;', + -0x6dc4: b'\x11\x92<', + -0x6dc3: b'\x11\x92=', + -0x6dc2: b'\x11\x92>', + -0x6dc1: b'\x11\x92?', + -0x6dc0: b'\x11\x92@', + -0x6dbf: b'\x11\x92A', + -0x6dbe: b'\x11\x92B', + -0x6dbd: b'\x11\x92C', + -0x6dbc: b'\x11\x92D', + -0x6dbb: b'\x11\x92E', + -0x6dba: b'\x11\x92F', + -0x6db9: b'\x11\x92G', + -0x6db8: b'\x11\x92H', + -0x6db7: b'\x11\x92I', + -0x6db6: b'\x11\x92J', + -0x6db5: b'\x11\x92K', + -0x6db4: b'\x11\x92L', + -0x6db3: b'\x11\x92M', + -0x6db2: b'\x11\x92N', + -0x6db1: b'\x11\x92O', + -0x6db0: b'\x11\x92P', + -0x6daf: b'\x11\x92Q', + -0x6dae: b'\x11\x92R', + -0x6dad: b'\x11\x92S', + -0x6dac: b'\x11\x92T', + -0x6dab: b'\x11\x92U', + -0x6daa: b'\x11\x92V', + -0x6da9: b'\x11\x92W', + -0x6da8: b'\x11\x92X', + -0x6da7: b'\x11\x92Y', + -0x6da6: b'\x11\x92Z', + -0x6da5: b'\x11\x92[', + -0x6da4: b'\x11\x92\\', + -0x6da3: b'\x11\x92]', + -0x6da2: b'\x11\x92^', + -0x6da1: b'\x11\x92_', + -0x6da0: b'\x11\x92`', + -0x6d9f: b'\x11\x92a', + -0x6d9e: b'\x11\x92b', + -0x6d9d: b'\x11\x92c', + -0x6d9c: b'\x11\x92d', + -0x6d9b: b'\x11\x92e', + -0x6d9a: b'\x11\x92f', + -0x6d99: b'\x11\x92g', + -0x6d98: b'\x11\x92h', + -0x6d97: b'\x11\x92i', + -0x6d96: b'\x11\x92j', + -0x6d95: b'\x11\x92k', + -0x6d94: b'\x11\x92l', + -0x6d93: b'\x11\x92m', + -0x6d92: b'\x11\x92n', + -0x6d91: b'\x11\x92o', + -0x6d90: b'\x11\x92p', + -0x6d8f: b'\x11\x92q', + -0x6d8e: b'\x11\x92r', + -0x6d8d: b'\x11\x92s', + -0x6d8c: b'\x11\x92t', + -0x6d8b: b'\x11\x92u', + -0x6d8a: b'\x11\x92v', + -0x6d89: b'\x11\x92w', + -0x6d88: b'\x11\x92x', + -0x6d87: b'\x11\x92y', + -0x6d86: b'\x11\x92z', + -0x6d85: b'\x11\x92{', + -0x6d84: b'\x11\x92|', + -0x6d83: b'\x11\x92}', + -0x6d82: b'\x11\x92~', + -0x6d81: b'\x11\x92\x7f', + -0x6d80: b'\x11\x92\x80', + -0x6d7f: b'\x11\x92\x81', + -0x6d7e: b'\x11\x92\x82', + -0x6d7d: b'\x11\x92\x83', + -0x6d7c: b'\x11\x92\x84', + -0x6d7b: b'\x11\x92\x85', + -0x6d7a: b'\x11\x92\x86', + -0x6d79: b'\x11\x92\x87', + -0x6d78: b'\x11\x92\x88', + -0x6d77: b'\x11\x92\x89', + -0x6d76: b'\x11\x92\x8a', + -0x6d75: b'\x11\x92\x8b', + -0x6d74: b'\x11\x92\x8c', + -0x6d73: b'\x11\x92\x8d', + -0x6d72: b'\x11\x92\x8e', + -0x6d71: b'\x11\x92\x8f', + -0x6d70: b'\x11\x92\x90', + -0x6d6f: b'\x11\x92\x91', + -0x6d6e: b'\x11\x92\x92', + -0x6d6d: b'\x11\x92\x93', + -0x6d6c: b'\x11\x92\x94', + -0x6d6b: b'\x11\x92\x95', + -0x6d6a: b'\x11\x92\x96', + -0x6d69: b'\x11\x92\x97', + -0x6d68: b'\x11\x92\x98', + -0x6d67: b'\x11\x92\x99', + -0x6d66: b'\x11\x92\x9a', + -0x6d65: b'\x11\x92\x9b', + -0x6d64: b'\x11\x92\x9c', + -0x6d63: b'\x11\x92\x9d', + -0x6d62: b'\x11\x92\x9e', + -0x6d61: b'\x11\x92\x9f', + -0x6d60: b'\x11\x92\xa0', + -0x6d5f: b'\x11\x92\xa1', + -0x6d5e: b'\x11\x92\xa2', + -0x6d5d: b'\x11\x92\xa3', + -0x6d5c: b'\x11\x92\xa4', + -0x6d5b: b'\x11\x92\xa5', + -0x6d5a: b'\x11\x92\xa6', + -0x6d59: b'\x11\x92\xa7', + -0x6d58: b'\x11\x92\xa8', + -0x6d57: b'\x11\x92\xa9', + -0x6d56: b'\x11\x92\xaa', + -0x6d55: b'\x11\x92\xab', + -0x6d54: b'\x11\x92\xac', + -0x6d53: b'\x11\x92\xad', + -0x6d52: b'\x11\x92\xae', + -0x6d51: b'\x11\x92\xaf', + -0x6d50: b'\x11\x92\xb0', + -0x6d4f: b'\x11\x92\xb1', + -0x6d4e: b'\x11\x92\xb2', + -0x6d4d: b'\x11\x92\xb3', + -0x6d4c: b'\x11\x92\xb4', + -0x6d4b: b'\x11\x92\xb5', + -0x6d4a: b'\x11\x92\xb6', + -0x6d49: b'\x11\x92\xb7', + -0x6d48: b'\x11\x92\xb8', + -0x6d47: b'\x11\x92\xb9', + -0x6d46: b'\x11\x92\xba', + -0x6d45: b'\x11\x92\xbb', + -0x6d44: b'\x11\x92\xbc', + -0x6d43: b'\x11\x92\xbd', + -0x6d42: b'\x11\x92\xbe', + -0x6d41: b'\x11\x92\xbf', + -0x6d40: b'\x11\x92\xc0', + -0x6d3f: b'\x11\x92\xc1', + -0x6d3e: b'\x11\x92\xc2', + -0x6d3d: b'\x11\x92\xc3', + -0x6d3c: b'\x11\x92\xc4', + -0x6d3b: b'\x11\x92\xc5', + -0x6d3a: b'\x11\x92\xc6', + -0x6d39: b'\x11\x92\xc7', + -0x6d38: b'\x11\x92\xc8', + -0x6d37: b'\x11\x92\xc9', + -0x6d36: b'\x11\x92\xca', + -0x6d35: b'\x11\x92\xcb', + -0x6d34: b'\x11\x92\xcc', + -0x6d33: b'\x11\x92\xcd', + -0x6d32: b'\x11\x92\xce', + -0x6d31: b'\x11\x92\xcf', + -0x6d30: b'\x11\x92\xd0', + -0x6d2f: b'\x11\x92\xd1', + -0x6d2e: b'\x11\x92\xd2', + -0x6d2d: b'\x11\x92\xd3', + -0x6d2c: b'\x11\x92\xd4', + -0x6d2b: b'\x11\x92\xd5', + -0x6d2a: b'\x11\x92\xd6', + -0x6d29: b'\x11\x92\xd7', + -0x6d28: b'\x11\x92\xd8', + -0x6d27: b'\x11\x92\xd9', + -0x6d26: b'\x11\x92\xda', + -0x6d25: b'\x11\x92\xdb', + -0x6d24: b'\x11\x92\xdc', + -0x6d23: b'\x11\x92\xdd', + -0x6d22: b'\x11\x92\xde', + -0x6d21: b'\x11\x92\xdf', + -0x6d20: b'\x11\x92\xe0', + -0x6d1f: b'\x11\x92\xe1', + -0x6d1e: b'\x11\x92\xe2', + -0x6d1d: b'\x11\x92\xe3', + -0x6d1c: b'\x11\x92\xe4', + -0x6d1b: b'\x11\x92\xe5', + -0x6d1a: b'\x11\x92\xe6', + -0x6d19: b'\x11\x92\xe7', + -0x6d18: b'\x11\x92\xe8', + -0x6d17: b'\x11\x92\xe9', + -0x6d16: b'\x11\x92\xea', + -0x6d15: b'\x11\x92\xeb', + -0x6d14: b'\x11\x92\xec', + -0x6d13: b'\x11\x92\xed', + -0x6d12: b'\x11\x92\xee', + -0x6d11: b'\x11\x92\xef', + -0x6d10: b'\x11\x92\xf0', + -0x6d0f: b'\x11\x92\xf1', + -0x6d0e: b'\x11\x92\xf2', + -0x6d0d: b'\x11\x92\xf3', + -0x6d0c: b'\x11\x92\xf4', + -0x6d0b: b'\x11\x92\xf5', + -0x6d0a: b'\x11\x92\xf6', + -0x6d09: b'\x11\x92\xf7', + -0x6d08: b'\x11\x92\xf8', + -0x6d07: b'\x11\x92\xf9', + -0x6d06: b'\x11\x92\xfa', + -0x6d05: b'\x11\x92\xfb', + -0x6d04: b'\x11\x92\xfc', + -0x6d03: b'\x11\x92\xfd', + -0x6d02: b'\x11\x92\xfe', + -0x6d01: b'\x11\x92\xff', + -0x6d00: b'\x11\x93\x00', + -0x6cff: b'\x11\x93\x01', + -0x6cfe: b'\x11\x93\x02', + -0x6cfd: b'\x11\x93\x03', + -0x6cfc: b'\x11\x93\x04', + -0x6cfb: b'\x11\x93\x05', + -0x6cfa: b'\x11\x93\x06', + -0x6cf9: b'\x11\x93\x07', + -0x6cf8: b'\x11\x93\x08', + -0x6cf7: b'\x11\x93\t', + -0x6cf6: b'\x11\x93\n', + -0x6cf5: b'\x11\x93\x0b', + -0x6cf4: b'\x11\x93\x0c', + -0x6cf3: b'\x11\x93\r', + -0x6cf2: b'\x11\x93\x0e', + -0x6cf1: b'\x11\x93\x0f', + -0x6cf0: b'\x11\x93\x10', + -0x6cef: b'\x11\x93\x11', + -0x6cee: b'\x11\x93\x12', + -0x6ced: b'\x11\x93\x13', + -0x6cec: b'\x11\x93\x14', + -0x6ceb: b'\x11\x93\x15', + -0x6cea: b'\x11\x93\x16', + -0x6ce9: b'\x11\x93\x17', + -0x6ce8: b'\x11\x93\x18', + -0x6ce7: b'\x11\x93\x19', + -0x6ce6: b'\x11\x93\x1a', + -0x6ce5: b'\x11\x93\x1b', + -0x6ce4: b'\x11\x93\x1c', + -0x6ce3: b'\x11\x93\x1d', + -0x6ce2: b'\x11\x93\x1e', + -0x6ce1: b'\x11\x93\x1f', + -0x6ce0: b'\x11\x93 ', + -0x6cdf: b'\x11\x93!', + -0x6cde: b'\x11\x93"', + -0x6cdd: b'\x11\x93#', + -0x6cdc: b'\x11\x93$', + -0x6cdb: b'\x11\x93%', + -0x6cda: b'\x11\x93&', + -0x6cd9: b"\x11\x93'", + -0x6cd8: b'\x11\x93(', + -0x6cd7: b'\x11\x93)', + -0x6cd6: b'\x11\x93*', + -0x6cd5: b'\x11\x93+', + -0x6cd4: b'\x11\x93,', + -0x6cd3: b'\x11\x93-', + -0x6cd2: b'\x11\x93.', + -0x6cd1: b'\x11\x93/', + -0x6cd0: b'\x11\x930', + -0x6ccf: b'\x11\x931', + -0x6cce: b'\x11\x932', + -0x6ccd: b'\x11\x933', + -0x6ccc: b'\x11\x934', + -0x6ccb: b'\x11\x935', + -0x6cca: b'\x11\x936', + -0x6cc9: b'\x11\x937', + -0x6cc8: b'\x11\x938', + -0x6cc7: b'\x11\x939', + -0x6cc6: b'\x11\x93:', + -0x6cc5: b'\x11\x93;', + -0x6cc4: b'\x11\x93<', + -0x6cc3: b'\x11\x93=', + -0x6cc2: b'\x11\x93>', + -0x6cc1: b'\x11\x93?', + -0x6cc0: b'\x11\x93@', + -0x6cbf: b'\x11\x93A', + -0x6cbe: b'\x11\x93B', + -0x6cbd: b'\x11\x93C', + -0x6cbc: b'\x11\x93D', + -0x6cbb: b'\x11\x93E', + -0x6cba: b'\x11\x93F', + -0x6cb9: b'\x11\x93G', + -0x6cb8: b'\x11\x93H', + -0x6cb7: b'\x11\x93I', + -0x6cb6: b'\x11\x93J', + -0x6cb5: b'\x11\x93K', + -0x6cb4: b'\x11\x93L', + -0x6cb3: b'\x11\x93M', + -0x6cb2: b'\x11\x93N', + -0x6cb1: b'\x11\x93O', + -0x6cb0: b'\x11\x93P', + -0x6caf: b'\x11\x93Q', + -0x6cae: b'\x11\x93R', + -0x6cad: b'\x11\x93S', + -0x6cac: b'\x11\x93T', + -0x6cab: b'\x11\x93U', + -0x6caa: b'\x11\x93V', + -0x6ca9: b'\x11\x93W', + -0x6ca8: b'\x11\x93X', + -0x6ca7: b'\x11\x93Y', + -0x6ca6: b'\x11\x93Z', + -0x6ca5: b'\x11\x93[', + -0x6ca4: b'\x11\x93\\', + -0x6ca3: b'\x11\x93]', + -0x6ca2: b'\x11\x93^', + -0x6ca1: b'\x11\x93_', + -0x6ca0: b'\x11\x93`', + -0x6c9f: b'\x11\x93a', + -0x6c9e: b'\x11\x93b', + -0x6c9d: b'\x11\x93c', + -0x6c9c: b'\x11\x93d', + -0x6c9b: b'\x11\x93e', + -0x6c9a: b'\x11\x93f', + -0x6c99: b'\x11\x93g', + -0x6c98: b'\x11\x93h', + -0x6c97: b'\x11\x93i', + -0x6c96: b'\x11\x93j', + -0x6c95: b'\x11\x93k', + -0x6c94: b'\x11\x93l', + -0x6c93: b'\x11\x93m', + -0x6c92: b'\x11\x93n', + -0x6c91: b'\x11\x93o', + -0x6c90: b'\x11\x93p', + -0x6c8f: b'\x11\x93q', + -0x6c8e: b'\x11\x93r', + -0x6c8d: b'\x11\x93s', + -0x6c8c: b'\x11\x93t', + -0x6c8b: b'\x11\x93u', + -0x6c8a: b'\x11\x93v', + -0x6c89: b'\x11\x93w', + -0x6c88: b'\x11\x93x', + -0x6c87: b'\x11\x93y', + -0x6c86: b'\x11\x93z', + -0x6c85: b'\x11\x93{', + -0x6c84: b'\x11\x93|', + -0x6c83: b'\x11\x93}', + -0x6c82: b'\x11\x93~', + -0x6c81: b'\x11\x93\x7f', + -0x6c80: b'\x11\x93\x80', + -0x6c7f: b'\x11\x93\x81', + -0x6c7e: b'\x11\x93\x82', + -0x6c7d: b'\x11\x93\x83', + -0x6c7c: b'\x11\x93\x84', + -0x6c7b: b'\x11\x93\x85', + -0x6c7a: b'\x11\x93\x86', + -0x6c79: b'\x11\x93\x87', + -0x6c78: b'\x11\x93\x88', + -0x6c77: b'\x11\x93\x89', + -0x6c76: b'\x11\x93\x8a', + -0x6c75: b'\x11\x93\x8b', + -0x6c74: b'\x11\x93\x8c', + -0x6c73: b'\x11\x93\x8d', + -0x6c72: b'\x11\x93\x8e', + -0x6c71: b'\x11\x93\x8f', + -0x6c70: b'\x11\x93\x90', + -0x6c6f: b'\x11\x93\x91', + -0x6c6e: b'\x11\x93\x92', + -0x6c6d: b'\x11\x93\x93', + -0x6c6c: b'\x11\x93\x94', + -0x6c6b: b'\x11\x93\x95', + -0x6c6a: b'\x11\x93\x96', + -0x6c69: b'\x11\x93\x97', + -0x6c68: b'\x11\x93\x98', + -0x6c67: b'\x11\x93\x99', + -0x6c66: b'\x11\x93\x9a', + -0x6c65: b'\x11\x93\x9b', + -0x6c64: b'\x11\x93\x9c', + -0x6c63: b'\x11\x93\x9d', + -0x6c62: b'\x11\x93\x9e', + -0x6c61: b'\x11\x93\x9f', + -0x6c60: b'\x11\x93\xa0', + -0x6c5f: b'\x11\x93\xa1', + -0x6c5e: b'\x11\x93\xa2', + -0x6c5d: b'\x11\x93\xa3', + -0x6c5c: b'\x11\x93\xa4', + -0x6c5b: b'\x11\x93\xa5', + -0x6c5a: b'\x11\x93\xa6', + -0x6c59: b'\x11\x93\xa7', + -0x6c58: b'\x11\x93\xa8', + -0x6c57: b'\x11\x93\xa9', + -0x6c56: b'\x11\x93\xaa', + -0x6c55: b'\x11\x93\xab', + -0x6c54: b'\x11\x93\xac', + -0x6c53: b'\x11\x93\xad', + -0x6c52: b'\x11\x93\xae', + -0x6c51: b'\x11\x93\xaf', + -0x6c50: b'\x11\x93\xb0', + -0x6c4f: b'\x11\x93\xb1', + -0x6c4e: b'\x11\x93\xb2', + -0x6c4d: b'\x11\x93\xb3', + -0x6c4c: b'\x11\x93\xb4', + -0x6c4b: b'\x11\x93\xb5', + -0x6c4a: b'\x11\x93\xb6', + -0x6c49: b'\x11\x93\xb7', + -0x6c48: b'\x11\x93\xb8', + -0x6c47: b'\x11\x93\xb9', + -0x6c46: b'\x11\x93\xba', + -0x6c45: b'\x11\x93\xbb', + -0x6c44: b'\x11\x93\xbc', + -0x6c43: b'\x11\x93\xbd', + -0x6c42: b'\x11\x93\xbe', + -0x6c41: b'\x11\x93\xbf', + -0x6c40: b'\x11\x93\xc0', + -0x6c3f: b'\x11\x93\xc1', + -0x6c3e: b'\x11\x93\xc2', + -0x6c3d: b'\x11\x93\xc3', + -0x6c3c: b'\x11\x93\xc4', + -0x6c3b: b'\x11\x93\xc5', + -0x6c3a: b'\x11\x93\xc6', + -0x6c39: b'\x11\x93\xc7', + -0x6c38: b'\x11\x93\xc8', + -0x6c37: b'\x11\x93\xc9', + -0x6c36: b'\x11\x93\xca', + -0x6c35: b'\x11\x93\xcb', + -0x6c34: b'\x11\x93\xcc', + -0x6c33: b'\x11\x93\xcd', + -0x6c32: b'\x11\x93\xce', + -0x6c31: b'\x11\x93\xcf', + -0x6c30: b'\x11\x93\xd0', + -0x6c2f: b'\x11\x93\xd1', + -0x6c2e: b'\x11\x93\xd2', + -0x6c2d: b'\x11\x93\xd3', + -0x6c2c: b'\x11\x93\xd4', + -0x6c2b: b'\x11\x93\xd5', + -0x6c2a: b'\x11\x93\xd6', + -0x6c29: b'\x11\x93\xd7', + -0x6c28: b'\x11\x93\xd8', + -0x6c27: b'\x11\x93\xd9', + -0x6c26: b'\x11\x93\xda', + -0x6c25: b'\x11\x93\xdb', + -0x6c24: b'\x11\x93\xdc', + -0x6c23: b'\x11\x93\xdd', + -0x6c22: b'\x11\x93\xde', + -0x6c21: b'\x11\x93\xdf', + -0x6c20: b'\x11\x93\xe0', + -0x6c1f: b'\x11\x93\xe1', + -0x6c1e: b'\x11\x93\xe2', + -0x6c1d: b'\x11\x93\xe3', + -0x6c1c: b'\x11\x93\xe4', + -0x6c1b: b'\x11\x93\xe5', + -0x6c1a: b'\x11\x93\xe6', + -0x6c19: b'\x11\x93\xe7', + -0x6c18: b'\x11\x93\xe8', + -0x6c17: b'\x11\x93\xe9', + -0x6c16: b'\x11\x93\xea', + -0x6c15: b'\x11\x93\xeb', + -0x6c14: b'\x11\x93\xec', + -0x6c13: b'\x11\x93\xed', + -0x6c12: b'\x11\x93\xee', + -0x6c11: b'\x11\x93\xef', + -0x6c10: b'\x11\x93\xf0', + -0x6c0f: b'\x11\x93\xf1', + -0x6c0e: b'\x11\x93\xf2', + -0x6c0d: b'\x11\x93\xf3', + -0x6c0c: b'\x11\x93\xf4', + -0x6c0b: b'\x11\x93\xf5', + -0x6c0a: b'\x11\x93\xf6', + -0x6c09: b'\x11\x93\xf7', + -0x6c08: b'\x11\x93\xf8', + -0x6c07: b'\x11\x93\xf9', + -0x6c06: b'\x11\x93\xfa', + -0x6c05: b'\x11\x93\xfb', + -0x6c04: b'\x11\x93\xfc', + -0x6c03: b'\x11\x93\xfd', + -0x6c02: b'\x11\x93\xfe', + -0x6c01: b'\x11\x93\xff', + -0x6c00: b'\x11\x94\x00', + -0x6bff: b'\x11\x94\x01', + -0x6bfe: b'\x11\x94\x02', + -0x6bfd: b'\x11\x94\x03', + -0x6bfc: b'\x11\x94\x04', + -0x6bfb: b'\x11\x94\x05', + -0x6bfa: b'\x11\x94\x06', + -0x6bf9: b'\x11\x94\x07', + -0x6bf8: b'\x11\x94\x08', + -0x6bf7: b'\x11\x94\t', + -0x6bf6: b'\x11\x94\n', + -0x6bf5: b'\x11\x94\x0b', + -0x6bf4: b'\x11\x94\x0c', + -0x6bf3: b'\x11\x94\r', + -0x6bf2: b'\x11\x94\x0e', + -0x6bf1: b'\x11\x94\x0f', + -0x6bf0: b'\x11\x94\x10', + -0x6bef: b'\x11\x94\x11', + -0x6bee: b'\x11\x94\x12', + -0x6bed: b'\x11\x94\x13', + -0x6bec: b'\x11\x94\x14', + -0x6beb: b'\x11\x94\x15', + -0x6bea: b'\x11\x94\x16', + -0x6be9: b'\x11\x94\x17', + -0x6be8: b'\x11\x94\x18', + -0x6be7: b'\x11\x94\x19', + -0x6be6: b'\x11\x94\x1a', + -0x6be5: b'\x11\x94\x1b', + -0x6be4: b'\x11\x94\x1c', + -0x6be3: b'\x11\x94\x1d', + -0x6be2: b'\x11\x94\x1e', + -0x6be1: b'\x11\x94\x1f', + -0x6be0: b'\x11\x94 ', + -0x6bdf: b'\x11\x94!', + -0x6bde: b'\x11\x94"', + -0x6bdd: b'\x11\x94#', + -0x6bdc: b'\x11\x94$', + -0x6bdb: b'\x11\x94%', + -0x6bda: b'\x11\x94&', + -0x6bd9: b"\x11\x94'", + -0x6bd8: b'\x11\x94(', + -0x6bd7: b'\x11\x94)', + -0x6bd6: b'\x11\x94*', + -0x6bd5: b'\x11\x94+', + -0x6bd4: b'\x11\x94,', + -0x6bd3: b'\x11\x94-', + -0x6bd2: b'\x11\x94.', + -0x6bd1: b'\x11\x94/', + -0x6bd0: b'\x11\x940', + -0x6bcf: b'\x11\x941', + -0x6bce: b'\x11\x942', + -0x6bcd: b'\x11\x943', + -0x6bcc: b'\x11\x944', + -0x6bcb: b'\x11\x945', + -0x6bca: b'\x11\x946', + -0x6bc9: b'\x11\x947', + -0x6bc8: b'\x11\x948', + -0x6bc7: b'\x11\x949', + -0x6bc6: b'\x11\x94:', + -0x6bc5: b'\x11\x94;', + -0x6bc4: b'\x11\x94<', + -0x6bc3: b'\x11\x94=', + -0x6bc2: b'\x11\x94>', + -0x6bc1: b'\x11\x94?', + -0x6bc0: b'\x11\x94@', + -0x6bbf: b'\x11\x94A', + -0x6bbe: b'\x11\x94B', + -0x6bbd: b'\x11\x94C', + -0x6bbc: b'\x11\x94D', + -0x6bbb: b'\x11\x94E', + -0x6bba: b'\x11\x94F', + -0x6bb9: b'\x11\x94G', + -0x6bb8: b'\x11\x94H', + -0x6bb7: b'\x11\x94I', + -0x6bb6: b'\x11\x94J', + -0x6bb5: b'\x11\x94K', + -0x6bb4: b'\x11\x94L', + -0x6bb3: b'\x11\x94M', + -0x6bb2: b'\x11\x94N', + -0x6bb1: b'\x11\x94O', + -0x6bb0: b'\x11\x94P', + -0x6baf: b'\x11\x94Q', + -0x6bae: b'\x11\x94R', + -0x6bad: b'\x11\x94S', + -0x6bac: b'\x11\x94T', + -0x6bab: b'\x11\x94U', + -0x6baa: b'\x11\x94V', + -0x6ba9: b'\x11\x94W', + -0x6ba8: b'\x11\x94X', + -0x6ba7: b'\x11\x94Y', + -0x6ba6: b'\x11\x94Z', + -0x6ba5: b'\x11\x94[', + -0x6ba4: b'\x11\x94\\', + -0x6ba3: b'\x11\x94]', + -0x6ba2: b'\x11\x94^', + -0x6ba1: b'\x11\x94_', + -0x6ba0: b'\x11\x94`', + -0x6b9f: b'\x11\x94a', + -0x6b9e: b'\x11\x94b', + -0x6b9d: b'\x11\x94c', + -0x6b9c: b'\x11\x94d', + -0x6b9b: b'\x11\x94e', + -0x6b9a: b'\x11\x94f', + -0x6b99: b'\x11\x94g', + -0x6b98: b'\x11\x94h', + -0x6b97: b'\x11\x94i', + -0x6b96: b'\x11\x94j', + -0x6b95: b'\x11\x94k', + -0x6b94: b'\x11\x94l', + -0x6b93: b'\x11\x94m', + -0x6b92: b'\x11\x94n', + -0x6b91: b'\x11\x94o', + -0x6b90: b'\x11\x94p', + -0x6b8f: b'\x11\x94q', + -0x6b8e: b'\x11\x94r', + -0x6b8d: b'\x11\x94s', + -0x6b8c: b'\x11\x94t', + -0x6b8b: b'\x11\x94u', + -0x6b8a: b'\x11\x94v', + -0x6b89: b'\x11\x94w', + -0x6b88: b'\x11\x94x', + -0x6b87: b'\x11\x94y', + -0x6b86: b'\x11\x94z', + -0x6b85: b'\x11\x94{', + -0x6b84: b'\x11\x94|', + -0x6b83: b'\x11\x94}', + -0x6b82: b'\x11\x94~', + -0x6b81: b'\x11\x94\x7f', + -0x6b80: b'\x11\x94\x80', + -0x6b7f: b'\x11\x94\x81', + -0x6b7e: b'\x11\x94\x82', + -0x6b7d: b'\x11\x94\x83', + -0x6b7c: b'\x11\x94\x84', + -0x6b7b: b'\x11\x94\x85', + -0x6b7a: b'\x11\x94\x86', + -0x6b79: b'\x11\x94\x87', + -0x6b78: b'\x11\x94\x88', + -0x6b77: b'\x11\x94\x89', + -0x6b76: b'\x11\x94\x8a', + -0x6b75: b'\x11\x94\x8b', + -0x6b74: b'\x11\x94\x8c', + -0x6b73: b'\x11\x94\x8d', + -0x6b72: b'\x11\x94\x8e', + -0x6b71: b'\x11\x94\x8f', + -0x6b70: b'\x11\x94\x90', + -0x6b6f: b'\x11\x94\x91', + -0x6b6e: b'\x11\x94\x92', + -0x6b6d: b'\x11\x94\x93', + -0x6b6c: b'\x11\x94\x94', + -0x6b6b: b'\x11\x94\x95', + -0x6b6a: b'\x11\x94\x96', + -0x6b69: b'\x11\x94\x97', + -0x6b68: b'\x11\x94\x98', + -0x6b67: b'\x11\x94\x99', + -0x6b66: b'\x11\x94\x9a', + -0x6b65: b'\x11\x94\x9b', + -0x6b64: b'\x11\x94\x9c', + -0x6b63: b'\x11\x94\x9d', + -0x6b62: b'\x11\x94\x9e', + -0x6b61: b'\x11\x94\x9f', + -0x6b60: b'\x11\x94\xa0', + -0x6b5f: b'\x11\x94\xa1', + -0x6b5e: b'\x11\x94\xa2', + -0x6b5d: b'\x11\x94\xa3', + -0x6b5c: b'\x11\x94\xa4', + -0x6b5b: b'\x11\x94\xa5', + -0x6b5a: b'\x11\x94\xa6', + -0x6b59: b'\x11\x94\xa7', + -0x6b58: b'\x11\x94\xa8', + -0x6b57: b'\x11\x94\xa9', + -0x6b56: b'\x11\x94\xaa', + -0x6b55: b'\x11\x94\xab', + -0x6b54: b'\x11\x94\xac', + -0x6b53: b'\x11\x94\xad', + -0x6b52: b'\x11\x94\xae', + -0x6b51: b'\x11\x94\xaf', + -0x6b50: b'\x11\x94\xb0', + -0x6b4f: b'\x11\x94\xb1', + -0x6b4e: b'\x11\x94\xb2', + -0x6b4d: b'\x11\x94\xb3', + -0x6b4c: b'\x11\x94\xb4', + -0x6b4b: b'\x11\x94\xb5', + -0x6b4a: b'\x11\x94\xb6', + -0x6b49: b'\x11\x94\xb7', + -0x6b48: b'\x11\x94\xb8', + -0x6b47: b'\x11\x94\xb9', + -0x6b46: b'\x11\x94\xba', + -0x6b45: b'\x11\x94\xbb', + -0x6b44: b'\x11\x94\xbc', + -0x6b43: b'\x11\x94\xbd', + -0x6b42: b'\x11\x94\xbe', + -0x6b41: b'\x11\x94\xbf', + -0x6b40: b'\x11\x94\xc0', + -0x6b3f: b'\x11\x94\xc1', + -0x6b3e: b'\x11\x94\xc2', + -0x6b3d: b'\x11\x94\xc3', + -0x6b3c: b'\x11\x94\xc4', + -0x6b3b: b'\x11\x94\xc5', + -0x6b3a: b'\x11\x94\xc6', + -0x6b39: b'\x11\x94\xc7', + -0x6b38: b'\x11\x94\xc8', + -0x6b37: b'\x11\x94\xc9', + -0x6b36: b'\x11\x94\xca', + -0x6b35: b'\x11\x94\xcb', + -0x6b34: b'\x11\x94\xcc', + -0x6b33: b'\x11\x94\xcd', + -0x6b32: b'\x11\x94\xce', + -0x6b31: b'\x11\x94\xcf', + -0x6b30: b'\x11\x94\xd0', + -0x6b2f: b'\x11\x94\xd1', + -0x6b2e: b'\x11\x94\xd2', + -0x6b2d: b'\x11\x94\xd3', + -0x6b2c: b'\x11\x94\xd4', + -0x6b2b: b'\x11\x94\xd5', + -0x6b2a: b'\x11\x94\xd6', + -0x6b29: b'\x11\x94\xd7', + -0x6b28: b'\x11\x94\xd8', + -0x6b27: b'\x11\x94\xd9', + -0x6b26: b'\x11\x94\xda', + -0x6b25: b'\x11\x94\xdb', + -0x6b24: b'\x11\x94\xdc', + -0x6b23: b'\x11\x94\xdd', + -0x6b22: b'\x11\x94\xde', + -0x6b21: b'\x11\x94\xdf', + -0x6b20: b'\x11\x94\xe0', + -0x6b1f: b'\x11\x94\xe1', + -0x6b1e: b'\x11\x94\xe2', + -0x6b1d: b'\x11\x94\xe3', + -0x6b1c: b'\x11\x94\xe4', + -0x6b1b: b'\x11\x94\xe5', + -0x6b1a: b'\x11\x94\xe6', + -0x6b19: b'\x11\x94\xe7', + -0x6b18: b'\x11\x94\xe8', + -0x6b17: b'\x11\x94\xe9', + -0x6b16: b'\x11\x94\xea', + -0x6b15: b'\x11\x94\xeb', + -0x6b14: b'\x11\x94\xec', + -0x6b13: b'\x11\x94\xed', + -0x6b12: b'\x11\x94\xee', + -0x6b11: b'\x11\x94\xef', + -0x6b10: b'\x11\x94\xf0', + -0x6b0f: b'\x11\x94\xf1', + -0x6b0e: b'\x11\x94\xf2', + -0x6b0d: b'\x11\x94\xf3', + -0x6b0c: b'\x11\x94\xf4', + -0x6b0b: b'\x11\x94\xf5', + -0x6b0a: b'\x11\x94\xf6', + -0x6b09: b'\x11\x94\xf7', + -0x6b08: b'\x11\x94\xf8', + -0x6b07: b'\x11\x94\xf9', + -0x6b06: b'\x11\x94\xfa', + -0x6b05: b'\x11\x94\xfb', + -0x6b04: b'\x11\x94\xfc', + -0x6b03: b'\x11\x94\xfd', + -0x6b02: b'\x11\x94\xfe', + -0x6b01: b'\x11\x94\xff', + -0x6b00: b'\x11\x95\x00', + -0x6aff: b'\x11\x95\x01', + -0x6afe: b'\x11\x95\x02', + -0x6afd: b'\x11\x95\x03', + -0x6afc: b'\x11\x95\x04', + -0x6afb: b'\x11\x95\x05', + -0x6afa: b'\x11\x95\x06', + -0x6af9: b'\x11\x95\x07', + -0x6af8: b'\x11\x95\x08', + -0x6af7: b'\x11\x95\t', + -0x6af6: b'\x11\x95\n', + -0x6af5: b'\x11\x95\x0b', + -0x6af4: b'\x11\x95\x0c', + -0x6af3: b'\x11\x95\r', + -0x6af2: b'\x11\x95\x0e', + -0x6af1: b'\x11\x95\x0f', + -0x6af0: b'\x11\x95\x10', + -0x6aef: b'\x11\x95\x11', + -0x6aee: b'\x11\x95\x12', + -0x6aed: b'\x11\x95\x13', + -0x6aec: b'\x11\x95\x14', + -0x6aeb: b'\x11\x95\x15', + -0x6aea: b'\x11\x95\x16', + -0x6ae9: b'\x11\x95\x17', + -0x6ae8: b'\x11\x95\x18', + -0x6ae7: b'\x11\x95\x19', + -0x6ae6: b'\x11\x95\x1a', + -0x6ae5: b'\x11\x95\x1b', + -0x6ae4: b'\x11\x95\x1c', + -0x6ae3: b'\x11\x95\x1d', + -0x6ae2: b'\x11\x95\x1e', + -0x6ae1: b'\x11\x95\x1f', + -0x6ae0: b'\x11\x95 ', + -0x6adf: b'\x11\x95!', + -0x6ade: b'\x11\x95"', + -0x6add: b'\x11\x95#', + -0x6adc: b'\x11\x95$', + -0x6adb: b'\x11\x95%', + -0x6ada: b'\x11\x95&', + -0x6ad9: b"\x11\x95'", + -0x6ad8: b'\x11\x95(', + -0x6ad7: b'\x11\x95)', + -0x6ad6: b'\x11\x95*', + -0x6ad5: b'\x11\x95+', + -0x6ad4: b'\x11\x95,', + -0x6ad3: b'\x11\x95-', + -0x6ad2: b'\x11\x95.', + -0x6ad1: b'\x11\x95/', + -0x6ad0: b'\x11\x950', + -0x6acf: b'\x11\x951', + -0x6ace: b'\x11\x952', + -0x6acd: b'\x11\x953', + -0x6acc: b'\x11\x954', + -0x6acb: b'\x11\x955', + -0x6aca: b'\x11\x956', + -0x6ac9: b'\x11\x957', + -0x6ac8: b'\x11\x958', + -0x6ac7: b'\x11\x959', + -0x6ac6: b'\x11\x95:', + -0x6ac5: b'\x11\x95;', + -0x6ac4: b'\x11\x95<', + -0x6ac3: b'\x11\x95=', + -0x6ac2: b'\x11\x95>', + -0x6ac1: b'\x11\x95?', + -0x6ac0: b'\x11\x95@', + -0x6abf: b'\x11\x95A', + -0x6abe: b'\x11\x95B', + -0x6abd: b'\x11\x95C', + -0x6abc: b'\x11\x95D', + -0x6abb: b'\x11\x95E', + -0x6aba: b'\x11\x95F', + -0x6ab9: b'\x11\x95G', + -0x6ab8: b'\x11\x95H', + -0x6ab7: b'\x11\x95I', + -0x6ab6: b'\x11\x95J', + -0x6ab5: b'\x11\x95K', + -0x6ab4: b'\x11\x95L', + -0x6ab3: b'\x11\x95M', + -0x6ab2: b'\x11\x95N', + -0x6ab1: b'\x11\x95O', + -0x6ab0: b'\x11\x95P', + -0x6aaf: b'\x11\x95Q', + -0x6aae: b'\x11\x95R', + -0x6aad: b'\x11\x95S', + -0x6aac: b'\x11\x95T', + -0x6aab: b'\x11\x95U', + -0x6aaa: b'\x11\x95V', + -0x6aa9: b'\x11\x95W', + -0x6aa8: b'\x11\x95X', + -0x6aa7: b'\x11\x95Y', + -0x6aa6: b'\x11\x95Z', + -0x6aa5: b'\x11\x95[', + -0x6aa4: b'\x11\x95\\', + -0x6aa3: b'\x11\x95]', + -0x6aa2: b'\x11\x95^', + -0x6aa1: b'\x11\x95_', + -0x6aa0: b'\x11\x95`', + -0x6a9f: b'\x11\x95a', + -0x6a9e: b'\x11\x95b', + -0x6a9d: b'\x11\x95c', + -0x6a9c: b'\x11\x95d', + -0x6a9b: b'\x11\x95e', + -0x6a9a: b'\x11\x95f', + -0x6a99: b'\x11\x95g', + -0x6a98: b'\x11\x95h', + -0x6a97: b'\x11\x95i', + -0x6a96: b'\x11\x95j', + -0x6a95: b'\x11\x95k', + -0x6a94: b'\x11\x95l', + -0x6a93: b'\x11\x95m', + -0x6a92: b'\x11\x95n', + -0x6a91: b'\x11\x95o', + -0x6a90: b'\x11\x95p', + -0x6a8f: b'\x11\x95q', + -0x6a8e: b'\x11\x95r', + -0x6a8d: b'\x11\x95s', + -0x6a8c: b'\x11\x95t', + -0x6a8b: b'\x11\x95u', + -0x6a8a: b'\x11\x95v', + -0x6a89: b'\x11\x95w', + -0x6a88: b'\x11\x95x', + -0x6a87: b'\x11\x95y', + -0x6a86: b'\x11\x95z', + -0x6a85: b'\x11\x95{', + -0x6a84: b'\x11\x95|', + -0x6a83: b'\x11\x95}', + -0x6a82: b'\x11\x95~', + -0x6a81: b'\x11\x95\x7f', + -0x6a80: b'\x11\x95\x80', + -0x6a7f: b'\x11\x95\x81', + -0x6a7e: b'\x11\x95\x82', + -0x6a7d: b'\x11\x95\x83', + -0x6a7c: b'\x11\x95\x84', + -0x6a7b: b'\x11\x95\x85', + -0x6a7a: b'\x11\x95\x86', + -0x6a79: b'\x11\x95\x87', + -0x6a78: b'\x11\x95\x88', + -0x6a77: b'\x11\x95\x89', + -0x6a76: b'\x11\x95\x8a', + -0x6a75: b'\x11\x95\x8b', + -0x6a74: b'\x11\x95\x8c', + -0x6a73: b'\x11\x95\x8d', + -0x6a72: b'\x11\x95\x8e', + -0x6a71: b'\x11\x95\x8f', + -0x6a70: b'\x11\x95\x90', + -0x6a6f: b'\x11\x95\x91', + -0x6a6e: b'\x11\x95\x92', + -0x6a6d: b'\x11\x95\x93', + -0x6a6c: b'\x11\x95\x94', + -0x6a6b: b'\x11\x95\x95', + -0x6a6a: b'\x11\x95\x96', + -0x6a69: b'\x11\x95\x97', + -0x6a68: b'\x11\x95\x98', + -0x6a67: b'\x11\x95\x99', + -0x6a66: b'\x11\x95\x9a', + -0x6a65: b'\x11\x95\x9b', + -0x6a64: b'\x11\x95\x9c', + -0x6a63: b'\x11\x95\x9d', + -0x6a62: b'\x11\x95\x9e', + -0x6a61: b'\x11\x95\x9f', + -0x6a60: b'\x11\x95\xa0', + -0x6a5f: b'\x11\x95\xa1', + -0x6a5e: b'\x11\x95\xa2', + -0x6a5d: b'\x11\x95\xa3', + -0x6a5c: b'\x11\x95\xa4', + -0x6a5b: b'\x11\x95\xa5', + -0x6a5a: b'\x11\x95\xa6', + -0x6a59: b'\x11\x95\xa7', + -0x6a58: b'\x11\x95\xa8', + -0x6a57: b'\x11\x95\xa9', + -0x6a56: b'\x11\x95\xaa', + -0x6a55: b'\x11\x95\xab', + -0x6a54: b'\x11\x95\xac', + -0x6a53: b'\x11\x95\xad', + -0x6a52: b'\x11\x95\xae', + -0x6a51: b'\x11\x95\xaf', + -0x6a50: b'\x11\x95\xb0', + -0x6a4f: b'\x11\x95\xb1', + -0x6a4e: b'\x11\x95\xb2', + -0x6a4d: b'\x11\x95\xb3', + -0x6a4c: b'\x11\x95\xb4', + -0x6a4b: b'\x11\x95\xb5', + -0x6a4a: b'\x11\x95\xb6', + -0x6a49: b'\x11\x95\xb7', + -0x6a48: b'\x11\x95\xb8', + -0x6a47: b'\x11\x95\xb9', + -0x6a46: b'\x11\x95\xba', + -0x6a45: b'\x11\x95\xbb', + -0x6a44: b'\x11\x95\xbc', + -0x6a43: b'\x11\x95\xbd', + -0x6a42: b'\x11\x95\xbe', + -0x6a41: b'\x11\x95\xbf', + -0x6a40: b'\x11\x95\xc0', + -0x6a3f: b'\x11\x95\xc1', + -0x6a3e: b'\x11\x95\xc2', + -0x6a3d: b'\x11\x95\xc3', + -0x6a3c: b'\x11\x95\xc4', + -0x6a3b: b'\x11\x95\xc5', + -0x6a3a: b'\x11\x95\xc6', + -0x6a39: b'\x11\x95\xc7', + -0x6a38: b'\x11\x95\xc8', + -0x6a37: b'\x11\x95\xc9', + -0x6a36: b'\x11\x95\xca', + -0x6a35: b'\x11\x95\xcb', + -0x6a34: b'\x11\x95\xcc', + -0x6a33: b'\x11\x95\xcd', + -0x6a32: b'\x11\x95\xce', + -0x6a31: b'\x11\x95\xcf', + -0x6a30: b'\x11\x95\xd0', + -0x6a2f: b'\x11\x95\xd1', + -0x6a2e: b'\x11\x95\xd2', + -0x6a2d: b'\x11\x95\xd3', + -0x6a2c: b'\x11\x95\xd4', + -0x6a2b: b'\x11\x95\xd5', + -0x6a2a: b'\x11\x95\xd6', + -0x6a29: b'\x11\x95\xd7', + -0x6a28: b'\x11\x95\xd8', + -0x6a27: b'\x11\x95\xd9', + -0x6a26: b'\x11\x95\xda', + -0x6a25: b'\x11\x95\xdb', + -0x6a24: b'\x11\x95\xdc', + -0x6a23: b'\x11\x95\xdd', + -0x6a22: b'\x11\x95\xde', + -0x6a21: b'\x11\x95\xdf', + -0x6a20: b'\x11\x95\xe0', + -0x6a1f: b'\x11\x95\xe1', + -0x6a1e: b'\x11\x95\xe2', + -0x6a1d: b'\x11\x95\xe3', + -0x6a1c: b'\x11\x95\xe4', + -0x6a1b: b'\x11\x95\xe5', + -0x6a1a: b'\x11\x95\xe6', + -0x6a19: b'\x11\x95\xe7', + -0x6a18: b'\x11\x95\xe8', + -0x6a17: b'\x11\x95\xe9', + -0x6a16: b'\x11\x95\xea', + -0x6a15: b'\x11\x95\xeb', + -0x6a14: b'\x11\x95\xec', + -0x6a13: b'\x11\x95\xed', + -0x6a12: b'\x11\x95\xee', + -0x6a11: b'\x11\x95\xef', + -0x6a10: b'\x11\x95\xf0', + -0x6a0f: b'\x11\x95\xf1', + -0x6a0e: b'\x11\x95\xf2', + -0x6a0d: b'\x11\x95\xf3', + -0x6a0c: b'\x11\x95\xf4', + -0x6a0b: b'\x11\x95\xf5', + -0x6a0a: b'\x11\x95\xf6', + -0x6a09: b'\x11\x95\xf7', + -0x6a08: b'\x11\x95\xf8', + -0x6a07: b'\x11\x95\xf9', + -0x6a06: b'\x11\x95\xfa', + -0x6a05: b'\x11\x95\xfb', + -0x6a04: b'\x11\x95\xfc', + -0x6a03: b'\x11\x95\xfd', + -0x6a02: b'\x11\x95\xfe', + -0x6a01: b'\x11\x95\xff', + -0x6a00: b'\x11\x96\x00', + -0x69ff: b'\x11\x96\x01', + -0x69fe: b'\x11\x96\x02', + -0x69fd: b'\x11\x96\x03', + -0x69fc: b'\x11\x96\x04', + -0x69fb: b'\x11\x96\x05', + -0x69fa: b'\x11\x96\x06', + -0x69f9: b'\x11\x96\x07', + -0x69f8: b'\x11\x96\x08', + -0x69f7: b'\x11\x96\t', + -0x69f6: b'\x11\x96\n', + -0x69f5: b'\x11\x96\x0b', + -0x69f4: b'\x11\x96\x0c', + -0x69f3: b'\x11\x96\r', + -0x69f2: b'\x11\x96\x0e', + -0x69f1: b'\x11\x96\x0f', + -0x69f0: b'\x11\x96\x10', + -0x69ef: b'\x11\x96\x11', + -0x69ee: b'\x11\x96\x12', + -0x69ed: b'\x11\x96\x13', + -0x69ec: b'\x11\x96\x14', + -0x69eb: b'\x11\x96\x15', + -0x69ea: b'\x11\x96\x16', + -0x69e9: b'\x11\x96\x17', + -0x69e8: b'\x11\x96\x18', + -0x69e7: b'\x11\x96\x19', + -0x69e6: b'\x11\x96\x1a', + -0x69e5: b'\x11\x96\x1b', + -0x69e4: b'\x11\x96\x1c', + -0x69e3: b'\x11\x96\x1d', + -0x69e2: b'\x11\x96\x1e', + -0x69e1: b'\x11\x96\x1f', + -0x69e0: b'\x11\x96 ', + -0x69df: b'\x11\x96!', + -0x69de: b'\x11\x96"', + -0x69dd: b'\x11\x96#', + -0x69dc: b'\x11\x96$', + -0x69db: b'\x11\x96%', + -0x69da: b'\x11\x96&', + -0x69d9: b"\x11\x96'", + -0x69d8: b'\x11\x96(', + -0x69d7: b'\x11\x96)', + -0x69d6: b'\x11\x96*', + -0x69d5: b'\x11\x96+', + -0x69d4: b'\x11\x96,', + -0x69d3: b'\x11\x96-', + -0x69d2: b'\x11\x96.', + -0x69d1: b'\x11\x96/', + -0x69d0: b'\x11\x960', + -0x69cf: b'\x11\x961', + -0x69ce: b'\x11\x962', + -0x69cd: b'\x11\x963', + -0x69cc: b'\x11\x964', + -0x69cb: b'\x11\x965', + -0x69ca: b'\x11\x966', + -0x69c9: b'\x11\x967', + -0x69c8: b'\x11\x968', + -0x69c7: b'\x11\x969', + -0x69c6: b'\x11\x96:', + -0x69c5: b'\x11\x96;', + -0x69c4: b'\x11\x96<', + -0x69c3: b'\x11\x96=', + -0x69c2: b'\x11\x96>', + -0x69c1: b'\x11\x96?', + -0x69c0: b'\x11\x96@', + -0x69bf: b'\x11\x96A', + -0x69be: b'\x11\x96B', + -0x69bd: b'\x11\x96C', + -0x69bc: b'\x11\x96D', + -0x69bb: b'\x11\x96E', + -0x69ba: b'\x11\x96F', + -0x69b9: b'\x11\x96G', + -0x69b8: b'\x11\x96H', + -0x69b7: b'\x11\x96I', + -0x69b6: b'\x11\x96J', + -0x69b5: b'\x11\x96K', + -0x69b4: b'\x11\x96L', + -0x69b3: b'\x11\x96M', + -0x69b2: b'\x11\x96N', + -0x69b1: b'\x11\x96O', + -0x69b0: b'\x11\x96P', + -0x69af: b'\x11\x96Q', + -0x69ae: b'\x11\x96R', + -0x69ad: b'\x11\x96S', + -0x69ac: b'\x11\x96T', + -0x69ab: b'\x11\x96U', + -0x69aa: b'\x11\x96V', + -0x69a9: b'\x11\x96W', + -0x69a8: b'\x11\x96X', + -0x69a7: b'\x11\x96Y', + -0x69a6: b'\x11\x96Z', + -0x69a5: b'\x11\x96[', + -0x69a4: b'\x11\x96\\', + -0x69a3: b'\x11\x96]', + -0x69a2: b'\x11\x96^', + -0x69a1: b'\x11\x96_', + -0x69a0: b'\x11\x96`', + -0x699f: b'\x11\x96a', + -0x699e: b'\x11\x96b', + -0x699d: b'\x11\x96c', + -0x699c: b'\x11\x96d', + -0x699b: b'\x11\x96e', + -0x699a: b'\x11\x96f', + -0x6999: b'\x11\x96g', + -0x6998: b'\x11\x96h', + -0x6997: b'\x11\x96i', + -0x6996: b'\x11\x96j', + -0x6995: b'\x11\x96k', + -0x6994: b'\x11\x96l', + -0x6993: b'\x11\x96m', + -0x6992: b'\x11\x96n', + -0x6991: b'\x11\x96o', + -0x6990: b'\x11\x96p', + -0x698f: b'\x11\x96q', + -0x698e: b'\x11\x96r', + -0x698d: b'\x11\x96s', + -0x698c: b'\x11\x96t', + -0x698b: b'\x11\x96u', + -0x698a: b'\x11\x96v', + -0x6989: b'\x11\x96w', + -0x6988: b'\x11\x96x', + -0x6987: b'\x11\x96y', + -0x6986: b'\x11\x96z', + -0x6985: b'\x11\x96{', + -0x6984: b'\x11\x96|', + -0x6983: b'\x11\x96}', + -0x6982: b'\x11\x96~', + -0x6981: b'\x11\x96\x7f', + -0x6980: b'\x11\x96\x80', + -0x697f: b'\x11\x96\x81', + -0x697e: b'\x11\x96\x82', + -0x697d: b'\x11\x96\x83', + -0x697c: b'\x11\x96\x84', + -0x697b: b'\x11\x96\x85', + -0x697a: b'\x11\x96\x86', + -0x6979: b'\x11\x96\x87', + -0x6978: b'\x11\x96\x88', + -0x6977: b'\x11\x96\x89', + -0x6976: b'\x11\x96\x8a', + -0x6975: b'\x11\x96\x8b', + -0x6974: b'\x11\x96\x8c', + -0x6973: b'\x11\x96\x8d', + -0x6972: b'\x11\x96\x8e', + -0x6971: b'\x11\x96\x8f', + -0x6970: b'\x11\x96\x90', + -0x696f: b'\x11\x96\x91', + -0x696e: b'\x11\x96\x92', + -0x696d: b'\x11\x96\x93', + -0x696c: b'\x11\x96\x94', + -0x696b: b'\x11\x96\x95', + -0x696a: b'\x11\x96\x96', + -0x6969: b'\x11\x96\x97', + -0x6968: b'\x11\x96\x98', + -0x6967: b'\x11\x96\x99', + -0x6966: b'\x11\x96\x9a', + -0x6965: b'\x11\x96\x9b', + -0x6964: b'\x11\x96\x9c', + -0x6963: b'\x11\x96\x9d', + -0x6962: b'\x11\x96\x9e', + -0x6961: b'\x11\x96\x9f', + -0x6960: b'\x11\x96\xa0', + -0x695f: b'\x11\x96\xa1', + -0x695e: b'\x11\x96\xa2', + -0x695d: b'\x11\x96\xa3', + -0x695c: b'\x11\x96\xa4', + -0x695b: b'\x11\x96\xa5', + -0x695a: b'\x11\x96\xa6', + -0x6959: b'\x11\x96\xa7', + -0x6958: b'\x11\x96\xa8', + -0x6957: b'\x11\x96\xa9', + -0x6956: b'\x11\x96\xaa', + -0x6955: b'\x11\x96\xab', + -0x6954: b'\x11\x96\xac', + -0x6953: b'\x11\x96\xad', + -0x6952: b'\x11\x96\xae', + -0x6951: b'\x11\x96\xaf', + -0x6950: b'\x11\x96\xb0', + -0x694f: b'\x11\x96\xb1', + -0x694e: b'\x11\x96\xb2', + -0x694d: b'\x11\x96\xb3', + -0x694c: b'\x11\x96\xb4', + -0x694b: b'\x11\x96\xb5', + -0x694a: b'\x11\x96\xb6', + -0x6949: b'\x11\x96\xb7', + -0x6948: b'\x11\x96\xb8', + -0x6947: b'\x11\x96\xb9', + -0x6946: b'\x11\x96\xba', + -0x6945: b'\x11\x96\xbb', + -0x6944: b'\x11\x96\xbc', + -0x6943: b'\x11\x96\xbd', + -0x6942: b'\x11\x96\xbe', + -0x6941: b'\x11\x96\xbf', + -0x6940: b'\x11\x96\xc0', + -0x693f: b'\x11\x96\xc1', + -0x693e: b'\x11\x96\xc2', + -0x693d: b'\x11\x96\xc3', + -0x693c: b'\x11\x96\xc4', + -0x693b: b'\x11\x96\xc5', + -0x693a: b'\x11\x96\xc6', + -0x6939: b'\x11\x96\xc7', + -0x6938: b'\x11\x96\xc8', + -0x6937: b'\x11\x96\xc9', + -0x6936: b'\x11\x96\xca', + -0x6935: b'\x11\x96\xcb', + -0x6934: b'\x11\x96\xcc', + -0x6933: b'\x11\x96\xcd', + -0x6932: b'\x11\x96\xce', + -0x6931: b'\x11\x96\xcf', + -0x6930: b'\x11\x96\xd0', + -0x692f: b'\x11\x96\xd1', + -0x692e: b'\x11\x96\xd2', + -0x692d: b'\x11\x96\xd3', + -0x692c: b'\x11\x96\xd4', + -0x692b: b'\x11\x96\xd5', + -0x692a: b'\x11\x96\xd6', + -0x6929: b'\x11\x96\xd7', + -0x6928: b'\x11\x96\xd8', + -0x6927: b'\x11\x96\xd9', + -0x6926: b'\x11\x96\xda', + -0x6925: b'\x11\x96\xdb', + -0x6924: b'\x11\x96\xdc', + -0x6923: b'\x11\x96\xdd', + -0x6922: b'\x11\x96\xde', + -0x6921: b'\x11\x96\xdf', + -0x6920: b'\x11\x96\xe0', + -0x691f: b'\x11\x96\xe1', + -0x691e: b'\x11\x96\xe2', + -0x691d: b'\x11\x96\xe3', + -0x691c: b'\x11\x96\xe4', + -0x691b: b'\x11\x96\xe5', + -0x691a: b'\x11\x96\xe6', + -0x6919: b'\x11\x96\xe7', + -0x6918: b'\x11\x96\xe8', + -0x6917: b'\x11\x96\xe9', + -0x6916: b'\x11\x96\xea', + -0x6915: b'\x11\x96\xeb', + -0x6914: b'\x11\x96\xec', + -0x6913: b'\x11\x96\xed', + -0x6912: b'\x11\x96\xee', + -0x6911: b'\x11\x96\xef', + -0x6910: b'\x11\x96\xf0', + -0x690f: b'\x11\x96\xf1', + -0x690e: b'\x11\x96\xf2', + -0x690d: b'\x11\x96\xf3', + -0x690c: b'\x11\x96\xf4', + -0x690b: b'\x11\x96\xf5', + -0x690a: b'\x11\x96\xf6', + -0x6909: b'\x11\x96\xf7', + -0x6908: b'\x11\x96\xf8', + -0x6907: b'\x11\x96\xf9', + -0x6906: b'\x11\x96\xfa', + -0x6905: b'\x11\x96\xfb', + -0x6904: b'\x11\x96\xfc', + -0x6903: b'\x11\x96\xfd', + -0x6902: b'\x11\x96\xfe', + -0x6901: b'\x11\x96\xff', + -0x6900: b'\x11\x97\x00', + -0x68ff: b'\x11\x97\x01', + -0x68fe: b'\x11\x97\x02', + -0x68fd: b'\x11\x97\x03', + -0x68fc: b'\x11\x97\x04', + -0x68fb: b'\x11\x97\x05', + -0x68fa: b'\x11\x97\x06', + -0x68f9: b'\x11\x97\x07', + -0x68f8: b'\x11\x97\x08', + -0x68f7: b'\x11\x97\t', + -0x68f6: b'\x11\x97\n', + -0x68f5: b'\x11\x97\x0b', + -0x68f4: b'\x11\x97\x0c', + -0x68f3: b'\x11\x97\r', + -0x68f2: b'\x11\x97\x0e', + -0x68f1: b'\x11\x97\x0f', + -0x68f0: b'\x11\x97\x10', + -0x68ef: b'\x11\x97\x11', + -0x68ee: b'\x11\x97\x12', + -0x68ed: b'\x11\x97\x13', + -0x68ec: b'\x11\x97\x14', + -0x68eb: b'\x11\x97\x15', + -0x68ea: b'\x11\x97\x16', + -0x68e9: b'\x11\x97\x17', + -0x68e8: b'\x11\x97\x18', + -0x68e7: b'\x11\x97\x19', + -0x68e6: b'\x11\x97\x1a', + -0x68e5: b'\x11\x97\x1b', + -0x68e4: b'\x11\x97\x1c', + -0x68e3: b'\x11\x97\x1d', + -0x68e2: b'\x11\x97\x1e', + -0x68e1: b'\x11\x97\x1f', + -0x68e0: b'\x11\x97 ', + -0x68df: b'\x11\x97!', + -0x68de: b'\x11\x97"', + -0x68dd: b'\x11\x97#', + -0x68dc: b'\x11\x97$', + -0x68db: b'\x11\x97%', + -0x68da: b'\x11\x97&', + -0x68d9: b"\x11\x97'", + -0x68d8: b'\x11\x97(', + -0x68d7: b'\x11\x97)', + -0x68d6: b'\x11\x97*', + -0x68d5: b'\x11\x97+', + -0x68d4: b'\x11\x97,', + -0x68d3: b'\x11\x97-', + -0x68d2: b'\x11\x97.', + -0x68d1: b'\x11\x97/', + -0x68d0: b'\x11\x970', + -0x68cf: b'\x11\x971', + -0x68ce: b'\x11\x972', + -0x68cd: b'\x11\x973', + -0x68cc: b'\x11\x974', + -0x68cb: b'\x11\x975', + -0x68ca: b'\x11\x976', + -0x68c9: b'\x11\x977', + -0x68c8: b'\x11\x978', + -0x68c7: b'\x11\x979', + -0x68c6: b'\x11\x97:', + -0x68c5: b'\x11\x97;', + -0x68c4: b'\x11\x97<', + -0x68c3: b'\x11\x97=', + -0x68c2: b'\x11\x97>', + -0x68c1: b'\x11\x97?', + -0x68c0: b'\x11\x97@', + -0x68bf: b'\x11\x97A', + -0x68be: b'\x11\x97B', + -0x68bd: b'\x11\x97C', + -0x68bc: b'\x11\x97D', + -0x68bb: b'\x11\x97E', + -0x68ba: b'\x11\x97F', + -0x68b9: b'\x11\x97G', + -0x68b8: b'\x11\x97H', + -0x68b7: b'\x11\x97I', + -0x68b6: b'\x11\x97J', + -0x68b5: b'\x11\x97K', + -0x68b4: b'\x11\x97L', + -0x68b3: b'\x11\x97M', + -0x68b2: b'\x11\x97N', + -0x68b1: b'\x11\x97O', + -0x68b0: b'\x11\x97P', + -0x68af: b'\x11\x97Q', + -0x68ae: b'\x11\x97R', + -0x68ad: b'\x11\x97S', + -0x68ac: b'\x11\x97T', + -0x68ab: b'\x11\x97U', + -0x68aa: b'\x11\x97V', + -0x68a9: b'\x11\x97W', + -0x68a8: b'\x11\x97X', + -0x68a7: b'\x11\x97Y', + -0x68a6: b'\x11\x97Z', + -0x68a5: b'\x11\x97[', + -0x68a4: b'\x11\x97\\', + -0x68a3: b'\x11\x97]', + -0x68a2: b'\x11\x97^', + -0x68a1: b'\x11\x97_', + -0x68a0: b'\x11\x97`', + -0x689f: b'\x11\x97a', + -0x689e: b'\x11\x97b', + -0x689d: b'\x11\x97c', + -0x689c: b'\x11\x97d', + -0x689b: b'\x11\x97e', + -0x689a: b'\x11\x97f', + -0x6899: b'\x11\x97g', + -0x6898: b'\x11\x97h', + -0x6897: b'\x11\x97i', + -0x6896: b'\x11\x97j', + -0x6895: b'\x11\x97k', + -0x6894: b'\x11\x97l', + -0x6893: b'\x11\x97m', + -0x6892: b'\x11\x97n', + -0x6891: b'\x11\x97o', + -0x6890: b'\x11\x97p', + -0x688f: b'\x11\x97q', + -0x688e: b'\x11\x97r', + -0x688d: b'\x11\x97s', + -0x688c: b'\x11\x97t', + -0x688b: b'\x11\x97u', + -0x688a: b'\x11\x97v', + -0x6889: b'\x11\x97w', + -0x6888: b'\x11\x97x', + -0x6887: b'\x11\x97y', + -0x6886: b'\x11\x97z', + -0x6885: b'\x11\x97{', + -0x6884: b'\x11\x97|', + -0x6883: b'\x11\x97}', + -0x6882: b'\x11\x97~', + -0x6881: b'\x11\x97\x7f', + -0x6880: b'\x11\x97\x80', + -0x687f: b'\x11\x97\x81', + -0x687e: b'\x11\x97\x82', + -0x687d: b'\x11\x97\x83', + -0x687c: b'\x11\x97\x84', + -0x687b: b'\x11\x97\x85', + -0x687a: b'\x11\x97\x86', + -0x6879: b'\x11\x97\x87', + -0x6878: b'\x11\x97\x88', + -0x6877: b'\x11\x97\x89', + -0x6876: b'\x11\x97\x8a', + -0x6875: b'\x11\x97\x8b', + -0x6874: b'\x11\x97\x8c', + -0x6873: b'\x11\x97\x8d', + -0x6872: b'\x11\x97\x8e', + -0x6871: b'\x11\x97\x8f', + -0x6870: b'\x11\x97\x90', + -0x686f: b'\x11\x97\x91', + -0x686e: b'\x11\x97\x92', + -0x686d: b'\x11\x97\x93', + -0x686c: b'\x11\x97\x94', + -0x686b: b'\x11\x97\x95', + -0x686a: b'\x11\x97\x96', + -0x6869: b'\x11\x97\x97', + -0x6868: b'\x11\x97\x98', + -0x6867: b'\x11\x97\x99', + -0x6866: b'\x11\x97\x9a', + -0x6865: b'\x11\x97\x9b', + -0x6864: b'\x11\x97\x9c', + -0x6863: b'\x11\x97\x9d', + -0x6862: b'\x11\x97\x9e', + -0x6861: b'\x11\x97\x9f', + -0x6860: b'\x11\x97\xa0', + -0x685f: b'\x11\x97\xa1', + -0x685e: b'\x11\x97\xa2', + -0x685d: b'\x11\x97\xa3', + -0x685c: b'\x11\x97\xa4', + -0x685b: b'\x11\x97\xa5', + -0x685a: b'\x11\x97\xa6', + -0x6859: b'\x11\x97\xa7', + -0x6858: b'\x11\x97\xa8', + -0x6857: b'\x11\x97\xa9', + -0x6856: b'\x11\x97\xaa', + -0x6855: b'\x11\x97\xab', + -0x6854: b'\x11\x97\xac', + -0x6853: b'\x11\x97\xad', + -0x6852: b'\x11\x97\xae', + -0x6851: b'\x11\x97\xaf', + -0x6850: b'\x11\x97\xb0', + -0x684f: b'\x11\x97\xb1', + -0x684e: b'\x11\x97\xb2', + -0x684d: b'\x11\x97\xb3', + -0x684c: b'\x11\x97\xb4', + -0x684b: b'\x11\x97\xb5', + -0x684a: b'\x11\x97\xb6', + -0x6849: b'\x11\x97\xb7', + -0x6848: b'\x11\x97\xb8', + -0x6847: b'\x11\x97\xb9', + -0x6846: b'\x11\x97\xba', + -0x6845: b'\x11\x97\xbb', + -0x6844: b'\x11\x97\xbc', + -0x6843: b'\x11\x97\xbd', + -0x6842: b'\x11\x97\xbe', + -0x6841: b'\x11\x97\xbf', + -0x6840: b'\x11\x97\xc0', + -0x683f: b'\x11\x97\xc1', + -0x683e: b'\x11\x97\xc2', + -0x683d: b'\x11\x97\xc3', + -0x683c: b'\x11\x97\xc4', + -0x683b: b'\x11\x97\xc5', + -0x683a: b'\x11\x97\xc6', + -0x6839: b'\x11\x97\xc7', + -0x6838: b'\x11\x97\xc8', + -0x6837: b'\x11\x97\xc9', + -0x6836: b'\x11\x97\xca', + -0x6835: b'\x11\x97\xcb', + -0x6834: b'\x11\x97\xcc', + -0x6833: b'\x11\x97\xcd', + -0x6832: b'\x11\x97\xce', + -0x6831: b'\x11\x97\xcf', + -0x6830: b'\x11\x97\xd0', + -0x682f: b'\x11\x97\xd1', + -0x682e: b'\x11\x97\xd2', + -0x682d: b'\x11\x97\xd3', + -0x682c: b'\x11\x97\xd4', + -0x682b: b'\x11\x97\xd5', + -0x682a: b'\x11\x97\xd6', + -0x6829: b'\x11\x97\xd7', + -0x6828: b'\x11\x97\xd8', + -0x6827: b'\x11\x97\xd9', + -0x6826: b'\x11\x97\xda', + -0x6825: b'\x11\x97\xdb', + -0x6824: b'\x11\x97\xdc', + -0x6823: b'\x11\x97\xdd', + -0x6822: b'\x11\x97\xde', + -0x6821: b'\x11\x97\xdf', + -0x6820: b'\x11\x97\xe0', + -0x681f: b'\x11\x97\xe1', + -0x681e: b'\x11\x97\xe2', + -0x681d: b'\x11\x97\xe3', + -0x681c: b'\x11\x97\xe4', + -0x681b: b'\x11\x97\xe5', + -0x681a: b'\x11\x97\xe6', + -0x6819: b'\x11\x97\xe7', + -0x6818: b'\x11\x97\xe8', + -0x6817: b'\x11\x97\xe9', + -0x6816: b'\x11\x97\xea', + -0x6815: b'\x11\x97\xeb', + -0x6814: b'\x11\x97\xec', + -0x6813: b'\x11\x97\xed', + -0x6812: b'\x11\x97\xee', + -0x6811: b'\x11\x97\xef', + -0x6810: b'\x11\x97\xf0', + -0x680f: b'\x11\x97\xf1', + -0x680e: b'\x11\x97\xf2', + -0x680d: b'\x11\x97\xf3', + -0x680c: b'\x11\x97\xf4', + -0x680b: b'\x11\x97\xf5', + -0x680a: b'\x11\x97\xf6', + -0x6809: b'\x11\x97\xf7', + -0x6808: b'\x11\x97\xf8', + -0x6807: b'\x11\x97\xf9', + -0x6806: b'\x11\x97\xfa', + -0x6805: b'\x11\x97\xfb', + -0x6804: b'\x11\x97\xfc', + -0x6803: b'\x11\x97\xfd', + -0x6802: b'\x11\x97\xfe', + -0x6801: b'\x11\x97\xff', + -0x6800: b'\x11\x98\x00', + -0x67ff: b'\x11\x98\x01', + -0x67fe: b'\x11\x98\x02', + -0x67fd: b'\x11\x98\x03', + -0x67fc: b'\x11\x98\x04', + -0x67fb: b'\x11\x98\x05', + -0x67fa: b'\x11\x98\x06', + -0x67f9: b'\x11\x98\x07', + -0x67f8: b'\x11\x98\x08', + -0x67f7: b'\x11\x98\t', + -0x67f6: b'\x11\x98\n', + -0x67f5: b'\x11\x98\x0b', + -0x67f4: b'\x11\x98\x0c', + -0x67f3: b'\x11\x98\r', + -0x67f2: b'\x11\x98\x0e', + -0x67f1: b'\x11\x98\x0f', + -0x67f0: b'\x11\x98\x10', + -0x67ef: b'\x11\x98\x11', + -0x67ee: b'\x11\x98\x12', + -0x67ed: b'\x11\x98\x13', + -0x67ec: b'\x11\x98\x14', + -0x67eb: b'\x11\x98\x15', + -0x67ea: b'\x11\x98\x16', + -0x67e9: b'\x11\x98\x17', + -0x67e8: b'\x11\x98\x18', + -0x67e7: b'\x11\x98\x19', + -0x67e6: b'\x11\x98\x1a', + -0x67e5: b'\x11\x98\x1b', + -0x67e4: b'\x11\x98\x1c', + -0x67e3: b'\x11\x98\x1d', + -0x67e2: b'\x11\x98\x1e', + -0x67e1: b'\x11\x98\x1f', + -0x67e0: b'\x11\x98 ', + -0x67df: b'\x11\x98!', + -0x67de: b'\x11\x98"', + -0x67dd: b'\x11\x98#', + -0x67dc: b'\x11\x98$', + -0x67db: b'\x11\x98%', + -0x67da: b'\x11\x98&', + -0x67d9: b"\x11\x98'", + -0x67d8: b'\x11\x98(', + -0x67d7: b'\x11\x98)', + -0x67d6: b'\x11\x98*', + -0x67d5: b'\x11\x98+', + -0x67d4: b'\x11\x98,', + -0x67d3: b'\x11\x98-', + -0x67d2: b'\x11\x98.', + -0x67d1: b'\x11\x98/', + -0x67d0: b'\x11\x980', + -0x67cf: b'\x11\x981', + -0x67ce: b'\x11\x982', + -0x67cd: b'\x11\x983', + -0x67cc: b'\x11\x984', + -0x67cb: b'\x11\x985', + -0x67ca: b'\x11\x986', + -0x67c9: b'\x11\x987', + -0x67c8: b'\x11\x988', + -0x67c7: b'\x11\x989', + -0x67c6: b'\x11\x98:', + -0x67c5: b'\x11\x98;', + -0x67c4: b'\x11\x98<', + -0x67c3: b'\x11\x98=', + -0x67c2: b'\x11\x98>', + -0x67c1: b'\x11\x98?', + -0x67c0: b'\x11\x98@', + -0x67bf: b'\x11\x98A', + -0x67be: b'\x11\x98B', + -0x67bd: b'\x11\x98C', + -0x67bc: b'\x11\x98D', + -0x67bb: b'\x11\x98E', + -0x67ba: b'\x11\x98F', + -0x67b9: b'\x11\x98G', + -0x67b8: b'\x11\x98H', + -0x67b7: b'\x11\x98I', + -0x67b6: b'\x11\x98J', + -0x67b5: b'\x11\x98K', + -0x67b4: b'\x11\x98L', + -0x67b3: b'\x11\x98M', + -0x67b2: b'\x11\x98N', + -0x67b1: b'\x11\x98O', + -0x67b0: b'\x11\x98P', + -0x67af: b'\x11\x98Q', + -0x67ae: b'\x11\x98R', + -0x67ad: b'\x11\x98S', + -0x67ac: b'\x11\x98T', + -0x67ab: b'\x11\x98U', + -0x67aa: b'\x11\x98V', + -0x67a9: b'\x11\x98W', + -0x67a8: b'\x11\x98X', + -0x67a7: b'\x11\x98Y', + -0x67a6: b'\x11\x98Z', + -0x67a5: b'\x11\x98[', + -0x67a4: b'\x11\x98\\', + -0x67a3: b'\x11\x98]', + -0x67a2: b'\x11\x98^', + -0x67a1: b'\x11\x98_', + -0x67a0: b'\x11\x98`', + -0x679f: b'\x11\x98a', + -0x679e: b'\x11\x98b', + -0x679d: b'\x11\x98c', + -0x679c: b'\x11\x98d', + -0x679b: b'\x11\x98e', + -0x679a: b'\x11\x98f', + -0x6799: b'\x11\x98g', + -0x6798: b'\x11\x98h', + -0x6797: b'\x11\x98i', + -0x6796: b'\x11\x98j', + -0x6795: b'\x11\x98k', + -0x6794: b'\x11\x98l', + -0x6793: b'\x11\x98m', + -0x6792: b'\x11\x98n', + -0x6791: b'\x11\x98o', + -0x6790: b'\x11\x98p', + -0x678f: b'\x11\x98q', + -0x678e: b'\x11\x98r', + -0x678d: b'\x11\x98s', + -0x678c: b'\x11\x98t', + -0x678b: b'\x11\x98u', + -0x678a: b'\x11\x98v', + -0x6789: b'\x11\x98w', + -0x6788: b'\x11\x98x', + -0x6787: b'\x11\x98y', + -0x6786: b'\x11\x98z', + -0x6785: b'\x11\x98{', + -0x6784: b'\x11\x98|', + -0x6783: b'\x11\x98}', + -0x6782: b'\x11\x98~', + -0x6781: b'\x11\x98\x7f', + -0x6780: b'\x11\x98\x80', + -0x677f: b'\x11\x98\x81', + -0x677e: b'\x11\x98\x82', + -0x677d: b'\x11\x98\x83', + -0x677c: b'\x11\x98\x84', + -0x677b: b'\x11\x98\x85', + -0x677a: b'\x11\x98\x86', + -0x6779: b'\x11\x98\x87', + -0x6778: b'\x11\x98\x88', + -0x6777: b'\x11\x98\x89', + -0x6776: b'\x11\x98\x8a', + -0x6775: b'\x11\x98\x8b', + -0x6774: b'\x11\x98\x8c', + -0x6773: b'\x11\x98\x8d', + -0x6772: b'\x11\x98\x8e', + -0x6771: b'\x11\x98\x8f', + -0x6770: b'\x11\x98\x90', + -0x676f: b'\x11\x98\x91', + -0x676e: b'\x11\x98\x92', + -0x676d: b'\x11\x98\x93', + -0x676c: b'\x11\x98\x94', + -0x676b: b'\x11\x98\x95', + -0x676a: b'\x11\x98\x96', + -0x6769: b'\x11\x98\x97', + -0x6768: b'\x11\x98\x98', + -0x6767: b'\x11\x98\x99', + -0x6766: b'\x11\x98\x9a', + -0x6765: b'\x11\x98\x9b', + -0x6764: b'\x11\x98\x9c', + -0x6763: b'\x11\x98\x9d', + -0x6762: b'\x11\x98\x9e', + -0x6761: b'\x11\x98\x9f', + -0x6760: b'\x11\x98\xa0', + -0x675f: b'\x11\x98\xa1', + -0x675e: b'\x11\x98\xa2', + -0x675d: b'\x11\x98\xa3', + -0x675c: b'\x11\x98\xa4', + -0x675b: b'\x11\x98\xa5', + -0x675a: b'\x11\x98\xa6', + -0x6759: b'\x11\x98\xa7', + -0x6758: b'\x11\x98\xa8', + -0x6757: b'\x11\x98\xa9', + -0x6756: b'\x11\x98\xaa', + -0x6755: b'\x11\x98\xab', + -0x6754: b'\x11\x98\xac', + -0x6753: b'\x11\x98\xad', + -0x6752: b'\x11\x98\xae', + -0x6751: b'\x11\x98\xaf', + -0x6750: b'\x11\x98\xb0', + -0x674f: b'\x11\x98\xb1', + -0x674e: b'\x11\x98\xb2', + -0x674d: b'\x11\x98\xb3', + -0x674c: b'\x11\x98\xb4', + -0x674b: b'\x11\x98\xb5', + -0x674a: b'\x11\x98\xb6', + -0x6749: b'\x11\x98\xb7', + -0x6748: b'\x11\x98\xb8', + -0x6747: b'\x11\x98\xb9', + -0x6746: b'\x11\x98\xba', + -0x6745: b'\x11\x98\xbb', + -0x6744: b'\x11\x98\xbc', + -0x6743: b'\x11\x98\xbd', + -0x6742: b'\x11\x98\xbe', + -0x6741: b'\x11\x98\xbf', + -0x6740: b'\x11\x98\xc0', + -0x673f: b'\x11\x98\xc1', + -0x673e: b'\x11\x98\xc2', + -0x673d: b'\x11\x98\xc3', + -0x673c: b'\x11\x98\xc4', + -0x673b: b'\x11\x98\xc5', + -0x673a: b'\x11\x98\xc6', + -0x6739: b'\x11\x98\xc7', + -0x6738: b'\x11\x98\xc8', + -0x6737: b'\x11\x98\xc9', + -0x6736: b'\x11\x98\xca', + -0x6735: b'\x11\x98\xcb', + -0x6734: b'\x11\x98\xcc', + -0x6733: b'\x11\x98\xcd', + -0x6732: b'\x11\x98\xce', + -0x6731: b'\x11\x98\xcf', + -0x6730: b'\x11\x98\xd0', + -0x672f: b'\x11\x98\xd1', + -0x672e: b'\x11\x98\xd2', + -0x672d: b'\x11\x98\xd3', + -0x672c: b'\x11\x98\xd4', + -0x672b: b'\x11\x98\xd5', + -0x672a: b'\x11\x98\xd6', + -0x6729: b'\x11\x98\xd7', + -0x6728: b'\x11\x98\xd8', + -0x6727: b'\x11\x98\xd9', + -0x6726: b'\x11\x98\xda', + -0x6725: b'\x11\x98\xdb', + -0x6724: b'\x11\x98\xdc', + -0x6723: b'\x11\x98\xdd', + -0x6722: b'\x11\x98\xde', + -0x6721: b'\x11\x98\xdf', + -0x6720: b'\x11\x98\xe0', + -0x671f: b'\x11\x98\xe1', + -0x671e: b'\x11\x98\xe2', + -0x671d: b'\x11\x98\xe3', + -0x671c: b'\x11\x98\xe4', + -0x671b: b'\x11\x98\xe5', + -0x671a: b'\x11\x98\xe6', + -0x6719: b'\x11\x98\xe7', + -0x6718: b'\x11\x98\xe8', + -0x6717: b'\x11\x98\xe9', + -0x6716: b'\x11\x98\xea', + -0x6715: b'\x11\x98\xeb', + -0x6714: b'\x11\x98\xec', + -0x6713: b'\x11\x98\xed', + -0x6712: b'\x11\x98\xee', + -0x6711: b'\x11\x98\xef', + -0x6710: b'\x11\x98\xf0', + -0x670f: b'\x11\x98\xf1', + -0x670e: b'\x11\x98\xf2', + -0x670d: b'\x11\x98\xf3', + -0x670c: b'\x11\x98\xf4', + -0x670b: b'\x11\x98\xf5', + -0x670a: b'\x11\x98\xf6', + -0x6709: b'\x11\x98\xf7', + -0x6708: b'\x11\x98\xf8', + -0x6707: b'\x11\x98\xf9', + -0x6706: b'\x11\x98\xfa', + -0x6705: b'\x11\x98\xfb', + -0x6704: b'\x11\x98\xfc', + -0x6703: b'\x11\x98\xfd', + -0x6702: b'\x11\x98\xfe', + -0x6701: b'\x11\x98\xff', + -0x6700: b'\x11\x99\x00', + -0x66ff: b'\x11\x99\x01', + -0x66fe: b'\x11\x99\x02', + -0x66fd: b'\x11\x99\x03', + -0x66fc: b'\x11\x99\x04', + -0x66fb: b'\x11\x99\x05', + -0x66fa: b'\x11\x99\x06', + -0x66f9: b'\x11\x99\x07', + -0x66f8: b'\x11\x99\x08', + -0x66f7: b'\x11\x99\t', + -0x66f6: b'\x11\x99\n', + -0x66f5: b'\x11\x99\x0b', + -0x66f4: b'\x11\x99\x0c', + -0x66f3: b'\x11\x99\r', + -0x66f2: b'\x11\x99\x0e', + -0x66f1: b'\x11\x99\x0f', + -0x66f0: b'\x11\x99\x10', + -0x66ef: b'\x11\x99\x11', + -0x66ee: b'\x11\x99\x12', + -0x66ed: b'\x11\x99\x13', + -0x66ec: b'\x11\x99\x14', + -0x66eb: b'\x11\x99\x15', + -0x66ea: b'\x11\x99\x16', + -0x66e9: b'\x11\x99\x17', + -0x66e8: b'\x11\x99\x18', + -0x66e7: b'\x11\x99\x19', + -0x66e6: b'\x11\x99\x1a', + -0x66e5: b'\x11\x99\x1b', + -0x66e4: b'\x11\x99\x1c', + -0x66e3: b'\x11\x99\x1d', + -0x66e2: b'\x11\x99\x1e', + -0x66e1: b'\x11\x99\x1f', + -0x66e0: b'\x11\x99 ', + -0x66df: b'\x11\x99!', + -0x66de: b'\x11\x99"', + -0x66dd: b'\x11\x99#', + -0x66dc: b'\x11\x99$', + -0x66db: b'\x11\x99%', + -0x66da: b'\x11\x99&', + -0x66d9: b"\x11\x99'", + -0x66d8: b'\x11\x99(', + -0x66d7: b'\x11\x99)', + -0x66d6: b'\x11\x99*', + -0x66d5: b'\x11\x99+', + -0x66d4: b'\x11\x99,', + -0x66d3: b'\x11\x99-', + -0x66d2: b'\x11\x99.', + -0x66d1: b'\x11\x99/', + -0x66d0: b'\x11\x990', + -0x66cf: b'\x11\x991', + -0x66ce: b'\x11\x992', + -0x66cd: b'\x11\x993', + -0x66cc: b'\x11\x994', + -0x66cb: b'\x11\x995', + -0x66ca: b'\x11\x996', + -0x66c9: b'\x11\x997', + -0x66c8: b'\x11\x998', + -0x66c7: b'\x11\x999', + -0x66c6: b'\x11\x99:', + -0x66c5: b'\x11\x99;', + -0x66c4: b'\x11\x99<', + -0x66c3: b'\x11\x99=', + -0x66c2: b'\x11\x99>', + -0x66c1: b'\x11\x99?', + -0x66c0: b'\x11\x99@', + -0x66bf: b'\x11\x99A', + -0x66be: b'\x11\x99B', + -0x66bd: b'\x11\x99C', + -0x66bc: b'\x11\x99D', + -0x66bb: b'\x11\x99E', + -0x66ba: b'\x11\x99F', + -0x66b9: b'\x11\x99G', + -0x66b8: b'\x11\x99H', + -0x66b7: b'\x11\x99I', + -0x66b6: b'\x11\x99J', + -0x66b5: b'\x11\x99K', + -0x66b4: b'\x11\x99L', + -0x66b3: b'\x11\x99M', + -0x66b2: b'\x11\x99N', + -0x66b1: b'\x11\x99O', + -0x66b0: b'\x11\x99P', + -0x66af: b'\x11\x99Q', + -0x66ae: b'\x11\x99R', + -0x66ad: b'\x11\x99S', + -0x66ac: b'\x11\x99T', + -0x66ab: b'\x11\x99U', + -0x66aa: b'\x11\x99V', + -0x66a9: b'\x11\x99W', + -0x66a8: b'\x11\x99X', + -0x66a7: b'\x11\x99Y', + -0x66a6: b'\x11\x99Z', + -0x66a5: b'\x11\x99[', + -0x66a4: b'\x11\x99\\', + -0x66a3: b'\x11\x99]', + -0x66a2: b'\x11\x99^', + -0x66a1: b'\x11\x99_', + -0x66a0: b'\x11\x99`', + -0x669f: b'\x11\x99a', + -0x669e: b'\x11\x99b', + -0x669d: b'\x11\x99c', + -0x669c: b'\x11\x99d', + -0x669b: b'\x11\x99e', + -0x669a: b'\x11\x99f', + -0x6699: b'\x11\x99g', + -0x6698: b'\x11\x99h', + -0x6697: b'\x11\x99i', + -0x6696: b'\x11\x99j', + -0x6695: b'\x11\x99k', + -0x6694: b'\x11\x99l', + -0x6693: b'\x11\x99m', + -0x6692: b'\x11\x99n', + -0x6691: b'\x11\x99o', + -0x6690: b'\x11\x99p', + -0x668f: b'\x11\x99q', + -0x668e: b'\x11\x99r', + -0x668d: b'\x11\x99s', + -0x668c: b'\x11\x99t', + -0x668b: b'\x11\x99u', + -0x668a: b'\x11\x99v', + -0x6689: b'\x11\x99w', + -0x6688: b'\x11\x99x', + -0x6687: b'\x11\x99y', + -0x6686: b'\x11\x99z', + -0x6685: b'\x11\x99{', + -0x6684: b'\x11\x99|', + -0x6683: b'\x11\x99}', + -0x6682: b'\x11\x99~', + -0x6681: b'\x11\x99\x7f', + -0x6680: b'\x11\x99\x80', + -0x667f: b'\x11\x99\x81', + -0x667e: b'\x11\x99\x82', + -0x667d: b'\x11\x99\x83', + -0x667c: b'\x11\x99\x84', + -0x667b: b'\x11\x99\x85', + -0x667a: b'\x11\x99\x86', + -0x6679: b'\x11\x99\x87', + -0x6678: b'\x11\x99\x88', + -0x6677: b'\x11\x99\x89', + -0x6676: b'\x11\x99\x8a', + -0x6675: b'\x11\x99\x8b', + -0x6674: b'\x11\x99\x8c', + -0x6673: b'\x11\x99\x8d', + -0x6672: b'\x11\x99\x8e', + -0x6671: b'\x11\x99\x8f', + -0x6670: b'\x11\x99\x90', + -0x666f: b'\x11\x99\x91', + -0x666e: b'\x11\x99\x92', + -0x666d: b'\x11\x99\x93', + -0x666c: b'\x11\x99\x94', + -0x666b: b'\x11\x99\x95', + -0x666a: b'\x11\x99\x96', + -0x6669: b'\x11\x99\x97', + -0x6668: b'\x11\x99\x98', + -0x6667: b'\x11\x99\x99', + -0x6666: b'\x11\x99\x9a', + -0x6665: b'\x11\x99\x9b', + -0x6664: b'\x11\x99\x9c', + -0x6663: b'\x11\x99\x9d', + -0x6662: b'\x11\x99\x9e', + -0x6661: b'\x11\x99\x9f', + -0x6660: b'\x11\x99\xa0', + -0x665f: b'\x11\x99\xa1', + -0x665e: b'\x11\x99\xa2', + -0x665d: b'\x11\x99\xa3', + -0x665c: b'\x11\x99\xa4', + -0x665b: b'\x11\x99\xa5', + -0x665a: b'\x11\x99\xa6', + -0x6659: b'\x11\x99\xa7', + -0x6658: b'\x11\x99\xa8', + -0x6657: b'\x11\x99\xa9', + -0x6656: b'\x11\x99\xaa', + -0x6655: b'\x11\x99\xab', + -0x6654: b'\x11\x99\xac', + -0x6653: b'\x11\x99\xad', + -0x6652: b'\x11\x99\xae', + -0x6651: b'\x11\x99\xaf', + -0x6650: b'\x11\x99\xb0', + -0x664f: b'\x11\x99\xb1', + -0x664e: b'\x11\x99\xb2', + -0x664d: b'\x11\x99\xb3', + -0x664c: b'\x11\x99\xb4', + -0x664b: b'\x11\x99\xb5', + -0x664a: b'\x11\x99\xb6', + -0x6649: b'\x11\x99\xb7', + -0x6648: b'\x11\x99\xb8', + -0x6647: b'\x11\x99\xb9', + -0x6646: b'\x11\x99\xba', + -0x6645: b'\x11\x99\xbb', + -0x6644: b'\x11\x99\xbc', + -0x6643: b'\x11\x99\xbd', + -0x6642: b'\x11\x99\xbe', + -0x6641: b'\x11\x99\xbf', + -0x6640: b'\x11\x99\xc0', + -0x663f: b'\x11\x99\xc1', + -0x663e: b'\x11\x99\xc2', + -0x663d: b'\x11\x99\xc3', + -0x663c: b'\x11\x99\xc4', + -0x663b: b'\x11\x99\xc5', + -0x663a: b'\x11\x99\xc6', + -0x6639: b'\x11\x99\xc7', + -0x6638: b'\x11\x99\xc8', + -0x6637: b'\x11\x99\xc9', + -0x6636: b'\x11\x99\xca', + -0x6635: b'\x11\x99\xcb', + -0x6634: b'\x11\x99\xcc', + -0x6633: b'\x11\x99\xcd', + -0x6632: b'\x11\x99\xce', + -0x6631: b'\x11\x99\xcf', + -0x6630: b'\x11\x99\xd0', + -0x662f: b'\x11\x99\xd1', + -0x662e: b'\x11\x99\xd2', + -0x662d: b'\x11\x99\xd3', + -0x662c: b'\x11\x99\xd4', + -0x662b: b'\x11\x99\xd5', + -0x662a: b'\x11\x99\xd6', + -0x6629: b'\x11\x99\xd7', + -0x6628: b'\x11\x99\xd8', + -0x6627: b'\x11\x99\xd9', + -0x6626: b'\x11\x99\xda', + -0x6625: b'\x11\x99\xdb', + -0x6624: b'\x11\x99\xdc', + -0x6623: b'\x11\x99\xdd', + -0x6622: b'\x11\x99\xde', + -0x6621: b'\x11\x99\xdf', + -0x6620: b'\x11\x99\xe0', + -0x661f: b'\x11\x99\xe1', + -0x661e: b'\x11\x99\xe2', + -0x661d: b'\x11\x99\xe3', + -0x661c: b'\x11\x99\xe4', + -0x661b: b'\x11\x99\xe5', + -0x661a: b'\x11\x99\xe6', + -0x6619: b'\x11\x99\xe7', + -0x6618: b'\x11\x99\xe8', + -0x6617: b'\x11\x99\xe9', + -0x6616: b'\x11\x99\xea', + -0x6615: b'\x11\x99\xeb', + -0x6614: b'\x11\x99\xec', + -0x6613: b'\x11\x99\xed', + -0x6612: b'\x11\x99\xee', + -0x6611: b'\x11\x99\xef', + -0x6610: b'\x11\x99\xf0', + -0x660f: b'\x11\x99\xf1', + -0x660e: b'\x11\x99\xf2', + -0x660d: b'\x11\x99\xf3', + -0x660c: b'\x11\x99\xf4', + -0x660b: b'\x11\x99\xf5', + -0x660a: b'\x11\x99\xf6', + -0x6609: b'\x11\x99\xf7', + -0x6608: b'\x11\x99\xf8', + -0x6607: b'\x11\x99\xf9', + -0x6606: b'\x11\x99\xfa', + -0x6605: b'\x11\x99\xfb', + -0x6604: b'\x11\x99\xfc', + -0x6603: b'\x11\x99\xfd', + -0x6602: b'\x11\x99\xfe', + -0x6601: b'\x11\x99\xff', + -0x6600: b'\x11\x9a\x00', + -0x65ff: b'\x11\x9a\x01', + -0x65fe: b'\x11\x9a\x02', + -0x65fd: b'\x11\x9a\x03', + -0x65fc: b'\x11\x9a\x04', + -0x65fb: b'\x11\x9a\x05', + -0x65fa: b'\x11\x9a\x06', + -0x65f9: b'\x11\x9a\x07', + -0x65f8: b'\x11\x9a\x08', + -0x65f7: b'\x11\x9a\t', + -0x65f6: b'\x11\x9a\n', + -0x65f5: b'\x11\x9a\x0b', + -0x65f4: b'\x11\x9a\x0c', + -0x65f3: b'\x11\x9a\r', + -0x65f2: b'\x11\x9a\x0e', + -0x65f1: b'\x11\x9a\x0f', + -0x65f0: b'\x11\x9a\x10', + -0x65ef: b'\x11\x9a\x11', + -0x65ee: b'\x11\x9a\x12', + -0x65ed: b'\x11\x9a\x13', + -0x65ec: b'\x11\x9a\x14', + -0x65eb: b'\x11\x9a\x15', + -0x65ea: b'\x11\x9a\x16', + -0x65e9: b'\x11\x9a\x17', + -0x65e8: b'\x11\x9a\x18', + -0x65e7: b'\x11\x9a\x19', + -0x65e6: b'\x11\x9a\x1a', + -0x65e5: b'\x11\x9a\x1b', + -0x65e4: b'\x11\x9a\x1c', + -0x65e3: b'\x11\x9a\x1d', + -0x65e2: b'\x11\x9a\x1e', + -0x65e1: b'\x11\x9a\x1f', + -0x65e0: b'\x11\x9a ', + -0x65df: b'\x11\x9a!', + -0x65de: b'\x11\x9a"', + -0x65dd: b'\x11\x9a#', + -0x65dc: b'\x11\x9a$', + -0x65db: b'\x11\x9a%', + -0x65da: b'\x11\x9a&', + -0x65d9: b"\x11\x9a'", + -0x65d8: b'\x11\x9a(', + -0x65d7: b'\x11\x9a)', + -0x65d6: b'\x11\x9a*', + -0x65d5: b'\x11\x9a+', + -0x65d4: b'\x11\x9a,', + -0x65d3: b'\x11\x9a-', + -0x65d2: b'\x11\x9a.', + -0x65d1: b'\x11\x9a/', + -0x65d0: b'\x11\x9a0', + -0x65cf: b'\x11\x9a1', + -0x65ce: b'\x11\x9a2', + -0x65cd: b'\x11\x9a3', + -0x65cc: b'\x11\x9a4', + -0x65cb: b'\x11\x9a5', + -0x65ca: b'\x11\x9a6', + -0x65c9: b'\x11\x9a7', + -0x65c8: b'\x11\x9a8', + -0x65c7: b'\x11\x9a9', + -0x65c6: b'\x11\x9a:', + -0x65c5: b'\x11\x9a;', + -0x65c4: b'\x11\x9a<', + -0x65c3: b'\x11\x9a=', + -0x65c2: b'\x11\x9a>', + -0x65c1: b'\x11\x9a?', + -0x65c0: b'\x11\x9a@', + -0x65bf: b'\x11\x9aA', + -0x65be: b'\x11\x9aB', + -0x65bd: b'\x11\x9aC', + -0x65bc: b'\x11\x9aD', + -0x65bb: b'\x11\x9aE', + -0x65ba: b'\x11\x9aF', + -0x65b9: b'\x11\x9aG', + -0x65b8: b'\x11\x9aH', + -0x65b7: b'\x11\x9aI', + -0x65b6: b'\x11\x9aJ', + -0x65b5: b'\x11\x9aK', + -0x65b4: b'\x11\x9aL', + -0x65b3: b'\x11\x9aM', + -0x65b2: b'\x11\x9aN', + -0x65b1: b'\x11\x9aO', + -0x65b0: b'\x11\x9aP', + -0x65af: b'\x11\x9aQ', + -0x65ae: b'\x11\x9aR', + -0x65ad: b'\x11\x9aS', + -0x65ac: b'\x11\x9aT', + -0x65ab: b'\x11\x9aU', + -0x65aa: b'\x11\x9aV', + -0x65a9: b'\x11\x9aW', + -0x65a8: b'\x11\x9aX', + -0x65a7: b'\x11\x9aY', + -0x65a6: b'\x11\x9aZ', + -0x65a5: b'\x11\x9a[', + -0x65a4: b'\x11\x9a\\', + -0x65a3: b'\x11\x9a]', + -0x65a2: b'\x11\x9a^', + -0x65a1: b'\x11\x9a_', + -0x65a0: b'\x11\x9a`', + -0x659f: b'\x11\x9aa', + -0x659e: b'\x11\x9ab', + -0x659d: b'\x11\x9ac', + -0x659c: b'\x11\x9ad', + -0x659b: b'\x11\x9ae', + -0x659a: b'\x11\x9af', + -0x6599: b'\x11\x9ag', + -0x6598: b'\x11\x9ah', + -0x6597: b'\x11\x9ai', + -0x6596: b'\x11\x9aj', + -0x6595: b'\x11\x9ak', + -0x6594: b'\x11\x9al', + -0x6593: b'\x11\x9am', + -0x6592: b'\x11\x9an', + -0x6591: b'\x11\x9ao', + -0x6590: b'\x11\x9ap', + -0x658f: b'\x11\x9aq', + -0x658e: b'\x11\x9ar', + -0x658d: b'\x11\x9as', + -0x658c: b'\x11\x9at', + -0x658b: b'\x11\x9au', + -0x658a: b'\x11\x9av', + -0x6589: b'\x11\x9aw', + -0x6588: b'\x11\x9ax', + -0x6587: b'\x11\x9ay', + -0x6586: b'\x11\x9az', + -0x6585: b'\x11\x9a{', + -0x6584: b'\x11\x9a|', + -0x6583: b'\x11\x9a}', + -0x6582: b'\x11\x9a~', + -0x6581: b'\x11\x9a\x7f', + -0x6580: b'\x11\x9a\x80', + -0x657f: b'\x11\x9a\x81', + -0x657e: b'\x11\x9a\x82', + -0x657d: b'\x11\x9a\x83', + -0x657c: b'\x11\x9a\x84', + -0x657b: b'\x11\x9a\x85', + -0x657a: b'\x11\x9a\x86', + -0x6579: b'\x11\x9a\x87', + -0x6578: b'\x11\x9a\x88', + -0x6577: b'\x11\x9a\x89', + -0x6576: b'\x11\x9a\x8a', + -0x6575: b'\x11\x9a\x8b', + -0x6574: b'\x11\x9a\x8c', + -0x6573: b'\x11\x9a\x8d', + -0x6572: b'\x11\x9a\x8e', + -0x6571: b'\x11\x9a\x8f', + -0x6570: b'\x11\x9a\x90', + -0x656f: b'\x11\x9a\x91', + -0x656e: b'\x11\x9a\x92', + -0x656d: b'\x11\x9a\x93', + -0x656c: b'\x11\x9a\x94', + -0x656b: b'\x11\x9a\x95', + -0x656a: b'\x11\x9a\x96', + -0x6569: b'\x11\x9a\x97', + -0x6568: b'\x11\x9a\x98', + -0x6567: b'\x11\x9a\x99', + -0x6566: b'\x11\x9a\x9a', + -0x6565: b'\x11\x9a\x9b', + -0x6564: b'\x11\x9a\x9c', + -0x6563: b'\x11\x9a\x9d', + -0x6562: b'\x11\x9a\x9e', + -0x6561: b'\x11\x9a\x9f', + -0x6560: b'\x11\x9a\xa0', + -0x655f: b'\x11\x9a\xa1', + -0x655e: b'\x11\x9a\xa2', + -0x655d: b'\x11\x9a\xa3', + -0x655c: b'\x11\x9a\xa4', + -0x655b: b'\x11\x9a\xa5', + -0x655a: b'\x11\x9a\xa6', + -0x6559: b'\x11\x9a\xa7', + -0x6558: b'\x11\x9a\xa8', + -0x6557: b'\x11\x9a\xa9', + -0x6556: b'\x11\x9a\xaa', + -0x6555: b'\x11\x9a\xab', + -0x6554: b'\x11\x9a\xac', + -0x6553: b'\x11\x9a\xad', + -0x6552: b'\x11\x9a\xae', + -0x6551: b'\x11\x9a\xaf', + -0x6550: b'\x11\x9a\xb0', + -0x654f: b'\x11\x9a\xb1', + -0x654e: b'\x11\x9a\xb2', + -0x654d: b'\x11\x9a\xb3', + -0x654c: b'\x11\x9a\xb4', + -0x654b: b'\x11\x9a\xb5', + -0x654a: b'\x11\x9a\xb6', + -0x6549: b'\x11\x9a\xb7', + -0x6548: b'\x11\x9a\xb8', + -0x6547: b'\x11\x9a\xb9', + -0x6546: b'\x11\x9a\xba', + -0x6545: b'\x11\x9a\xbb', + -0x6544: b'\x11\x9a\xbc', + -0x6543: b'\x11\x9a\xbd', + -0x6542: b'\x11\x9a\xbe', + -0x6541: b'\x11\x9a\xbf', + -0x6540: b'\x11\x9a\xc0', + -0x653f: b'\x11\x9a\xc1', + -0x653e: b'\x11\x9a\xc2', + -0x653d: b'\x11\x9a\xc3', + -0x653c: b'\x11\x9a\xc4', + -0x653b: b'\x11\x9a\xc5', + -0x653a: b'\x11\x9a\xc6', + -0x6539: b'\x11\x9a\xc7', + -0x6538: b'\x11\x9a\xc8', + -0x6537: b'\x11\x9a\xc9', + -0x6536: b'\x11\x9a\xca', + -0x6535: b'\x11\x9a\xcb', + -0x6534: b'\x11\x9a\xcc', + -0x6533: b'\x11\x9a\xcd', + -0x6532: b'\x11\x9a\xce', + -0x6531: b'\x11\x9a\xcf', + -0x6530: b'\x11\x9a\xd0', + -0x652f: b'\x11\x9a\xd1', + -0x652e: b'\x11\x9a\xd2', + -0x652d: b'\x11\x9a\xd3', + -0x652c: b'\x11\x9a\xd4', + -0x652b: b'\x11\x9a\xd5', + -0x652a: b'\x11\x9a\xd6', + -0x6529: b'\x11\x9a\xd7', + -0x6528: b'\x11\x9a\xd8', + -0x6527: b'\x11\x9a\xd9', + -0x6526: b'\x11\x9a\xda', + -0x6525: b'\x11\x9a\xdb', + -0x6524: b'\x11\x9a\xdc', + -0x6523: b'\x11\x9a\xdd', + -0x6522: b'\x11\x9a\xde', + -0x6521: b'\x11\x9a\xdf', + -0x6520: b'\x11\x9a\xe0', + -0x651f: b'\x11\x9a\xe1', + -0x651e: b'\x11\x9a\xe2', + -0x651d: b'\x11\x9a\xe3', + -0x651c: b'\x11\x9a\xe4', + -0x651b: b'\x11\x9a\xe5', + -0x651a: b'\x11\x9a\xe6', + -0x6519: b'\x11\x9a\xe7', + -0x6518: b'\x11\x9a\xe8', + -0x6517: b'\x11\x9a\xe9', + -0x6516: b'\x11\x9a\xea', + -0x6515: b'\x11\x9a\xeb', + -0x6514: b'\x11\x9a\xec', + -0x6513: b'\x11\x9a\xed', + -0x6512: b'\x11\x9a\xee', + -0x6511: b'\x11\x9a\xef', + -0x6510: b'\x11\x9a\xf0', + -0x650f: b'\x11\x9a\xf1', + -0x650e: b'\x11\x9a\xf2', + -0x650d: b'\x11\x9a\xf3', + -0x650c: b'\x11\x9a\xf4', + -0x650b: b'\x11\x9a\xf5', + -0x650a: b'\x11\x9a\xf6', + -0x6509: b'\x11\x9a\xf7', + -0x6508: b'\x11\x9a\xf8', + -0x6507: b'\x11\x9a\xf9', + -0x6506: b'\x11\x9a\xfa', + -0x6505: b'\x11\x9a\xfb', + -0x6504: b'\x11\x9a\xfc', + -0x6503: b'\x11\x9a\xfd', + -0x6502: b'\x11\x9a\xfe', + -0x6501: b'\x11\x9a\xff', + -0x6500: b'\x11\x9b\x00', + -0x64ff: b'\x11\x9b\x01', + -0x64fe: b'\x11\x9b\x02', + -0x64fd: b'\x11\x9b\x03', + -0x64fc: b'\x11\x9b\x04', + -0x64fb: b'\x11\x9b\x05', + -0x64fa: b'\x11\x9b\x06', + -0x64f9: b'\x11\x9b\x07', + -0x64f8: b'\x11\x9b\x08', + -0x64f7: b'\x11\x9b\t', + -0x64f6: b'\x11\x9b\n', + -0x64f5: b'\x11\x9b\x0b', + -0x64f4: b'\x11\x9b\x0c', + -0x64f3: b'\x11\x9b\r', + -0x64f2: b'\x11\x9b\x0e', + -0x64f1: b'\x11\x9b\x0f', + -0x64f0: b'\x11\x9b\x10', + -0x64ef: b'\x11\x9b\x11', + -0x64ee: b'\x11\x9b\x12', + -0x64ed: b'\x11\x9b\x13', + -0x64ec: b'\x11\x9b\x14', + -0x64eb: b'\x11\x9b\x15', + -0x64ea: b'\x11\x9b\x16', + -0x64e9: b'\x11\x9b\x17', + -0x64e8: b'\x11\x9b\x18', + -0x64e7: b'\x11\x9b\x19', + -0x64e6: b'\x11\x9b\x1a', + -0x64e5: b'\x11\x9b\x1b', + -0x64e4: b'\x11\x9b\x1c', + -0x64e3: b'\x11\x9b\x1d', + -0x64e2: b'\x11\x9b\x1e', + -0x64e1: b'\x11\x9b\x1f', + -0x64e0: b'\x11\x9b ', + -0x64df: b'\x11\x9b!', + -0x64de: b'\x11\x9b"', + -0x64dd: b'\x11\x9b#', + -0x64dc: b'\x11\x9b$', + -0x64db: b'\x11\x9b%', + -0x64da: b'\x11\x9b&', + -0x64d9: b"\x11\x9b'", + -0x64d8: b'\x11\x9b(', + -0x64d7: b'\x11\x9b)', + -0x64d6: b'\x11\x9b*', + -0x64d5: b'\x11\x9b+', + -0x64d4: b'\x11\x9b,', + -0x64d3: b'\x11\x9b-', + -0x64d2: b'\x11\x9b.', + -0x64d1: b'\x11\x9b/', + -0x64d0: b'\x11\x9b0', + -0x64cf: b'\x11\x9b1', + -0x64ce: b'\x11\x9b2', + -0x64cd: b'\x11\x9b3', + -0x64cc: b'\x11\x9b4', + -0x64cb: b'\x11\x9b5', + -0x64ca: b'\x11\x9b6', + -0x64c9: b'\x11\x9b7', + -0x64c8: b'\x11\x9b8', + -0x64c7: b'\x11\x9b9', + -0x64c6: b'\x11\x9b:', + -0x64c5: b'\x11\x9b;', + -0x64c4: b'\x11\x9b<', + -0x64c3: b'\x11\x9b=', + -0x64c2: b'\x11\x9b>', + -0x64c1: b'\x11\x9b?', + -0x64c0: b'\x11\x9b@', + -0x64bf: b'\x11\x9bA', + -0x64be: b'\x11\x9bB', + -0x64bd: b'\x11\x9bC', + -0x64bc: b'\x11\x9bD', + -0x64bb: b'\x11\x9bE', + -0x64ba: b'\x11\x9bF', + -0x64b9: b'\x11\x9bG', + -0x64b8: b'\x11\x9bH', + -0x64b7: b'\x11\x9bI', + -0x64b6: b'\x11\x9bJ', + -0x64b5: b'\x11\x9bK', + -0x64b4: b'\x11\x9bL', + -0x64b3: b'\x11\x9bM', + -0x64b2: b'\x11\x9bN', + -0x64b1: b'\x11\x9bO', + -0x64b0: b'\x11\x9bP', + -0x64af: b'\x11\x9bQ', + -0x64ae: b'\x11\x9bR', + -0x64ad: b'\x11\x9bS', + -0x64ac: b'\x11\x9bT', + -0x64ab: b'\x11\x9bU', + -0x64aa: b'\x11\x9bV', + -0x64a9: b'\x11\x9bW', + -0x64a8: b'\x11\x9bX', + -0x64a7: b'\x11\x9bY', + -0x64a6: b'\x11\x9bZ', + -0x64a5: b'\x11\x9b[', + -0x64a4: b'\x11\x9b\\', + -0x64a3: b'\x11\x9b]', + -0x64a2: b'\x11\x9b^', + -0x64a1: b'\x11\x9b_', + -0x64a0: b'\x11\x9b`', + -0x649f: b'\x11\x9ba', + -0x649e: b'\x11\x9bb', + -0x649d: b'\x11\x9bc', + -0x649c: b'\x11\x9bd', + -0x649b: b'\x11\x9be', + -0x649a: b'\x11\x9bf', + -0x6499: b'\x11\x9bg', + -0x6498: b'\x11\x9bh', + -0x6497: b'\x11\x9bi', + -0x6496: b'\x11\x9bj', + -0x6495: b'\x11\x9bk', + -0x6494: b'\x11\x9bl', + -0x6493: b'\x11\x9bm', + -0x6492: b'\x11\x9bn', + -0x6491: b'\x11\x9bo', + -0x6490: b'\x11\x9bp', + -0x648f: b'\x11\x9bq', + -0x648e: b'\x11\x9br', + -0x648d: b'\x11\x9bs', + -0x648c: b'\x11\x9bt', + -0x648b: b'\x11\x9bu', + -0x648a: b'\x11\x9bv', + -0x6489: b'\x11\x9bw', + -0x6488: b'\x11\x9bx', + -0x6487: b'\x11\x9by', + -0x6486: b'\x11\x9bz', + -0x6485: b'\x11\x9b{', + -0x6484: b'\x11\x9b|', + -0x6483: b'\x11\x9b}', + -0x6482: b'\x11\x9b~', + -0x6481: b'\x11\x9b\x7f', + -0x6480: b'\x11\x9b\x80', + -0x647f: b'\x11\x9b\x81', + -0x647e: b'\x11\x9b\x82', + -0x647d: b'\x11\x9b\x83', + -0x647c: b'\x11\x9b\x84', + -0x647b: b'\x11\x9b\x85', + -0x647a: b'\x11\x9b\x86', + -0x6479: b'\x11\x9b\x87', + -0x6478: b'\x11\x9b\x88', + -0x6477: b'\x11\x9b\x89', + -0x6476: b'\x11\x9b\x8a', + -0x6475: b'\x11\x9b\x8b', + -0x6474: b'\x11\x9b\x8c', + -0x6473: b'\x11\x9b\x8d', + -0x6472: b'\x11\x9b\x8e', + -0x6471: b'\x11\x9b\x8f', + -0x6470: b'\x11\x9b\x90', + -0x646f: b'\x11\x9b\x91', + -0x646e: b'\x11\x9b\x92', + -0x646d: b'\x11\x9b\x93', + -0x646c: b'\x11\x9b\x94', + -0x646b: b'\x11\x9b\x95', + -0x646a: b'\x11\x9b\x96', + -0x6469: b'\x11\x9b\x97', + -0x6468: b'\x11\x9b\x98', + -0x6467: b'\x11\x9b\x99', + -0x6466: b'\x11\x9b\x9a', + -0x6465: b'\x11\x9b\x9b', + -0x6464: b'\x11\x9b\x9c', + -0x6463: b'\x11\x9b\x9d', + -0x6462: b'\x11\x9b\x9e', + -0x6461: b'\x11\x9b\x9f', + -0x6460: b'\x11\x9b\xa0', + -0x645f: b'\x11\x9b\xa1', + -0x645e: b'\x11\x9b\xa2', + -0x645d: b'\x11\x9b\xa3', + -0x645c: b'\x11\x9b\xa4', + -0x645b: b'\x11\x9b\xa5', + -0x645a: b'\x11\x9b\xa6', + -0x6459: b'\x11\x9b\xa7', + -0x6458: b'\x11\x9b\xa8', + -0x6457: b'\x11\x9b\xa9', + -0x6456: b'\x11\x9b\xaa', + -0x6455: b'\x11\x9b\xab', + -0x6454: b'\x11\x9b\xac', + -0x6453: b'\x11\x9b\xad', + -0x6452: b'\x11\x9b\xae', + -0x6451: b'\x11\x9b\xaf', + -0x6450: b'\x11\x9b\xb0', + -0x644f: b'\x11\x9b\xb1', + -0x644e: b'\x11\x9b\xb2', + -0x644d: b'\x11\x9b\xb3', + -0x644c: b'\x11\x9b\xb4', + -0x644b: b'\x11\x9b\xb5', + -0x644a: b'\x11\x9b\xb6', + -0x6449: b'\x11\x9b\xb7', + -0x6448: b'\x11\x9b\xb8', + -0x6447: b'\x11\x9b\xb9', + -0x6446: b'\x11\x9b\xba', + -0x6445: b'\x11\x9b\xbb', + -0x6444: b'\x11\x9b\xbc', + -0x6443: b'\x11\x9b\xbd', + -0x6442: b'\x11\x9b\xbe', + -0x6441: b'\x11\x9b\xbf', + -0x6440: b'\x11\x9b\xc0', + -0x643f: b'\x11\x9b\xc1', + -0x643e: b'\x11\x9b\xc2', + -0x643d: b'\x11\x9b\xc3', + -0x643c: b'\x11\x9b\xc4', + -0x643b: b'\x11\x9b\xc5', + -0x643a: b'\x11\x9b\xc6', + -0x6439: b'\x11\x9b\xc7', + -0x6438: b'\x11\x9b\xc8', + -0x6437: b'\x11\x9b\xc9', + -0x6436: b'\x11\x9b\xca', + -0x6435: b'\x11\x9b\xcb', + -0x6434: b'\x11\x9b\xcc', + -0x6433: b'\x11\x9b\xcd', + -0x6432: b'\x11\x9b\xce', + -0x6431: b'\x11\x9b\xcf', + -0x6430: b'\x11\x9b\xd0', + -0x642f: b'\x11\x9b\xd1', + -0x642e: b'\x11\x9b\xd2', + -0x642d: b'\x11\x9b\xd3', + -0x642c: b'\x11\x9b\xd4', + -0x642b: b'\x11\x9b\xd5', + -0x642a: b'\x11\x9b\xd6', + -0x6429: b'\x11\x9b\xd7', + -0x6428: b'\x11\x9b\xd8', + -0x6427: b'\x11\x9b\xd9', + -0x6426: b'\x11\x9b\xda', + -0x6425: b'\x11\x9b\xdb', + -0x6424: b'\x11\x9b\xdc', + -0x6423: b'\x11\x9b\xdd', + -0x6422: b'\x11\x9b\xde', + -0x6421: b'\x11\x9b\xdf', + -0x6420: b'\x11\x9b\xe0', + -0x641f: b'\x11\x9b\xe1', + -0x641e: b'\x11\x9b\xe2', + -0x641d: b'\x11\x9b\xe3', + -0x641c: b'\x11\x9b\xe4', + -0x641b: b'\x11\x9b\xe5', + -0x641a: b'\x11\x9b\xe6', + -0x6419: b'\x11\x9b\xe7', + -0x6418: b'\x11\x9b\xe8', + -0x6417: b'\x11\x9b\xe9', + -0x6416: b'\x11\x9b\xea', + -0x6415: b'\x11\x9b\xeb', + -0x6414: b'\x11\x9b\xec', + -0x6413: b'\x11\x9b\xed', + -0x6412: b'\x11\x9b\xee', + -0x6411: b'\x11\x9b\xef', + -0x6410: b'\x11\x9b\xf0', + -0x640f: b'\x11\x9b\xf1', + -0x640e: b'\x11\x9b\xf2', + -0x640d: b'\x11\x9b\xf3', + -0x640c: b'\x11\x9b\xf4', + -0x640b: b'\x11\x9b\xf5', + -0x640a: b'\x11\x9b\xf6', + -0x6409: b'\x11\x9b\xf7', + -0x6408: b'\x11\x9b\xf8', + -0x6407: b'\x11\x9b\xf9', + -0x6406: b'\x11\x9b\xfa', + -0x6405: b'\x11\x9b\xfb', + -0x6404: b'\x11\x9b\xfc', + -0x6403: b'\x11\x9b\xfd', + -0x6402: b'\x11\x9b\xfe', + -0x6401: b'\x11\x9b\xff', + -0x6400: b'\x11\x9c\x00', + -0x63ff: b'\x11\x9c\x01', + -0x63fe: b'\x11\x9c\x02', + -0x63fd: b'\x11\x9c\x03', + -0x63fc: b'\x11\x9c\x04', + -0x63fb: b'\x11\x9c\x05', + -0x63fa: b'\x11\x9c\x06', + -0x63f9: b'\x11\x9c\x07', + -0x63f8: b'\x11\x9c\x08', + -0x63f7: b'\x11\x9c\t', + -0x63f6: b'\x11\x9c\n', + -0x63f5: b'\x11\x9c\x0b', + -0x63f4: b'\x11\x9c\x0c', + -0x63f3: b'\x11\x9c\r', + -0x63f2: b'\x11\x9c\x0e', + -0x63f1: b'\x11\x9c\x0f', + -0x63f0: b'\x11\x9c\x10', + -0x63ef: b'\x11\x9c\x11', + -0x63ee: b'\x11\x9c\x12', + -0x63ed: b'\x11\x9c\x13', + -0x63ec: b'\x11\x9c\x14', + -0x63eb: b'\x11\x9c\x15', + -0x63ea: b'\x11\x9c\x16', + -0x63e9: b'\x11\x9c\x17', + -0x63e8: b'\x11\x9c\x18', + -0x63e7: b'\x11\x9c\x19', + -0x63e6: b'\x11\x9c\x1a', + -0x63e5: b'\x11\x9c\x1b', + -0x63e4: b'\x11\x9c\x1c', + -0x63e3: b'\x11\x9c\x1d', + -0x63e2: b'\x11\x9c\x1e', + -0x63e1: b'\x11\x9c\x1f', + -0x63e0: b'\x11\x9c ', + -0x63df: b'\x11\x9c!', + -0x63de: b'\x11\x9c"', + -0x63dd: b'\x11\x9c#', + -0x63dc: b'\x11\x9c$', + -0x63db: b'\x11\x9c%', + -0x63da: b'\x11\x9c&', + -0x63d9: b"\x11\x9c'", + -0x63d8: b'\x11\x9c(', + -0x63d7: b'\x11\x9c)', + -0x63d6: b'\x11\x9c*', + -0x63d5: b'\x11\x9c+', + -0x63d4: b'\x11\x9c,', + -0x63d3: b'\x11\x9c-', + -0x63d2: b'\x11\x9c.', + -0x63d1: b'\x11\x9c/', + -0x63d0: b'\x11\x9c0', + -0x63cf: b'\x11\x9c1', + -0x63ce: b'\x11\x9c2', + -0x63cd: b'\x11\x9c3', + -0x63cc: b'\x11\x9c4', + -0x63cb: b'\x11\x9c5', + -0x63ca: b'\x11\x9c6', + -0x63c9: b'\x11\x9c7', + -0x63c8: b'\x11\x9c8', + -0x63c7: b'\x11\x9c9', + -0x63c6: b'\x11\x9c:', + -0x63c5: b'\x11\x9c;', + -0x63c4: b'\x11\x9c<', + -0x63c3: b'\x11\x9c=', + -0x63c2: b'\x11\x9c>', + -0x63c1: b'\x11\x9c?', + -0x63c0: b'\x11\x9c@', + -0x63bf: b'\x11\x9cA', + -0x63be: b'\x11\x9cB', + -0x63bd: b'\x11\x9cC', + -0x63bc: b'\x11\x9cD', + -0x63bb: b'\x11\x9cE', + -0x63ba: b'\x11\x9cF', + -0x63b9: b'\x11\x9cG', + -0x63b8: b'\x11\x9cH', + -0x63b7: b'\x11\x9cI', + -0x63b6: b'\x11\x9cJ', + -0x63b5: b'\x11\x9cK', + -0x63b4: b'\x11\x9cL', + -0x63b3: b'\x11\x9cM', + -0x63b2: b'\x11\x9cN', + -0x63b1: b'\x11\x9cO', + -0x63b0: b'\x11\x9cP', + -0x63af: b'\x11\x9cQ', + -0x63ae: b'\x11\x9cR', + -0x63ad: b'\x11\x9cS', + -0x63ac: b'\x11\x9cT', + -0x63ab: b'\x11\x9cU', + -0x63aa: b'\x11\x9cV', + -0x63a9: b'\x11\x9cW', + -0x63a8: b'\x11\x9cX', + -0x63a7: b'\x11\x9cY', + -0x63a6: b'\x11\x9cZ', + -0x63a5: b'\x11\x9c[', + -0x63a4: b'\x11\x9c\\', + -0x63a3: b'\x11\x9c]', + -0x63a2: b'\x11\x9c^', + -0x63a1: b'\x11\x9c_', + -0x63a0: b'\x11\x9c`', + -0x639f: b'\x11\x9ca', + -0x639e: b'\x11\x9cb', + -0x639d: b'\x11\x9cc', + -0x639c: b'\x11\x9cd', + -0x639b: b'\x11\x9ce', + -0x639a: b'\x11\x9cf', + -0x6399: b'\x11\x9cg', + -0x6398: b'\x11\x9ch', + -0x6397: b'\x11\x9ci', + -0x6396: b'\x11\x9cj', + -0x6395: b'\x11\x9ck', + -0x6394: b'\x11\x9cl', + -0x6393: b'\x11\x9cm', + -0x6392: b'\x11\x9cn', + -0x6391: b'\x11\x9co', + -0x6390: b'\x11\x9cp', + -0x638f: b'\x11\x9cq', + -0x638e: b'\x11\x9cr', + -0x638d: b'\x11\x9cs', + -0x638c: b'\x11\x9ct', + -0x638b: b'\x11\x9cu', + -0x638a: b'\x11\x9cv', + -0x6389: b'\x11\x9cw', + -0x6388: b'\x11\x9cx', + -0x6387: b'\x11\x9cy', + -0x6386: b'\x11\x9cz', + -0x6385: b'\x11\x9c{', + -0x6384: b'\x11\x9c|', + -0x6383: b'\x11\x9c}', + -0x6382: b'\x11\x9c~', + -0x6381: b'\x11\x9c\x7f', + -0x6380: b'\x11\x9c\x80', + -0x637f: b'\x11\x9c\x81', + -0x637e: b'\x11\x9c\x82', + -0x637d: b'\x11\x9c\x83', + -0x637c: b'\x11\x9c\x84', + -0x637b: b'\x11\x9c\x85', + -0x637a: b'\x11\x9c\x86', + -0x6379: b'\x11\x9c\x87', + -0x6378: b'\x11\x9c\x88', + -0x6377: b'\x11\x9c\x89', + -0x6376: b'\x11\x9c\x8a', + -0x6375: b'\x11\x9c\x8b', + -0x6374: b'\x11\x9c\x8c', + -0x6373: b'\x11\x9c\x8d', + -0x6372: b'\x11\x9c\x8e', + -0x6371: b'\x11\x9c\x8f', + -0x6370: b'\x11\x9c\x90', + -0x636f: b'\x11\x9c\x91', + -0x636e: b'\x11\x9c\x92', + -0x636d: b'\x11\x9c\x93', + -0x636c: b'\x11\x9c\x94', + -0x636b: b'\x11\x9c\x95', + -0x636a: b'\x11\x9c\x96', + -0x6369: b'\x11\x9c\x97', + -0x6368: b'\x11\x9c\x98', + -0x6367: b'\x11\x9c\x99', + -0x6366: b'\x11\x9c\x9a', + -0x6365: b'\x11\x9c\x9b', + -0x6364: b'\x11\x9c\x9c', + -0x6363: b'\x11\x9c\x9d', + -0x6362: b'\x11\x9c\x9e', + -0x6361: b'\x11\x9c\x9f', + -0x6360: b'\x11\x9c\xa0', + -0x635f: b'\x11\x9c\xa1', + -0x635e: b'\x11\x9c\xa2', + -0x635d: b'\x11\x9c\xa3', + -0x635c: b'\x11\x9c\xa4', + -0x635b: b'\x11\x9c\xa5', + -0x635a: b'\x11\x9c\xa6', + -0x6359: b'\x11\x9c\xa7', + -0x6358: b'\x11\x9c\xa8', + -0x6357: b'\x11\x9c\xa9', + -0x6356: b'\x11\x9c\xaa', + -0x6355: b'\x11\x9c\xab', + -0x6354: b'\x11\x9c\xac', + -0x6353: b'\x11\x9c\xad', + -0x6352: b'\x11\x9c\xae', + -0x6351: b'\x11\x9c\xaf', + -0x6350: b'\x11\x9c\xb0', + -0x634f: b'\x11\x9c\xb1', + -0x634e: b'\x11\x9c\xb2', + -0x634d: b'\x11\x9c\xb3', + -0x634c: b'\x11\x9c\xb4', + -0x634b: b'\x11\x9c\xb5', + -0x634a: b'\x11\x9c\xb6', + -0x6349: b'\x11\x9c\xb7', + -0x6348: b'\x11\x9c\xb8', + -0x6347: b'\x11\x9c\xb9', + -0x6346: b'\x11\x9c\xba', + -0x6345: b'\x11\x9c\xbb', + -0x6344: b'\x11\x9c\xbc', + -0x6343: b'\x11\x9c\xbd', + -0x6342: b'\x11\x9c\xbe', + -0x6341: b'\x11\x9c\xbf', + -0x6340: b'\x11\x9c\xc0', + -0x633f: b'\x11\x9c\xc1', + -0x633e: b'\x11\x9c\xc2', + -0x633d: b'\x11\x9c\xc3', + -0x633c: b'\x11\x9c\xc4', + -0x633b: b'\x11\x9c\xc5', + -0x633a: b'\x11\x9c\xc6', + -0x6339: b'\x11\x9c\xc7', + -0x6338: b'\x11\x9c\xc8', + -0x6337: b'\x11\x9c\xc9', + -0x6336: b'\x11\x9c\xca', + -0x6335: b'\x11\x9c\xcb', + -0x6334: b'\x11\x9c\xcc', + -0x6333: b'\x11\x9c\xcd', + -0x6332: b'\x11\x9c\xce', + -0x6331: b'\x11\x9c\xcf', + -0x6330: b'\x11\x9c\xd0', + -0x632f: b'\x11\x9c\xd1', + -0x632e: b'\x11\x9c\xd2', + -0x632d: b'\x11\x9c\xd3', + -0x632c: b'\x11\x9c\xd4', + -0x632b: b'\x11\x9c\xd5', + -0x632a: b'\x11\x9c\xd6', + -0x6329: b'\x11\x9c\xd7', + -0x6328: b'\x11\x9c\xd8', + -0x6327: b'\x11\x9c\xd9', + -0x6326: b'\x11\x9c\xda', + -0x6325: b'\x11\x9c\xdb', + -0x6324: b'\x11\x9c\xdc', + -0x6323: b'\x11\x9c\xdd', + -0x6322: b'\x11\x9c\xde', + -0x6321: b'\x11\x9c\xdf', + -0x6320: b'\x11\x9c\xe0', + -0x631f: b'\x11\x9c\xe1', + -0x631e: b'\x11\x9c\xe2', + -0x631d: b'\x11\x9c\xe3', + -0x631c: b'\x11\x9c\xe4', + -0x631b: b'\x11\x9c\xe5', + -0x631a: b'\x11\x9c\xe6', + -0x6319: b'\x11\x9c\xe7', + -0x6318: b'\x11\x9c\xe8', + -0x6317: b'\x11\x9c\xe9', + -0x6316: b'\x11\x9c\xea', + -0x6315: b'\x11\x9c\xeb', + -0x6314: b'\x11\x9c\xec', + -0x6313: b'\x11\x9c\xed', + -0x6312: b'\x11\x9c\xee', + -0x6311: b'\x11\x9c\xef', + -0x6310: b'\x11\x9c\xf0', + -0x630f: b'\x11\x9c\xf1', + -0x630e: b'\x11\x9c\xf2', + -0x630d: b'\x11\x9c\xf3', + -0x630c: b'\x11\x9c\xf4', + -0x630b: b'\x11\x9c\xf5', + -0x630a: b'\x11\x9c\xf6', + -0x6309: b'\x11\x9c\xf7', + -0x6308: b'\x11\x9c\xf8', + -0x6307: b'\x11\x9c\xf9', + -0x6306: b'\x11\x9c\xfa', + -0x6305: b'\x11\x9c\xfb', + -0x6304: b'\x11\x9c\xfc', + -0x6303: b'\x11\x9c\xfd', + -0x6302: b'\x11\x9c\xfe', + -0x6301: b'\x11\x9c\xff', + -0x6300: b'\x11\x9d\x00', + -0x62ff: b'\x11\x9d\x01', + -0x62fe: b'\x11\x9d\x02', + -0x62fd: b'\x11\x9d\x03', + -0x62fc: b'\x11\x9d\x04', + -0x62fb: b'\x11\x9d\x05', + -0x62fa: b'\x11\x9d\x06', + -0x62f9: b'\x11\x9d\x07', + -0x62f8: b'\x11\x9d\x08', + -0x62f7: b'\x11\x9d\t', + -0x62f6: b'\x11\x9d\n', + -0x62f5: b'\x11\x9d\x0b', + -0x62f4: b'\x11\x9d\x0c', + -0x62f3: b'\x11\x9d\r', + -0x62f2: b'\x11\x9d\x0e', + -0x62f1: b'\x11\x9d\x0f', + -0x62f0: b'\x11\x9d\x10', + -0x62ef: b'\x11\x9d\x11', + -0x62ee: b'\x11\x9d\x12', + -0x62ed: b'\x11\x9d\x13', + -0x62ec: b'\x11\x9d\x14', + -0x62eb: b'\x11\x9d\x15', + -0x62ea: b'\x11\x9d\x16', + -0x62e9: b'\x11\x9d\x17', + -0x62e8: b'\x11\x9d\x18', + -0x62e7: b'\x11\x9d\x19', + -0x62e6: b'\x11\x9d\x1a', + -0x62e5: b'\x11\x9d\x1b', + -0x62e4: b'\x11\x9d\x1c', + -0x62e3: b'\x11\x9d\x1d', + -0x62e2: b'\x11\x9d\x1e', + -0x62e1: b'\x11\x9d\x1f', + -0x62e0: b'\x11\x9d ', + -0x62df: b'\x11\x9d!', + -0x62de: b'\x11\x9d"', + -0x62dd: b'\x11\x9d#', + -0x62dc: b'\x11\x9d$', + -0x62db: b'\x11\x9d%', + -0x62da: b'\x11\x9d&', + -0x62d9: b"\x11\x9d'", + -0x62d8: b'\x11\x9d(', + -0x62d7: b'\x11\x9d)', + -0x62d6: b'\x11\x9d*', + -0x62d5: b'\x11\x9d+', + -0x62d4: b'\x11\x9d,', + -0x62d3: b'\x11\x9d-', + -0x62d2: b'\x11\x9d.', + -0x62d1: b'\x11\x9d/', + -0x62d0: b'\x11\x9d0', + -0x62cf: b'\x11\x9d1', + -0x62ce: b'\x11\x9d2', + -0x62cd: b'\x11\x9d3', + -0x62cc: b'\x11\x9d4', + -0x62cb: b'\x11\x9d5', + -0x62ca: b'\x11\x9d6', + -0x62c9: b'\x11\x9d7', + -0x62c8: b'\x11\x9d8', + -0x62c7: b'\x11\x9d9', + -0x62c6: b'\x11\x9d:', + -0x62c5: b'\x11\x9d;', + -0x62c4: b'\x11\x9d<', + -0x62c3: b'\x11\x9d=', + -0x62c2: b'\x11\x9d>', + -0x62c1: b'\x11\x9d?', + -0x62c0: b'\x11\x9d@', + -0x62bf: b'\x11\x9dA', + -0x62be: b'\x11\x9dB', + -0x62bd: b'\x11\x9dC', + -0x62bc: b'\x11\x9dD', + -0x62bb: b'\x11\x9dE', + -0x62ba: b'\x11\x9dF', + -0x62b9: b'\x11\x9dG', + -0x62b8: b'\x11\x9dH', + -0x62b7: b'\x11\x9dI', + -0x62b6: b'\x11\x9dJ', + -0x62b5: b'\x11\x9dK', + -0x62b4: b'\x11\x9dL', + -0x62b3: b'\x11\x9dM', + -0x62b2: b'\x11\x9dN', + -0x62b1: b'\x11\x9dO', + -0x62b0: b'\x11\x9dP', + -0x62af: b'\x11\x9dQ', + -0x62ae: b'\x11\x9dR', + -0x62ad: b'\x11\x9dS', + -0x62ac: b'\x11\x9dT', + -0x62ab: b'\x11\x9dU', + -0x62aa: b'\x11\x9dV', + -0x62a9: b'\x11\x9dW', + -0x62a8: b'\x11\x9dX', + -0x62a7: b'\x11\x9dY', + -0x62a6: b'\x11\x9dZ', + -0x62a5: b'\x11\x9d[', + -0x62a4: b'\x11\x9d\\', + -0x62a3: b'\x11\x9d]', + -0x62a2: b'\x11\x9d^', + -0x62a1: b'\x11\x9d_', + -0x62a0: b'\x11\x9d`', + -0x629f: b'\x11\x9da', + -0x629e: b'\x11\x9db', + -0x629d: b'\x11\x9dc', + -0x629c: b'\x11\x9dd', + -0x629b: b'\x11\x9de', + -0x629a: b'\x11\x9df', + -0x6299: b'\x11\x9dg', + -0x6298: b'\x11\x9dh', + -0x6297: b'\x11\x9di', + -0x6296: b'\x11\x9dj', + -0x6295: b'\x11\x9dk', + -0x6294: b'\x11\x9dl', + -0x6293: b'\x11\x9dm', + -0x6292: b'\x11\x9dn', + -0x6291: b'\x11\x9do', + -0x6290: b'\x11\x9dp', + -0x628f: b'\x11\x9dq', + -0x628e: b'\x11\x9dr', + -0x628d: b'\x11\x9ds', + -0x628c: b'\x11\x9dt', + -0x628b: b'\x11\x9du', + -0x628a: b'\x11\x9dv', + -0x6289: b'\x11\x9dw', + -0x6288: b'\x11\x9dx', + -0x6287: b'\x11\x9dy', + -0x6286: b'\x11\x9dz', + -0x6285: b'\x11\x9d{', + -0x6284: b'\x11\x9d|', + -0x6283: b'\x11\x9d}', + -0x6282: b'\x11\x9d~', + -0x6281: b'\x11\x9d\x7f', + -0x6280: b'\x11\x9d\x80', + -0x627f: b'\x11\x9d\x81', + -0x627e: b'\x11\x9d\x82', + -0x627d: b'\x11\x9d\x83', + -0x627c: b'\x11\x9d\x84', + -0x627b: b'\x11\x9d\x85', + -0x627a: b'\x11\x9d\x86', + -0x6279: b'\x11\x9d\x87', + -0x6278: b'\x11\x9d\x88', + -0x6277: b'\x11\x9d\x89', + -0x6276: b'\x11\x9d\x8a', + -0x6275: b'\x11\x9d\x8b', + -0x6274: b'\x11\x9d\x8c', + -0x6273: b'\x11\x9d\x8d', + -0x6272: b'\x11\x9d\x8e', + -0x6271: b'\x11\x9d\x8f', + -0x6270: b'\x11\x9d\x90', + -0x626f: b'\x11\x9d\x91', + -0x626e: b'\x11\x9d\x92', + -0x626d: b'\x11\x9d\x93', + -0x626c: b'\x11\x9d\x94', + -0x626b: b'\x11\x9d\x95', + -0x626a: b'\x11\x9d\x96', + -0x6269: b'\x11\x9d\x97', + -0x6268: b'\x11\x9d\x98', + -0x6267: b'\x11\x9d\x99', + -0x6266: b'\x11\x9d\x9a', + -0x6265: b'\x11\x9d\x9b', + -0x6264: b'\x11\x9d\x9c', + -0x6263: b'\x11\x9d\x9d', + -0x6262: b'\x11\x9d\x9e', + -0x6261: b'\x11\x9d\x9f', + -0x6260: b'\x11\x9d\xa0', + -0x625f: b'\x11\x9d\xa1', + -0x625e: b'\x11\x9d\xa2', + -0x625d: b'\x11\x9d\xa3', + -0x625c: b'\x11\x9d\xa4', + -0x625b: b'\x11\x9d\xa5', + -0x625a: b'\x11\x9d\xa6', + -0x6259: b'\x11\x9d\xa7', + -0x6258: b'\x11\x9d\xa8', + -0x6257: b'\x11\x9d\xa9', + -0x6256: b'\x11\x9d\xaa', + -0x6255: b'\x11\x9d\xab', + -0x6254: b'\x11\x9d\xac', + -0x6253: b'\x11\x9d\xad', + -0x6252: b'\x11\x9d\xae', + -0x6251: b'\x11\x9d\xaf', + -0x6250: b'\x11\x9d\xb0', + -0x624f: b'\x11\x9d\xb1', + -0x624e: b'\x11\x9d\xb2', + -0x624d: b'\x11\x9d\xb3', + -0x624c: b'\x11\x9d\xb4', + -0x624b: b'\x11\x9d\xb5', + -0x624a: b'\x11\x9d\xb6', + -0x6249: b'\x11\x9d\xb7', + -0x6248: b'\x11\x9d\xb8', + -0x6247: b'\x11\x9d\xb9', + -0x6246: b'\x11\x9d\xba', + -0x6245: b'\x11\x9d\xbb', + -0x6244: b'\x11\x9d\xbc', + -0x6243: b'\x11\x9d\xbd', + -0x6242: b'\x11\x9d\xbe', + -0x6241: b'\x11\x9d\xbf', + -0x6240: b'\x11\x9d\xc0', + -0x623f: b'\x11\x9d\xc1', + -0x623e: b'\x11\x9d\xc2', + -0x623d: b'\x11\x9d\xc3', + -0x623c: b'\x11\x9d\xc4', + -0x623b: b'\x11\x9d\xc5', + -0x623a: b'\x11\x9d\xc6', + -0x6239: b'\x11\x9d\xc7', + -0x6238: b'\x11\x9d\xc8', + -0x6237: b'\x11\x9d\xc9', + -0x6236: b'\x11\x9d\xca', + -0x6235: b'\x11\x9d\xcb', + -0x6234: b'\x11\x9d\xcc', + -0x6233: b'\x11\x9d\xcd', + -0x6232: b'\x11\x9d\xce', + -0x6231: b'\x11\x9d\xcf', + -0x6230: b'\x11\x9d\xd0', + -0x622f: b'\x11\x9d\xd1', + -0x622e: b'\x11\x9d\xd2', + -0x622d: b'\x11\x9d\xd3', + -0x622c: b'\x11\x9d\xd4', + -0x622b: b'\x11\x9d\xd5', + -0x622a: b'\x11\x9d\xd6', + -0x6229: b'\x11\x9d\xd7', + -0x6228: b'\x11\x9d\xd8', + -0x6227: b'\x11\x9d\xd9', + -0x6226: b'\x11\x9d\xda', + -0x6225: b'\x11\x9d\xdb', + -0x6224: b'\x11\x9d\xdc', + -0x6223: b'\x11\x9d\xdd', + -0x6222: b'\x11\x9d\xde', + -0x6221: b'\x11\x9d\xdf', + -0x6220: b'\x11\x9d\xe0', + -0x621f: b'\x11\x9d\xe1', + -0x621e: b'\x11\x9d\xe2', + -0x621d: b'\x11\x9d\xe3', + -0x621c: b'\x11\x9d\xe4', + -0x621b: b'\x11\x9d\xe5', + -0x621a: b'\x11\x9d\xe6', + -0x6219: b'\x11\x9d\xe7', + -0x6218: b'\x11\x9d\xe8', + -0x6217: b'\x11\x9d\xe9', + -0x6216: b'\x11\x9d\xea', + -0x6215: b'\x11\x9d\xeb', + -0x6214: b'\x11\x9d\xec', + -0x6213: b'\x11\x9d\xed', + -0x6212: b'\x11\x9d\xee', + -0x6211: b'\x11\x9d\xef', + -0x6210: b'\x11\x9d\xf0', + -0x620f: b'\x11\x9d\xf1', + -0x620e: b'\x11\x9d\xf2', + -0x620d: b'\x11\x9d\xf3', + -0x620c: b'\x11\x9d\xf4', + -0x620b: b'\x11\x9d\xf5', + -0x620a: b'\x11\x9d\xf6', + -0x6209: b'\x11\x9d\xf7', + -0x6208: b'\x11\x9d\xf8', + -0x6207: b'\x11\x9d\xf9', + -0x6206: b'\x11\x9d\xfa', + -0x6205: b'\x11\x9d\xfb', + -0x6204: b'\x11\x9d\xfc', + -0x6203: b'\x11\x9d\xfd', + -0x6202: b'\x11\x9d\xfe', + -0x6201: b'\x11\x9d\xff', + -0x6200: b'\x11\x9e\x00', + -0x61ff: b'\x11\x9e\x01', + -0x61fe: b'\x11\x9e\x02', + -0x61fd: b'\x11\x9e\x03', + -0x61fc: b'\x11\x9e\x04', + -0x61fb: b'\x11\x9e\x05', + -0x61fa: b'\x11\x9e\x06', + -0x61f9: b'\x11\x9e\x07', + -0x61f8: b'\x11\x9e\x08', + -0x61f7: b'\x11\x9e\t', + -0x61f6: b'\x11\x9e\n', + -0x61f5: b'\x11\x9e\x0b', + -0x61f4: b'\x11\x9e\x0c', + -0x61f3: b'\x11\x9e\r', + -0x61f2: b'\x11\x9e\x0e', + -0x61f1: b'\x11\x9e\x0f', + -0x61f0: b'\x11\x9e\x10', + -0x61ef: b'\x11\x9e\x11', + -0x61ee: b'\x11\x9e\x12', + -0x61ed: b'\x11\x9e\x13', + -0x61ec: b'\x11\x9e\x14', + -0x61eb: b'\x11\x9e\x15', + -0x61ea: b'\x11\x9e\x16', + -0x61e9: b'\x11\x9e\x17', + -0x61e8: b'\x11\x9e\x18', + -0x61e7: b'\x11\x9e\x19', + -0x61e6: b'\x11\x9e\x1a', + -0x61e5: b'\x11\x9e\x1b', + -0x61e4: b'\x11\x9e\x1c', + -0x61e3: b'\x11\x9e\x1d', + -0x61e2: b'\x11\x9e\x1e', + -0x61e1: b'\x11\x9e\x1f', + -0x61e0: b'\x11\x9e ', + -0x61df: b'\x11\x9e!', + -0x61de: b'\x11\x9e"', + -0x61dd: b'\x11\x9e#', + -0x61dc: b'\x11\x9e$', + -0x61db: b'\x11\x9e%', + -0x61da: b'\x11\x9e&', + -0x61d9: b"\x11\x9e'", + -0x61d8: b'\x11\x9e(', + -0x61d7: b'\x11\x9e)', + -0x61d6: b'\x11\x9e*', + -0x61d5: b'\x11\x9e+', + -0x61d4: b'\x11\x9e,', + -0x61d3: b'\x11\x9e-', + -0x61d2: b'\x11\x9e.', + -0x61d1: b'\x11\x9e/', + -0x61d0: b'\x11\x9e0', + -0x61cf: b'\x11\x9e1', + -0x61ce: b'\x11\x9e2', + -0x61cd: b'\x11\x9e3', + -0x61cc: b'\x11\x9e4', + -0x61cb: b'\x11\x9e5', + -0x61ca: b'\x11\x9e6', + -0x61c9: b'\x11\x9e7', + -0x61c8: b'\x11\x9e8', + -0x61c7: b'\x11\x9e9', + -0x61c6: b'\x11\x9e:', + -0x61c5: b'\x11\x9e;', + -0x61c4: b'\x11\x9e<', + -0x61c3: b'\x11\x9e=', + -0x61c2: b'\x11\x9e>', + -0x61c1: b'\x11\x9e?', + -0x61c0: b'\x11\x9e@', + -0x61bf: b'\x11\x9eA', + -0x61be: b'\x11\x9eB', + -0x61bd: b'\x11\x9eC', + -0x61bc: b'\x11\x9eD', + -0x61bb: b'\x11\x9eE', + -0x61ba: b'\x11\x9eF', + -0x61b9: b'\x11\x9eG', + -0x61b8: b'\x11\x9eH', + -0x61b7: b'\x11\x9eI', + -0x61b6: b'\x11\x9eJ', + -0x61b5: b'\x11\x9eK', + -0x61b4: b'\x11\x9eL', + -0x61b3: b'\x11\x9eM', + -0x61b2: b'\x11\x9eN', + -0x61b1: b'\x11\x9eO', + -0x61b0: b'\x11\x9eP', + -0x61af: b'\x11\x9eQ', + -0x61ae: b'\x11\x9eR', + -0x61ad: b'\x11\x9eS', + -0x61ac: b'\x11\x9eT', + -0x61ab: b'\x11\x9eU', + -0x61aa: b'\x11\x9eV', + -0x61a9: b'\x11\x9eW', + -0x61a8: b'\x11\x9eX', + -0x61a7: b'\x11\x9eY', + -0x61a6: b'\x11\x9eZ', + -0x61a5: b'\x11\x9e[', + -0x61a4: b'\x11\x9e\\', + -0x61a3: b'\x11\x9e]', + -0x61a2: b'\x11\x9e^', + -0x61a1: b'\x11\x9e_', + -0x61a0: b'\x11\x9e`', + -0x619f: b'\x11\x9ea', + -0x619e: b'\x11\x9eb', + -0x619d: b'\x11\x9ec', + -0x619c: b'\x11\x9ed', + -0x619b: b'\x11\x9ee', + -0x619a: b'\x11\x9ef', + -0x6199: b'\x11\x9eg', + -0x6198: b'\x11\x9eh', + -0x6197: b'\x11\x9ei', + -0x6196: b'\x11\x9ej', + -0x6195: b'\x11\x9ek', + -0x6194: b'\x11\x9el', + -0x6193: b'\x11\x9em', + -0x6192: b'\x11\x9en', + -0x6191: b'\x11\x9eo', + -0x6190: b'\x11\x9ep', + -0x618f: b'\x11\x9eq', + -0x618e: b'\x11\x9er', + -0x618d: b'\x11\x9es', + -0x618c: b'\x11\x9et', + -0x618b: b'\x11\x9eu', + -0x618a: b'\x11\x9ev', + -0x6189: b'\x11\x9ew', + -0x6188: b'\x11\x9ex', + -0x6187: b'\x11\x9ey', + -0x6186: b'\x11\x9ez', + -0x6185: b'\x11\x9e{', + -0x6184: b'\x11\x9e|', + -0x6183: b'\x11\x9e}', + -0x6182: b'\x11\x9e~', + -0x6181: b'\x11\x9e\x7f', + -0x6180: b'\x11\x9e\x80', + -0x617f: b'\x11\x9e\x81', + -0x617e: b'\x11\x9e\x82', + -0x617d: b'\x11\x9e\x83', + -0x617c: b'\x11\x9e\x84', + -0x617b: b'\x11\x9e\x85', + -0x617a: b'\x11\x9e\x86', + -0x6179: b'\x11\x9e\x87', + -0x6178: b'\x11\x9e\x88', + -0x6177: b'\x11\x9e\x89', + -0x6176: b'\x11\x9e\x8a', + -0x6175: b'\x11\x9e\x8b', + -0x6174: b'\x11\x9e\x8c', + -0x6173: b'\x11\x9e\x8d', + -0x6172: b'\x11\x9e\x8e', + -0x6171: b'\x11\x9e\x8f', + -0x6170: b'\x11\x9e\x90', + -0x616f: b'\x11\x9e\x91', + -0x616e: b'\x11\x9e\x92', + -0x616d: b'\x11\x9e\x93', + -0x616c: b'\x11\x9e\x94', + -0x616b: b'\x11\x9e\x95', + -0x616a: b'\x11\x9e\x96', + -0x6169: b'\x11\x9e\x97', + -0x6168: b'\x11\x9e\x98', + -0x6167: b'\x11\x9e\x99', + -0x6166: b'\x11\x9e\x9a', + -0x6165: b'\x11\x9e\x9b', + -0x6164: b'\x11\x9e\x9c', + -0x6163: b'\x11\x9e\x9d', + -0x6162: b'\x11\x9e\x9e', + -0x6161: b'\x11\x9e\x9f', + -0x6160: b'\x11\x9e\xa0', + -0x615f: b'\x11\x9e\xa1', + -0x615e: b'\x11\x9e\xa2', + -0x615d: b'\x11\x9e\xa3', + -0x615c: b'\x11\x9e\xa4', + -0x615b: b'\x11\x9e\xa5', + -0x615a: b'\x11\x9e\xa6', + -0x6159: b'\x11\x9e\xa7', + -0x6158: b'\x11\x9e\xa8', + -0x6157: b'\x11\x9e\xa9', + -0x6156: b'\x11\x9e\xaa', + -0x6155: b'\x11\x9e\xab', + -0x6154: b'\x11\x9e\xac', + -0x6153: b'\x11\x9e\xad', + -0x6152: b'\x11\x9e\xae', + -0x6151: b'\x11\x9e\xaf', + -0x6150: b'\x11\x9e\xb0', + -0x614f: b'\x11\x9e\xb1', + -0x614e: b'\x11\x9e\xb2', + -0x614d: b'\x11\x9e\xb3', + -0x614c: b'\x11\x9e\xb4', + -0x614b: b'\x11\x9e\xb5', + -0x614a: b'\x11\x9e\xb6', + -0x6149: b'\x11\x9e\xb7', + -0x6148: b'\x11\x9e\xb8', + -0x6147: b'\x11\x9e\xb9', + -0x6146: b'\x11\x9e\xba', + -0x6145: b'\x11\x9e\xbb', + -0x6144: b'\x11\x9e\xbc', + -0x6143: b'\x11\x9e\xbd', + -0x6142: b'\x11\x9e\xbe', + -0x6141: b'\x11\x9e\xbf', + -0x6140: b'\x11\x9e\xc0', + -0x613f: b'\x11\x9e\xc1', + -0x613e: b'\x11\x9e\xc2', + -0x613d: b'\x11\x9e\xc3', + -0x613c: b'\x11\x9e\xc4', + -0x613b: b'\x11\x9e\xc5', + -0x613a: b'\x11\x9e\xc6', + -0x6139: b'\x11\x9e\xc7', + -0x6138: b'\x11\x9e\xc8', + -0x6137: b'\x11\x9e\xc9', + -0x6136: b'\x11\x9e\xca', + -0x6135: b'\x11\x9e\xcb', + -0x6134: b'\x11\x9e\xcc', + -0x6133: b'\x11\x9e\xcd', + -0x6132: b'\x11\x9e\xce', + -0x6131: b'\x11\x9e\xcf', + -0x6130: b'\x11\x9e\xd0', + -0x612f: b'\x11\x9e\xd1', + -0x612e: b'\x11\x9e\xd2', + -0x612d: b'\x11\x9e\xd3', + -0x612c: b'\x11\x9e\xd4', + -0x612b: b'\x11\x9e\xd5', + -0x612a: b'\x11\x9e\xd6', + -0x6129: b'\x11\x9e\xd7', + -0x6128: b'\x11\x9e\xd8', + -0x6127: b'\x11\x9e\xd9', + -0x6126: b'\x11\x9e\xda', + -0x6125: b'\x11\x9e\xdb', + -0x6124: b'\x11\x9e\xdc', + -0x6123: b'\x11\x9e\xdd', + -0x6122: b'\x11\x9e\xde', + -0x6121: b'\x11\x9e\xdf', + -0x6120: b'\x11\x9e\xe0', + -0x611f: b'\x11\x9e\xe1', + -0x611e: b'\x11\x9e\xe2', + -0x611d: b'\x11\x9e\xe3', + -0x611c: b'\x11\x9e\xe4', + -0x611b: b'\x11\x9e\xe5', + -0x611a: b'\x11\x9e\xe6', + -0x6119: b'\x11\x9e\xe7', + -0x6118: b'\x11\x9e\xe8', + -0x6117: b'\x11\x9e\xe9', + -0x6116: b'\x11\x9e\xea', + -0x6115: b'\x11\x9e\xeb', + -0x6114: b'\x11\x9e\xec', + -0x6113: b'\x11\x9e\xed', + -0x6112: b'\x11\x9e\xee', + -0x6111: b'\x11\x9e\xef', + -0x6110: b'\x11\x9e\xf0', + -0x610f: b'\x11\x9e\xf1', + -0x610e: b'\x11\x9e\xf2', + -0x610d: b'\x11\x9e\xf3', + -0x610c: b'\x11\x9e\xf4', + -0x610b: b'\x11\x9e\xf5', + -0x610a: b'\x11\x9e\xf6', + -0x6109: b'\x11\x9e\xf7', + -0x6108: b'\x11\x9e\xf8', + -0x6107: b'\x11\x9e\xf9', + -0x6106: b'\x11\x9e\xfa', + -0x6105: b'\x11\x9e\xfb', + -0x6104: b'\x11\x9e\xfc', + -0x6103: b'\x11\x9e\xfd', + -0x6102: b'\x11\x9e\xfe', + -0x6101: b'\x11\x9e\xff', + -0x6100: b'\x11\x9f\x00', + -0x60ff: b'\x11\x9f\x01', + -0x60fe: b'\x11\x9f\x02', + -0x60fd: b'\x11\x9f\x03', + -0x60fc: b'\x11\x9f\x04', + -0x60fb: b'\x11\x9f\x05', + -0x60fa: b'\x11\x9f\x06', + -0x60f9: b'\x11\x9f\x07', + -0x60f8: b'\x11\x9f\x08', + -0x60f7: b'\x11\x9f\t', + -0x60f6: b'\x11\x9f\n', + -0x60f5: b'\x11\x9f\x0b', + -0x60f4: b'\x11\x9f\x0c', + -0x60f3: b'\x11\x9f\r', + -0x60f2: b'\x11\x9f\x0e', + -0x60f1: b'\x11\x9f\x0f', + -0x60f0: b'\x11\x9f\x10', + -0x60ef: b'\x11\x9f\x11', + -0x60ee: b'\x11\x9f\x12', + -0x60ed: b'\x11\x9f\x13', + -0x60ec: b'\x11\x9f\x14', + -0x60eb: b'\x11\x9f\x15', + -0x60ea: b'\x11\x9f\x16', + -0x60e9: b'\x11\x9f\x17', + -0x60e8: b'\x11\x9f\x18', + -0x60e7: b'\x11\x9f\x19', + -0x60e6: b'\x11\x9f\x1a', + -0x60e5: b'\x11\x9f\x1b', + -0x60e4: b'\x11\x9f\x1c', + -0x60e3: b'\x11\x9f\x1d', + -0x60e2: b'\x11\x9f\x1e', + -0x60e1: b'\x11\x9f\x1f', + -0x60e0: b'\x11\x9f ', + -0x60df: b'\x11\x9f!', + -0x60de: b'\x11\x9f"', + -0x60dd: b'\x11\x9f#', + -0x60dc: b'\x11\x9f$', + -0x60db: b'\x11\x9f%', + -0x60da: b'\x11\x9f&', + -0x60d9: b"\x11\x9f'", + -0x60d8: b'\x11\x9f(', + -0x60d7: b'\x11\x9f)', + -0x60d6: b'\x11\x9f*', + -0x60d5: b'\x11\x9f+', + -0x60d4: b'\x11\x9f,', + -0x60d3: b'\x11\x9f-', + -0x60d2: b'\x11\x9f.', + -0x60d1: b'\x11\x9f/', + -0x60d0: b'\x11\x9f0', + -0x60cf: b'\x11\x9f1', + -0x60ce: b'\x11\x9f2', + -0x60cd: b'\x11\x9f3', + -0x60cc: b'\x11\x9f4', + -0x60cb: b'\x11\x9f5', + -0x60ca: b'\x11\x9f6', + -0x60c9: b'\x11\x9f7', + -0x60c8: b'\x11\x9f8', + -0x60c7: b'\x11\x9f9', + -0x60c6: b'\x11\x9f:', + -0x60c5: b'\x11\x9f;', + -0x60c4: b'\x11\x9f<', + -0x60c3: b'\x11\x9f=', + -0x60c2: b'\x11\x9f>', + -0x60c1: b'\x11\x9f?', + -0x60c0: b'\x11\x9f@', + -0x60bf: b'\x11\x9fA', + -0x60be: b'\x11\x9fB', + -0x60bd: b'\x11\x9fC', + -0x60bc: b'\x11\x9fD', + -0x60bb: b'\x11\x9fE', + -0x60ba: b'\x11\x9fF', + -0x60b9: b'\x11\x9fG', + -0x60b8: b'\x11\x9fH', + -0x60b7: b'\x11\x9fI', + -0x60b6: b'\x11\x9fJ', + -0x60b5: b'\x11\x9fK', + -0x60b4: b'\x11\x9fL', + -0x60b3: b'\x11\x9fM', + -0x60b2: b'\x11\x9fN', + -0x60b1: b'\x11\x9fO', + -0x60b0: b'\x11\x9fP', + -0x60af: b'\x11\x9fQ', + -0x60ae: b'\x11\x9fR', + -0x60ad: b'\x11\x9fS', + -0x60ac: b'\x11\x9fT', + -0x60ab: b'\x11\x9fU', + -0x60aa: b'\x11\x9fV', + -0x60a9: b'\x11\x9fW', + -0x60a8: b'\x11\x9fX', + -0x60a7: b'\x11\x9fY', + -0x60a6: b'\x11\x9fZ', + -0x60a5: b'\x11\x9f[', + -0x60a4: b'\x11\x9f\\', + -0x60a3: b'\x11\x9f]', + -0x60a2: b'\x11\x9f^', + -0x60a1: b'\x11\x9f_', + -0x60a0: b'\x11\x9f`', + -0x609f: b'\x11\x9fa', + -0x609e: b'\x11\x9fb', + -0x609d: b'\x11\x9fc', + -0x609c: b'\x11\x9fd', + -0x609b: b'\x11\x9fe', + -0x609a: b'\x11\x9ff', + -0x6099: b'\x11\x9fg', + -0x6098: b'\x11\x9fh', + -0x6097: b'\x11\x9fi', + -0x6096: b'\x11\x9fj', + -0x6095: b'\x11\x9fk', + -0x6094: b'\x11\x9fl', + -0x6093: b'\x11\x9fm', + -0x6092: b'\x11\x9fn', + -0x6091: b'\x11\x9fo', + -0x6090: b'\x11\x9fp', + -0x608f: b'\x11\x9fq', + -0x608e: b'\x11\x9fr', + -0x608d: b'\x11\x9fs', + -0x608c: b'\x11\x9ft', + -0x608b: b'\x11\x9fu', + -0x608a: b'\x11\x9fv', + -0x6089: b'\x11\x9fw', + -0x6088: b'\x11\x9fx', + -0x6087: b'\x11\x9fy', + -0x6086: b'\x11\x9fz', + -0x6085: b'\x11\x9f{', + -0x6084: b'\x11\x9f|', + -0x6083: b'\x11\x9f}', + -0x6082: b'\x11\x9f~', + -0x6081: b'\x11\x9f\x7f', + -0x6080: b'\x11\x9f\x80', + -0x607f: b'\x11\x9f\x81', + -0x607e: b'\x11\x9f\x82', + -0x607d: b'\x11\x9f\x83', + -0x607c: b'\x11\x9f\x84', + -0x607b: b'\x11\x9f\x85', + -0x607a: b'\x11\x9f\x86', + -0x6079: b'\x11\x9f\x87', + -0x6078: b'\x11\x9f\x88', + -0x6077: b'\x11\x9f\x89', + -0x6076: b'\x11\x9f\x8a', + -0x6075: b'\x11\x9f\x8b', + -0x6074: b'\x11\x9f\x8c', + -0x6073: b'\x11\x9f\x8d', + -0x6072: b'\x11\x9f\x8e', + -0x6071: b'\x11\x9f\x8f', + -0x6070: b'\x11\x9f\x90', + -0x606f: b'\x11\x9f\x91', + -0x606e: b'\x11\x9f\x92', + -0x606d: b'\x11\x9f\x93', + -0x606c: b'\x11\x9f\x94', + -0x606b: b'\x11\x9f\x95', + -0x606a: b'\x11\x9f\x96', + -0x6069: b'\x11\x9f\x97', + -0x6068: b'\x11\x9f\x98', + -0x6067: b'\x11\x9f\x99', + -0x6066: b'\x11\x9f\x9a', + -0x6065: b'\x11\x9f\x9b', + -0x6064: b'\x11\x9f\x9c', + -0x6063: b'\x11\x9f\x9d', + -0x6062: b'\x11\x9f\x9e', + -0x6061: b'\x11\x9f\x9f', + -0x6060: b'\x11\x9f\xa0', + -0x605f: b'\x11\x9f\xa1', + -0x605e: b'\x11\x9f\xa2', + -0x605d: b'\x11\x9f\xa3', + -0x605c: b'\x11\x9f\xa4', + -0x605b: b'\x11\x9f\xa5', + -0x605a: b'\x11\x9f\xa6', + -0x6059: b'\x11\x9f\xa7', + -0x6058: b'\x11\x9f\xa8', + -0x6057: b'\x11\x9f\xa9', + -0x6056: b'\x11\x9f\xaa', + -0x6055: b'\x11\x9f\xab', + -0x6054: b'\x11\x9f\xac', + -0x6053: b'\x11\x9f\xad', + -0x6052: b'\x11\x9f\xae', + -0x6051: b'\x11\x9f\xaf', + -0x6050: b'\x11\x9f\xb0', + -0x604f: b'\x11\x9f\xb1', + -0x604e: b'\x11\x9f\xb2', + -0x604d: b'\x11\x9f\xb3', + -0x604c: b'\x11\x9f\xb4', + -0x604b: b'\x11\x9f\xb5', + -0x604a: b'\x11\x9f\xb6', + -0x6049: b'\x11\x9f\xb7', + -0x6048: b'\x11\x9f\xb8', + -0x6047: b'\x11\x9f\xb9', + -0x6046: b'\x11\x9f\xba', + -0x6045: b'\x11\x9f\xbb', + -0x6044: b'\x11\x9f\xbc', + -0x6043: b'\x11\x9f\xbd', + -0x6042: b'\x11\x9f\xbe', + -0x6041: b'\x11\x9f\xbf', + -0x6040: b'\x11\x9f\xc0', + -0x603f: b'\x11\x9f\xc1', + -0x603e: b'\x11\x9f\xc2', + -0x603d: b'\x11\x9f\xc3', + -0x603c: b'\x11\x9f\xc4', + -0x603b: b'\x11\x9f\xc5', + -0x603a: b'\x11\x9f\xc6', + -0x6039: b'\x11\x9f\xc7', + -0x6038: b'\x11\x9f\xc8', + -0x6037: b'\x11\x9f\xc9', + -0x6036: b'\x11\x9f\xca', + -0x6035: b'\x11\x9f\xcb', + -0x6034: b'\x11\x9f\xcc', + -0x6033: b'\x11\x9f\xcd', + -0x6032: b'\x11\x9f\xce', + -0x6031: b'\x11\x9f\xcf', + -0x6030: b'\x11\x9f\xd0', + -0x602f: b'\x11\x9f\xd1', + -0x602e: b'\x11\x9f\xd2', + -0x602d: b'\x11\x9f\xd3', + -0x602c: b'\x11\x9f\xd4', + -0x602b: b'\x11\x9f\xd5', + -0x602a: b'\x11\x9f\xd6', + -0x6029: b'\x11\x9f\xd7', + -0x6028: b'\x11\x9f\xd8', + -0x6027: b'\x11\x9f\xd9', + -0x6026: b'\x11\x9f\xda', + -0x6025: b'\x11\x9f\xdb', + -0x6024: b'\x11\x9f\xdc', + -0x6023: b'\x11\x9f\xdd', + -0x6022: b'\x11\x9f\xde', + -0x6021: b'\x11\x9f\xdf', + -0x6020: b'\x11\x9f\xe0', + -0x601f: b'\x11\x9f\xe1', + -0x601e: b'\x11\x9f\xe2', + -0x601d: b'\x11\x9f\xe3', + -0x601c: b'\x11\x9f\xe4', + -0x601b: b'\x11\x9f\xe5', + -0x601a: b'\x11\x9f\xe6', + -0x6019: b'\x11\x9f\xe7', + -0x6018: b'\x11\x9f\xe8', + -0x6017: b'\x11\x9f\xe9', + -0x6016: b'\x11\x9f\xea', + -0x6015: b'\x11\x9f\xeb', + -0x6014: b'\x11\x9f\xec', + -0x6013: b'\x11\x9f\xed', + -0x6012: b'\x11\x9f\xee', + -0x6011: b'\x11\x9f\xef', + -0x6010: b'\x11\x9f\xf0', + -0x600f: b'\x11\x9f\xf1', + -0x600e: b'\x11\x9f\xf2', + -0x600d: b'\x11\x9f\xf3', + -0x600c: b'\x11\x9f\xf4', + -0x600b: b'\x11\x9f\xf5', + -0x600a: b'\x11\x9f\xf6', + -0x6009: b'\x11\x9f\xf7', + -0x6008: b'\x11\x9f\xf8', + -0x6007: b'\x11\x9f\xf9', + -0x6006: b'\x11\x9f\xfa', + -0x6005: b'\x11\x9f\xfb', + -0x6004: b'\x11\x9f\xfc', + -0x6003: b'\x11\x9f\xfd', + -0x6002: b'\x11\x9f\xfe', + -0x6001: b'\x11\x9f\xff', + -0x6000: b'\x11\xa0\x00', + -0x5fff: b'\x11\xa0\x01', + -0x5ffe: b'\x11\xa0\x02', + -0x5ffd: b'\x11\xa0\x03', + -0x5ffc: b'\x11\xa0\x04', + -0x5ffb: b'\x11\xa0\x05', + -0x5ffa: b'\x11\xa0\x06', + -0x5ff9: b'\x11\xa0\x07', + -0x5ff8: b'\x11\xa0\x08', + -0x5ff7: b'\x11\xa0\t', + -0x5ff6: b'\x11\xa0\n', + -0x5ff5: b'\x11\xa0\x0b', + -0x5ff4: b'\x11\xa0\x0c', + -0x5ff3: b'\x11\xa0\r', + -0x5ff2: b'\x11\xa0\x0e', + -0x5ff1: b'\x11\xa0\x0f', + -0x5ff0: b'\x11\xa0\x10', + -0x5fef: b'\x11\xa0\x11', + -0x5fee: b'\x11\xa0\x12', + -0x5fed: b'\x11\xa0\x13', + -0x5fec: b'\x11\xa0\x14', + -0x5feb: b'\x11\xa0\x15', + -0x5fea: b'\x11\xa0\x16', + -0x5fe9: b'\x11\xa0\x17', + -0x5fe8: b'\x11\xa0\x18', + -0x5fe7: b'\x11\xa0\x19', + -0x5fe6: b'\x11\xa0\x1a', + -0x5fe5: b'\x11\xa0\x1b', + -0x5fe4: b'\x11\xa0\x1c', + -0x5fe3: b'\x11\xa0\x1d', + -0x5fe2: b'\x11\xa0\x1e', + -0x5fe1: b'\x11\xa0\x1f', + -0x5fe0: b'\x11\xa0 ', + -0x5fdf: b'\x11\xa0!', + -0x5fde: b'\x11\xa0"', + -0x5fdd: b'\x11\xa0#', + -0x5fdc: b'\x11\xa0$', + -0x5fdb: b'\x11\xa0%', + -0x5fda: b'\x11\xa0&', + -0x5fd9: b"\x11\xa0'", + -0x5fd8: b'\x11\xa0(', + -0x5fd7: b'\x11\xa0)', + -0x5fd6: b'\x11\xa0*', + -0x5fd5: b'\x11\xa0+', + -0x5fd4: b'\x11\xa0,', + -0x5fd3: b'\x11\xa0-', + -0x5fd2: b'\x11\xa0.', + -0x5fd1: b'\x11\xa0/', + -0x5fd0: b'\x11\xa00', + -0x5fcf: b'\x11\xa01', + -0x5fce: b'\x11\xa02', + -0x5fcd: b'\x11\xa03', + -0x5fcc: b'\x11\xa04', + -0x5fcb: b'\x11\xa05', + -0x5fca: b'\x11\xa06', + -0x5fc9: b'\x11\xa07', + -0x5fc8: b'\x11\xa08', + -0x5fc7: b'\x11\xa09', + -0x5fc6: b'\x11\xa0:', + -0x5fc5: b'\x11\xa0;', + -0x5fc4: b'\x11\xa0<', + -0x5fc3: b'\x11\xa0=', + -0x5fc2: b'\x11\xa0>', + -0x5fc1: b'\x11\xa0?', + -0x5fc0: b'\x11\xa0@', + -0x5fbf: b'\x11\xa0A', + -0x5fbe: b'\x11\xa0B', + -0x5fbd: b'\x11\xa0C', + -0x5fbc: b'\x11\xa0D', + -0x5fbb: b'\x11\xa0E', + -0x5fba: b'\x11\xa0F', + -0x5fb9: b'\x11\xa0G', + -0x5fb8: b'\x11\xa0H', + -0x5fb7: b'\x11\xa0I', + -0x5fb6: b'\x11\xa0J', + -0x5fb5: b'\x11\xa0K', + -0x5fb4: b'\x11\xa0L', + -0x5fb3: b'\x11\xa0M', + -0x5fb2: b'\x11\xa0N', + -0x5fb1: b'\x11\xa0O', + -0x5fb0: b'\x11\xa0P', + -0x5faf: b'\x11\xa0Q', + -0x5fae: b'\x11\xa0R', + -0x5fad: b'\x11\xa0S', + -0x5fac: b'\x11\xa0T', + -0x5fab: b'\x11\xa0U', + -0x5faa: b'\x11\xa0V', + -0x5fa9: b'\x11\xa0W', + -0x5fa8: b'\x11\xa0X', + -0x5fa7: b'\x11\xa0Y', + -0x5fa6: b'\x11\xa0Z', + -0x5fa5: b'\x11\xa0[', + -0x5fa4: b'\x11\xa0\\', + -0x5fa3: b'\x11\xa0]', + -0x5fa2: b'\x11\xa0^', + -0x5fa1: b'\x11\xa0_', + -0x5fa0: b'\x11\xa0`', + -0x5f9f: b'\x11\xa0a', + -0x5f9e: b'\x11\xa0b', + -0x5f9d: b'\x11\xa0c', + -0x5f9c: b'\x11\xa0d', + -0x5f9b: b'\x11\xa0e', + -0x5f9a: b'\x11\xa0f', + -0x5f99: b'\x11\xa0g', + -0x5f98: b'\x11\xa0h', + -0x5f97: b'\x11\xa0i', + -0x5f96: b'\x11\xa0j', + -0x5f95: b'\x11\xa0k', + -0x5f94: b'\x11\xa0l', + -0x5f93: b'\x11\xa0m', + -0x5f92: b'\x11\xa0n', + -0x5f91: b'\x11\xa0o', + -0x5f90: b'\x11\xa0p', + -0x5f8f: b'\x11\xa0q', + -0x5f8e: b'\x11\xa0r', + -0x5f8d: b'\x11\xa0s', + -0x5f8c: b'\x11\xa0t', + -0x5f8b: b'\x11\xa0u', + -0x5f8a: b'\x11\xa0v', + -0x5f89: b'\x11\xa0w', + -0x5f88: b'\x11\xa0x', + -0x5f87: b'\x11\xa0y', + -0x5f86: b'\x11\xa0z', + -0x5f85: b'\x11\xa0{', + -0x5f84: b'\x11\xa0|', + -0x5f83: b'\x11\xa0}', + -0x5f82: b'\x11\xa0~', + -0x5f81: b'\x11\xa0\x7f', + -0x5f80: b'\x11\xa0\x80', + -0x5f7f: b'\x11\xa0\x81', + -0x5f7e: b'\x11\xa0\x82', + -0x5f7d: b'\x11\xa0\x83', + -0x5f7c: b'\x11\xa0\x84', + -0x5f7b: b'\x11\xa0\x85', + -0x5f7a: b'\x11\xa0\x86', + -0x5f79: b'\x11\xa0\x87', + -0x5f78: b'\x11\xa0\x88', + -0x5f77: b'\x11\xa0\x89', + -0x5f76: b'\x11\xa0\x8a', + -0x5f75: b'\x11\xa0\x8b', + -0x5f74: b'\x11\xa0\x8c', + -0x5f73: b'\x11\xa0\x8d', + -0x5f72: b'\x11\xa0\x8e', + -0x5f71: b'\x11\xa0\x8f', + -0x5f70: b'\x11\xa0\x90', + -0x5f6f: b'\x11\xa0\x91', + -0x5f6e: b'\x11\xa0\x92', + -0x5f6d: b'\x11\xa0\x93', + -0x5f6c: b'\x11\xa0\x94', + -0x5f6b: b'\x11\xa0\x95', + -0x5f6a: b'\x11\xa0\x96', + -0x5f69: b'\x11\xa0\x97', + -0x5f68: b'\x11\xa0\x98', + -0x5f67: b'\x11\xa0\x99', + -0x5f66: b'\x11\xa0\x9a', + -0x5f65: b'\x11\xa0\x9b', + -0x5f64: b'\x11\xa0\x9c', + -0x5f63: b'\x11\xa0\x9d', + -0x5f62: b'\x11\xa0\x9e', + -0x5f61: b'\x11\xa0\x9f', + -0x5f60: b'\x11\xa0\xa0', + -0x5f5f: b'\x11\xa0\xa1', + -0x5f5e: b'\x11\xa0\xa2', + -0x5f5d: b'\x11\xa0\xa3', + -0x5f5c: b'\x11\xa0\xa4', + -0x5f5b: b'\x11\xa0\xa5', + -0x5f5a: b'\x11\xa0\xa6', + -0x5f59: b'\x11\xa0\xa7', + -0x5f58: b'\x11\xa0\xa8', + -0x5f57: b'\x11\xa0\xa9', + -0x5f56: b'\x11\xa0\xaa', + -0x5f55: b'\x11\xa0\xab', + -0x5f54: b'\x11\xa0\xac', + -0x5f53: b'\x11\xa0\xad', + -0x5f52: b'\x11\xa0\xae', + -0x5f51: b'\x11\xa0\xaf', + -0x5f50: b'\x11\xa0\xb0', + -0x5f4f: b'\x11\xa0\xb1', + -0x5f4e: b'\x11\xa0\xb2', + -0x5f4d: b'\x11\xa0\xb3', + -0x5f4c: b'\x11\xa0\xb4', + -0x5f4b: b'\x11\xa0\xb5', + -0x5f4a: b'\x11\xa0\xb6', + -0x5f49: b'\x11\xa0\xb7', + -0x5f48: b'\x11\xa0\xb8', + -0x5f47: b'\x11\xa0\xb9', + -0x5f46: b'\x11\xa0\xba', + -0x5f45: b'\x11\xa0\xbb', + -0x5f44: b'\x11\xa0\xbc', + -0x5f43: b'\x11\xa0\xbd', + -0x5f42: b'\x11\xa0\xbe', + -0x5f41: b'\x11\xa0\xbf', + -0x5f40: b'\x11\xa0\xc0', + -0x5f3f: b'\x11\xa0\xc1', + -0x5f3e: b'\x11\xa0\xc2', + -0x5f3d: b'\x11\xa0\xc3', + -0x5f3c: b'\x11\xa0\xc4', + -0x5f3b: b'\x11\xa0\xc5', + -0x5f3a: b'\x11\xa0\xc6', + -0x5f39: b'\x11\xa0\xc7', + -0x5f38: b'\x11\xa0\xc8', + -0x5f37: b'\x11\xa0\xc9', + -0x5f36: b'\x11\xa0\xca', + -0x5f35: b'\x11\xa0\xcb', + -0x5f34: b'\x11\xa0\xcc', + -0x5f33: b'\x11\xa0\xcd', + -0x5f32: b'\x11\xa0\xce', + -0x5f31: b'\x11\xa0\xcf', + -0x5f30: b'\x11\xa0\xd0', + -0x5f2f: b'\x11\xa0\xd1', + -0x5f2e: b'\x11\xa0\xd2', + -0x5f2d: b'\x11\xa0\xd3', + -0x5f2c: b'\x11\xa0\xd4', + -0x5f2b: b'\x11\xa0\xd5', + -0x5f2a: b'\x11\xa0\xd6', + -0x5f29: b'\x11\xa0\xd7', + -0x5f28: b'\x11\xa0\xd8', + -0x5f27: b'\x11\xa0\xd9', + -0x5f26: b'\x11\xa0\xda', + -0x5f25: b'\x11\xa0\xdb', + -0x5f24: b'\x11\xa0\xdc', + -0x5f23: b'\x11\xa0\xdd', + -0x5f22: b'\x11\xa0\xde', + -0x5f21: b'\x11\xa0\xdf', + -0x5f20: b'\x11\xa0\xe0', + -0x5f1f: b'\x11\xa0\xe1', + -0x5f1e: b'\x11\xa0\xe2', + -0x5f1d: b'\x11\xa0\xe3', + -0x5f1c: b'\x11\xa0\xe4', + -0x5f1b: b'\x11\xa0\xe5', + -0x5f1a: b'\x11\xa0\xe6', + -0x5f19: b'\x11\xa0\xe7', + -0x5f18: b'\x11\xa0\xe8', + -0x5f17: b'\x11\xa0\xe9', + -0x5f16: b'\x11\xa0\xea', + -0x5f15: b'\x11\xa0\xeb', + -0x5f14: b'\x11\xa0\xec', + -0x5f13: b'\x11\xa0\xed', + -0x5f12: b'\x11\xa0\xee', + -0x5f11: b'\x11\xa0\xef', + -0x5f10: b'\x11\xa0\xf0', + -0x5f0f: b'\x11\xa0\xf1', + -0x5f0e: b'\x11\xa0\xf2', + -0x5f0d: b'\x11\xa0\xf3', + -0x5f0c: b'\x11\xa0\xf4', + -0x5f0b: b'\x11\xa0\xf5', + -0x5f0a: b'\x11\xa0\xf6', + -0x5f09: b'\x11\xa0\xf7', + -0x5f08: b'\x11\xa0\xf8', + -0x5f07: b'\x11\xa0\xf9', + -0x5f06: b'\x11\xa0\xfa', + -0x5f05: b'\x11\xa0\xfb', + -0x5f04: b'\x11\xa0\xfc', + -0x5f03: b'\x11\xa0\xfd', + -0x5f02: b'\x11\xa0\xfe', + -0x5f01: b'\x11\xa0\xff', + -0x5f00: b'\x11\xa1\x00', + -0x5eff: b'\x11\xa1\x01', + -0x5efe: b'\x11\xa1\x02', + -0x5efd: b'\x11\xa1\x03', + -0x5efc: b'\x11\xa1\x04', + -0x5efb: b'\x11\xa1\x05', + -0x5efa: b'\x11\xa1\x06', + -0x5ef9: b'\x11\xa1\x07', + -0x5ef8: b'\x11\xa1\x08', + -0x5ef7: b'\x11\xa1\t', + -0x5ef6: b'\x11\xa1\n', + -0x5ef5: b'\x11\xa1\x0b', + -0x5ef4: b'\x11\xa1\x0c', + -0x5ef3: b'\x11\xa1\r', + -0x5ef2: b'\x11\xa1\x0e', + -0x5ef1: b'\x11\xa1\x0f', + -0x5ef0: b'\x11\xa1\x10', + -0x5eef: b'\x11\xa1\x11', + -0x5eee: b'\x11\xa1\x12', + -0x5eed: b'\x11\xa1\x13', + -0x5eec: b'\x11\xa1\x14', + -0x5eeb: b'\x11\xa1\x15', + -0x5eea: b'\x11\xa1\x16', + -0x5ee9: b'\x11\xa1\x17', + -0x5ee8: b'\x11\xa1\x18', + -0x5ee7: b'\x11\xa1\x19', + -0x5ee6: b'\x11\xa1\x1a', + -0x5ee5: b'\x11\xa1\x1b', + -0x5ee4: b'\x11\xa1\x1c', + -0x5ee3: b'\x11\xa1\x1d', + -0x5ee2: b'\x11\xa1\x1e', + -0x5ee1: b'\x11\xa1\x1f', + -0x5ee0: b'\x11\xa1 ', + -0x5edf: b'\x11\xa1!', + -0x5ede: b'\x11\xa1"', + -0x5edd: b'\x11\xa1#', + -0x5edc: b'\x11\xa1$', + -0x5edb: b'\x11\xa1%', + -0x5eda: b'\x11\xa1&', + -0x5ed9: b"\x11\xa1'", + -0x5ed8: b'\x11\xa1(', + -0x5ed7: b'\x11\xa1)', + -0x5ed6: b'\x11\xa1*', + -0x5ed5: b'\x11\xa1+', + -0x5ed4: b'\x11\xa1,', + -0x5ed3: b'\x11\xa1-', + -0x5ed2: b'\x11\xa1.', + -0x5ed1: b'\x11\xa1/', + -0x5ed0: b'\x11\xa10', + -0x5ecf: b'\x11\xa11', + -0x5ece: b'\x11\xa12', + -0x5ecd: b'\x11\xa13', + -0x5ecc: b'\x11\xa14', + -0x5ecb: b'\x11\xa15', + -0x5eca: b'\x11\xa16', + -0x5ec9: b'\x11\xa17', + -0x5ec8: b'\x11\xa18', + -0x5ec7: b'\x11\xa19', + -0x5ec6: b'\x11\xa1:', + -0x5ec5: b'\x11\xa1;', + -0x5ec4: b'\x11\xa1<', + -0x5ec3: b'\x11\xa1=', + -0x5ec2: b'\x11\xa1>', + -0x5ec1: b'\x11\xa1?', + -0x5ec0: b'\x11\xa1@', + -0x5ebf: b'\x11\xa1A', + -0x5ebe: b'\x11\xa1B', + -0x5ebd: b'\x11\xa1C', + -0x5ebc: b'\x11\xa1D', + -0x5ebb: b'\x11\xa1E', + -0x5eba: b'\x11\xa1F', + -0x5eb9: b'\x11\xa1G', + -0x5eb8: b'\x11\xa1H', + -0x5eb7: b'\x11\xa1I', + -0x5eb6: b'\x11\xa1J', + -0x5eb5: b'\x11\xa1K', + -0x5eb4: b'\x11\xa1L', + -0x5eb3: b'\x11\xa1M', + -0x5eb2: b'\x11\xa1N', + -0x5eb1: b'\x11\xa1O', + -0x5eb0: b'\x11\xa1P', + -0x5eaf: b'\x11\xa1Q', + -0x5eae: b'\x11\xa1R', + -0x5ead: b'\x11\xa1S', + -0x5eac: b'\x11\xa1T', + -0x5eab: b'\x11\xa1U', + -0x5eaa: b'\x11\xa1V', + -0x5ea9: b'\x11\xa1W', + -0x5ea8: b'\x11\xa1X', + -0x5ea7: b'\x11\xa1Y', + -0x5ea6: b'\x11\xa1Z', + -0x5ea5: b'\x11\xa1[', + -0x5ea4: b'\x11\xa1\\', + -0x5ea3: b'\x11\xa1]', + -0x5ea2: b'\x11\xa1^', + -0x5ea1: b'\x11\xa1_', + -0x5ea0: b'\x11\xa1`', + -0x5e9f: b'\x11\xa1a', + -0x5e9e: b'\x11\xa1b', + -0x5e9d: b'\x11\xa1c', + -0x5e9c: b'\x11\xa1d', + -0x5e9b: b'\x11\xa1e', + -0x5e9a: b'\x11\xa1f', + -0x5e99: b'\x11\xa1g', + -0x5e98: b'\x11\xa1h', + -0x5e97: b'\x11\xa1i', + -0x5e96: b'\x11\xa1j', + -0x5e95: b'\x11\xa1k', + -0x5e94: b'\x11\xa1l', + -0x5e93: b'\x11\xa1m', + -0x5e92: b'\x11\xa1n', + -0x5e91: b'\x11\xa1o', + -0x5e90: b'\x11\xa1p', + -0x5e8f: b'\x11\xa1q', + -0x5e8e: b'\x11\xa1r', + -0x5e8d: b'\x11\xa1s', + -0x5e8c: b'\x11\xa1t', + -0x5e8b: b'\x11\xa1u', + -0x5e8a: b'\x11\xa1v', + -0x5e89: b'\x11\xa1w', + -0x5e88: b'\x11\xa1x', + -0x5e87: b'\x11\xa1y', + -0x5e86: b'\x11\xa1z', + -0x5e85: b'\x11\xa1{', + -0x5e84: b'\x11\xa1|', + -0x5e83: b'\x11\xa1}', + -0x5e82: b'\x11\xa1~', + -0x5e81: b'\x11\xa1\x7f', + -0x5e80: b'\x11\xa1\x80', + -0x5e7f: b'\x11\xa1\x81', + -0x5e7e: b'\x11\xa1\x82', + -0x5e7d: b'\x11\xa1\x83', + -0x5e7c: b'\x11\xa1\x84', + -0x5e7b: b'\x11\xa1\x85', + -0x5e7a: b'\x11\xa1\x86', + -0x5e79: b'\x11\xa1\x87', + -0x5e78: b'\x11\xa1\x88', + -0x5e77: b'\x11\xa1\x89', + -0x5e76: b'\x11\xa1\x8a', + -0x5e75: b'\x11\xa1\x8b', + -0x5e74: b'\x11\xa1\x8c', + -0x5e73: b'\x11\xa1\x8d', + -0x5e72: b'\x11\xa1\x8e', + -0x5e71: b'\x11\xa1\x8f', + -0x5e70: b'\x11\xa1\x90', + -0x5e6f: b'\x11\xa1\x91', + -0x5e6e: b'\x11\xa1\x92', + -0x5e6d: b'\x11\xa1\x93', + -0x5e6c: b'\x11\xa1\x94', + -0x5e6b: b'\x11\xa1\x95', + -0x5e6a: b'\x11\xa1\x96', + -0x5e69: b'\x11\xa1\x97', + -0x5e68: b'\x11\xa1\x98', + -0x5e67: b'\x11\xa1\x99', + -0x5e66: b'\x11\xa1\x9a', + -0x5e65: b'\x11\xa1\x9b', + -0x5e64: b'\x11\xa1\x9c', + -0x5e63: b'\x11\xa1\x9d', + -0x5e62: b'\x11\xa1\x9e', + -0x5e61: b'\x11\xa1\x9f', + -0x5e60: b'\x11\xa1\xa0', + -0x5e5f: b'\x11\xa1\xa1', + -0x5e5e: b'\x11\xa1\xa2', + -0x5e5d: b'\x11\xa1\xa3', + -0x5e5c: b'\x11\xa1\xa4', + -0x5e5b: b'\x11\xa1\xa5', + -0x5e5a: b'\x11\xa1\xa6', + -0x5e59: b'\x11\xa1\xa7', + -0x5e58: b'\x11\xa1\xa8', + -0x5e57: b'\x11\xa1\xa9', + -0x5e56: b'\x11\xa1\xaa', + -0x5e55: b'\x11\xa1\xab', + -0x5e54: b'\x11\xa1\xac', + -0x5e53: b'\x11\xa1\xad', + -0x5e52: b'\x11\xa1\xae', + -0x5e51: b'\x11\xa1\xaf', + -0x5e50: b'\x11\xa1\xb0', + -0x5e4f: b'\x11\xa1\xb1', + -0x5e4e: b'\x11\xa1\xb2', + -0x5e4d: b'\x11\xa1\xb3', + -0x5e4c: b'\x11\xa1\xb4', + -0x5e4b: b'\x11\xa1\xb5', + -0x5e4a: b'\x11\xa1\xb6', + -0x5e49: b'\x11\xa1\xb7', + -0x5e48: b'\x11\xa1\xb8', + -0x5e47: b'\x11\xa1\xb9', + -0x5e46: b'\x11\xa1\xba', + -0x5e45: b'\x11\xa1\xbb', + -0x5e44: b'\x11\xa1\xbc', + -0x5e43: b'\x11\xa1\xbd', + -0x5e42: b'\x11\xa1\xbe', + -0x5e41: b'\x11\xa1\xbf', + -0x5e40: b'\x11\xa1\xc0', + -0x5e3f: b'\x11\xa1\xc1', + -0x5e3e: b'\x11\xa1\xc2', + -0x5e3d: b'\x11\xa1\xc3', + -0x5e3c: b'\x11\xa1\xc4', + -0x5e3b: b'\x11\xa1\xc5', + -0x5e3a: b'\x11\xa1\xc6', + -0x5e39: b'\x11\xa1\xc7', + -0x5e38: b'\x11\xa1\xc8', + -0x5e37: b'\x11\xa1\xc9', + -0x5e36: b'\x11\xa1\xca', + -0x5e35: b'\x11\xa1\xcb', + -0x5e34: b'\x11\xa1\xcc', + -0x5e33: b'\x11\xa1\xcd', + -0x5e32: b'\x11\xa1\xce', + -0x5e31: b'\x11\xa1\xcf', + -0x5e30: b'\x11\xa1\xd0', + -0x5e2f: b'\x11\xa1\xd1', + -0x5e2e: b'\x11\xa1\xd2', + -0x5e2d: b'\x11\xa1\xd3', + -0x5e2c: b'\x11\xa1\xd4', + -0x5e2b: b'\x11\xa1\xd5', + -0x5e2a: b'\x11\xa1\xd6', + -0x5e29: b'\x11\xa1\xd7', + -0x5e28: b'\x11\xa1\xd8', + -0x5e27: b'\x11\xa1\xd9', + -0x5e26: b'\x11\xa1\xda', + -0x5e25: b'\x11\xa1\xdb', + -0x5e24: b'\x11\xa1\xdc', + -0x5e23: b'\x11\xa1\xdd', + -0x5e22: b'\x11\xa1\xde', + -0x5e21: b'\x11\xa1\xdf', + -0x5e20: b'\x11\xa1\xe0', + -0x5e1f: b'\x11\xa1\xe1', + -0x5e1e: b'\x11\xa1\xe2', + -0x5e1d: b'\x11\xa1\xe3', + -0x5e1c: b'\x11\xa1\xe4', + -0x5e1b: b'\x11\xa1\xe5', + -0x5e1a: b'\x11\xa1\xe6', + -0x5e19: b'\x11\xa1\xe7', + -0x5e18: b'\x11\xa1\xe8', + -0x5e17: b'\x11\xa1\xe9', + -0x5e16: b'\x11\xa1\xea', + -0x5e15: b'\x11\xa1\xeb', + -0x5e14: b'\x11\xa1\xec', + -0x5e13: b'\x11\xa1\xed', + -0x5e12: b'\x11\xa1\xee', + -0x5e11: b'\x11\xa1\xef', + -0x5e10: b'\x11\xa1\xf0', + -0x5e0f: b'\x11\xa1\xf1', + -0x5e0e: b'\x11\xa1\xf2', + -0x5e0d: b'\x11\xa1\xf3', + -0x5e0c: b'\x11\xa1\xf4', + -0x5e0b: b'\x11\xa1\xf5', + -0x5e0a: b'\x11\xa1\xf6', + -0x5e09: b'\x11\xa1\xf7', + -0x5e08: b'\x11\xa1\xf8', + -0x5e07: b'\x11\xa1\xf9', + -0x5e06: b'\x11\xa1\xfa', + -0x5e05: b'\x11\xa1\xfb', + -0x5e04: b'\x11\xa1\xfc', + -0x5e03: b'\x11\xa1\xfd', + -0x5e02: b'\x11\xa1\xfe', + -0x5e01: b'\x11\xa1\xff', + -0x5e00: b'\x11\xa2\x00', + -0x5dff: b'\x11\xa2\x01', + -0x5dfe: b'\x11\xa2\x02', + -0x5dfd: b'\x11\xa2\x03', + -0x5dfc: b'\x11\xa2\x04', + -0x5dfb: b'\x11\xa2\x05', + -0x5dfa: b'\x11\xa2\x06', + -0x5df9: b'\x11\xa2\x07', + -0x5df8: b'\x11\xa2\x08', + -0x5df7: b'\x11\xa2\t', + -0x5df6: b'\x11\xa2\n', + -0x5df5: b'\x11\xa2\x0b', + -0x5df4: b'\x11\xa2\x0c', + -0x5df3: b'\x11\xa2\r', + -0x5df2: b'\x11\xa2\x0e', + -0x5df1: b'\x11\xa2\x0f', + -0x5df0: b'\x11\xa2\x10', + -0x5def: b'\x11\xa2\x11', + -0x5dee: b'\x11\xa2\x12', + -0x5ded: b'\x11\xa2\x13', + -0x5dec: b'\x11\xa2\x14', + -0x5deb: b'\x11\xa2\x15', + -0x5dea: b'\x11\xa2\x16', + -0x5de9: b'\x11\xa2\x17', + -0x5de8: b'\x11\xa2\x18', + -0x5de7: b'\x11\xa2\x19', + -0x5de6: b'\x11\xa2\x1a', + -0x5de5: b'\x11\xa2\x1b', + -0x5de4: b'\x11\xa2\x1c', + -0x5de3: b'\x11\xa2\x1d', + -0x5de2: b'\x11\xa2\x1e', + -0x5de1: b'\x11\xa2\x1f', + -0x5de0: b'\x11\xa2 ', + -0x5ddf: b'\x11\xa2!', + -0x5dde: b'\x11\xa2"', + -0x5ddd: b'\x11\xa2#', + -0x5ddc: b'\x11\xa2$', + -0x5ddb: b'\x11\xa2%', + -0x5dda: b'\x11\xa2&', + -0x5dd9: b"\x11\xa2'", + -0x5dd8: b'\x11\xa2(', + -0x5dd7: b'\x11\xa2)', + -0x5dd6: b'\x11\xa2*', + -0x5dd5: b'\x11\xa2+', + -0x5dd4: b'\x11\xa2,', + -0x5dd3: b'\x11\xa2-', + -0x5dd2: b'\x11\xa2.', + -0x5dd1: b'\x11\xa2/', + -0x5dd0: b'\x11\xa20', + -0x5dcf: b'\x11\xa21', + -0x5dce: b'\x11\xa22', + -0x5dcd: b'\x11\xa23', + -0x5dcc: b'\x11\xa24', + -0x5dcb: b'\x11\xa25', + -0x5dca: b'\x11\xa26', + -0x5dc9: b'\x11\xa27', + -0x5dc8: b'\x11\xa28', + -0x5dc7: b'\x11\xa29', + -0x5dc6: b'\x11\xa2:', + -0x5dc5: b'\x11\xa2;', + -0x5dc4: b'\x11\xa2<', + -0x5dc3: b'\x11\xa2=', + -0x5dc2: b'\x11\xa2>', + -0x5dc1: b'\x11\xa2?', + -0x5dc0: b'\x11\xa2@', + -0x5dbf: b'\x11\xa2A', + -0x5dbe: b'\x11\xa2B', + -0x5dbd: b'\x11\xa2C', + -0x5dbc: b'\x11\xa2D', + -0x5dbb: b'\x11\xa2E', + -0x5dba: b'\x11\xa2F', + -0x5db9: b'\x11\xa2G', + -0x5db8: b'\x11\xa2H', + -0x5db7: b'\x11\xa2I', + -0x5db6: b'\x11\xa2J', + -0x5db5: b'\x11\xa2K', + -0x5db4: b'\x11\xa2L', + -0x5db3: b'\x11\xa2M', + -0x5db2: b'\x11\xa2N', + -0x5db1: b'\x11\xa2O', + -0x5db0: b'\x11\xa2P', + -0x5daf: b'\x11\xa2Q', + -0x5dae: b'\x11\xa2R', + -0x5dad: b'\x11\xa2S', + -0x5dac: b'\x11\xa2T', + -0x5dab: b'\x11\xa2U', + -0x5daa: b'\x11\xa2V', + -0x5da9: b'\x11\xa2W', + -0x5da8: b'\x11\xa2X', + -0x5da7: b'\x11\xa2Y', + -0x5da6: b'\x11\xa2Z', + -0x5da5: b'\x11\xa2[', + -0x5da4: b'\x11\xa2\\', + -0x5da3: b'\x11\xa2]', + -0x5da2: b'\x11\xa2^', + -0x5da1: b'\x11\xa2_', + -0x5da0: b'\x11\xa2`', + -0x5d9f: b'\x11\xa2a', + -0x5d9e: b'\x11\xa2b', + -0x5d9d: b'\x11\xa2c', + -0x5d9c: b'\x11\xa2d', + -0x5d9b: b'\x11\xa2e', + -0x5d9a: b'\x11\xa2f', + -0x5d99: b'\x11\xa2g', + -0x5d98: b'\x11\xa2h', + -0x5d97: b'\x11\xa2i', + -0x5d96: b'\x11\xa2j', + -0x5d95: b'\x11\xa2k', + -0x5d94: b'\x11\xa2l', + -0x5d93: b'\x11\xa2m', + -0x5d92: b'\x11\xa2n', + -0x5d91: b'\x11\xa2o', + -0x5d90: b'\x11\xa2p', + -0x5d8f: b'\x11\xa2q', + -0x5d8e: b'\x11\xa2r', + -0x5d8d: b'\x11\xa2s', + -0x5d8c: b'\x11\xa2t', + -0x5d8b: b'\x11\xa2u', + -0x5d8a: b'\x11\xa2v', + -0x5d89: b'\x11\xa2w', + -0x5d88: b'\x11\xa2x', + -0x5d87: b'\x11\xa2y', + -0x5d86: b'\x11\xa2z', + -0x5d85: b'\x11\xa2{', + -0x5d84: b'\x11\xa2|', + -0x5d83: b'\x11\xa2}', + -0x5d82: b'\x11\xa2~', + -0x5d81: b'\x11\xa2\x7f', + -0x5d80: b'\x11\xa2\x80', + -0x5d7f: b'\x11\xa2\x81', + -0x5d7e: b'\x11\xa2\x82', + -0x5d7d: b'\x11\xa2\x83', + -0x5d7c: b'\x11\xa2\x84', + -0x5d7b: b'\x11\xa2\x85', + -0x5d7a: b'\x11\xa2\x86', + -0x5d79: b'\x11\xa2\x87', + -0x5d78: b'\x11\xa2\x88', + -0x5d77: b'\x11\xa2\x89', + -0x5d76: b'\x11\xa2\x8a', + -0x5d75: b'\x11\xa2\x8b', + -0x5d74: b'\x11\xa2\x8c', + -0x5d73: b'\x11\xa2\x8d', + -0x5d72: b'\x11\xa2\x8e', + -0x5d71: b'\x11\xa2\x8f', + -0x5d70: b'\x11\xa2\x90', + -0x5d6f: b'\x11\xa2\x91', + -0x5d6e: b'\x11\xa2\x92', + -0x5d6d: b'\x11\xa2\x93', + -0x5d6c: b'\x11\xa2\x94', + -0x5d6b: b'\x11\xa2\x95', + -0x5d6a: b'\x11\xa2\x96', + -0x5d69: b'\x11\xa2\x97', + -0x5d68: b'\x11\xa2\x98', + -0x5d67: b'\x11\xa2\x99', + -0x5d66: b'\x11\xa2\x9a', + -0x5d65: b'\x11\xa2\x9b', + -0x5d64: b'\x11\xa2\x9c', + -0x5d63: b'\x11\xa2\x9d', + -0x5d62: b'\x11\xa2\x9e', + -0x5d61: b'\x11\xa2\x9f', + -0x5d60: b'\x11\xa2\xa0', + -0x5d5f: b'\x11\xa2\xa1', + -0x5d5e: b'\x11\xa2\xa2', + -0x5d5d: b'\x11\xa2\xa3', + -0x5d5c: b'\x11\xa2\xa4', + -0x5d5b: b'\x11\xa2\xa5', + -0x5d5a: b'\x11\xa2\xa6', + -0x5d59: b'\x11\xa2\xa7', + -0x5d58: b'\x11\xa2\xa8', + -0x5d57: b'\x11\xa2\xa9', + -0x5d56: b'\x11\xa2\xaa', + -0x5d55: b'\x11\xa2\xab', + -0x5d54: b'\x11\xa2\xac', + -0x5d53: b'\x11\xa2\xad', + -0x5d52: b'\x11\xa2\xae', + -0x5d51: b'\x11\xa2\xaf', + -0x5d50: b'\x11\xa2\xb0', + -0x5d4f: b'\x11\xa2\xb1', + -0x5d4e: b'\x11\xa2\xb2', + -0x5d4d: b'\x11\xa2\xb3', + -0x5d4c: b'\x11\xa2\xb4', + -0x5d4b: b'\x11\xa2\xb5', + -0x5d4a: b'\x11\xa2\xb6', + -0x5d49: b'\x11\xa2\xb7', + -0x5d48: b'\x11\xa2\xb8', + -0x5d47: b'\x11\xa2\xb9', + -0x5d46: b'\x11\xa2\xba', + -0x5d45: b'\x11\xa2\xbb', + -0x5d44: b'\x11\xa2\xbc', + -0x5d43: b'\x11\xa2\xbd', + -0x5d42: b'\x11\xa2\xbe', + -0x5d41: b'\x11\xa2\xbf', + -0x5d40: b'\x11\xa2\xc0', + -0x5d3f: b'\x11\xa2\xc1', + -0x5d3e: b'\x11\xa2\xc2', + -0x5d3d: b'\x11\xa2\xc3', + -0x5d3c: b'\x11\xa2\xc4', + -0x5d3b: b'\x11\xa2\xc5', + -0x5d3a: b'\x11\xa2\xc6', + -0x5d39: b'\x11\xa2\xc7', + -0x5d38: b'\x11\xa2\xc8', + -0x5d37: b'\x11\xa2\xc9', + -0x5d36: b'\x11\xa2\xca', + -0x5d35: b'\x11\xa2\xcb', + -0x5d34: b'\x11\xa2\xcc', + -0x5d33: b'\x11\xa2\xcd', + -0x5d32: b'\x11\xa2\xce', + -0x5d31: b'\x11\xa2\xcf', + -0x5d30: b'\x11\xa2\xd0', + -0x5d2f: b'\x11\xa2\xd1', + -0x5d2e: b'\x11\xa2\xd2', + -0x5d2d: b'\x11\xa2\xd3', + -0x5d2c: b'\x11\xa2\xd4', + -0x5d2b: b'\x11\xa2\xd5', + -0x5d2a: b'\x11\xa2\xd6', + -0x5d29: b'\x11\xa2\xd7', + -0x5d28: b'\x11\xa2\xd8', + -0x5d27: b'\x11\xa2\xd9', + -0x5d26: b'\x11\xa2\xda', + -0x5d25: b'\x11\xa2\xdb', + -0x5d24: b'\x11\xa2\xdc', + -0x5d23: b'\x11\xa2\xdd', + -0x5d22: b'\x11\xa2\xde', + -0x5d21: b'\x11\xa2\xdf', + -0x5d20: b'\x11\xa2\xe0', + -0x5d1f: b'\x11\xa2\xe1', + -0x5d1e: b'\x11\xa2\xe2', + -0x5d1d: b'\x11\xa2\xe3', + -0x5d1c: b'\x11\xa2\xe4', + -0x5d1b: b'\x11\xa2\xe5', + -0x5d1a: b'\x11\xa2\xe6', + -0x5d19: b'\x11\xa2\xe7', + -0x5d18: b'\x11\xa2\xe8', + -0x5d17: b'\x11\xa2\xe9', + -0x5d16: b'\x11\xa2\xea', + -0x5d15: b'\x11\xa2\xeb', + -0x5d14: b'\x11\xa2\xec', + -0x5d13: b'\x11\xa2\xed', + -0x5d12: b'\x11\xa2\xee', + -0x5d11: b'\x11\xa2\xef', + -0x5d10: b'\x11\xa2\xf0', + -0x5d0f: b'\x11\xa2\xf1', + -0x5d0e: b'\x11\xa2\xf2', + -0x5d0d: b'\x11\xa2\xf3', + -0x5d0c: b'\x11\xa2\xf4', + -0x5d0b: b'\x11\xa2\xf5', + -0x5d0a: b'\x11\xa2\xf6', + -0x5d09: b'\x11\xa2\xf7', + -0x5d08: b'\x11\xa2\xf8', + -0x5d07: b'\x11\xa2\xf9', + -0x5d06: b'\x11\xa2\xfa', + -0x5d05: b'\x11\xa2\xfb', + -0x5d04: b'\x11\xa2\xfc', + -0x5d03: b'\x11\xa2\xfd', + -0x5d02: b'\x11\xa2\xfe', + -0x5d01: b'\x11\xa2\xff', + -0x5d00: b'\x11\xa3\x00', + -0x5cff: b'\x11\xa3\x01', + -0x5cfe: b'\x11\xa3\x02', + -0x5cfd: b'\x11\xa3\x03', + -0x5cfc: b'\x11\xa3\x04', + -0x5cfb: b'\x11\xa3\x05', + -0x5cfa: b'\x11\xa3\x06', + -0x5cf9: b'\x11\xa3\x07', + -0x5cf8: b'\x11\xa3\x08', + -0x5cf7: b'\x11\xa3\t', + -0x5cf6: b'\x11\xa3\n', + -0x5cf5: b'\x11\xa3\x0b', + -0x5cf4: b'\x11\xa3\x0c', + -0x5cf3: b'\x11\xa3\r', + -0x5cf2: b'\x11\xa3\x0e', + -0x5cf1: b'\x11\xa3\x0f', + -0x5cf0: b'\x11\xa3\x10', + -0x5cef: b'\x11\xa3\x11', + -0x5cee: b'\x11\xa3\x12', + -0x5ced: b'\x11\xa3\x13', + -0x5cec: b'\x11\xa3\x14', + -0x5ceb: b'\x11\xa3\x15', + -0x5cea: b'\x11\xa3\x16', + -0x5ce9: b'\x11\xa3\x17', + -0x5ce8: b'\x11\xa3\x18', + -0x5ce7: b'\x11\xa3\x19', + -0x5ce6: b'\x11\xa3\x1a', + -0x5ce5: b'\x11\xa3\x1b', + -0x5ce4: b'\x11\xa3\x1c', + -0x5ce3: b'\x11\xa3\x1d', + -0x5ce2: b'\x11\xa3\x1e', + -0x5ce1: b'\x11\xa3\x1f', + -0x5ce0: b'\x11\xa3 ', + -0x5cdf: b'\x11\xa3!', + -0x5cde: b'\x11\xa3"', + -0x5cdd: b'\x11\xa3#', + -0x5cdc: b'\x11\xa3$', + -0x5cdb: b'\x11\xa3%', + -0x5cda: b'\x11\xa3&', + -0x5cd9: b"\x11\xa3'", + -0x5cd8: b'\x11\xa3(', + -0x5cd7: b'\x11\xa3)', + -0x5cd6: b'\x11\xa3*', + -0x5cd5: b'\x11\xa3+', + -0x5cd4: b'\x11\xa3,', + -0x5cd3: b'\x11\xa3-', + -0x5cd2: b'\x11\xa3.', + -0x5cd1: b'\x11\xa3/', + -0x5cd0: b'\x11\xa30', + -0x5ccf: b'\x11\xa31', + -0x5cce: b'\x11\xa32', + -0x5ccd: b'\x11\xa33', + -0x5ccc: b'\x11\xa34', + -0x5ccb: b'\x11\xa35', + -0x5cca: b'\x11\xa36', + -0x5cc9: b'\x11\xa37', + -0x5cc8: b'\x11\xa38', + -0x5cc7: b'\x11\xa39', + -0x5cc6: b'\x11\xa3:', + -0x5cc5: b'\x11\xa3;', + -0x5cc4: b'\x11\xa3<', + -0x5cc3: b'\x11\xa3=', + -0x5cc2: b'\x11\xa3>', + -0x5cc1: b'\x11\xa3?', + -0x5cc0: b'\x11\xa3@', + -0x5cbf: b'\x11\xa3A', + -0x5cbe: b'\x11\xa3B', + -0x5cbd: b'\x11\xa3C', + -0x5cbc: b'\x11\xa3D', + -0x5cbb: b'\x11\xa3E', + -0x5cba: b'\x11\xa3F', + -0x5cb9: b'\x11\xa3G', + -0x5cb8: b'\x11\xa3H', + -0x5cb7: b'\x11\xa3I', + -0x5cb6: b'\x11\xa3J', + -0x5cb5: b'\x11\xa3K', + -0x5cb4: b'\x11\xa3L', + -0x5cb3: b'\x11\xa3M', + -0x5cb2: b'\x11\xa3N', + -0x5cb1: b'\x11\xa3O', + -0x5cb0: b'\x11\xa3P', + -0x5caf: b'\x11\xa3Q', + -0x5cae: b'\x11\xa3R', + -0x5cad: b'\x11\xa3S', + -0x5cac: b'\x11\xa3T', + -0x5cab: b'\x11\xa3U', + -0x5caa: b'\x11\xa3V', + -0x5ca9: b'\x11\xa3W', + -0x5ca8: b'\x11\xa3X', + -0x5ca7: b'\x11\xa3Y', + -0x5ca6: b'\x11\xa3Z', + -0x5ca5: b'\x11\xa3[', + -0x5ca4: b'\x11\xa3\\', + -0x5ca3: b'\x11\xa3]', + -0x5ca2: b'\x11\xa3^', + -0x5ca1: b'\x11\xa3_', + -0x5ca0: b'\x11\xa3`', + -0x5c9f: b'\x11\xa3a', + -0x5c9e: b'\x11\xa3b', + -0x5c9d: b'\x11\xa3c', + -0x5c9c: b'\x11\xa3d', + -0x5c9b: b'\x11\xa3e', + -0x5c9a: b'\x11\xa3f', + -0x5c99: b'\x11\xa3g', + -0x5c98: b'\x11\xa3h', + -0x5c97: b'\x11\xa3i', + -0x5c96: b'\x11\xa3j', + -0x5c95: b'\x11\xa3k', + -0x5c94: b'\x11\xa3l', + -0x5c93: b'\x11\xa3m', + -0x5c92: b'\x11\xa3n', + -0x5c91: b'\x11\xa3o', + -0x5c90: b'\x11\xa3p', + -0x5c8f: b'\x11\xa3q', + -0x5c8e: b'\x11\xa3r', + -0x5c8d: b'\x11\xa3s', + -0x5c8c: b'\x11\xa3t', + -0x5c8b: b'\x11\xa3u', + -0x5c8a: b'\x11\xa3v', + -0x5c89: b'\x11\xa3w', + -0x5c88: b'\x11\xa3x', + -0x5c87: b'\x11\xa3y', + -0x5c86: b'\x11\xa3z', + -0x5c85: b'\x11\xa3{', + -0x5c84: b'\x11\xa3|', + -0x5c83: b'\x11\xa3}', + -0x5c82: b'\x11\xa3~', + -0x5c81: b'\x11\xa3\x7f', + -0x5c80: b'\x11\xa3\x80', + -0x5c7f: b'\x11\xa3\x81', + -0x5c7e: b'\x11\xa3\x82', + -0x5c7d: b'\x11\xa3\x83', + -0x5c7c: b'\x11\xa3\x84', + -0x5c7b: b'\x11\xa3\x85', + -0x5c7a: b'\x11\xa3\x86', + -0x5c79: b'\x11\xa3\x87', + -0x5c78: b'\x11\xa3\x88', + -0x5c77: b'\x11\xa3\x89', + -0x5c76: b'\x11\xa3\x8a', + -0x5c75: b'\x11\xa3\x8b', + -0x5c74: b'\x11\xa3\x8c', + -0x5c73: b'\x11\xa3\x8d', + -0x5c72: b'\x11\xa3\x8e', + -0x5c71: b'\x11\xa3\x8f', + -0x5c70: b'\x11\xa3\x90', + -0x5c6f: b'\x11\xa3\x91', + -0x5c6e: b'\x11\xa3\x92', + -0x5c6d: b'\x11\xa3\x93', + -0x5c6c: b'\x11\xa3\x94', + -0x5c6b: b'\x11\xa3\x95', + -0x5c6a: b'\x11\xa3\x96', + -0x5c69: b'\x11\xa3\x97', + -0x5c68: b'\x11\xa3\x98', + -0x5c67: b'\x11\xa3\x99', + -0x5c66: b'\x11\xa3\x9a', + -0x5c65: b'\x11\xa3\x9b', + -0x5c64: b'\x11\xa3\x9c', + -0x5c63: b'\x11\xa3\x9d', + -0x5c62: b'\x11\xa3\x9e', + -0x5c61: b'\x11\xa3\x9f', + -0x5c60: b'\x11\xa3\xa0', + -0x5c5f: b'\x11\xa3\xa1', + -0x5c5e: b'\x11\xa3\xa2', + -0x5c5d: b'\x11\xa3\xa3', + -0x5c5c: b'\x11\xa3\xa4', + -0x5c5b: b'\x11\xa3\xa5', + -0x5c5a: b'\x11\xa3\xa6', + -0x5c59: b'\x11\xa3\xa7', + -0x5c58: b'\x11\xa3\xa8', + -0x5c57: b'\x11\xa3\xa9', + -0x5c56: b'\x11\xa3\xaa', + -0x5c55: b'\x11\xa3\xab', + -0x5c54: b'\x11\xa3\xac', + -0x5c53: b'\x11\xa3\xad', + -0x5c52: b'\x11\xa3\xae', + -0x5c51: b'\x11\xa3\xaf', + -0x5c50: b'\x11\xa3\xb0', + -0x5c4f: b'\x11\xa3\xb1', + -0x5c4e: b'\x11\xa3\xb2', + -0x5c4d: b'\x11\xa3\xb3', + -0x5c4c: b'\x11\xa3\xb4', + -0x5c4b: b'\x11\xa3\xb5', + -0x5c4a: b'\x11\xa3\xb6', + -0x5c49: b'\x11\xa3\xb7', + -0x5c48: b'\x11\xa3\xb8', + -0x5c47: b'\x11\xa3\xb9', + -0x5c46: b'\x11\xa3\xba', + -0x5c45: b'\x11\xa3\xbb', + -0x5c44: b'\x11\xa3\xbc', + -0x5c43: b'\x11\xa3\xbd', + -0x5c42: b'\x11\xa3\xbe', + -0x5c41: b'\x11\xa3\xbf', + -0x5c40: b'\x11\xa3\xc0', + -0x5c3f: b'\x11\xa3\xc1', + -0x5c3e: b'\x11\xa3\xc2', + -0x5c3d: b'\x11\xa3\xc3', + -0x5c3c: b'\x11\xa3\xc4', + -0x5c3b: b'\x11\xa3\xc5', + -0x5c3a: b'\x11\xa3\xc6', + -0x5c39: b'\x11\xa3\xc7', + -0x5c38: b'\x11\xa3\xc8', + -0x5c37: b'\x11\xa3\xc9', + -0x5c36: b'\x11\xa3\xca', + -0x5c35: b'\x11\xa3\xcb', + -0x5c34: b'\x11\xa3\xcc', + -0x5c33: b'\x11\xa3\xcd', + -0x5c32: b'\x11\xa3\xce', + -0x5c31: b'\x11\xa3\xcf', + -0x5c30: b'\x11\xa3\xd0', + -0x5c2f: b'\x11\xa3\xd1', + -0x5c2e: b'\x11\xa3\xd2', + -0x5c2d: b'\x11\xa3\xd3', + -0x5c2c: b'\x11\xa3\xd4', + -0x5c2b: b'\x11\xa3\xd5', + -0x5c2a: b'\x11\xa3\xd6', + -0x5c29: b'\x11\xa3\xd7', + -0x5c28: b'\x11\xa3\xd8', + -0x5c27: b'\x11\xa3\xd9', + -0x5c26: b'\x11\xa3\xda', + -0x5c25: b'\x11\xa3\xdb', + -0x5c24: b'\x11\xa3\xdc', + -0x5c23: b'\x11\xa3\xdd', + -0x5c22: b'\x11\xa3\xde', + -0x5c21: b'\x11\xa3\xdf', + -0x5c20: b'\x11\xa3\xe0', + -0x5c1f: b'\x11\xa3\xe1', + -0x5c1e: b'\x11\xa3\xe2', + -0x5c1d: b'\x11\xa3\xe3', + -0x5c1c: b'\x11\xa3\xe4', + -0x5c1b: b'\x11\xa3\xe5', + -0x5c1a: b'\x11\xa3\xe6', + -0x5c19: b'\x11\xa3\xe7', + -0x5c18: b'\x11\xa3\xe8', + -0x5c17: b'\x11\xa3\xe9', + -0x5c16: b'\x11\xa3\xea', + -0x5c15: b'\x11\xa3\xeb', + -0x5c14: b'\x11\xa3\xec', + -0x5c13: b'\x11\xa3\xed', + -0x5c12: b'\x11\xa3\xee', + -0x5c11: b'\x11\xa3\xef', + -0x5c10: b'\x11\xa3\xf0', + -0x5c0f: b'\x11\xa3\xf1', + -0x5c0e: b'\x11\xa3\xf2', + -0x5c0d: b'\x11\xa3\xf3', + -0x5c0c: b'\x11\xa3\xf4', + -0x5c0b: b'\x11\xa3\xf5', + -0x5c0a: b'\x11\xa3\xf6', + -0x5c09: b'\x11\xa3\xf7', + -0x5c08: b'\x11\xa3\xf8', + -0x5c07: b'\x11\xa3\xf9', + -0x5c06: b'\x11\xa3\xfa', + -0x5c05: b'\x11\xa3\xfb', + -0x5c04: b'\x11\xa3\xfc', + -0x5c03: b'\x11\xa3\xfd', + -0x5c02: b'\x11\xa3\xfe', + -0x5c01: b'\x11\xa3\xff', + -0x5c00: b'\x11\xa4\x00', + -0x5bff: b'\x11\xa4\x01', + -0x5bfe: b'\x11\xa4\x02', + -0x5bfd: b'\x11\xa4\x03', + -0x5bfc: b'\x11\xa4\x04', + -0x5bfb: b'\x11\xa4\x05', + -0x5bfa: b'\x11\xa4\x06', + -0x5bf9: b'\x11\xa4\x07', + -0x5bf8: b'\x11\xa4\x08', + -0x5bf7: b'\x11\xa4\t', + -0x5bf6: b'\x11\xa4\n', + -0x5bf5: b'\x11\xa4\x0b', + -0x5bf4: b'\x11\xa4\x0c', + -0x5bf3: b'\x11\xa4\r', + -0x5bf2: b'\x11\xa4\x0e', + -0x5bf1: b'\x11\xa4\x0f', + -0x5bf0: b'\x11\xa4\x10', + -0x5bef: b'\x11\xa4\x11', + -0x5bee: b'\x11\xa4\x12', + -0x5bed: b'\x11\xa4\x13', + -0x5bec: b'\x11\xa4\x14', + -0x5beb: b'\x11\xa4\x15', + -0x5bea: b'\x11\xa4\x16', + -0x5be9: b'\x11\xa4\x17', + -0x5be8: b'\x11\xa4\x18', + -0x5be7: b'\x11\xa4\x19', + -0x5be6: b'\x11\xa4\x1a', + -0x5be5: b'\x11\xa4\x1b', + -0x5be4: b'\x11\xa4\x1c', + -0x5be3: b'\x11\xa4\x1d', + -0x5be2: b'\x11\xa4\x1e', + -0x5be1: b'\x11\xa4\x1f', + -0x5be0: b'\x11\xa4 ', + -0x5bdf: b'\x11\xa4!', + -0x5bde: b'\x11\xa4"', + -0x5bdd: b'\x11\xa4#', + -0x5bdc: b'\x11\xa4$', + -0x5bdb: b'\x11\xa4%', + -0x5bda: b'\x11\xa4&', + -0x5bd9: b"\x11\xa4'", + -0x5bd8: b'\x11\xa4(', + -0x5bd7: b'\x11\xa4)', + -0x5bd6: b'\x11\xa4*', + -0x5bd5: b'\x11\xa4+', + -0x5bd4: b'\x11\xa4,', + -0x5bd3: b'\x11\xa4-', + -0x5bd2: b'\x11\xa4.', + -0x5bd1: b'\x11\xa4/', + -0x5bd0: b'\x11\xa40', + -0x5bcf: b'\x11\xa41', + -0x5bce: b'\x11\xa42', + -0x5bcd: b'\x11\xa43', + -0x5bcc: b'\x11\xa44', + -0x5bcb: b'\x11\xa45', + -0x5bca: b'\x11\xa46', + -0x5bc9: b'\x11\xa47', + -0x5bc8: b'\x11\xa48', + -0x5bc7: b'\x11\xa49', + -0x5bc6: b'\x11\xa4:', + -0x5bc5: b'\x11\xa4;', + -0x5bc4: b'\x11\xa4<', + -0x5bc3: b'\x11\xa4=', + -0x5bc2: b'\x11\xa4>', + -0x5bc1: b'\x11\xa4?', + -0x5bc0: b'\x11\xa4@', + -0x5bbf: b'\x11\xa4A', + -0x5bbe: b'\x11\xa4B', + -0x5bbd: b'\x11\xa4C', + -0x5bbc: b'\x11\xa4D', + -0x5bbb: b'\x11\xa4E', + -0x5bba: b'\x11\xa4F', + -0x5bb9: b'\x11\xa4G', + -0x5bb8: b'\x11\xa4H', + -0x5bb7: b'\x11\xa4I', + -0x5bb6: b'\x11\xa4J', + -0x5bb5: b'\x11\xa4K', + -0x5bb4: b'\x11\xa4L', + -0x5bb3: b'\x11\xa4M', + -0x5bb2: b'\x11\xa4N', + -0x5bb1: b'\x11\xa4O', + -0x5bb0: b'\x11\xa4P', + -0x5baf: b'\x11\xa4Q', + -0x5bae: b'\x11\xa4R', + -0x5bad: b'\x11\xa4S', + -0x5bac: b'\x11\xa4T', + -0x5bab: b'\x11\xa4U', + -0x5baa: b'\x11\xa4V', + -0x5ba9: b'\x11\xa4W', + -0x5ba8: b'\x11\xa4X', + -0x5ba7: b'\x11\xa4Y', + -0x5ba6: b'\x11\xa4Z', + -0x5ba5: b'\x11\xa4[', + -0x5ba4: b'\x11\xa4\\', + -0x5ba3: b'\x11\xa4]', + -0x5ba2: b'\x11\xa4^', + -0x5ba1: b'\x11\xa4_', + -0x5ba0: b'\x11\xa4`', + -0x5b9f: b'\x11\xa4a', + -0x5b9e: b'\x11\xa4b', + -0x5b9d: b'\x11\xa4c', + -0x5b9c: b'\x11\xa4d', + -0x5b9b: b'\x11\xa4e', + -0x5b9a: b'\x11\xa4f', + -0x5b99: b'\x11\xa4g', + -0x5b98: b'\x11\xa4h', + -0x5b97: b'\x11\xa4i', + -0x5b96: b'\x11\xa4j', + -0x5b95: b'\x11\xa4k', + -0x5b94: b'\x11\xa4l', + -0x5b93: b'\x11\xa4m', + -0x5b92: b'\x11\xa4n', + -0x5b91: b'\x11\xa4o', + -0x5b90: b'\x11\xa4p', + -0x5b8f: b'\x11\xa4q', + -0x5b8e: b'\x11\xa4r', + -0x5b8d: b'\x11\xa4s', + -0x5b8c: b'\x11\xa4t', + -0x5b8b: b'\x11\xa4u', + -0x5b8a: b'\x11\xa4v', + -0x5b89: b'\x11\xa4w', + -0x5b88: b'\x11\xa4x', + -0x5b87: b'\x11\xa4y', + -0x5b86: b'\x11\xa4z', + -0x5b85: b'\x11\xa4{', + -0x5b84: b'\x11\xa4|', + -0x5b83: b'\x11\xa4}', + -0x5b82: b'\x11\xa4~', + -0x5b81: b'\x11\xa4\x7f', + -0x5b80: b'\x11\xa4\x80', + -0x5b7f: b'\x11\xa4\x81', + -0x5b7e: b'\x11\xa4\x82', + -0x5b7d: b'\x11\xa4\x83', + -0x5b7c: b'\x11\xa4\x84', + -0x5b7b: b'\x11\xa4\x85', + -0x5b7a: b'\x11\xa4\x86', + -0x5b79: b'\x11\xa4\x87', + -0x5b78: b'\x11\xa4\x88', + -0x5b77: b'\x11\xa4\x89', + -0x5b76: b'\x11\xa4\x8a', + -0x5b75: b'\x11\xa4\x8b', + -0x5b74: b'\x11\xa4\x8c', + -0x5b73: b'\x11\xa4\x8d', + -0x5b72: b'\x11\xa4\x8e', + -0x5b71: b'\x11\xa4\x8f', + -0x5b70: b'\x11\xa4\x90', + -0x5b6f: b'\x11\xa4\x91', + -0x5b6e: b'\x11\xa4\x92', + -0x5b6d: b'\x11\xa4\x93', + -0x5b6c: b'\x11\xa4\x94', + -0x5b6b: b'\x11\xa4\x95', + -0x5b6a: b'\x11\xa4\x96', + -0x5b69: b'\x11\xa4\x97', + -0x5b68: b'\x11\xa4\x98', + -0x5b67: b'\x11\xa4\x99', + -0x5b66: b'\x11\xa4\x9a', + -0x5b65: b'\x11\xa4\x9b', + -0x5b64: b'\x11\xa4\x9c', + -0x5b63: b'\x11\xa4\x9d', + -0x5b62: b'\x11\xa4\x9e', + -0x5b61: b'\x11\xa4\x9f', + -0x5b60: b'\x11\xa4\xa0', + -0x5b5f: b'\x11\xa4\xa1', + -0x5b5e: b'\x11\xa4\xa2', + -0x5b5d: b'\x11\xa4\xa3', + -0x5b5c: b'\x11\xa4\xa4', + -0x5b5b: b'\x11\xa4\xa5', + -0x5b5a: b'\x11\xa4\xa6', + -0x5b59: b'\x11\xa4\xa7', + -0x5b58: b'\x11\xa4\xa8', + -0x5b57: b'\x11\xa4\xa9', + -0x5b56: b'\x11\xa4\xaa', + -0x5b55: b'\x11\xa4\xab', + -0x5b54: b'\x11\xa4\xac', + -0x5b53: b'\x11\xa4\xad', + -0x5b52: b'\x11\xa4\xae', + -0x5b51: b'\x11\xa4\xaf', + -0x5b50: b'\x11\xa4\xb0', + -0x5b4f: b'\x11\xa4\xb1', + -0x5b4e: b'\x11\xa4\xb2', + -0x5b4d: b'\x11\xa4\xb3', + -0x5b4c: b'\x11\xa4\xb4', + -0x5b4b: b'\x11\xa4\xb5', + -0x5b4a: b'\x11\xa4\xb6', + -0x5b49: b'\x11\xa4\xb7', + -0x5b48: b'\x11\xa4\xb8', + -0x5b47: b'\x11\xa4\xb9', + -0x5b46: b'\x11\xa4\xba', + -0x5b45: b'\x11\xa4\xbb', + -0x5b44: b'\x11\xa4\xbc', + -0x5b43: b'\x11\xa4\xbd', + -0x5b42: b'\x11\xa4\xbe', + -0x5b41: b'\x11\xa4\xbf', + -0x5b40: b'\x11\xa4\xc0', + -0x5b3f: b'\x11\xa4\xc1', + -0x5b3e: b'\x11\xa4\xc2', + -0x5b3d: b'\x11\xa4\xc3', + -0x5b3c: b'\x11\xa4\xc4', + -0x5b3b: b'\x11\xa4\xc5', + -0x5b3a: b'\x11\xa4\xc6', + -0x5b39: b'\x11\xa4\xc7', + -0x5b38: b'\x11\xa4\xc8', + -0x5b37: b'\x11\xa4\xc9', + -0x5b36: b'\x11\xa4\xca', + -0x5b35: b'\x11\xa4\xcb', + -0x5b34: b'\x11\xa4\xcc', + -0x5b33: b'\x11\xa4\xcd', + -0x5b32: b'\x11\xa4\xce', + -0x5b31: b'\x11\xa4\xcf', + -0x5b30: b'\x11\xa4\xd0', + -0x5b2f: b'\x11\xa4\xd1', + -0x5b2e: b'\x11\xa4\xd2', + -0x5b2d: b'\x11\xa4\xd3', + -0x5b2c: b'\x11\xa4\xd4', + -0x5b2b: b'\x11\xa4\xd5', + -0x5b2a: b'\x11\xa4\xd6', + -0x5b29: b'\x11\xa4\xd7', + -0x5b28: b'\x11\xa4\xd8', + -0x5b27: b'\x11\xa4\xd9', + -0x5b26: b'\x11\xa4\xda', + -0x5b25: b'\x11\xa4\xdb', + -0x5b24: b'\x11\xa4\xdc', + -0x5b23: b'\x11\xa4\xdd', + -0x5b22: b'\x11\xa4\xde', + -0x5b21: b'\x11\xa4\xdf', + -0x5b20: b'\x11\xa4\xe0', + -0x5b1f: b'\x11\xa4\xe1', + -0x5b1e: b'\x11\xa4\xe2', + -0x5b1d: b'\x11\xa4\xe3', + -0x5b1c: b'\x11\xa4\xe4', + -0x5b1b: b'\x11\xa4\xe5', + -0x5b1a: b'\x11\xa4\xe6', + -0x5b19: b'\x11\xa4\xe7', + -0x5b18: b'\x11\xa4\xe8', + -0x5b17: b'\x11\xa4\xe9', + -0x5b16: b'\x11\xa4\xea', + -0x5b15: b'\x11\xa4\xeb', + -0x5b14: b'\x11\xa4\xec', + -0x5b13: b'\x11\xa4\xed', + -0x5b12: b'\x11\xa4\xee', + -0x5b11: b'\x11\xa4\xef', + -0x5b10: b'\x11\xa4\xf0', + -0x5b0f: b'\x11\xa4\xf1', + -0x5b0e: b'\x11\xa4\xf2', + -0x5b0d: b'\x11\xa4\xf3', + -0x5b0c: b'\x11\xa4\xf4', + -0x5b0b: b'\x11\xa4\xf5', + -0x5b0a: b'\x11\xa4\xf6', + -0x5b09: b'\x11\xa4\xf7', + -0x5b08: b'\x11\xa4\xf8', + -0x5b07: b'\x11\xa4\xf9', + -0x5b06: b'\x11\xa4\xfa', + -0x5b05: b'\x11\xa4\xfb', + -0x5b04: b'\x11\xa4\xfc', + -0x5b03: b'\x11\xa4\xfd', + -0x5b02: b'\x11\xa4\xfe', + -0x5b01: b'\x11\xa4\xff', + -0x5b00: b'\x11\xa5\x00', + -0x5aff: b'\x11\xa5\x01', + -0x5afe: b'\x11\xa5\x02', + -0x5afd: b'\x11\xa5\x03', + -0x5afc: b'\x11\xa5\x04', + -0x5afb: b'\x11\xa5\x05', + -0x5afa: b'\x11\xa5\x06', + -0x5af9: b'\x11\xa5\x07', + -0x5af8: b'\x11\xa5\x08', + -0x5af7: b'\x11\xa5\t', + -0x5af6: b'\x11\xa5\n', + -0x5af5: b'\x11\xa5\x0b', + -0x5af4: b'\x11\xa5\x0c', + -0x5af3: b'\x11\xa5\r', + -0x5af2: b'\x11\xa5\x0e', + -0x5af1: b'\x11\xa5\x0f', + -0x5af0: b'\x11\xa5\x10', + -0x5aef: b'\x11\xa5\x11', + -0x5aee: b'\x11\xa5\x12', + -0x5aed: b'\x11\xa5\x13', + -0x5aec: b'\x11\xa5\x14', + -0x5aeb: b'\x11\xa5\x15', + -0x5aea: b'\x11\xa5\x16', + -0x5ae9: b'\x11\xa5\x17', + -0x5ae8: b'\x11\xa5\x18', + -0x5ae7: b'\x11\xa5\x19', + -0x5ae6: b'\x11\xa5\x1a', + -0x5ae5: b'\x11\xa5\x1b', + -0x5ae4: b'\x11\xa5\x1c', + -0x5ae3: b'\x11\xa5\x1d', + -0x5ae2: b'\x11\xa5\x1e', + -0x5ae1: b'\x11\xa5\x1f', + -0x5ae0: b'\x11\xa5 ', + -0x5adf: b'\x11\xa5!', + -0x5ade: b'\x11\xa5"', + -0x5add: b'\x11\xa5#', + -0x5adc: b'\x11\xa5$', + -0x5adb: b'\x11\xa5%', + -0x5ada: b'\x11\xa5&', + -0x5ad9: b"\x11\xa5'", + -0x5ad8: b'\x11\xa5(', + -0x5ad7: b'\x11\xa5)', + -0x5ad6: b'\x11\xa5*', + -0x5ad5: b'\x11\xa5+', + -0x5ad4: b'\x11\xa5,', + -0x5ad3: b'\x11\xa5-', + -0x5ad2: b'\x11\xa5.', + -0x5ad1: b'\x11\xa5/', + -0x5ad0: b'\x11\xa50', + -0x5acf: b'\x11\xa51', + -0x5ace: b'\x11\xa52', + -0x5acd: b'\x11\xa53', + -0x5acc: b'\x11\xa54', + -0x5acb: b'\x11\xa55', + -0x5aca: b'\x11\xa56', + -0x5ac9: b'\x11\xa57', + -0x5ac8: b'\x11\xa58', + -0x5ac7: b'\x11\xa59', + -0x5ac6: b'\x11\xa5:', + -0x5ac5: b'\x11\xa5;', + -0x5ac4: b'\x11\xa5<', + -0x5ac3: b'\x11\xa5=', + -0x5ac2: b'\x11\xa5>', + -0x5ac1: b'\x11\xa5?', + -0x5ac0: b'\x11\xa5@', + -0x5abf: b'\x11\xa5A', + -0x5abe: b'\x11\xa5B', + -0x5abd: b'\x11\xa5C', + -0x5abc: b'\x11\xa5D', + -0x5abb: b'\x11\xa5E', + -0x5aba: b'\x11\xa5F', + -0x5ab9: b'\x11\xa5G', + -0x5ab8: b'\x11\xa5H', + -0x5ab7: b'\x11\xa5I', + -0x5ab6: b'\x11\xa5J', + -0x5ab5: b'\x11\xa5K', + -0x5ab4: b'\x11\xa5L', + -0x5ab3: b'\x11\xa5M', + -0x5ab2: b'\x11\xa5N', + -0x5ab1: b'\x11\xa5O', + -0x5ab0: b'\x11\xa5P', + -0x5aaf: b'\x11\xa5Q', + -0x5aae: b'\x11\xa5R', + -0x5aad: b'\x11\xa5S', + -0x5aac: b'\x11\xa5T', + -0x5aab: b'\x11\xa5U', + -0x5aaa: b'\x11\xa5V', + -0x5aa9: b'\x11\xa5W', + -0x5aa8: b'\x11\xa5X', + -0x5aa7: b'\x11\xa5Y', + -0x5aa6: b'\x11\xa5Z', + -0x5aa5: b'\x11\xa5[', + -0x5aa4: b'\x11\xa5\\', + -0x5aa3: b'\x11\xa5]', + -0x5aa2: b'\x11\xa5^', + -0x5aa1: b'\x11\xa5_', + -0x5aa0: b'\x11\xa5`', + -0x5a9f: b'\x11\xa5a', + -0x5a9e: b'\x11\xa5b', + -0x5a9d: b'\x11\xa5c', + -0x5a9c: b'\x11\xa5d', + -0x5a9b: b'\x11\xa5e', + -0x5a9a: b'\x11\xa5f', + -0x5a99: b'\x11\xa5g', + -0x5a98: b'\x11\xa5h', + -0x5a97: b'\x11\xa5i', + -0x5a96: b'\x11\xa5j', + -0x5a95: b'\x11\xa5k', + -0x5a94: b'\x11\xa5l', + -0x5a93: b'\x11\xa5m', + -0x5a92: b'\x11\xa5n', + -0x5a91: b'\x11\xa5o', + -0x5a90: b'\x11\xa5p', + -0x5a8f: b'\x11\xa5q', + -0x5a8e: b'\x11\xa5r', + -0x5a8d: b'\x11\xa5s', + -0x5a8c: b'\x11\xa5t', + -0x5a8b: b'\x11\xa5u', + -0x5a8a: b'\x11\xa5v', + -0x5a89: b'\x11\xa5w', + -0x5a88: b'\x11\xa5x', + -0x5a87: b'\x11\xa5y', + -0x5a86: b'\x11\xa5z', + -0x5a85: b'\x11\xa5{', + -0x5a84: b'\x11\xa5|', + -0x5a83: b'\x11\xa5}', + -0x5a82: b'\x11\xa5~', + -0x5a81: b'\x11\xa5\x7f', + -0x5a80: b'\x11\xa5\x80', + -0x5a7f: b'\x11\xa5\x81', + -0x5a7e: b'\x11\xa5\x82', + -0x5a7d: b'\x11\xa5\x83', + -0x5a7c: b'\x11\xa5\x84', + -0x5a7b: b'\x11\xa5\x85', + -0x5a7a: b'\x11\xa5\x86', + -0x5a79: b'\x11\xa5\x87', + -0x5a78: b'\x11\xa5\x88', + -0x5a77: b'\x11\xa5\x89', + -0x5a76: b'\x11\xa5\x8a', + -0x5a75: b'\x11\xa5\x8b', + -0x5a74: b'\x11\xa5\x8c', + -0x5a73: b'\x11\xa5\x8d', + -0x5a72: b'\x11\xa5\x8e', + -0x5a71: b'\x11\xa5\x8f', + -0x5a70: b'\x11\xa5\x90', + -0x5a6f: b'\x11\xa5\x91', + -0x5a6e: b'\x11\xa5\x92', + -0x5a6d: b'\x11\xa5\x93', + -0x5a6c: b'\x11\xa5\x94', + -0x5a6b: b'\x11\xa5\x95', + -0x5a6a: b'\x11\xa5\x96', + -0x5a69: b'\x11\xa5\x97', + -0x5a68: b'\x11\xa5\x98', + -0x5a67: b'\x11\xa5\x99', + -0x5a66: b'\x11\xa5\x9a', + -0x5a65: b'\x11\xa5\x9b', + -0x5a64: b'\x11\xa5\x9c', + -0x5a63: b'\x11\xa5\x9d', + -0x5a62: b'\x11\xa5\x9e', + -0x5a61: b'\x11\xa5\x9f', + -0x5a60: b'\x11\xa5\xa0', + -0x5a5f: b'\x11\xa5\xa1', + -0x5a5e: b'\x11\xa5\xa2', + -0x5a5d: b'\x11\xa5\xa3', + -0x5a5c: b'\x11\xa5\xa4', + -0x5a5b: b'\x11\xa5\xa5', + -0x5a5a: b'\x11\xa5\xa6', + -0x5a59: b'\x11\xa5\xa7', + -0x5a58: b'\x11\xa5\xa8', + -0x5a57: b'\x11\xa5\xa9', + -0x5a56: b'\x11\xa5\xaa', + -0x5a55: b'\x11\xa5\xab', + -0x5a54: b'\x11\xa5\xac', + -0x5a53: b'\x11\xa5\xad', + -0x5a52: b'\x11\xa5\xae', + -0x5a51: b'\x11\xa5\xaf', + -0x5a50: b'\x11\xa5\xb0', + -0x5a4f: b'\x11\xa5\xb1', + -0x5a4e: b'\x11\xa5\xb2', + -0x5a4d: b'\x11\xa5\xb3', + -0x5a4c: b'\x11\xa5\xb4', + -0x5a4b: b'\x11\xa5\xb5', + -0x5a4a: b'\x11\xa5\xb6', + -0x5a49: b'\x11\xa5\xb7', + -0x5a48: b'\x11\xa5\xb8', + -0x5a47: b'\x11\xa5\xb9', + -0x5a46: b'\x11\xa5\xba', + -0x5a45: b'\x11\xa5\xbb', + -0x5a44: b'\x11\xa5\xbc', + -0x5a43: b'\x11\xa5\xbd', + -0x5a42: b'\x11\xa5\xbe', + -0x5a41: b'\x11\xa5\xbf', + -0x5a40: b'\x11\xa5\xc0', + -0x5a3f: b'\x11\xa5\xc1', + -0x5a3e: b'\x11\xa5\xc2', + -0x5a3d: b'\x11\xa5\xc3', + -0x5a3c: b'\x11\xa5\xc4', + -0x5a3b: b'\x11\xa5\xc5', + -0x5a3a: b'\x11\xa5\xc6', + -0x5a39: b'\x11\xa5\xc7', + -0x5a38: b'\x11\xa5\xc8', + -0x5a37: b'\x11\xa5\xc9', + -0x5a36: b'\x11\xa5\xca', + -0x5a35: b'\x11\xa5\xcb', + -0x5a34: b'\x11\xa5\xcc', + -0x5a33: b'\x11\xa5\xcd', + -0x5a32: b'\x11\xa5\xce', + -0x5a31: b'\x11\xa5\xcf', + -0x5a30: b'\x11\xa5\xd0', + -0x5a2f: b'\x11\xa5\xd1', + -0x5a2e: b'\x11\xa5\xd2', + -0x5a2d: b'\x11\xa5\xd3', + -0x5a2c: b'\x11\xa5\xd4', + -0x5a2b: b'\x11\xa5\xd5', + -0x5a2a: b'\x11\xa5\xd6', + -0x5a29: b'\x11\xa5\xd7', + -0x5a28: b'\x11\xa5\xd8', + -0x5a27: b'\x11\xa5\xd9', + -0x5a26: b'\x11\xa5\xda', + -0x5a25: b'\x11\xa5\xdb', + -0x5a24: b'\x11\xa5\xdc', + -0x5a23: b'\x11\xa5\xdd', + -0x5a22: b'\x11\xa5\xde', + -0x5a21: b'\x11\xa5\xdf', + -0x5a20: b'\x11\xa5\xe0', + -0x5a1f: b'\x11\xa5\xe1', + -0x5a1e: b'\x11\xa5\xe2', + -0x5a1d: b'\x11\xa5\xe3', + -0x5a1c: b'\x11\xa5\xe4', + -0x5a1b: b'\x11\xa5\xe5', + -0x5a1a: b'\x11\xa5\xe6', + -0x5a19: b'\x11\xa5\xe7', + -0x5a18: b'\x11\xa5\xe8', + -0x5a17: b'\x11\xa5\xe9', + -0x5a16: b'\x11\xa5\xea', + -0x5a15: b'\x11\xa5\xeb', + -0x5a14: b'\x11\xa5\xec', + -0x5a13: b'\x11\xa5\xed', + -0x5a12: b'\x11\xa5\xee', + -0x5a11: b'\x11\xa5\xef', + -0x5a10: b'\x11\xa5\xf0', + -0x5a0f: b'\x11\xa5\xf1', + -0x5a0e: b'\x11\xa5\xf2', + -0x5a0d: b'\x11\xa5\xf3', + -0x5a0c: b'\x11\xa5\xf4', + -0x5a0b: b'\x11\xa5\xf5', + -0x5a0a: b'\x11\xa5\xf6', + -0x5a09: b'\x11\xa5\xf7', + -0x5a08: b'\x11\xa5\xf8', + -0x5a07: b'\x11\xa5\xf9', + -0x5a06: b'\x11\xa5\xfa', + -0x5a05: b'\x11\xa5\xfb', + -0x5a04: b'\x11\xa5\xfc', + -0x5a03: b'\x11\xa5\xfd', + -0x5a02: b'\x11\xa5\xfe', + -0x5a01: b'\x11\xa5\xff', + -0x5a00: b'\x11\xa6\x00', + -0x59ff: b'\x11\xa6\x01', + -0x59fe: b'\x11\xa6\x02', + -0x59fd: b'\x11\xa6\x03', + -0x59fc: b'\x11\xa6\x04', + -0x59fb: b'\x11\xa6\x05', + -0x59fa: b'\x11\xa6\x06', + -0x59f9: b'\x11\xa6\x07', + -0x59f8: b'\x11\xa6\x08', + -0x59f7: b'\x11\xa6\t', + -0x59f6: b'\x11\xa6\n', + -0x59f5: b'\x11\xa6\x0b', + -0x59f4: b'\x11\xa6\x0c', + -0x59f3: b'\x11\xa6\r', + -0x59f2: b'\x11\xa6\x0e', + -0x59f1: b'\x11\xa6\x0f', + -0x59f0: b'\x11\xa6\x10', + -0x59ef: b'\x11\xa6\x11', + -0x59ee: b'\x11\xa6\x12', + -0x59ed: b'\x11\xa6\x13', + -0x59ec: b'\x11\xa6\x14', + -0x59eb: b'\x11\xa6\x15', + -0x59ea: b'\x11\xa6\x16', + -0x59e9: b'\x11\xa6\x17', + -0x59e8: b'\x11\xa6\x18', + -0x59e7: b'\x11\xa6\x19', + -0x59e6: b'\x11\xa6\x1a', + -0x59e5: b'\x11\xa6\x1b', + -0x59e4: b'\x11\xa6\x1c', + -0x59e3: b'\x11\xa6\x1d', + -0x59e2: b'\x11\xa6\x1e', + -0x59e1: b'\x11\xa6\x1f', + -0x59e0: b'\x11\xa6 ', + -0x59df: b'\x11\xa6!', + -0x59de: b'\x11\xa6"', + -0x59dd: b'\x11\xa6#', + -0x59dc: b'\x11\xa6$', + -0x59db: b'\x11\xa6%', + -0x59da: b'\x11\xa6&', + -0x59d9: b"\x11\xa6'", + -0x59d8: b'\x11\xa6(', + -0x59d7: b'\x11\xa6)', + -0x59d6: b'\x11\xa6*', + -0x59d5: b'\x11\xa6+', + -0x59d4: b'\x11\xa6,', + -0x59d3: b'\x11\xa6-', + -0x59d2: b'\x11\xa6.', + -0x59d1: b'\x11\xa6/', + -0x59d0: b'\x11\xa60', + -0x59cf: b'\x11\xa61', + -0x59ce: b'\x11\xa62', + -0x59cd: b'\x11\xa63', + -0x59cc: b'\x11\xa64', + -0x59cb: b'\x11\xa65', + -0x59ca: b'\x11\xa66', + -0x59c9: b'\x11\xa67', + -0x59c8: b'\x11\xa68', + -0x59c7: b'\x11\xa69', + -0x59c6: b'\x11\xa6:', + -0x59c5: b'\x11\xa6;', + -0x59c4: b'\x11\xa6<', + -0x59c3: b'\x11\xa6=', + -0x59c2: b'\x11\xa6>', + -0x59c1: b'\x11\xa6?', + -0x59c0: b'\x11\xa6@', + -0x59bf: b'\x11\xa6A', + -0x59be: b'\x11\xa6B', + -0x59bd: b'\x11\xa6C', + -0x59bc: b'\x11\xa6D', + -0x59bb: b'\x11\xa6E', + -0x59ba: b'\x11\xa6F', + -0x59b9: b'\x11\xa6G', + -0x59b8: b'\x11\xa6H', + -0x59b7: b'\x11\xa6I', + -0x59b6: b'\x11\xa6J', + -0x59b5: b'\x11\xa6K', + -0x59b4: b'\x11\xa6L', + -0x59b3: b'\x11\xa6M', + -0x59b2: b'\x11\xa6N', + -0x59b1: b'\x11\xa6O', + -0x59b0: b'\x11\xa6P', + -0x59af: b'\x11\xa6Q', + -0x59ae: b'\x11\xa6R', + -0x59ad: b'\x11\xa6S', + -0x59ac: b'\x11\xa6T', + -0x59ab: b'\x11\xa6U', + -0x59aa: b'\x11\xa6V', + -0x59a9: b'\x11\xa6W', + -0x59a8: b'\x11\xa6X', + -0x59a7: b'\x11\xa6Y', + -0x59a6: b'\x11\xa6Z', + -0x59a5: b'\x11\xa6[', + -0x59a4: b'\x11\xa6\\', + -0x59a3: b'\x11\xa6]', + -0x59a2: b'\x11\xa6^', + -0x59a1: b'\x11\xa6_', + -0x59a0: b'\x11\xa6`', + -0x599f: b'\x11\xa6a', + -0x599e: b'\x11\xa6b', + -0x599d: b'\x11\xa6c', + -0x599c: b'\x11\xa6d', + -0x599b: b'\x11\xa6e', + -0x599a: b'\x11\xa6f', + -0x5999: b'\x11\xa6g', + -0x5998: b'\x11\xa6h', + -0x5997: b'\x11\xa6i', + -0x5996: b'\x11\xa6j', + -0x5995: b'\x11\xa6k', + -0x5994: b'\x11\xa6l', + -0x5993: b'\x11\xa6m', + -0x5992: b'\x11\xa6n', + -0x5991: b'\x11\xa6o', + -0x5990: b'\x11\xa6p', + -0x598f: b'\x11\xa6q', + -0x598e: b'\x11\xa6r', + -0x598d: b'\x11\xa6s', + -0x598c: b'\x11\xa6t', + -0x598b: b'\x11\xa6u', + -0x598a: b'\x11\xa6v', + -0x5989: b'\x11\xa6w', + -0x5988: b'\x11\xa6x', + -0x5987: b'\x11\xa6y', + -0x5986: b'\x11\xa6z', + -0x5985: b'\x11\xa6{', + -0x5984: b'\x11\xa6|', + -0x5983: b'\x11\xa6}', + -0x5982: b'\x11\xa6~', + -0x5981: b'\x11\xa6\x7f', + -0x5980: b'\x11\xa6\x80', + -0x597f: b'\x11\xa6\x81', + -0x597e: b'\x11\xa6\x82', + -0x597d: b'\x11\xa6\x83', + -0x597c: b'\x11\xa6\x84', + -0x597b: b'\x11\xa6\x85', + -0x597a: b'\x11\xa6\x86', + -0x5979: b'\x11\xa6\x87', + -0x5978: b'\x11\xa6\x88', + -0x5977: b'\x11\xa6\x89', + -0x5976: b'\x11\xa6\x8a', + -0x5975: b'\x11\xa6\x8b', + -0x5974: b'\x11\xa6\x8c', + -0x5973: b'\x11\xa6\x8d', + -0x5972: b'\x11\xa6\x8e', + -0x5971: b'\x11\xa6\x8f', + -0x5970: b'\x11\xa6\x90', + -0x596f: b'\x11\xa6\x91', + -0x596e: b'\x11\xa6\x92', + -0x596d: b'\x11\xa6\x93', + -0x596c: b'\x11\xa6\x94', + -0x596b: b'\x11\xa6\x95', + -0x596a: b'\x11\xa6\x96', + -0x5969: b'\x11\xa6\x97', + -0x5968: b'\x11\xa6\x98', + -0x5967: b'\x11\xa6\x99', + -0x5966: b'\x11\xa6\x9a', + -0x5965: b'\x11\xa6\x9b', + -0x5964: b'\x11\xa6\x9c', + -0x5963: b'\x11\xa6\x9d', + -0x5962: b'\x11\xa6\x9e', + -0x5961: b'\x11\xa6\x9f', + -0x5960: b'\x11\xa6\xa0', + -0x595f: b'\x11\xa6\xa1', + -0x595e: b'\x11\xa6\xa2', + -0x595d: b'\x11\xa6\xa3', + -0x595c: b'\x11\xa6\xa4', + -0x595b: b'\x11\xa6\xa5', + -0x595a: b'\x11\xa6\xa6', + -0x5959: b'\x11\xa6\xa7', + -0x5958: b'\x11\xa6\xa8', + -0x5957: b'\x11\xa6\xa9', + -0x5956: b'\x11\xa6\xaa', + -0x5955: b'\x11\xa6\xab', + -0x5954: b'\x11\xa6\xac', + -0x5953: b'\x11\xa6\xad', + -0x5952: b'\x11\xa6\xae', + -0x5951: b'\x11\xa6\xaf', + -0x5950: b'\x11\xa6\xb0', + -0x594f: b'\x11\xa6\xb1', + -0x594e: b'\x11\xa6\xb2', + -0x594d: b'\x11\xa6\xb3', + -0x594c: b'\x11\xa6\xb4', + -0x594b: b'\x11\xa6\xb5', + -0x594a: b'\x11\xa6\xb6', + -0x5949: b'\x11\xa6\xb7', + -0x5948: b'\x11\xa6\xb8', + -0x5947: b'\x11\xa6\xb9', + -0x5946: b'\x11\xa6\xba', + -0x5945: b'\x11\xa6\xbb', + -0x5944: b'\x11\xa6\xbc', + -0x5943: b'\x11\xa6\xbd', + -0x5942: b'\x11\xa6\xbe', + -0x5941: b'\x11\xa6\xbf', + -0x5940: b'\x11\xa6\xc0', + -0x593f: b'\x11\xa6\xc1', + -0x593e: b'\x11\xa6\xc2', + -0x593d: b'\x11\xa6\xc3', + -0x593c: b'\x11\xa6\xc4', + -0x593b: b'\x11\xa6\xc5', + -0x593a: b'\x11\xa6\xc6', + -0x5939: b'\x11\xa6\xc7', + -0x5938: b'\x11\xa6\xc8', + -0x5937: b'\x11\xa6\xc9', + -0x5936: b'\x11\xa6\xca', + -0x5935: b'\x11\xa6\xcb', + -0x5934: b'\x11\xa6\xcc', + -0x5933: b'\x11\xa6\xcd', + -0x5932: b'\x11\xa6\xce', + -0x5931: b'\x11\xa6\xcf', + -0x5930: b'\x11\xa6\xd0', + -0x592f: b'\x11\xa6\xd1', + -0x592e: b'\x11\xa6\xd2', + -0x592d: b'\x11\xa6\xd3', + -0x592c: b'\x11\xa6\xd4', + -0x592b: b'\x11\xa6\xd5', + -0x592a: b'\x11\xa6\xd6', + -0x5929: b'\x11\xa6\xd7', + -0x5928: b'\x11\xa6\xd8', + -0x5927: b'\x11\xa6\xd9', + -0x5926: b'\x11\xa6\xda', + -0x5925: b'\x11\xa6\xdb', + -0x5924: b'\x11\xa6\xdc', + -0x5923: b'\x11\xa6\xdd', + -0x5922: b'\x11\xa6\xde', + -0x5921: b'\x11\xa6\xdf', + -0x5920: b'\x11\xa6\xe0', + -0x591f: b'\x11\xa6\xe1', + -0x591e: b'\x11\xa6\xe2', + -0x591d: b'\x11\xa6\xe3', + -0x591c: b'\x11\xa6\xe4', + -0x591b: b'\x11\xa6\xe5', + -0x591a: b'\x11\xa6\xe6', + -0x5919: b'\x11\xa6\xe7', + -0x5918: b'\x11\xa6\xe8', + -0x5917: b'\x11\xa6\xe9', + -0x5916: b'\x11\xa6\xea', + -0x5915: b'\x11\xa6\xeb', + -0x5914: b'\x11\xa6\xec', + -0x5913: b'\x11\xa6\xed', + -0x5912: b'\x11\xa6\xee', + -0x5911: b'\x11\xa6\xef', + -0x5910: b'\x11\xa6\xf0', + -0x590f: b'\x11\xa6\xf1', + -0x590e: b'\x11\xa6\xf2', + -0x590d: b'\x11\xa6\xf3', + -0x590c: b'\x11\xa6\xf4', + -0x590b: b'\x11\xa6\xf5', + -0x590a: b'\x11\xa6\xf6', + -0x5909: b'\x11\xa6\xf7', + -0x5908: b'\x11\xa6\xf8', + -0x5907: b'\x11\xa6\xf9', + -0x5906: b'\x11\xa6\xfa', + -0x5905: b'\x11\xa6\xfb', + -0x5904: b'\x11\xa6\xfc', + -0x5903: b'\x11\xa6\xfd', + -0x5902: b'\x11\xa6\xfe', + -0x5901: b'\x11\xa6\xff', + -0x5900: b'\x11\xa7\x00', + -0x58ff: b'\x11\xa7\x01', + -0x58fe: b'\x11\xa7\x02', + -0x58fd: b'\x11\xa7\x03', + -0x58fc: b'\x11\xa7\x04', + -0x58fb: b'\x11\xa7\x05', + -0x58fa: b'\x11\xa7\x06', + -0x58f9: b'\x11\xa7\x07', + -0x58f8: b'\x11\xa7\x08', + -0x58f7: b'\x11\xa7\t', + -0x58f6: b'\x11\xa7\n', + -0x58f5: b'\x11\xa7\x0b', + -0x58f4: b'\x11\xa7\x0c', + -0x58f3: b'\x11\xa7\r', + -0x58f2: b'\x11\xa7\x0e', + -0x58f1: b'\x11\xa7\x0f', + -0x58f0: b'\x11\xa7\x10', + -0x58ef: b'\x11\xa7\x11', + -0x58ee: b'\x11\xa7\x12', + -0x58ed: b'\x11\xa7\x13', + -0x58ec: b'\x11\xa7\x14', + -0x58eb: b'\x11\xa7\x15', + -0x58ea: b'\x11\xa7\x16', + -0x58e9: b'\x11\xa7\x17', + -0x58e8: b'\x11\xa7\x18', + -0x58e7: b'\x11\xa7\x19', + -0x58e6: b'\x11\xa7\x1a', + -0x58e5: b'\x11\xa7\x1b', + -0x58e4: b'\x11\xa7\x1c', + -0x58e3: b'\x11\xa7\x1d', + -0x58e2: b'\x11\xa7\x1e', + -0x58e1: b'\x11\xa7\x1f', + -0x58e0: b'\x11\xa7 ', + -0x58df: b'\x11\xa7!', + -0x58de: b'\x11\xa7"', + -0x58dd: b'\x11\xa7#', + -0x58dc: b'\x11\xa7$', + -0x58db: b'\x11\xa7%', + -0x58da: b'\x11\xa7&', + -0x58d9: b"\x11\xa7'", + -0x58d8: b'\x11\xa7(', + -0x58d7: b'\x11\xa7)', + -0x58d6: b'\x11\xa7*', + -0x58d5: b'\x11\xa7+', + -0x58d4: b'\x11\xa7,', + -0x58d3: b'\x11\xa7-', + -0x58d2: b'\x11\xa7.', + -0x58d1: b'\x11\xa7/', + -0x58d0: b'\x11\xa70', + -0x58cf: b'\x11\xa71', + -0x58ce: b'\x11\xa72', + -0x58cd: b'\x11\xa73', + -0x58cc: b'\x11\xa74', + -0x58cb: b'\x11\xa75', + -0x58ca: b'\x11\xa76', + -0x58c9: b'\x11\xa77', + -0x58c8: b'\x11\xa78', + -0x58c7: b'\x11\xa79', + -0x58c6: b'\x11\xa7:', + -0x58c5: b'\x11\xa7;', + -0x58c4: b'\x11\xa7<', + -0x58c3: b'\x11\xa7=', + -0x58c2: b'\x11\xa7>', + -0x58c1: b'\x11\xa7?', + -0x58c0: b'\x11\xa7@', + -0x58bf: b'\x11\xa7A', + -0x58be: b'\x11\xa7B', + -0x58bd: b'\x11\xa7C', + -0x58bc: b'\x11\xa7D', + -0x58bb: b'\x11\xa7E', + -0x58ba: b'\x11\xa7F', + -0x58b9: b'\x11\xa7G', + -0x58b8: b'\x11\xa7H', + -0x58b7: b'\x11\xa7I', + -0x58b6: b'\x11\xa7J', + -0x58b5: b'\x11\xa7K', + -0x58b4: b'\x11\xa7L', + -0x58b3: b'\x11\xa7M', + -0x58b2: b'\x11\xa7N', + -0x58b1: b'\x11\xa7O', + -0x58b0: b'\x11\xa7P', + -0x58af: b'\x11\xa7Q', + -0x58ae: b'\x11\xa7R', + -0x58ad: b'\x11\xa7S', + -0x58ac: b'\x11\xa7T', + -0x58ab: b'\x11\xa7U', + -0x58aa: b'\x11\xa7V', + -0x58a9: b'\x11\xa7W', + -0x58a8: b'\x11\xa7X', + -0x58a7: b'\x11\xa7Y', + -0x58a6: b'\x11\xa7Z', + -0x58a5: b'\x11\xa7[', + -0x58a4: b'\x11\xa7\\', + -0x58a3: b'\x11\xa7]', + -0x58a2: b'\x11\xa7^', + -0x58a1: b'\x11\xa7_', + -0x58a0: b'\x11\xa7`', + -0x589f: b'\x11\xa7a', + -0x589e: b'\x11\xa7b', + -0x589d: b'\x11\xa7c', + -0x589c: b'\x11\xa7d', + -0x589b: b'\x11\xa7e', + -0x589a: b'\x11\xa7f', + -0x5899: b'\x11\xa7g', + -0x5898: b'\x11\xa7h', + -0x5897: b'\x11\xa7i', + -0x5896: b'\x11\xa7j', + -0x5895: b'\x11\xa7k', + -0x5894: b'\x11\xa7l', + -0x5893: b'\x11\xa7m', + -0x5892: b'\x11\xa7n', + -0x5891: b'\x11\xa7o', + -0x5890: b'\x11\xa7p', + -0x588f: b'\x11\xa7q', + -0x588e: b'\x11\xa7r', + -0x588d: b'\x11\xa7s', + -0x588c: b'\x11\xa7t', + -0x588b: b'\x11\xa7u', + -0x588a: b'\x11\xa7v', + -0x5889: b'\x11\xa7w', + -0x5888: b'\x11\xa7x', + -0x5887: b'\x11\xa7y', + -0x5886: b'\x11\xa7z', + -0x5885: b'\x11\xa7{', + -0x5884: b'\x11\xa7|', + -0x5883: b'\x11\xa7}', + -0x5882: b'\x11\xa7~', + -0x5881: b'\x11\xa7\x7f', + -0x5880: b'\x11\xa7\x80', + -0x587f: b'\x11\xa7\x81', + -0x587e: b'\x11\xa7\x82', + -0x587d: b'\x11\xa7\x83', + -0x587c: b'\x11\xa7\x84', + -0x587b: b'\x11\xa7\x85', + -0x587a: b'\x11\xa7\x86', + -0x5879: b'\x11\xa7\x87', + -0x5878: b'\x11\xa7\x88', + -0x5877: b'\x11\xa7\x89', + -0x5876: b'\x11\xa7\x8a', + -0x5875: b'\x11\xa7\x8b', + -0x5874: b'\x11\xa7\x8c', + -0x5873: b'\x11\xa7\x8d', + -0x5872: b'\x11\xa7\x8e', + -0x5871: b'\x11\xa7\x8f', + -0x5870: b'\x11\xa7\x90', + -0x586f: b'\x11\xa7\x91', + -0x586e: b'\x11\xa7\x92', + -0x586d: b'\x11\xa7\x93', + -0x586c: b'\x11\xa7\x94', + -0x586b: b'\x11\xa7\x95', + -0x586a: b'\x11\xa7\x96', + -0x5869: b'\x11\xa7\x97', + -0x5868: b'\x11\xa7\x98', + -0x5867: b'\x11\xa7\x99', + -0x5866: b'\x11\xa7\x9a', + -0x5865: b'\x11\xa7\x9b', + -0x5864: b'\x11\xa7\x9c', + -0x5863: b'\x11\xa7\x9d', + -0x5862: b'\x11\xa7\x9e', + -0x5861: b'\x11\xa7\x9f', + -0x5860: b'\x11\xa7\xa0', + -0x585f: b'\x11\xa7\xa1', + -0x585e: b'\x11\xa7\xa2', + -0x585d: b'\x11\xa7\xa3', + -0x585c: b'\x11\xa7\xa4', + -0x585b: b'\x11\xa7\xa5', + -0x585a: b'\x11\xa7\xa6', + -0x5859: b'\x11\xa7\xa7', + -0x5858: b'\x11\xa7\xa8', + -0x5857: b'\x11\xa7\xa9', + -0x5856: b'\x11\xa7\xaa', + -0x5855: b'\x11\xa7\xab', + -0x5854: b'\x11\xa7\xac', + -0x5853: b'\x11\xa7\xad', + -0x5852: b'\x11\xa7\xae', + -0x5851: b'\x11\xa7\xaf', + -0x5850: b'\x11\xa7\xb0', + -0x584f: b'\x11\xa7\xb1', + -0x584e: b'\x11\xa7\xb2', + -0x584d: b'\x11\xa7\xb3', + -0x584c: b'\x11\xa7\xb4', + -0x584b: b'\x11\xa7\xb5', + -0x584a: b'\x11\xa7\xb6', + -0x5849: b'\x11\xa7\xb7', + -0x5848: b'\x11\xa7\xb8', + -0x5847: b'\x11\xa7\xb9', + -0x5846: b'\x11\xa7\xba', + -0x5845: b'\x11\xa7\xbb', + -0x5844: b'\x11\xa7\xbc', + -0x5843: b'\x11\xa7\xbd', + -0x5842: b'\x11\xa7\xbe', + -0x5841: b'\x11\xa7\xbf', + -0x5840: b'\x11\xa7\xc0', + -0x583f: b'\x11\xa7\xc1', + -0x583e: b'\x11\xa7\xc2', + -0x583d: b'\x11\xa7\xc3', + -0x583c: b'\x11\xa7\xc4', + -0x583b: b'\x11\xa7\xc5', + -0x583a: b'\x11\xa7\xc6', + -0x5839: b'\x11\xa7\xc7', + -0x5838: b'\x11\xa7\xc8', + -0x5837: b'\x11\xa7\xc9', + -0x5836: b'\x11\xa7\xca', + -0x5835: b'\x11\xa7\xcb', + -0x5834: b'\x11\xa7\xcc', + -0x5833: b'\x11\xa7\xcd', + -0x5832: b'\x11\xa7\xce', + -0x5831: b'\x11\xa7\xcf', + -0x5830: b'\x11\xa7\xd0', + -0x582f: b'\x11\xa7\xd1', + -0x582e: b'\x11\xa7\xd2', + -0x582d: b'\x11\xa7\xd3', + -0x582c: b'\x11\xa7\xd4', + -0x582b: b'\x11\xa7\xd5', + -0x582a: b'\x11\xa7\xd6', + -0x5829: b'\x11\xa7\xd7', + -0x5828: b'\x11\xa7\xd8', + -0x5827: b'\x11\xa7\xd9', + -0x5826: b'\x11\xa7\xda', + -0x5825: b'\x11\xa7\xdb', + -0x5824: b'\x11\xa7\xdc', + -0x5823: b'\x11\xa7\xdd', + -0x5822: b'\x11\xa7\xde', + -0x5821: b'\x11\xa7\xdf', + -0x5820: b'\x11\xa7\xe0', + -0x581f: b'\x11\xa7\xe1', + -0x581e: b'\x11\xa7\xe2', + -0x581d: b'\x11\xa7\xe3', + -0x581c: b'\x11\xa7\xe4', + -0x581b: b'\x11\xa7\xe5', + -0x581a: b'\x11\xa7\xe6', + -0x5819: b'\x11\xa7\xe7', + -0x5818: b'\x11\xa7\xe8', + -0x5817: b'\x11\xa7\xe9', + -0x5816: b'\x11\xa7\xea', + -0x5815: b'\x11\xa7\xeb', + -0x5814: b'\x11\xa7\xec', + -0x5813: b'\x11\xa7\xed', + -0x5812: b'\x11\xa7\xee', + -0x5811: b'\x11\xa7\xef', + -0x5810: b'\x11\xa7\xf0', + -0x580f: b'\x11\xa7\xf1', + -0x580e: b'\x11\xa7\xf2', + -0x580d: b'\x11\xa7\xf3', + -0x580c: b'\x11\xa7\xf4', + -0x580b: b'\x11\xa7\xf5', + -0x580a: b'\x11\xa7\xf6', + -0x5809: b'\x11\xa7\xf7', + -0x5808: b'\x11\xa7\xf8', + -0x5807: b'\x11\xa7\xf9', + -0x5806: b'\x11\xa7\xfa', + -0x5805: b'\x11\xa7\xfb', + -0x5804: b'\x11\xa7\xfc', + -0x5803: b'\x11\xa7\xfd', + -0x5802: b'\x11\xa7\xfe', + -0x5801: b'\x11\xa7\xff', + -0x5800: b'\x11\xa8\x00', + -0x57ff: b'\x11\xa8\x01', + -0x57fe: b'\x11\xa8\x02', + -0x57fd: b'\x11\xa8\x03', + -0x57fc: b'\x11\xa8\x04', + -0x57fb: b'\x11\xa8\x05', + -0x57fa: b'\x11\xa8\x06', + -0x57f9: b'\x11\xa8\x07', + -0x57f8: b'\x11\xa8\x08', + -0x57f7: b'\x11\xa8\t', + -0x57f6: b'\x11\xa8\n', + -0x57f5: b'\x11\xa8\x0b', + -0x57f4: b'\x11\xa8\x0c', + -0x57f3: b'\x11\xa8\r', + -0x57f2: b'\x11\xa8\x0e', + -0x57f1: b'\x11\xa8\x0f', + -0x57f0: b'\x11\xa8\x10', + -0x57ef: b'\x11\xa8\x11', + -0x57ee: b'\x11\xa8\x12', + -0x57ed: b'\x11\xa8\x13', + -0x57ec: b'\x11\xa8\x14', + -0x57eb: b'\x11\xa8\x15', + -0x57ea: b'\x11\xa8\x16', + -0x57e9: b'\x11\xa8\x17', + -0x57e8: b'\x11\xa8\x18', + -0x57e7: b'\x11\xa8\x19', + -0x57e6: b'\x11\xa8\x1a', + -0x57e5: b'\x11\xa8\x1b', + -0x57e4: b'\x11\xa8\x1c', + -0x57e3: b'\x11\xa8\x1d', + -0x57e2: b'\x11\xa8\x1e', + -0x57e1: b'\x11\xa8\x1f', + -0x57e0: b'\x11\xa8 ', + -0x57df: b'\x11\xa8!', + -0x57de: b'\x11\xa8"', + -0x57dd: b'\x11\xa8#', + -0x57dc: b'\x11\xa8$', + -0x57db: b'\x11\xa8%', + -0x57da: b'\x11\xa8&', + -0x57d9: b"\x11\xa8'", + -0x57d8: b'\x11\xa8(', + -0x57d7: b'\x11\xa8)', + -0x57d6: b'\x11\xa8*', + -0x57d5: b'\x11\xa8+', + -0x57d4: b'\x11\xa8,', + -0x57d3: b'\x11\xa8-', + -0x57d2: b'\x11\xa8.', + -0x57d1: b'\x11\xa8/', + -0x57d0: b'\x11\xa80', + -0x57cf: b'\x11\xa81', + -0x57ce: b'\x11\xa82', + -0x57cd: b'\x11\xa83', + -0x57cc: b'\x11\xa84', + -0x57cb: b'\x11\xa85', + -0x57ca: b'\x11\xa86', + -0x57c9: b'\x11\xa87', + -0x57c8: b'\x11\xa88', + -0x57c7: b'\x11\xa89', + -0x57c6: b'\x11\xa8:', + -0x57c5: b'\x11\xa8;', + -0x57c4: b'\x11\xa8<', + -0x57c3: b'\x11\xa8=', + -0x57c2: b'\x11\xa8>', + -0x57c1: b'\x11\xa8?', + -0x57c0: b'\x11\xa8@', + -0x57bf: b'\x11\xa8A', + -0x57be: b'\x11\xa8B', + -0x57bd: b'\x11\xa8C', + -0x57bc: b'\x11\xa8D', + -0x57bb: b'\x11\xa8E', + -0x57ba: b'\x11\xa8F', + -0x57b9: b'\x11\xa8G', + -0x57b8: b'\x11\xa8H', + -0x57b7: b'\x11\xa8I', + -0x57b6: b'\x11\xa8J', + -0x57b5: b'\x11\xa8K', + -0x57b4: b'\x11\xa8L', + -0x57b3: b'\x11\xa8M', + -0x57b2: b'\x11\xa8N', + -0x57b1: b'\x11\xa8O', + -0x57b0: b'\x11\xa8P', + -0x57af: b'\x11\xa8Q', + -0x57ae: b'\x11\xa8R', + -0x57ad: b'\x11\xa8S', + -0x57ac: b'\x11\xa8T', + -0x57ab: b'\x11\xa8U', + -0x57aa: b'\x11\xa8V', + -0x57a9: b'\x11\xa8W', + -0x57a8: b'\x11\xa8X', + -0x57a7: b'\x11\xa8Y', + -0x57a6: b'\x11\xa8Z', + -0x57a5: b'\x11\xa8[', + -0x57a4: b'\x11\xa8\\', + -0x57a3: b'\x11\xa8]', + -0x57a2: b'\x11\xa8^', + -0x57a1: b'\x11\xa8_', + -0x57a0: b'\x11\xa8`', + -0x579f: b'\x11\xa8a', + -0x579e: b'\x11\xa8b', + -0x579d: b'\x11\xa8c', + -0x579c: b'\x11\xa8d', + -0x579b: b'\x11\xa8e', + -0x579a: b'\x11\xa8f', + -0x5799: b'\x11\xa8g', + -0x5798: b'\x11\xa8h', + -0x5797: b'\x11\xa8i', + -0x5796: b'\x11\xa8j', + -0x5795: b'\x11\xa8k', + -0x5794: b'\x11\xa8l', + -0x5793: b'\x11\xa8m', + -0x5792: b'\x11\xa8n', + -0x5791: b'\x11\xa8o', + -0x5790: b'\x11\xa8p', + -0x578f: b'\x11\xa8q', + -0x578e: b'\x11\xa8r', + -0x578d: b'\x11\xa8s', + -0x578c: b'\x11\xa8t', + -0x578b: b'\x11\xa8u', + -0x578a: b'\x11\xa8v', + -0x5789: b'\x11\xa8w', + -0x5788: b'\x11\xa8x', + -0x5787: b'\x11\xa8y', + -0x5786: b'\x11\xa8z', + -0x5785: b'\x11\xa8{', + -0x5784: b'\x11\xa8|', + -0x5783: b'\x11\xa8}', + -0x5782: b'\x11\xa8~', + -0x5781: b'\x11\xa8\x7f', + -0x5780: b'\x11\xa8\x80', + -0x577f: b'\x11\xa8\x81', + -0x577e: b'\x11\xa8\x82', + -0x577d: b'\x11\xa8\x83', + -0x577c: b'\x11\xa8\x84', + -0x577b: b'\x11\xa8\x85', + -0x577a: b'\x11\xa8\x86', + -0x5779: b'\x11\xa8\x87', + -0x5778: b'\x11\xa8\x88', + -0x5777: b'\x11\xa8\x89', + -0x5776: b'\x11\xa8\x8a', + -0x5775: b'\x11\xa8\x8b', + -0x5774: b'\x11\xa8\x8c', + -0x5773: b'\x11\xa8\x8d', + -0x5772: b'\x11\xa8\x8e', + -0x5771: b'\x11\xa8\x8f', + -0x5770: b'\x11\xa8\x90', + -0x576f: b'\x11\xa8\x91', + -0x576e: b'\x11\xa8\x92', + -0x576d: b'\x11\xa8\x93', + -0x576c: b'\x11\xa8\x94', + -0x576b: b'\x11\xa8\x95', + -0x576a: b'\x11\xa8\x96', + -0x5769: b'\x11\xa8\x97', + -0x5768: b'\x11\xa8\x98', + -0x5767: b'\x11\xa8\x99', + -0x5766: b'\x11\xa8\x9a', + -0x5765: b'\x11\xa8\x9b', + -0x5764: b'\x11\xa8\x9c', + -0x5763: b'\x11\xa8\x9d', + -0x5762: b'\x11\xa8\x9e', + -0x5761: b'\x11\xa8\x9f', + -0x5760: b'\x11\xa8\xa0', + -0x575f: b'\x11\xa8\xa1', + -0x575e: b'\x11\xa8\xa2', + -0x575d: b'\x11\xa8\xa3', + -0x575c: b'\x11\xa8\xa4', + -0x575b: b'\x11\xa8\xa5', + -0x575a: b'\x11\xa8\xa6', + -0x5759: b'\x11\xa8\xa7', + -0x5758: b'\x11\xa8\xa8', + -0x5757: b'\x11\xa8\xa9', + -0x5756: b'\x11\xa8\xaa', + -0x5755: b'\x11\xa8\xab', + -0x5754: b'\x11\xa8\xac', + -0x5753: b'\x11\xa8\xad', + -0x5752: b'\x11\xa8\xae', + -0x5751: b'\x11\xa8\xaf', + -0x5750: b'\x11\xa8\xb0', + -0x574f: b'\x11\xa8\xb1', + -0x574e: b'\x11\xa8\xb2', + -0x574d: b'\x11\xa8\xb3', + -0x574c: b'\x11\xa8\xb4', + -0x574b: b'\x11\xa8\xb5', + -0x574a: b'\x11\xa8\xb6', + -0x5749: b'\x11\xa8\xb7', + -0x5748: b'\x11\xa8\xb8', + -0x5747: b'\x11\xa8\xb9', + -0x5746: b'\x11\xa8\xba', + -0x5745: b'\x11\xa8\xbb', + -0x5744: b'\x11\xa8\xbc', + -0x5743: b'\x11\xa8\xbd', + -0x5742: b'\x11\xa8\xbe', + -0x5741: b'\x11\xa8\xbf', + -0x5740: b'\x11\xa8\xc0', + -0x573f: b'\x11\xa8\xc1', + -0x573e: b'\x11\xa8\xc2', + -0x573d: b'\x11\xa8\xc3', + -0x573c: b'\x11\xa8\xc4', + -0x573b: b'\x11\xa8\xc5', + -0x573a: b'\x11\xa8\xc6', + -0x5739: b'\x11\xa8\xc7', + -0x5738: b'\x11\xa8\xc8', + -0x5737: b'\x11\xa8\xc9', + -0x5736: b'\x11\xa8\xca', + -0x5735: b'\x11\xa8\xcb', + -0x5734: b'\x11\xa8\xcc', + -0x5733: b'\x11\xa8\xcd', + -0x5732: b'\x11\xa8\xce', + -0x5731: b'\x11\xa8\xcf', + -0x5730: b'\x11\xa8\xd0', + -0x572f: b'\x11\xa8\xd1', + -0x572e: b'\x11\xa8\xd2', + -0x572d: b'\x11\xa8\xd3', + -0x572c: b'\x11\xa8\xd4', + -0x572b: b'\x11\xa8\xd5', + -0x572a: b'\x11\xa8\xd6', + -0x5729: b'\x11\xa8\xd7', + -0x5728: b'\x11\xa8\xd8', + -0x5727: b'\x11\xa8\xd9', + -0x5726: b'\x11\xa8\xda', + -0x5725: b'\x11\xa8\xdb', + -0x5724: b'\x11\xa8\xdc', + -0x5723: b'\x11\xa8\xdd', + -0x5722: b'\x11\xa8\xde', + -0x5721: b'\x11\xa8\xdf', + -0x5720: b'\x11\xa8\xe0', + -0x571f: b'\x11\xa8\xe1', + -0x571e: b'\x11\xa8\xe2', + -0x571d: b'\x11\xa8\xe3', + -0x571c: b'\x11\xa8\xe4', + -0x571b: b'\x11\xa8\xe5', + -0x571a: b'\x11\xa8\xe6', + -0x5719: b'\x11\xa8\xe7', + -0x5718: b'\x11\xa8\xe8', + -0x5717: b'\x11\xa8\xe9', + -0x5716: b'\x11\xa8\xea', + -0x5715: b'\x11\xa8\xeb', + -0x5714: b'\x11\xa8\xec', + -0x5713: b'\x11\xa8\xed', + -0x5712: b'\x11\xa8\xee', + -0x5711: b'\x11\xa8\xef', + -0x5710: b'\x11\xa8\xf0', + -0x570f: b'\x11\xa8\xf1', + -0x570e: b'\x11\xa8\xf2', + -0x570d: b'\x11\xa8\xf3', + -0x570c: b'\x11\xa8\xf4', + -0x570b: b'\x11\xa8\xf5', + -0x570a: b'\x11\xa8\xf6', + -0x5709: b'\x11\xa8\xf7', + -0x5708: b'\x11\xa8\xf8', + -0x5707: b'\x11\xa8\xf9', + -0x5706: b'\x11\xa8\xfa', + -0x5705: b'\x11\xa8\xfb', + -0x5704: b'\x11\xa8\xfc', + -0x5703: b'\x11\xa8\xfd', + -0x5702: b'\x11\xa8\xfe', + -0x5701: b'\x11\xa8\xff', + -0x5700: b'\x11\xa9\x00', + -0x56ff: b'\x11\xa9\x01', + -0x56fe: b'\x11\xa9\x02', + -0x56fd: b'\x11\xa9\x03', + -0x56fc: b'\x11\xa9\x04', + -0x56fb: b'\x11\xa9\x05', + -0x56fa: b'\x11\xa9\x06', + -0x56f9: b'\x11\xa9\x07', + -0x56f8: b'\x11\xa9\x08', + -0x56f7: b'\x11\xa9\t', + -0x56f6: b'\x11\xa9\n', + -0x56f5: b'\x11\xa9\x0b', + -0x56f4: b'\x11\xa9\x0c', + -0x56f3: b'\x11\xa9\r', + -0x56f2: b'\x11\xa9\x0e', + -0x56f1: b'\x11\xa9\x0f', + -0x56f0: b'\x11\xa9\x10', + -0x56ef: b'\x11\xa9\x11', + -0x56ee: b'\x11\xa9\x12', + -0x56ed: b'\x11\xa9\x13', + -0x56ec: b'\x11\xa9\x14', + -0x56eb: b'\x11\xa9\x15', + -0x56ea: b'\x11\xa9\x16', + -0x56e9: b'\x11\xa9\x17', + -0x56e8: b'\x11\xa9\x18', + -0x56e7: b'\x11\xa9\x19', + -0x56e6: b'\x11\xa9\x1a', + -0x56e5: b'\x11\xa9\x1b', + -0x56e4: b'\x11\xa9\x1c', + -0x56e3: b'\x11\xa9\x1d', + -0x56e2: b'\x11\xa9\x1e', + -0x56e1: b'\x11\xa9\x1f', + -0x56e0: b'\x11\xa9 ', + -0x56df: b'\x11\xa9!', + -0x56de: b'\x11\xa9"', + -0x56dd: b'\x11\xa9#', + -0x56dc: b'\x11\xa9$', + -0x56db: b'\x11\xa9%', + -0x56da: b'\x11\xa9&', + -0x56d9: b"\x11\xa9'", + -0x56d8: b'\x11\xa9(', + -0x56d7: b'\x11\xa9)', + -0x56d6: b'\x11\xa9*', + -0x56d5: b'\x11\xa9+', + -0x56d4: b'\x11\xa9,', + -0x56d3: b'\x11\xa9-', + -0x56d2: b'\x11\xa9.', + -0x56d1: b'\x11\xa9/', + -0x56d0: b'\x11\xa90', + -0x56cf: b'\x11\xa91', + -0x56ce: b'\x11\xa92', + -0x56cd: b'\x11\xa93', + -0x56cc: b'\x11\xa94', + -0x56cb: b'\x11\xa95', + -0x56ca: b'\x11\xa96', + -0x56c9: b'\x11\xa97', + -0x56c8: b'\x11\xa98', + -0x56c7: b'\x11\xa99', + -0x56c6: b'\x11\xa9:', + -0x56c5: b'\x11\xa9;', + -0x56c4: b'\x11\xa9<', + -0x56c3: b'\x11\xa9=', + -0x56c2: b'\x11\xa9>', + -0x56c1: b'\x11\xa9?', + -0x56c0: b'\x11\xa9@', + -0x56bf: b'\x11\xa9A', + -0x56be: b'\x11\xa9B', + -0x56bd: b'\x11\xa9C', + -0x56bc: b'\x11\xa9D', + -0x56bb: b'\x11\xa9E', + -0x56ba: b'\x11\xa9F', + -0x56b9: b'\x11\xa9G', + -0x56b8: b'\x11\xa9H', + -0x56b7: b'\x11\xa9I', + -0x56b6: b'\x11\xa9J', + -0x56b5: b'\x11\xa9K', + -0x56b4: b'\x11\xa9L', + -0x56b3: b'\x11\xa9M', + -0x56b2: b'\x11\xa9N', + -0x56b1: b'\x11\xa9O', + -0x56b0: b'\x11\xa9P', + -0x56af: b'\x11\xa9Q', + -0x56ae: b'\x11\xa9R', + -0x56ad: b'\x11\xa9S', + -0x56ac: b'\x11\xa9T', + -0x56ab: b'\x11\xa9U', + -0x56aa: b'\x11\xa9V', + -0x56a9: b'\x11\xa9W', + -0x56a8: b'\x11\xa9X', + -0x56a7: b'\x11\xa9Y', + -0x56a6: b'\x11\xa9Z', + -0x56a5: b'\x11\xa9[', + -0x56a4: b'\x11\xa9\\', + -0x56a3: b'\x11\xa9]', + -0x56a2: b'\x11\xa9^', + -0x56a1: b'\x11\xa9_', + -0x56a0: b'\x11\xa9`', + -0x569f: b'\x11\xa9a', + -0x569e: b'\x11\xa9b', + -0x569d: b'\x11\xa9c', + -0x569c: b'\x11\xa9d', + -0x569b: b'\x11\xa9e', + -0x569a: b'\x11\xa9f', + -0x5699: b'\x11\xa9g', + -0x5698: b'\x11\xa9h', + -0x5697: b'\x11\xa9i', + -0x5696: b'\x11\xa9j', + -0x5695: b'\x11\xa9k', + -0x5694: b'\x11\xa9l', + -0x5693: b'\x11\xa9m', + -0x5692: b'\x11\xa9n', + -0x5691: b'\x11\xa9o', + -0x5690: b'\x11\xa9p', + -0x568f: b'\x11\xa9q', + -0x568e: b'\x11\xa9r', + -0x568d: b'\x11\xa9s', + -0x568c: b'\x11\xa9t', + -0x568b: b'\x11\xa9u', + -0x568a: b'\x11\xa9v', + -0x5689: b'\x11\xa9w', + -0x5688: b'\x11\xa9x', + -0x5687: b'\x11\xa9y', + -0x5686: b'\x11\xa9z', + -0x5685: b'\x11\xa9{', + -0x5684: b'\x11\xa9|', + -0x5683: b'\x11\xa9}', + -0x5682: b'\x11\xa9~', + -0x5681: b'\x11\xa9\x7f', + -0x5680: b'\x11\xa9\x80', + -0x567f: b'\x11\xa9\x81', + -0x567e: b'\x11\xa9\x82', + -0x567d: b'\x11\xa9\x83', + -0x567c: b'\x11\xa9\x84', + -0x567b: b'\x11\xa9\x85', + -0x567a: b'\x11\xa9\x86', + -0x5679: b'\x11\xa9\x87', + -0x5678: b'\x11\xa9\x88', + -0x5677: b'\x11\xa9\x89', + -0x5676: b'\x11\xa9\x8a', + -0x5675: b'\x11\xa9\x8b', + -0x5674: b'\x11\xa9\x8c', + -0x5673: b'\x11\xa9\x8d', + -0x5672: b'\x11\xa9\x8e', + -0x5671: b'\x11\xa9\x8f', + -0x5670: b'\x11\xa9\x90', + -0x566f: b'\x11\xa9\x91', + -0x566e: b'\x11\xa9\x92', + -0x566d: b'\x11\xa9\x93', + -0x566c: b'\x11\xa9\x94', + -0x566b: b'\x11\xa9\x95', + -0x566a: b'\x11\xa9\x96', + -0x5669: b'\x11\xa9\x97', + -0x5668: b'\x11\xa9\x98', + -0x5667: b'\x11\xa9\x99', + -0x5666: b'\x11\xa9\x9a', + -0x5665: b'\x11\xa9\x9b', + -0x5664: b'\x11\xa9\x9c', + -0x5663: b'\x11\xa9\x9d', + -0x5662: b'\x11\xa9\x9e', + -0x5661: b'\x11\xa9\x9f', + -0x5660: b'\x11\xa9\xa0', + -0x565f: b'\x11\xa9\xa1', + -0x565e: b'\x11\xa9\xa2', + -0x565d: b'\x11\xa9\xa3', + -0x565c: b'\x11\xa9\xa4', + -0x565b: b'\x11\xa9\xa5', + -0x565a: b'\x11\xa9\xa6', + -0x5659: b'\x11\xa9\xa7', + -0x5658: b'\x11\xa9\xa8', + -0x5657: b'\x11\xa9\xa9', + -0x5656: b'\x11\xa9\xaa', + -0x5655: b'\x11\xa9\xab', + -0x5654: b'\x11\xa9\xac', + -0x5653: b'\x11\xa9\xad', + -0x5652: b'\x11\xa9\xae', + -0x5651: b'\x11\xa9\xaf', + -0x5650: b'\x11\xa9\xb0', + -0x564f: b'\x11\xa9\xb1', + -0x564e: b'\x11\xa9\xb2', + -0x564d: b'\x11\xa9\xb3', + -0x564c: b'\x11\xa9\xb4', + -0x564b: b'\x11\xa9\xb5', + -0x564a: b'\x11\xa9\xb6', + -0x5649: b'\x11\xa9\xb7', + -0x5648: b'\x11\xa9\xb8', + -0x5647: b'\x11\xa9\xb9', + -0x5646: b'\x11\xa9\xba', + -0x5645: b'\x11\xa9\xbb', + -0x5644: b'\x11\xa9\xbc', + -0x5643: b'\x11\xa9\xbd', + -0x5642: b'\x11\xa9\xbe', + -0x5641: b'\x11\xa9\xbf', + -0x5640: b'\x11\xa9\xc0', + -0x563f: b'\x11\xa9\xc1', + -0x563e: b'\x11\xa9\xc2', + -0x563d: b'\x11\xa9\xc3', + -0x563c: b'\x11\xa9\xc4', + -0x563b: b'\x11\xa9\xc5', + -0x563a: b'\x11\xa9\xc6', + -0x5639: b'\x11\xa9\xc7', + -0x5638: b'\x11\xa9\xc8', + -0x5637: b'\x11\xa9\xc9', + -0x5636: b'\x11\xa9\xca', + -0x5635: b'\x11\xa9\xcb', + -0x5634: b'\x11\xa9\xcc', + -0x5633: b'\x11\xa9\xcd', + -0x5632: b'\x11\xa9\xce', + -0x5631: b'\x11\xa9\xcf', + -0x5630: b'\x11\xa9\xd0', + -0x562f: b'\x11\xa9\xd1', + -0x562e: b'\x11\xa9\xd2', + -0x562d: b'\x11\xa9\xd3', + -0x562c: b'\x11\xa9\xd4', + -0x562b: b'\x11\xa9\xd5', + -0x562a: b'\x11\xa9\xd6', + -0x5629: b'\x11\xa9\xd7', + -0x5628: b'\x11\xa9\xd8', + -0x5627: b'\x11\xa9\xd9', + -0x5626: b'\x11\xa9\xda', + -0x5625: b'\x11\xa9\xdb', + -0x5624: b'\x11\xa9\xdc', + -0x5623: b'\x11\xa9\xdd', + -0x5622: b'\x11\xa9\xde', + -0x5621: b'\x11\xa9\xdf', + -0x5620: b'\x11\xa9\xe0', + -0x561f: b'\x11\xa9\xe1', + -0x561e: b'\x11\xa9\xe2', + -0x561d: b'\x11\xa9\xe3', + -0x561c: b'\x11\xa9\xe4', + -0x561b: b'\x11\xa9\xe5', + -0x561a: b'\x11\xa9\xe6', + -0x5619: b'\x11\xa9\xe7', + -0x5618: b'\x11\xa9\xe8', + -0x5617: b'\x11\xa9\xe9', + -0x5616: b'\x11\xa9\xea', + -0x5615: b'\x11\xa9\xeb', + -0x5614: b'\x11\xa9\xec', + -0x5613: b'\x11\xa9\xed', + -0x5612: b'\x11\xa9\xee', + -0x5611: b'\x11\xa9\xef', + -0x5610: b'\x11\xa9\xf0', + -0x560f: b'\x11\xa9\xf1', + -0x560e: b'\x11\xa9\xf2', + -0x560d: b'\x11\xa9\xf3', + -0x560c: b'\x11\xa9\xf4', + -0x560b: b'\x11\xa9\xf5', + -0x560a: b'\x11\xa9\xf6', + -0x5609: b'\x11\xa9\xf7', + -0x5608: b'\x11\xa9\xf8', + -0x5607: b'\x11\xa9\xf9', + -0x5606: b'\x11\xa9\xfa', + -0x5605: b'\x11\xa9\xfb', + -0x5604: b'\x11\xa9\xfc', + -0x5603: b'\x11\xa9\xfd', + -0x5602: b'\x11\xa9\xfe', + -0x5601: b'\x11\xa9\xff', + -0x5600: b'\x11\xaa\x00', + -0x55ff: b'\x11\xaa\x01', + -0x55fe: b'\x11\xaa\x02', + -0x55fd: b'\x11\xaa\x03', + -0x55fc: b'\x11\xaa\x04', + -0x55fb: b'\x11\xaa\x05', + -0x55fa: b'\x11\xaa\x06', + -0x55f9: b'\x11\xaa\x07', + -0x55f8: b'\x11\xaa\x08', + -0x55f7: b'\x11\xaa\t', + -0x55f6: b'\x11\xaa\n', + -0x55f5: b'\x11\xaa\x0b', + -0x55f4: b'\x11\xaa\x0c', + -0x55f3: b'\x11\xaa\r', + -0x55f2: b'\x11\xaa\x0e', + -0x55f1: b'\x11\xaa\x0f', + -0x55f0: b'\x11\xaa\x10', + -0x55ef: b'\x11\xaa\x11', + -0x55ee: b'\x11\xaa\x12', + -0x55ed: b'\x11\xaa\x13', + -0x55ec: b'\x11\xaa\x14', + -0x55eb: b'\x11\xaa\x15', + -0x55ea: b'\x11\xaa\x16', + -0x55e9: b'\x11\xaa\x17', + -0x55e8: b'\x11\xaa\x18', + -0x55e7: b'\x11\xaa\x19', + -0x55e6: b'\x11\xaa\x1a', + -0x55e5: b'\x11\xaa\x1b', + -0x55e4: b'\x11\xaa\x1c', + -0x55e3: b'\x11\xaa\x1d', + -0x55e2: b'\x11\xaa\x1e', + -0x55e1: b'\x11\xaa\x1f', + -0x55e0: b'\x11\xaa ', + -0x55df: b'\x11\xaa!', + -0x55de: b'\x11\xaa"', + -0x55dd: b'\x11\xaa#', + -0x55dc: b'\x11\xaa$', + -0x55db: b'\x11\xaa%', + -0x55da: b'\x11\xaa&', + -0x55d9: b"\x11\xaa'", + -0x55d8: b'\x11\xaa(', + -0x55d7: b'\x11\xaa)', + -0x55d6: b'\x11\xaa*', + -0x55d5: b'\x11\xaa+', + -0x55d4: b'\x11\xaa,', + -0x55d3: b'\x11\xaa-', + -0x55d2: b'\x11\xaa.', + -0x55d1: b'\x11\xaa/', + -0x55d0: b'\x11\xaa0', + -0x55cf: b'\x11\xaa1', + -0x55ce: b'\x11\xaa2', + -0x55cd: b'\x11\xaa3', + -0x55cc: b'\x11\xaa4', + -0x55cb: b'\x11\xaa5', + -0x55ca: b'\x11\xaa6', + -0x55c9: b'\x11\xaa7', + -0x55c8: b'\x11\xaa8', + -0x55c7: b'\x11\xaa9', + -0x55c6: b'\x11\xaa:', + -0x55c5: b'\x11\xaa;', + -0x55c4: b'\x11\xaa<', + -0x55c3: b'\x11\xaa=', + -0x55c2: b'\x11\xaa>', + -0x55c1: b'\x11\xaa?', + -0x55c0: b'\x11\xaa@', + -0x55bf: b'\x11\xaaA', + -0x55be: b'\x11\xaaB', + -0x55bd: b'\x11\xaaC', + -0x55bc: b'\x11\xaaD', + -0x55bb: b'\x11\xaaE', + -0x55ba: b'\x11\xaaF', + -0x55b9: b'\x11\xaaG', + -0x55b8: b'\x11\xaaH', + -0x55b7: b'\x11\xaaI', + -0x55b6: b'\x11\xaaJ', + -0x55b5: b'\x11\xaaK', + -0x55b4: b'\x11\xaaL', + -0x55b3: b'\x11\xaaM', + -0x55b2: b'\x11\xaaN', + -0x55b1: b'\x11\xaaO', + -0x55b0: b'\x11\xaaP', + -0x55af: b'\x11\xaaQ', + -0x55ae: b'\x11\xaaR', + -0x55ad: b'\x11\xaaS', + -0x55ac: b'\x11\xaaT', + -0x55ab: b'\x11\xaaU', + -0x55aa: b'\x11\xaaV', + -0x55a9: b'\x11\xaaW', + -0x55a8: b'\x11\xaaX', + -0x55a7: b'\x11\xaaY', + -0x55a6: b'\x11\xaaZ', + -0x55a5: b'\x11\xaa[', + -0x55a4: b'\x11\xaa\\', + -0x55a3: b'\x11\xaa]', + -0x55a2: b'\x11\xaa^', + -0x55a1: b'\x11\xaa_', + -0x55a0: b'\x11\xaa`', + -0x559f: b'\x11\xaaa', + -0x559e: b'\x11\xaab', + -0x559d: b'\x11\xaac', + -0x559c: b'\x11\xaad', + -0x559b: b'\x11\xaae', + -0x559a: b'\x11\xaaf', + -0x5599: b'\x11\xaag', + -0x5598: b'\x11\xaah', + -0x5597: b'\x11\xaai', + -0x5596: b'\x11\xaaj', + -0x5595: b'\x11\xaak', + -0x5594: b'\x11\xaal', + -0x5593: b'\x11\xaam', + -0x5592: b'\x11\xaan', + -0x5591: b'\x11\xaao', + -0x5590: b'\x11\xaap', + -0x558f: b'\x11\xaaq', + -0x558e: b'\x11\xaar', + -0x558d: b'\x11\xaas', + -0x558c: b'\x11\xaat', + -0x558b: b'\x11\xaau', + -0x558a: b'\x11\xaav', + -0x5589: b'\x11\xaaw', + -0x5588: b'\x11\xaax', + -0x5587: b'\x11\xaay', + -0x5586: b'\x11\xaaz', + -0x5585: b'\x11\xaa{', + -0x5584: b'\x11\xaa|', + -0x5583: b'\x11\xaa}', + -0x5582: b'\x11\xaa~', + -0x5581: b'\x11\xaa\x7f', + -0x5580: b'\x11\xaa\x80', + -0x557f: b'\x11\xaa\x81', + -0x557e: b'\x11\xaa\x82', + -0x557d: b'\x11\xaa\x83', + -0x557c: b'\x11\xaa\x84', + -0x557b: b'\x11\xaa\x85', + -0x557a: b'\x11\xaa\x86', + -0x5579: b'\x11\xaa\x87', + -0x5578: b'\x11\xaa\x88', + -0x5577: b'\x11\xaa\x89', + -0x5576: b'\x11\xaa\x8a', + -0x5575: b'\x11\xaa\x8b', + -0x5574: b'\x11\xaa\x8c', + -0x5573: b'\x11\xaa\x8d', + -0x5572: b'\x11\xaa\x8e', + -0x5571: b'\x11\xaa\x8f', + -0x5570: b'\x11\xaa\x90', + -0x556f: b'\x11\xaa\x91', + -0x556e: b'\x11\xaa\x92', + -0x556d: b'\x11\xaa\x93', + -0x556c: b'\x11\xaa\x94', + -0x556b: b'\x11\xaa\x95', + -0x556a: b'\x11\xaa\x96', + -0x5569: b'\x11\xaa\x97', + -0x5568: b'\x11\xaa\x98', + -0x5567: b'\x11\xaa\x99', + -0x5566: b'\x11\xaa\x9a', + -0x5565: b'\x11\xaa\x9b', + -0x5564: b'\x11\xaa\x9c', + -0x5563: b'\x11\xaa\x9d', + -0x5562: b'\x11\xaa\x9e', + -0x5561: b'\x11\xaa\x9f', + -0x5560: b'\x11\xaa\xa0', + -0x555f: b'\x11\xaa\xa1', + -0x555e: b'\x11\xaa\xa2', + -0x555d: b'\x11\xaa\xa3', + -0x555c: b'\x11\xaa\xa4', + -0x555b: b'\x11\xaa\xa5', + -0x555a: b'\x11\xaa\xa6', + -0x5559: b'\x11\xaa\xa7', + -0x5558: b'\x11\xaa\xa8', + -0x5557: b'\x11\xaa\xa9', + -0x5556: b'\x11\xaa\xaa', + -0x5555: b'\x11\xaa\xab', + -0x5554: b'\x11\xaa\xac', + -0x5553: b'\x11\xaa\xad', + -0x5552: b'\x11\xaa\xae', + -0x5551: b'\x11\xaa\xaf', + -0x5550: b'\x11\xaa\xb0', + -0x554f: b'\x11\xaa\xb1', + -0x554e: b'\x11\xaa\xb2', + -0x554d: b'\x11\xaa\xb3', + -0x554c: b'\x11\xaa\xb4', + -0x554b: b'\x11\xaa\xb5', + -0x554a: b'\x11\xaa\xb6', + -0x5549: b'\x11\xaa\xb7', + -0x5548: b'\x11\xaa\xb8', + -0x5547: b'\x11\xaa\xb9', + -0x5546: b'\x11\xaa\xba', + -0x5545: b'\x11\xaa\xbb', + -0x5544: b'\x11\xaa\xbc', + -0x5543: b'\x11\xaa\xbd', + -0x5542: b'\x11\xaa\xbe', + -0x5541: b'\x11\xaa\xbf', + -0x5540: b'\x11\xaa\xc0', + -0x553f: b'\x11\xaa\xc1', + -0x553e: b'\x11\xaa\xc2', + -0x553d: b'\x11\xaa\xc3', + -0x553c: b'\x11\xaa\xc4', + -0x553b: b'\x11\xaa\xc5', + -0x553a: b'\x11\xaa\xc6', + -0x5539: b'\x11\xaa\xc7', + -0x5538: b'\x11\xaa\xc8', + -0x5537: b'\x11\xaa\xc9', + -0x5536: b'\x11\xaa\xca', + -0x5535: b'\x11\xaa\xcb', + -0x5534: b'\x11\xaa\xcc', + -0x5533: b'\x11\xaa\xcd', + -0x5532: b'\x11\xaa\xce', + -0x5531: b'\x11\xaa\xcf', + -0x5530: b'\x11\xaa\xd0', + -0x552f: b'\x11\xaa\xd1', + -0x552e: b'\x11\xaa\xd2', + -0x552d: b'\x11\xaa\xd3', + -0x552c: b'\x11\xaa\xd4', + -0x552b: b'\x11\xaa\xd5', + -0x552a: b'\x11\xaa\xd6', + -0x5529: b'\x11\xaa\xd7', + -0x5528: b'\x11\xaa\xd8', + -0x5527: b'\x11\xaa\xd9', + -0x5526: b'\x11\xaa\xda', + -0x5525: b'\x11\xaa\xdb', + -0x5524: b'\x11\xaa\xdc', + -0x5523: b'\x11\xaa\xdd', + -0x5522: b'\x11\xaa\xde', + -0x5521: b'\x11\xaa\xdf', + -0x5520: b'\x11\xaa\xe0', + -0x551f: b'\x11\xaa\xe1', + -0x551e: b'\x11\xaa\xe2', + -0x551d: b'\x11\xaa\xe3', + -0x551c: b'\x11\xaa\xe4', + -0x551b: b'\x11\xaa\xe5', + -0x551a: b'\x11\xaa\xe6', + -0x5519: b'\x11\xaa\xe7', + -0x5518: b'\x11\xaa\xe8', + -0x5517: b'\x11\xaa\xe9', + -0x5516: b'\x11\xaa\xea', + -0x5515: b'\x11\xaa\xeb', + -0x5514: b'\x11\xaa\xec', + -0x5513: b'\x11\xaa\xed', + -0x5512: b'\x11\xaa\xee', + -0x5511: b'\x11\xaa\xef', + -0x5510: b'\x11\xaa\xf0', + -0x550f: b'\x11\xaa\xf1', + -0x550e: b'\x11\xaa\xf2', + -0x550d: b'\x11\xaa\xf3', + -0x550c: b'\x11\xaa\xf4', + -0x550b: b'\x11\xaa\xf5', + -0x550a: b'\x11\xaa\xf6', + -0x5509: b'\x11\xaa\xf7', + -0x5508: b'\x11\xaa\xf8', + -0x5507: b'\x11\xaa\xf9', + -0x5506: b'\x11\xaa\xfa', + -0x5505: b'\x11\xaa\xfb', + -0x5504: b'\x11\xaa\xfc', + -0x5503: b'\x11\xaa\xfd', + -0x5502: b'\x11\xaa\xfe', + -0x5501: b'\x11\xaa\xff', + -0x5500: b'\x11\xab\x00', + -0x54ff: b'\x11\xab\x01', + -0x54fe: b'\x11\xab\x02', + -0x54fd: b'\x11\xab\x03', + -0x54fc: b'\x11\xab\x04', + -0x54fb: b'\x11\xab\x05', + -0x54fa: b'\x11\xab\x06', + -0x54f9: b'\x11\xab\x07', + -0x54f8: b'\x11\xab\x08', + -0x54f7: b'\x11\xab\t', + -0x54f6: b'\x11\xab\n', + -0x54f5: b'\x11\xab\x0b', + -0x54f4: b'\x11\xab\x0c', + -0x54f3: b'\x11\xab\r', + -0x54f2: b'\x11\xab\x0e', + -0x54f1: b'\x11\xab\x0f', + -0x54f0: b'\x11\xab\x10', + -0x54ef: b'\x11\xab\x11', + -0x54ee: b'\x11\xab\x12', + -0x54ed: b'\x11\xab\x13', + -0x54ec: b'\x11\xab\x14', + -0x54eb: b'\x11\xab\x15', + -0x54ea: b'\x11\xab\x16', + -0x54e9: b'\x11\xab\x17', + -0x54e8: b'\x11\xab\x18', + -0x54e7: b'\x11\xab\x19', + -0x54e6: b'\x11\xab\x1a', + -0x54e5: b'\x11\xab\x1b', + -0x54e4: b'\x11\xab\x1c', + -0x54e3: b'\x11\xab\x1d', + -0x54e2: b'\x11\xab\x1e', + -0x54e1: b'\x11\xab\x1f', + -0x54e0: b'\x11\xab ', + -0x54df: b'\x11\xab!', + -0x54de: b'\x11\xab"', + -0x54dd: b'\x11\xab#', + -0x54dc: b'\x11\xab$', + -0x54db: b'\x11\xab%', + -0x54da: b'\x11\xab&', + -0x54d9: b"\x11\xab'", + -0x54d8: b'\x11\xab(', + -0x54d7: b'\x11\xab)', + -0x54d6: b'\x11\xab*', + -0x54d5: b'\x11\xab+', + -0x54d4: b'\x11\xab,', + -0x54d3: b'\x11\xab-', + -0x54d2: b'\x11\xab.', + -0x54d1: b'\x11\xab/', + -0x54d0: b'\x11\xab0', + -0x54cf: b'\x11\xab1', + -0x54ce: b'\x11\xab2', + -0x54cd: b'\x11\xab3', + -0x54cc: b'\x11\xab4', + -0x54cb: b'\x11\xab5', + -0x54ca: b'\x11\xab6', + -0x54c9: b'\x11\xab7', + -0x54c8: b'\x11\xab8', + -0x54c7: b'\x11\xab9', + -0x54c6: b'\x11\xab:', + -0x54c5: b'\x11\xab;', + -0x54c4: b'\x11\xab<', + -0x54c3: b'\x11\xab=', + -0x54c2: b'\x11\xab>', + -0x54c1: b'\x11\xab?', + -0x54c0: b'\x11\xab@', + -0x54bf: b'\x11\xabA', + -0x54be: b'\x11\xabB', + -0x54bd: b'\x11\xabC', + -0x54bc: b'\x11\xabD', + -0x54bb: b'\x11\xabE', + -0x54ba: b'\x11\xabF', + -0x54b9: b'\x11\xabG', + -0x54b8: b'\x11\xabH', + -0x54b7: b'\x11\xabI', + -0x54b6: b'\x11\xabJ', + -0x54b5: b'\x11\xabK', + -0x54b4: b'\x11\xabL', + -0x54b3: b'\x11\xabM', + -0x54b2: b'\x11\xabN', + -0x54b1: b'\x11\xabO', + -0x54b0: b'\x11\xabP', + -0x54af: b'\x11\xabQ', + -0x54ae: b'\x11\xabR', + -0x54ad: b'\x11\xabS', + -0x54ac: b'\x11\xabT', + -0x54ab: b'\x11\xabU', + -0x54aa: b'\x11\xabV', + -0x54a9: b'\x11\xabW', + -0x54a8: b'\x11\xabX', + -0x54a7: b'\x11\xabY', + -0x54a6: b'\x11\xabZ', + -0x54a5: b'\x11\xab[', + -0x54a4: b'\x11\xab\\', + -0x54a3: b'\x11\xab]', + -0x54a2: b'\x11\xab^', + -0x54a1: b'\x11\xab_', + -0x54a0: b'\x11\xab`', + -0x549f: b'\x11\xaba', + -0x549e: b'\x11\xabb', + -0x549d: b'\x11\xabc', + -0x549c: b'\x11\xabd', + -0x549b: b'\x11\xabe', + -0x549a: b'\x11\xabf', + -0x5499: b'\x11\xabg', + -0x5498: b'\x11\xabh', + -0x5497: b'\x11\xabi', + -0x5496: b'\x11\xabj', + -0x5495: b'\x11\xabk', + -0x5494: b'\x11\xabl', + -0x5493: b'\x11\xabm', + -0x5492: b'\x11\xabn', + -0x5491: b'\x11\xabo', + -0x5490: b'\x11\xabp', + -0x548f: b'\x11\xabq', + -0x548e: b'\x11\xabr', + -0x548d: b'\x11\xabs', + -0x548c: b'\x11\xabt', + -0x548b: b'\x11\xabu', + -0x548a: b'\x11\xabv', + -0x5489: b'\x11\xabw', + -0x5488: b'\x11\xabx', + -0x5487: b'\x11\xaby', + -0x5486: b'\x11\xabz', + -0x5485: b'\x11\xab{', + -0x5484: b'\x11\xab|', + -0x5483: b'\x11\xab}', + -0x5482: b'\x11\xab~', + -0x5481: b'\x11\xab\x7f', + -0x5480: b'\x11\xab\x80', + -0x547f: b'\x11\xab\x81', + -0x547e: b'\x11\xab\x82', + -0x547d: b'\x11\xab\x83', + -0x547c: b'\x11\xab\x84', + -0x547b: b'\x11\xab\x85', + -0x547a: b'\x11\xab\x86', + -0x5479: b'\x11\xab\x87', + -0x5478: b'\x11\xab\x88', + -0x5477: b'\x11\xab\x89', + -0x5476: b'\x11\xab\x8a', + -0x5475: b'\x11\xab\x8b', + -0x5474: b'\x11\xab\x8c', + -0x5473: b'\x11\xab\x8d', + -0x5472: b'\x11\xab\x8e', + -0x5471: b'\x11\xab\x8f', + -0x5470: b'\x11\xab\x90', + -0x546f: b'\x11\xab\x91', + -0x546e: b'\x11\xab\x92', + -0x546d: b'\x11\xab\x93', + -0x546c: b'\x11\xab\x94', + -0x546b: b'\x11\xab\x95', + -0x546a: b'\x11\xab\x96', + -0x5469: b'\x11\xab\x97', + -0x5468: b'\x11\xab\x98', + -0x5467: b'\x11\xab\x99', + -0x5466: b'\x11\xab\x9a', + -0x5465: b'\x11\xab\x9b', + -0x5464: b'\x11\xab\x9c', + -0x5463: b'\x11\xab\x9d', + -0x5462: b'\x11\xab\x9e', + -0x5461: b'\x11\xab\x9f', + -0x5460: b'\x11\xab\xa0', + -0x545f: b'\x11\xab\xa1', + -0x545e: b'\x11\xab\xa2', + -0x545d: b'\x11\xab\xa3', + -0x545c: b'\x11\xab\xa4', + -0x545b: b'\x11\xab\xa5', + -0x545a: b'\x11\xab\xa6', + -0x5459: b'\x11\xab\xa7', + -0x5458: b'\x11\xab\xa8', + -0x5457: b'\x11\xab\xa9', + -0x5456: b'\x11\xab\xaa', + -0x5455: b'\x11\xab\xab', + -0x5454: b'\x11\xab\xac', + -0x5453: b'\x11\xab\xad', + -0x5452: b'\x11\xab\xae', + -0x5451: b'\x11\xab\xaf', + -0x5450: b'\x11\xab\xb0', + -0x544f: b'\x11\xab\xb1', + -0x544e: b'\x11\xab\xb2', + -0x544d: b'\x11\xab\xb3', + -0x544c: b'\x11\xab\xb4', + -0x544b: b'\x11\xab\xb5', + -0x544a: b'\x11\xab\xb6', + -0x5449: b'\x11\xab\xb7', + -0x5448: b'\x11\xab\xb8', + -0x5447: b'\x11\xab\xb9', + -0x5446: b'\x11\xab\xba', + -0x5445: b'\x11\xab\xbb', + -0x5444: b'\x11\xab\xbc', + -0x5443: b'\x11\xab\xbd', + -0x5442: b'\x11\xab\xbe', + -0x5441: b'\x11\xab\xbf', + -0x5440: b'\x11\xab\xc0', + -0x543f: b'\x11\xab\xc1', + -0x543e: b'\x11\xab\xc2', + -0x543d: b'\x11\xab\xc3', + -0x543c: b'\x11\xab\xc4', + -0x543b: b'\x11\xab\xc5', + -0x543a: b'\x11\xab\xc6', + -0x5439: b'\x11\xab\xc7', + -0x5438: b'\x11\xab\xc8', + -0x5437: b'\x11\xab\xc9', + -0x5436: b'\x11\xab\xca', + -0x5435: b'\x11\xab\xcb', + -0x5434: b'\x11\xab\xcc', + -0x5433: b'\x11\xab\xcd', + -0x5432: b'\x11\xab\xce', + -0x5431: b'\x11\xab\xcf', + -0x5430: b'\x11\xab\xd0', + -0x542f: b'\x11\xab\xd1', + -0x542e: b'\x11\xab\xd2', + -0x542d: b'\x11\xab\xd3', + -0x542c: b'\x11\xab\xd4', + -0x542b: b'\x11\xab\xd5', + -0x542a: b'\x11\xab\xd6', + -0x5429: b'\x11\xab\xd7', + -0x5428: b'\x11\xab\xd8', + -0x5427: b'\x11\xab\xd9', + -0x5426: b'\x11\xab\xda', + -0x5425: b'\x11\xab\xdb', + -0x5424: b'\x11\xab\xdc', + -0x5423: b'\x11\xab\xdd', + -0x5422: b'\x11\xab\xde', + -0x5421: b'\x11\xab\xdf', + -0x5420: b'\x11\xab\xe0', + -0x541f: b'\x11\xab\xe1', + -0x541e: b'\x11\xab\xe2', + -0x541d: b'\x11\xab\xe3', + -0x541c: b'\x11\xab\xe4', + -0x541b: b'\x11\xab\xe5', + -0x541a: b'\x11\xab\xe6', + -0x5419: b'\x11\xab\xe7', + -0x5418: b'\x11\xab\xe8', + -0x5417: b'\x11\xab\xe9', + -0x5416: b'\x11\xab\xea', + -0x5415: b'\x11\xab\xeb', + -0x5414: b'\x11\xab\xec', + -0x5413: b'\x11\xab\xed', + -0x5412: b'\x11\xab\xee', + -0x5411: b'\x11\xab\xef', + -0x5410: b'\x11\xab\xf0', + -0x540f: b'\x11\xab\xf1', + -0x540e: b'\x11\xab\xf2', + -0x540d: b'\x11\xab\xf3', + -0x540c: b'\x11\xab\xf4', + -0x540b: b'\x11\xab\xf5', + -0x540a: b'\x11\xab\xf6', + -0x5409: b'\x11\xab\xf7', + -0x5408: b'\x11\xab\xf8', + -0x5407: b'\x11\xab\xf9', + -0x5406: b'\x11\xab\xfa', + -0x5405: b'\x11\xab\xfb', + -0x5404: b'\x11\xab\xfc', + -0x5403: b'\x11\xab\xfd', + -0x5402: b'\x11\xab\xfe', + -0x5401: b'\x11\xab\xff', + -0x5400: b'\x11\xac\x00', + -0x53ff: b'\x11\xac\x01', + -0x53fe: b'\x11\xac\x02', + -0x53fd: b'\x11\xac\x03', + -0x53fc: b'\x11\xac\x04', + -0x53fb: b'\x11\xac\x05', + -0x53fa: b'\x11\xac\x06', + -0x53f9: b'\x11\xac\x07', + -0x53f8: b'\x11\xac\x08', + -0x53f7: b'\x11\xac\t', + -0x53f6: b'\x11\xac\n', + -0x53f5: b'\x11\xac\x0b', + -0x53f4: b'\x11\xac\x0c', + -0x53f3: b'\x11\xac\r', + -0x53f2: b'\x11\xac\x0e', + -0x53f1: b'\x11\xac\x0f', + -0x53f0: b'\x11\xac\x10', + -0x53ef: b'\x11\xac\x11', + -0x53ee: b'\x11\xac\x12', + -0x53ed: b'\x11\xac\x13', + -0x53ec: b'\x11\xac\x14', + -0x53eb: b'\x11\xac\x15', + -0x53ea: b'\x11\xac\x16', + -0x53e9: b'\x11\xac\x17', + -0x53e8: b'\x11\xac\x18', + -0x53e7: b'\x11\xac\x19', + -0x53e6: b'\x11\xac\x1a', + -0x53e5: b'\x11\xac\x1b', + -0x53e4: b'\x11\xac\x1c', + -0x53e3: b'\x11\xac\x1d', + -0x53e2: b'\x11\xac\x1e', + -0x53e1: b'\x11\xac\x1f', + -0x53e0: b'\x11\xac ', + -0x53df: b'\x11\xac!', + -0x53de: b'\x11\xac"', + -0x53dd: b'\x11\xac#', + -0x53dc: b'\x11\xac$', + -0x53db: b'\x11\xac%', + -0x53da: b'\x11\xac&', + -0x53d9: b"\x11\xac'", + -0x53d8: b'\x11\xac(', + -0x53d7: b'\x11\xac)', + -0x53d6: b'\x11\xac*', + -0x53d5: b'\x11\xac+', + -0x53d4: b'\x11\xac,', + -0x53d3: b'\x11\xac-', + -0x53d2: b'\x11\xac.', + -0x53d1: b'\x11\xac/', + -0x53d0: b'\x11\xac0', + -0x53cf: b'\x11\xac1', + -0x53ce: b'\x11\xac2', + -0x53cd: b'\x11\xac3', + -0x53cc: b'\x11\xac4', + -0x53cb: b'\x11\xac5', + -0x53ca: b'\x11\xac6', + -0x53c9: b'\x11\xac7', + -0x53c8: b'\x11\xac8', + -0x53c7: b'\x11\xac9', + -0x53c6: b'\x11\xac:', + -0x53c5: b'\x11\xac;', + -0x53c4: b'\x11\xac<', + -0x53c3: b'\x11\xac=', + -0x53c2: b'\x11\xac>', + -0x53c1: b'\x11\xac?', + -0x53c0: b'\x11\xac@', + -0x53bf: b'\x11\xacA', + -0x53be: b'\x11\xacB', + -0x53bd: b'\x11\xacC', + -0x53bc: b'\x11\xacD', + -0x53bb: b'\x11\xacE', + -0x53ba: b'\x11\xacF', + -0x53b9: b'\x11\xacG', + -0x53b8: b'\x11\xacH', + -0x53b7: b'\x11\xacI', + -0x53b6: b'\x11\xacJ', + -0x53b5: b'\x11\xacK', + -0x53b4: b'\x11\xacL', + -0x53b3: b'\x11\xacM', + -0x53b2: b'\x11\xacN', + -0x53b1: b'\x11\xacO', + -0x53b0: b'\x11\xacP', + -0x53af: b'\x11\xacQ', + -0x53ae: b'\x11\xacR', + -0x53ad: b'\x11\xacS', + -0x53ac: b'\x11\xacT', + -0x53ab: b'\x11\xacU', + -0x53aa: b'\x11\xacV', + -0x53a9: b'\x11\xacW', + -0x53a8: b'\x11\xacX', + -0x53a7: b'\x11\xacY', + -0x53a6: b'\x11\xacZ', + -0x53a5: b'\x11\xac[', + -0x53a4: b'\x11\xac\\', + -0x53a3: b'\x11\xac]', + -0x53a2: b'\x11\xac^', + -0x53a1: b'\x11\xac_', + -0x53a0: b'\x11\xac`', + -0x539f: b'\x11\xaca', + -0x539e: b'\x11\xacb', + -0x539d: b'\x11\xacc', + -0x539c: b'\x11\xacd', + -0x539b: b'\x11\xace', + -0x539a: b'\x11\xacf', + -0x5399: b'\x11\xacg', + -0x5398: b'\x11\xach', + -0x5397: b'\x11\xaci', + -0x5396: b'\x11\xacj', + -0x5395: b'\x11\xack', + -0x5394: b'\x11\xacl', + -0x5393: b'\x11\xacm', + -0x5392: b'\x11\xacn', + -0x5391: b'\x11\xaco', + -0x5390: b'\x11\xacp', + -0x538f: b'\x11\xacq', + -0x538e: b'\x11\xacr', + -0x538d: b'\x11\xacs', + -0x538c: b'\x11\xact', + -0x538b: b'\x11\xacu', + -0x538a: b'\x11\xacv', + -0x5389: b'\x11\xacw', + -0x5388: b'\x11\xacx', + -0x5387: b'\x11\xacy', + -0x5386: b'\x11\xacz', + -0x5385: b'\x11\xac{', + -0x5384: b'\x11\xac|', + -0x5383: b'\x11\xac}', + -0x5382: b'\x11\xac~', + -0x5381: b'\x11\xac\x7f', + -0x5380: b'\x11\xac\x80', + -0x537f: b'\x11\xac\x81', + -0x537e: b'\x11\xac\x82', + -0x537d: b'\x11\xac\x83', + -0x537c: b'\x11\xac\x84', + -0x537b: b'\x11\xac\x85', + -0x537a: b'\x11\xac\x86', + -0x5379: b'\x11\xac\x87', + -0x5378: b'\x11\xac\x88', + -0x5377: b'\x11\xac\x89', + -0x5376: b'\x11\xac\x8a', + -0x5375: b'\x11\xac\x8b', + -0x5374: b'\x11\xac\x8c', + -0x5373: b'\x11\xac\x8d', + -0x5372: b'\x11\xac\x8e', + -0x5371: b'\x11\xac\x8f', + -0x5370: b'\x11\xac\x90', + -0x536f: b'\x11\xac\x91', + -0x536e: b'\x11\xac\x92', + -0x536d: b'\x11\xac\x93', + -0x536c: b'\x11\xac\x94', + -0x536b: b'\x11\xac\x95', + -0x536a: b'\x11\xac\x96', + -0x5369: b'\x11\xac\x97', + -0x5368: b'\x11\xac\x98', + -0x5367: b'\x11\xac\x99', + -0x5366: b'\x11\xac\x9a', + -0x5365: b'\x11\xac\x9b', + -0x5364: b'\x11\xac\x9c', + -0x5363: b'\x11\xac\x9d', + -0x5362: b'\x11\xac\x9e', + -0x5361: b'\x11\xac\x9f', + -0x5360: b'\x11\xac\xa0', + -0x535f: b'\x11\xac\xa1', + -0x535e: b'\x11\xac\xa2', + -0x535d: b'\x11\xac\xa3', + -0x535c: b'\x11\xac\xa4', + -0x535b: b'\x11\xac\xa5', + -0x535a: b'\x11\xac\xa6', + -0x5359: b'\x11\xac\xa7', + -0x5358: b'\x11\xac\xa8', + -0x5357: b'\x11\xac\xa9', + -0x5356: b'\x11\xac\xaa', + -0x5355: b'\x11\xac\xab', + -0x5354: b'\x11\xac\xac', + -0x5353: b'\x11\xac\xad', + -0x5352: b'\x11\xac\xae', + -0x5351: b'\x11\xac\xaf', + -0x5350: b'\x11\xac\xb0', + -0x534f: b'\x11\xac\xb1', + -0x534e: b'\x11\xac\xb2', + -0x534d: b'\x11\xac\xb3', + -0x534c: b'\x11\xac\xb4', + -0x534b: b'\x11\xac\xb5', + -0x534a: b'\x11\xac\xb6', + -0x5349: b'\x11\xac\xb7', + -0x5348: b'\x11\xac\xb8', + -0x5347: b'\x11\xac\xb9', + -0x5346: b'\x11\xac\xba', + -0x5345: b'\x11\xac\xbb', + -0x5344: b'\x11\xac\xbc', + -0x5343: b'\x11\xac\xbd', + -0x5342: b'\x11\xac\xbe', + -0x5341: b'\x11\xac\xbf', + -0x5340: b'\x11\xac\xc0', + -0x533f: b'\x11\xac\xc1', + -0x533e: b'\x11\xac\xc2', + -0x533d: b'\x11\xac\xc3', + -0x533c: b'\x11\xac\xc4', + -0x533b: b'\x11\xac\xc5', + -0x533a: b'\x11\xac\xc6', + -0x5339: b'\x11\xac\xc7', + -0x5338: b'\x11\xac\xc8', + -0x5337: b'\x11\xac\xc9', + -0x5336: b'\x11\xac\xca', + -0x5335: b'\x11\xac\xcb', + -0x5334: b'\x11\xac\xcc', + -0x5333: b'\x11\xac\xcd', + -0x5332: b'\x11\xac\xce', + -0x5331: b'\x11\xac\xcf', + -0x5330: b'\x11\xac\xd0', + -0x532f: b'\x11\xac\xd1', + -0x532e: b'\x11\xac\xd2', + -0x532d: b'\x11\xac\xd3', + -0x532c: b'\x11\xac\xd4', + -0x532b: b'\x11\xac\xd5', + -0x532a: b'\x11\xac\xd6', + -0x5329: b'\x11\xac\xd7', + -0x5328: b'\x11\xac\xd8', + -0x5327: b'\x11\xac\xd9', + -0x5326: b'\x11\xac\xda', + -0x5325: b'\x11\xac\xdb', + -0x5324: b'\x11\xac\xdc', + -0x5323: b'\x11\xac\xdd', + -0x5322: b'\x11\xac\xde', + -0x5321: b'\x11\xac\xdf', + -0x5320: b'\x11\xac\xe0', + -0x531f: b'\x11\xac\xe1', + -0x531e: b'\x11\xac\xe2', + -0x531d: b'\x11\xac\xe3', + -0x531c: b'\x11\xac\xe4', + -0x531b: b'\x11\xac\xe5', + -0x531a: b'\x11\xac\xe6', + -0x5319: b'\x11\xac\xe7', + -0x5318: b'\x11\xac\xe8', + -0x5317: b'\x11\xac\xe9', + -0x5316: b'\x11\xac\xea', + -0x5315: b'\x11\xac\xeb', + -0x5314: b'\x11\xac\xec', + -0x5313: b'\x11\xac\xed', + -0x5312: b'\x11\xac\xee', + -0x5311: b'\x11\xac\xef', + -0x5310: b'\x11\xac\xf0', + -0x530f: b'\x11\xac\xf1', + -0x530e: b'\x11\xac\xf2', + -0x530d: b'\x11\xac\xf3', + -0x530c: b'\x11\xac\xf4', + -0x530b: b'\x11\xac\xf5', + -0x530a: b'\x11\xac\xf6', + -0x5309: b'\x11\xac\xf7', + -0x5308: b'\x11\xac\xf8', + -0x5307: b'\x11\xac\xf9', + -0x5306: b'\x11\xac\xfa', + -0x5305: b'\x11\xac\xfb', + -0x5304: b'\x11\xac\xfc', + -0x5303: b'\x11\xac\xfd', + -0x5302: b'\x11\xac\xfe', + -0x5301: b'\x11\xac\xff', + -0x5300: b'\x11\xad\x00', + -0x52ff: b'\x11\xad\x01', + -0x52fe: b'\x11\xad\x02', + -0x52fd: b'\x11\xad\x03', + -0x52fc: b'\x11\xad\x04', + -0x52fb: b'\x11\xad\x05', + -0x52fa: b'\x11\xad\x06', + -0x52f9: b'\x11\xad\x07', + -0x52f8: b'\x11\xad\x08', + -0x52f7: b'\x11\xad\t', + -0x52f6: b'\x11\xad\n', + -0x52f5: b'\x11\xad\x0b', + -0x52f4: b'\x11\xad\x0c', + -0x52f3: b'\x11\xad\r', + -0x52f2: b'\x11\xad\x0e', + -0x52f1: b'\x11\xad\x0f', + -0x52f0: b'\x11\xad\x10', + -0x52ef: b'\x11\xad\x11', + -0x52ee: b'\x11\xad\x12', + -0x52ed: b'\x11\xad\x13', + -0x52ec: b'\x11\xad\x14', + -0x52eb: b'\x11\xad\x15', + -0x52ea: b'\x11\xad\x16', + -0x52e9: b'\x11\xad\x17', + -0x52e8: b'\x11\xad\x18', + -0x52e7: b'\x11\xad\x19', + -0x52e6: b'\x11\xad\x1a', + -0x52e5: b'\x11\xad\x1b', + -0x52e4: b'\x11\xad\x1c', + -0x52e3: b'\x11\xad\x1d', + -0x52e2: b'\x11\xad\x1e', + -0x52e1: b'\x11\xad\x1f', + -0x52e0: b'\x11\xad ', + -0x52df: b'\x11\xad!', + -0x52de: b'\x11\xad"', + -0x52dd: b'\x11\xad#', + -0x52dc: b'\x11\xad$', + -0x52db: b'\x11\xad%', + -0x52da: b'\x11\xad&', + -0x52d9: b"\x11\xad'", + -0x52d8: b'\x11\xad(', + -0x52d7: b'\x11\xad)', + -0x52d6: b'\x11\xad*', + -0x52d5: b'\x11\xad+', + -0x52d4: b'\x11\xad,', + -0x52d3: b'\x11\xad-', + -0x52d2: b'\x11\xad.', + -0x52d1: b'\x11\xad/', + -0x52d0: b'\x11\xad0', + -0x52cf: b'\x11\xad1', + -0x52ce: b'\x11\xad2', + -0x52cd: b'\x11\xad3', + -0x52cc: b'\x11\xad4', + -0x52cb: b'\x11\xad5', + -0x52ca: b'\x11\xad6', + -0x52c9: b'\x11\xad7', + -0x52c8: b'\x11\xad8', + -0x52c7: b'\x11\xad9', + -0x52c6: b'\x11\xad:', + -0x52c5: b'\x11\xad;', + -0x52c4: b'\x11\xad<', + -0x52c3: b'\x11\xad=', + -0x52c2: b'\x11\xad>', + -0x52c1: b'\x11\xad?', + -0x52c0: b'\x11\xad@', + -0x52bf: b'\x11\xadA', + -0x52be: b'\x11\xadB', + -0x52bd: b'\x11\xadC', + -0x52bc: b'\x11\xadD', + -0x52bb: b'\x11\xadE', + -0x52ba: b'\x11\xadF', + -0x52b9: b'\x11\xadG', + -0x52b8: b'\x11\xadH', + -0x52b7: b'\x11\xadI', + -0x52b6: b'\x11\xadJ', + -0x52b5: b'\x11\xadK', + -0x52b4: b'\x11\xadL', + -0x52b3: b'\x11\xadM', + -0x52b2: b'\x11\xadN', + -0x52b1: b'\x11\xadO', + -0x52b0: b'\x11\xadP', + -0x52af: b'\x11\xadQ', + -0x52ae: b'\x11\xadR', + -0x52ad: b'\x11\xadS', + -0x52ac: b'\x11\xadT', + -0x52ab: b'\x11\xadU', + -0x52aa: b'\x11\xadV', + -0x52a9: b'\x11\xadW', + -0x52a8: b'\x11\xadX', + -0x52a7: b'\x11\xadY', + -0x52a6: b'\x11\xadZ', + -0x52a5: b'\x11\xad[', + -0x52a4: b'\x11\xad\\', + -0x52a3: b'\x11\xad]', + -0x52a2: b'\x11\xad^', + -0x52a1: b'\x11\xad_', + -0x52a0: b'\x11\xad`', + -0x529f: b'\x11\xada', + -0x529e: b'\x11\xadb', + -0x529d: b'\x11\xadc', + -0x529c: b'\x11\xadd', + -0x529b: b'\x11\xade', + -0x529a: b'\x11\xadf', + -0x5299: b'\x11\xadg', + -0x5298: b'\x11\xadh', + -0x5297: b'\x11\xadi', + -0x5296: b'\x11\xadj', + -0x5295: b'\x11\xadk', + -0x5294: b'\x11\xadl', + -0x5293: b'\x11\xadm', + -0x5292: b'\x11\xadn', + -0x5291: b'\x11\xado', + -0x5290: b'\x11\xadp', + -0x528f: b'\x11\xadq', + -0x528e: b'\x11\xadr', + -0x528d: b'\x11\xads', + -0x528c: b'\x11\xadt', + -0x528b: b'\x11\xadu', + -0x528a: b'\x11\xadv', + -0x5289: b'\x11\xadw', + -0x5288: b'\x11\xadx', + -0x5287: b'\x11\xady', + -0x5286: b'\x11\xadz', + -0x5285: b'\x11\xad{', + -0x5284: b'\x11\xad|', + -0x5283: b'\x11\xad}', + -0x5282: b'\x11\xad~', + -0x5281: b'\x11\xad\x7f', + -0x5280: b'\x11\xad\x80', + -0x527f: b'\x11\xad\x81', + -0x527e: b'\x11\xad\x82', + -0x527d: b'\x11\xad\x83', + -0x527c: b'\x11\xad\x84', + -0x527b: b'\x11\xad\x85', + -0x527a: b'\x11\xad\x86', + -0x5279: b'\x11\xad\x87', + -0x5278: b'\x11\xad\x88', + -0x5277: b'\x11\xad\x89', + -0x5276: b'\x11\xad\x8a', + -0x5275: b'\x11\xad\x8b', + -0x5274: b'\x11\xad\x8c', + -0x5273: b'\x11\xad\x8d', + -0x5272: b'\x11\xad\x8e', + -0x5271: b'\x11\xad\x8f', + -0x5270: b'\x11\xad\x90', + -0x526f: b'\x11\xad\x91', + -0x526e: b'\x11\xad\x92', + -0x526d: b'\x11\xad\x93', + -0x526c: b'\x11\xad\x94', + -0x526b: b'\x11\xad\x95', + -0x526a: b'\x11\xad\x96', + -0x5269: b'\x11\xad\x97', + -0x5268: b'\x11\xad\x98', + -0x5267: b'\x11\xad\x99', + -0x5266: b'\x11\xad\x9a', + -0x5265: b'\x11\xad\x9b', + -0x5264: b'\x11\xad\x9c', + -0x5263: b'\x11\xad\x9d', + -0x5262: b'\x11\xad\x9e', + -0x5261: b'\x11\xad\x9f', + -0x5260: b'\x11\xad\xa0', + -0x525f: b'\x11\xad\xa1', + -0x525e: b'\x11\xad\xa2', + -0x525d: b'\x11\xad\xa3', + -0x525c: b'\x11\xad\xa4', + -0x525b: b'\x11\xad\xa5', + -0x525a: b'\x11\xad\xa6', + -0x5259: b'\x11\xad\xa7', + -0x5258: b'\x11\xad\xa8', + -0x5257: b'\x11\xad\xa9', + -0x5256: b'\x11\xad\xaa', + -0x5255: b'\x11\xad\xab', + -0x5254: b'\x11\xad\xac', + -0x5253: b'\x11\xad\xad', + -0x5252: b'\x11\xad\xae', + -0x5251: b'\x11\xad\xaf', + -0x5250: b'\x11\xad\xb0', + -0x524f: b'\x11\xad\xb1', + -0x524e: b'\x11\xad\xb2', + -0x524d: b'\x11\xad\xb3', + -0x524c: b'\x11\xad\xb4', + -0x524b: b'\x11\xad\xb5', + -0x524a: b'\x11\xad\xb6', + -0x5249: b'\x11\xad\xb7', + -0x5248: b'\x11\xad\xb8', + -0x5247: b'\x11\xad\xb9', + -0x5246: b'\x11\xad\xba', + -0x5245: b'\x11\xad\xbb', + -0x5244: b'\x11\xad\xbc', + -0x5243: b'\x11\xad\xbd', + -0x5242: b'\x11\xad\xbe', + -0x5241: b'\x11\xad\xbf', + -0x5240: b'\x11\xad\xc0', + -0x523f: b'\x11\xad\xc1', + -0x523e: b'\x11\xad\xc2', + -0x523d: b'\x11\xad\xc3', + -0x523c: b'\x11\xad\xc4', + -0x523b: b'\x11\xad\xc5', + -0x523a: b'\x11\xad\xc6', + -0x5239: b'\x11\xad\xc7', + -0x5238: b'\x11\xad\xc8', + -0x5237: b'\x11\xad\xc9', + -0x5236: b'\x11\xad\xca', + -0x5235: b'\x11\xad\xcb', + -0x5234: b'\x11\xad\xcc', + -0x5233: b'\x11\xad\xcd', + -0x5232: b'\x11\xad\xce', + -0x5231: b'\x11\xad\xcf', + -0x5230: b'\x11\xad\xd0', + -0x522f: b'\x11\xad\xd1', + -0x522e: b'\x11\xad\xd2', + -0x522d: b'\x11\xad\xd3', + -0x522c: b'\x11\xad\xd4', + -0x522b: b'\x11\xad\xd5', + -0x522a: b'\x11\xad\xd6', + -0x5229: b'\x11\xad\xd7', + -0x5228: b'\x11\xad\xd8', + -0x5227: b'\x11\xad\xd9', + -0x5226: b'\x11\xad\xda', + -0x5225: b'\x11\xad\xdb', + -0x5224: b'\x11\xad\xdc', + -0x5223: b'\x11\xad\xdd', + -0x5222: b'\x11\xad\xde', + -0x5221: b'\x11\xad\xdf', + -0x5220: b'\x11\xad\xe0', + -0x521f: b'\x11\xad\xe1', + -0x521e: b'\x11\xad\xe2', + -0x521d: b'\x11\xad\xe3', + -0x521c: b'\x11\xad\xe4', + -0x521b: b'\x11\xad\xe5', + -0x521a: b'\x11\xad\xe6', + -0x5219: b'\x11\xad\xe7', + -0x5218: b'\x11\xad\xe8', + -0x5217: b'\x11\xad\xe9', + -0x5216: b'\x11\xad\xea', + -0x5215: b'\x11\xad\xeb', + -0x5214: b'\x11\xad\xec', + -0x5213: b'\x11\xad\xed', + -0x5212: b'\x11\xad\xee', + -0x5211: b'\x11\xad\xef', + -0x5210: b'\x11\xad\xf0', + -0x520f: b'\x11\xad\xf1', + -0x520e: b'\x11\xad\xf2', + -0x520d: b'\x11\xad\xf3', + -0x520c: b'\x11\xad\xf4', + -0x520b: b'\x11\xad\xf5', + -0x520a: b'\x11\xad\xf6', + -0x5209: b'\x11\xad\xf7', + -0x5208: b'\x11\xad\xf8', + -0x5207: b'\x11\xad\xf9', + -0x5206: b'\x11\xad\xfa', + -0x5205: b'\x11\xad\xfb', + -0x5204: b'\x11\xad\xfc', + -0x5203: b'\x11\xad\xfd', + -0x5202: b'\x11\xad\xfe', + -0x5201: b'\x11\xad\xff', + -0x5200: b'\x11\xae\x00', + -0x51ff: b'\x11\xae\x01', + -0x51fe: b'\x11\xae\x02', + -0x51fd: b'\x11\xae\x03', + -0x51fc: b'\x11\xae\x04', + -0x51fb: b'\x11\xae\x05', + -0x51fa: b'\x11\xae\x06', + -0x51f9: b'\x11\xae\x07', + -0x51f8: b'\x11\xae\x08', + -0x51f7: b'\x11\xae\t', + -0x51f6: b'\x11\xae\n', + -0x51f5: b'\x11\xae\x0b', + -0x51f4: b'\x11\xae\x0c', + -0x51f3: b'\x11\xae\r', + -0x51f2: b'\x11\xae\x0e', + -0x51f1: b'\x11\xae\x0f', + -0x51f0: b'\x11\xae\x10', + -0x51ef: b'\x11\xae\x11', + -0x51ee: b'\x11\xae\x12', + -0x51ed: b'\x11\xae\x13', + -0x51ec: b'\x11\xae\x14', + -0x51eb: b'\x11\xae\x15', + -0x51ea: b'\x11\xae\x16', + -0x51e9: b'\x11\xae\x17', + -0x51e8: b'\x11\xae\x18', + -0x51e7: b'\x11\xae\x19', + -0x51e6: b'\x11\xae\x1a', + -0x51e5: b'\x11\xae\x1b', + -0x51e4: b'\x11\xae\x1c', + -0x51e3: b'\x11\xae\x1d', + -0x51e2: b'\x11\xae\x1e', + -0x51e1: b'\x11\xae\x1f', + -0x51e0: b'\x11\xae ', + -0x51df: b'\x11\xae!', + -0x51de: b'\x11\xae"', + -0x51dd: b'\x11\xae#', + -0x51dc: b'\x11\xae$', + -0x51db: b'\x11\xae%', + -0x51da: b'\x11\xae&', + -0x51d9: b"\x11\xae'", + -0x51d8: b'\x11\xae(', + -0x51d7: b'\x11\xae)', + -0x51d6: b'\x11\xae*', + -0x51d5: b'\x11\xae+', + -0x51d4: b'\x11\xae,', + -0x51d3: b'\x11\xae-', + -0x51d2: b'\x11\xae.', + -0x51d1: b'\x11\xae/', + -0x51d0: b'\x11\xae0', + -0x51cf: b'\x11\xae1', + -0x51ce: b'\x11\xae2', + -0x51cd: b'\x11\xae3', + -0x51cc: b'\x11\xae4', + -0x51cb: b'\x11\xae5', + -0x51ca: b'\x11\xae6', + -0x51c9: b'\x11\xae7', + -0x51c8: b'\x11\xae8', + -0x51c7: b'\x11\xae9', + -0x51c6: b'\x11\xae:', + -0x51c5: b'\x11\xae;', + -0x51c4: b'\x11\xae<', + -0x51c3: b'\x11\xae=', + -0x51c2: b'\x11\xae>', + -0x51c1: b'\x11\xae?', + -0x51c0: b'\x11\xae@', + -0x51bf: b'\x11\xaeA', + -0x51be: b'\x11\xaeB', + -0x51bd: b'\x11\xaeC', + -0x51bc: b'\x11\xaeD', + -0x51bb: b'\x11\xaeE', + -0x51ba: b'\x11\xaeF', + -0x51b9: b'\x11\xaeG', + -0x51b8: b'\x11\xaeH', + -0x51b7: b'\x11\xaeI', + -0x51b6: b'\x11\xaeJ', + -0x51b5: b'\x11\xaeK', + -0x51b4: b'\x11\xaeL', + -0x51b3: b'\x11\xaeM', + -0x51b2: b'\x11\xaeN', + -0x51b1: b'\x11\xaeO', + -0x51b0: b'\x11\xaeP', + -0x51af: b'\x11\xaeQ', + -0x51ae: b'\x11\xaeR', + -0x51ad: b'\x11\xaeS', + -0x51ac: b'\x11\xaeT', + -0x51ab: b'\x11\xaeU', + -0x51aa: b'\x11\xaeV', + -0x51a9: b'\x11\xaeW', + -0x51a8: b'\x11\xaeX', + -0x51a7: b'\x11\xaeY', + -0x51a6: b'\x11\xaeZ', + -0x51a5: b'\x11\xae[', + -0x51a4: b'\x11\xae\\', + -0x51a3: b'\x11\xae]', + -0x51a2: b'\x11\xae^', + -0x51a1: b'\x11\xae_', + -0x51a0: b'\x11\xae`', + -0x519f: b'\x11\xaea', + -0x519e: b'\x11\xaeb', + -0x519d: b'\x11\xaec', + -0x519c: b'\x11\xaed', + -0x519b: b'\x11\xaee', + -0x519a: b'\x11\xaef', + -0x5199: b'\x11\xaeg', + -0x5198: b'\x11\xaeh', + -0x5197: b'\x11\xaei', + -0x5196: b'\x11\xaej', + -0x5195: b'\x11\xaek', + -0x5194: b'\x11\xael', + -0x5193: b'\x11\xaem', + -0x5192: b'\x11\xaen', + -0x5191: b'\x11\xaeo', + -0x5190: b'\x11\xaep', + -0x518f: b'\x11\xaeq', + -0x518e: b'\x11\xaer', + -0x518d: b'\x11\xaes', + -0x518c: b'\x11\xaet', + -0x518b: b'\x11\xaeu', + -0x518a: b'\x11\xaev', + -0x5189: b'\x11\xaew', + -0x5188: b'\x11\xaex', + -0x5187: b'\x11\xaey', + -0x5186: b'\x11\xaez', + -0x5185: b'\x11\xae{', + -0x5184: b'\x11\xae|', + -0x5183: b'\x11\xae}', + -0x5182: b'\x11\xae~', + -0x5181: b'\x11\xae\x7f', + -0x5180: b'\x11\xae\x80', + -0x517f: b'\x11\xae\x81', + -0x517e: b'\x11\xae\x82', + -0x517d: b'\x11\xae\x83', + -0x517c: b'\x11\xae\x84', + -0x517b: b'\x11\xae\x85', + -0x517a: b'\x11\xae\x86', + -0x5179: b'\x11\xae\x87', + -0x5178: b'\x11\xae\x88', + -0x5177: b'\x11\xae\x89', + -0x5176: b'\x11\xae\x8a', + -0x5175: b'\x11\xae\x8b', + -0x5174: b'\x11\xae\x8c', + -0x5173: b'\x11\xae\x8d', + -0x5172: b'\x11\xae\x8e', + -0x5171: b'\x11\xae\x8f', + -0x5170: b'\x11\xae\x90', + -0x516f: b'\x11\xae\x91', + -0x516e: b'\x11\xae\x92', + -0x516d: b'\x11\xae\x93', + -0x516c: b'\x11\xae\x94', + -0x516b: b'\x11\xae\x95', + -0x516a: b'\x11\xae\x96', + -0x5169: b'\x11\xae\x97', + -0x5168: b'\x11\xae\x98', + -0x5167: b'\x11\xae\x99', + -0x5166: b'\x11\xae\x9a', + -0x5165: b'\x11\xae\x9b', + -0x5164: b'\x11\xae\x9c', + -0x5163: b'\x11\xae\x9d', + -0x5162: b'\x11\xae\x9e', + -0x5161: b'\x11\xae\x9f', + -0x5160: b'\x11\xae\xa0', + -0x515f: b'\x11\xae\xa1', + -0x515e: b'\x11\xae\xa2', + -0x515d: b'\x11\xae\xa3', + -0x515c: b'\x11\xae\xa4', + -0x515b: b'\x11\xae\xa5', + -0x515a: b'\x11\xae\xa6', + -0x5159: b'\x11\xae\xa7', + -0x5158: b'\x11\xae\xa8', + -0x5157: b'\x11\xae\xa9', + -0x5156: b'\x11\xae\xaa', + -0x5155: b'\x11\xae\xab', + -0x5154: b'\x11\xae\xac', + -0x5153: b'\x11\xae\xad', + -0x5152: b'\x11\xae\xae', + -0x5151: b'\x11\xae\xaf', + -0x5150: b'\x11\xae\xb0', + -0x514f: b'\x11\xae\xb1', + -0x514e: b'\x11\xae\xb2', + -0x514d: b'\x11\xae\xb3', + -0x514c: b'\x11\xae\xb4', + -0x514b: b'\x11\xae\xb5', + -0x514a: b'\x11\xae\xb6', + -0x5149: b'\x11\xae\xb7', + -0x5148: b'\x11\xae\xb8', + -0x5147: b'\x11\xae\xb9', + -0x5146: b'\x11\xae\xba', + -0x5145: b'\x11\xae\xbb', + -0x5144: b'\x11\xae\xbc', + -0x5143: b'\x11\xae\xbd', + -0x5142: b'\x11\xae\xbe', + -0x5141: b'\x11\xae\xbf', + -0x5140: b'\x11\xae\xc0', + -0x513f: b'\x11\xae\xc1', + -0x513e: b'\x11\xae\xc2', + -0x513d: b'\x11\xae\xc3', + -0x513c: b'\x11\xae\xc4', + -0x513b: b'\x11\xae\xc5', + -0x513a: b'\x11\xae\xc6', + -0x5139: b'\x11\xae\xc7', + -0x5138: b'\x11\xae\xc8', + -0x5137: b'\x11\xae\xc9', + -0x5136: b'\x11\xae\xca', + -0x5135: b'\x11\xae\xcb', + -0x5134: b'\x11\xae\xcc', + -0x5133: b'\x11\xae\xcd', + -0x5132: b'\x11\xae\xce', + -0x5131: b'\x11\xae\xcf', + -0x5130: b'\x11\xae\xd0', + -0x512f: b'\x11\xae\xd1', + -0x512e: b'\x11\xae\xd2', + -0x512d: b'\x11\xae\xd3', + -0x512c: b'\x11\xae\xd4', + -0x512b: b'\x11\xae\xd5', + -0x512a: b'\x11\xae\xd6', + -0x5129: b'\x11\xae\xd7', + -0x5128: b'\x11\xae\xd8', + -0x5127: b'\x11\xae\xd9', + -0x5126: b'\x11\xae\xda', + -0x5125: b'\x11\xae\xdb', + -0x5124: b'\x11\xae\xdc', + -0x5123: b'\x11\xae\xdd', + -0x5122: b'\x11\xae\xde', + -0x5121: b'\x11\xae\xdf', + -0x5120: b'\x11\xae\xe0', + -0x511f: b'\x11\xae\xe1', + -0x511e: b'\x11\xae\xe2', + -0x511d: b'\x11\xae\xe3', + -0x511c: b'\x11\xae\xe4', + -0x511b: b'\x11\xae\xe5', + -0x511a: b'\x11\xae\xe6', + -0x5119: b'\x11\xae\xe7', + -0x5118: b'\x11\xae\xe8', + -0x5117: b'\x11\xae\xe9', + -0x5116: b'\x11\xae\xea', + -0x5115: b'\x11\xae\xeb', + -0x5114: b'\x11\xae\xec', + -0x5113: b'\x11\xae\xed', + -0x5112: b'\x11\xae\xee', + -0x5111: b'\x11\xae\xef', + -0x5110: b'\x11\xae\xf0', + -0x510f: b'\x11\xae\xf1', + -0x510e: b'\x11\xae\xf2', + -0x510d: b'\x11\xae\xf3', + -0x510c: b'\x11\xae\xf4', + -0x510b: b'\x11\xae\xf5', + -0x510a: b'\x11\xae\xf6', + -0x5109: b'\x11\xae\xf7', + -0x5108: b'\x11\xae\xf8', + -0x5107: b'\x11\xae\xf9', + -0x5106: b'\x11\xae\xfa', + -0x5105: b'\x11\xae\xfb', + -0x5104: b'\x11\xae\xfc', + -0x5103: b'\x11\xae\xfd', + -0x5102: b'\x11\xae\xfe', + -0x5101: b'\x11\xae\xff', + -0x5100: b'\x11\xaf\x00', + -0x50ff: b'\x11\xaf\x01', + -0x50fe: b'\x11\xaf\x02', + -0x50fd: b'\x11\xaf\x03', + -0x50fc: b'\x11\xaf\x04', + -0x50fb: b'\x11\xaf\x05', + -0x50fa: b'\x11\xaf\x06', + -0x50f9: b'\x11\xaf\x07', + -0x50f8: b'\x11\xaf\x08', + -0x50f7: b'\x11\xaf\t', + -0x50f6: b'\x11\xaf\n', + -0x50f5: b'\x11\xaf\x0b', + -0x50f4: b'\x11\xaf\x0c', + -0x50f3: b'\x11\xaf\r', + -0x50f2: b'\x11\xaf\x0e', + -0x50f1: b'\x11\xaf\x0f', + -0x50f0: b'\x11\xaf\x10', + -0x50ef: b'\x11\xaf\x11', + -0x50ee: b'\x11\xaf\x12', + -0x50ed: b'\x11\xaf\x13', + -0x50ec: b'\x11\xaf\x14', + -0x50eb: b'\x11\xaf\x15', + -0x50ea: b'\x11\xaf\x16', + -0x50e9: b'\x11\xaf\x17', + -0x50e8: b'\x11\xaf\x18', + -0x50e7: b'\x11\xaf\x19', + -0x50e6: b'\x11\xaf\x1a', + -0x50e5: b'\x11\xaf\x1b', + -0x50e4: b'\x11\xaf\x1c', + -0x50e3: b'\x11\xaf\x1d', + -0x50e2: b'\x11\xaf\x1e', + -0x50e1: b'\x11\xaf\x1f', + -0x50e0: b'\x11\xaf ', + -0x50df: b'\x11\xaf!', + -0x50de: b'\x11\xaf"', + -0x50dd: b'\x11\xaf#', + -0x50dc: b'\x11\xaf$', + -0x50db: b'\x11\xaf%', + -0x50da: b'\x11\xaf&', + -0x50d9: b"\x11\xaf'", + -0x50d8: b'\x11\xaf(', + -0x50d7: b'\x11\xaf)', + -0x50d6: b'\x11\xaf*', + -0x50d5: b'\x11\xaf+', + -0x50d4: b'\x11\xaf,', + -0x50d3: b'\x11\xaf-', + -0x50d2: b'\x11\xaf.', + -0x50d1: b'\x11\xaf/', + -0x50d0: b'\x11\xaf0', + -0x50cf: b'\x11\xaf1', + -0x50ce: b'\x11\xaf2', + -0x50cd: b'\x11\xaf3', + -0x50cc: b'\x11\xaf4', + -0x50cb: b'\x11\xaf5', + -0x50ca: b'\x11\xaf6', + -0x50c9: b'\x11\xaf7', + -0x50c8: b'\x11\xaf8', + -0x50c7: b'\x11\xaf9', + -0x50c6: b'\x11\xaf:', + -0x50c5: b'\x11\xaf;', + -0x50c4: b'\x11\xaf<', + -0x50c3: b'\x11\xaf=', + -0x50c2: b'\x11\xaf>', + -0x50c1: b'\x11\xaf?', + -0x50c0: b'\x11\xaf@', + -0x50bf: b'\x11\xafA', + -0x50be: b'\x11\xafB', + -0x50bd: b'\x11\xafC', + -0x50bc: b'\x11\xafD', + -0x50bb: b'\x11\xafE', + -0x50ba: b'\x11\xafF', + -0x50b9: b'\x11\xafG', + -0x50b8: b'\x11\xafH', + -0x50b7: b'\x11\xafI', + -0x50b6: b'\x11\xafJ', + -0x50b5: b'\x11\xafK', + -0x50b4: b'\x11\xafL', + -0x50b3: b'\x11\xafM', + -0x50b2: b'\x11\xafN', + -0x50b1: b'\x11\xafO', + -0x50b0: b'\x11\xafP', + -0x50af: b'\x11\xafQ', + -0x50ae: b'\x11\xafR', + -0x50ad: b'\x11\xafS', + -0x50ac: b'\x11\xafT', + -0x50ab: b'\x11\xafU', + -0x50aa: b'\x11\xafV', + -0x50a9: b'\x11\xafW', + -0x50a8: b'\x11\xafX', + -0x50a7: b'\x11\xafY', + -0x50a6: b'\x11\xafZ', + -0x50a5: b'\x11\xaf[', + -0x50a4: b'\x11\xaf\\', + -0x50a3: b'\x11\xaf]', + -0x50a2: b'\x11\xaf^', + -0x50a1: b'\x11\xaf_', + -0x50a0: b'\x11\xaf`', + -0x509f: b'\x11\xafa', + -0x509e: b'\x11\xafb', + -0x509d: b'\x11\xafc', + -0x509c: b'\x11\xafd', + -0x509b: b'\x11\xafe', + -0x509a: b'\x11\xaff', + -0x5099: b'\x11\xafg', + -0x5098: b'\x11\xafh', + -0x5097: b'\x11\xafi', + -0x5096: b'\x11\xafj', + -0x5095: b'\x11\xafk', + -0x5094: b'\x11\xafl', + -0x5093: b'\x11\xafm', + -0x5092: b'\x11\xafn', + -0x5091: b'\x11\xafo', + -0x5090: b'\x11\xafp', + -0x508f: b'\x11\xafq', + -0x508e: b'\x11\xafr', + -0x508d: b'\x11\xafs', + -0x508c: b'\x11\xaft', + -0x508b: b'\x11\xafu', + -0x508a: b'\x11\xafv', + -0x5089: b'\x11\xafw', + -0x5088: b'\x11\xafx', + -0x5087: b'\x11\xafy', + -0x5086: b'\x11\xafz', + -0x5085: b'\x11\xaf{', + -0x5084: b'\x11\xaf|', + -0x5083: b'\x11\xaf}', + -0x5082: b'\x11\xaf~', + -0x5081: b'\x11\xaf\x7f', + -0x5080: b'\x11\xaf\x80', + -0x507f: b'\x11\xaf\x81', + -0x507e: b'\x11\xaf\x82', + -0x507d: b'\x11\xaf\x83', + -0x507c: b'\x11\xaf\x84', + -0x507b: b'\x11\xaf\x85', + -0x507a: b'\x11\xaf\x86', + -0x5079: b'\x11\xaf\x87', + -0x5078: b'\x11\xaf\x88', + -0x5077: b'\x11\xaf\x89', + -0x5076: b'\x11\xaf\x8a', + -0x5075: b'\x11\xaf\x8b', + -0x5074: b'\x11\xaf\x8c', + -0x5073: b'\x11\xaf\x8d', + -0x5072: b'\x11\xaf\x8e', + -0x5071: b'\x11\xaf\x8f', + -0x5070: b'\x11\xaf\x90', + -0x506f: b'\x11\xaf\x91', + -0x506e: b'\x11\xaf\x92', + -0x506d: b'\x11\xaf\x93', + -0x506c: b'\x11\xaf\x94', + -0x506b: b'\x11\xaf\x95', + -0x506a: b'\x11\xaf\x96', + -0x5069: b'\x11\xaf\x97', + -0x5068: b'\x11\xaf\x98', + -0x5067: b'\x11\xaf\x99', + -0x5066: b'\x11\xaf\x9a', + -0x5065: b'\x11\xaf\x9b', + -0x5064: b'\x11\xaf\x9c', + -0x5063: b'\x11\xaf\x9d', + -0x5062: b'\x11\xaf\x9e', + -0x5061: b'\x11\xaf\x9f', + -0x5060: b'\x11\xaf\xa0', + -0x505f: b'\x11\xaf\xa1', + -0x505e: b'\x11\xaf\xa2', + -0x505d: b'\x11\xaf\xa3', + -0x505c: b'\x11\xaf\xa4', + -0x505b: b'\x11\xaf\xa5', + -0x505a: b'\x11\xaf\xa6', + -0x5059: b'\x11\xaf\xa7', + -0x5058: b'\x11\xaf\xa8', + -0x5057: b'\x11\xaf\xa9', + -0x5056: b'\x11\xaf\xaa', + -0x5055: b'\x11\xaf\xab', + -0x5054: b'\x11\xaf\xac', + -0x5053: b'\x11\xaf\xad', + -0x5052: b'\x11\xaf\xae', + -0x5051: b'\x11\xaf\xaf', + -0x5050: b'\x11\xaf\xb0', + -0x504f: b'\x11\xaf\xb1', + -0x504e: b'\x11\xaf\xb2', + -0x504d: b'\x11\xaf\xb3', + -0x504c: b'\x11\xaf\xb4', + -0x504b: b'\x11\xaf\xb5', + -0x504a: b'\x11\xaf\xb6', + -0x5049: b'\x11\xaf\xb7', + -0x5048: b'\x11\xaf\xb8', + -0x5047: b'\x11\xaf\xb9', + -0x5046: b'\x11\xaf\xba', + -0x5045: b'\x11\xaf\xbb', + -0x5044: b'\x11\xaf\xbc', + -0x5043: b'\x11\xaf\xbd', + -0x5042: b'\x11\xaf\xbe', + -0x5041: b'\x11\xaf\xbf', + -0x5040: b'\x11\xaf\xc0', + -0x503f: b'\x11\xaf\xc1', + -0x503e: b'\x11\xaf\xc2', + -0x503d: b'\x11\xaf\xc3', + -0x503c: b'\x11\xaf\xc4', + -0x503b: b'\x11\xaf\xc5', + -0x503a: b'\x11\xaf\xc6', + -0x5039: b'\x11\xaf\xc7', + -0x5038: b'\x11\xaf\xc8', + -0x5037: b'\x11\xaf\xc9', + -0x5036: b'\x11\xaf\xca', + -0x5035: b'\x11\xaf\xcb', + -0x5034: b'\x11\xaf\xcc', + -0x5033: b'\x11\xaf\xcd', + -0x5032: b'\x11\xaf\xce', + -0x5031: b'\x11\xaf\xcf', + -0x5030: b'\x11\xaf\xd0', + -0x502f: b'\x11\xaf\xd1', + -0x502e: b'\x11\xaf\xd2', + -0x502d: b'\x11\xaf\xd3', + -0x502c: b'\x11\xaf\xd4', + -0x502b: b'\x11\xaf\xd5', + -0x502a: b'\x11\xaf\xd6', + -0x5029: b'\x11\xaf\xd7', + -0x5028: b'\x11\xaf\xd8', + -0x5027: b'\x11\xaf\xd9', + -0x5026: b'\x11\xaf\xda', + -0x5025: b'\x11\xaf\xdb', + -0x5024: b'\x11\xaf\xdc', + -0x5023: b'\x11\xaf\xdd', + -0x5022: b'\x11\xaf\xde', + -0x5021: b'\x11\xaf\xdf', + -0x5020: b'\x11\xaf\xe0', + -0x501f: b'\x11\xaf\xe1', + -0x501e: b'\x11\xaf\xe2', + -0x501d: b'\x11\xaf\xe3', + -0x501c: b'\x11\xaf\xe4', + -0x501b: b'\x11\xaf\xe5', + -0x501a: b'\x11\xaf\xe6', + -0x5019: b'\x11\xaf\xe7', + -0x5018: b'\x11\xaf\xe8', + -0x5017: b'\x11\xaf\xe9', + -0x5016: b'\x11\xaf\xea', + -0x5015: b'\x11\xaf\xeb', + -0x5014: b'\x11\xaf\xec', + -0x5013: b'\x11\xaf\xed', + -0x5012: b'\x11\xaf\xee', + -0x5011: b'\x11\xaf\xef', + -0x5010: b'\x11\xaf\xf0', + -0x500f: b'\x11\xaf\xf1', + -0x500e: b'\x11\xaf\xf2', + -0x500d: b'\x11\xaf\xf3', + -0x500c: b'\x11\xaf\xf4', + -0x500b: b'\x11\xaf\xf5', + -0x500a: b'\x11\xaf\xf6', + -0x5009: b'\x11\xaf\xf7', + -0x5008: b'\x11\xaf\xf8', + -0x5007: b'\x11\xaf\xf9', + -0x5006: b'\x11\xaf\xfa', + -0x5005: b'\x11\xaf\xfb', + -0x5004: b'\x11\xaf\xfc', + -0x5003: b'\x11\xaf\xfd', + -0x5002: b'\x11\xaf\xfe', + -0x5001: b'\x11\xaf\xff', + -0x5000: b'\x11\xb0\x00', + -0x4fff: b'\x11\xb0\x01', + -0x4ffe: b'\x11\xb0\x02', + -0x4ffd: b'\x11\xb0\x03', + -0x4ffc: b'\x11\xb0\x04', + -0x4ffb: b'\x11\xb0\x05', + -0x4ffa: b'\x11\xb0\x06', + -0x4ff9: b'\x11\xb0\x07', + -0x4ff8: b'\x11\xb0\x08', + -0x4ff7: b'\x11\xb0\t', + -0x4ff6: b'\x11\xb0\n', + -0x4ff5: b'\x11\xb0\x0b', + -0x4ff4: b'\x11\xb0\x0c', + -0x4ff3: b'\x11\xb0\r', + -0x4ff2: b'\x11\xb0\x0e', + -0x4ff1: b'\x11\xb0\x0f', + -0x4ff0: b'\x11\xb0\x10', + -0x4fef: b'\x11\xb0\x11', + -0x4fee: b'\x11\xb0\x12', + -0x4fed: b'\x11\xb0\x13', + -0x4fec: b'\x11\xb0\x14', + -0x4feb: b'\x11\xb0\x15', + -0x4fea: b'\x11\xb0\x16', + -0x4fe9: b'\x11\xb0\x17', + -0x4fe8: b'\x11\xb0\x18', + -0x4fe7: b'\x11\xb0\x19', + -0x4fe6: b'\x11\xb0\x1a', + -0x4fe5: b'\x11\xb0\x1b', + -0x4fe4: b'\x11\xb0\x1c', + -0x4fe3: b'\x11\xb0\x1d', + -0x4fe2: b'\x11\xb0\x1e', + -0x4fe1: b'\x11\xb0\x1f', + -0x4fe0: b'\x11\xb0 ', + -0x4fdf: b'\x11\xb0!', + -0x4fde: b'\x11\xb0"', + -0x4fdd: b'\x11\xb0#', + -0x4fdc: b'\x11\xb0$', + -0x4fdb: b'\x11\xb0%', + -0x4fda: b'\x11\xb0&', + -0x4fd9: b"\x11\xb0'", + -0x4fd8: b'\x11\xb0(', + -0x4fd7: b'\x11\xb0)', + -0x4fd6: b'\x11\xb0*', + -0x4fd5: b'\x11\xb0+', + -0x4fd4: b'\x11\xb0,', + -0x4fd3: b'\x11\xb0-', + -0x4fd2: b'\x11\xb0.', + -0x4fd1: b'\x11\xb0/', + -0x4fd0: b'\x11\xb00', + -0x4fcf: b'\x11\xb01', + -0x4fce: b'\x11\xb02', + -0x4fcd: b'\x11\xb03', + -0x4fcc: b'\x11\xb04', + -0x4fcb: b'\x11\xb05', + -0x4fca: b'\x11\xb06', + -0x4fc9: b'\x11\xb07', + -0x4fc8: b'\x11\xb08', + -0x4fc7: b'\x11\xb09', + -0x4fc6: b'\x11\xb0:', + -0x4fc5: b'\x11\xb0;', + -0x4fc4: b'\x11\xb0<', + -0x4fc3: b'\x11\xb0=', + -0x4fc2: b'\x11\xb0>', + -0x4fc1: b'\x11\xb0?', + -0x4fc0: b'\x11\xb0@', + -0x4fbf: b'\x11\xb0A', + -0x4fbe: b'\x11\xb0B', + -0x4fbd: b'\x11\xb0C', + -0x4fbc: b'\x11\xb0D', + -0x4fbb: b'\x11\xb0E', + -0x4fba: b'\x11\xb0F', + -0x4fb9: b'\x11\xb0G', + -0x4fb8: b'\x11\xb0H', + -0x4fb7: b'\x11\xb0I', + -0x4fb6: b'\x11\xb0J', + -0x4fb5: b'\x11\xb0K', + -0x4fb4: b'\x11\xb0L', + -0x4fb3: b'\x11\xb0M', + -0x4fb2: b'\x11\xb0N', + -0x4fb1: b'\x11\xb0O', + -0x4fb0: b'\x11\xb0P', + -0x4faf: b'\x11\xb0Q', + -0x4fae: b'\x11\xb0R', + -0x4fad: b'\x11\xb0S', + -0x4fac: b'\x11\xb0T', + -0x4fab: b'\x11\xb0U', + -0x4faa: b'\x11\xb0V', + -0x4fa9: b'\x11\xb0W', + -0x4fa8: b'\x11\xb0X', + -0x4fa7: b'\x11\xb0Y', + -0x4fa6: b'\x11\xb0Z', + -0x4fa5: b'\x11\xb0[', + -0x4fa4: b'\x11\xb0\\', + -0x4fa3: b'\x11\xb0]', + -0x4fa2: b'\x11\xb0^', + -0x4fa1: b'\x11\xb0_', + -0x4fa0: b'\x11\xb0`', + -0x4f9f: b'\x11\xb0a', + -0x4f9e: b'\x11\xb0b', + -0x4f9d: b'\x11\xb0c', + -0x4f9c: b'\x11\xb0d', + -0x4f9b: b'\x11\xb0e', + -0x4f9a: b'\x11\xb0f', + -0x4f99: b'\x11\xb0g', + -0x4f98: b'\x11\xb0h', + -0x4f97: b'\x11\xb0i', + -0x4f96: b'\x11\xb0j', + -0x4f95: b'\x11\xb0k', + -0x4f94: b'\x11\xb0l', + -0x4f93: b'\x11\xb0m', + -0x4f92: b'\x11\xb0n', + -0x4f91: b'\x11\xb0o', + -0x4f90: b'\x11\xb0p', + -0x4f8f: b'\x11\xb0q', + -0x4f8e: b'\x11\xb0r', + -0x4f8d: b'\x11\xb0s', + -0x4f8c: b'\x11\xb0t', + -0x4f8b: b'\x11\xb0u', + -0x4f8a: b'\x11\xb0v', + -0x4f89: b'\x11\xb0w', + -0x4f88: b'\x11\xb0x', + -0x4f87: b'\x11\xb0y', + -0x4f86: b'\x11\xb0z', + -0x4f85: b'\x11\xb0{', + -0x4f84: b'\x11\xb0|', + -0x4f83: b'\x11\xb0}', + -0x4f82: b'\x11\xb0~', + -0x4f81: b'\x11\xb0\x7f', + -0x4f80: b'\x11\xb0\x80', + -0x4f7f: b'\x11\xb0\x81', + -0x4f7e: b'\x11\xb0\x82', + -0x4f7d: b'\x11\xb0\x83', + -0x4f7c: b'\x11\xb0\x84', + -0x4f7b: b'\x11\xb0\x85', + -0x4f7a: b'\x11\xb0\x86', + -0x4f79: b'\x11\xb0\x87', + -0x4f78: b'\x11\xb0\x88', + -0x4f77: b'\x11\xb0\x89', + -0x4f76: b'\x11\xb0\x8a', + -0x4f75: b'\x11\xb0\x8b', + -0x4f74: b'\x11\xb0\x8c', + -0x4f73: b'\x11\xb0\x8d', + -0x4f72: b'\x11\xb0\x8e', + -0x4f71: b'\x11\xb0\x8f', + -0x4f70: b'\x11\xb0\x90', + -0x4f6f: b'\x11\xb0\x91', + -0x4f6e: b'\x11\xb0\x92', + -0x4f6d: b'\x11\xb0\x93', + -0x4f6c: b'\x11\xb0\x94', + -0x4f6b: b'\x11\xb0\x95', + -0x4f6a: b'\x11\xb0\x96', + -0x4f69: b'\x11\xb0\x97', + -0x4f68: b'\x11\xb0\x98', + -0x4f67: b'\x11\xb0\x99', + -0x4f66: b'\x11\xb0\x9a', + -0x4f65: b'\x11\xb0\x9b', + -0x4f64: b'\x11\xb0\x9c', + -0x4f63: b'\x11\xb0\x9d', + -0x4f62: b'\x11\xb0\x9e', + -0x4f61: b'\x11\xb0\x9f', + -0x4f60: b'\x11\xb0\xa0', + -0x4f5f: b'\x11\xb0\xa1', + -0x4f5e: b'\x11\xb0\xa2', + -0x4f5d: b'\x11\xb0\xa3', + -0x4f5c: b'\x11\xb0\xa4', + -0x4f5b: b'\x11\xb0\xa5', + -0x4f5a: b'\x11\xb0\xa6', + -0x4f59: b'\x11\xb0\xa7', + -0x4f58: b'\x11\xb0\xa8', + -0x4f57: b'\x11\xb0\xa9', + -0x4f56: b'\x11\xb0\xaa', + -0x4f55: b'\x11\xb0\xab', + -0x4f54: b'\x11\xb0\xac', + -0x4f53: b'\x11\xb0\xad', + -0x4f52: b'\x11\xb0\xae', + -0x4f51: b'\x11\xb0\xaf', + -0x4f50: b'\x11\xb0\xb0', + -0x4f4f: b'\x11\xb0\xb1', + -0x4f4e: b'\x11\xb0\xb2', + -0x4f4d: b'\x11\xb0\xb3', + -0x4f4c: b'\x11\xb0\xb4', + -0x4f4b: b'\x11\xb0\xb5', + -0x4f4a: b'\x11\xb0\xb6', + -0x4f49: b'\x11\xb0\xb7', + -0x4f48: b'\x11\xb0\xb8', + -0x4f47: b'\x11\xb0\xb9', + -0x4f46: b'\x11\xb0\xba', + -0x4f45: b'\x11\xb0\xbb', + -0x4f44: b'\x11\xb0\xbc', + -0x4f43: b'\x11\xb0\xbd', + -0x4f42: b'\x11\xb0\xbe', + -0x4f41: b'\x11\xb0\xbf', + -0x4f40: b'\x11\xb0\xc0', + -0x4f3f: b'\x11\xb0\xc1', + -0x4f3e: b'\x11\xb0\xc2', + -0x4f3d: b'\x11\xb0\xc3', + -0x4f3c: b'\x11\xb0\xc4', + -0x4f3b: b'\x11\xb0\xc5', + -0x4f3a: b'\x11\xb0\xc6', + -0x4f39: b'\x11\xb0\xc7', + -0x4f38: b'\x11\xb0\xc8', + -0x4f37: b'\x11\xb0\xc9', + -0x4f36: b'\x11\xb0\xca', + -0x4f35: b'\x11\xb0\xcb', + -0x4f34: b'\x11\xb0\xcc', + -0x4f33: b'\x11\xb0\xcd', + -0x4f32: b'\x11\xb0\xce', + -0x4f31: b'\x11\xb0\xcf', + -0x4f30: b'\x11\xb0\xd0', + -0x4f2f: b'\x11\xb0\xd1', + -0x4f2e: b'\x11\xb0\xd2', + -0x4f2d: b'\x11\xb0\xd3', + -0x4f2c: b'\x11\xb0\xd4', + -0x4f2b: b'\x11\xb0\xd5', + -0x4f2a: b'\x11\xb0\xd6', + -0x4f29: b'\x11\xb0\xd7', + -0x4f28: b'\x11\xb0\xd8', + -0x4f27: b'\x11\xb0\xd9', + -0x4f26: b'\x11\xb0\xda', + -0x4f25: b'\x11\xb0\xdb', + -0x4f24: b'\x11\xb0\xdc', + -0x4f23: b'\x11\xb0\xdd', + -0x4f22: b'\x11\xb0\xde', + -0x4f21: b'\x11\xb0\xdf', + -0x4f20: b'\x11\xb0\xe0', + -0x4f1f: b'\x11\xb0\xe1', + -0x4f1e: b'\x11\xb0\xe2', + -0x4f1d: b'\x11\xb0\xe3', + -0x4f1c: b'\x11\xb0\xe4', + -0x4f1b: b'\x11\xb0\xe5', + -0x4f1a: b'\x11\xb0\xe6', + -0x4f19: b'\x11\xb0\xe7', + -0x4f18: b'\x11\xb0\xe8', + -0x4f17: b'\x11\xb0\xe9', + -0x4f16: b'\x11\xb0\xea', + -0x4f15: b'\x11\xb0\xeb', + -0x4f14: b'\x11\xb0\xec', + -0x4f13: b'\x11\xb0\xed', + -0x4f12: b'\x11\xb0\xee', + -0x4f11: b'\x11\xb0\xef', + -0x4f10: b'\x11\xb0\xf0', + -0x4f0f: b'\x11\xb0\xf1', + -0x4f0e: b'\x11\xb0\xf2', + -0x4f0d: b'\x11\xb0\xf3', + -0x4f0c: b'\x11\xb0\xf4', + -0x4f0b: b'\x11\xb0\xf5', + -0x4f0a: b'\x11\xb0\xf6', + -0x4f09: b'\x11\xb0\xf7', + -0x4f08: b'\x11\xb0\xf8', + -0x4f07: b'\x11\xb0\xf9', + -0x4f06: b'\x11\xb0\xfa', + -0x4f05: b'\x11\xb0\xfb', + -0x4f04: b'\x11\xb0\xfc', + -0x4f03: b'\x11\xb0\xfd', + -0x4f02: b'\x11\xb0\xfe', + -0x4f01: b'\x11\xb0\xff', + -0x4f00: b'\x11\xb1\x00', + -0x4eff: b'\x11\xb1\x01', + -0x4efe: b'\x11\xb1\x02', + -0x4efd: b'\x11\xb1\x03', + -0x4efc: b'\x11\xb1\x04', + -0x4efb: b'\x11\xb1\x05', + -0x4efa: b'\x11\xb1\x06', + -0x4ef9: b'\x11\xb1\x07', + -0x4ef8: b'\x11\xb1\x08', + -0x4ef7: b'\x11\xb1\t', + -0x4ef6: b'\x11\xb1\n', + -0x4ef5: b'\x11\xb1\x0b', + -0x4ef4: b'\x11\xb1\x0c', + -0x4ef3: b'\x11\xb1\r', + -0x4ef2: b'\x11\xb1\x0e', + -0x4ef1: b'\x11\xb1\x0f', + -0x4ef0: b'\x11\xb1\x10', + -0x4eef: b'\x11\xb1\x11', + -0x4eee: b'\x11\xb1\x12', + -0x4eed: b'\x11\xb1\x13', + -0x4eec: b'\x11\xb1\x14', + -0x4eeb: b'\x11\xb1\x15', + -0x4eea: b'\x11\xb1\x16', + -0x4ee9: b'\x11\xb1\x17', + -0x4ee8: b'\x11\xb1\x18', + -0x4ee7: b'\x11\xb1\x19', + -0x4ee6: b'\x11\xb1\x1a', + -0x4ee5: b'\x11\xb1\x1b', + -0x4ee4: b'\x11\xb1\x1c', + -0x4ee3: b'\x11\xb1\x1d', + -0x4ee2: b'\x11\xb1\x1e', + -0x4ee1: b'\x11\xb1\x1f', + -0x4ee0: b'\x11\xb1 ', + -0x4edf: b'\x11\xb1!', + -0x4ede: b'\x11\xb1"', + -0x4edd: b'\x11\xb1#', + -0x4edc: b'\x11\xb1$', + -0x4edb: b'\x11\xb1%', + -0x4eda: b'\x11\xb1&', + -0x4ed9: b"\x11\xb1'", + -0x4ed8: b'\x11\xb1(', + -0x4ed7: b'\x11\xb1)', + -0x4ed6: b'\x11\xb1*', + -0x4ed5: b'\x11\xb1+', + -0x4ed4: b'\x11\xb1,', + -0x4ed3: b'\x11\xb1-', + -0x4ed2: b'\x11\xb1.', + -0x4ed1: b'\x11\xb1/', + -0x4ed0: b'\x11\xb10', + -0x4ecf: b'\x11\xb11', + -0x4ece: b'\x11\xb12', + -0x4ecd: b'\x11\xb13', + -0x4ecc: b'\x11\xb14', + -0x4ecb: b'\x11\xb15', + -0x4eca: b'\x11\xb16', + -0x4ec9: b'\x11\xb17', + -0x4ec8: b'\x11\xb18', + -0x4ec7: b'\x11\xb19', + -0x4ec6: b'\x11\xb1:', + -0x4ec5: b'\x11\xb1;', + -0x4ec4: b'\x11\xb1<', + -0x4ec3: b'\x11\xb1=', + -0x4ec2: b'\x11\xb1>', + -0x4ec1: b'\x11\xb1?', + -0x4ec0: b'\x11\xb1@', + -0x4ebf: b'\x11\xb1A', + -0x4ebe: b'\x11\xb1B', + -0x4ebd: b'\x11\xb1C', + -0x4ebc: b'\x11\xb1D', + -0x4ebb: b'\x11\xb1E', + -0x4eba: b'\x11\xb1F', + -0x4eb9: b'\x11\xb1G', + -0x4eb8: b'\x11\xb1H', + -0x4eb7: b'\x11\xb1I', + -0x4eb6: b'\x11\xb1J', + -0x4eb5: b'\x11\xb1K', + -0x4eb4: b'\x11\xb1L', + -0x4eb3: b'\x11\xb1M', + -0x4eb2: b'\x11\xb1N', + -0x4eb1: b'\x11\xb1O', + -0x4eb0: b'\x11\xb1P', + -0x4eaf: b'\x11\xb1Q', + -0x4eae: b'\x11\xb1R', + -0x4ead: b'\x11\xb1S', + -0x4eac: b'\x11\xb1T', + -0x4eab: b'\x11\xb1U', + -0x4eaa: b'\x11\xb1V', + -0x4ea9: b'\x11\xb1W', + -0x4ea8: b'\x11\xb1X', + -0x4ea7: b'\x11\xb1Y', + -0x4ea6: b'\x11\xb1Z', + -0x4ea5: b'\x11\xb1[', + -0x4ea4: b'\x11\xb1\\', + -0x4ea3: b'\x11\xb1]', + -0x4ea2: b'\x11\xb1^', + -0x4ea1: b'\x11\xb1_', + -0x4ea0: b'\x11\xb1`', + -0x4e9f: b'\x11\xb1a', + -0x4e9e: b'\x11\xb1b', + -0x4e9d: b'\x11\xb1c', + -0x4e9c: b'\x11\xb1d', + -0x4e9b: b'\x11\xb1e', + -0x4e9a: b'\x11\xb1f', + -0x4e99: b'\x11\xb1g', + -0x4e98: b'\x11\xb1h', + -0x4e97: b'\x11\xb1i', + -0x4e96: b'\x11\xb1j', + -0x4e95: b'\x11\xb1k', + -0x4e94: b'\x11\xb1l', + -0x4e93: b'\x11\xb1m', + -0x4e92: b'\x11\xb1n', + -0x4e91: b'\x11\xb1o', + -0x4e90: b'\x11\xb1p', + -0x4e8f: b'\x11\xb1q', + -0x4e8e: b'\x11\xb1r', + -0x4e8d: b'\x11\xb1s', + -0x4e8c: b'\x11\xb1t', + -0x4e8b: b'\x11\xb1u', + -0x4e8a: b'\x11\xb1v', + -0x4e89: b'\x11\xb1w', + -0x4e88: b'\x11\xb1x', + -0x4e87: b'\x11\xb1y', + -0x4e86: b'\x11\xb1z', + -0x4e85: b'\x11\xb1{', + -0x4e84: b'\x11\xb1|', + -0x4e83: b'\x11\xb1}', + -0x4e82: b'\x11\xb1~', + -0x4e81: b'\x11\xb1\x7f', + -0x4e80: b'\x11\xb1\x80', + -0x4e7f: b'\x11\xb1\x81', + -0x4e7e: b'\x11\xb1\x82', + -0x4e7d: b'\x11\xb1\x83', + -0x4e7c: b'\x11\xb1\x84', + -0x4e7b: b'\x11\xb1\x85', + -0x4e7a: b'\x11\xb1\x86', + -0x4e79: b'\x11\xb1\x87', + -0x4e78: b'\x11\xb1\x88', + -0x4e77: b'\x11\xb1\x89', + -0x4e76: b'\x11\xb1\x8a', + -0x4e75: b'\x11\xb1\x8b', + -0x4e74: b'\x11\xb1\x8c', + -0x4e73: b'\x11\xb1\x8d', + -0x4e72: b'\x11\xb1\x8e', + -0x4e71: b'\x11\xb1\x8f', + -0x4e70: b'\x11\xb1\x90', + -0x4e6f: b'\x11\xb1\x91', + -0x4e6e: b'\x11\xb1\x92', + -0x4e6d: b'\x11\xb1\x93', + -0x4e6c: b'\x11\xb1\x94', + -0x4e6b: b'\x11\xb1\x95', + -0x4e6a: b'\x11\xb1\x96', + -0x4e69: b'\x11\xb1\x97', + -0x4e68: b'\x11\xb1\x98', + -0x4e67: b'\x11\xb1\x99', + -0x4e66: b'\x11\xb1\x9a', + -0x4e65: b'\x11\xb1\x9b', + -0x4e64: b'\x11\xb1\x9c', + -0x4e63: b'\x11\xb1\x9d', + -0x4e62: b'\x11\xb1\x9e', + -0x4e61: b'\x11\xb1\x9f', + -0x4e60: b'\x11\xb1\xa0', + -0x4e5f: b'\x11\xb1\xa1', + -0x4e5e: b'\x11\xb1\xa2', + -0x4e5d: b'\x11\xb1\xa3', + -0x4e5c: b'\x11\xb1\xa4', + -0x4e5b: b'\x11\xb1\xa5', + -0x4e5a: b'\x11\xb1\xa6', + -0x4e59: b'\x11\xb1\xa7', + -0x4e58: b'\x11\xb1\xa8', + -0x4e57: b'\x11\xb1\xa9', + -0x4e56: b'\x11\xb1\xaa', + -0x4e55: b'\x11\xb1\xab', + -0x4e54: b'\x11\xb1\xac', + -0x4e53: b'\x11\xb1\xad', + -0x4e52: b'\x11\xb1\xae', + -0x4e51: b'\x11\xb1\xaf', + -0x4e50: b'\x11\xb1\xb0', + -0x4e4f: b'\x11\xb1\xb1', + -0x4e4e: b'\x11\xb1\xb2', + -0x4e4d: b'\x11\xb1\xb3', + -0x4e4c: b'\x11\xb1\xb4', + -0x4e4b: b'\x11\xb1\xb5', + -0x4e4a: b'\x11\xb1\xb6', + -0x4e49: b'\x11\xb1\xb7', + -0x4e48: b'\x11\xb1\xb8', + -0x4e47: b'\x11\xb1\xb9', + -0x4e46: b'\x11\xb1\xba', + -0x4e45: b'\x11\xb1\xbb', + -0x4e44: b'\x11\xb1\xbc', + -0x4e43: b'\x11\xb1\xbd', + -0x4e42: b'\x11\xb1\xbe', + -0x4e41: b'\x11\xb1\xbf', + -0x4e40: b'\x11\xb1\xc0', + -0x4e3f: b'\x11\xb1\xc1', + -0x4e3e: b'\x11\xb1\xc2', + -0x4e3d: b'\x11\xb1\xc3', + -0x4e3c: b'\x11\xb1\xc4', + -0x4e3b: b'\x11\xb1\xc5', + -0x4e3a: b'\x11\xb1\xc6', + -0x4e39: b'\x11\xb1\xc7', + -0x4e38: b'\x11\xb1\xc8', + -0x4e37: b'\x11\xb1\xc9', + -0x4e36: b'\x11\xb1\xca', + -0x4e35: b'\x11\xb1\xcb', + -0x4e34: b'\x11\xb1\xcc', + -0x4e33: b'\x11\xb1\xcd', + -0x4e32: b'\x11\xb1\xce', + -0x4e31: b'\x11\xb1\xcf', + -0x4e30: b'\x11\xb1\xd0', + -0x4e2f: b'\x11\xb1\xd1', + -0x4e2e: b'\x11\xb1\xd2', + -0x4e2d: b'\x11\xb1\xd3', + -0x4e2c: b'\x11\xb1\xd4', + -0x4e2b: b'\x11\xb1\xd5', + -0x4e2a: b'\x11\xb1\xd6', + -0x4e29: b'\x11\xb1\xd7', + -0x4e28: b'\x11\xb1\xd8', + -0x4e27: b'\x11\xb1\xd9', + -0x4e26: b'\x11\xb1\xda', + -0x4e25: b'\x11\xb1\xdb', + -0x4e24: b'\x11\xb1\xdc', + -0x4e23: b'\x11\xb1\xdd', + -0x4e22: b'\x11\xb1\xde', + -0x4e21: b'\x11\xb1\xdf', + -0x4e20: b'\x11\xb1\xe0', + -0x4e1f: b'\x11\xb1\xe1', + -0x4e1e: b'\x11\xb1\xe2', + -0x4e1d: b'\x11\xb1\xe3', + -0x4e1c: b'\x11\xb1\xe4', + -0x4e1b: b'\x11\xb1\xe5', + -0x4e1a: b'\x11\xb1\xe6', + -0x4e19: b'\x11\xb1\xe7', + -0x4e18: b'\x11\xb1\xe8', + -0x4e17: b'\x11\xb1\xe9', + -0x4e16: b'\x11\xb1\xea', + -0x4e15: b'\x11\xb1\xeb', + -0x4e14: b'\x11\xb1\xec', + -0x4e13: b'\x11\xb1\xed', + -0x4e12: b'\x11\xb1\xee', + -0x4e11: b'\x11\xb1\xef', + -0x4e10: b'\x11\xb1\xf0', + -0x4e0f: b'\x11\xb1\xf1', + -0x4e0e: b'\x11\xb1\xf2', + -0x4e0d: b'\x11\xb1\xf3', + -0x4e0c: b'\x11\xb1\xf4', + -0x4e0b: b'\x11\xb1\xf5', + -0x4e0a: b'\x11\xb1\xf6', + -0x4e09: b'\x11\xb1\xf7', + -0x4e08: b'\x11\xb1\xf8', + -0x4e07: b'\x11\xb1\xf9', + -0x4e06: b'\x11\xb1\xfa', + -0x4e05: b'\x11\xb1\xfb', + -0x4e04: b'\x11\xb1\xfc', + -0x4e03: b'\x11\xb1\xfd', + -0x4e02: b'\x11\xb1\xfe', + -0x4e01: b'\x11\xb1\xff', + -0x4e00: b'\x11\xb2\x00', + -0x4dff: b'\x11\xb2\x01', + -0x4dfe: b'\x11\xb2\x02', + -0x4dfd: b'\x11\xb2\x03', + -0x4dfc: b'\x11\xb2\x04', + -0x4dfb: b'\x11\xb2\x05', + -0x4dfa: b'\x11\xb2\x06', + -0x4df9: b'\x11\xb2\x07', + -0x4df8: b'\x11\xb2\x08', + -0x4df7: b'\x11\xb2\t', + -0x4df6: b'\x11\xb2\n', + -0x4df5: b'\x11\xb2\x0b', + -0x4df4: b'\x11\xb2\x0c', + -0x4df3: b'\x11\xb2\r', + -0x4df2: b'\x11\xb2\x0e', + -0x4df1: b'\x11\xb2\x0f', + -0x4df0: b'\x11\xb2\x10', + -0x4def: b'\x11\xb2\x11', + -0x4dee: b'\x11\xb2\x12', + -0x4ded: b'\x11\xb2\x13', + -0x4dec: b'\x11\xb2\x14', + -0x4deb: b'\x11\xb2\x15', + -0x4dea: b'\x11\xb2\x16', + -0x4de9: b'\x11\xb2\x17', + -0x4de8: b'\x11\xb2\x18', + -0x4de7: b'\x11\xb2\x19', + -0x4de6: b'\x11\xb2\x1a', + -0x4de5: b'\x11\xb2\x1b', + -0x4de4: b'\x11\xb2\x1c', + -0x4de3: b'\x11\xb2\x1d', + -0x4de2: b'\x11\xb2\x1e', + -0x4de1: b'\x11\xb2\x1f', + -0x4de0: b'\x11\xb2 ', + -0x4ddf: b'\x11\xb2!', + -0x4dde: b'\x11\xb2"', + -0x4ddd: b'\x11\xb2#', + -0x4ddc: b'\x11\xb2$', + -0x4ddb: b'\x11\xb2%', + -0x4dda: b'\x11\xb2&', + -0x4dd9: b"\x11\xb2'", + -0x4dd8: b'\x11\xb2(', + -0x4dd7: b'\x11\xb2)', + -0x4dd6: b'\x11\xb2*', + -0x4dd5: b'\x11\xb2+', + -0x4dd4: b'\x11\xb2,', + -0x4dd3: b'\x11\xb2-', + -0x4dd2: b'\x11\xb2.', + -0x4dd1: b'\x11\xb2/', + -0x4dd0: b'\x11\xb20', + -0x4dcf: b'\x11\xb21', + -0x4dce: b'\x11\xb22', + -0x4dcd: b'\x11\xb23', + -0x4dcc: b'\x11\xb24', + -0x4dcb: b'\x11\xb25', + -0x4dca: b'\x11\xb26', + -0x4dc9: b'\x11\xb27', + -0x4dc8: b'\x11\xb28', + -0x4dc7: b'\x11\xb29', + -0x4dc6: b'\x11\xb2:', + -0x4dc5: b'\x11\xb2;', + -0x4dc4: b'\x11\xb2<', + -0x4dc3: b'\x11\xb2=', + -0x4dc2: b'\x11\xb2>', + -0x4dc1: b'\x11\xb2?', + -0x4dc0: b'\x11\xb2@', + -0x4dbf: b'\x11\xb2A', + -0x4dbe: b'\x11\xb2B', + -0x4dbd: b'\x11\xb2C', + -0x4dbc: b'\x11\xb2D', + -0x4dbb: b'\x11\xb2E', + -0x4dba: b'\x11\xb2F', + -0x4db9: b'\x11\xb2G', + -0x4db8: b'\x11\xb2H', + -0x4db7: b'\x11\xb2I', + -0x4db6: b'\x11\xb2J', + -0x4db5: b'\x11\xb2K', + -0x4db4: b'\x11\xb2L', + -0x4db3: b'\x11\xb2M', + -0x4db2: b'\x11\xb2N', + -0x4db1: b'\x11\xb2O', + -0x4db0: b'\x11\xb2P', + -0x4daf: b'\x11\xb2Q', + -0x4dae: b'\x11\xb2R', + -0x4dad: b'\x11\xb2S', + -0x4dac: b'\x11\xb2T', + -0x4dab: b'\x11\xb2U', + -0x4daa: b'\x11\xb2V', + -0x4da9: b'\x11\xb2W', + -0x4da8: b'\x11\xb2X', + -0x4da7: b'\x11\xb2Y', + -0x4da6: b'\x11\xb2Z', + -0x4da5: b'\x11\xb2[', + -0x4da4: b'\x11\xb2\\', + -0x4da3: b'\x11\xb2]', + -0x4da2: b'\x11\xb2^', + -0x4da1: b'\x11\xb2_', + -0x4da0: b'\x11\xb2`', + -0x4d9f: b'\x11\xb2a', + -0x4d9e: b'\x11\xb2b', + -0x4d9d: b'\x11\xb2c', + -0x4d9c: b'\x11\xb2d', + -0x4d9b: b'\x11\xb2e', + -0x4d9a: b'\x11\xb2f', + -0x4d99: b'\x11\xb2g', + -0x4d98: b'\x11\xb2h', + -0x4d97: b'\x11\xb2i', + -0x4d96: b'\x11\xb2j', + -0x4d95: b'\x11\xb2k', + -0x4d94: b'\x11\xb2l', + -0x4d93: b'\x11\xb2m', + -0x4d92: b'\x11\xb2n', + -0x4d91: b'\x11\xb2o', + -0x4d90: b'\x11\xb2p', + -0x4d8f: b'\x11\xb2q', + -0x4d8e: b'\x11\xb2r', + -0x4d8d: b'\x11\xb2s', + -0x4d8c: b'\x11\xb2t', + -0x4d8b: b'\x11\xb2u', + -0x4d8a: b'\x11\xb2v', + -0x4d89: b'\x11\xb2w', + -0x4d88: b'\x11\xb2x', + -0x4d87: b'\x11\xb2y', + -0x4d86: b'\x11\xb2z', + -0x4d85: b'\x11\xb2{', + -0x4d84: b'\x11\xb2|', + -0x4d83: b'\x11\xb2}', + -0x4d82: b'\x11\xb2~', + -0x4d81: b'\x11\xb2\x7f', + -0x4d80: b'\x11\xb2\x80', + -0x4d7f: b'\x11\xb2\x81', + -0x4d7e: b'\x11\xb2\x82', + -0x4d7d: b'\x11\xb2\x83', + -0x4d7c: b'\x11\xb2\x84', + -0x4d7b: b'\x11\xb2\x85', + -0x4d7a: b'\x11\xb2\x86', + -0x4d79: b'\x11\xb2\x87', + -0x4d78: b'\x11\xb2\x88', + -0x4d77: b'\x11\xb2\x89', + -0x4d76: b'\x11\xb2\x8a', + -0x4d75: b'\x11\xb2\x8b', + -0x4d74: b'\x11\xb2\x8c', + -0x4d73: b'\x11\xb2\x8d', + -0x4d72: b'\x11\xb2\x8e', + -0x4d71: b'\x11\xb2\x8f', + -0x4d70: b'\x11\xb2\x90', + -0x4d6f: b'\x11\xb2\x91', + -0x4d6e: b'\x11\xb2\x92', + -0x4d6d: b'\x11\xb2\x93', + -0x4d6c: b'\x11\xb2\x94', + -0x4d6b: b'\x11\xb2\x95', + -0x4d6a: b'\x11\xb2\x96', + -0x4d69: b'\x11\xb2\x97', + -0x4d68: b'\x11\xb2\x98', + -0x4d67: b'\x11\xb2\x99', + -0x4d66: b'\x11\xb2\x9a', + -0x4d65: b'\x11\xb2\x9b', + -0x4d64: b'\x11\xb2\x9c', + -0x4d63: b'\x11\xb2\x9d', + -0x4d62: b'\x11\xb2\x9e', + -0x4d61: b'\x11\xb2\x9f', + -0x4d60: b'\x11\xb2\xa0', + -0x4d5f: b'\x11\xb2\xa1', + -0x4d5e: b'\x11\xb2\xa2', + -0x4d5d: b'\x11\xb2\xa3', + -0x4d5c: b'\x11\xb2\xa4', + -0x4d5b: b'\x11\xb2\xa5', + -0x4d5a: b'\x11\xb2\xa6', + -0x4d59: b'\x11\xb2\xa7', + -0x4d58: b'\x11\xb2\xa8', + -0x4d57: b'\x11\xb2\xa9', + -0x4d56: b'\x11\xb2\xaa', + -0x4d55: b'\x11\xb2\xab', + -0x4d54: b'\x11\xb2\xac', + -0x4d53: b'\x11\xb2\xad', + -0x4d52: b'\x11\xb2\xae', + -0x4d51: b'\x11\xb2\xaf', + -0x4d50: b'\x11\xb2\xb0', + -0x4d4f: b'\x11\xb2\xb1', + -0x4d4e: b'\x11\xb2\xb2', + -0x4d4d: b'\x11\xb2\xb3', + -0x4d4c: b'\x11\xb2\xb4', + -0x4d4b: b'\x11\xb2\xb5', + -0x4d4a: b'\x11\xb2\xb6', + -0x4d49: b'\x11\xb2\xb7', + -0x4d48: b'\x11\xb2\xb8', + -0x4d47: b'\x11\xb2\xb9', + -0x4d46: b'\x11\xb2\xba', + -0x4d45: b'\x11\xb2\xbb', + -0x4d44: b'\x11\xb2\xbc', + -0x4d43: b'\x11\xb2\xbd', + -0x4d42: b'\x11\xb2\xbe', + -0x4d41: b'\x11\xb2\xbf', + -0x4d40: b'\x11\xb2\xc0', + -0x4d3f: b'\x11\xb2\xc1', + -0x4d3e: b'\x11\xb2\xc2', + -0x4d3d: b'\x11\xb2\xc3', + -0x4d3c: b'\x11\xb2\xc4', + -0x4d3b: b'\x11\xb2\xc5', + -0x4d3a: b'\x11\xb2\xc6', + -0x4d39: b'\x11\xb2\xc7', + -0x4d38: b'\x11\xb2\xc8', + -0x4d37: b'\x11\xb2\xc9', + -0x4d36: b'\x11\xb2\xca', + -0x4d35: b'\x11\xb2\xcb', + -0x4d34: b'\x11\xb2\xcc', + -0x4d33: b'\x11\xb2\xcd', + -0x4d32: b'\x11\xb2\xce', + -0x4d31: b'\x11\xb2\xcf', + -0x4d30: b'\x11\xb2\xd0', + -0x4d2f: b'\x11\xb2\xd1', + -0x4d2e: b'\x11\xb2\xd2', + -0x4d2d: b'\x11\xb2\xd3', + -0x4d2c: b'\x11\xb2\xd4', + -0x4d2b: b'\x11\xb2\xd5', + -0x4d2a: b'\x11\xb2\xd6', + -0x4d29: b'\x11\xb2\xd7', + -0x4d28: b'\x11\xb2\xd8', + -0x4d27: b'\x11\xb2\xd9', + -0x4d26: b'\x11\xb2\xda', + -0x4d25: b'\x11\xb2\xdb', + -0x4d24: b'\x11\xb2\xdc', + -0x4d23: b'\x11\xb2\xdd', + -0x4d22: b'\x11\xb2\xde', + -0x4d21: b'\x11\xb2\xdf', + -0x4d20: b'\x11\xb2\xe0', + -0x4d1f: b'\x11\xb2\xe1', + -0x4d1e: b'\x11\xb2\xe2', + -0x4d1d: b'\x11\xb2\xe3', + -0x4d1c: b'\x11\xb2\xe4', + -0x4d1b: b'\x11\xb2\xe5', + -0x4d1a: b'\x11\xb2\xe6', + -0x4d19: b'\x11\xb2\xe7', + -0x4d18: b'\x11\xb2\xe8', + -0x4d17: b'\x11\xb2\xe9', + -0x4d16: b'\x11\xb2\xea', + -0x4d15: b'\x11\xb2\xeb', + -0x4d14: b'\x11\xb2\xec', + -0x4d13: b'\x11\xb2\xed', + -0x4d12: b'\x11\xb2\xee', + -0x4d11: b'\x11\xb2\xef', + -0x4d10: b'\x11\xb2\xf0', + -0x4d0f: b'\x11\xb2\xf1', + -0x4d0e: b'\x11\xb2\xf2', + -0x4d0d: b'\x11\xb2\xf3', + -0x4d0c: b'\x11\xb2\xf4', + -0x4d0b: b'\x11\xb2\xf5', + -0x4d0a: b'\x11\xb2\xf6', + -0x4d09: b'\x11\xb2\xf7', + -0x4d08: b'\x11\xb2\xf8', + -0x4d07: b'\x11\xb2\xf9', + -0x4d06: b'\x11\xb2\xfa', + -0x4d05: b'\x11\xb2\xfb', + -0x4d04: b'\x11\xb2\xfc', + -0x4d03: b'\x11\xb2\xfd', + -0x4d02: b'\x11\xb2\xfe', + -0x4d01: b'\x11\xb2\xff', + -0x4d00: b'\x11\xb3\x00', + -0x4cff: b'\x11\xb3\x01', + -0x4cfe: b'\x11\xb3\x02', + -0x4cfd: b'\x11\xb3\x03', + -0x4cfc: b'\x11\xb3\x04', + -0x4cfb: b'\x11\xb3\x05', + -0x4cfa: b'\x11\xb3\x06', + -0x4cf9: b'\x11\xb3\x07', + -0x4cf8: b'\x11\xb3\x08', + -0x4cf7: b'\x11\xb3\t', + -0x4cf6: b'\x11\xb3\n', + -0x4cf5: b'\x11\xb3\x0b', + -0x4cf4: b'\x11\xb3\x0c', + -0x4cf3: b'\x11\xb3\r', + -0x4cf2: b'\x11\xb3\x0e', + -0x4cf1: b'\x11\xb3\x0f', + -0x4cf0: b'\x11\xb3\x10', + -0x4cef: b'\x11\xb3\x11', + -0x4cee: b'\x11\xb3\x12', + -0x4ced: b'\x11\xb3\x13', + -0x4cec: b'\x11\xb3\x14', + -0x4ceb: b'\x11\xb3\x15', + -0x4cea: b'\x11\xb3\x16', + -0x4ce9: b'\x11\xb3\x17', + -0x4ce8: b'\x11\xb3\x18', + -0x4ce7: b'\x11\xb3\x19', + -0x4ce6: b'\x11\xb3\x1a', + -0x4ce5: b'\x11\xb3\x1b', + -0x4ce4: b'\x11\xb3\x1c', + -0x4ce3: b'\x11\xb3\x1d', + -0x4ce2: b'\x11\xb3\x1e', + -0x4ce1: b'\x11\xb3\x1f', + -0x4ce0: b'\x11\xb3 ', + -0x4cdf: b'\x11\xb3!', + -0x4cde: b'\x11\xb3"', + -0x4cdd: b'\x11\xb3#', + -0x4cdc: b'\x11\xb3$', + -0x4cdb: b'\x11\xb3%', + -0x4cda: b'\x11\xb3&', + -0x4cd9: b"\x11\xb3'", + -0x4cd8: b'\x11\xb3(', + -0x4cd7: b'\x11\xb3)', + -0x4cd6: b'\x11\xb3*', + -0x4cd5: b'\x11\xb3+', + -0x4cd4: b'\x11\xb3,', + -0x4cd3: b'\x11\xb3-', + -0x4cd2: b'\x11\xb3.', + -0x4cd1: b'\x11\xb3/', + -0x4cd0: b'\x11\xb30', + -0x4ccf: b'\x11\xb31', + -0x4cce: b'\x11\xb32', + -0x4ccd: b'\x11\xb33', + -0x4ccc: b'\x11\xb34', + -0x4ccb: b'\x11\xb35', + -0x4cca: b'\x11\xb36', + -0x4cc9: b'\x11\xb37', + -0x4cc8: b'\x11\xb38', + -0x4cc7: b'\x11\xb39', + -0x4cc6: b'\x11\xb3:', + -0x4cc5: b'\x11\xb3;', + -0x4cc4: b'\x11\xb3<', + -0x4cc3: b'\x11\xb3=', + -0x4cc2: b'\x11\xb3>', + -0x4cc1: b'\x11\xb3?', + -0x4cc0: b'\x11\xb3@', + -0x4cbf: b'\x11\xb3A', + -0x4cbe: b'\x11\xb3B', + -0x4cbd: b'\x11\xb3C', + -0x4cbc: b'\x11\xb3D', + -0x4cbb: b'\x11\xb3E', + -0x4cba: b'\x11\xb3F', + -0x4cb9: b'\x11\xb3G', + -0x4cb8: b'\x11\xb3H', + -0x4cb7: b'\x11\xb3I', + -0x4cb6: b'\x11\xb3J', + -0x4cb5: b'\x11\xb3K', + -0x4cb4: b'\x11\xb3L', + -0x4cb3: b'\x11\xb3M', + -0x4cb2: b'\x11\xb3N', + -0x4cb1: b'\x11\xb3O', + -0x4cb0: b'\x11\xb3P', + -0x4caf: b'\x11\xb3Q', + -0x4cae: b'\x11\xb3R', + -0x4cad: b'\x11\xb3S', + -0x4cac: b'\x11\xb3T', + -0x4cab: b'\x11\xb3U', + -0x4caa: b'\x11\xb3V', + -0x4ca9: b'\x11\xb3W', + -0x4ca8: b'\x11\xb3X', + -0x4ca7: b'\x11\xb3Y', + -0x4ca6: b'\x11\xb3Z', + -0x4ca5: b'\x11\xb3[', + -0x4ca4: b'\x11\xb3\\', + -0x4ca3: b'\x11\xb3]', + -0x4ca2: b'\x11\xb3^', + -0x4ca1: b'\x11\xb3_', + -0x4ca0: b'\x11\xb3`', + -0x4c9f: b'\x11\xb3a', + -0x4c9e: b'\x11\xb3b', + -0x4c9d: b'\x11\xb3c', + -0x4c9c: b'\x11\xb3d', + -0x4c9b: b'\x11\xb3e', + -0x4c9a: b'\x11\xb3f', + -0x4c99: b'\x11\xb3g', + -0x4c98: b'\x11\xb3h', + -0x4c97: b'\x11\xb3i', + -0x4c96: b'\x11\xb3j', + -0x4c95: b'\x11\xb3k', + -0x4c94: b'\x11\xb3l', + -0x4c93: b'\x11\xb3m', + -0x4c92: b'\x11\xb3n', + -0x4c91: b'\x11\xb3o', + -0x4c90: b'\x11\xb3p', + -0x4c8f: b'\x11\xb3q', + -0x4c8e: b'\x11\xb3r', + -0x4c8d: b'\x11\xb3s', + -0x4c8c: b'\x11\xb3t', + -0x4c8b: b'\x11\xb3u', + -0x4c8a: b'\x11\xb3v', + -0x4c89: b'\x11\xb3w', + -0x4c88: b'\x11\xb3x', + -0x4c87: b'\x11\xb3y', + -0x4c86: b'\x11\xb3z', + -0x4c85: b'\x11\xb3{', + -0x4c84: b'\x11\xb3|', + -0x4c83: b'\x11\xb3}', + -0x4c82: b'\x11\xb3~', + -0x4c81: b'\x11\xb3\x7f', + -0x4c80: b'\x11\xb3\x80', + -0x4c7f: b'\x11\xb3\x81', + -0x4c7e: b'\x11\xb3\x82', + -0x4c7d: b'\x11\xb3\x83', + -0x4c7c: b'\x11\xb3\x84', + -0x4c7b: b'\x11\xb3\x85', + -0x4c7a: b'\x11\xb3\x86', + -0x4c79: b'\x11\xb3\x87', + -0x4c78: b'\x11\xb3\x88', + -0x4c77: b'\x11\xb3\x89', + -0x4c76: b'\x11\xb3\x8a', + -0x4c75: b'\x11\xb3\x8b', + -0x4c74: b'\x11\xb3\x8c', + -0x4c73: b'\x11\xb3\x8d', + -0x4c72: b'\x11\xb3\x8e', + -0x4c71: b'\x11\xb3\x8f', + -0x4c70: b'\x11\xb3\x90', + -0x4c6f: b'\x11\xb3\x91', + -0x4c6e: b'\x11\xb3\x92', + -0x4c6d: b'\x11\xb3\x93', + -0x4c6c: b'\x11\xb3\x94', + -0x4c6b: b'\x11\xb3\x95', + -0x4c6a: b'\x11\xb3\x96', + -0x4c69: b'\x11\xb3\x97', + -0x4c68: b'\x11\xb3\x98', + -0x4c67: b'\x11\xb3\x99', + -0x4c66: b'\x11\xb3\x9a', + -0x4c65: b'\x11\xb3\x9b', + -0x4c64: b'\x11\xb3\x9c', + -0x4c63: b'\x11\xb3\x9d', + -0x4c62: b'\x11\xb3\x9e', + -0x4c61: b'\x11\xb3\x9f', + -0x4c60: b'\x11\xb3\xa0', + -0x4c5f: b'\x11\xb3\xa1', + -0x4c5e: b'\x11\xb3\xa2', + -0x4c5d: b'\x11\xb3\xa3', + -0x4c5c: b'\x11\xb3\xa4', + -0x4c5b: b'\x11\xb3\xa5', + -0x4c5a: b'\x11\xb3\xa6', + -0x4c59: b'\x11\xb3\xa7', + -0x4c58: b'\x11\xb3\xa8', + -0x4c57: b'\x11\xb3\xa9', + -0x4c56: b'\x11\xb3\xaa', + -0x4c55: b'\x11\xb3\xab', + -0x4c54: b'\x11\xb3\xac', + -0x4c53: b'\x11\xb3\xad', + -0x4c52: b'\x11\xb3\xae', + -0x4c51: b'\x11\xb3\xaf', + -0x4c50: b'\x11\xb3\xb0', + -0x4c4f: b'\x11\xb3\xb1', + -0x4c4e: b'\x11\xb3\xb2', + -0x4c4d: b'\x11\xb3\xb3', + -0x4c4c: b'\x11\xb3\xb4', + -0x4c4b: b'\x11\xb3\xb5', + -0x4c4a: b'\x11\xb3\xb6', + -0x4c49: b'\x11\xb3\xb7', + -0x4c48: b'\x11\xb3\xb8', + -0x4c47: b'\x11\xb3\xb9', + -0x4c46: b'\x11\xb3\xba', + -0x4c45: b'\x11\xb3\xbb', + -0x4c44: b'\x11\xb3\xbc', + -0x4c43: b'\x11\xb3\xbd', + -0x4c42: b'\x11\xb3\xbe', + -0x4c41: b'\x11\xb3\xbf', + -0x4c40: b'\x11\xb3\xc0', + -0x4c3f: b'\x11\xb3\xc1', + -0x4c3e: b'\x11\xb3\xc2', + -0x4c3d: b'\x11\xb3\xc3', + -0x4c3c: b'\x11\xb3\xc4', + -0x4c3b: b'\x11\xb3\xc5', + -0x4c3a: b'\x11\xb3\xc6', + -0x4c39: b'\x11\xb3\xc7', + -0x4c38: b'\x11\xb3\xc8', + -0x4c37: b'\x11\xb3\xc9', + -0x4c36: b'\x11\xb3\xca', + -0x4c35: b'\x11\xb3\xcb', + -0x4c34: b'\x11\xb3\xcc', + -0x4c33: b'\x11\xb3\xcd', + -0x4c32: b'\x11\xb3\xce', + -0x4c31: b'\x11\xb3\xcf', + -0x4c30: b'\x11\xb3\xd0', + -0x4c2f: b'\x11\xb3\xd1', + -0x4c2e: b'\x11\xb3\xd2', + -0x4c2d: b'\x11\xb3\xd3', + -0x4c2c: b'\x11\xb3\xd4', + -0x4c2b: b'\x11\xb3\xd5', + -0x4c2a: b'\x11\xb3\xd6', + -0x4c29: b'\x11\xb3\xd7', + -0x4c28: b'\x11\xb3\xd8', + -0x4c27: b'\x11\xb3\xd9', + -0x4c26: b'\x11\xb3\xda', + -0x4c25: b'\x11\xb3\xdb', + -0x4c24: b'\x11\xb3\xdc', + -0x4c23: b'\x11\xb3\xdd', + -0x4c22: b'\x11\xb3\xde', + -0x4c21: b'\x11\xb3\xdf', + -0x4c20: b'\x11\xb3\xe0', + -0x4c1f: b'\x11\xb3\xe1', + -0x4c1e: b'\x11\xb3\xe2', + -0x4c1d: b'\x11\xb3\xe3', + -0x4c1c: b'\x11\xb3\xe4', + -0x4c1b: b'\x11\xb3\xe5', + -0x4c1a: b'\x11\xb3\xe6', + -0x4c19: b'\x11\xb3\xe7', + -0x4c18: b'\x11\xb3\xe8', + -0x4c17: b'\x11\xb3\xe9', + -0x4c16: b'\x11\xb3\xea', + -0x4c15: b'\x11\xb3\xeb', + -0x4c14: b'\x11\xb3\xec', + -0x4c13: b'\x11\xb3\xed', + -0x4c12: b'\x11\xb3\xee', + -0x4c11: b'\x11\xb3\xef', + -0x4c10: b'\x11\xb3\xf0', + -0x4c0f: b'\x11\xb3\xf1', + -0x4c0e: b'\x11\xb3\xf2', + -0x4c0d: b'\x11\xb3\xf3', + -0x4c0c: b'\x11\xb3\xf4', + -0x4c0b: b'\x11\xb3\xf5', + -0x4c0a: b'\x11\xb3\xf6', + -0x4c09: b'\x11\xb3\xf7', + -0x4c08: b'\x11\xb3\xf8', + -0x4c07: b'\x11\xb3\xf9', + -0x4c06: b'\x11\xb3\xfa', + -0x4c05: b'\x11\xb3\xfb', + -0x4c04: b'\x11\xb3\xfc', + -0x4c03: b'\x11\xb3\xfd', + -0x4c02: b'\x11\xb3\xfe', + -0x4c01: b'\x11\xb3\xff', + -0x4c00: b'\x11\xb4\x00', + -0x4bff: b'\x11\xb4\x01', + -0x4bfe: b'\x11\xb4\x02', + -0x4bfd: b'\x11\xb4\x03', + -0x4bfc: b'\x11\xb4\x04', + -0x4bfb: b'\x11\xb4\x05', + -0x4bfa: b'\x11\xb4\x06', + -0x4bf9: b'\x11\xb4\x07', + -0x4bf8: b'\x11\xb4\x08', + -0x4bf7: b'\x11\xb4\t', + -0x4bf6: b'\x11\xb4\n', + -0x4bf5: b'\x11\xb4\x0b', + -0x4bf4: b'\x11\xb4\x0c', + -0x4bf3: b'\x11\xb4\r', + -0x4bf2: b'\x11\xb4\x0e', + -0x4bf1: b'\x11\xb4\x0f', + -0x4bf0: b'\x11\xb4\x10', + -0x4bef: b'\x11\xb4\x11', + -0x4bee: b'\x11\xb4\x12', + -0x4bed: b'\x11\xb4\x13', + -0x4bec: b'\x11\xb4\x14', + -0x4beb: b'\x11\xb4\x15', + -0x4bea: b'\x11\xb4\x16', + -0x4be9: b'\x11\xb4\x17', + -0x4be8: b'\x11\xb4\x18', + -0x4be7: b'\x11\xb4\x19', + -0x4be6: b'\x11\xb4\x1a', + -0x4be5: b'\x11\xb4\x1b', + -0x4be4: b'\x11\xb4\x1c', + -0x4be3: b'\x11\xb4\x1d', + -0x4be2: b'\x11\xb4\x1e', + -0x4be1: b'\x11\xb4\x1f', + -0x4be0: b'\x11\xb4 ', + -0x4bdf: b'\x11\xb4!', + -0x4bde: b'\x11\xb4"', + -0x4bdd: b'\x11\xb4#', + -0x4bdc: b'\x11\xb4$', + -0x4bdb: b'\x11\xb4%', + -0x4bda: b'\x11\xb4&', + -0x4bd9: b"\x11\xb4'", + -0x4bd8: b'\x11\xb4(', + -0x4bd7: b'\x11\xb4)', + -0x4bd6: b'\x11\xb4*', + -0x4bd5: b'\x11\xb4+', + -0x4bd4: b'\x11\xb4,', + -0x4bd3: b'\x11\xb4-', + -0x4bd2: b'\x11\xb4.', + -0x4bd1: b'\x11\xb4/', + -0x4bd0: b'\x11\xb40', + -0x4bcf: b'\x11\xb41', + -0x4bce: b'\x11\xb42', + -0x4bcd: b'\x11\xb43', + -0x4bcc: b'\x11\xb44', + -0x4bcb: b'\x11\xb45', + -0x4bca: b'\x11\xb46', + -0x4bc9: b'\x11\xb47', + -0x4bc8: b'\x11\xb48', + -0x4bc7: b'\x11\xb49', + -0x4bc6: b'\x11\xb4:', + -0x4bc5: b'\x11\xb4;', + -0x4bc4: b'\x11\xb4<', + -0x4bc3: b'\x11\xb4=', + -0x4bc2: b'\x11\xb4>', + -0x4bc1: b'\x11\xb4?', + -0x4bc0: b'\x11\xb4@', + -0x4bbf: b'\x11\xb4A', + -0x4bbe: b'\x11\xb4B', + -0x4bbd: b'\x11\xb4C', + -0x4bbc: b'\x11\xb4D', + -0x4bbb: b'\x11\xb4E', + -0x4bba: b'\x11\xb4F', + -0x4bb9: b'\x11\xb4G', + -0x4bb8: b'\x11\xb4H', + -0x4bb7: b'\x11\xb4I', + -0x4bb6: b'\x11\xb4J', + -0x4bb5: b'\x11\xb4K', + -0x4bb4: b'\x11\xb4L', + -0x4bb3: b'\x11\xb4M', + -0x4bb2: b'\x11\xb4N', + -0x4bb1: b'\x11\xb4O', + -0x4bb0: b'\x11\xb4P', + -0x4baf: b'\x11\xb4Q', + -0x4bae: b'\x11\xb4R', + -0x4bad: b'\x11\xb4S', + -0x4bac: b'\x11\xb4T', + -0x4bab: b'\x11\xb4U', + -0x4baa: b'\x11\xb4V', + -0x4ba9: b'\x11\xb4W', + -0x4ba8: b'\x11\xb4X', + -0x4ba7: b'\x11\xb4Y', + -0x4ba6: b'\x11\xb4Z', + -0x4ba5: b'\x11\xb4[', + -0x4ba4: b'\x11\xb4\\', + -0x4ba3: b'\x11\xb4]', + -0x4ba2: b'\x11\xb4^', + -0x4ba1: b'\x11\xb4_', + -0x4ba0: b'\x11\xb4`', + -0x4b9f: b'\x11\xb4a', + -0x4b9e: b'\x11\xb4b', + -0x4b9d: b'\x11\xb4c', + -0x4b9c: b'\x11\xb4d', + -0x4b9b: b'\x11\xb4e', + -0x4b9a: b'\x11\xb4f', + -0x4b99: b'\x11\xb4g', + -0x4b98: b'\x11\xb4h', + -0x4b97: b'\x11\xb4i', + -0x4b96: b'\x11\xb4j', + -0x4b95: b'\x11\xb4k', + -0x4b94: b'\x11\xb4l', + -0x4b93: b'\x11\xb4m', + -0x4b92: b'\x11\xb4n', + -0x4b91: b'\x11\xb4o', + -0x4b90: b'\x11\xb4p', + -0x4b8f: b'\x11\xb4q', + -0x4b8e: b'\x11\xb4r', + -0x4b8d: b'\x11\xb4s', + -0x4b8c: b'\x11\xb4t', + -0x4b8b: b'\x11\xb4u', + -0x4b8a: b'\x11\xb4v', + -0x4b89: b'\x11\xb4w', + -0x4b88: b'\x11\xb4x', + -0x4b87: b'\x11\xb4y', + -0x4b86: b'\x11\xb4z', + -0x4b85: b'\x11\xb4{', + -0x4b84: b'\x11\xb4|', + -0x4b83: b'\x11\xb4}', + -0x4b82: b'\x11\xb4~', + -0x4b81: b'\x11\xb4\x7f', + -0x4b80: b'\x11\xb4\x80', + -0x4b7f: b'\x11\xb4\x81', + -0x4b7e: b'\x11\xb4\x82', + -0x4b7d: b'\x11\xb4\x83', + -0x4b7c: b'\x11\xb4\x84', + -0x4b7b: b'\x11\xb4\x85', + -0x4b7a: b'\x11\xb4\x86', + -0x4b79: b'\x11\xb4\x87', + -0x4b78: b'\x11\xb4\x88', + -0x4b77: b'\x11\xb4\x89', + -0x4b76: b'\x11\xb4\x8a', + -0x4b75: b'\x11\xb4\x8b', + -0x4b74: b'\x11\xb4\x8c', + -0x4b73: b'\x11\xb4\x8d', + -0x4b72: b'\x11\xb4\x8e', + -0x4b71: b'\x11\xb4\x8f', + -0x4b70: b'\x11\xb4\x90', + -0x4b6f: b'\x11\xb4\x91', + -0x4b6e: b'\x11\xb4\x92', + -0x4b6d: b'\x11\xb4\x93', + -0x4b6c: b'\x11\xb4\x94', + -0x4b6b: b'\x11\xb4\x95', + -0x4b6a: b'\x11\xb4\x96', + -0x4b69: b'\x11\xb4\x97', + -0x4b68: b'\x11\xb4\x98', + -0x4b67: b'\x11\xb4\x99', + -0x4b66: b'\x11\xb4\x9a', + -0x4b65: b'\x11\xb4\x9b', + -0x4b64: b'\x11\xb4\x9c', + -0x4b63: b'\x11\xb4\x9d', + -0x4b62: b'\x11\xb4\x9e', + -0x4b61: b'\x11\xb4\x9f', + -0x4b60: b'\x11\xb4\xa0', + -0x4b5f: b'\x11\xb4\xa1', + -0x4b5e: b'\x11\xb4\xa2', + -0x4b5d: b'\x11\xb4\xa3', + -0x4b5c: b'\x11\xb4\xa4', + -0x4b5b: b'\x11\xb4\xa5', + -0x4b5a: b'\x11\xb4\xa6', + -0x4b59: b'\x11\xb4\xa7', + -0x4b58: b'\x11\xb4\xa8', + -0x4b57: b'\x11\xb4\xa9', + -0x4b56: b'\x11\xb4\xaa', + -0x4b55: b'\x11\xb4\xab', + -0x4b54: b'\x11\xb4\xac', + -0x4b53: b'\x11\xb4\xad', + -0x4b52: b'\x11\xb4\xae', + -0x4b51: b'\x11\xb4\xaf', + -0x4b50: b'\x11\xb4\xb0', + -0x4b4f: b'\x11\xb4\xb1', + -0x4b4e: b'\x11\xb4\xb2', + -0x4b4d: b'\x11\xb4\xb3', + -0x4b4c: b'\x11\xb4\xb4', + -0x4b4b: b'\x11\xb4\xb5', + -0x4b4a: b'\x11\xb4\xb6', + -0x4b49: b'\x11\xb4\xb7', + -0x4b48: b'\x11\xb4\xb8', + -0x4b47: b'\x11\xb4\xb9', + -0x4b46: b'\x11\xb4\xba', + -0x4b45: b'\x11\xb4\xbb', + -0x4b44: b'\x11\xb4\xbc', + -0x4b43: b'\x11\xb4\xbd', + -0x4b42: b'\x11\xb4\xbe', + -0x4b41: b'\x11\xb4\xbf', + -0x4b40: b'\x11\xb4\xc0', + -0x4b3f: b'\x11\xb4\xc1', + -0x4b3e: b'\x11\xb4\xc2', + -0x4b3d: b'\x11\xb4\xc3', + -0x4b3c: b'\x11\xb4\xc4', + -0x4b3b: b'\x11\xb4\xc5', + -0x4b3a: b'\x11\xb4\xc6', + -0x4b39: b'\x11\xb4\xc7', + -0x4b38: b'\x11\xb4\xc8', + -0x4b37: b'\x11\xb4\xc9', + -0x4b36: b'\x11\xb4\xca', + -0x4b35: b'\x11\xb4\xcb', + -0x4b34: b'\x11\xb4\xcc', + -0x4b33: b'\x11\xb4\xcd', + -0x4b32: b'\x11\xb4\xce', + -0x4b31: b'\x11\xb4\xcf', + -0x4b30: b'\x11\xb4\xd0', + -0x4b2f: b'\x11\xb4\xd1', + -0x4b2e: b'\x11\xb4\xd2', + -0x4b2d: b'\x11\xb4\xd3', + -0x4b2c: b'\x11\xb4\xd4', + -0x4b2b: b'\x11\xb4\xd5', + -0x4b2a: b'\x11\xb4\xd6', + -0x4b29: b'\x11\xb4\xd7', + -0x4b28: b'\x11\xb4\xd8', + -0x4b27: b'\x11\xb4\xd9', + -0x4b26: b'\x11\xb4\xda', + -0x4b25: b'\x11\xb4\xdb', + -0x4b24: b'\x11\xb4\xdc', + -0x4b23: b'\x11\xb4\xdd', + -0x4b22: b'\x11\xb4\xde', + -0x4b21: b'\x11\xb4\xdf', + -0x4b20: b'\x11\xb4\xe0', + -0x4b1f: b'\x11\xb4\xe1', + -0x4b1e: b'\x11\xb4\xe2', + -0x4b1d: b'\x11\xb4\xe3', + -0x4b1c: b'\x11\xb4\xe4', + -0x4b1b: b'\x11\xb4\xe5', + -0x4b1a: b'\x11\xb4\xe6', + -0x4b19: b'\x11\xb4\xe7', + -0x4b18: b'\x11\xb4\xe8', + -0x4b17: b'\x11\xb4\xe9', + -0x4b16: b'\x11\xb4\xea', + -0x4b15: b'\x11\xb4\xeb', + -0x4b14: b'\x11\xb4\xec', + -0x4b13: b'\x11\xb4\xed', + -0x4b12: b'\x11\xb4\xee', + -0x4b11: b'\x11\xb4\xef', + -0x4b10: b'\x11\xb4\xf0', + -0x4b0f: b'\x11\xb4\xf1', + -0x4b0e: b'\x11\xb4\xf2', + -0x4b0d: b'\x11\xb4\xf3', + -0x4b0c: b'\x11\xb4\xf4', + -0x4b0b: b'\x11\xb4\xf5', + -0x4b0a: b'\x11\xb4\xf6', + -0x4b09: b'\x11\xb4\xf7', + -0x4b08: b'\x11\xb4\xf8', + -0x4b07: b'\x11\xb4\xf9', + -0x4b06: b'\x11\xb4\xfa', + -0x4b05: b'\x11\xb4\xfb', + -0x4b04: b'\x11\xb4\xfc', + -0x4b03: b'\x11\xb4\xfd', + -0x4b02: b'\x11\xb4\xfe', + -0x4b01: b'\x11\xb4\xff', + -0x4b00: b'\x11\xb5\x00', + -0x4aff: b'\x11\xb5\x01', + -0x4afe: b'\x11\xb5\x02', + -0x4afd: b'\x11\xb5\x03', + -0x4afc: b'\x11\xb5\x04', + -0x4afb: b'\x11\xb5\x05', + -0x4afa: b'\x11\xb5\x06', + -0x4af9: b'\x11\xb5\x07', + -0x4af8: b'\x11\xb5\x08', + -0x4af7: b'\x11\xb5\t', + -0x4af6: b'\x11\xb5\n', + -0x4af5: b'\x11\xb5\x0b', + -0x4af4: b'\x11\xb5\x0c', + -0x4af3: b'\x11\xb5\r', + -0x4af2: b'\x11\xb5\x0e', + -0x4af1: b'\x11\xb5\x0f', + -0x4af0: b'\x11\xb5\x10', + -0x4aef: b'\x11\xb5\x11', + -0x4aee: b'\x11\xb5\x12', + -0x4aed: b'\x11\xb5\x13', + -0x4aec: b'\x11\xb5\x14', + -0x4aeb: b'\x11\xb5\x15', + -0x4aea: b'\x11\xb5\x16', + -0x4ae9: b'\x11\xb5\x17', + -0x4ae8: b'\x11\xb5\x18', + -0x4ae7: b'\x11\xb5\x19', + -0x4ae6: b'\x11\xb5\x1a', + -0x4ae5: b'\x11\xb5\x1b', + -0x4ae4: b'\x11\xb5\x1c', + -0x4ae3: b'\x11\xb5\x1d', + -0x4ae2: b'\x11\xb5\x1e', + -0x4ae1: b'\x11\xb5\x1f', + -0x4ae0: b'\x11\xb5 ', + -0x4adf: b'\x11\xb5!', + -0x4ade: b'\x11\xb5"', + -0x4add: b'\x11\xb5#', + -0x4adc: b'\x11\xb5$', + -0x4adb: b'\x11\xb5%', + -0x4ada: b'\x11\xb5&', + -0x4ad9: b"\x11\xb5'", + -0x4ad8: b'\x11\xb5(', + -0x4ad7: b'\x11\xb5)', + -0x4ad6: b'\x11\xb5*', + -0x4ad5: b'\x11\xb5+', + -0x4ad4: b'\x11\xb5,', + -0x4ad3: b'\x11\xb5-', + -0x4ad2: b'\x11\xb5.', + -0x4ad1: b'\x11\xb5/', + -0x4ad0: b'\x11\xb50', + -0x4acf: b'\x11\xb51', + -0x4ace: b'\x11\xb52', + -0x4acd: b'\x11\xb53', + -0x4acc: b'\x11\xb54', + -0x4acb: b'\x11\xb55', + -0x4aca: b'\x11\xb56', + -0x4ac9: b'\x11\xb57', + -0x4ac8: b'\x11\xb58', + -0x4ac7: b'\x11\xb59', + -0x4ac6: b'\x11\xb5:', + -0x4ac5: b'\x11\xb5;', + -0x4ac4: b'\x11\xb5<', + -0x4ac3: b'\x11\xb5=', + -0x4ac2: b'\x11\xb5>', + -0x4ac1: b'\x11\xb5?', + -0x4ac0: b'\x11\xb5@', + -0x4abf: b'\x11\xb5A', + -0x4abe: b'\x11\xb5B', + -0x4abd: b'\x11\xb5C', + -0x4abc: b'\x11\xb5D', + -0x4abb: b'\x11\xb5E', + -0x4aba: b'\x11\xb5F', + -0x4ab9: b'\x11\xb5G', + -0x4ab8: b'\x11\xb5H', + -0x4ab7: b'\x11\xb5I', + -0x4ab6: b'\x11\xb5J', + -0x4ab5: b'\x11\xb5K', + -0x4ab4: b'\x11\xb5L', + -0x4ab3: b'\x11\xb5M', + -0x4ab2: b'\x11\xb5N', + -0x4ab1: b'\x11\xb5O', + -0x4ab0: b'\x11\xb5P', + -0x4aaf: b'\x11\xb5Q', + -0x4aae: b'\x11\xb5R', + -0x4aad: b'\x11\xb5S', + -0x4aac: b'\x11\xb5T', + -0x4aab: b'\x11\xb5U', + -0x4aaa: b'\x11\xb5V', + -0x4aa9: b'\x11\xb5W', + -0x4aa8: b'\x11\xb5X', + -0x4aa7: b'\x11\xb5Y', + -0x4aa6: b'\x11\xb5Z', + -0x4aa5: b'\x11\xb5[', + -0x4aa4: b'\x11\xb5\\', + -0x4aa3: b'\x11\xb5]', + -0x4aa2: b'\x11\xb5^', + -0x4aa1: b'\x11\xb5_', + -0x4aa0: b'\x11\xb5`', + -0x4a9f: b'\x11\xb5a', + -0x4a9e: b'\x11\xb5b', + -0x4a9d: b'\x11\xb5c', + -0x4a9c: b'\x11\xb5d', + -0x4a9b: b'\x11\xb5e', + -0x4a9a: b'\x11\xb5f', + -0x4a99: b'\x11\xb5g', + -0x4a98: b'\x11\xb5h', + -0x4a97: b'\x11\xb5i', + -0x4a96: b'\x11\xb5j', + -0x4a95: b'\x11\xb5k', + -0x4a94: b'\x11\xb5l', + -0x4a93: b'\x11\xb5m', + -0x4a92: b'\x11\xb5n', + -0x4a91: b'\x11\xb5o', + -0x4a90: b'\x11\xb5p', + -0x4a8f: b'\x11\xb5q', + -0x4a8e: b'\x11\xb5r', + -0x4a8d: b'\x11\xb5s', + -0x4a8c: b'\x11\xb5t', + -0x4a8b: b'\x11\xb5u', + -0x4a8a: b'\x11\xb5v', + -0x4a89: b'\x11\xb5w', + -0x4a88: b'\x11\xb5x', + -0x4a87: b'\x11\xb5y', + -0x4a86: b'\x11\xb5z', + -0x4a85: b'\x11\xb5{', + -0x4a84: b'\x11\xb5|', + -0x4a83: b'\x11\xb5}', + -0x4a82: b'\x11\xb5~', + -0x4a81: b'\x11\xb5\x7f', + -0x4a80: b'\x11\xb5\x80', + -0x4a7f: b'\x11\xb5\x81', + -0x4a7e: b'\x11\xb5\x82', + -0x4a7d: b'\x11\xb5\x83', + -0x4a7c: b'\x11\xb5\x84', + -0x4a7b: b'\x11\xb5\x85', + -0x4a7a: b'\x11\xb5\x86', + -0x4a79: b'\x11\xb5\x87', + -0x4a78: b'\x11\xb5\x88', + -0x4a77: b'\x11\xb5\x89', + -0x4a76: b'\x11\xb5\x8a', + -0x4a75: b'\x11\xb5\x8b', + -0x4a74: b'\x11\xb5\x8c', + -0x4a73: b'\x11\xb5\x8d', + -0x4a72: b'\x11\xb5\x8e', + -0x4a71: b'\x11\xb5\x8f', + -0x4a70: b'\x11\xb5\x90', + -0x4a6f: b'\x11\xb5\x91', + -0x4a6e: b'\x11\xb5\x92', + -0x4a6d: b'\x11\xb5\x93', + -0x4a6c: b'\x11\xb5\x94', + -0x4a6b: b'\x11\xb5\x95', + -0x4a6a: b'\x11\xb5\x96', + -0x4a69: b'\x11\xb5\x97', + -0x4a68: b'\x11\xb5\x98', + -0x4a67: b'\x11\xb5\x99', + -0x4a66: b'\x11\xb5\x9a', + -0x4a65: b'\x11\xb5\x9b', + -0x4a64: b'\x11\xb5\x9c', + -0x4a63: b'\x11\xb5\x9d', + -0x4a62: b'\x11\xb5\x9e', + -0x4a61: b'\x11\xb5\x9f', + -0x4a60: b'\x11\xb5\xa0', + -0x4a5f: b'\x11\xb5\xa1', + -0x4a5e: b'\x11\xb5\xa2', + -0x4a5d: b'\x11\xb5\xa3', + -0x4a5c: b'\x11\xb5\xa4', + -0x4a5b: b'\x11\xb5\xa5', + -0x4a5a: b'\x11\xb5\xa6', + -0x4a59: b'\x11\xb5\xa7', + -0x4a58: b'\x11\xb5\xa8', + -0x4a57: b'\x11\xb5\xa9', + -0x4a56: b'\x11\xb5\xaa', + -0x4a55: b'\x11\xb5\xab', + -0x4a54: b'\x11\xb5\xac', + -0x4a53: b'\x11\xb5\xad', + -0x4a52: b'\x11\xb5\xae', + -0x4a51: b'\x11\xb5\xaf', + -0x4a50: b'\x11\xb5\xb0', + -0x4a4f: b'\x11\xb5\xb1', + -0x4a4e: b'\x11\xb5\xb2', + -0x4a4d: b'\x11\xb5\xb3', + -0x4a4c: b'\x11\xb5\xb4', + -0x4a4b: b'\x11\xb5\xb5', + -0x4a4a: b'\x11\xb5\xb6', + -0x4a49: b'\x11\xb5\xb7', + -0x4a48: b'\x11\xb5\xb8', + -0x4a47: b'\x11\xb5\xb9', + -0x4a46: b'\x11\xb5\xba', + -0x4a45: b'\x11\xb5\xbb', + -0x4a44: b'\x11\xb5\xbc', + -0x4a43: b'\x11\xb5\xbd', + -0x4a42: b'\x11\xb5\xbe', + -0x4a41: b'\x11\xb5\xbf', + -0x4a40: b'\x11\xb5\xc0', + -0x4a3f: b'\x11\xb5\xc1', + -0x4a3e: b'\x11\xb5\xc2', + -0x4a3d: b'\x11\xb5\xc3', + -0x4a3c: b'\x11\xb5\xc4', + -0x4a3b: b'\x11\xb5\xc5', + -0x4a3a: b'\x11\xb5\xc6', + -0x4a39: b'\x11\xb5\xc7', + -0x4a38: b'\x11\xb5\xc8', + -0x4a37: b'\x11\xb5\xc9', + -0x4a36: b'\x11\xb5\xca', + -0x4a35: b'\x11\xb5\xcb', + -0x4a34: b'\x11\xb5\xcc', + -0x4a33: b'\x11\xb5\xcd', + -0x4a32: b'\x11\xb5\xce', + -0x4a31: b'\x11\xb5\xcf', + -0x4a30: b'\x11\xb5\xd0', + -0x4a2f: b'\x11\xb5\xd1', + -0x4a2e: b'\x11\xb5\xd2', + -0x4a2d: b'\x11\xb5\xd3', + -0x4a2c: b'\x11\xb5\xd4', + -0x4a2b: b'\x11\xb5\xd5', + -0x4a2a: b'\x11\xb5\xd6', + -0x4a29: b'\x11\xb5\xd7', + -0x4a28: b'\x11\xb5\xd8', + -0x4a27: b'\x11\xb5\xd9', + -0x4a26: b'\x11\xb5\xda', + -0x4a25: b'\x11\xb5\xdb', + -0x4a24: b'\x11\xb5\xdc', + -0x4a23: b'\x11\xb5\xdd', + -0x4a22: b'\x11\xb5\xde', + -0x4a21: b'\x11\xb5\xdf', + -0x4a20: b'\x11\xb5\xe0', + -0x4a1f: b'\x11\xb5\xe1', + -0x4a1e: b'\x11\xb5\xe2', + -0x4a1d: b'\x11\xb5\xe3', + -0x4a1c: b'\x11\xb5\xe4', + -0x4a1b: b'\x11\xb5\xe5', + -0x4a1a: b'\x11\xb5\xe6', + -0x4a19: b'\x11\xb5\xe7', + -0x4a18: b'\x11\xb5\xe8', + -0x4a17: b'\x11\xb5\xe9', + -0x4a16: b'\x11\xb5\xea', + -0x4a15: b'\x11\xb5\xeb', + -0x4a14: b'\x11\xb5\xec', + -0x4a13: b'\x11\xb5\xed', + -0x4a12: b'\x11\xb5\xee', + -0x4a11: b'\x11\xb5\xef', + -0x4a10: b'\x11\xb5\xf0', + -0x4a0f: b'\x11\xb5\xf1', + -0x4a0e: b'\x11\xb5\xf2', + -0x4a0d: b'\x11\xb5\xf3', + -0x4a0c: b'\x11\xb5\xf4', + -0x4a0b: b'\x11\xb5\xf5', + -0x4a0a: b'\x11\xb5\xf6', + -0x4a09: b'\x11\xb5\xf7', + -0x4a08: b'\x11\xb5\xf8', + -0x4a07: b'\x11\xb5\xf9', + -0x4a06: b'\x11\xb5\xfa', + -0x4a05: b'\x11\xb5\xfb', + -0x4a04: b'\x11\xb5\xfc', + -0x4a03: b'\x11\xb5\xfd', + -0x4a02: b'\x11\xb5\xfe', + -0x4a01: b'\x11\xb5\xff', + -0x4a00: b'\x11\xb6\x00', + -0x49ff: b'\x11\xb6\x01', + -0x49fe: b'\x11\xb6\x02', + -0x49fd: b'\x11\xb6\x03', + -0x49fc: b'\x11\xb6\x04', + -0x49fb: b'\x11\xb6\x05', + -0x49fa: b'\x11\xb6\x06', + -0x49f9: b'\x11\xb6\x07', + -0x49f8: b'\x11\xb6\x08', + -0x49f7: b'\x11\xb6\t', + -0x49f6: b'\x11\xb6\n', + -0x49f5: b'\x11\xb6\x0b', + -0x49f4: b'\x11\xb6\x0c', + -0x49f3: b'\x11\xb6\r', + -0x49f2: b'\x11\xb6\x0e', + -0x49f1: b'\x11\xb6\x0f', + -0x49f0: b'\x11\xb6\x10', + -0x49ef: b'\x11\xb6\x11', + -0x49ee: b'\x11\xb6\x12', + -0x49ed: b'\x11\xb6\x13', + -0x49ec: b'\x11\xb6\x14', + -0x49eb: b'\x11\xb6\x15', + -0x49ea: b'\x11\xb6\x16', + -0x49e9: b'\x11\xb6\x17', + -0x49e8: b'\x11\xb6\x18', + -0x49e7: b'\x11\xb6\x19', + -0x49e6: b'\x11\xb6\x1a', + -0x49e5: b'\x11\xb6\x1b', + -0x49e4: b'\x11\xb6\x1c', + -0x49e3: b'\x11\xb6\x1d', + -0x49e2: b'\x11\xb6\x1e', + -0x49e1: b'\x11\xb6\x1f', + -0x49e0: b'\x11\xb6 ', + -0x49df: b'\x11\xb6!', + -0x49de: b'\x11\xb6"', + -0x49dd: b'\x11\xb6#', + -0x49dc: b'\x11\xb6$', + -0x49db: b'\x11\xb6%', + -0x49da: b'\x11\xb6&', + -0x49d9: b"\x11\xb6'", + -0x49d8: b'\x11\xb6(', + -0x49d7: b'\x11\xb6)', + -0x49d6: b'\x11\xb6*', + -0x49d5: b'\x11\xb6+', + -0x49d4: b'\x11\xb6,', + -0x49d3: b'\x11\xb6-', + -0x49d2: b'\x11\xb6.', + -0x49d1: b'\x11\xb6/', + -0x49d0: b'\x11\xb60', + -0x49cf: b'\x11\xb61', + -0x49ce: b'\x11\xb62', + -0x49cd: b'\x11\xb63', + -0x49cc: b'\x11\xb64', + -0x49cb: b'\x11\xb65', + -0x49ca: b'\x11\xb66', + -0x49c9: b'\x11\xb67', + -0x49c8: b'\x11\xb68', + -0x49c7: b'\x11\xb69', + -0x49c6: b'\x11\xb6:', + -0x49c5: b'\x11\xb6;', + -0x49c4: b'\x11\xb6<', + -0x49c3: b'\x11\xb6=', + -0x49c2: b'\x11\xb6>', + -0x49c1: b'\x11\xb6?', + -0x49c0: b'\x11\xb6@', + -0x49bf: b'\x11\xb6A', + -0x49be: b'\x11\xb6B', + -0x49bd: b'\x11\xb6C', + -0x49bc: b'\x11\xb6D', + -0x49bb: b'\x11\xb6E', + -0x49ba: b'\x11\xb6F', + -0x49b9: b'\x11\xb6G', + -0x49b8: b'\x11\xb6H', + -0x49b7: b'\x11\xb6I', + -0x49b6: b'\x11\xb6J', + -0x49b5: b'\x11\xb6K', + -0x49b4: b'\x11\xb6L', + -0x49b3: b'\x11\xb6M', + -0x49b2: b'\x11\xb6N', + -0x49b1: b'\x11\xb6O', + -0x49b0: b'\x11\xb6P', + -0x49af: b'\x11\xb6Q', + -0x49ae: b'\x11\xb6R', + -0x49ad: b'\x11\xb6S', + -0x49ac: b'\x11\xb6T', + -0x49ab: b'\x11\xb6U', + -0x49aa: b'\x11\xb6V', + -0x49a9: b'\x11\xb6W', + -0x49a8: b'\x11\xb6X', + -0x49a7: b'\x11\xb6Y', + -0x49a6: b'\x11\xb6Z', + -0x49a5: b'\x11\xb6[', + -0x49a4: b'\x11\xb6\\', + -0x49a3: b'\x11\xb6]', + -0x49a2: b'\x11\xb6^', + -0x49a1: b'\x11\xb6_', + -0x49a0: b'\x11\xb6`', + -0x499f: b'\x11\xb6a', + -0x499e: b'\x11\xb6b', + -0x499d: b'\x11\xb6c', + -0x499c: b'\x11\xb6d', + -0x499b: b'\x11\xb6e', + -0x499a: b'\x11\xb6f', + -0x4999: b'\x11\xb6g', + -0x4998: b'\x11\xb6h', + -0x4997: b'\x11\xb6i', + -0x4996: b'\x11\xb6j', + -0x4995: b'\x11\xb6k', + -0x4994: b'\x11\xb6l', + -0x4993: b'\x11\xb6m', + -0x4992: b'\x11\xb6n', + -0x4991: b'\x11\xb6o', + -0x4990: b'\x11\xb6p', + -0x498f: b'\x11\xb6q', + -0x498e: b'\x11\xb6r', + -0x498d: b'\x11\xb6s', + -0x498c: b'\x11\xb6t', + -0x498b: b'\x11\xb6u', + -0x498a: b'\x11\xb6v', + -0x4989: b'\x11\xb6w', + -0x4988: b'\x11\xb6x', + -0x4987: b'\x11\xb6y', + -0x4986: b'\x11\xb6z', + -0x4985: b'\x11\xb6{', + -0x4984: b'\x11\xb6|', + -0x4983: b'\x11\xb6}', + -0x4982: b'\x11\xb6~', + -0x4981: b'\x11\xb6\x7f', + -0x4980: b'\x11\xb6\x80', + -0x497f: b'\x11\xb6\x81', + -0x497e: b'\x11\xb6\x82', + -0x497d: b'\x11\xb6\x83', + -0x497c: b'\x11\xb6\x84', + -0x497b: b'\x11\xb6\x85', + -0x497a: b'\x11\xb6\x86', + -0x4979: b'\x11\xb6\x87', + -0x4978: b'\x11\xb6\x88', + -0x4977: b'\x11\xb6\x89', + -0x4976: b'\x11\xb6\x8a', + -0x4975: b'\x11\xb6\x8b', + -0x4974: b'\x11\xb6\x8c', + -0x4973: b'\x11\xb6\x8d', + -0x4972: b'\x11\xb6\x8e', + -0x4971: b'\x11\xb6\x8f', + -0x4970: b'\x11\xb6\x90', + -0x496f: b'\x11\xb6\x91', + -0x496e: b'\x11\xb6\x92', + -0x496d: b'\x11\xb6\x93', + -0x496c: b'\x11\xb6\x94', + -0x496b: b'\x11\xb6\x95', + -0x496a: b'\x11\xb6\x96', + -0x4969: b'\x11\xb6\x97', + -0x4968: b'\x11\xb6\x98', + -0x4967: b'\x11\xb6\x99', + -0x4966: b'\x11\xb6\x9a', + -0x4965: b'\x11\xb6\x9b', + -0x4964: b'\x11\xb6\x9c', + -0x4963: b'\x11\xb6\x9d', + -0x4962: b'\x11\xb6\x9e', + -0x4961: b'\x11\xb6\x9f', + -0x4960: b'\x11\xb6\xa0', + -0x495f: b'\x11\xb6\xa1', + -0x495e: b'\x11\xb6\xa2', + -0x495d: b'\x11\xb6\xa3', + -0x495c: b'\x11\xb6\xa4', + -0x495b: b'\x11\xb6\xa5', + -0x495a: b'\x11\xb6\xa6', + -0x4959: b'\x11\xb6\xa7', + -0x4958: b'\x11\xb6\xa8', + -0x4957: b'\x11\xb6\xa9', + -0x4956: b'\x11\xb6\xaa', + -0x4955: b'\x11\xb6\xab', + -0x4954: b'\x11\xb6\xac', + -0x4953: b'\x11\xb6\xad', + -0x4952: b'\x11\xb6\xae', + -0x4951: b'\x11\xb6\xaf', + -0x4950: b'\x11\xb6\xb0', + -0x494f: b'\x11\xb6\xb1', + -0x494e: b'\x11\xb6\xb2', + -0x494d: b'\x11\xb6\xb3', + -0x494c: b'\x11\xb6\xb4', + -0x494b: b'\x11\xb6\xb5', + -0x494a: b'\x11\xb6\xb6', + -0x4949: b'\x11\xb6\xb7', + -0x4948: b'\x11\xb6\xb8', + -0x4947: b'\x11\xb6\xb9', + -0x4946: b'\x11\xb6\xba', + -0x4945: b'\x11\xb6\xbb', + -0x4944: b'\x11\xb6\xbc', + -0x4943: b'\x11\xb6\xbd', + -0x4942: b'\x11\xb6\xbe', + -0x4941: b'\x11\xb6\xbf', + -0x4940: b'\x11\xb6\xc0', + -0x493f: b'\x11\xb6\xc1', + -0x493e: b'\x11\xb6\xc2', + -0x493d: b'\x11\xb6\xc3', + -0x493c: b'\x11\xb6\xc4', + -0x493b: b'\x11\xb6\xc5', + -0x493a: b'\x11\xb6\xc6', + -0x4939: b'\x11\xb6\xc7', + -0x4938: b'\x11\xb6\xc8', + -0x4937: b'\x11\xb6\xc9', + -0x4936: b'\x11\xb6\xca', + -0x4935: b'\x11\xb6\xcb', + -0x4934: b'\x11\xb6\xcc', + -0x4933: b'\x11\xb6\xcd', + -0x4932: b'\x11\xb6\xce', + -0x4931: b'\x11\xb6\xcf', + -0x4930: b'\x11\xb6\xd0', + -0x492f: b'\x11\xb6\xd1', + -0x492e: b'\x11\xb6\xd2', + -0x492d: b'\x11\xb6\xd3', + -0x492c: b'\x11\xb6\xd4', + -0x492b: b'\x11\xb6\xd5', + -0x492a: b'\x11\xb6\xd6', + -0x4929: b'\x11\xb6\xd7', + -0x4928: b'\x11\xb6\xd8', + -0x4927: b'\x11\xb6\xd9', + -0x4926: b'\x11\xb6\xda', + -0x4925: b'\x11\xb6\xdb', + -0x4924: b'\x11\xb6\xdc', + -0x4923: b'\x11\xb6\xdd', + -0x4922: b'\x11\xb6\xde', + -0x4921: b'\x11\xb6\xdf', + -0x4920: b'\x11\xb6\xe0', + -0x491f: b'\x11\xb6\xe1', + -0x491e: b'\x11\xb6\xe2', + -0x491d: b'\x11\xb6\xe3', + -0x491c: b'\x11\xb6\xe4', + -0x491b: b'\x11\xb6\xe5', + -0x491a: b'\x11\xb6\xe6', + -0x4919: b'\x11\xb6\xe7', + -0x4918: b'\x11\xb6\xe8', + -0x4917: b'\x11\xb6\xe9', + -0x4916: b'\x11\xb6\xea', + -0x4915: b'\x11\xb6\xeb', + -0x4914: b'\x11\xb6\xec', + -0x4913: b'\x11\xb6\xed', + -0x4912: b'\x11\xb6\xee', + -0x4911: b'\x11\xb6\xef', + -0x4910: b'\x11\xb6\xf0', + -0x490f: b'\x11\xb6\xf1', + -0x490e: b'\x11\xb6\xf2', + -0x490d: b'\x11\xb6\xf3', + -0x490c: b'\x11\xb6\xf4', + -0x490b: b'\x11\xb6\xf5', + -0x490a: b'\x11\xb6\xf6', + -0x4909: b'\x11\xb6\xf7', + -0x4908: b'\x11\xb6\xf8', + -0x4907: b'\x11\xb6\xf9', + -0x4906: b'\x11\xb6\xfa', + -0x4905: b'\x11\xb6\xfb', + -0x4904: b'\x11\xb6\xfc', + -0x4903: b'\x11\xb6\xfd', + -0x4902: b'\x11\xb6\xfe', + -0x4901: b'\x11\xb6\xff', + -0x4900: b'\x11\xb7\x00', + -0x48ff: b'\x11\xb7\x01', + -0x48fe: b'\x11\xb7\x02', + -0x48fd: b'\x11\xb7\x03', + -0x48fc: b'\x11\xb7\x04', + -0x48fb: b'\x11\xb7\x05', + -0x48fa: b'\x11\xb7\x06', + -0x48f9: b'\x11\xb7\x07', + -0x48f8: b'\x11\xb7\x08', + -0x48f7: b'\x11\xb7\t', + -0x48f6: b'\x11\xb7\n', + -0x48f5: b'\x11\xb7\x0b', + -0x48f4: b'\x11\xb7\x0c', + -0x48f3: b'\x11\xb7\r', + -0x48f2: b'\x11\xb7\x0e', + -0x48f1: b'\x11\xb7\x0f', + -0x48f0: b'\x11\xb7\x10', + -0x48ef: b'\x11\xb7\x11', + -0x48ee: b'\x11\xb7\x12', + -0x48ed: b'\x11\xb7\x13', + -0x48ec: b'\x11\xb7\x14', + -0x48eb: b'\x11\xb7\x15', + -0x48ea: b'\x11\xb7\x16', + -0x48e9: b'\x11\xb7\x17', + -0x48e8: b'\x11\xb7\x18', + -0x48e7: b'\x11\xb7\x19', + -0x48e6: b'\x11\xb7\x1a', + -0x48e5: b'\x11\xb7\x1b', + -0x48e4: b'\x11\xb7\x1c', + -0x48e3: b'\x11\xb7\x1d', + -0x48e2: b'\x11\xb7\x1e', + -0x48e1: b'\x11\xb7\x1f', + -0x48e0: b'\x11\xb7 ', + -0x48df: b'\x11\xb7!', + -0x48de: b'\x11\xb7"', + -0x48dd: b'\x11\xb7#', + -0x48dc: b'\x11\xb7$', + -0x48db: b'\x11\xb7%', + -0x48da: b'\x11\xb7&', + -0x48d9: b"\x11\xb7'", + -0x48d8: b'\x11\xb7(', + -0x48d7: b'\x11\xb7)', + -0x48d6: b'\x11\xb7*', + -0x48d5: b'\x11\xb7+', + -0x48d4: b'\x11\xb7,', + -0x48d3: b'\x11\xb7-', + -0x48d2: b'\x11\xb7.', + -0x48d1: b'\x11\xb7/', + -0x48d0: b'\x11\xb70', + -0x48cf: b'\x11\xb71', + -0x48ce: b'\x11\xb72', + -0x48cd: b'\x11\xb73', + -0x48cc: b'\x11\xb74', + -0x48cb: b'\x11\xb75', + -0x48ca: b'\x11\xb76', + -0x48c9: b'\x11\xb77', + -0x48c8: b'\x11\xb78', + -0x48c7: b'\x11\xb79', + -0x48c6: b'\x11\xb7:', + -0x48c5: b'\x11\xb7;', + -0x48c4: b'\x11\xb7<', + -0x48c3: b'\x11\xb7=', + -0x48c2: b'\x11\xb7>', + -0x48c1: b'\x11\xb7?', + -0x48c0: b'\x11\xb7@', + -0x48bf: b'\x11\xb7A', + -0x48be: b'\x11\xb7B', + -0x48bd: b'\x11\xb7C', + -0x48bc: b'\x11\xb7D', + -0x48bb: b'\x11\xb7E', + -0x48ba: b'\x11\xb7F', + -0x48b9: b'\x11\xb7G', + -0x48b8: b'\x11\xb7H', + -0x48b7: b'\x11\xb7I', + -0x48b6: b'\x11\xb7J', + -0x48b5: b'\x11\xb7K', + -0x48b4: b'\x11\xb7L', + -0x48b3: b'\x11\xb7M', + -0x48b2: b'\x11\xb7N', + -0x48b1: b'\x11\xb7O', + -0x48b0: b'\x11\xb7P', + -0x48af: b'\x11\xb7Q', + -0x48ae: b'\x11\xb7R', + -0x48ad: b'\x11\xb7S', + -0x48ac: b'\x11\xb7T', + -0x48ab: b'\x11\xb7U', + -0x48aa: b'\x11\xb7V', + -0x48a9: b'\x11\xb7W', + -0x48a8: b'\x11\xb7X', + -0x48a7: b'\x11\xb7Y', + -0x48a6: b'\x11\xb7Z', + -0x48a5: b'\x11\xb7[', + -0x48a4: b'\x11\xb7\\', + -0x48a3: b'\x11\xb7]', + -0x48a2: b'\x11\xb7^', + -0x48a1: b'\x11\xb7_', + -0x48a0: b'\x11\xb7`', + -0x489f: b'\x11\xb7a', + -0x489e: b'\x11\xb7b', + -0x489d: b'\x11\xb7c', + -0x489c: b'\x11\xb7d', + -0x489b: b'\x11\xb7e', + -0x489a: b'\x11\xb7f', + -0x4899: b'\x11\xb7g', + -0x4898: b'\x11\xb7h', + -0x4897: b'\x11\xb7i', + -0x4896: b'\x11\xb7j', + -0x4895: b'\x11\xb7k', + -0x4894: b'\x11\xb7l', + -0x4893: b'\x11\xb7m', + -0x4892: b'\x11\xb7n', + -0x4891: b'\x11\xb7o', + -0x4890: b'\x11\xb7p', + -0x488f: b'\x11\xb7q', + -0x488e: b'\x11\xb7r', + -0x488d: b'\x11\xb7s', + -0x488c: b'\x11\xb7t', + -0x488b: b'\x11\xb7u', + -0x488a: b'\x11\xb7v', + -0x4889: b'\x11\xb7w', + -0x4888: b'\x11\xb7x', + -0x4887: b'\x11\xb7y', + -0x4886: b'\x11\xb7z', + -0x4885: b'\x11\xb7{', + -0x4884: b'\x11\xb7|', + -0x4883: b'\x11\xb7}', + -0x4882: b'\x11\xb7~', + -0x4881: b'\x11\xb7\x7f', + -0x4880: b'\x11\xb7\x80', + -0x487f: b'\x11\xb7\x81', + -0x487e: b'\x11\xb7\x82', + -0x487d: b'\x11\xb7\x83', + -0x487c: b'\x11\xb7\x84', + -0x487b: b'\x11\xb7\x85', + -0x487a: b'\x11\xb7\x86', + -0x4879: b'\x11\xb7\x87', + -0x4878: b'\x11\xb7\x88', + -0x4877: b'\x11\xb7\x89', + -0x4876: b'\x11\xb7\x8a', + -0x4875: b'\x11\xb7\x8b', + -0x4874: b'\x11\xb7\x8c', + -0x4873: b'\x11\xb7\x8d', + -0x4872: b'\x11\xb7\x8e', + -0x4871: b'\x11\xb7\x8f', + -0x4870: b'\x11\xb7\x90', + -0x486f: b'\x11\xb7\x91', + -0x486e: b'\x11\xb7\x92', + -0x486d: b'\x11\xb7\x93', + -0x486c: b'\x11\xb7\x94', + -0x486b: b'\x11\xb7\x95', + -0x486a: b'\x11\xb7\x96', + -0x4869: b'\x11\xb7\x97', + -0x4868: b'\x11\xb7\x98', + -0x4867: b'\x11\xb7\x99', + -0x4866: b'\x11\xb7\x9a', + -0x4865: b'\x11\xb7\x9b', + -0x4864: b'\x11\xb7\x9c', + -0x4863: b'\x11\xb7\x9d', + -0x4862: b'\x11\xb7\x9e', + -0x4861: b'\x11\xb7\x9f', + -0x4860: b'\x11\xb7\xa0', + -0x485f: b'\x11\xb7\xa1', + -0x485e: b'\x11\xb7\xa2', + -0x485d: b'\x11\xb7\xa3', + -0x485c: b'\x11\xb7\xa4', + -0x485b: b'\x11\xb7\xa5', + -0x485a: b'\x11\xb7\xa6', + -0x4859: b'\x11\xb7\xa7', + -0x4858: b'\x11\xb7\xa8', + -0x4857: b'\x11\xb7\xa9', + -0x4856: b'\x11\xb7\xaa', + -0x4855: b'\x11\xb7\xab', + -0x4854: b'\x11\xb7\xac', + -0x4853: b'\x11\xb7\xad', + -0x4852: b'\x11\xb7\xae', + -0x4851: b'\x11\xb7\xaf', + -0x4850: b'\x11\xb7\xb0', + -0x484f: b'\x11\xb7\xb1', + -0x484e: b'\x11\xb7\xb2', + -0x484d: b'\x11\xb7\xb3', + -0x484c: b'\x11\xb7\xb4', + -0x484b: b'\x11\xb7\xb5', + -0x484a: b'\x11\xb7\xb6', + -0x4849: b'\x11\xb7\xb7', + -0x4848: b'\x11\xb7\xb8', + -0x4847: b'\x11\xb7\xb9', + -0x4846: b'\x11\xb7\xba', + -0x4845: b'\x11\xb7\xbb', + -0x4844: b'\x11\xb7\xbc', + -0x4843: b'\x11\xb7\xbd', + -0x4842: b'\x11\xb7\xbe', + -0x4841: b'\x11\xb7\xbf', + -0x4840: b'\x11\xb7\xc0', + -0x483f: b'\x11\xb7\xc1', + -0x483e: b'\x11\xb7\xc2', + -0x483d: b'\x11\xb7\xc3', + -0x483c: b'\x11\xb7\xc4', + -0x483b: b'\x11\xb7\xc5', + -0x483a: b'\x11\xb7\xc6', + -0x4839: b'\x11\xb7\xc7', + -0x4838: b'\x11\xb7\xc8', + -0x4837: b'\x11\xb7\xc9', + -0x4836: b'\x11\xb7\xca', + -0x4835: b'\x11\xb7\xcb', + -0x4834: b'\x11\xb7\xcc', + -0x4833: b'\x11\xb7\xcd', + -0x4832: b'\x11\xb7\xce', + -0x4831: b'\x11\xb7\xcf', + -0x4830: b'\x11\xb7\xd0', + -0x482f: b'\x11\xb7\xd1', + -0x482e: b'\x11\xb7\xd2', + -0x482d: b'\x11\xb7\xd3', + -0x482c: b'\x11\xb7\xd4', + -0x482b: b'\x11\xb7\xd5', + -0x482a: b'\x11\xb7\xd6', + -0x4829: b'\x11\xb7\xd7', + -0x4828: b'\x11\xb7\xd8', + -0x4827: b'\x11\xb7\xd9', + -0x4826: b'\x11\xb7\xda', + -0x4825: b'\x11\xb7\xdb', + -0x4824: b'\x11\xb7\xdc', + -0x4823: b'\x11\xb7\xdd', + -0x4822: b'\x11\xb7\xde', + -0x4821: b'\x11\xb7\xdf', + -0x4820: b'\x11\xb7\xe0', + -0x481f: b'\x11\xb7\xe1', + -0x481e: b'\x11\xb7\xe2', + -0x481d: b'\x11\xb7\xe3', + -0x481c: b'\x11\xb7\xe4', + -0x481b: b'\x11\xb7\xe5', + -0x481a: b'\x11\xb7\xe6', + -0x4819: b'\x11\xb7\xe7', + -0x4818: b'\x11\xb7\xe8', + -0x4817: b'\x11\xb7\xe9', + -0x4816: b'\x11\xb7\xea', + -0x4815: b'\x11\xb7\xeb', + -0x4814: b'\x11\xb7\xec', + -0x4813: b'\x11\xb7\xed', + -0x4812: b'\x11\xb7\xee', + -0x4811: b'\x11\xb7\xef', + -0x4810: b'\x11\xb7\xf0', + -0x480f: b'\x11\xb7\xf1', + -0x480e: b'\x11\xb7\xf2', + -0x480d: b'\x11\xb7\xf3', + -0x480c: b'\x11\xb7\xf4', + -0x480b: b'\x11\xb7\xf5', + -0x480a: b'\x11\xb7\xf6', + -0x4809: b'\x11\xb7\xf7', + -0x4808: b'\x11\xb7\xf8', + -0x4807: b'\x11\xb7\xf9', + -0x4806: b'\x11\xb7\xfa', + -0x4805: b'\x11\xb7\xfb', + -0x4804: b'\x11\xb7\xfc', + -0x4803: b'\x11\xb7\xfd', + -0x4802: b'\x11\xb7\xfe', + -0x4801: b'\x11\xb7\xff', + -0x4800: b'\x11\xb8\x00', + -0x47ff: b'\x11\xb8\x01', + -0x47fe: b'\x11\xb8\x02', + -0x47fd: b'\x11\xb8\x03', + -0x47fc: b'\x11\xb8\x04', + -0x47fb: b'\x11\xb8\x05', + -0x47fa: b'\x11\xb8\x06', + -0x47f9: b'\x11\xb8\x07', + -0x47f8: b'\x11\xb8\x08', + -0x47f7: b'\x11\xb8\t', + -0x47f6: b'\x11\xb8\n', + -0x47f5: b'\x11\xb8\x0b', + -0x47f4: b'\x11\xb8\x0c', + -0x47f3: b'\x11\xb8\r', + -0x47f2: b'\x11\xb8\x0e', + -0x47f1: b'\x11\xb8\x0f', + -0x47f0: b'\x11\xb8\x10', + -0x47ef: b'\x11\xb8\x11', + -0x47ee: b'\x11\xb8\x12', + -0x47ed: b'\x11\xb8\x13', + -0x47ec: b'\x11\xb8\x14', + -0x47eb: b'\x11\xb8\x15', + -0x47ea: b'\x11\xb8\x16', + -0x47e9: b'\x11\xb8\x17', + -0x47e8: b'\x11\xb8\x18', + -0x47e7: b'\x11\xb8\x19', + -0x47e6: b'\x11\xb8\x1a', + -0x47e5: b'\x11\xb8\x1b', + -0x47e4: b'\x11\xb8\x1c', + -0x47e3: b'\x11\xb8\x1d', + -0x47e2: b'\x11\xb8\x1e', + -0x47e1: b'\x11\xb8\x1f', + -0x47e0: b'\x11\xb8 ', + -0x47df: b'\x11\xb8!', + -0x47de: b'\x11\xb8"', + -0x47dd: b'\x11\xb8#', + -0x47dc: b'\x11\xb8$', + -0x47db: b'\x11\xb8%', + -0x47da: b'\x11\xb8&', + -0x47d9: b"\x11\xb8'", + -0x47d8: b'\x11\xb8(', + -0x47d7: b'\x11\xb8)', + -0x47d6: b'\x11\xb8*', + -0x47d5: b'\x11\xb8+', + -0x47d4: b'\x11\xb8,', + -0x47d3: b'\x11\xb8-', + -0x47d2: b'\x11\xb8.', + -0x47d1: b'\x11\xb8/', + -0x47d0: b'\x11\xb80', + -0x47cf: b'\x11\xb81', + -0x47ce: b'\x11\xb82', + -0x47cd: b'\x11\xb83', + -0x47cc: b'\x11\xb84', + -0x47cb: b'\x11\xb85', + -0x47ca: b'\x11\xb86', + -0x47c9: b'\x11\xb87', + -0x47c8: b'\x11\xb88', + -0x47c7: b'\x11\xb89', + -0x47c6: b'\x11\xb8:', + -0x47c5: b'\x11\xb8;', + -0x47c4: b'\x11\xb8<', + -0x47c3: b'\x11\xb8=', + -0x47c2: b'\x11\xb8>', + -0x47c1: b'\x11\xb8?', + -0x47c0: b'\x11\xb8@', + -0x47bf: b'\x11\xb8A', + -0x47be: b'\x11\xb8B', + -0x47bd: b'\x11\xb8C', + -0x47bc: b'\x11\xb8D', + -0x47bb: b'\x11\xb8E', + -0x47ba: b'\x11\xb8F', + -0x47b9: b'\x11\xb8G', + -0x47b8: b'\x11\xb8H', + -0x47b7: b'\x11\xb8I', + -0x47b6: b'\x11\xb8J', + -0x47b5: b'\x11\xb8K', + -0x47b4: b'\x11\xb8L', + -0x47b3: b'\x11\xb8M', + -0x47b2: b'\x11\xb8N', + -0x47b1: b'\x11\xb8O', + -0x47b0: b'\x11\xb8P', + -0x47af: b'\x11\xb8Q', + -0x47ae: b'\x11\xb8R', + -0x47ad: b'\x11\xb8S', + -0x47ac: b'\x11\xb8T', + -0x47ab: b'\x11\xb8U', + -0x47aa: b'\x11\xb8V', + -0x47a9: b'\x11\xb8W', + -0x47a8: b'\x11\xb8X', + -0x47a7: b'\x11\xb8Y', + -0x47a6: b'\x11\xb8Z', + -0x47a5: b'\x11\xb8[', + -0x47a4: b'\x11\xb8\\', + -0x47a3: b'\x11\xb8]', + -0x47a2: b'\x11\xb8^', + -0x47a1: b'\x11\xb8_', + -0x47a0: b'\x11\xb8`', + -0x479f: b'\x11\xb8a', + -0x479e: b'\x11\xb8b', + -0x479d: b'\x11\xb8c', + -0x479c: b'\x11\xb8d', + -0x479b: b'\x11\xb8e', + -0x479a: b'\x11\xb8f', + -0x4799: b'\x11\xb8g', + -0x4798: b'\x11\xb8h', + -0x4797: b'\x11\xb8i', + -0x4796: b'\x11\xb8j', + -0x4795: b'\x11\xb8k', + -0x4794: b'\x11\xb8l', + -0x4793: b'\x11\xb8m', + -0x4792: b'\x11\xb8n', + -0x4791: b'\x11\xb8o', + -0x4790: b'\x11\xb8p', + -0x478f: b'\x11\xb8q', + -0x478e: b'\x11\xb8r', + -0x478d: b'\x11\xb8s', + -0x478c: b'\x11\xb8t', + -0x478b: b'\x11\xb8u', + -0x478a: b'\x11\xb8v', + -0x4789: b'\x11\xb8w', + -0x4788: b'\x11\xb8x', + -0x4787: b'\x11\xb8y', + -0x4786: b'\x11\xb8z', + -0x4785: b'\x11\xb8{', + -0x4784: b'\x11\xb8|', + -0x4783: b'\x11\xb8}', + -0x4782: b'\x11\xb8~', + -0x4781: b'\x11\xb8\x7f', + -0x4780: b'\x11\xb8\x80', + -0x477f: b'\x11\xb8\x81', + -0x477e: b'\x11\xb8\x82', + -0x477d: b'\x11\xb8\x83', + -0x477c: b'\x11\xb8\x84', + -0x477b: b'\x11\xb8\x85', + -0x477a: b'\x11\xb8\x86', + -0x4779: b'\x11\xb8\x87', + -0x4778: b'\x11\xb8\x88', + -0x4777: b'\x11\xb8\x89', + -0x4776: b'\x11\xb8\x8a', + -0x4775: b'\x11\xb8\x8b', + -0x4774: b'\x11\xb8\x8c', + -0x4773: b'\x11\xb8\x8d', + -0x4772: b'\x11\xb8\x8e', + -0x4771: b'\x11\xb8\x8f', + -0x4770: b'\x11\xb8\x90', + -0x476f: b'\x11\xb8\x91', + -0x476e: b'\x11\xb8\x92', + -0x476d: b'\x11\xb8\x93', + -0x476c: b'\x11\xb8\x94', + -0x476b: b'\x11\xb8\x95', + -0x476a: b'\x11\xb8\x96', + -0x4769: b'\x11\xb8\x97', + -0x4768: b'\x11\xb8\x98', + -0x4767: b'\x11\xb8\x99', + -0x4766: b'\x11\xb8\x9a', + -0x4765: b'\x11\xb8\x9b', + -0x4764: b'\x11\xb8\x9c', + -0x4763: b'\x11\xb8\x9d', + -0x4762: b'\x11\xb8\x9e', + -0x4761: b'\x11\xb8\x9f', + -0x4760: b'\x11\xb8\xa0', + -0x475f: b'\x11\xb8\xa1', + -0x475e: b'\x11\xb8\xa2', + -0x475d: b'\x11\xb8\xa3', + -0x475c: b'\x11\xb8\xa4', + -0x475b: b'\x11\xb8\xa5', + -0x475a: b'\x11\xb8\xa6', + -0x4759: b'\x11\xb8\xa7', + -0x4758: b'\x11\xb8\xa8', + -0x4757: b'\x11\xb8\xa9', + -0x4756: b'\x11\xb8\xaa', + -0x4755: b'\x11\xb8\xab', + -0x4754: b'\x11\xb8\xac', + -0x4753: b'\x11\xb8\xad', + -0x4752: b'\x11\xb8\xae', + -0x4751: b'\x11\xb8\xaf', + -0x4750: b'\x11\xb8\xb0', + -0x474f: b'\x11\xb8\xb1', + -0x474e: b'\x11\xb8\xb2', + -0x474d: b'\x11\xb8\xb3', + -0x474c: b'\x11\xb8\xb4', + -0x474b: b'\x11\xb8\xb5', + -0x474a: b'\x11\xb8\xb6', + -0x4749: b'\x11\xb8\xb7', + -0x4748: b'\x11\xb8\xb8', + -0x4747: b'\x11\xb8\xb9', + -0x4746: b'\x11\xb8\xba', + -0x4745: b'\x11\xb8\xbb', + -0x4744: b'\x11\xb8\xbc', + -0x4743: b'\x11\xb8\xbd', + -0x4742: b'\x11\xb8\xbe', + -0x4741: b'\x11\xb8\xbf', + -0x4740: b'\x11\xb8\xc0', + -0x473f: b'\x11\xb8\xc1', + -0x473e: b'\x11\xb8\xc2', + -0x473d: b'\x11\xb8\xc3', + -0x473c: b'\x11\xb8\xc4', + -0x473b: b'\x11\xb8\xc5', + -0x473a: b'\x11\xb8\xc6', + -0x4739: b'\x11\xb8\xc7', + -0x4738: b'\x11\xb8\xc8', + -0x4737: b'\x11\xb8\xc9', + -0x4736: b'\x11\xb8\xca', + -0x4735: b'\x11\xb8\xcb', + -0x4734: b'\x11\xb8\xcc', + -0x4733: b'\x11\xb8\xcd', + -0x4732: b'\x11\xb8\xce', + -0x4731: b'\x11\xb8\xcf', + -0x4730: b'\x11\xb8\xd0', + -0x472f: b'\x11\xb8\xd1', + -0x472e: b'\x11\xb8\xd2', + -0x472d: b'\x11\xb8\xd3', + -0x472c: b'\x11\xb8\xd4', + -0x472b: b'\x11\xb8\xd5', + -0x472a: b'\x11\xb8\xd6', + -0x4729: b'\x11\xb8\xd7', + -0x4728: b'\x11\xb8\xd8', + -0x4727: b'\x11\xb8\xd9', + -0x4726: b'\x11\xb8\xda', + -0x4725: b'\x11\xb8\xdb', + -0x4724: b'\x11\xb8\xdc', + -0x4723: b'\x11\xb8\xdd', + -0x4722: b'\x11\xb8\xde', + -0x4721: b'\x11\xb8\xdf', + -0x4720: b'\x11\xb8\xe0', + -0x471f: b'\x11\xb8\xe1', + -0x471e: b'\x11\xb8\xe2', + -0x471d: b'\x11\xb8\xe3', + -0x471c: b'\x11\xb8\xe4', + -0x471b: b'\x11\xb8\xe5', + -0x471a: b'\x11\xb8\xe6', + -0x4719: b'\x11\xb8\xe7', + -0x4718: b'\x11\xb8\xe8', + -0x4717: b'\x11\xb8\xe9', + -0x4716: b'\x11\xb8\xea', + -0x4715: b'\x11\xb8\xeb', + -0x4714: b'\x11\xb8\xec', + -0x4713: b'\x11\xb8\xed', + -0x4712: b'\x11\xb8\xee', + -0x4711: b'\x11\xb8\xef', + -0x4710: b'\x11\xb8\xf0', + -0x470f: b'\x11\xb8\xf1', + -0x470e: b'\x11\xb8\xf2', + -0x470d: b'\x11\xb8\xf3', + -0x470c: b'\x11\xb8\xf4', + -0x470b: b'\x11\xb8\xf5', + -0x470a: b'\x11\xb8\xf6', + -0x4709: b'\x11\xb8\xf7', + -0x4708: b'\x11\xb8\xf8', + -0x4707: b'\x11\xb8\xf9', + -0x4706: b'\x11\xb8\xfa', + -0x4705: b'\x11\xb8\xfb', + -0x4704: b'\x11\xb8\xfc', + -0x4703: b'\x11\xb8\xfd', + -0x4702: b'\x11\xb8\xfe', + -0x4701: b'\x11\xb8\xff', + -0x4700: b'\x11\xb9\x00', + -0x46ff: b'\x11\xb9\x01', + -0x46fe: b'\x11\xb9\x02', + -0x46fd: b'\x11\xb9\x03', + -0x46fc: b'\x11\xb9\x04', + -0x46fb: b'\x11\xb9\x05', + -0x46fa: b'\x11\xb9\x06', + -0x46f9: b'\x11\xb9\x07', + -0x46f8: b'\x11\xb9\x08', + -0x46f7: b'\x11\xb9\t', + -0x46f6: b'\x11\xb9\n', + -0x46f5: b'\x11\xb9\x0b', + -0x46f4: b'\x11\xb9\x0c', + -0x46f3: b'\x11\xb9\r', + -0x46f2: b'\x11\xb9\x0e', + -0x46f1: b'\x11\xb9\x0f', + -0x46f0: b'\x11\xb9\x10', + -0x46ef: b'\x11\xb9\x11', + -0x46ee: b'\x11\xb9\x12', + -0x46ed: b'\x11\xb9\x13', + -0x46ec: b'\x11\xb9\x14', + -0x46eb: b'\x11\xb9\x15', + -0x46ea: b'\x11\xb9\x16', + -0x46e9: b'\x11\xb9\x17', + -0x46e8: b'\x11\xb9\x18', + -0x46e7: b'\x11\xb9\x19', + -0x46e6: b'\x11\xb9\x1a', + -0x46e5: b'\x11\xb9\x1b', + -0x46e4: b'\x11\xb9\x1c', + -0x46e3: b'\x11\xb9\x1d', + -0x46e2: b'\x11\xb9\x1e', + -0x46e1: b'\x11\xb9\x1f', + -0x46e0: b'\x11\xb9 ', + -0x46df: b'\x11\xb9!', + -0x46de: b'\x11\xb9"', + -0x46dd: b'\x11\xb9#', + -0x46dc: b'\x11\xb9$', + -0x46db: b'\x11\xb9%', + -0x46da: b'\x11\xb9&', + -0x46d9: b"\x11\xb9'", + -0x46d8: b'\x11\xb9(', + -0x46d7: b'\x11\xb9)', + -0x46d6: b'\x11\xb9*', + -0x46d5: b'\x11\xb9+', + -0x46d4: b'\x11\xb9,', + -0x46d3: b'\x11\xb9-', + -0x46d2: b'\x11\xb9.', + -0x46d1: b'\x11\xb9/', + -0x46d0: b'\x11\xb90', + -0x46cf: b'\x11\xb91', + -0x46ce: b'\x11\xb92', + -0x46cd: b'\x11\xb93', + -0x46cc: b'\x11\xb94', + -0x46cb: b'\x11\xb95', + -0x46ca: b'\x11\xb96', + -0x46c9: b'\x11\xb97', + -0x46c8: b'\x11\xb98', + -0x46c7: b'\x11\xb99', + -0x46c6: b'\x11\xb9:', + -0x46c5: b'\x11\xb9;', + -0x46c4: b'\x11\xb9<', + -0x46c3: b'\x11\xb9=', + -0x46c2: b'\x11\xb9>', + -0x46c1: b'\x11\xb9?', + -0x46c0: b'\x11\xb9@', + -0x46bf: b'\x11\xb9A', + -0x46be: b'\x11\xb9B', + -0x46bd: b'\x11\xb9C', + -0x46bc: b'\x11\xb9D', + -0x46bb: b'\x11\xb9E', + -0x46ba: b'\x11\xb9F', + -0x46b9: b'\x11\xb9G', + -0x46b8: b'\x11\xb9H', + -0x46b7: b'\x11\xb9I', + -0x46b6: b'\x11\xb9J', + -0x46b5: b'\x11\xb9K', + -0x46b4: b'\x11\xb9L', + -0x46b3: b'\x11\xb9M', + -0x46b2: b'\x11\xb9N', + -0x46b1: b'\x11\xb9O', + -0x46b0: b'\x11\xb9P', + -0x46af: b'\x11\xb9Q', + -0x46ae: b'\x11\xb9R', + -0x46ad: b'\x11\xb9S', + -0x46ac: b'\x11\xb9T', + -0x46ab: b'\x11\xb9U', + -0x46aa: b'\x11\xb9V', + -0x46a9: b'\x11\xb9W', + -0x46a8: b'\x11\xb9X', + -0x46a7: b'\x11\xb9Y', + -0x46a6: b'\x11\xb9Z', + -0x46a5: b'\x11\xb9[', + -0x46a4: b'\x11\xb9\\', + -0x46a3: b'\x11\xb9]', + -0x46a2: b'\x11\xb9^', + -0x46a1: b'\x11\xb9_', + -0x46a0: b'\x11\xb9`', + -0x469f: b'\x11\xb9a', + -0x469e: b'\x11\xb9b', + -0x469d: b'\x11\xb9c', + -0x469c: b'\x11\xb9d', + -0x469b: b'\x11\xb9e', + -0x469a: b'\x11\xb9f', + -0x4699: b'\x11\xb9g', + -0x4698: b'\x11\xb9h', + -0x4697: b'\x11\xb9i', + -0x4696: b'\x11\xb9j', + -0x4695: b'\x11\xb9k', + -0x4694: b'\x11\xb9l', + -0x4693: b'\x11\xb9m', + -0x4692: b'\x11\xb9n', + -0x4691: b'\x11\xb9o', + -0x4690: b'\x11\xb9p', + -0x468f: b'\x11\xb9q', + -0x468e: b'\x11\xb9r', + -0x468d: b'\x11\xb9s', + -0x468c: b'\x11\xb9t', + -0x468b: b'\x11\xb9u', + -0x468a: b'\x11\xb9v', + -0x4689: b'\x11\xb9w', + -0x4688: b'\x11\xb9x', + -0x4687: b'\x11\xb9y', + -0x4686: b'\x11\xb9z', + -0x4685: b'\x11\xb9{', + -0x4684: b'\x11\xb9|', + -0x4683: b'\x11\xb9}', + -0x4682: b'\x11\xb9~', + -0x4681: b'\x11\xb9\x7f', + -0x4680: b'\x11\xb9\x80', + -0x467f: b'\x11\xb9\x81', + -0x467e: b'\x11\xb9\x82', + -0x467d: b'\x11\xb9\x83', + -0x467c: b'\x11\xb9\x84', + -0x467b: b'\x11\xb9\x85', + -0x467a: b'\x11\xb9\x86', + -0x4679: b'\x11\xb9\x87', + -0x4678: b'\x11\xb9\x88', + -0x4677: b'\x11\xb9\x89', + -0x4676: b'\x11\xb9\x8a', + -0x4675: b'\x11\xb9\x8b', + -0x4674: b'\x11\xb9\x8c', + -0x4673: b'\x11\xb9\x8d', + -0x4672: b'\x11\xb9\x8e', + -0x4671: b'\x11\xb9\x8f', + -0x4670: b'\x11\xb9\x90', + -0x466f: b'\x11\xb9\x91', + -0x466e: b'\x11\xb9\x92', + -0x466d: b'\x11\xb9\x93', + -0x466c: b'\x11\xb9\x94', + -0x466b: b'\x11\xb9\x95', + -0x466a: b'\x11\xb9\x96', + -0x4669: b'\x11\xb9\x97', + -0x4668: b'\x11\xb9\x98', + -0x4667: b'\x11\xb9\x99', + -0x4666: b'\x11\xb9\x9a', + -0x4665: b'\x11\xb9\x9b', + -0x4664: b'\x11\xb9\x9c', + -0x4663: b'\x11\xb9\x9d', + -0x4662: b'\x11\xb9\x9e', + -0x4661: b'\x11\xb9\x9f', + -0x4660: b'\x11\xb9\xa0', + -0x465f: b'\x11\xb9\xa1', + -0x465e: b'\x11\xb9\xa2', + -0x465d: b'\x11\xb9\xa3', + -0x465c: b'\x11\xb9\xa4', + -0x465b: b'\x11\xb9\xa5', + -0x465a: b'\x11\xb9\xa6', + -0x4659: b'\x11\xb9\xa7', + -0x4658: b'\x11\xb9\xa8', + -0x4657: b'\x11\xb9\xa9', + -0x4656: b'\x11\xb9\xaa', + -0x4655: b'\x11\xb9\xab', + -0x4654: b'\x11\xb9\xac', + -0x4653: b'\x11\xb9\xad', + -0x4652: b'\x11\xb9\xae', + -0x4651: b'\x11\xb9\xaf', + -0x4650: b'\x11\xb9\xb0', + -0x464f: b'\x11\xb9\xb1', + -0x464e: b'\x11\xb9\xb2', + -0x464d: b'\x11\xb9\xb3', + -0x464c: b'\x11\xb9\xb4', + -0x464b: b'\x11\xb9\xb5', + -0x464a: b'\x11\xb9\xb6', + -0x4649: b'\x11\xb9\xb7', + -0x4648: b'\x11\xb9\xb8', + -0x4647: b'\x11\xb9\xb9', + -0x4646: b'\x11\xb9\xba', + -0x4645: b'\x11\xb9\xbb', + -0x4644: b'\x11\xb9\xbc', + -0x4643: b'\x11\xb9\xbd', + -0x4642: b'\x11\xb9\xbe', + -0x4641: b'\x11\xb9\xbf', + -0x4640: b'\x11\xb9\xc0', + -0x463f: b'\x11\xb9\xc1', + -0x463e: b'\x11\xb9\xc2', + -0x463d: b'\x11\xb9\xc3', + -0x463c: b'\x11\xb9\xc4', + -0x463b: b'\x11\xb9\xc5', + -0x463a: b'\x11\xb9\xc6', + -0x4639: b'\x11\xb9\xc7', + -0x4638: b'\x11\xb9\xc8', + -0x4637: b'\x11\xb9\xc9', + -0x4636: b'\x11\xb9\xca', + -0x4635: b'\x11\xb9\xcb', + -0x4634: b'\x11\xb9\xcc', + -0x4633: b'\x11\xb9\xcd', + -0x4632: b'\x11\xb9\xce', + -0x4631: b'\x11\xb9\xcf', + -0x4630: b'\x11\xb9\xd0', + -0x462f: b'\x11\xb9\xd1', + -0x462e: b'\x11\xb9\xd2', + -0x462d: b'\x11\xb9\xd3', + -0x462c: b'\x11\xb9\xd4', + -0x462b: b'\x11\xb9\xd5', + -0x462a: b'\x11\xb9\xd6', + -0x4629: b'\x11\xb9\xd7', + -0x4628: b'\x11\xb9\xd8', + -0x4627: b'\x11\xb9\xd9', + -0x4626: b'\x11\xb9\xda', + -0x4625: b'\x11\xb9\xdb', + -0x4624: b'\x11\xb9\xdc', + -0x4623: b'\x11\xb9\xdd', + -0x4622: b'\x11\xb9\xde', + -0x4621: b'\x11\xb9\xdf', + -0x4620: b'\x11\xb9\xe0', + -0x461f: b'\x11\xb9\xe1', + -0x461e: b'\x11\xb9\xe2', + -0x461d: b'\x11\xb9\xe3', + -0x461c: b'\x11\xb9\xe4', + -0x461b: b'\x11\xb9\xe5', + -0x461a: b'\x11\xb9\xe6', + -0x4619: b'\x11\xb9\xe7', + -0x4618: b'\x11\xb9\xe8', + -0x4617: b'\x11\xb9\xe9', + -0x4616: b'\x11\xb9\xea', + -0x4615: b'\x11\xb9\xeb', + -0x4614: b'\x11\xb9\xec', + -0x4613: b'\x11\xb9\xed', + -0x4612: b'\x11\xb9\xee', + -0x4611: b'\x11\xb9\xef', + -0x4610: b'\x11\xb9\xf0', + -0x460f: b'\x11\xb9\xf1', + -0x460e: b'\x11\xb9\xf2', + -0x460d: b'\x11\xb9\xf3', + -0x460c: b'\x11\xb9\xf4', + -0x460b: b'\x11\xb9\xf5', + -0x460a: b'\x11\xb9\xf6', + -0x4609: b'\x11\xb9\xf7', + -0x4608: b'\x11\xb9\xf8', + -0x4607: b'\x11\xb9\xf9', + -0x4606: b'\x11\xb9\xfa', + -0x4605: b'\x11\xb9\xfb', + -0x4604: b'\x11\xb9\xfc', + -0x4603: b'\x11\xb9\xfd', + -0x4602: b'\x11\xb9\xfe', + -0x4601: b'\x11\xb9\xff', + -0x4600: b'\x11\xba\x00', + -0x45ff: b'\x11\xba\x01', + -0x45fe: b'\x11\xba\x02', + -0x45fd: b'\x11\xba\x03', + -0x45fc: b'\x11\xba\x04', + -0x45fb: b'\x11\xba\x05', + -0x45fa: b'\x11\xba\x06', + -0x45f9: b'\x11\xba\x07', + -0x45f8: b'\x11\xba\x08', + -0x45f7: b'\x11\xba\t', + -0x45f6: b'\x11\xba\n', + -0x45f5: b'\x11\xba\x0b', + -0x45f4: b'\x11\xba\x0c', + -0x45f3: b'\x11\xba\r', + -0x45f2: b'\x11\xba\x0e', + -0x45f1: b'\x11\xba\x0f', + -0x45f0: b'\x11\xba\x10', + -0x45ef: b'\x11\xba\x11', + -0x45ee: b'\x11\xba\x12', + -0x45ed: b'\x11\xba\x13', + -0x45ec: b'\x11\xba\x14', + -0x45eb: b'\x11\xba\x15', + -0x45ea: b'\x11\xba\x16', + -0x45e9: b'\x11\xba\x17', + -0x45e8: b'\x11\xba\x18', + -0x45e7: b'\x11\xba\x19', + -0x45e6: b'\x11\xba\x1a', + -0x45e5: b'\x11\xba\x1b', + -0x45e4: b'\x11\xba\x1c', + -0x45e3: b'\x11\xba\x1d', + -0x45e2: b'\x11\xba\x1e', + -0x45e1: b'\x11\xba\x1f', + -0x45e0: b'\x11\xba ', + -0x45df: b'\x11\xba!', + -0x45de: b'\x11\xba"', + -0x45dd: b'\x11\xba#', + -0x45dc: b'\x11\xba$', + -0x45db: b'\x11\xba%', + -0x45da: b'\x11\xba&', + -0x45d9: b"\x11\xba'", + -0x45d8: b'\x11\xba(', + -0x45d7: b'\x11\xba)', + -0x45d6: b'\x11\xba*', + -0x45d5: b'\x11\xba+', + -0x45d4: b'\x11\xba,', + -0x45d3: b'\x11\xba-', + -0x45d2: b'\x11\xba.', + -0x45d1: b'\x11\xba/', + -0x45d0: b'\x11\xba0', + -0x45cf: b'\x11\xba1', + -0x45ce: b'\x11\xba2', + -0x45cd: b'\x11\xba3', + -0x45cc: b'\x11\xba4', + -0x45cb: b'\x11\xba5', + -0x45ca: b'\x11\xba6', + -0x45c9: b'\x11\xba7', + -0x45c8: b'\x11\xba8', + -0x45c7: b'\x11\xba9', + -0x45c6: b'\x11\xba:', + -0x45c5: b'\x11\xba;', + -0x45c4: b'\x11\xba<', + -0x45c3: b'\x11\xba=', + -0x45c2: b'\x11\xba>', + -0x45c1: b'\x11\xba?', + -0x45c0: b'\x11\xba@', + -0x45bf: b'\x11\xbaA', + -0x45be: b'\x11\xbaB', + -0x45bd: b'\x11\xbaC', + -0x45bc: b'\x11\xbaD', + -0x45bb: b'\x11\xbaE', + -0x45ba: b'\x11\xbaF', + -0x45b9: b'\x11\xbaG', + -0x45b8: b'\x11\xbaH', + -0x45b7: b'\x11\xbaI', + -0x45b6: b'\x11\xbaJ', + -0x45b5: b'\x11\xbaK', + -0x45b4: b'\x11\xbaL', + -0x45b3: b'\x11\xbaM', + -0x45b2: b'\x11\xbaN', + -0x45b1: b'\x11\xbaO', + -0x45b0: b'\x11\xbaP', + -0x45af: b'\x11\xbaQ', + -0x45ae: b'\x11\xbaR', + -0x45ad: b'\x11\xbaS', + -0x45ac: b'\x11\xbaT', + -0x45ab: b'\x11\xbaU', + -0x45aa: b'\x11\xbaV', + -0x45a9: b'\x11\xbaW', + -0x45a8: b'\x11\xbaX', + -0x45a7: b'\x11\xbaY', + -0x45a6: b'\x11\xbaZ', + -0x45a5: b'\x11\xba[', + -0x45a4: b'\x11\xba\\', + -0x45a3: b'\x11\xba]', + -0x45a2: b'\x11\xba^', + -0x45a1: b'\x11\xba_', + -0x45a0: b'\x11\xba`', + -0x459f: b'\x11\xbaa', + -0x459e: b'\x11\xbab', + -0x459d: b'\x11\xbac', + -0x459c: b'\x11\xbad', + -0x459b: b'\x11\xbae', + -0x459a: b'\x11\xbaf', + -0x4599: b'\x11\xbag', + -0x4598: b'\x11\xbah', + -0x4597: b'\x11\xbai', + -0x4596: b'\x11\xbaj', + -0x4595: b'\x11\xbak', + -0x4594: b'\x11\xbal', + -0x4593: b'\x11\xbam', + -0x4592: b'\x11\xban', + -0x4591: b'\x11\xbao', + -0x4590: b'\x11\xbap', + -0x458f: b'\x11\xbaq', + -0x458e: b'\x11\xbar', + -0x458d: b'\x11\xbas', + -0x458c: b'\x11\xbat', + -0x458b: b'\x11\xbau', + -0x458a: b'\x11\xbav', + -0x4589: b'\x11\xbaw', + -0x4588: b'\x11\xbax', + -0x4587: b'\x11\xbay', + -0x4586: b'\x11\xbaz', + -0x4585: b'\x11\xba{', + -0x4584: b'\x11\xba|', + -0x4583: b'\x11\xba}', + -0x4582: b'\x11\xba~', + -0x4581: b'\x11\xba\x7f', + -0x4580: b'\x11\xba\x80', + -0x457f: b'\x11\xba\x81', + -0x457e: b'\x11\xba\x82', + -0x457d: b'\x11\xba\x83', + -0x457c: b'\x11\xba\x84', + -0x457b: b'\x11\xba\x85', + -0x457a: b'\x11\xba\x86', + -0x4579: b'\x11\xba\x87', + -0x4578: b'\x11\xba\x88', + -0x4577: b'\x11\xba\x89', + -0x4576: b'\x11\xba\x8a', + -0x4575: b'\x11\xba\x8b', + -0x4574: b'\x11\xba\x8c', + -0x4573: b'\x11\xba\x8d', + -0x4572: b'\x11\xba\x8e', + -0x4571: b'\x11\xba\x8f', + -0x4570: b'\x11\xba\x90', + -0x456f: b'\x11\xba\x91', + -0x456e: b'\x11\xba\x92', + -0x456d: b'\x11\xba\x93', + -0x456c: b'\x11\xba\x94', + -0x456b: b'\x11\xba\x95', + -0x456a: b'\x11\xba\x96', + -0x4569: b'\x11\xba\x97', + -0x4568: b'\x11\xba\x98', + -0x4567: b'\x11\xba\x99', + -0x4566: b'\x11\xba\x9a', + -0x4565: b'\x11\xba\x9b', + -0x4564: b'\x11\xba\x9c', + -0x4563: b'\x11\xba\x9d', + -0x4562: b'\x11\xba\x9e', + -0x4561: b'\x11\xba\x9f', + -0x4560: b'\x11\xba\xa0', + -0x455f: b'\x11\xba\xa1', + -0x455e: b'\x11\xba\xa2', + -0x455d: b'\x11\xba\xa3', + -0x455c: b'\x11\xba\xa4', + -0x455b: b'\x11\xba\xa5', + -0x455a: b'\x11\xba\xa6', + -0x4559: b'\x11\xba\xa7', + -0x4558: b'\x11\xba\xa8', + -0x4557: b'\x11\xba\xa9', + -0x4556: b'\x11\xba\xaa', + -0x4555: b'\x11\xba\xab', + -0x4554: b'\x11\xba\xac', + -0x4553: b'\x11\xba\xad', + -0x4552: b'\x11\xba\xae', + -0x4551: b'\x11\xba\xaf', + -0x4550: b'\x11\xba\xb0', + -0x454f: b'\x11\xba\xb1', + -0x454e: b'\x11\xba\xb2', + -0x454d: b'\x11\xba\xb3', + -0x454c: b'\x11\xba\xb4', + -0x454b: b'\x11\xba\xb5', + -0x454a: b'\x11\xba\xb6', + -0x4549: b'\x11\xba\xb7', + -0x4548: b'\x11\xba\xb8', + -0x4547: b'\x11\xba\xb9', + -0x4546: b'\x11\xba\xba', + -0x4545: b'\x11\xba\xbb', + -0x4544: b'\x11\xba\xbc', + -0x4543: b'\x11\xba\xbd', + -0x4542: b'\x11\xba\xbe', + -0x4541: b'\x11\xba\xbf', + -0x4540: b'\x11\xba\xc0', + -0x453f: b'\x11\xba\xc1', + -0x453e: b'\x11\xba\xc2', + -0x453d: b'\x11\xba\xc3', + -0x453c: b'\x11\xba\xc4', + -0x453b: b'\x11\xba\xc5', + -0x453a: b'\x11\xba\xc6', + -0x4539: b'\x11\xba\xc7', + -0x4538: b'\x11\xba\xc8', + -0x4537: b'\x11\xba\xc9', + -0x4536: b'\x11\xba\xca', + -0x4535: b'\x11\xba\xcb', + -0x4534: b'\x11\xba\xcc', + -0x4533: b'\x11\xba\xcd', + -0x4532: b'\x11\xba\xce', + -0x4531: b'\x11\xba\xcf', + -0x4530: b'\x11\xba\xd0', + -0x452f: b'\x11\xba\xd1', + -0x452e: b'\x11\xba\xd2', + -0x452d: b'\x11\xba\xd3', + -0x452c: b'\x11\xba\xd4', + -0x452b: b'\x11\xba\xd5', + -0x452a: b'\x11\xba\xd6', + -0x4529: b'\x11\xba\xd7', + -0x4528: b'\x11\xba\xd8', + -0x4527: b'\x11\xba\xd9', + -0x4526: b'\x11\xba\xda', + -0x4525: b'\x11\xba\xdb', + -0x4524: b'\x11\xba\xdc', + -0x4523: b'\x11\xba\xdd', + -0x4522: b'\x11\xba\xde', + -0x4521: b'\x11\xba\xdf', + -0x4520: b'\x11\xba\xe0', + -0x451f: b'\x11\xba\xe1', + -0x451e: b'\x11\xba\xe2', + -0x451d: b'\x11\xba\xe3', + -0x451c: b'\x11\xba\xe4', + -0x451b: b'\x11\xba\xe5', + -0x451a: b'\x11\xba\xe6', + -0x4519: b'\x11\xba\xe7', + -0x4518: b'\x11\xba\xe8', + -0x4517: b'\x11\xba\xe9', + -0x4516: b'\x11\xba\xea', + -0x4515: b'\x11\xba\xeb', + -0x4514: b'\x11\xba\xec', + -0x4513: b'\x11\xba\xed', + -0x4512: b'\x11\xba\xee', + -0x4511: b'\x11\xba\xef', + -0x4510: b'\x11\xba\xf0', + -0x450f: b'\x11\xba\xf1', + -0x450e: b'\x11\xba\xf2', + -0x450d: b'\x11\xba\xf3', + -0x450c: b'\x11\xba\xf4', + -0x450b: b'\x11\xba\xf5', + -0x450a: b'\x11\xba\xf6', + -0x4509: b'\x11\xba\xf7', + -0x4508: b'\x11\xba\xf8', + -0x4507: b'\x11\xba\xf9', + -0x4506: b'\x11\xba\xfa', + -0x4505: b'\x11\xba\xfb', + -0x4504: b'\x11\xba\xfc', + -0x4503: b'\x11\xba\xfd', + -0x4502: b'\x11\xba\xfe', + -0x4501: b'\x11\xba\xff', + -0x4500: b'\x11\xbb\x00', + -0x44ff: b'\x11\xbb\x01', + -0x44fe: b'\x11\xbb\x02', + -0x44fd: b'\x11\xbb\x03', + -0x44fc: b'\x11\xbb\x04', + -0x44fb: b'\x11\xbb\x05', + -0x44fa: b'\x11\xbb\x06', + -0x44f9: b'\x11\xbb\x07', + -0x44f8: b'\x11\xbb\x08', + -0x44f7: b'\x11\xbb\t', + -0x44f6: b'\x11\xbb\n', + -0x44f5: b'\x11\xbb\x0b', + -0x44f4: b'\x11\xbb\x0c', + -0x44f3: b'\x11\xbb\r', + -0x44f2: b'\x11\xbb\x0e', + -0x44f1: b'\x11\xbb\x0f', + -0x44f0: b'\x11\xbb\x10', + -0x44ef: b'\x11\xbb\x11', + -0x44ee: b'\x11\xbb\x12', + -0x44ed: b'\x11\xbb\x13', + -0x44ec: b'\x11\xbb\x14', + -0x44eb: b'\x11\xbb\x15', + -0x44ea: b'\x11\xbb\x16', + -0x44e9: b'\x11\xbb\x17', + -0x44e8: b'\x11\xbb\x18', + -0x44e7: b'\x11\xbb\x19', + -0x44e6: b'\x11\xbb\x1a', + -0x44e5: b'\x11\xbb\x1b', + -0x44e4: b'\x11\xbb\x1c', + -0x44e3: b'\x11\xbb\x1d', + -0x44e2: b'\x11\xbb\x1e', + -0x44e1: b'\x11\xbb\x1f', + -0x44e0: b'\x11\xbb ', + -0x44df: b'\x11\xbb!', + -0x44de: b'\x11\xbb"', + -0x44dd: b'\x11\xbb#', + -0x44dc: b'\x11\xbb$', + -0x44db: b'\x11\xbb%', + -0x44da: b'\x11\xbb&', + -0x44d9: b"\x11\xbb'", + -0x44d8: b'\x11\xbb(', + -0x44d7: b'\x11\xbb)', + -0x44d6: b'\x11\xbb*', + -0x44d5: b'\x11\xbb+', + -0x44d4: b'\x11\xbb,', + -0x44d3: b'\x11\xbb-', + -0x44d2: b'\x11\xbb.', + -0x44d1: b'\x11\xbb/', + -0x44d0: b'\x11\xbb0', + -0x44cf: b'\x11\xbb1', + -0x44ce: b'\x11\xbb2', + -0x44cd: b'\x11\xbb3', + -0x44cc: b'\x11\xbb4', + -0x44cb: b'\x11\xbb5', + -0x44ca: b'\x11\xbb6', + -0x44c9: b'\x11\xbb7', + -0x44c8: b'\x11\xbb8', + -0x44c7: b'\x11\xbb9', + -0x44c6: b'\x11\xbb:', + -0x44c5: b'\x11\xbb;', + -0x44c4: b'\x11\xbb<', + -0x44c3: b'\x11\xbb=', + -0x44c2: b'\x11\xbb>', + -0x44c1: b'\x11\xbb?', + -0x44c0: b'\x11\xbb@', + -0x44bf: b'\x11\xbbA', + -0x44be: b'\x11\xbbB', + -0x44bd: b'\x11\xbbC', + -0x44bc: b'\x11\xbbD', + -0x44bb: b'\x11\xbbE', + -0x44ba: b'\x11\xbbF', + -0x44b9: b'\x11\xbbG', + -0x44b8: b'\x11\xbbH', + -0x44b7: b'\x11\xbbI', + -0x44b6: b'\x11\xbbJ', + -0x44b5: b'\x11\xbbK', + -0x44b4: b'\x11\xbbL', + -0x44b3: b'\x11\xbbM', + -0x44b2: b'\x11\xbbN', + -0x44b1: b'\x11\xbbO', + -0x44b0: b'\x11\xbbP', + -0x44af: b'\x11\xbbQ', + -0x44ae: b'\x11\xbbR', + -0x44ad: b'\x11\xbbS', + -0x44ac: b'\x11\xbbT', + -0x44ab: b'\x11\xbbU', + -0x44aa: b'\x11\xbbV', + -0x44a9: b'\x11\xbbW', + -0x44a8: b'\x11\xbbX', + -0x44a7: b'\x11\xbbY', + -0x44a6: b'\x11\xbbZ', + -0x44a5: b'\x11\xbb[', + -0x44a4: b'\x11\xbb\\', + -0x44a3: b'\x11\xbb]', + -0x44a2: b'\x11\xbb^', + -0x44a1: b'\x11\xbb_', + -0x44a0: b'\x11\xbb`', + -0x449f: b'\x11\xbba', + -0x449e: b'\x11\xbbb', + -0x449d: b'\x11\xbbc', + -0x449c: b'\x11\xbbd', + -0x449b: b'\x11\xbbe', + -0x449a: b'\x11\xbbf', + -0x4499: b'\x11\xbbg', + -0x4498: b'\x11\xbbh', + -0x4497: b'\x11\xbbi', + -0x4496: b'\x11\xbbj', + -0x4495: b'\x11\xbbk', + -0x4494: b'\x11\xbbl', + -0x4493: b'\x11\xbbm', + -0x4492: b'\x11\xbbn', + -0x4491: b'\x11\xbbo', + -0x4490: b'\x11\xbbp', + -0x448f: b'\x11\xbbq', + -0x448e: b'\x11\xbbr', + -0x448d: b'\x11\xbbs', + -0x448c: b'\x11\xbbt', + -0x448b: b'\x11\xbbu', + -0x448a: b'\x11\xbbv', + -0x4489: b'\x11\xbbw', + -0x4488: b'\x11\xbbx', + -0x4487: b'\x11\xbby', + -0x4486: b'\x11\xbbz', + -0x4485: b'\x11\xbb{', + -0x4484: b'\x11\xbb|', + -0x4483: b'\x11\xbb}', + -0x4482: b'\x11\xbb~', + -0x4481: b'\x11\xbb\x7f', + -0x4480: b'\x11\xbb\x80', + -0x447f: b'\x11\xbb\x81', + -0x447e: b'\x11\xbb\x82', + -0x447d: b'\x11\xbb\x83', + -0x447c: b'\x11\xbb\x84', + -0x447b: b'\x11\xbb\x85', + -0x447a: b'\x11\xbb\x86', + -0x4479: b'\x11\xbb\x87', + -0x4478: b'\x11\xbb\x88', + -0x4477: b'\x11\xbb\x89', + -0x4476: b'\x11\xbb\x8a', + -0x4475: b'\x11\xbb\x8b', + -0x4474: b'\x11\xbb\x8c', + -0x4473: b'\x11\xbb\x8d', + -0x4472: b'\x11\xbb\x8e', + -0x4471: b'\x11\xbb\x8f', + -0x4470: b'\x11\xbb\x90', + -0x446f: b'\x11\xbb\x91', + -0x446e: b'\x11\xbb\x92', + -0x446d: b'\x11\xbb\x93', + -0x446c: b'\x11\xbb\x94', + -0x446b: b'\x11\xbb\x95', + -0x446a: b'\x11\xbb\x96', + -0x4469: b'\x11\xbb\x97', + -0x4468: b'\x11\xbb\x98', + -0x4467: b'\x11\xbb\x99', + -0x4466: b'\x11\xbb\x9a', + -0x4465: b'\x11\xbb\x9b', + -0x4464: b'\x11\xbb\x9c', + -0x4463: b'\x11\xbb\x9d', + -0x4462: b'\x11\xbb\x9e', + -0x4461: b'\x11\xbb\x9f', + -0x4460: b'\x11\xbb\xa0', + -0x445f: b'\x11\xbb\xa1', + -0x445e: b'\x11\xbb\xa2', + -0x445d: b'\x11\xbb\xa3', + -0x445c: b'\x11\xbb\xa4', + -0x445b: b'\x11\xbb\xa5', + -0x445a: b'\x11\xbb\xa6', + -0x4459: b'\x11\xbb\xa7', + -0x4458: b'\x11\xbb\xa8', + -0x4457: b'\x11\xbb\xa9', + -0x4456: b'\x11\xbb\xaa', + -0x4455: b'\x11\xbb\xab', + -0x4454: b'\x11\xbb\xac', + -0x4453: b'\x11\xbb\xad', + -0x4452: b'\x11\xbb\xae', + -0x4451: b'\x11\xbb\xaf', + -0x4450: b'\x11\xbb\xb0', + -0x444f: b'\x11\xbb\xb1', + -0x444e: b'\x11\xbb\xb2', + -0x444d: b'\x11\xbb\xb3', + -0x444c: b'\x11\xbb\xb4', + -0x444b: b'\x11\xbb\xb5', + -0x444a: b'\x11\xbb\xb6', + -0x4449: b'\x11\xbb\xb7', + -0x4448: b'\x11\xbb\xb8', + -0x4447: b'\x11\xbb\xb9', + -0x4446: b'\x11\xbb\xba', + -0x4445: b'\x11\xbb\xbb', + -0x4444: b'\x11\xbb\xbc', + -0x4443: b'\x11\xbb\xbd', + -0x4442: b'\x11\xbb\xbe', + -0x4441: b'\x11\xbb\xbf', + -0x4440: b'\x11\xbb\xc0', + -0x443f: b'\x11\xbb\xc1', + -0x443e: b'\x11\xbb\xc2', + -0x443d: b'\x11\xbb\xc3', + -0x443c: b'\x11\xbb\xc4', + -0x443b: b'\x11\xbb\xc5', + -0x443a: b'\x11\xbb\xc6', + -0x4439: b'\x11\xbb\xc7', + -0x4438: b'\x11\xbb\xc8', + -0x4437: b'\x11\xbb\xc9', + -0x4436: b'\x11\xbb\xca', + -0x4435: b'\x11\xbb\xcb', + -0x4434: b'\x11\xbb\xcc', + -0x4433: b'\x11\xbb\xcd', + -0x4432: b'\x11\xbb\xce', + -0x4431: b'\x11\xbb\xcf', + -0x4430: b'\x11\xbb\xd0', + -0x442f: b'\x11\xbb\xd1', + -0x442e: b'\x11\xbb\xd2', + -0x442d: b'\x11\xbb\xd3', + -0x442c: b'\x11\xbb\xd4', + -0x442b: b'\x11\xbb\xd5', + -0x442a: b'\x11\xbb\xd6', + -0x4429: b'\x11\xbb\xd7', + -0x4428: b'\x11\xbb\xd8', + -0x4427: b'\x11\xbb\xd9', + -0x4426: b'\x11\xbb\xda', + -0x4425: b'\x11\xbb\xdb', + -0x4424: b'\x11\xbb\xdc', + -0x4423: b'\x11\xbb\xdd', + -0x4422: b'\x11\xbb\xde', + -0x4421: b'\x11\xbb\xdf', + -0x4420: b'\x11\xbb\xe0', + -0x441f: b'\x11\xbb\xe1', + -0x441e: b'\x11\xbb\xe2', + -0x441d: b'\x11\xbb\xe3', + -0x441c: b'\x11\xbb\xe4', + -0x441b: b'\x11\xbb\xe5', + -0x441a: b'\x11\xbb\xe6', + -0x4419: b'\x11\xbb\xe7', + -0x4418: b'\x11\xbb\xe8', + -0x4417: b'\x11\xbb\xe9', + -0x4416: b'\x11\xbb\xea', + -0x4415: b'\x11\xbb\xeb', + -0x4414: b'\x11\xbb\xec', + -0x4413: b'\x11\xbb\xed', + -0x4412: b'\x11\xbb\xee', + -0x4411: b'\x11\xbb\xef', + -0x4410: b'\x11\xbb\xf0', + -0x440f: b'\x11\xbb\xf1', + -0x440e: b'\x11\xbb\xf2', + -0x440d: b'\x11\xbb\xf3', + -0x440c: b'\x11\xbb\xf4', + -0x440b: b'\x11\xbb\xf5', + -0x440a: b'\x11\xbb\xf6', + -0x4409: b'\x11\xbb\xf7', + -0x4408: b'\x11\xbb\xf8', + -0x4407: b'\x11\xbb\xf9', + -0x4406: b'\x11\xbb\xfa', + -0x4405: b'\x11\xbb\xfb', + -0x4404: b'\x11\xbb\xfc', + -0x4403: b'\x11\xbb\xfd', + -0x4402: b'\x11\xbb\xfe', + -0x4401: b'\x11\xbb\xff', + -0x4400: b'\x11\xbc\x00', + -0x43ff: b'\x11\xbc\x01', + -0x43fe: b'\x11\xbc\x02', + -0x43fd: b'\x11\xbc\x03', + -0x43fc: b'\x11\xbc\x04', + -0x43fb: b'\x11\xbc\x05', + -0x43fa: b'\x11\xbc\x06', + -0x43f9: b'\x11\xbc\x07', + -0x43f8: b'\x11\xbc\x08', + -0x43f7: b'\x11\xbc\t', + -0x43f6: b'\x11\xbc\n', + -0x43f5: b'\x11\xbc\x0b', + -0x43f4: b'\x11\xbc\x0c', + -0x43f3: b'\x11\xbc\r', + -0x43f2: b'\x11\xbc\x0e', + -0x43f1: b'\x11\xbc\x0f', + -0x43f0: b'\x11\xbc\x10', + -0x43ef: b'\x11\xbc\x11', + -0x43ee: b'\x11\xbc\x12', + -0x43ed: b'\x11\xbc\x13', + -0x43ec: b'\x11\xbc\x14', + -0x43eb: b'\x11\xbc\x15', + -0x43ea: b'\x11\xbc\x16', + -0x43e9: b'\x11\xbc\x17', + -0x43e8: b'\x11\xbc\x18', + -0x43e7: b'\x11\xbc\x19', + -0x43e6: b'\x11\xbc\x1a', + -0x43e5: b'\x11\xbc\x1b', + -0x43e4: b'\x11\xbc\x1c', + -0x43e3: b'\x11\xbc\x1d', + -0x43e2: b'\x11\xbc\x1e', + -0x43e1: b'\x11\xbc\x1f', + -0x43e0: b'\x11\xbc ', + -0x43df: b'\x11\xbc!', + -0x43de: b'\x11\xbc"', + -0x43dd: b'\x11\xbc#', + -0x43dc: b'\x11\xbc$', + -0x43db: b'\x11\xbc%', + -0x43da: b'\x11\xbc&', + -0x43d9: b"\x11\xbc'", + -0x43d8: b'\x11\xbc(', + -0x43d7: b'\x11\xbc)', + -0x43d6: b'\x11\xbc*', + -0x43d5: b'\x11\xbc+', + -0x43d4: b'\x11\xbc,', + -0x43d3: b'\x11\xbc-', + -0x43d2: b'\x11\xbc.', + -0x43d1: b'\x11\xbc/', + -0x43d0: b'\x11\xbc0', + -0x43cf: b'\x11\xbc1', + -0x43ce: b'\x11\xbc2', + -0x43cd: b'\x11\xbc3', + -0x43cc: b'\x11\xbc4', + -0x43cb: b'\x11\xbc5', + -0x43ca: b'\x11\xbc6', + -0x43c9: b'\x11\xbc7', + -0x43c8: b'\x11\xbc8', + -0x43c7: b'\x11\xbc9', + -0x43c6: b'\x11\xbc:', + -0x43c5: b'\x11\xbc;', + -0x43c4: b'\x11\xbc<', + -0x43c3: b'\x11\xbc=', + -0x43c2: b'\x11\xbc>', + -0x43c1: b'\x11\xbc?', + -0x43c0: b'\x11\xbc@', + -0x43bf: b'\x11\xbcA', + -0x43be: b'\x11\xbcB', + -0x43bd: b'\x11\xbcC', + -0x43bc: b'\x11\xbcD', + -0x43bb: b'\x11\xbcE', + -0x43ba: b'\x11\xbcF', + -0x43b9: b'\x11\xbcG', + -0x43b8: b'\x11\xbcH', + -0x43b7: b'\x11\xbcI', + -0x43b6: b'\x11\xbcJ', + -0x43b5: b'\x11\xbcK', + -0x43b4: b'\x11\xbcL', + -0x43b3: b'\x11\xbcM', + -0x43b2: b'\x11\xbcN', + -0x43b1: b'\x11\xbcO', + -0x43b0: b'\x11\xbcP', + -0x43af: b'\x11\xbcQ', + -0x43ae: b'\x11\xbcR', + -0x43ad: b'\x11\xbcS', + -0x43ac: b'\x11\xbcT', + -0x43ab: b'\x11\xbcU', + -0x43aa: b'\x11\xbcV', + -0x43a9: b'\x11\xbcW', + -0x43a8: b'\x11\xbcX', + -0x43a7: b'\x11\xbcY', + -0x43a6: b'\x11\xbcZ', + -0x43a5: b'\x11\xbc[', + -0x43a4: b'\x11\xbc\\', + -0x43a3: b'\x11\xbc]', + -0x43a2: b'\x11\xbc^', + -0x43a1: b'\x11\xbc_', + -0x43a0: b'\x11\xbc`', + -0x439f: b'\x11\xbca', + -0x439e: b'\x11\xbcb', + -0x439d: b'\x11\xbcc', + -0x439c: b'\x11\xbcd', + -0x439b: b'\x11\xbce', + -0x439a: b'\x11\xbcf', + -0x4399: b'\x11\xbcg', + -0x4398: b'\x11\xbch', + -0x4397: b'\x11\xbci', + -0x4396: b'\x11\xbcj', + -0x4395: b'\x11\xbck', + -0x4394: b'\x11\xbcl', + -0x4393: b'\x11\xbcm', + -0x4392: b'\x11\xbcn', + -0x4391: b'\x11\xbco', + -0x4390: b'\x11\xbcp', + -0x438f: b'\x11\xbcq', + -0x438e: b'\x11\xbcr', + -0x438d: b'\x11\xbcs', + -0x438c: b'\x11\xbct', + -0x438b: b'\x11\xbcu', + -0x438a: b'\x11\xbcv', + -0x4389: b'\x11\xbcw', + -0x4388: b'\x11\xbcx', + -0x4387: b'\x11\xbcy', + -0x4386: b'\x11\xbcz', + -0x4385: b'\x11\xbc{', + -0x4384: b'\x11\xbc|', + -0x4383: b'\x11\xbc}', + -0x4382: b'\x11\xbc~', + -0x4381: b'\x11\xbc\x7f', + -0x4380: b'\x11\xbc\x80', + -0x437f: b'\x11\xbc\x81', + -0x437e: b'\x11\xbc\x82', + -0x437d: b'\x11\xbc\x83', + -0x437c: b'\x11\xbc\x84', + -0x437b: b'\x11\xbc\x85', + -0x437a: b'\x11\xbc\x86', + -0x4379: b'\x11\xbc\x87', + -0x4378: b'\x11\xbc\x88', + -0x4377: b'\x11\xbc\x89', + -0x4376: b'\x11\xbc\x8a', + -0x4375: b'\x11\xbc\x8b', + -0x4374: b'\x11\xbc\x8c', + -0x4373: b'\x11\xbc\x8d', + -0x4372: b'\x11\xbc\x8e', + -0x4371: b'\x11\xbc\x8f', + -0x4370: b'\x11\xbc\x90', + -0x436f: b'\x11\xbc\x91', + -0x436e: b'\x11\xbc\x92', + -0x436d: b'\x11\xbc\x93', + -0x436c: b'\x11\xbc\x94', + -0x436b: b'\x11\xbc\x95', + -0x436a: b'\x11\xbc\x96', + -0x4369: b'\x11\xbc\x97', + -0x4368: b'\x11\xbc\x98', + -0x4367: b'\x11\xbc\x99', + -0x4366: b'\x11\xbc\x9a', + -0x4365: b'\x11\xbc\x9b', + -0x4364: b'\x11\xbc\x9c', + -0x4363: b'\x11\xbc\x9d', + -0x4362: b'\x11\xbc\x9e', + -0x4361: b'\x11\xbc\x9f', + -0x4360: b'\x11\xbc\xa0', + -0x435f: b'\x11\xbc\xa1', + -0x435e: b'\x11\xbc\xa2', + -0x435d: b'\x11\xbc\xa3', + -0x435c: b'\x11\xbc\xa4', + -0x435b: b'\x11\xbc\xa5', + -0x435a: b'\x11\xbc\xa6', + -0x4359: b'\x11\xbc\xa7', + -0x4358: b'\x11\xbc\xa8', + -0x4357: b'\x11\xbc\xa9', + -0x4356: b'\x11\xbc\xaa', + -0x4355: b'\x11\xbc\xab', + -0x4354: b'\x11\xbc\xac', + -0x4353: b'\x11\xbc\xad', + -0x4352: b'\x11\xbc\xae', + -0x4351: b'\x11\xbc\xaf', + -0x4350: b'\x11\xbc\xb0', + -0x434f: b'\x11\xbc\xb1', + -0x434e: b'\x11\xbc\xb2', + -0x434d: b'\x11\xbc\xb3', + -0x434c: b'\x11\xbc\xb4', + -0x434b: b'\x11\xbc\xb5', + -0x434a: b'\x11\xbc\xb6', + -0x4349: b'\x11\xbc\xb7', + -0x4348: b'\x11\xbc\xb8', + -0x4347: b'\x11\xbc\xb9', + -0x4346: b'\x11\xbc\xba', + -0x4345: b'\x11\xbc\xbb', + -0x4344: b'\x11\xbc\xbc', + -0x4343: b'\x11\xbc\xbd', + -0x4342: b'\x11\xbc\xbe', + -0x4341: b'\x11\xbc\xbf', + -0x4340: b'\x11\xbc\xc0', + -0x433f: b'\x11\xbc\xc1', + -0x433e: b'\x11\xbc\xc2', + -0x433d: b'\x11\xbc\xc3', + -0x433c: b'\x11\xbc\xc4', + -0x433b: b'\x11\xbc\xc5', + -0x433a: b'\x11\xbc\xc6', + -0x4339: b'\x11\xbc\xc7', + -0x4338: b'\x11\xbc\xc8', + -0x4337: b'\x11\xbc\xc9', + -0x4336: b'\x11\xbc\xca', + -0x4335: b'\x11\xbc\xcb', + -0x4334: b'\x11\xbc\xcc', + -0x4333: b'\x11\xbc\xcd', + -0x4332: b'\x11\xbc\xce', + -0x4331: b'\x11\xbc\xcf', + -0x4330: b'\x11\xbc\xd0', + -0x432f: b'\x11\xbc\xd1', + -0x432e: b'\x11\xbc\xd2', + -0x432d: b'\x11\xbc\xd3', + -0x432c: b'\x11\xbc\xd4', + -0x432b: b'\x11\xbc\xd5', + -0x432a: b'\x11\xbc\xd6', + -0x4329: b'\x11\xbc\xd7', + -0x4328: b'\x11\xbc\xd8', + -0x4327: b'\x11\xbc\xd9', + -0x4326: b'\x11\xbc\xda', + -0x4325: b'\x11\xbc\xdb', + -0x4324: b'\x11\xbc\xdc', + -0x4323: b'\x11\xbc\xdd', + -0x4322: b'\x11\xbc\xde', + -0x4321: b'\x11\xbc\xdf', + -0x4320: b'\x11\xbc\xe0', + -0x431f: b'\x11\xbc\xe1', + -0x431e: b'\x11\xbc\xe2', + -0x431d: b'\x11\xbc\xe3', + -0x431c: b'\x11\xbc\xe4', + -0x431b: b'\x11\xbc\xe5', + -0x431a: b'\x11\xbc\xe6', + -0x4319: b'\x11\xbc\xe7', + -0x4318: b'\x11\xbc\xe8', + -0x4317: b'\x11\xbc\xe9', + -0x4316: b'\x11\xbc\xea', + -0x4315: b'\x11\xbc\xeb', + -0x4314: b'\x11\xbc\xec', + -0x4313: b'\x11\xbc\xed', + -0x4312: b'\x11\xbc\xee', + -0x4311: b'\x11\xbc\xef', + -0x4310: b'\x11\xbc\xf0', + -0x430f: b'\x11\xbc\xf1', + -0x430e: b'\x11\xbc\xf2', + -0x430d: b'\x11\xbc\xf3', + -0x430c: b'\x11\xbc\xf4', + -0x430b: b'\x11\xbc\xf5', + -0x430a: b'\x11\xbc\xf6', + -0x4309: b'\x11\xbc\xf7', + -0x4308: b'\x11\xbc\xf8', + -0x4307: b'\x11\xbc\xf9', + -0x4306: b'\x11\xbc\xfa', + -0x4305: b'\x11\xbc\xfb', + -0x4304: b'\x11\xbc\xfc', + -0x4303: b'\x11\xbc\xfd', + -0x4302: b'\x11\xbc\xfe', + -0x4301: b'\x11\xbc\xff', + -0x4300: b'\x11\xbd\x00', + -0x42ff: b'\x11\xbd\x01', + -0x42fe: b'\x11\xbd\x02', + -0x42fd: b'\x11\xbd\x03', + -0x42fc: b'\x11\xbd\x04', + -0x42fb: b'\x11\xbd\x05', + -0x42fa: b'\x11\xbd\x06', + -0x42f9: b'\x11\xbd\x07', + -0x42f8: b'\x11\xbd\x08', + -0x42f7: b'\x11\xbd\t', + -0x42f6: b'\x11\xbd\n', + -0x42f5: b'\x11\xbd\x0b', + -0x42f4: b'\x11\xbd\x0c', + -0x42f3: b'\x11\xbd\r', + -0x42f2: b'\x11\xbd\x0e', + -0x42f1: b'\x11\xbd\x0f', + -0x42f0: b'\x11\xbd\x10', + -0x42ef: b'\x11\xbd\x11', + -0x42ee: b'\x11\xbd\x12', + -0x42ed: b'\x11\xbd\x13', + -0x42ec: b'\x11\xbd\x14', + -0x42eb: b'\x11\xbd\x15', + -0x42ea: b'\x11\xbd\x16', + -0x42e9: b'\x11\xbd\x17', + -0x42e8: b'\x11\xbd\x18', + -0x42e7: b'\x11\xbd\x19', + -0x42e6: b'\x11\xbd\x1a', + -0x42e5: b'\x11\xbd\x1b', + -0x42e4: b'\x11\xbd\x1c', + -0x42e3: b'\x11\xbd\x1d', + -0x42e2: b'\x11\xbd\x1e', + -0x42e1: b'\x11\xbd\x1f', + -0x42e0: b'\x11\xbd ', + -0x42df: b'\x11\xbd!', + -0x42de: b'\x11\xbd"', + -0x42dd: b'\x11\xbd#', + -0x42dc: b'\x11\xbd$', + -0x42db: b'\x11\xbd%', + -0x42da: b'\x11\xbd&', + -0x42d9: b"\x11\xbd'", + -0x42d8: b'\x11\xbd(', + -0x42d7: b'\x11\xbd)', + -0x42d6: b'\x11\xbd*', + -0x42d5: b'\x11\xbd+', + -0x42d4: b'\x11\xbd,', + -0x42d3: b'\x11\xbd-', + -0x42d2: b'\x11\xbd.', + -0x42d1: b'\x11\xbd/', + -0x42d0: b'\x11\xbd0', + -0x42cf: b'\x11\xbd1', + -0x42ce: b'\x11\xbd2', + -0x42cd: b'\x11\xbd3', + -0x42cc: b'\x11\xbd4', + -0x42cb: b'\x11\xbd5', + -0x42ca: b'\x11\xbd6', + -0x42c9: b'\x11\xbd7', + -0x42c8: b'\x11\xbd8', + -0x42c7: b'\x11\xbd9', + -0x42c6: b'\x11\xbd:', + -0x42c5: b'\x11\xbd;', + -0x42c4: b'\x11\xbd<', + -0x42c3: b'\x11\xbd=', + -0x42c2: b'\x11\xbd>', + -0x42c1: b'\x11\xbd?', + -0x42c0: b'\x11\xbd@', + -0x42bf: b'\x11\xbdA', + -0x42be: b'\x11\xbdB', + -0x42bd: b'\x11\xbdC', + -0x42bc: b'\x11\xbdD', + -0x42bb: b'\x11\xbdE', + -0x42ba: b'\x11\xbdF', + -0x42b9: b'\x11\xbdG', + -0x42b8: b'\x11\xbdH', + -0x42b7: b'\x11\xbdI', + -0x42b6: b'\x11\xbdJ', + -0x42b5: b'\x11\xbdK', + -0x42b4: b'\x11\xbdL', + -0x42b3: b'\x11\xbdM', + -0x42b2: b'\x11\xbdN', + -0x42b1: b'\x11\xbdO', + -0x42b0: b'\x11\xbdP', + -0x42af: b'\x11\xbdQ', + -0x42ae: b'\x11\xbdR', + -0x42ad: b'\x11\xbdS', + -0x42ac: b'\x11\xbdT', + -0x42ab: b'\x11\xbdU', + -0x42aa: b'\x11\xbdV', + -0x42a9: b'\x11\xbdW', + -0x42a8: b'\x11\xbdX', + -0x42a7: b'\x11\xbdY', + -0x42a6: b'\x11\xbdZ', + -0x42a5: b'\x11\xbd[', + -0x42a4: b'\x11\xbd\\', + -0x42a3: b'\x11\xbd]', + -0x42a2: b'\x11\xbd^', + -0x42a1: b'\x11\xbd_', + -0x42a0: b'\x11\xbd`', + -0x429f: b'\x11\xbda', + -0x429e: b'\x11\xbdb', + -0x429d: b'\x11\xbdc', + -0x429c: b'\x11\xbdd', + -0x429b: b'\x11\xbde', + -0x429a: b'\x11\xbdf', + -0x4299: b'\x11\xbdg', + -0x4298: b'\x11\xbdh', + -0x4297: b'\x11\xbdi', + -0x4296: b'\x11\xbdj', + -0x4295: b'\x11\xbdk', + -0x4294: b'\x11\xbdl', + -0x4293: b'\x11\xbdm', + -0x4292: b'\x11\xbdn', + -0x4291: b'\x11\xbdo', + -0x4290: b'\x11\xbdp', + -0x428f: b'\x11\xbdq', + -0x428e: b'\x11\xbdr', + -0x428d: b'\x11\xbds', + -0x428c: b'\x11\xbdt', + -0x428b: b'\x11\xbdu', + -0x428a: b'\x11\xbdv', + -0x4289: b'\x11\xbdw', + -0x4288: b'\x11\xbdx', + -0x4287: b'\x11\xbdy', + -0x4286: b'\x11\xbdz', + -0x4285: b'\x11\xbd{', + -0x4284: b'\x11\xbd|', + -0x4283: b'\x11\xbd}', + -0x4282: b'\x11\xbd~', + -0x4281: b'\x11\xbd\x7f', + -0x4280: b'\x11\xbd\x80', + -0x427f: b'\x11\xbd\x81', + -0x427e: b'\x11\xbd\x82', + -0x427d: b'\x11\xbd\x83', + -0x427c: b'\x11\xbd\x84', + -0x427b: b'\x11\xbd\x85', + -0x427a: b'\x11\xbd\x86', + -0x4279: b'\x11\xbd\x87', + -0x4278: b'\x11\xbd\x88', + -0x4277: b'\x11\xbd\x89', + -0x4276: b'\x11\xbd\x8a', + -0x4275: b'\x11\xbd\x8b', + -0x4274: b'\x11\xbd\x8c', + -0x4273: b'\x11\xbd\x8d', + -0x4272: b'\x11\xbd\x8e', + -0x4271: b'\x11\xbd\x8f', + -0x4270: b'\x11\xbd\x90', + -0x426f: b'\x11\xbd\x91', + -0x426e: b'\x11\xbd\x92', + -0x426d: b'\x11\xbd\x93', + -0x426c: b'\x11\xbd\x94', + -0x426b: b'\x11\xbd\x95', + -0x426a: b'\x11\xbd\x96', + -0x4269: b'\x11\xbd\x97', + -0x4268: b'\x11\xbd\x98', + -0x4267: b'\x11\xbd\x99', + -0x4266: b'\x11\xbd\x9a', + -0x4265: b'\x11\xbd\x9b', + -0x4264: b'\x11\xbd\x9c', + -0x4263: b'\x11\xbd\x9d', + -0x4262: b'\x11\xbd\x9e', + -0x4261: b'\x11\xbd\x9f', + -0x4260: b'\x11\xbd\xa0', + -0x425f: b'\x11\xbd\xa1', + -0x425e: b'\x11\xbd\xa2', + -0x425d: b'\x11\xbd\xa3', + -0x425c: b'\x11\xbd\xa4', + -0x425b: b'\x11\xbd\xa5', + -0x425a: b'\x11\xbd\xa6', + -0x4259: b'\x11\xbd\xa7', + -0x4258: b'\x11\xbd\xa8', + -0x4257: b'\x11\xbd\xa9', + -0x4256: b'\x11\xbd\xaa', + -0x4255: b'\x11\xbd\xab', + -0x4254: b'\x11\xbd\xac', + -0x4253: b'\x11\xbd\xad', + -0x4252: b'\x11\xbd\xae', + -0x4251: b'\x11\xbd\xaf', + -0x4250: b'\x11\xbd\xb0', + -0x424f: b'\x11\xbd\xb1', + -0x424e: b'\x11\xbd\xb2', + -0x424d: b'\x11\xbd\xb3', + -0x424c: b'\x11\xbd\xb4', + -0x424b: b'\x11\xbd\xb5', + -0x424a: b'\x11\xbd\xb6', + -0x4249: b'\x11\xbd\xb7', + -0x4248: b'\x11\xbd\xb8', + -0x4247: b'\x11\xbd\xb9', + -0x4246: b'\x11\xbd\xba', + -0x4245: b'\x11\xbd\xbb', + -0x4244: b'\x11\xbd\xbc', + -0x4243: b'\x11\xbd\xbd', + -0x4242: b'\x11\xbd\xbe', + -0x4241: b'\x11\xbd\xbf', + -0x4240: b'\x11\xbd\xc0', + -0x423f: b'\x11\xbd\xc1', + -0x423e: b'\x11\xbd\xc2', + -0x423d: b'\x11\xbd\xc3', + -0x423c: b'\x11\xbd\xc4', + -0x423b: b'\x11\xbd\xc5', + -0x423a: b'\x11\xbd\xc6', + -0x4239: b'\x11\xbd\xc7', + -0x4238: b'\x11\xbd\xc8', + -0x4237: b'\x11\xbd\xc9', + -0x4236: b'\x11\xbd\xca', + -0x4235: b'\x11\xbd\xcb', + -0x4234: b'\x11\xbd\xcc', + -0x4233: b'\x11\xbd\xcd', + -0x4232: b'\x11\xbd\xce', + -0x4231: b'\x11\xbd\xcf', + -0x4230: b'\x11\xbd\xd0', + -0x422f: b'\x11\xbd\xd1', + -0x422e: b'\x11\xbd\xd2', + -0x422d: b'\x11\xbd\xd3', + -0x422c: b'\x11\xbd\xd4', + -0x422b: b'\x11\xbd\xd5', + -0x422a: b'\x11\xbd\xd6', + -0x4229: b'\x11\xbd\xd7', + -0x4228: b'\x11\xbd\xd8', + -0x4227: b'\x11\xbd\xd9', + -0x4226: b'\x11\xbd\xda', + -0x4225: b'\x11\xbd\xdb', + -0x4224: b'\x11\xbd\xdc', + -0x4223: b'\x11\xbd\xdd', + -0x4222: b'\x11\xbd\xde', + -0x4221: b'\x11\xbd\xdf', + -0x4220: b'\x11\xbd\xe0', + -0x421f: b'\x11\xbd\xe1', + -0x421e: b'\x11\xbd\xe2', + -0x421d: b'\x11\xbd\xe3', + -0x421c: b'\x11\xbd\xe4', + -0x421b: b'\x11\xbd\xe5', + -0x421a: b'\x11\xbd\xe6', + -0x4219: b'\x11\xbd\xe7', + -0x4218: b'\x11\xbd\xe8', + -0x4217: b'\x11\xbd\xe9', + -0x4216: b'\x11\xbd\xea', + -0x4215: b'\x11\xbd\xeb', + -0x4214: b'\x11\xbd\xec', + -0x4213: b'\x11\xbd\xed', + -0x4212: b'\x11\xbd\xee', + -0x4211: b'\x11\xbd\xef', + -0x4210: b'\x11\xbd\xf0', + -0x420f: b'\x11\xbd\xf1', + -0x420e: b'\x11\xbd\xf2', + -0x420d: b'\x11\xbd\xf3', + -0x420c: b'\x11\xbd\xf4', + -0x420b: b'\x11\xbd\xf5', + -0x420a: b'\x11\xbd\xf6', + -0x4209: b'\x11\xbd\xf7', + -0x4208: b'\x11\xbd\xf8', + -0x4207: b'\x11\xbd\xf9', + -0x4206: b'\x11\xbd\xfa', + -0x4205: b'\x11\xbd\xfb', + -0x4204: b'\x11\xbd\xfc', + -0x4203: b'\x11\xbd\xfd', + -0x4202: b'\x11\xbd\xfe', + -0x4201: b'\x11\xbd\xff', + -0x4200: b'\x11\xbe\x00', + -0x41ff: b'\x11\xbe\x01', + -0x41fe: b'\x11\xbe\x02', + -0x41fd: b'\x11\xbe\x03', + -0x41fc: b'\x11\xbe\x04', + -0x41fb: b'\x11\xbe\x05', + -0x41fa: b'\x11\xbe\x06', + -0x41f9: b'\x11\xbe\x07', + -0x41f8: b'\x11\xbe\x08', + -0x41f7: b'\x11\xbe\t', + -0x41f6: b'\x11\xbe\n', + -0x41f5: b'\x11\xbe\x0b', + -0x41f4: b'\x11\xbe\x0c', + -0x41f3: b'\x11\xbe\r', + -0x41f2: b'\x11\xbe\x0e', + -0x41f1: b'\x11\xbe\x0f', + -0x41f0: b'\x11\xbe\x10', + -0x41ef: b'\x11\xbe\x11', + -0x41ee: b'\x11\xbe\x12', + -0x41ed: b'\x11\xbe\x13', + -0x41ec: b'\x11\xbe\x14', + -0x41eb: b'\x11\xbe\x15', + -0x41ea: b'\x11\xbe\x16', + -0x41e9: b'\x11\xbe\x17', + -0x41e8: b'\x11\xbe\x18', + -0x41e7: b'\x11\xbe\x19', + -0x41e6: b'\x11\xbe\x1a', + -0x41e5: b'\x11\xbe\x1b', + -0x41e4: b'\x11\xbe\x1c', + -0x41e3: b'\x11\xbe\x1d', + -0x41e2: b'\x11\xbe\x1e', + -0x41e1: b'\x11\xbe\x1f', + -0x41e0: b'\x11\xbe ', + -0x41df: b'\x11\xbe!', + -0x41de: b'\x11\xbe"', + -0x41dd: b'\x11\xbe#', + -0x41dc: b'\x11\xbe$', + -0x41db: b'\x11\xbe%', + -0x41da: b'\x11\xbe&', + -0x41d9: b"\x11\xbe'", + -0x41d8: b'\x11\xbe(', + -0x41d7: b'\x11\xbe)', + -0x41d6: b'\x11\xbe*', + -0x41d5: b'\x11\xbe+', + -0x41d4: b'\x11\xbe,', + -0x41d3: b'\x11\xbe-', + -0x41d2: b'\x11\xbe.', + -0x41d1: b'\x11\xbe/', + -0x41d0: b'\x11\xbe0', + -0x41cf: b'\x11\xbe1', + -0x41ce: b'\x11\xbe2', + -0x41cd: b'\x11\xbe3', + -0x41cc: b'\x11\xbe4', + -0x41cb: b'\x11\xbe5', + -0x41ca: b'\x11\xbe6', + -0x41c9: b'\x11\xbe7', + -0x41c8: b'\x11\xbe8', + -0x41c7: b'\x11\xbe9', + -0x41c6: b'\x11\xbe:', + -0x41c5: b'\x11\xbe;', + -0x41c4: b'\x11\xbe<', + -0x41c3: b'\x11\xbe=', + -0x41c2: b'\x11\xbe>', + -0x41c1: b'\x11\xbe?', + -0x41c0: b'\x11\xbe@', + -0x41bf: b'\x11\xbeA', + -0x41be: b'\x11\xbeB', + -0x41bd: b'\x11\xbeC', + -0x41bc: b'\x11\xbeD', + -0x41bb: b'\x11\xbeE', + -0x41ba: b'\x11\xbeF', + -0x41b9: b'\x11\xbeG', + -0x41b8: b'\x11\xbeH', + -0x41b7: b'\x11\xbeI', + -0x41b6: b'\x11\xbeJ', + -0x41b5: b'\x11\xbeK', + -0x41b4: b'\x11\xbeL', + -0x41b3: b'\x11\xbeM', + -0x41b2: b'\x11\xbeN', + -0x41b1: b'\x11\xbeO', + -0x41b0: b'\x11\xbeP', + -0x41af: b'\x11\xbeQ', + -0x41ae: b'\x11\xbeR', + -0x41ad: b'\x11\xbeS', + -0x41ac: b'\x11\xbeT', + -0x41ab: b'\x11\xbeU', + -0x41aa: b'\x11\xbeV', + -0x41a9: b'\x11\xbeW', + -0x41a8: b'\x11\xbeX', + -0x41a7: b'\x11\xbeY', + -0x41a6: b'\x11\xbeZ', + -0x41a5: b'\x11\xbe[', + -0x41a4: b'\x11\xbe\\', + -0x41a3: b'\x11\xbe]', + -0x41a2: b'\x11\xbe^', + -0x41a1: b'\x11\xbe_', + -0x41a0: b'\x11\xbe`', + -0x419f: b'\x11\xbea', + -0x419e: b'\x11\xbeb', + -0x419d: b'\x11\xbec', + -0x419c: b'\x11\xbed', + -0x419b: b'\x11\xbee', + -0x419a: b'\x11\xbef', + -0x4199: b'\x11\xbeg', + -0x4198: b'\x11\xbeh', + -0x4197: b'\x11\xbei', + -0x4196: b'\x11\xbej', + -0x4195: b'\x11\xbek', + -0x4194: b'\x11\xbel', + -0x4193: b'\x11\xbem', + -0x4192: b'\x11\xben', + -0x4191: b'\x11\xbeo', + -0x4190: b'\x11\xbep', + -0x418f: b'\x11\xbeq', + -0x418e: b'\x11\xber', + -0x418d: b'\x11\xbes', + -0x418c: b'\x11\xbet', + -0x418b: b'\x11\xbeu', + -0x418a: b'\x11\xbev', + -0x4189: b'\x11\xbew', + -0x4188: b'\x11\xbex', + -0x4187: b'\x11\xbey', + -0x4186: b'\x11\xbez', + -0x4185: b'\x11\xbe{', + -0x4184: b'\x11\xbe|', + -0x4183: b'\x11\xbe}', + -0x4182: b'\x11\xbe~', + -0x4181: b'\x11\xbe\x7f', + -0x4180: b'\x11\xbe\x80', + -0x417f: b'\x11\xbe\x81', + -0x417e: b'\x11\xbe\x82', + -0x417d: b'\x11\xbe\x83', + -0x417c: b'\x11\xbe\x84', + -0x417b: b'\x11\xbe\x85', + -0x417a: b'\x11\xbe\x86', + -0x4179: b'\x11\xbe\x87', + -0x4178: b'\x11\xbe\x88', + -0x4177: b'\x11\xbe\x89', + -0x4176: b'\x11\xbe\x8a', + -0x4175: b'\x11\xbe\x8b', + -0x4174: b'\x11\xbe\x8c', + -0x4173: b'\x11\xbe\x8d', + -0x4172: b'\x11\xbe\x8e', + -0x4171: b'\x11\xbe\x8f', + -0x4170: b'\x11\xbe\x90', + -0x416f: b'\x11\xbe\x91', + -0x416e: b'\x11\xbe\x92', + -0x416d: b'\x11\xbe\x93', + -0x416c: b'\x11\xbe\x94', + -0x416b: b'\x11\xbe\x95', + -0x416a: b'\x11\xbe\x96', + -0x4169: b'\x11\xbe\x97', + -0x4168: b'\x11\xbe\x98', + -0x4167: b'\x11\xbe\x99', + -0x4166: b'\x11\xbe\x9a', + -0x4165: b'\x11\xbe\x9b', + -0x4164: b'\x11\xbe\x9c', + -0x4163: b'\x11\xbe\x9d', + -0x4162: b'\x11\xbe\x9e', + -0x4161: b'\x11\xbe\x9f', + -0x4160: b'\x11\xbe\xa0', + -0x415f: b'\x11\xbe\xa1', + -0x415e: b'\x11\xbe\xa2', + -0x415d: b'\x11\xbe\xa3', + -0x415c: b'\x11\xbe\xa4', + -0x415b: b'\x11\xbe\xa5', + -0x415a: b'\x11\xbe\xa6', + -0x4159: b'\x11\xbe\xa7', + -0x4158: b'\x11\xbe\xa8', + -0x4157: b'\x11\xbe\xa9', + -0x4156: b'\x11\xbe\xaa', + -0x4155: b'\x11\xbe\xab', + -0x4154: b'\x11\xbe\xac', + -0x4153: b'\x11\xbe\xad', + -0x4152: b'\x11\xbe\xae', + -0x4151: b'\x11\xbe\xaf', + -0x4150: b'\x11\xbe\xb0', + -0x414f: b'\x11\xbe\xb1', + -0x414e: b'\x11\xbe\xb2', + -0x414d: b'\x11\xbe\xb3', + -0x414c: b'\x11\xbe\xb4', + -0x414b: b'\x11\xbe\xb5', + -0x414a: b'\x11\xbe\xb6', + -0x4149: b'\x11\xbe\xb7', + -0x4148: b'\x11\xbe\xb8', + -0x4147: b'\x11\xbe\xb9', + -0x4146: b'\x11\xbe\xba', + -0x4145: b'\x11\xbe\xbb', + -0x4144: b'\x11\xbe\xbc', + -0x4143: b'\x11\xbe\xbd', + -0x4142: b'\x11\xbe\xbe', + -0x4141: b'\x11\xbe\xbf', + -0x4140: b'\x11\xbe\xc0', + -0x413f: b'\x11\xbe\xc1', + -0x413e: b'\x11\xbe\xc2', + -0x413d: b'\x11\xbe\xc3', + -0x413c: b'\x11\xbe\xc4', + -0x413b: b'\x11\xbe\xc5', + -0x413a: b'\x11\xbe\xc6', + -0x4139: b'\x11\xbe\xc7', + -0x4138: b'\x11\xbe\xc8', + -0x4137: b'\x11\xbe\xc9', + -0x4136: b'\x11\xbe\xca', + -0x4135: b'\x11\xbe\xcb', + -0x4134: b'\x11\xbe\xcc', + -0x4133: b'\x11\xbe\xcd', + -0x4132: b'\x11\xbe\xce', + -0x4131: b'\x11\xbe\xcf', + -0x4130: b'\x11\xbe\xd0', + -0x412f: b'\x11\xbe\xd1', + -0x412e: b'\x11\xbe\xd2', + -0x412d: b'\x11\xbe\xd3', + -0x412c: b'\x11\xbe\xd4', + -0x412b: b'\x11\xbe\xd5', + -0x412a: b'\x11\xbe\xd6', + -0x4129: b'\x11\xbe\xd7', + -0x4128: b'\x11\xbe\xd8', + -0x4127: b'\x11\xbe\xd9', + -0x4126: b'\x11\xbe\xda', + -0x4125: b'\x11\xbe\xdb', + -0x4124: b'\x11\xbe\xdc', + -0x4123: b'\x11\xbe\xdd', + -0x4122: b'\x11\xbe\xde', + -0x4121: b'\x11\xbe\xdf', + -0x4120: b'\x11\xbe\xe0', + -0x411f: b'\x11\xbe\xe1', + -0x411e: b'\x11\xbe\xe2', + -0x411d: b'\x11\xbe\xe3', + -0x411c: b'\x11\xbe\xe4', + -0x411b: b'\x11\xbe\xe5', + -0x411a: b'\x11\xbe\xe6', + -0x4119: b'\x11\xbe\xe7', + -0x4118: b'\x11\xbe\xe8', + -0x4117: b'\x11\xbe\xe9', + -0x4116: b'\x11\xbe\xea', + -0x4115: b'\x11\xbe\xeb', + -0x4114: b'\x11\xbe\xec', + -0x4113: b'\x11\xbe\xed', + -0x4112: b'\x11\xbe\xee', + -0x4111: b'\x11\xbe\xef', + -0x4110: b'\x11\xbe\xf0', + -0x410f: b'\x11\xbe\xf1', + -0x410e: b'\x11\xbe\xf2', + -0x410d: b'\x11\xbe\xf3', + -0x410c: b'\x11\xbe\xf4', + -0x410b: b'\x11\xbe\xf5', + -0x410a: b'\x11\xbe\xf6', + -0x4109: b'\x11\xbe\xf7', + -0x4108: b'\x11\xbe\xf8', + -0x4107: b'\x11\xbe\xf9', + -0x4106: b'\x11\xbe\xfa', + -0x4105: b'\x11\xbe\xfb', + -0x4104: b'\x11\xbe\xfc', + -0x4103: b'\x11\xbe\xfd', + -0x4102: b'\x11\xbe\xfe', + -0x4101: b'\x11\xbe\xff', + -0x4100: b'\x11\xbf\x00', + -0x40ff: b'\x11\xbf\x01', + -0x40fe: b'\x11\xbf\x02', + -0x40fd: b'\x11\xbf\x03', + -0x40fc: b'\x11\xbf\x04', + -0x40fb: b'\x11\xbf\x05', + -0x40fa: b'\x11\xbf\x06', + -0x40f9: b'\x11\xbf\x07', + -0x40f8: b'\x11\xbf\x08', + -0x40f7: b'\x11\xbf\t', + -0x40f6: b'\x11\xbf\n', + -0x40f5: b'\x11\xbf\x0b', + -0x40f4: b'\x11\xbf\x0c', + -0x40f3: b'\x11\xbf\r', + -0x40f2: b'\x11\xbf\x0e', + -0x40f1: b'\x11\xbf\x0f', + -0x40f0: b'\x11\xbf\x10', + -0x40ef: b'\x11\xbf\x11', + -0x40ee: b'\x11\xbf\x12', + -0x40ed: b'\x11\xbf\x13', + -0x40ec: b'\x11\xbf\x14', + -0x40eb: b'\x11\xbf\x15', + -0x40ea: b'\x11\xbf\x16', + -0x40e9: b'\x11\xbf\x17', + -0x40e8: b'\x11\xbf\x18', + -0x40e7: b'\x11\xbf\x19', + -0x40e6: b'\x11\xbf\x1a', + -0x40e5: b'\x11\xbf\x1b', + -0x40e4: b'\x11\xbf\x1c', + -0x40e3: b'\x11\xbf\x1d', + -0x40e2: b'\x11\xbf\x1e', + -0x40e1: b'\x11\xbf\x1f', + -0x40e0: b'\x11\xbf ', + -0x40df: b'\x11\xbf!', + -0x40de: b'\x11\xbf"', + -0x40dd: b'\x11\xbf#', + -0x40dc: b'\x11\xbf$', + -0x40db: b'\x11\xbf%', + -0x40da: b'\x11\xbf&', + -0x40d9: b"\x11\xbf'", + -0x40d8: b'\x11\xbf(', + -0x40d7: b'\x11\xbf)', + -0x40d6: b'\x11\xbf*', + -0x40d5: b'\x11\xbf+', + -0x40d4: b'\x11\xbf,', + -0x40d3: b'\x11\xbf-', + -0x40d2: b'\x11\xbf.', + -0x40d1: b'\x11\xbf/', + -0x40d0: b'\x11\xbf0', + -0x40cf: b'\x11\xbf1', + -0x40ce: b'\x11\xbf2', + -0x40cd: b'\x11\xbf3', + -0x40cc: b'\x11\xbf4', + -0x40cb: b'\x11\xbf5', + -0x40ca: b'\x11\xbf6', + -0x40c9: b'\x11\xbf7', + -0x40c8: b'\x11\xbf8', + -0x40c7: b'\x11\xbf9', + -0x40c6: b'\x11\xbf:', + -0x40c5: b'\x11\xbf;', + -0x40c4: b'\x11\xbf<', + -0x40c3: b'\x11\xbf=', + -0x40c2: b'\x11\xbf>', + -0x40c1: b'\x11\xbf?', + -0x40c0: b'\x11\xbf@', + -0x40bf: b'\x11\xbfA', + -0x40be: b'\x11\xbfB', + -0x40bd: b'\x11\xbfC', + -0x40bc: b'\x11\xbfD', + -0x40bb: b'\x11\xbfE', + -0x40ba: b'\x11\xbfF', + -0x40b9: b'\x11\xbfG', + -0x40b8: b'\x11\xbfH', + -0x40b7: b'\x11\xbfI', + -0x40b6: b'\x11\xbfJ', + -0x40b5: b'\x11\xbfK', + -0x40b4: b'\x11\xbfL', + -0x40b3: b'\x11\xbfM', + -0x40b2: b'\x11\xbfN', + -0x40b1: b'\x11\xbfO', + -0x40b0: b'\x11\xbfP', + -0x40af: b'\x11\xbfQ', + -0x40ae: b'\x11\xbfR', + -0x40ad: b'\x11\xbfS', + -0x40ac: b'\x11\xbfT', + -0x40ab: b'\x11\xbfU', + -0x40aa: b'\x11\xbfV', + -0x40a9: b'\x11\xbfW', + -0x40a8: b'\x11\xbfX', + -0x40a7: b'\x11\xbfY', + -0x40a6: b'\x11\xbfZ', + -0x40a5: b'\x11\xbf[', + -0x40a4: b'\x11\xbf\\', + -0x40a3: b'\x11\xbf]', + -0x40a2: b'\x11\xbf^', + -0x40a1: b'\x11\xbf_', + -0x40a0: b'\x11\xbf`', + -0x409f: b'\x11\xbfa', + -0x409e: b'\x11\xbfb', + -0x409d: b'\x11\xbfc', + -0x409c: b'\x11\xbfd', + -0x409b: b'\x11\xbfe', + -0x409a: b'\x11\xbff', + -0x4099: b'\x11\xbfg', + -0x4098: b'\x11\xbfh', + -0x4097: b'\x11\xbfi', + -0x4096: b'\x11\xbfj', + -0x4095: b'\x11\xbfk', + -0x4094: b'\x11\xbfl', + -0x4093: b'\x11\xbfm', + -0x4092: b'\x11\xbfn', + -0x4091: b'\x11\xbfo', + -0x4090: b'\x11\xbfp', + -0x408f: b'\x11\xbfq', + -0x408e: b'\x11\xbfr', + -0x408d: b'\x11\xbfs', + -0x408c: b'\x11\xbft', + -0x408b: b'\x11\xbfu', + -0x408a: b'\x11\xbfv', + -0x4089: b'\x11\xbfw', + -0x4088: b'\x11\xbfx', + -0x4087: b'\x11\xbfy', + -0x4086: b'\x11\xbfz', + -0x4085: b'\x11\xbf{', + -0x4084: b'\x11\xbf|', + -0x4083: b'\x11\xbf}', + -0x4082: b'\x11\xbf~', + -0x4081: b'\x11\xbf\x7f', + -0x4080: b'\x11\xbf\x80', + -0x407f: b'\x11\xbf\x81', + -0x407e: b'\x11\xbf\x82', + -0x407d: b'\x11\xbf\x83', + -0x407c: b'\x11\xbf\x84', + -0x407b: b'\x11\xbf\x85', + -0x407a: b'\x11\xbf\x86', + -0x4079: b'\x11\xbf\x87', + -0x4078: b'\x11\xbf\x88', + -0x4077: b'\x11\xbf\x89', + -0x4076: b'\x11\xbf\x8a', + -0x4075: b'\x11\xbf\x8b', + -0x4074: b'\x11\xbf\x8c', + -0x4073: b'\x11\xbf\x8d', + -0x4072: b'\x11\xbf\x8e', + -0x4071: b'\x11\xbf\x8f', + -0x4070: b'\x11\xbf\x90', + -0x406f: b'\x11\xbf\x91', + -0x406e: b'\x11\xbf\x92', + -0x406d: b'\x11\xbf\x93', + -0x406c: b'\x11\xbf\x94', + -0x406b: b'\x11\xbf\x95', + -0x406a: b'\x11\xbf\x96', + -0x4069: b'\x11\xbf\x97', + -0x4068: b'\x11\xbf\x98', + -0x4067: b'\x11\xbf\x99', + -0x4066: b'\x11\xbf\x9a', + -0x4065: b'\x11\xbf\x9b', + -0x4064: b'\x11\xbf\x9c', + -0x4063: b'\x11\xbf\x9d', + -0x4062: b'\x11\xbf\x9e', + -0x4061: b'\x11\xbf\x9f', + -0x4060: b'\x11\xbf\xa0', + -0x405f: b'\x11\xbf\xa1', + -0x405e: b'\x11\xbf\xa2', + -0x405d: b'\x11\xbf\xa3', + -0x405c: b'\x11\xbf\xa4', + -0x405b: b'\x11\xbf\xa5', + -0x405a: b'\x11\xbf\xa6', + -0x4059: b'\x11\xbf\xa7', + -0x4058: b'\x11\xbf\xa8', + -0x4057: b'\x11\xbf\xa9', + -0x4056: b'\x11\xbf\xaa', + -0x4055: b'\x11\xbf\xab', + -0x4054: b'\x11\xbf\xac', + -0x4053: b'\x11\xbf\xad', + -0x4052: b'\x11\xbf\xae', + -0x4051: b'\x11\xbf\xaf', + -0x4050: b'\x11\xbf\xb0', + -0x404f: b'\x11\xbf\xb1', + -0x404e: b'\x11\xbf\xb2', + -0x404d: b'\x11\xbf\xb3', + -0x404c: b'\x11\xbf\xb4', + -0x404b: b'\x11\xbf\xb5', + -0x404a: b'\x11\xbf\xb6', + -0x4049: b'\x11\xbf\xb7', + -0x4048: b'\x11\xbf\xb8', + -0x4047: b'\x11\xbf\xb9', + -0x4046: b'\x11\xbf\xba', + -0x4045: b'\x11\xbf\xbb', + -0x4044: b'\x11\xbf\xbc', + -0x4043: b'\x11\xbf\xbd', + -0x4042: b'\x11\xbf\xbe', + -0x4041: b'\x11\xbf\xbf', + -0x4040: b'\x11\xbf\xc0', + -0x403f: b'\x11\xbf\xc1', + -0x403e: b'\x11\xbf\xc2', + -0x403d: b'\x11\xbf\xc3', + -0x403c: b'\x11\xbf\xc4', + -0x403b: b'\x11\xbf\xc5', + -0x403a: b'\x11\xbf\xc6', + -0x4039: b'\x11\xbf\xc7', + -0x4038: b'\x11\xbf\xc8', + -0x4037: b'\x11\xbf\xc9', + -0x4036: b'\x11\xbf\xca', + -0x4035: b'\x11\xbf\xcb', + -0x4034: b'\x11\xbf\xcc', + -0x4033: b'\x11\xbf\xcd', + -0x4032: b'\x11\xbf\xce', + -0x4031: b'\x11\xbf\xcf', + -0x4030: b'\x11\xbf\xd0', + -0x402f: b'\x11\xbf\xd1', + -0x402e: b'\x11\xbf\xd2', + -0x402d: b'\x11\xbf\xd3', + -0x402c: b'\x11\xbf\xd4', + -0x402b: b'\x11\xbf\xd5', + -0x402a: b'\x11\xbf\xd6', + -0x4029: b'\x11\xbf\xd7', + -0x4028: b'\x11\xbf\xd8', + -0x4027: b'\x11\xbf\xd9', + -0x4026: b'\x11\xbf\xda', + -0x4025: b'\x11\xbf\xdb', + -0x4024: b'\x11\xbf\xdc', + -0x4023: b'\x11\xbf\xdd', + -0x4022: b'\x11\xbf\xde', + -0x4021: b'\x11\xbf\xdf', + -0x4020: b'\x11\xbf\xe0', + -0x401f: b'\x11\xbf\xe1', + -0x401e: b'\x11\xbf\xe2', + -0x401d: b'\x11\xbf\xe3', + -0x401c: b'\x11\xbf\xe4', + -0x401b: b'\x11\xbf\xe5', + -0x401a: b'\x11\xbf\xe6', + -0x4019: b'\x11\xbf\xe7', + -0x4018: b'\x11\xbf\xe8', + -0x4017: b'\x11\xbf\xe9', + -0x4016: b'\x11\xbf\xea', + -0x4015: b'\x11\xbf\xeb', + -0x4014: b'\x11\xbf\xec', + -0x4013: b'\x11\xbf\xed', + -0x4012: b'\x11\xbf\xee', + -0x4011: b'\x11\xbf\xef', + -0x4010: b'\x11\xbf\xf0', + -0x400f: b'\x11\xbf\xf1', + -0x400e: b'\x11\xbf\xf2', + -0x400d: b'\x11\xbf\xf3', + -0x400c: b'\x11\xbf\xf4', + -0x400b: b'\x11\xbf\xf5', + -0x400a: b'\x11\xbf\xf6', + -0x4009: b'\x11\xbf\xf7', + -0x4008: b'\x11\xbf\xf8', + -0x4007: b'\x11\xbf\xf9', + -0x4006: b'\x11\xbf\xfa', + -0x4005: b'\x11\xbf\xfb', + -0x4004: b'\x11\xbf\xfc', + -0x4003: b'\x11\xbf\xfd', + -0x4002: b'\x11\xbf\xfe', + -0x4001: b'\x11\xbf\xff', + -0x4000: b'\x11\xc0\x00', + -0x3fff: b'\x11\xc0\x01', + -0x3ffe: b'\x11\xc0\x02', + -0x3ffd: b'\x11\xc0\x03', + -0x3ffc: b'\x11\xc0\x04', + -0x3ffb: b'\x11\xc0\x05', + -0x3ffa: b'\x11\xc0\x06', + -0x3ff9: b'\x11\xc0\x07', + -0x3ff8: b'\x11\xc0\x08', + -0x3ff7: b'\x11\xc0\t', + -0x3ff6: b'\x11\xc0\n', + -0x3ff5: b'\x11\xc0\x0b', + -0x3ff4: b'\x11\xc0\x0c', + -0x3ff3: b'\x11\xc0\r', + -0x3ff2: b'\x11\xc0\x0e', + -0x3ff1: b'\x11\xc0\x0f', + -0x3ff0: b'\x11\xc0\x10', + -0x3fef: b'\x11\xc0\x11', + -0x3fee: b'\x11\xc0\x12', + -0x3fed: b'\x11\xc0\x13', + -0x3fec: b'\x11\xc0\x14', + -0x3feb: b'\x11\xc0\x15', + -0x3fea: b'\x11\xc0\x16', + -0x3fe9: b'\x11\xc0\x17', + -0x3fe8: b'\x11\xc0\x18', + -0x3fe7: b'\x11\xc0\x19', + -0x3fe6: b'\x11\xc0\x1a', + -0x3fe5: b'\x11\xc0\x1b', + -0x3fe4: b'\x11\xc0\x1c', + -0x3fe3: b'\x11\xc0\x1d', + -0x3fe2: b'\x11\xc0\x1e', + -0x3fe1: b'\x11\xc0\x1f', + -0x3fe0: b'\x11\xc0 ', + -0x3fdf: b'\x11\xc0!', + -0x3fde: b'\x11\xc0"', + -0x3fdd: b'\x11\xc0#', + -0x3fdc: b'\x11\xc0$', + -0x3fdb: b'\x11\xc0%', + -0x3fda: b'\x11\xc0&', + -0x3fd9: b"\x11\xc0'", + -0x3fd8: b'\x11\xc0(', + -0x3fd7: b'\x11\xc0)', + -0x3fd6: b'\x11\xc0*', + -0x3fd5: b'\x11\xc0+', + -0x3fd4: b'\x11\xc0,', + -0x3fd3: b'\x11\xc0-', + -0x3fd2: b'\x11\xc0.', + -0x3fd1: b'\x11\xc0/', + -0x3fd0: b'\x11\xc00', + -0x3fcf: b'\x11\xc01', + -0x3fce: b'\x11\xc02', + -0x3fcd: b'\x11\xc03', + -0x3fcc: b'\x11\xc04', + -0x3fcb: b'\x11\xc05', + -0x3fca: b'\x11\xc06', + -0x3fc9: b'\x11\xc07', + -0x3fc8: b'\x11\xc08', + -0x3fc7: b'\x11\xc09', + -0x3fc6: b'\x11\xc0:', + -0x3fc5: b'\x11\xc0;', + -0x3fc4: b'\x11\xc0<', + -0x3fc3: b'\x11\xc0=', + -0x3fc2: b'\x11\xc0>', + -0x3fc1: b'\x11\xc0?', + -0x3fc0: b'\x11\xc0@', + -0x3fbf: b'\x11\xc0A', + -0x3fbe: b'\x11\xc0B', + -0x3fbd: b'\x11\xc0C', + -0x3fbc: b'\x11\xc0D', + -0x3fbb: b'\x11\xc0E', + -0x3fba: b'\x11\xc0F', + -0x3fb9: b'\x11\xc0G', + -0x3fb8: b'\x11\xc0H', + -0x3fb7: b'\x11\xc0I', + -0x3fb6: b'\x11\xc0J', + -0x3fb5: b'\x11\xc0K', + -0x3fb4: b'\x11\xc0L', + -0x3fb3: b'\x11\xc0M', + -0x3fb2: b'\x11\xc0N', + -0x3fb1: b'\x11\xc0O', + -0x3fb0: b'\x11\xc0P', + -0x3faf: b'\x11\xc0Q', + -0x3fae: b'\x11\xc0R', + -0x3fad: b'\x11\xc0S', + -0x3fac: b'\x11\xc0T', + -0x3fab: b'\x11\xc0U', + -0x3faa: b'\x11\xc0V', + -0x3fa9: b'\x11\xc0W', + -0x3fa8: b'\x11\xc0X', + -0x3fa7: b'\x11\xc0Y', + -0x3fa6: b'\x11\xc0Z', + -0x3fa5: b'\x11\xc0[', + -0x3fa4: b'\x11\xc0\\', + -0x3fa3: b'\x11\xc0]', + -0x3fa2: b'\x11\xc0^', + -0x3fa1: b'\x11\xc0_', + -0x3fa0: b'\x11\xc0`', + -0x3f9f: b'\x11\xc0a', + -0x3f9e: b'\x11\xc0b', + -0x3f9d: b'\x11\xc0c', + -0x3f9c: b'\x11\xc0d', + -0x3f9b: b'\x11\xc0e', + -0x3f9a: b'\x11\xc0f', + -0x3f99: b'\x11\xc0g', + -0x3f98: b'\x11\xc0h', + -0x3f97: b'\x11\xc0i', + -0x3f96: b'\x11\xc0j', + -0x3f95: b'\x11\xc0k', + -0x3f94: b'\x11\xc0l', + -0x3f93: b'\x11\xc0m', + -0x3f92: b'\x11\xc0n', + -0x3f91: b'\x11\xc0o', + -0x3f90: b'\x11\xc0p', + -0x3f8f: b'\x11\xc0q', + -0x3f8e: b'\x11\xc0r', + -0x3f8d: b'\x11\xc0s', + -0x3f8c: b'\x11\xc0t', + -0x3f8b: b'\x11\xc0u', + -0x3f8a: b'\x11\xc0v', + -0x3f89: b'\x11\xc0w', + -0x3f88: b'\x11\xc0x', + -0x3f87: b'\x11\xc0y', + -0x3f86: b'\x11\xc0z', + -0x3f85: b'\x11\xc0{', + -0x3f84: b'\x11\xc0|', + -0x3f83: b'\x11\xc0}', + -0x3f82: b'\x11\xc0~', + -0x3f81: b'\x11\xc0\x7f', + -0x3f80: b'\x11\xc0\x80', + -0x3f7f: b'\x11\xc0\x81', + -0x3f7e: b'\x11\xc0\x82', + -0x3f7d: b'\x11\xc0\x83', + -0x3f7c: b'\x11\xc0\x84', + -0x3f7b: b'\x11\xc0\x85', + -0x3f7a: b'\x11\xc0\x86', + -0x3f79: b'\x11\xc0\x87', + -0x3f78: b'\x11\xc0\x88', + -0x3f77: b'\x11\xc0\x89', + -0x3f76: b'\x11\xc0\x8a', + -0x3f75: b'\x11\xc0\x8b', + -0x3f74: b'\x11\xc0\x8c', + -0x3f73: b'\x11\xc0\x8d', + -0x3f72: b'\x11\xc0\x8e', + -0x3f71: b'\x11\xc0\x8f', + -0x3f70: b'\x11\xc0\x90', + -0x3f6f: b'\x11\xc0\x91', + -0x3f6e: b'\x11\xc0\x92', + -0x3f6d: b'\x11\xc0\x93', + -0x3f6c: b'\x11\xc0\x94', + -0x3f6b: b'\x11\xc0\x95', + -0x3f6a: b'\x11\xc0\x96', + -0x3f69: b'\x11\xc0\x97', + -0x3f68: b'\x11\xc0\x98', + -0x3f67: b'\x11\xc0\x99', + -0x3f66: b'\x11\xc0\x9a', + -0x3f65: b'\x11\xc0\x9b', + -0x3f64: b'\x11\xc0\x9c', + -0x3f63: b'\x11\xc0\x9d', + -0x3f62: b'\x11\xc0\x9e', + -0x3f61: b'\x11\xc0\x9f', + -0x3f60: b'\x11\xc0\xa0', + -0x3f5f: b'\x11\xc0\xa1', + -0x3f5e: b'\x11\xc0\xa2', + -0x3f5d: b'\x11\xc0\xa3', + -0x3f5c: b'\x11\xc0\xa4', + -0x3f5b: b'\x11\xc0\xa5', + -0x3f5a: b'\x11\xc0\xa6', + -0x3f59: b'\x11\xc0\xa7', + -0x3f58: b'\x11\xc0\xa8', + -0x3f57: b'\x11\xc0\xa9', + -0x3f56: b'\x11\xc0\xaa', + -0x3f55: b'\x11\xc0\xab', + -0x3f54: b'\x11\xc0\xac', + -0x3f53: b'\x11\xc0\xad', + -0x3f52: b'\x11\xc0\xae', + -0x3f51: b'\x11\xc0\xaf', + -0x3f50: b'\x11\xc0\xb0', + -0x3f4f: b'\x11\xc0\xb1', + -0x3f4e: b'\x11\xc0\xb2', + -0x3f4d: b'\x11\xc0\xb3', + -0x3f4c: b'\x11\xc0\xb4', + -0x3f4b: b'\x11\xc0\xb5', + -0x3f4a: b'\x11\xc0\xb6', + -0x3f49: b'\x11\xc0\xb7', + -0x3f48: b'\x11\xc0\xb8', + -0x3f47: b'\x11\xc0\xb9', + -0x3f46: b'\x11\xc0\xba', + -0x3f45: b'\x11\xc0\xbb', + -0x3f44: b'\x11\xc0\xbc', + -0x3f43: b'\x11\xc0\xbd', + -0x3f42: b'\x11\xc0\xbe', + -0x3f41: b'\x11\xc0\xbf', + -0x3f40: b'\x11\xc0\xc0', + -0x3f3f: b'\x11\xc0\xc1', + -0x3f3e: b'\x11\xc0\xc2', + -0x3f3d: b'\x11\xc0\xc3', + -0x3f3c: b'\x11\xc0\xc4', + -0x3f3b: b'\x11\xc0\xc5', + -0x3f3a: b'\x11\xc0\xc6', + -0x3f39: b'\x11\xc0\xc7', + -0x3f38: b'\x11\xc0\xc8', + -0x3f37: b'\x11\xc0\xc9', + -0x3f36: b'\x11\xc0\xca', + -0x3f35: b'\x11\xc0\xcb', + -0x3f34: b'\x11\xc0\xcc', + -0x3f33: b'\x11\xc0\xcd', + -0x3f32: b'\x11\xc0\xce', + -0x3f31: b'\x11\xc0\xcf', + -0x3f30: b'\x11\xc0\xd0', + -0x3f2f: b'\x11\xc0\xd1', + -0x3f2e: b'\x11\xc0\xd2', + -0x3f2d: b'\x11\xc0\xd3', + -0x3f2c: b'\x11\xc0\xd4', + -0x3f2b: b'\x11\xc0\xd5', + -0x3f2a: b'\x11\xc0\xd6', + -0x3f29: b'\x11\xc0\xd7', + -0x3f28: b'\x11\xc0\xd8', + -0x3f27: b'\x11\xc0\xd9', + -0x3f26: b'\x11\xc0\xda', + -0x3f25: b'\x11\xc0\xdb', + -0x3f24: b'\x11\xc0\xdc', + -0x3f23: b'\x11\xc0\xdd', + -0x3f22: b'\x11\xc0\xde', + -0x3f21: b'\x11\xc0\xdf', + -0x3f20: b'\x11\xc0\xe0', + -0x3f1f: b'\x11\xc0\xe1', + -0x3f1e: b'\x11\xc0\xe2', + -0x3f1d: b'\x11\xc0\xe3', + -0x3f1c: b'\x11\xc0\xe4', + -0x3f1b: b'\x11\xc0\xe5', + -0x3f1a: b'\x11\xc0\xe6', + -0x3f19: b'\x11\xc0\xe7', + -0x3f18: b'\x11\xc0\xe8', + -0x3f17: b'\x11\xc0\xe9', + -0x3f16: b'\x11\xc0\xea', + -0x3f15: b'\x11\xc0\xeb', + -0x3f14: b'\x11\xc0\xec', + -0x3f13: b'\x11\xc0\xed', + -0x3f12: b'\x11\xc0\xee', + -0x3f11: b'\x11\xc0\xef', + -0x3f10: b'\x11\xc0\xf0', + -0x3f0f: b'\x11\xc0\xf1', + -0x3f0e: b'\x11\xc0\xf2', + -0x3f0d: b'\x11\xc0\xf3', + -0x3f0c: b'\x11\xc0\xf4', + -0x3f0b: b'\x11\xc0\xf5', + -0x3f0a: b'\x11\xc0\xf6', + -0x3f09: b'\x11\xc0\xf7', + -0x3f08: b'\x11\xc0\xf8', + -0x3f07: b'\x11\xc0\xf9', + -0x3f06: b'\x11\xc0\xfa', + -0x3f05: b'\x11\xc0\xfb', + -0x3f04: b'\x11\xc0\xfc', + -0x3f03: b'\x11\xc0\xfd', + -0x3f02: b'\x11\xc0\xfe', + -0x3f01: b'\x11\xc0\xff', + -0x3f00: b'\x11\xc1\x00', + -0x3eff: b'\x11\xc1\x01', + -0x3efe: b'\x11\xc1\x02', + -0x3efd: b'\x11\xc1\x03', + -0x3efc: b'\x11\xc1\x04', + -0x3efb: b'\x11\xc1\x05', + -0x3efa: b'\x11\xc1\x06', + -0x3ef9: b'\x11\xc1\x07', + -0x3ef8: b'\x11\xc1\x08', + -0x3ef7: b'\x11\xc1\t', + -0x3ef6: b'\x11\xc1\n', + -0x3ef5: b'\x11\xc1\x0b', + -0x3ef4: b'\x11\xc1\x0c', + -0x3ef3: b'\x11\xc1\r', + -0x3ef2: b'\x11\xc1\x0e', + -0x3ef1: b'\x11\xc1\x0f', + -0x3ef0: b'\x11\xc1\x10', + -0x3eef: b'\x11\xc1\x11', + -0x3eee: b'\x11\xc1\x12', + -0x3eed: b'\x11\xc1\x13', + -0x3eec: b'\x11\xc1\x14', + -0x3eeb: b'\x11\xc1\x15', + -0x3eea: b'\x11\xc1\x16', + -0x3ee9: b'\x11\xc1\x17', + -0x3ee8: b'\x11\xc1\x18', + -0x3ee7: b'\x11\xc1\x19', + -0x3ee6: b'\x11\xc1\x1a', + -0x3ee5: b'\x11\xc1\x1b', + -0x3ee4: b'\x11\xc1\x1c', + -0x3ee3: b'\x11\xc1\x1d', + -0x3ee2: b'\x11\xc1\x1e', + -0x3ee1: b'\x11\xc1\x1f', + -0x3ee0: b'\x11\xc1 ', + -0x3edf: b'\x11\xc1!', + -0x3ede: b'\x11\xc1"', + -0x3edd: b'\x11\xc1#', + -0x3edc: b'\x11\xc1$', + -0x3edb: b'\x11\xc1%', + -0x3eda: b'\x11\xc1&', + -0x3ed9: b"\x11\xc1'", + -0x3ed8: b'\x11\xc1(', + -0x3ed7: b'\x11\xc1)', + -0x3ed6: b'\x11\xc1*', + -0x3ed5: b'\x11\xc1+', + -0x3ed4: b'\x11\xc1,', + -0x3ed3: b'\x11\xc1-', + -0x3ed2: b'\x11\xc1.', + -0x3ed1: b'\x11\xc1/', + -0x3ed0: b'\x11\xc10', + -0x3ecf: b'\x11\xc11', + -0x3ece: b'\x11\xc12', + -0x3ecd: b'\x11\xc13', + -0x3ecc: b'\x11\xc14', + -0x3ecb: b'\x11\xc15', + -0x3eca: b'\x11\xc16', + -0x3ec9: b'\x11\xc17', + -0x3ec8: b'\x11\xc18', + -0x3ec7: b'\x11\xc19', + -0x3ec6: b'\x11\xc1:', + -0x3ec5: b'\x11\xc1;', + -0x3ec4: b'\x11\xc1<', + -0x3ec3: b'\x11\xc1=', + -0x3ec2: b'\x11\xc1>', + -0x3ec1: b'\x11\xc1?', + -0x3ec0: b'\x11\xc1@', + -0x3ebf: b'\x11\xc1A', + -0x3ebe: b'\x11\xc1B', + -0x3ebd: b'\x11\xc1C', + -0x3ebc: b'\x11\xc1D', + -0x3ebb: b'\x11\xc1E', + -0x3eba: b'\x11\xc1F', + -0x3eb9: b'\x11\xc1G', + -0x3eb8: b'\x11\xc1H', + -0x3eb7: b'\x11\xc1I', + -0x3eb6: b'\x11\xc1J', + -0x3eb5: b'\x11\xc1K', + -0x3eb4: b'\x11\xc1L', + -0x3eb3: b'\x11\xc1M', + -0x3eb2: b'\x11\xc1N', + -0x3eb1: b'\x11\xc1O', + -0x3eb0: b'\x11\xc1P', + -0x3eaf: b'\x11\xc1Q', + -0x3eae: b'\x11\xc1R', + -0x3ead: b'\x11\xc1S', + -0x3eac: b'\x11\xc1T', + -0x3eab: b'\x11\xc1U', + -0x3eaa: b'\x11\xc1V', + -0x3ea9: b'\x11\xc1W', + -0x3ea8: b'\x11\xc1X', + -0x3ea7: b'\x11\xc1Y', + -0x3ea6: b'\x11\xc1Z', + -0x3ea5: b'\x11\xc1[', + -0x3ea4: b'\x11\xc1\\', + -0x3ea3: b'\x11\xc1]', + -0x3ea2: b'\x11\xc1^', + -0x3ea1: b'\x11\xc1_', + -0x3ea0: b'\x11\xc1`', + -0x3e9f: b'\x11\xc1a', + -0x3e9e: b'\x11\xc1b', + -0x3e9d: b'\x11\xc1c', + -0x3e9c: b'\x11\xc1d', + -0x3e9b: b'\x11\xc1e', + -0x3e9a: b'\x11\xc1f', + -0x3e99: b'\x11\xc1g', + -0x3e98: b'\x11\xc1h', + -0x3e97: b'\x11\xc1i', + -0x3e96: b'\x11\xc1j', + -0x3e95: b'\x11\xc1k', + -0x3e94: b'\x11\xc1l', + -0x3e93: b'\x11\xc1m', + -0x3e92: b'\x11\xc1n', + -0x3e91: b'\x11\xc1o', + -0x3e90: b'\x11\xc1p', + -0x3e8f: b'\x11\xc1q', + -0x3e8e: b'\x11\xc1r', + -0x3e8d: b'\x11\xc1s', + -0x3e8c: b'\x11\xc1t', + -0x3e8b: b'\x11\xc1u', + -0x3e8a: b'\x11\xc1v', + -0x3e89: b'\x11\xc1w', + -0x3e88: b'\x11\xc1x', + -0x3e87: b'\x11\xc1y', + -0x3e86: b'\x11\xc1z', + -0x3e85: b'\x11\xc1{', + -0x3e84: b'\x11\xc1|', + -0x3e83: b'\x11\xc1}', + -0x3e82: b'\x11\xc1~', + -0x3e81: b'\x11\xc1\x7f', + -0x3e80: b'\x11\xc1\x80', + -0x3e7f: b'\x11\xc1\x81', + -0x3e7e: b'\x11\xc1\x82', + -0x3e7d: b'\x11\xc1\x83', + -0x3e7c: b'\x11\xc1\x84', + -0x3e7b: b'\x11\xc1\x85', + -0x3e7a: b'\x11\xc1\x86', + -0x3e79: b'\x11\xc1\x87', + -0x3e78: b'\x11\xc1\x88', + -0x3e77: b'\x11\xc1\x89', + -0x3e76: b'\x11\xc1\x8a', + -0x3e75: b'\x11\xc1\x8b', + -0x3e74: b'\x11\xc1\x8c', + -0x3e73: b'\x11\xc1\x8d', + -0x3e72: b'\x11\xc1\x8e', + -0x3e71: b'\x11\xc1\x8f', + -0x3e70: b'\x11\xc1\x90', + -0x3e6f: b'\x11\xc1\x91', + -0x3e6e: b'\x11\xc1\x92', + -0x3e6d: b'\x11\xc1\x93', + -0x3e6c: b'\x11\xc1\x94', + -0x3e6b: b'\x11\xc1\x95', + -0x3e6a: b'\x11\xc1\x96', + -0x3e69: b'\x11\xc1\x97', + -0x3e68: b'\x11\xc1\x98', + -0x3e67: b'\x11\xc1\x99', + -0x3e66: b'\x11\xc1\x9a', + -0x3e65: b'\x11\xc1\x9b', + -0x3e64: b'\x11\xc1\x9c', + -0x3e63: b'\x11\xc1\x9d', + -0x3e62: b'\x11\xc1\x9e', + -0x3e61: b'\x11\xc1\x9f', + -0x3e60: b'\x11\xc1\xa0', + -0x3e5f: b'\x11\xc1\xa1', + -0x3e5e: b'\x11\xc1\xa2', + -0x3e5d: b'\x11\xc1\xa3', + -0x3e5c: b'\x11\xc1\xa4', + -0x3e5b: b'\x11\xc1\xa5', + -0x3e5a: b'\x11\xc1\xa6', + -0x3e59: b'\x11\xc1\xa7', + -0x3e58: b'\x11\xc1\xa8', + -0x3e57: b'\x11\xc1\xa9', + -0x3e56: b'\x11\xc1\xaa', + -0x3e55: b'\x11\xc1\xab', + -0x3e54: b'\x11\xc1\xac', + -0x3e53: b'\x11\xc1\xad', + -0x3e52: b'\x11\xc1\xae', + -0x3e51: b'\x11\xc1\xaf', + -0x3e50: b'\x11\xc1\xb0', + -0x3e4f: b'\x11\xc1\xb1', + -0x3e4e: b'\x11\xc1\xb2', + -0x3e4d: b'\x11\xc1\xb3', + -0x3e4c: b'\x11\xc1\xb4', + -0x3e4b: b'\x11\xc1\xb5', + -0x3e4a: b'\x11\xc1\xb6', + -0x3e49: b'\x11\xc1\xb7', + -0x3e48: b'\x11\xc1\xb8', + -0x3e47: b'\x11\xc1\xb9', + -0x3e46: b'\x11\xc1\xba', + -0x3e45: b'\x11\xc1\xbb', + -0x3e44: b'\x11\xc1\xbc', + -0x3e43: b'\x11\xc1\xbd', + -0x3e42: b'\x11\xc1\xbe', + -0x3e41: b'\x11\xc1\xbf', + -0x3e40: b'\x11\xc1\xc0', + -0x3e3f: b'\x11\xc1\xc1', + -0x3e3e: b'\x11\xc1\xc2', + -0x3e3d: b'\x11\xc1\xc3', + -0x3e3c: b'\x11\xc1\xc4', + -0x3e3b: b'\x11\xc1\xc5', + -0x3e3a: b'\x11\xc1\xc6', + -0x3e39: b'\x11\xc1\xc7', + -0x3e38: b'\x11\xc1\xc8', + -0x3e37: b'\x11\xc1\xc9', + -0x3e36: b'\x11\xc1\xca', + -0x3e35: b'\x11\xc1\xcb', + -0x3e34: b'\x11\xc1\xcc', + -0x3e33: b'\x11\xc1\xcd', + -0x3e32: b'\x11\xc1\xce', + -0x3e31: b'\x11\xc1\xcf', + -0x3e30: b'\x11\xc1\xd0', + -0x3e2f: b'\x11\xc1\xd1', + -0x3e2e: b'\x11\xc1\xd2', + -0x3e2d: b'\x11\xc1\xd3', + -0x3e2c: b'\x11\xc1\xd4', + -0x3e2b: b'\x11\xc1\xd5', + -0x3e2a: b'\x11\xc1\xd6', + -0x3e29: b'\x11\xc1\xd7', + -0x3e28: b'\x11\xc1\xd8', + -0x3e27: b'\x11\xc1\xd9', + -0x3e26: b'\x11\xc1\xda', + -0x3e25: b'\x11\xc1\xdb', + -0x3e24: b'\x11\xc1\xdc', + -0x3e23: b'\x11\xc1\xdd', + -0x3e22: b'\x11\xc1\xde', + -0x3e21: b'\x11\xc1\xdf', + -0x3e20: b'\x11\xc1\xe0', + -0x3e1f: b'\x11\xc1\xe1', + -0x3e1e: b'\x11\xc1\xe2', + -0x3e1d: b'\x11\xc1\xe3', + -0x3e1c: b'\x11\xc1\xe4', + -0x3e1b: b'\x11\xc1\xe5', + -0x3e1a: b'\x11\xc1\xe6', + -0x3e19: b'\x11\xc1\xe7', + -0x3e18: b'\x11\xc1\xe8', + -0x3e17: b'\x11\xc1\xe9', + -0x3e16: b'\x11\xc1\xea', + -0x3e15: b'\x11\xc1\xeb', + -0x3e14: b'\x11\xc1\xec', + -0x3e13: b'\x11\xc1\xed', + -0x3e12: b'\x11\xc1\xee', + -0x3e11: b'\x11\xc1\xef', + -0x3e10: b'\x11\xc1\xf0', + -0x3e0f: b'\x11\xc1\xf1', + -0x3e0e: b'\x11\xc1\xf2', + -0x3e0d: b'\x11\xc1\xf3', + -0x3e0c: b'\x11\xc1\xf4', + -0x3e0b: b'\x11\xc1\xf5', + -0x3e0a: b'\x11\xc1\xf6', + -0x3e09: b'\x11\xc1\xf7', + -0x3e08: b'\x11\xc1\xf8', + -0x3e07: b'\x11\xc1\xf9', + -0x3e06: b'\x11\xc1\xfa', + -0x3e05: b'\x11\xc1\xfb', + -0x3e04: b'\x11\xc1\xfc', + -0x3e03: b'\x11\xc1\xfd', + -0x3e02: b'\x11\xc1\xfe', + -0x3e01: b'\x11\xc1\xff', + -0x3e00: b'\x11\xc2\x00', + -0x3dff: b'\x11\xc2\x01', + -0x3dfe: b'\x11\xc2\x02', + -0x3dfd: b'\x11\xc2\x03', + -0x3dfc: b'\x11\xc2\x04', + -0x3dfb: b'\x11\xc2\x05', + -0x3dfa: b'\x11\xc2\x06', + -0x3df9: b'\x11\xc2\x07', + -0x3df8: b'\x11\xc2\x08', + -0x3df7: b'\x11\xc2\t', + -0x3df6: b'\x11\xc2\n', + -0x3df5: b'\x11\xc2\x0b', + -0x3df4: b'\x11\xc2\x0c', + -0x3df3: b'\x11\xc2\r', + -0x3df2: b'\x11\xc2\x0e', + -0x3df1: b'\x11\xc2\x0f', + -0x3df0: b'\x11\xc2\x10', + -0x3def: b'\x11\xc2\x11', + -0x3dee: b'\x11\xc2\x12', + -0x3ded: b'\x11\xc2\x13', + -0x3dec: b'\x11\xc2\x14', + -0x3deb: b'\x11\xc2\x15', + -0x3dea: b'\x11\xc2\x16', + -0x3de9: b'\x11\xc2\x17', + -0x3de8: b'\x11\xc2\x18', + -0x3de7: b'\x11\xc2\x19', + -0x3de6: b'\x11\xc2\x1a', + -0x3de5: b'\x11\xc2\x1b', + -0x3de4: b'\x11\xc2\x1c', + -0x3de3: b'\x11\xc2\x1d', + -0x3de2: b'\x11\xc2\x1e', + -0x3de1: b'\x11\xc2\x1f', + -0x3de0: b'\x11\xc2 ', + -0x3ddf: b'\x11\xc2!', + -0x3dde: b'\x11\xc2"', + -0x3ddd: b'\x11\xc2#', + -0x3ddc: b'\x11\xc2$', + -0x3ddb: b'\x11\xc2%', + -0x3dda: b'\x11\xc2&', + -0x3dd9: b"\x11\xc2'", + -0x3dd8: b'\x11\xc2(', + -0x3dd7: b'\x11\xc2)', + -0x3dd6: b'\x11\xc2*', + -0x3dd5: b'\x11\xc2+', + -0x3dd4: b'\x11\xc2,', + -0x3dd3: b'\x11\xc2-', + -0x3dd2: b'\x11\xc2.', + -0x3dd1: b'\x11\xc2/', + -0x3dd0: b'\x11\xc20', + -0x3dcf: b'\x11\xc21', + -0x3dce: b'\x11\xc22', + -0x3dcd: b'\x11\xc23', + -0x3dcc: b'\x11\xc24', + -0x3dcb: b'\x11\xc25', + -0x3dca: b'\x11\xc26', + -0x3dc9: b'\x11\xc27', + -0x3dc8: b'\x11\xc28', + -0x3dc7: b'\x11\xc29', + -0x3dc6: b'\x11\xc2:', + -0x3dc5: b'\x11\xc2;', + -0x3dc4: b'\x11\xc2<', + -0x3dc3: b'\x11\xc2=', + -0x3dc2: b'\x11\xc2>', + -0x3dc1: b'\x11\xc2?', + -0x3dc0: b'\x11\xc2@', + -0x3dbf: b'\x11\xc2A', + -0x3dbe: b'\x11\xc2B', + -0x3dbd: b'\x11\xc2C', + -0x3dbc: b'\x11\xc2D', + -0x3dbb: b'\x11\xc2E', + -0x3dba: b'\x11\xc2F', + -0x3db9: b'\x11\xc2G', + -0x3db8: b'\x11\xc2H', + -0x3db7: b'\x11\xc2I', + -0x3db6: b'\x11\xc2J', + -0x3db5: b'\x11\xc2K', + -0x3db4: b'\x11\xc2L', + -0x3db3: b'\x11\xc2M', + -0x3db2: b'\x11\xc2N', + -0x3db1: b'\x11\xc2O', + -0x3db0: b'\x11\xc2P', + -0x3daf: b'\x11\xc2Q', + -0x3dae: b'\x11\xc2R', + -0x3dad: b'\x11\xc2S', + -0x3dac: b'\x11\xc2T', + -0x3dab: b'\x11\xc2U', + -0x3daa: b'\x11\xc2V', + -0x3da9: b'\x11\xc2W', + -0x3da8: b'\x11\xc2X', + -0x3da7: b'\x11\xc2Y', + -0x3da6: b'\x11\xc2Z', + -0x3da5: b'\x11\xc2[', + -0x3da4: b'\x11\xc2\\', + -0x3da3: b'\x11\xc2]', + -0x3da2: b'\x11\xc2^', + -0x3da1: b'\x11\xc2_', + -0x3da0: b'\x11\xc2`', + -0x3d9f: b'\x11\xc2a', + -0x3d9e: b'\x11\xc2b', + -0x3d9d: b'\x11\xc2c', + -0x3d9c: b'\x11\xc2d', + -0x3d9b: b'\x11\xc2e', + -0x3d9a: b'\x11\xc2f', + -0x3d99: b'\x11\xc2g', + -0x3d98: b'\x11\xc2h', + -0x3d97: b'\x11\xc2i', + -0x3d96: b'\x11\xc2j', + -0x3d95: b'\x11\xc2k', + -0x3d94: b'\x11\xc2l', + -0x3d93: b'\x11\xc2m', + -0x3d92: b'\x11\xc2n', + -0x3d91: b'\x11\xc2o', + -0x3d90: b'\x11\xc2p', + -0x3d8f: b'\x11\xc2q', + -0x3d8e: b'\x11\xc2r', + -0x3d8d: b'\x11\xc2s', + -0x3d8c: b'\x11\xc2t', + -0x3d8b: b'\x11\xc2u', + -0x3d8a: b'\x11\xc2v', + -0x3d89: b'\x11\xc2w', + -0x3d88: b'\x11\xc2x', + -0x3d87: b'\x11\xc2y', + -0x3d86: b'\x11\xc2z', + -0x3d85: b'\x11\xc2{', + -0x3d84: b'\x11\xc2|', + -0x3d83: b'\x11\xc2}', + -0x3d82: b'\x11\xc2~', + -0x3d81: b'\x11\xc2\x7f', + -0x3d80: b'\x11\xc2\x80', + -0x3d7f: b'\x11\xc2\x81', + -0x3d7e: b'\x11\xc2\x82', + -0x3d7d: b'\x11\xc2\x83', + -0x3d7c: b'\x11\xc2\x84', + -0x3d7b: b'\x11\xc2\x85', + -0x3d7a: b'\x11\xc2\x86', + -0x3d79: b'\x11\xc2\x87', + -0x3d78: b'\x11\xc2\x88', + -0x3d77: b'\x11\xc2\x89', + -0x3d76: b'\x11\xc2\x8a', + -0x3d75: b'\x11\xc2\x8b', + -0x3d74: b'\x11\xc2\x8c', + -0x3d73: b'\x11\xc2\x8d', + -0x3d72: b'\x11\xc2\x8e', + -0x3d71: b'\x11\xc2\x8f', + -0x3d70: b'\x11\xc2\x90', + -0x3d6f: b'\x11\xc2\x91', + -0x3d6e: b'\x11\xc2\x92', + -0x3d6d: b'\x11\xc2\x93', + -0x3d6c: b'\x11\xc2\x94', + -0x3d6b: b'\x11\xc2\x95', + -0x3d6a: b'\x11\xc2\x96', + -0x3d69: b'\x11\xc2\x97', + -0x3d68: b'\x11\xc2\x98', + -0x3d67: b'\x11\xc2\x99', + -0x3d66: b'\x11\xc2\x9a', + -0x3d65: b'\x11\xc2\x9b', + -0x3d64: b'\x11\xc2\x9c', + -0x3d63: b'\x11\xc2\x9d', + -0x3d62: b'\x11\xc2\x9e', + -0x3d61: b'\x11\xc2\x9f', + -0x3d60: b'\x11\xc2\xa0', + -0x3d5f: b'\x11\xc2\xa1', + -0x3d5e: b'\x11\xc2\xa2', + -0x3d5d: b'\x11\xc2\xa3', + -0x3d5c: b'\x11\xc2\xa4', + -0x3d5b: b'\x11\xc2\xa5', + -0x3d5a: b'\x11\xc2\xa6', + -0x3d59: b'\x11\xc2\xa7', + -0x3d58: b'\x11\xc2\xa8', + -0x3d57: b'\x11\xc2\xa9', + -0x3d56: b'\x11\xc2\xaa', + -0x3d55: b'\x11\xc2\xab', + -0x3d54: b'\x11\xc2\xac', + -0x3d53: b'\x11\xc2\xad', + -0x3d52: b'\x11\xc2\xae', + -0x3d51: b'\x11\xc2\xaf', + -0x3d50: b'\x11\xc2\xb0', + -0x3d4f: b'\x11\xc2\xb1', + -0x3d4e: b'\x11\xc2\xb2', + -0x3d4d: b'\x11\xc2\xb3', + -0x3d4c: b'\x11\xc2\xb4', + -0x3d4b: b'\x11\xc2\xb5', + -0x3d4a: b'\x11\xc2\xb6', + -0x3d49: b'\x11\xc2\xb7', + -0x3d48: b'\x11\xc2\xb8', + -0x3d47: b'\x11\xc2\xb9', + -0x3d46: b'\x11\xc2\xba', + -0x3d45: b'\x11\xc2\xbb', + -0x3d44: b'\x11\xc2\xbc', + -0x3d43: b'\x11\xc2\xbd', + -0x3d42: b'\x11\xc2\xbe', + -0x3d41: b'\x11\xc2\xbf', + -0x3d40: b'\x11\xc2\xc0', + -0x3d3f: b'\x11\xc2\xc1', + -0x3d3e: b'\x11\xc2\xc2', + -0x3d3d: b'\x11\xc2\xc3', + -0x3d3c: b'\x11\xc2\xc4', + -0x3d3b: b'\x11\xc2\xc5', + -0x3d3a: b'\x11\xc2\xc6', + -0x3d39: b'\x11\xc2\xc7', + -0x3d38: b'\x11\xc2\xc8', + -0x3d37: b'\x11\xc2\xc9', + -0x3d36: b'\x11\xc2\xca', + -0x3d35: b'\x11\xc2\xcb', + -0x3d34: b'\x11\xc2\xcc', + -0x3d33: b'\x11\xc2\xcd', + -0x3d32: b'\x11\xc2\xce', + -0x3d31: b'\x11\xc2\xcf', + -0x3d30: b'\x11\xc2\xd0', + -0x3d2f: b'\x11\xc2\xd1', + -0x3d2e: b'\x11\xc2\xd2', + -0x3d2d: b'\x11\xc2\xd3', + -0x3d2c: b'\x11\xc2\xd4', + -0x3d2b: b'\x11\xc2\xd5', + -0x3d2a: b'\x11\xc2\xd6', + -0x3d29: b'\x11\xc2\xd7', + -0x3d28: b'\x11\xc2\xd8', + -0x3d27: b'\x11\xc2\xd9', + -0x3d26: b'\x11\xc2\xda', + -0x3d25: b'\x11\xc2\xdb', + -0x3d24: b'\x11\xc2\xdc', + -0x3d23: b'\x11\xc2\xdd', + -0x3d22: b'\x11\xc2\xde', + -0x3d21: b'\x11\xc2\xdf', + -0x3d20: b'\x11\xc2\xe0', + -0x3d1f: b'\x11\xc2\xe1', + -0x3d1e: b'\x11\xc2\xe2', + -0x3d1d: b'\x11\xc2\xe3', + -0x3d1c: b'\x11\xc2\xe4', + -0x3d1b: b'\x11\xc2\xe5', + -0x3d1a: b'\x11\xc2\xe6', + -0x3d19: b'\x11\xc2\xe7', + -0x3d18: b'\x11\xc2\xe8', + -0x3d17: b'\x11\xc2\xe9', + -0x3d16: b'\x11\xc2\xea', + -0x3d15: b'\x11\xc2\xeb', + -0x3d14: b'\x11\xc2\xec', + -0x3d13: b'\x11\xc2\xed', + -0x3d12: b'\x11\xc2\xee', + -0x3d11: b'\x11\xc2\xef', + -0x3d10: b'\x11\xc2\xf0', + -0x3d0f: b'\x11\xc2\xf1', + -0x3d0e: b'\x11\xc2\xf2', + -0x3d0d: b'\x11\xc2\xf3', + -0x3d0c: b'\x11\xc2\xf4', + -0x3d0b: b'\x11\xc2\xf5', + -0x3d0a: b'\x11\xc2\xf6', + -0x3d09: b'\x11\xc2\xf7', + -0x3d08: b'\x11\xc2\xf8', + -0x3d07: b'\x11\xc2\xf9', + -0x3d06: b'\x11\xc2\xfa', + -0x3d05: b'\x11\xc2\xfb', + -0x3d04: b'\x11\xc2\xfc', + -0x3d03: b'\x11\xc2\xfd', + -0x3d02: b'\x11\xc2\xfe', + -0x3d01: b'\x11\xc2\xff', + -0x3d00: b'\x11\xc3\x00', + -0x3cff: b'\x11\xc3\x01', + -0x3cfe: b'\x11\xc3\x02', + -0x3cfd: b'\x11\xc3\x03', + -0x3cfc: b'\x11\xc3\x04', + -0x3cfb: b'\x11\xc3\x05', + -0x3cfa: b'\x11\xc3\x06', + -0x3cf9: b'\x11\xc3\x07', + -0x3cf8: b'\x11\xc3\x08', + -0x3cf7: b'\x11\xc3\t', + -0x3cf6: b'\x11\xc3\n', + -0x3cf5: b'\x11\xc3\x0b', + -0x3cf4: b'\x11\xc3\x0c', + -0x3cf3: b'\x11\xc3\r', + -0x3cf2: b'\x11\xc3\x0e', + -0x3cf1: b'\x11\xc3\x0f', + -0x3cf0: b'\x11\xc3\x10', + -0x3cef: b'\x11\xc3\x11', + -0x3cee: b'\x11\xc3\x12', + -0x3ced: b'\x11\xc3\x13', + -0x3cec: b'\x11\xc3\x14', + -0x3ceb: b'\x11\xc3\x15', + -0x3cea: b'\x11\xc3\x16', + -0x3ce9: b'\x11\xc3\x17', + -0x3ce8: b'\x11\xc3\x18', + -0x3ce7: b'\x11\xc3\x19', + -0x3ce6: b'\x11\xc3\x1a', + -0x3ce5: b'\x11\xc3\x1b', + -0x3ce4: b'\x11\xc3\x1c', + -0x3ce3: b'\x11\xc3\x1d', + -0x3ce2: b'\x11\xc3\x1e', + -0x3ce1: b'\x11\xc3\x1f', + -0x3ce0: b'\x11\xc3 ', + -0x3cdf: b'\x11\xc3!', + -0x3cde: b'\x11\xc3"', + -0x3cdd: b'\x11\xc3#', + -0x3cdc: b'\x11\xc3$', + -0x3cdb: b'\x11\xc3%', + -0x3cda: b'\x11\xc3&', + -0x3cd9: b"\x11\xc3'", + -0x3cd8: b'\x11\xc3(', + -0x3cd7: b'\x11\xc3)', + -0x3cd6: b'\x11\xc3*', + -0x3cd5: b'\x11\xc3+', + -0x3cd4: b'\x11\xc3,', + -0x3cd3: b'\x11\xc3-', + -0x3cd2: b'\x11\xc3.', + -0x3cd1: b'\x11\xc3/', + -0x3cd0: b'\x11\xc30', + -0x3ccf: b'\x11\xc31', + -0x3cce: b'\x11\xc32', + -0x3ccd: b'\x11\xc33', + -0x3ccc: b'\x11\xc34', + -0x3ccb: b'\x11\xc35', + -0x3cca: b'\x11\xc36', + -0x3cc9: b'\x11\xc37', + -0x3cc8: b'\x11\xc38', + -0x3cc7: b'\x11\xc39', + -0x3cc6: b'\x11\xc3:', + -0x3cc5: b'\x11\xc3;', + -0x3cc4: b'\x11\xc3<', + -0x3cc3: b'\x11\xc3=', + -0x3cc2: b'\x11\xc3>', + -0x3cc1: b'\x11\xc3?', + -0x3cc0: b'\x11\xc3@', + -0x3cbf: b'\x11\xc3A', + -0x3cbe: b'\x11\xc3B', + -0x3cbd: b'\x11\xc3C', + -0x3cbc: b'\x11\xc3D', + -0x3cbb: b'\x11\xc3E', + -0x3cba: b'\x11\xc3F', + -0x3cb9: b'\x11\xc3G', + -0x3cb8: b'\x11\xc3H', + -0x3cb7: b'\x11\xc3I', + -0x3cb6: b'\x11\xc3J', + -0x3cb5: b'\x11\xc3K', + -0x3cb4: b'\x11\xc3L', + -0x3cb3: b'\x11\xc3M', + -0x3cb2: b'\x11\xc3N', + -0x3cb1: b'\x11\xc3O', + -0x3cb0: b'\x11\xc3P', + -0x3caf: b'\x11\xc3Q', + -0x3cae: b'\x11\xc3R', + -0x3cad: b'\x11\xc3S', + -0x3cac: b'\x11\xc3T', + -0x3cab: b'\x11\xc3U', + -0x3caa: b'\x11\xc3V', + -0x3ca9: b'\x11\xc3W', + -0x3ca8: b'\x11\xc3X', + -0x3ca7: b'\x11\xc3Y', + -0x3ca6: b'\x11\xc3Z', + -0x3ca5: b'\x11\xc3[', + -0x3ca4: b'\x11\xc3\\', + -0x3ca3: b'\x11\xc3]', + -0x3ca2: b'\x11\xc3^', + -0x3ca1: b'\x11\xc3_', + -0x3ca0: b'\x11\xc3`', + -0x3c9f: b'\x11\xc3a', + -0x3c9e: b'\x11\xc3b', + -0x3c9d: b'\x11\xc3c', + -0x3c9c: b'\x11\xc3d', + -0x3c9b: b'\x11\xc3e', + -0x3c9a: b'\x11\xc3f', + -0x3c99: b'\x11\xc3g', + -0x3c98: b'\x11\xc3h', + -0x3c97: b'\x11\xc3i', + -0x3c96: b'\x11\xc3j', + -0x3c95: b'\x11\xc3k', + -0x3c94: b'\x11\xc3l', + -0x3c93: b'\x11\xc3m', + -0x3c92: b'\x11\xc3n', + -0x3c91: b'\x11\xc3o', + -0x3c90: b'\x11\xc3p', + -0x3c8f: b'\x11\xc3q', + -0x3c8e: b'\x11\xc3r', + -0x3c8d: b'\x11\xc3s', + -0x3c8c: b'\x11\xc3t', + -0x3c8b: b'\x11\xc3u', + -0x3c8a: b'\x11\xc3v', + -0x3c89: b'\x11\xc3w', + -0x3c88: b'\x11\xc3x', + -0x3c87: b'\x11\xc3y', + -0x3c86: b'\x11\xc3z', + -0x3c85: b'\x11\xc3{', + -0x3c84: b'\x11\xc3|', + -0x3c83: b'\x11\xc3}', + -0x3c82: b'\x11\xc3~', + -0x3c81: b'\x11\xc3\x7f', + -0x3c80: b'\x11\xc3\x80', + -0x3c7f: b'\x11\xc3\x81', + -0x3c7e: b'\x11\xc3\x82', + -0x3c7d: b'\x11\xc3\x83', + -0x3c7c: b'\x11\xc3\x84', + -0x3c7b: b'\x11\xc3\x85', + -0x3c7a: b'\x11\xc3\x86', + -0x3c79: b'\x11\xc3\x87', + -0x3c78: b'\x11\xc3\x88', + -0x3c77: b'\x11\xc3\x89', + -0x3c76: b'\x11\xc3\x8a', + -0x3c75: b'\x11\xc3\x8b', + -0x3c74: b'\x11\xc3\x8c', + -0x3c73: b'\x11\xc3\x8d', + -0x3c72: b'\x11\xc3\x8e', + -0x3c71: b'\x11\xc3\x8f', + -0x3c70: b'\x11\xc3\x90', + -0x3c6f: b'\x11\xc3\x91', + -0x3c6e: b'\x11\xc3\x92', + -0x3c6d: b'\x11\xc3\x93', + -0x3c6c: b'\x11\xc3\x94', + -0x3c6b: b'\x11\xc3\x95', + -0x3c6a: b'\x11\xc3\x96', + -0x3c69: b'\x11\xc3\x97', + -0x3c68: b'\x11\xc3\x98', + -0x3c67: b'\x11\xc3\x99', + -0x3c66: b'\x11\xc3\x9a', + -0x3c65: b'\x11\xc3\x9b', + -0x3c64: b'\x11\xc3\x9c', + -0x3c63: b'\x11\xc3\x9d', + -0x3c62: b'\x11\xc3\x9e', + -0x3c61: b'\x11\xc3\x9f', + -0x3c60: b'\x11\xc3\xa0', + -0x3c5f: b'\x11\xc3\xa1', + -0x3c5e: b'\x11\xc3\xa2', + -0x3c5d: b'\x11\xc3\xa3', + -0x3c5c: b'\x11\xc3\xa4', + -0x3c5b: b'\x11\xc3\xa5', + -0x3c5a: b'\x11\xc3\xa6', + -0x3c59: b'\x11\xc3\xa7', + -0x3c58: b'\x11\xc3\xa8', + -0x3c57: b'\x11\xc3\xa9', + -0x3c56: b'\x11\xc3\xaa', + -0x3c55: b'\x11\xc3\xab', + -0x3c54: b'\x11\xc3\xac', + -0x3c53: b'\x11\xc3\xad', + -0x3c52: b'\x11\xc3\xae', + -0x3c51: b'\x11\xc3\xaf', + -0x3c50: b'\x11\xc3\xb0', + -0x3c4f: b'\x11\xc3\xb1', + -0x3c4e: b'\x11\xc3\xb2', + -0x3c4d: b'\x11\xc3\xb3', + -0x3c4c: b'\x11\xc3\xb4', + -0x3c4b: b'\x11\xc3\xb5', + -0x3c4a: b'\x11\xc3\xb6', + -0x3c49: b'\x11\xc3\xb7', + -0x3c48: b'\x11\xc3\xb8', + -0x3c47: b'\x11\xc3\xb9', + -0x3c46: b'\x11\xc3\xba', + -0x3c45: b'\x11\xc3\xbb', + -0x3c44: b'\x11\xc3\xbc', + -0x3c43: b'\x11\xc3\xbd', + -0x3c42: b'\x11\xc3\xbe', + -0x3c41: b'\x11\xc3\xbf', + -0x3c40: b'\x11\xc3\xc0', + -0x3c3f: b'\x11\xc3\xc1', + -0x3c3e: b'\x11\xc3\xc2', + -0x3c3d: b'\x11\xc3\xc3', + -0x3c3c: b'\x11\xc3\xc4', + -0x3c3b: b'\x11\xc3\xc5', + -0x3c3a: b'\x11\xc3\xc6', + -0x3c39: b'\x11\xc3\xc7', + -0x3c38: b'\x11\xc3\xc8', + -0x3c37: b'\x11\xc3\xc9', + -0x3c36: b'\x11\xc3\xca', + -0x3c35: b'\x11\xc3\xcb', + -0x3c34: b'\x11\xc3\xcc', + -0x3c33: b'\x11\xc3\xcd', + -0x3c32: b'\x11\xc3\xce', + -0x3c31: b'\x11\xc3\xcf', + -0x3c30: b'\x11\xc3\xd0', + -0x3c2f: b'\x11\xc3\xd1', + -0x3c2e: b'\x11\xc3\xd2', + -0x3c2d: b'\x11\xc3\xd3', + -0x3c2c: b'\x11\xc3\xd4', + -0x3c2b: b'\x11\xc3\xd5', + -0x3c2a: b'\x11\xc3\xd6', + -0x3c29: b'\x11\xc3\xd7', + -0x3c28: b'\x11\xc3\xd8', + -0x3c27: b'\x11\xc3\xd9', + -0x3c26: b'\x11\xc3\xda', + -0x3c25: b'\x11\xc3\xdb', + -0x3c24: b'\x11\xc3\xdc', + -0x3c23: b'\x11\xc3\xdd', + -0x3c22: b'\x11\xc3\xde', + -0x3c21: b'\x11\xc3\xdf', + -0x3c20: b'\x11\xc3\xe0', + -0x3c1f: b'\x11\xc3\xe1', + -0x3c1e: b'\x11\xc3\xe2', + -0x3c1d: b'\x11\xc3\xe3', + -0x3c1c: b'\x11\xc3\xe4', + -0x3c1b: b'\x11\xc3\xe5', + -0x3c1a: b'\x11\xc3\xe6', + -0x3c19: b'\x11\xc3\xe7', + -0x3c18: b'\x11\xc3\xe8', + -0x3c17: b'\x11\xc3\xe9', + -0x3c16: b'\x11\xc3\xea', + -0x3c15: b'\x11\xc3\xeb', + -0x3c14: b'\x11\xc3\xec', + -0x3c13: b'\x11\xc3\xed', + -0x3c12: b'\x11\xc3\xee', + -0x3c11: b'\x11\xc3\xef', + -0x3c10: b'\x11\xc3\xf0', + -0x3c0f: b'\x11\xc3\xf1', + -0x3c0e: b'\x11\xc3\xf2', + -0x3c0d: b'\x11\xc3\xf3', + -0x3c0c: b'\x11\xc3\xf4', + -0x3c0b: b'\x11\xc3\xf5', + -0x3c0a: b'\x11\xc3\xf6', + -0x3c09: b'\x11\xc3\xf7', + -0x3c08: b'\x11\xc3\xf8', + -0x3c07: b'\x11\xc3\xf9', + -0x3c06: b'\x11\xc3\xfa', + -0x3c05: b'\x11\xc3\xfb', + -0x3c04: b'\x11\xc3\xfc', + -0x3c03: b'\x11\xc3\xfd', + -0x3c02: b'\x11\xc3\xfe', + -0x3c01: b'\x11\xc3\xff', + -0x3c00: b'\x11\xc4\x00', + -0x3bff: b'\x11\xc4\x01', + -0x3bfe: b'\x11\xc4\x02', + -0x3bfd: b'\x11\xc4\x03', + -0x3bfc: b'\x11\xc4\x04', + -0x3bfb: b'\x11\xc4\x05', + -0x3bfa: b'\x11\xc4\x06', + -0x3bf9: b'\x11\xc4\x07', + -0x3bf8: b'\x11\xc4\x08', + -0x3bf7: b'\x11\xc4\t', + -0x3bf6: b'\x11\xc4\n', + -0x3bf5: b'\x11\xc4\x0b', + -0x3bf4: b'\x11\xc4\x0c', + -0x3bf3: b'\x11\xc4\r', + -0x3bf2: b'\x11\xc4\x0e', + -0x3bf1: b'\x11\xc4\x0f', + -0x3bf0: b'\x11\xc4\x10', + -0x3bef: b'\x11\xc4\x11', + -0x3bee: b'\x11\xc4\x12', + -0x3bed: b'\x11\xc4\x13', + -0x3bec: b'\x11\xc4\x14', + -0x3beb: b'\x11\xc4\x15', + -0x3bea: b'\x11\xc4\x16', + -0x3be9: b'\x11\xc4\x17', + -0x3be8: b'\x11\xc4\x18', + -0x3be7: b'\x11\xc4\x19', + -0x3be6: b'\x11\xc4\x1a', + -0x3be5: b'\x11\xc4\x1b', + -0x3be4: b'\x11\xc4\x1c', + -0x3be3: b'\x11\xc4\x1d', + -0x3be2: b'\x11\xc4\x1e', + -0x3be1: b'\x11\xc4\x1f', + -0x3be0: b'\x11\xc4 ', + -0x3bdf: b'\x11\xc4!', + -0x3bde: b'\x11\xc4"', + -0x3bdd: b'\x11\xc4#', + -0x3bdc: b'\x11\xc4$', + -0x3bdb: b'\x11\xc4%', + -0x3bda: b'\x11\xc4&', + -0x3bd9: b"\x11\xc4'", + -0x3bd8: b'\x11\xc4(', + -0x3bd7: b'\x11\xc4)', + -0x3bd6: b'\x11\xc4*', + -0x3bd5: b'\x11\xc4+', + -0x3bd4: b'\x11\xc4,', + -0x3bd3: b'\x11\xc4-', + -0x3bd2: b'\x11\xc4.', + -0x3bd1: b'\x11\xc4/', + -0x3bd0: b'\x11\xc40', + -0x3bcf: b'\x11\xc41', + -0x3bce: b'\x11\xc42', + -0x3bcd: b'\x11\xc43', + -0x3bcc: b'\x11\xc44', + -0x3bcb: b'\x11\xc45', + -0x3bca: b'\x11\xc46', + -0x3bc9: b'\x11\xc47', + -0x3bc8: b'\x11\xc48', + -0x3bc7: b'\x11\xc49', + -0x3bc6: b'\x11\xc4:', + -0x3bc5: b'\x11\xc4;', + -0x3bc4: b'\x11\xc4<', + -0x3bc3: b'\x11\xc4=', + -0x3bc2: b'\x11\xc4>', + -0x3bc1: b'\x11\xc4?', + -0x3bc0: b'\x11\xc4@', + -0x3bbf: b'\x11\xc4A', + -0x3bbe: b'\x11\xc4B', + -0x3bbd: b'\x11\xc4C', + -0x3bbc: b'\x11\xc4D', + -0x3bbb: b'\x11\xc4E', + -0x3bba: b'\x11\xc4F', + -0x3bb9: b'\x11\xc4G', + -0x3bb8: b'\x11\xc4H', + -0x3bb7: b'\x11\xc4I', + -0x3bb6: b'\x11\xc4J', + -0x3bb5: b'\x11\xc4K', + -0x3bb4: b'\x11\xc4L', + -0x3bb3: b'\x11\xc4M', + -0x3bb2: b'\x11\xc4N', + -0x3bb1: b'\x11\xc4O', + -0x3bb0: b'\x11\xc4P', + -0x3baf: b'\x11\xc4Q', + -0x3bae: b'\x11\xc4R', + -0x3bad: b'\x11\xc4S', + -0x3bac: b'\x11\xc4T', + -0x3bab: b'\x11\xc4U', + -0x3baa: b'\x11\xc4V', + -0x3ba9: b'\x11\xc4W', + -0x3ba8: b'\x11\xc4X', + -0x3ba7: b'\x11\xc4Y', + -0x3ba6: b'\x11\xc4Z', + -0x3ba5: b'\x11\xc4[', + -0x3ba4: b'\x11\xc4\\', + -0x3ba3: b'\x11\xc4]', + -0x3ba2: b'\x11\xc4^', + -0x3ba1: b'\x11\xc4_', + -0x3ba0: b'\x11\xc4`', + -0x3b9f: b'\x11\xc4a', + -0x3b9e: b'\x11\xc4b', + -0x3b9d: b'\x11\xc4c', + -0x3b9c: b'\x11\xc4d', + -0x3b9b: b'\x11\xc4e', + -0x3b9a: b'\x11\xc4f', + -0x3b99: b'\x11\xc4g', + -0x3b98: b'\x11\xc4h', + -0x3b97: b'\x11\xc4i', + -0x3b96: b'\x11\xc4j', + -0x3b95: b'\x11\xc4k', + -0x3b94: b'\x11\xc4l', + -0x3b93: b'\x11\xc4m', + -0x3b92: b'\x11\xc4n', + -0x3b91: b'\x11\xc4o', + -0x3b90: b'\x11\xc4p', + -0x3b8f: b'\x11\xc4q', + -0x3b8e: b'\x11\xc4r', + -0x3b8d: b'\x11\xc4s', + -0x3b8c: b'\x11\xc4t', + -0x3b8b: b'\x11\xc4u', + -0x3b8a: b'\x11\xc4v', + -0x3b89: b'\x11\xc4w', + -0x3b88: b'\x11\xc4x', + -0x3b87: b'\x11\xc4y', + -0x3b86: b'\x11\xc4z', + -0x3b85: b'\x11\xc4{', + -0x3b84: b'\x11\xc4|', + -0x3b83: b'\x11\xc4}', + -0x3b82: b'\x11\xc4~', + -0x3b81: b'\x11\xc4\x7f', + -0x3b80: b'\x11\xc4\x80', + -0x3b7f: b'\x11\xc4\x81', + -0x3b7e: b'\x11\xc4\x82', + -0x3b7d: b'\x11\xc4\x83', + -0x3b7c: b'\x11\xc4\x84', + -0x3b7b: b'\x11\xc4\x85', + -0x3b7a: b'\x11\xc4\x86', + -0x3b79: b'\x11\xc4\x87', + -0x3b78: b'\x11\xc4\x88', + -0x3b77: b'\x11\xc4\x89', + -0x3b76: b'\x11\xc4\x8a', + -0x3b75: b'\x11\xc4\x8b', + -0x3b74: b'\x11\xc4\x8c', + -0x3b73: b'\x11\xc4\x8d', + -0x3b72: b'\x11\xc4\x8e', + -0x3b71: b'\x11\xc4\x8f', + -0x3b70: b'\x11\xc4\x90', + -0x3b6f: b'\x11\xc4\x91', + -0x3b6e: b'\x11\xc4\x92', + -0x3b6d: b'\x11\xc4\x93', + -0x3b6c: b'\x11\xc4\x94', + -0x3b6b: b'\x11\xc4\x95', + -0x3b6a: b'\x11\xc4\x96', + -0x3b69: b'\x11\xc4\x97', + -0x3b68: b'\x11\xc4\x98', + -0x3b67: b'\x11\xc4\x99', + -0x3b66: b'\x11\xc4\x9a', + -0x3b65: b'\x11\xc4\x9b', + -0x3b64: b'\x11\xc4\x9c', + -0x3b63: b'\x11\xc4\x9d', + -0x3b62: b'\x11\xc4\x9e', + -0x3b61: b'\x11\xc4\x9f', + -0x3b60: b'\x11\xc4\xa0', + -0x3b5f: b'\x11\xc4\xa1', + -0x3b5e: b'\x11\xc4\xa2', + -0x3b5d: b'\x11\xc4\xa3', + -0x3b5c: b'\x11\xc4\xa4', + -0x3b5b: b'\x11\xc4\xa5', + -0x3b5a: b'\x11\xc4\xa6', + -0x3b59: b'\x11\xc4\xa7', + -0x3b58: b'\x11\xc4\xa8', + -0x3b57: b'\x11\xc4\xa9', + -0x3b56: b'\x11\xc4\xaa', + -0x3b55: b'\x11\xc4\xab', + -0x3b54: b'\x11\xc4\xac', + -0x3b53: b'\x11\xc4\xad', + -0x3b52: b'\x11\xc4\xae', + -0x3b51: b'\x11\xc4\xaf', + -0x3b50: b'\x11\xc4\xb0', + -0x3b4f: b'\x11\xc4\xb1', + -0x3b4e: b'\x11\xc4\xb2', + -0x3b4d: b'\x11\xc4\xb3', + -0x3b4c: b'\x11\xc4\xb4', + -0x3b4b: b'\x11\xc4\xb5', + -0x3b4a: b'\x11\xc4\xb6', + -0x3b49: b'\x11\xc4\xb7', + -0x3b48: b'\x11\xc4\xb8', + -0x3b47: b'\x11\xc4\xb9', + -0x3b46: b'\x11\xc4\xba', + -0x3b45: b'\x11\xc4\xbb', + -0x3b44: b'\x11\xc4\xbc', + -0x3b43: b'\x11\xc4\xbd', + -0x3b42: b'\x11\xc4\xbe', + -0x3b41: b'\x11\xc4\xbf', + -0x3b40: b'\x11\xc4\xc0', + -0x3b3f: b'\x11\xc4\xc1', + -0x3b3e: b'\x11\xc4\xc2', + -0x3b3d: b'\x11\xc4\xc3', + -0x3b3c: b'\x11\xc4\xc4', + -0x3b3b: b'\x11\xc4\xc5', + -0x3b3a: b'\x11\xc4\xc6', + -0x3b39: b'\x11\xc4\xc7', + -0x3b38: b'\x11\xc4\xc8', + -0x3b37: b'\x11\xc4\xc9', + -0x3b36: b'\x11\xc4\xca', + -0x3b35: b'\x11\xc4\xcb', + -0x3b34: b'\x11\xc4\xcc', + -0x3b33: b'\x11\xc4\xcd', + -0x3b32: b'\x11\xc4\xce', + -0x3b31: b'\x11\xc4\xcf', + -0x3b30: b'\x11\xc4\xd0', + -0x3b2f: b'\x11\xc4\xd1', + -0x3b2e: b'\x11\xc4\xd2', + -0x3b2d: b'\x11\xc4\xd3', + -0x3b2c: b'\x11\xc4\xd4', + -0x3b2b: b'\x11\xc4\xd5', + -0x3b2a: b'\x11\xc4\xd6', + -0x3b29: b'\x11\xc4\xd7', + -0x3b28: b'\x11\xc4\xd8', + -0x3b27: b'\x11\xc4\xd9', + -0x3b26: b'\x11\xc4\xda', + -0x3b25: b'\x11\xc4\xdb', + -0x3b24: b'\x11\xc4\xdc', + -0x3b23: b'\x11\xc4\xdd', + -0x3b22: b'\x11\xc4\xde', + -0x3b21: b'\x11\xc4\xdf', + -0x3b20: b'\x11\xc4\xe0', + -0x3b1f: b'\x11\xc4\xe1', + -0x3b1e: b'\x11\xc4\xe2', + -0x3b1d: b'\x11\xc4\xe3', + -0x3b1c: b'\x11\xc4\xe4', + -0x3b1b: b'\x11\xc4\xe5', + -0x3b1a: b'\x11\xc4\xe6', + -0x3b19: b'\x11\xc4\xe7', + -0x3b18: b'\x11\xc4\xe8', + -0x3b17: b'\x11\xc4\xe9', + -0x3b16: b'\x11\xc4\xea', + -0x3b15: b'\x11\xc4\xeb', + -0x3b14: b'\x11\xc4\xec', + -0x3b13: b'\x11\xc4\xed', + -0x3b12: b'\x11\xc4\xee', + -0x3b11: b'\x11\xc4\xef', + -0x3b10: b'\x11\xc4\xf0', + -0x3b0f: b'\x11\xc4\xf1', + -0x3b0e: b'\x11\xc4\xf2', + -0x3b0d: b'\x11\xc4\xf3', + -0x3b0c: b'\x11\xc4\xf4', + -0x3b0b: b'\x11\xc4\xf5', + -0x3b0a: b'\x11\xc4\xf6', + -0x3b09: b'\x11\xc4\xf7', + -0x3b08: b'\x11\xc4\xf8', + -0x3b07: b'\x11\xc4\xf9', + -0x3b06: b'\x11\xc4\xfa', + -0x3b05: b'\x11\xc4\xfb', + -0x3b04: b'\x11\xc4\xfc', + -0x3b03: b'\x11\xc4\xfd', + -0x3b02: b'\x11\xc4\xfe', + -0x3b01: b'\x11\xc4\xff', + -0x3b00: b'\x11\xc5\x00', + -0x3aff: b'\x11\xc5\x01', + -0x3afe: b'\x11\xc5\x02', + -0x3afd: b'\x11\xc5\x03', + -0x3afc: b'\x11\xc5\x04', + -0x3afb: b'\x11\xc5\x05', + -0x3afa: b'\x11\xc5\x06', + -0x3af9: b'\x11\xc5\x07', + -0x3af8: b'\x11\xc5\x08', + -0x3af7: b'\x11\xc5\t', + -0x3af6: b'\x11\xc5\n', + -0x3af5: b'\x11\xc5\x0b', + -0x3af4: b'\x11\xc5\x0c', + -0x3af3: b'\x11\xc5\r', + -0x3af2: b'\x11\xc5\x0e', + -0x3af1: b'\x11\xc5\x0f', + -0x3af0: b'\x11\xc5\x10', + -0x3aef: b'\x11\xc5\x11', + -0x3aee: b'\x11\xc5\x12', + -0x3aed: b'\x11\xc5\x13', + -0x3aec: b'\x11\xc5\x14', + -0x3aeb: b'\x11\xc5\x15', + -0x3aea: b'\x11\xc5\x16', + -0x3ae9: b'\x11\xc5\x17', + -0x3ae8: b'\x11\xc5\x18', + -0x3ae7: b'\x11\xc5\x19', + -0x3ae6: b'\x11\xc5\x1a', + -0x3ae5: b'\x11\xc5\x1b', + -0x3ae4: b'\x11\xc5\x1c', + -0x3ae3: b'\x11\xc5\x1d', + -0x3ae2: b'\x11\xc5\x1e', + -0x3ae1: b'\x11\xc5\x1f', + -0x3ae0: b'\x11\xc5 ', + -0x3adf: b'\x11\xc5!', + -0x3ade: b'\x11\xc5"', + -0x3add: b'\x11\xc5#', + -0x3adc: b'\x11\xc5$', + -0x3adb: b'\x11\xc5%', + -0x3ada: b'\x11\xc5&', + -0x3ad9: b"\x11\xc5'", + -0x3ad8: b'\x11\xc5(', + -0x3ad7: b'\x11\xc5)', + -0x3ad6: b'\x11\xc5*', + -0x3ad5: b'\x11\xc5+', + -0x3ad4: b'\x11\xc5,', + -0x3ad3: b'\x11\xc5-', + -0x3ad2: b'\x11\xc5.', + -0x3ad1: b'\x11\xc5/', + -0x3ad0: b'\x11\xc50', + -0x3acf: b'\x11\xc51', + -0x3ace: b'\x11\xc52', + -0x3acd: b'\x11\xc53', + -0x3acc: b'\x11\xc54', + -0x3acb: b'\x11\xc55', + -0x3aca: b'\x11\xc56', + -0x3ac9: b'\x11\xc57', + -0x3ac8: b'\x11\xc58', + -0x3ac7: b'\x11\xc59', + -0x3ac6: b'\x11\xc5:', + -0x3ac5: b'\x11\xc5;', + -0x3ac4: b'\x11\xc5<', + -0x3ac3: b'\x11\xc5=', + -0x3ac2: b'\x11\xc5>', + -0x3ac1: b'\x11\xc5?', + -0x3ac0: b'\x11\xc5@', + -0x3abf: b'\x11\xc5A', + -0x3abe: b'\x11\xc5B', + -0x3abd: b'\x11\xc5C', + -0x3abc: b'\x11\xc5D', + -0x3abb: b'\x11\xc5E', + -0x3aba: b'\x11\xc5F', + -0x3ab9: b'\x11\xc5G', + -0x3ab8: b'\x11\xc5H', + -0x3ab7: b'\x11\xc5I', + -0x3ab6: b'\x11\xc5J', + -0x3ab5: b'\x11\xc5K', + -0x3ab4: b'\x11\xc5L', + -0x3ab3: b'\x11\xc5M', + -0x3ab2: b'\x11\xc5N', + -0x3ab1: b'\x11\xc5O', + -0x3ab0: b'\x11\xc5P', + -0x3aaf: b'\x11\xc5Q', + -0x3aae: b'\x11\xc5R', + -0x3aad: b'\x11\xc5S', + -0x3aac: b'\x11\xc5T', + -0x3aab: b'\x11\xc5U', + -0x3aaa: b'\x11\xc5V', + -0x3aa9: b'\x11\xc5W', + -0x3aa8: b'\x11\xc5X', + -0x3aa7: b'\x11\xc5Y', + -0x3aa6: b'\x11\xc5Z', + -0x3aa5: b'\x11\xc5[', + -0x3aa4: b'\x11\xc5\\', + -0x3aa3: b'\x11\xc5]', + -0x3aa2: b'\x11\xc5^', + -0x3aa1: b'\x11\xc5_', + -0x3aa0: b'\x11\xc5`', + -0x3a9f: b'\x11\xc5a', + -0x3a9e: b'\x11\xc5b', + -0x3a9d: b'\x11\xc5c', + -0x3a9c: b'\x11\xc5d', + -0x3a9b: b'\x11\xc5e', + -0x3a9a: b'\x11\xc5f', + -0x3a99: b'\x11\xc5g', + -0x3a98: b'\x11\xc5h', + -0x3a97: b'\x11\xc5i', + -0x3a96: b'\x11\xc5j', + -0x3a95: b'\x11\xc5k', + -0x3a94: b'\x11\xc5l', + -0x3a93: b'\x11\xc5m', + -0x3a92: b'\x11\xc5n', + -0x3a91: b'\x11\xc5o', + -0x3a90: b'\x11\xc5p', + -0x3a8f: b'\x11\xc5q', + -0x3a8e: b'\x11\xc5r', + -0x3a8d: b'\x11\xc5s', + -0x3a8c: b'\x11\xc5t', + -0x3a8b: b'\x11\xc5u', + -0x3a8a: b'\x11\xc5v', + -0x3a89: b'\x11\xc5w', + -0x3a88: b'\x11\xc5x', + -0x3a87: b'\x11\xc5y', + -0x3a86: b'\x11\xc5z', + -0x3a85: b'\x11\xc5{', + -0x3a84: b'\x11\xc5|', + -0x3a83: b'\x11\xc5}', + -0x3a82: b'\x11\xc5~', + -0x3a81: b'\x11\xc5\x7f', + -0x3a80: b'\x11\xc5\x80', + -0x3a7f: b'\x11\xc5\x81', + -0x3a7e: b'\x11\xc5\x82', + -0x3a7d: b'\x11\xc5\x83', + -0x3a7c: b'\x11\xc5\x84', + -0x3a7b: b'\x11\xc5\x85', + -0x3a7a: b'\x11\xc5\x86', + -0x3a79: b'\x11\xc5\x87', + -0x3a78: b'\x11\xc5\x88', + -0x3a77: b'\x11\xc5\x89', + -0x3a76: b'\x11\xc5\x8a', + -0x3a75: b'\x11\xc5\x8b', + -0x3a74: b'\x11\xc5\x8c', + -0x3a73: b'\x11\xc5\x8d', + -0x3a72: b'\x11\xc5\x8e', + -0x3a71: b'\x11\xc5\x8f', + -0x3a70: b'\x11\xc5\x90', + -0x3a6f: b'\x11\xc5\x91', + -0x3a6e: b'\x11\xc5\x92', + -0x3a6d: b'\x11\xc5\x93', + -0x3a6c: b'\x11\xc5\x94', + -0x3a6b: b'\x11\xc5\x95', + -0x3a6a: b'\x11\xc5\x96', + -0x3a69: b'\x11\xc5\x97', + -0x3a68: b'\x11\xc5\x98', + -0x3a67: b'\x11\xc5\x99', + -0x3a66: b'\x11\xc5\x9a', + -0x3a65: b'\x11\xc5\x9b', + -0x3a64: b'\x11\xc5\x9c', + -0x3a63: b'\x11\xc5\x9d', + -0x3a62: b'\x11\xc5\x9e', + -0x3a61: b'\x11\xc5\x9f', + -0x3a60: b'\x11\xc5\xa0', + -0x3a5f: b'\x11\xc5\xa1', + -0x3a5e: b'\x11\xc5\xa2', + -0x3a5d: b'\x11\xc5\xa3', + -0x3a5c: b'\x11\xc5\xa4', + -0x3a5b: b'\x11\xc5\xa5', + -0x3a5a: b'\x11\xc5\xa6', + -0x3a59: b'\x11\xc5\xa7', + -0x3a58: b'\x11\xc5\xa8', + -0x3a57: b'\x11\xc5\xa9', + -0x3a56: b'\x11\xc5\xaa', + -0x3a55: b'\x11\xc5\xab', + -0x3a54: b'\x11\xc5\xac', + -0x3a53: b'\x11\xc5\xad', + -0x3a52: b'\x11\xc5\xae', + -0x3a51: b'\x11\xc5\xaf', + -0x3a50: b'\x11\xc5\xb0', + -0x3a4f: b'\x11\xc5\xb1', + -0x3a4e: b'\x11\xc5\xb2', + -0x3a4d: b'\x11\xc5\xb3', + -0x3a4c: b'\x11\xc5\xb4', + -0x3a4b: b'\x11\xc5\xb5', + -0x3a4a: b'\x11\xc5\xb6', + -0x3a49: b'\x11\xc5\xb7', + -0x3a48: b'\x11\xc5\xb8', + -0x3a47: b'\x11\xc5\xb9', + -0x3a46: b'\x11\xc5\xba', + -0x3a45: b'\x11\xc5\xbb', + -0x3a44: b'\x11\xc5\xbc', + -0x3a43: b'\x11\xc5\xbd', + -0x3a42: b'\x11\xc5\xbe', + -0x3a41: b'\x11\xc5\xbf', + -0x3a40: b'\x11\xc5\xc0', + -0x3a3f: b'\x11\xc5\xc1', + -0x3a3e: b'\x11\xc5\xc2', + -0x3a3d: b'\x11\xc5\xc3', + -0x3a3c: b'\x11\xc5\xc4', + -0x3a3b: b'\x11\xc5\xc5', + -0x3a3a: b'\x11\xc5\xc6', + -0x3a39: b'\x11\xc5\xc7', + -0x3a38: b'\x11\xc5\xc8', + -0x3a37: b'\x11\xc5\xc9', + -0x3a36: b'\x11\xc5\xca', + -0x3a35: b'\x11\xc5\xcb', + -0x3a34: b'\x11\xc5\xcc', + -0x3a33: b'\x11\xc5\xcd', + -0x3a32: b'\x11\xc5\xce', + -0x3a31: b'\x11\xc5\xcf', + -0x3a30: b'\x11\xc5\xd0', + -0x3a2f: b'\x11\xc5\xd1', + -0x3a2e: b'\x11\xc5\xd2', + -0x3a2d: b'\x11\xc5\xd3', + -0x3a2c: b'\x11\xc5\xd4', + -0x3a2b: b'\x11\xc5\xd5', + -0x3a2a: b'\x11\xc5\xd6', + -0x3a29: b'\x11\xc5\xd7', + -0x3a28: b'\x11\xc5\xd8', + -0x3a27: b'\x11\xc5\xd9', + -0x3a26: b'\x11\xc5\xda', + -0x3a25: b'\x11\xc5\xdb', + -0x3a24: b'\x11\xc5\xdc', + -0x3a23: b'\x11\xc5\xdd', + -0x3a22: b'\x11\xc5\xde', + -0x3a21: b'\x11\xc5\xdf', + -0x3a20: b'\x11\xc5\xe0', + -0x3a1f: b'\x11\xc5\xe1', + -0x3a1e: b'\x11\xc5\xe2', + -0x3a1d: b'\x11\xc5\xe3', + -0x3a1c: b'\x11\xc5\xe4', + -0x3a1b: b'\x11\xc5\xe5', + -0x3a1a: b'\x11\xc5\xe6', + -0x3a19: b'\x11\xc5\xe7', + -0x3a18: b'\x11\xc5\xe8', + -0x3a17: b'\x11\xc5\xe9', + -0x3a16: b'\x11\xc5\xea', + -0x3a15: b'\x11\xc5\xeb', + -0x3a14: b'\x11\xc5\xec', + -0x3a13: b'\x11\xc5\xed', + -0x3a12: b'\x11\xc5\xee', + -0x3a11: b'\x11\xc5\xef', + -0x3a10: b'\x11\xc5\xf0', + -0x3a0f: b'\x11\xc5\xf1', + -0x3a0e: b'\x11\xc5\xf2', + -0x3a0d: b'\x11\xc5\xf3', + -0x3a0c: b'\x11\xc5\xf4', + -0x3a0b: b'\x11\xc5\xf5', + -0x3a0a: b'\x11\xc5\xf6', + -0x3a09: b'\x11\xc5\xf7', + -0x3a08: b'\x11\xc5\xf8', + -0x3a07: b'\x11\xc5\xf9', + -0x3a06: b'\x11\xc5\xfa', + -0x3a05: b'\x11\xc5\xfb', + -0x3a04: b'\x11\xc5\xfc', + -0x3a03: b'\x11\xc5\xfd', + -0x3a02: b'\x11\xc5\xfe', + -0x3a01: b'\x11\xc5\xff', + -0x3a00: b'\x11\xc6\x00', + -0x39ff: b'\x11\xc6\x01', + -0x39fe: b'\x11\xc6\x02', + -0x39fd: b'\x11\xc6\x03', + -0x39fc: b'\x11\xc6\x04', + -0x39fb: b'\x11\xc6\x05', + -0x39fa: b'\x11\xc6\x06', + -0x39f9: b'\x11\xc6\x07', + -0x39f8: b'\x11\xc6\x08', + -0x39f7: b'\x11\xc6\t', + -0x39f6: b'\x11\xc6\n', + -0x39f5: b'\x11\xc6\x0b', + -0x39f4: b'\x11\xc6\x0c', + -0x39f3: b'\x11\xc6\r', + -0x39f2: b'\x11\xc6\x0e', + -0x39f1: b'\x11\xc6\x0f', + -0x39f0: b'\x11\xc6\x10', + -0x39ef: b'\x11\xc6\x11', + -0x39ee: b'\x11\xc6\x12', + -0x39ed: b'\x11\xc6\x13', + -0x39ec: b'\x11\xc6\x14', + -0x39eb: b'\x11\xc6\x15', + -0x39ea: b'\x11\xc6\x16', + -0x39e9: b'\x11\xc6\x17', + -0x39e8: b'\x11\xc6\x18', + -0x39e7: b'\x11\xc6\x19', + -0x39e6: b'\x11\xc6\x1a', + -0x39e5: b'\x11\xc6\x1b', + -0x39e4: b'\x11\xc6\x1c', + -0x39e3: b'\x11\xc6\x1d', + -0x39e2: b'\x11\xc6\x1e', + -0x39e1: b'\x11\xc6\x1f', + -0x39e0: b'\x11\xc6 ', + -0x39df: b'\x11\xc6!', + -0x39de: b'\x11\xc6"', + -0x39dd: b'\x11\xc6#', + -0x39dc: b'\x11\xc6$', + -0x39db: b'\x11\xc6%', + -0x39da: b'\x11\xc6&', + -0x39d9: b"\x11\xc6'", + -0x39d8: b'\x11\xc6(', + -0x39d7: b'\x11\xc6)', + -0x39d6: b'\x11\xc6*', + -0x39d5: b'\x11\xc6+', + -0x39d4: b'\x11\xc6,', + -0x39d3: b'\x11\xc6-', + -0x39d2: b'\x11\xc6.', + -0x39d1: b'\x11\xc6/', + -0x39d0: b'\x11\xc60', + -0x39cf: b'\x11\xc61', + -0x39ce: b'\x11\xc62', + -0x39cd: b'\x11\xc63', + -0x39cc: b'\x11\xc64', + -0x39cb: b'\x11\xc65', + -0x39ca: b'\x11\xc66', + -0x39c9: b'\x11\xc67', + -0x39c8: b'\x11\xc68', + -0x39c7: b'\x11\xc69', + -0x39c6: b'\x11\xc6:', + -0x39c5: b'\x11\xc6;', + -0x39c4: b'\x11\xc6<', + -0x39c3: b'\x11\xc6=', + -0x39c2: b'\x11\xc6>', + -0x39c1: b'\x11\xc6?', + -0x39c0: b'\x11\xc6@', + -0x39bf: b'\x11\xc6A', + -0x39be: b'\x11\xc6B', + -0x39bd: b'\x11\xc6C', + -0x39bc: b'\x11\xc6D', + -0x39bb: b'\x11\xc6E', + -0x39ba: b'\x11\xc6F', + -0x39b9: b'\x11\xc6G', + -0x39b8: b'\x11\xc6H', + -0x39b7: b'\x11\xc6I', + -0x39b6: b'\x11\xc6J', + -0x39b5: b'\x11\xc6K', + -0x39b4: b'\x11\xc6L', + -0x39b3: b'\x11\xc6M', + -0x39b2: b'\x11\xc6N', + -0x39b1: b'\x11\xc6O', + -0x39b0: b'\x11\xc6P', + -0x39af: b'\x11\xc6Q', + -0x39ae: b'\x11\xc6R', + -0x39ad: b'\x11\xc6S', + -0x39ac: b'\x11\xc6T', + -0x39ab: b'\x11\xc6U', + -0x39aa: b'\x11\xc6V', + -0x39a9: b'\x11\xc6W', + -0x39a8: b'\x11\xc6X', + -0x39a7: b'\x11\xc6Y', + -0x39a6: b'\x11\xc6Z', + -0x39a5: b'\x11\xc6[', + -0x39a4: b'\x11\xc6\\', + -0x39a3: b'\x11\xc6]', + -0x39a2: b'\x11\xc6^', + -0x39a1: b'\x11\xc6_', + -0x39a0: b'\x11\xc6`', + -0x399f: b'\x11\xc6a', + -0x399e: b'\x11\xc6b', + -0x399d: b'\x11\xc6c', + -0x399c: b'\x11\xc6d', + -0x399b: b'\x11\xc6e', + -0x399a: b'\x11\xc6f', + -0x3999: b'\x11\xc6g', + -0x3998: b'\x11\xc6h', + -0x3997: b'\x11\xc6i', + -0x3996: b'\x11\xc6j', + -0x3995: b'\x11\xc6k', + -0x3994: b'\x11\xc6l', + -0x3993: b'\x11\xc6m', + -0x3992: b'\x11\xc6n', + -0x3991: b'\x11\xc6o', + -0x3990: b'\x11\xc6p', + -0x398f: b'\x11\xc6q', + -0x398e: b'\x11\xc6r', + -0x398d: b'\x11\xc6s', + -0x398c: b'\x11\xc6t', + -0x398b: b'\x11\xc6u', + -0x398a: b'\x11\xc6v', + -0x3989: b'\x11\xc6w', + -0x3988: b'\x11\xc6x', + -0x3987: b'\x11\xc6y', + -0x3986: b'\x11\xc6z', + -0x3985: b'\x11\xc6{', + -0x3984: b'\x11\xc6|', + -0x3983: b'\x11\xc6}', + -0x3982: b'\x11\xc6~', + -0x3981: b'\x11\xc6\x7f', + -0x3980: b'\x11\xc6\x80', + -0x397f: b'\x11\xc6\x81', + -0x397e: b'\x11\xc6\x82', + -0x397d: b'\x11\xc6\x83', + -0x397c: b'\x11\xc6\x84', + -0x397b: b'\x11\xc6\x85', + -0x397a: b'\x11\xc6\x86', + -0x3979: b'\x11\xc6\x87', + -0x3978: b'\x11\xc6\x88', + -0x3977: b'\x11\xc6\x89', + -0x3976: b'\x11\xc6\x8a', + -0x3975: b'\x11\xc6\x8b', + -0x3974: b'\x11\xc6\x8c', + -0x3973: b'\x11\xc6\x8d', + -0x3972: b'\x11\xc6\x8e', + -0x3971: b'\x11\xc6\x8f', + -0x3970: b'\x11\xc6\x90', + -0x396f: b'\x11\xc6\x91', + -0x396e: b'\x11\xc6\x92', + -0x396d: b'\x11\xc6\x93', + -0x396c: b'\x11\xc6\x94', + -0x396b: b'\x11\xc6\x95', + -0x396a: b'\x11\xc6\x96', + -0x3969: b'\x11\xc6\x97', + -0x3968: b'\x11\xc6\x98', + -0x3967: b'\x11\xc6\x99', + -0x3966: b'\x11\xc6\x9a', + -0x3965: b'\x11\xc6\x9b', + -0x3964: b'\x11\xc6\x9c', + -0x3963: b'\x11\xc6\x9d', + -0x3962: b'\x11\xc6\x9e', + -0x3961: b'\x11\xc6\x9f', + -0x3960: b'\x11\xc6\xa0', + -0x395f: b'\x11\xc6\xa1', + -0x395e: b'\x11\xc6\xa2', + -0x395d: b'\x11\xc6\xa3', + -0x395c: b'\x11\xc6\xa4', + -0x395b: b'\x11\xc6\xa5', + -0x395a: b'\x11\xc6\xa6', + -0x3959: b'\x11\xc6\xa7', + -0x3958: b'\x11\xc6\xa8', + -0x3957: b'\x11\xc6\xa9', + -0x3956: b'\x11\xc6\xaa', + -0x3955: b'\x11\xc6\xab', + -0x3954: b'\x11\xc6\xac', + -0x3953: b'\x11\xc6\xad', + -0x3952: b'\x11\xc6\xae', + -0x3951: b'\x11\xc6\xaf', + -0x3950: b'\x11\xc6\xb0', + -0x394f: b'\x11\xc6\xb1', + -0x394e: b'\x11\xc6\xb2', + -0x394d: b'\x11\xc6\xb3', + -0x394c: b'\x11\xc6\xb4', + -0x394b: b'\x11\xc6\xb5', + -0x394a: b'\x11\xc6\xb6', + -0x3949: b'\x11\xc6\xb7', + -0x3948: b'\x11\xc6\xb8', + -0x3947: b'\x11\xc6\xb9', + -0x3946: b'\x11\xc6\xba', + -0x3945: b'\x11\xc6\xbb', + -0x3944: b'\x11\xc6\xbc', + -0x3943: b'\x11\xc6\xbd', + -0x3942: b'\x11\xc6\xbe', + -0x3941: b'\x11\xc6\xbf', + -0x3940: b'\x11\xc6\xc0', + -0x393f: b'\x11\xc6\xc1', + -0x393e: b'\x11\xc6\xc2', + -0x393d: b'\x11\xc6\xc3', + -0x393c: b'\x11\xc6\xc4', + -0x393b: b'\x11\xc6\xc5', + -0x393a: b'\x11\xc6\xc6', + -0x3939: b'\x11\xc6\xc7', + -0x3938: b'\x11\xc6\xc8', + -0x3937: b'\x11\xc6\xc9', + -0x3936: b'\x11\xc6\xca', + -0x3935: b'\x11\xc6\xcb', + -0x3934: b'\x11\xc6\xcc', + -0x3933: b'\x11\xc6\xcd', + -0x3932: b'\x11\xc6\xce', + -0x3931: b'\x11\xc6\xcf', + -0x3930: b'\x11\xc6\xd0', + -0x392f: b'\x11\xc6\xd1', + -0x392e: b'\x11\xc6\xd2', + -0x392d: b'\x11\xc6\xd3', + -0x392c: b'\x11\xc6\xd4', + -0x392b: b'\x11\xc6\xd5', + -0x392a: b'\x11\xc6\xd6', + -0x3929: b'\x11\xc6\xd7', + -0x3928: b'\x11\xc6\xd8', + -0x3927: b'\x11\xc6\xd9', + -0x3926: b'\x11\xc6\xda', + -0x3925: b'\x11\xc6\xdb', + -0x3924: b'\x11\xc6\xdc', + -0x3923: b'\x11\xc6\xdd', + -0x3922: b'\x11\xc6\xde', + -0x3921: b'\x11\xc6\xdf', + -0x3920: b'\x11\xc6\xe0', + -0x391f: b'\x11\xc6\xe1', + -0x391e: b'\x11\xc6\xe2', + -0x391d: b'\x11\xc6\xe3', + -0x391c: b'\x11\xc6\xe4', + -0x391b: b'\x11\xc6\xe5', + -0x391a: b'\x11\xc6\xe6', + -0x3919: b'\x11\xc6\xe7', + -0x3918: b'\x11\xc6\xe8', + -0x3917: b'\x11\xc6\xe9', + -0x3916: b'\x11\xc6\xea', + -0x3915: b'\x11\xc6\xeb', + -0x3914: b'\x11\xc6\xec', + -0x3913: b'\x11\xc6\xed', + -0x3912: b'\x11\xc6\xee', + -0x3911: b'\x11\xc6\xef', + -0x3910: b'\x11\xc6\xf0', + -0x390f: b'\x11\xc6\xf1', + -0x390e: b'\x11\xc6\xf2', + -0x390d: b'\x11\xc6\xf3', + -0x390c: b'\x11\xc6\xf4', + -0x390b: b'\x11\xc6\xf5', + -0x390a: b'\x11\xc6\xf6', + -0x3909: b'\x11\xc6\xf7', + -0x3908: b'\x11\xc6\xf8', + -0x3907: b'\x11\xc6\xf9', + -0x3906: b'\x11\xc6\xfa', + -0x3905: b'\x11\xc6\xfb', + -0x3904: b'\x11\xc6\xfc', + -0x3903: b'\x11\xc6\xfd', + -0x3902: b'\x11\xc6\xfe', + -0x3901: b'\x11\xc6\xff', + -0x3900: b'\x11\xc7\x00', + -0x38ff: b'\x11\xc7\x01', + -0x38fe: b'\x11\xc7\x02', + -0x38fd: b'\x11\xc7\x03', + -0x38fc: b'\x11\xc7\x04', + -0x38fb: b'\x11\xc7\x05', + -0x38fa: b'\x11\xc7\x06', + -0x38f9: b'\x11\xc7\x07', + -0x38f8: b'\x11\xc7\x08', + -0x38f7: b'\x11\xc7\t', + -0x38f6: b'\x11\xc7\n', + -0x38f5: b'\x11\xc7\x0b', + -0x38f4: b'\x11\xc7\x0c', + -0x38f3: b'\x11\xc7\r', + -0x38f2: b'\x11\xc7\x0e', + -0x38f1: b'\x11\xc7\x0f', + -0x38f0: b'\x11\xc7\x10', + -0x38ef: b'\x11\xc7\x11', + -0x38ee: b'\x11\xc7\x12', + -0x38ed: b'\x11\xc7\x13', + -0x38ec: b'\x11\xc7\x14', + -0x38eb: b'\x11\xc7\x15', + -0x38ea: b'\x11\xc7\x16', + -0x38e9: b'\x11\xc7\x17', + -0x38e8: b'\x11\xc7\x18', + -0x38e7: b'\x11\xc7\x19', + -0x38e6: b'\x11\xc7\x1a', + -0x38e5: b'\x11\xc7\x1b', + -0x38e4: b'\x11\xc7\x1c', + -0x38e3: b'\x11\xc7\x1d', + -0x38e2: b'\x11\xc7\x1e', + -0x38e1: b'\x11\xc7\x1f', + -0x38e0: b'\x11\xc7 ', + -0x38df: b'\x11\xc7!', + -0x38de: b'\x11\xc7"', + -0x38dd: b'\x11\xc7#', + -0x38dc: b'\x11\xc7$', + -0x38db: b'\x11\xc7%', + -0x38da: b'\x11\xc7&', + -0x38d9: b"\x11\xc7'", + -0x38d8: b'\x11\xc7(', + -0x38d7: b'\x11\xc7)', + -0x38d6: b'\x11\xc7*', + -0x38d5: b'\x11\xc7+', + -0x38d4: b'\x11\xc7,', + -0x38d3: b'\x11\xc7-', + -0x38d2: b'\x11\xc7.', + -0x38d1: b'\x11\xc7/', + -0x38d0: b'\x11\xc70', + -0x38cf: b'\x11\xc71', + -0x38ce: b'\x11\xc72', + -0x38cd: b'\x11\xc73', + -0x38cc: b'\x11\xc74', + -0x38cb: b'\x11\xc75', + -0x38ca: b'\x11\xc76', + -0x38c9: b'\x11\xc77', + -0x38c8: b'\x11\xc78', + -0x38c7: b'\x11\xc79', + -0x38c6: b'\x11\xc7:', + -0x38c5: b'\x11\xc7;', + -0x38c4: b'\x11\xc7<', + -0x38c3: b'\x11\xc7=', + -0x38c2: b'\x11\xc7>', + -0x38c1: b'\x11\xc7?', + -0x38c0: b'\x11\xc7@', + -0x38bf: b'\x11\xc7A', + -0x38be: b'\x11\xc7B', + -0x38bd: b'\x11\xc7C', + -0x38bc: b'\x11\xc7D', + -0x38bb: b'\x11\xc7E', + -0x38ba: b'\x11\xc7F', + -0x38b9: b'\x11\xc7G', + -0x38b8: b'\x11\xc7H', + -0x38b7: b'\x11\xc7I', + -0x38b6: b'\x11\xc7J', + -0x38b5: b'\x11\xc7K', + -0x38b4: b'\x11\xc7L', + -0x38b3: b'\x11\xc7M', + -0x38b2: b'\x11\xc7N', + -0x38b1: b'\x11\xc7O', + -0x38b0: b'\x11\xc7P', + -0x38af: b'\x11\xc7Q', + -0x38ae: b'\x11\xc7R', + -0x38ad: b'\x11\xc7S', + -0x38ac: b'\x11\xc7T', + -0x38ab: b'\x11\xc7U', + -0x38aa: b'\x11\xc7V', + -0x38a9: b'\x11\xc7W', + -0x38a8: b'\x11\xc7X', + -0x38a7: b'\x11\xc7Y', + -0x38a6: b'\x11\xc7Z', + -0x38a5: b'\x11\xc7[', + -0x38a4: b'\x11\xc7\\', + -0x38a3: b'\x11\xc7]', + -0x38a2: b'\x11\xc7^', + -0x38a1: b'\x11\xc7_', + -0x38a0: b'\x11\xc7`', + -0x389f: b'\x11\xc7a', + -0x389e: b'\x11\xc7b', + -0x389d: b'\x11\xc7c', + -0x389c: b'\x11\xc7d', + -0x389b: b'\x11\xc7e', + -0x389a: b'\x11\xc7f', + -0x3899: b'\x11\xc7g', + -0x3898: b'\x11\xc7h', + -0x3897: b'\x11\xc7i', + -0x3896: b'\x11\xc7j', + -0x3895: b'\x11\xc7k', + -0x3894: b'\x11\xc7l', + -0x3893: b'\x11\xc7m', + -0x3892: b'\x11\xc7n', + -0x3891: b'\x11\xc7o', + -0x3890: b'\x11\xc7p', + -0x388f: b'\x11\xc7q', + -0x388e: b'\x11\xc7r', + -0x388d: b'\x11\xc7s', + -0x388c: b'\x11\xc7t', + -0x388b: b'\x11\xc7u', + -0x388a: b'\x11\xc7v', + -0x3889: b'\x11\xc7w', + -0x3888: b'\x11\xc7x', + -0x3887: b'\x11\xc7y', + -0x3886: b'\x11\xc7z', + -0x3885: b'\x11\xc7{', + -0x3884: b'\x11\xc7|', + -0x3883: b'\x11\xc7}', + -0x3882: b'\x11\xc7~', + -0x3881: b'\x11\xc7\x7f', + -0x3880: b'\x11\xc7\x80', + -0x387f: b'\x11\xc7\x81', + -0x387e: b'\x11\xc7\x82', + -0x387d: b'\x11\xc7\x83', + -0x387c: b'\x11\xc7\x84', + -0x387b: b'\x11\xc7\x85', + -0x387a: b'\x11\xc7\x86', + -0x3879: b'\x11\xc7\x87', + -0x3878: b'\x11\xc7\x88', + -0x3877: b'\x11\xc7\x89', + -0x3876: b'\x11\xc7\x8a', + -0x3875: b'\x11\xc7\x8b', + -0x3874: b'\x11\xc7\x8c', + -0x3873: b'\x11\xc7\x8d', + -0x3872: b'\x11\xc7\x8e', + -0x3871: b'\x11\xc7\x8f', + -0x3870: b'\x11\xc7\x90', + -0x386f: b'\x11\xc7\x91', + -0x386e: b'\x11\xc7\x92', + -0x386d: b'\x11\xc7\x93', + -0x386c: b'\x11\xc7\x94', + -0x386b: b'\x11\xc7\x95', + -0x386a: b'\x11\xc7\x96', + -0x3869: b'\x11\xc7\x97', + -0x3868: b'\x11\xc7\x98', + -0x3867: b'\x11\xc7\x99', + -0x3866: b'\x11\xc7\x9a', + -0x3865: b'\x11\xc7\x9b', + -0x3864: b'\x11\xc7\x9c', + -0x3863: b'\x11\xc7\x9d', + -0x3862: b'\x11\xc7\x9e', + -0x3861: b'\x11\xc7\x9f', + -0x3860: b'\x11\xc7\xa0', + -0x385f: b'\x11\xc7\xa1', + -0x385e: b'\x11\xc7\xa2', + -0x385d: b'\x11\xc7\xa3', + -0x385c: b'\x11\xc7\xa4', + -0x385b: b'\x11\xc7\xa5', + -0x385a: b'\x11\xc7\xa6', + -0x3859: b'\x11\xc7\xa7', + -0x3858: b'\x11\xc7\xa8', + -0x3857: b'\x11\xc7\xa9', + -0x3856: b'\x11\xc7\xaa', + -0x3855: b'\x11\xc7\xab', + -0x3854: b'\x11\xc7\xac', + -0x3853: b'\x11\xc7\xad', + -0x3852: b'\x11\xc7\xae', + -0x3851: b'\x11\xc7\xaf', + -0x3850: b'\x11\xc7\xb0', + -0x384f: b'\x11\xc7\xb1', + -0x384e: b'\x11\xc7\xb2', + -0x384d: b'\x11\xc7\xb3', + -0x384c: b'\x11\xc7\xb4', + -0x384b: b'\x11\xc7\xb5', + -0x384a: b'\x11\xc7\xb6', + -0x3849: b'\x11\xc7\xb7', + -0x3848: b'\x11\xc7\xb8', + -0x3847: b'\x11\xc7\xb9', + -0x3846: b'\x11\xc7\xba', + -0x3845: b'\x11\xc7\xbb', + -0x3844: b'\x11\xc7\xbc', + -0x3843: b'\x11\xc7\xbd', + -0x3842: b'\x11\xc7\xbe', + -0x3841: b'\x11\xc7\xbf', + -0x3840: b'\x11\xc7\xc0', + -0x383f: b'\x11\xc7\xc1', + -0x383e: b'\x11\xc7\xc2', + -0x383d: b'\x11\xc7\xc3', + -0x383c: b'\x11\xc7\xc4', + -0x383b: b'\x11\xc7\xc5', + -0x383a: b'\x11\xc7\xc6', + -0x3839: b'\x11\xc7\xc7', + -0x3838: b'\x11\xc7\xc8', + -0x3837: b'\x11\xc7\xc9', + -0x3836: b'\x11\xc7\xca', + -0x3835: b'\x11\xc7\xcb', + -0x3834: b'\x11\xc7\xcc', + -0x3833: b'\x11\xc7\xcd', + -0x3832: b'\x11\xc7\xce', + -0x3831: b'\x11\xc7\xcf', + -0x3830: b'\x11\xc7\xd0', + -0x382f: b'\x11\xc7\xd1', + -0x382e: b'\x11\xc7\xd2', + -0x382d: b'\x11\xc7\xd3', + -0x382c: b'\x11\xc7\xd4', + -0x382b: b'\x11\xc7\xd5', + -0x382a: b'\x11\xc7\xd6', + -0x3829: b'\x11\xc7\xd7', + -0x3828: b'\x11\xc7\xd8', + -0x3827: b'\x11\xc7\xd9', + -0x3826: b'\x11\xc7\xda', + -0x3825: b'\x11\xc7\xdb', + -0x3824: b'\x11\xc7\xdc', + -0x3823: b'\x11\xc7\xdd', + -0x3822: b'\x11\xc7\xde', + -0x3821: b'\x11\xc7\xdf', + -0x3820: b'\x11\xc7\xe0', + -0x381f: b'\x11\xc7\xe1', + -0x381e: b'\x11\xc7\xe2', + -0x381d: b'\x11\xc7\xe3', + -0x381c: b'\x11\xc7\xe4', + -0x381b: b'\x11\xc7\xe5', + -0x381a: b'\x11\xc7\xe6', + -0x3819: b'\x11\xc7\xe7', + -0x3818: b'\x11\xc7\xe8', + -0x3817: b'\x11\xc7\xe9', + -0x3816: b'\x11\xc7\xea', + -0x3815: b'\x11\xc7\xeb', + -0x3814: b'\x11\xc7\xec', + -0x3813: b'\x11\xc7\xed', + -0x3812: b'\x11\xc7\xee', + -0x3811: b'\x11\xc7\xef', + -0x3810: b'\x11\xc7\xf0', + -0x380f: b'\x11\xc7\xf1', + -0x380e: b'\x11\xc7\xf2', + -0x380d: b'\x11\xc7\xf3', + -0x380c: b'\x11\xc7\xf4', + -0x380b: b'\x11\xc7\xf5', + -0x380a: b'\x11\xc7\xf6', + -0x3809: b'\x11\xc7\xf7', + -0x3808: b'\x11\xc7\xf8', + -0x3807: b'\x11\xc7\xf9', + -0x3806: b'\x11\xc7\xfa', + -0x3805: b'\x11\xc7\xfb', + -0x3804: b'\x11\xc7\xfc', + -0x3803: b'\x11\xc7\xfd', + -0x3802: b'\x11\xc7\xfe', + -0x3801: b'\x11\xc7\xff', + -0x3800: b'\x11\xc8\x00', + -0x37ff: b'\x11\xc8\x01', + -0x37fe: b'\x11\xc8\x02', + -0x37fd: b'\x11\xc8\x03', + -0x37fc: b'\x11\xc8\x04', + -0x37fb: b'\x11\xc8\x05', + -0x37fa: b'\x11\xc8\x06', + -0x37f9: b'\x11\xc8\x07', + -0x37f8: b'\x11\xc8\x08', + -0x37f7: b'\x11\xc8\t', + -0x37f6: b'\x11\xc8\n', + -0x37f5: b'\x11\xc8\x0b', + -0x37f4: b'\x11\xc8\x0c', + -0x37f3: b'\x11\xc8\r', + -0x37f2: b'\x11\xc8\x0e', + -0x37f1: b'\x11\xc8\x0f', + -0x37f0: b'\x11\xc8\x10', + -0x37ef: b'\x11\xc8\x11', + -0x37ee: b'\x11\xc8\x12', + -0x37ed: b'\x11\xc8\x13', + -0x37ec: b'\x11\xc8\x14', + -0x37eb: b'\x11\xc8\x15', + -0x37ea: b'\x11\xc8\x16', + -0x37e9: b'\x11\xc8\x17', + -0x37e8: b'\x11\xc8\x18', + -0x37e7: b'\x11\xc8\x19', + -0x37e6: b'\x11\xc8\x1a', + -0x37e5: b'\x11\xc8\x1b', + -0x37e4: b'\x11\xc8\x1c', + -0x37e3: b'\x11\xc8\x1d', + -0x37e2: b'\x11\xc8\x1e', + -0x37e1: b'\x11\xc8\x1f', + -0x37e0: b'\x11\xc8 ', + -0x37df: b'\x11\xc8!', + -0x37de: b'\x11\xc8"', + -0x37dd: b'\x11\xc8#', + -0x37dc: b'\x11\xc8$', + -0x37db: b'\x11\xc8%', + -0x37da: b'\x11\xc8&', + -0x37d9: b"\x11\xc8'", + -0x37d8: b'\x11\xc8(', + -0x37d7: b'\x11\xc8)', + -0x37d6: b'\x11\xc8*', + -0x37d5: b'\x11\xc8+', + -0x37d4: b'\x11\xc8,', + -0x37d3: b'\x11\xc8-', + -0x37d2: b'\x11\xc8.', + -0x37d1: b'\x11\xc8/', + -0x37d0: b'\x11\xc80', + -0x37cf: b'\x11\xc81', + -0x37ce: b'\x11\xc82', + -0x37cd: b'\x11\xc83', + -0x37cc: b'\x11\xc84', + -0x37cb: b'\x11\xc85', + -0x37ca: b'\x11\xc86', + -0x37c9: b'\x11\xc87', + -0x37c8: b'\x11\xc88', + -0x37c7: b'\x11\xc89', + -0x37c6: b'\x11\xc8:', + -0x37c5: b'\x11\xc8;', + -0x37c4: b'\x11\xc8<', + -0x37c3: b'\x11\xc8=', + -0x37c2: b'\x11\xc8>', + -0x37c1: b'\x11\xc8?', + -0x37c0: b'\x11\xc8@', + -0x37bf: b'\x11\xc8A', + -0x37be: b'\x11\xc8B', + -0x37bd: b'\x11\xc8C', + -0x37bc: b'\x11\xc8D', + -0x37bb: b'\x11\xc8E', + -0x37ba: b'\x11\xc8F', + -0x37b9: b'\x11\xc8G', + -0x37b8: b'\x11\xc8H', + -0x37b7: b'\x11\xc8I', + -0x37b6: b'\x11\xc8J', + -0x37b5: b'\x11\xc8K', + -0x37b4: b'\x11\xc8L', + -0x37b3: b'\x11\xc8M', + -0x37b2: b'\x11\xc8N', + -0x37b1: b'\x11\xc8O', + -0x37b0: b'\x11\xc8P', + -0x37af: b'\x11\xc8Q', + -0x37ae: b'\x11\xc8R', + -0x37ad: b'\x11\xc8S', + -0x37ac: b'\x11\xc8T', + -0x37ab: b'\x11\xc8U', + -0x37aa: b'\x11\xc8V', + -0x37a9: b'\x11\xc8W', + -0x37a8: b'\x11\xc8X', + -0x37a7: b'\x11\xc8Y', + -0x37a6: b'\x11\xc8Z', + -0x37a5: b'\x11\xc8[', + -0x37a4: b'\x11\xc8\\', + -0x37a3: b'\x11\xc8]', + -0x37a2: b'\x11\xc8^', + -0x37a1: b'\x11\xc8_', + -0x37a0: b'\x11\xc8`', + -0x379f: b'\x11\xc8a', + -0x379e: b'\x11\xc8b', + -0x379d: b'\x11\xc8c', + -0x379c: b'\x11\xc8d', + -0x379b: b'\x11\xc8e', + -0x379a: b'\x11\xc8f', + -0x3799: b'\x11\xc8g', + -0x3798: b'\x11\xc8h', + -0x3797: b'\x11\xc8i', + -0x3796: b'\x11\xc8j', + -0x3795: b'\x11\xc8k', + -0x3794: b'\x11\xc8l', + -0x3793: b'\x11\xc8m', + -0x3792: b'\x11\xc8n', + -0x3791: b'\x11\xc8o', + -0x3790: b'\x11\xc8p', + -0x378f: b'\x11\xc8q', + -0x378e: b'\x11\xc8r', + -0x378d: b'\x11\xc8s', + -0x378c: b'\x11\xc8t', + -0x378b: b'\x11\xc8u', + -0x378a: b'\x11\xc8v', + -0x3789: b'\x11\xc8w', + -0x3788: b'\x11\xc8x', + -0x3787: b'\x11\xc8y', + -0x3786: b'\x11\xc8z', + -0x3785: b'\x11\xc8{', + -0x3784: b'\x11\xc8|', + -0x3783: b'\x11\xc8}', + -0x3782: b'\x11\xc8~', + -0x3781: b'\x11\xc8\x7f', + -0x3780: b'\x11\xc8\x80', + -0x377f: b'\x11\xc8\x81', + -0x377e: b'\x11\xc8\x82', + -0x377d: b'\x11\xc8\x83', + -0x377c: b'\x11\xc8\x84', + -0x377b: b'\x11\xc8\x85', + -0x377a: b'\x11\xc8\x86', + -0x3779: b'\x11\xc8\x87', + -0x3778: b'\x11\xc8\x88', + -0x3777: b'\x11\xc8\x89', + -0x3776: b'\x11\xc8\x8a', + -0x3775: b'\x11\xc8\x8b', + -0x3774: b'\x11\xc8\x8c', + -0x3773: b'\x11\xc8\x8d', + -0x3772: b'\x11\xc8\x8e', + -0x3771: b'\x11\xc8\x8f', + -0x3770: b'\x11\xc8\x90', + -0x376f: b'\x11\xc8\x91', + -0x376e: b'\x11\xc8\x92', + -0x376d: b'\x11\xc8\x93', + -0x376c: b'\x11\xc8\x94', + -0x376b: b'\x11\xc8\x95', + -0x376a: b'\x11\xc8\x96', + -0x3769: b'\x11\xc8\x97', + -0x3768: b'\x11\xc8\x98', + -0x3767: b'\x11\xc8\x99', + -0x3766: b'\x11\xc8\x9a', + -0x3765: b'\x11\xc8\x9b', + -0x3764: b'\x11\xc8\x9c', + -0x3763: b'\x11\xc8\x9d', + -0x3762: b'\x11\xc8\x9e', + -0x3761: b'\x11\xc8\x9f', + -0x3760: b'\x11\xc8\xa0', + -0x375f: b'\x11\xc8\xa1', + -0x375e: b'\x11\xc8\xa2', + -0x375d: b'\x11\xc8\xa3', + -0x375c: b'\x11\xc8\xa4', + -0x375b: b'\x11\xc8\xa5', + -0x375a: b'\x11\xc8\xa6', + -0x3759: b'\x11\xc8\xa7', + -0x3758: b'\x11\xc8\xa8', + -0x3757: b'\x11\xc8\xa9', + -0x3756: b'\x11\xc8\xaa', + -0x3755: b'\x11\xc8\xab', + -0x3754: b'\x11\xc8\xac', + -0x3753: b'\x11\xc8\xad', + -0x3752: b'\x11\xc8\xae', + -0x3751: b'\x11\xc8\xaf', + -0x3750: b'\x11\xc8\xb0', + -0x374f: b'\x11\xc8\xb1', + -0x374e: b'\x11\xc8\xb2', + -0x374d: b'\x11\xc8\xb3', + -0x374c: b'\x11\xc8\xb4', + -0x374b: b'\x11\xc8\xb5', + -0x374a: b'\x11\xc8\xb6', + -0x3749: b'\x11\xc8\xb7', + -0x3748: b'\x11\xc8\xb8', + -0x3747: b'\x11\xc8\xb9', + -0x3746: b'\x11\xc8\xba', + -0x3745: b'\x11\xc8\xbb', + -0x3744: b'\x11\xc8\xbc', + -0x3743: b'\x11\xc8\xbd', + -0x3742: b'\x11\xc8\xbe', + -0x3741: b'\x11\xc8\xbf', + -0x3740: b'\x11\xc8\xc0', + -0x373f: b'\x11\xc8\xc1', + -0x373e: b'\x11\xc8\xc2', + -0x373d: b'\x11\xc8\xc3', + -0x373c: b'\x11\xc8\xc4', + -0x373b: b'\x11\xc8\xc5', + -0x373a: b'\x11\xc8\xc6', + -0x3739: b'\x11\xc8\xc7', + -0x3738: b'\x11\xc8\xc8', + -0x3737: b'\x11\xc8\xc9', + -0x3736: b'\x11\xc8\xca', + -0x3735: b'\x11\xc8\xcb', + -0x3734: b'\x11\xc8\xcc', + -0x3733: b'\x11\xc8\xcd', + -0x3732: b'\x11\xc8\xce', + -0x3731: b'\x11\xc8\xcf', + -0x3730: b'\x11\xc8\xd0', + -0x372f: b'\x11\xc8\xd1', + -0x372e: b'\x11\xc8\xd2', + -0x372d: b'\x11\xc8\xd3', + -0x372c: b'\x11\xc8\xd4', + -0x372b: b'\x11\xc8\xd5', + -0x372a: b'\x11\xc8\xd6', + -0x3729: b'\x11\xc8\xd7', + -0x3728: b'\x11\xc8\xd8', + -0x3727: b'\x11\xc8\xd9', + -0x3726: b'\x11\xc8\xda', + -0x3725: b'\x11\xc8\xdb', + -0x3724: b'\x11\xc8\xdc', + -0x3723: b'\x11\xc8\xdd', + -0x3722: b'\x11\xc8\xde', + -0x3721: b'\x11\xc8\xdf', + -0x3720: b'\x11\xc8\xe0', + -0x371f: b'\x11\xc8\xe1', + -0x371e: b'\x11\xc8\xe2', + -0x371d: b'\x11\xc8\xe3', + -0x371c: b'\x11\xc8\xe4', + -0x371b: b'\x11\xc8\xe5', + -0x371a: b'\x11\xc8\xe6', + -0x3719: b'\x11\xc8\xe7', + -0x3718: b'\x11\xc8\xe8', + -0x3717: b'\x11\xc8\xe9', + -0x3716: b'\x11\xc8\xea', + -0x3715: b'\x11\xc8\xeb', + -0x3714: b'\x11\xc8\xec', + -0x3713: b'\x11\xc8\xed', + -0x3712: b'\x11\xc8\xee', + -0x3711: b'\x11\xc8\xef', + -0x3710: b'\x11\xc8\xf0', + -0x370f: b'\x11\xc8\xf1', + -0x370e: b'\x11\xc8\xf2', + -0x370d: b'\x11\xc8\xf3', + -0x370c: b'\x11\xc8\xf4', + -0x370b: b'\x11\xc8\xf5', + -0x370a: b'\x11\xc8\xf6', + -0x3709: b'\x11\xc8\xf7', + -0x3708: b'\x11\xc8\xf8', + -0x3707: b'\x11\xc8\xf9', + -0x3706: b'\x11\xc8\xfa', + -0x3705: b'\x11\xc8\xfb', + -0x3704: b'\x11\xc8\xfc', + -0x3703: b'\x11\xc8\xfd', + -0x3702: b'\x11\xc8\xfe', + -0x3701: b'\x11\xc8\xff', + -0x3700: b'\x11\xc9\x00', + -0x36ff: b'\x11\xc9\x01', + -0x36fe: b'\x11\xc9\x02', + -0x36fd: b'\x11\xc9\x03', + -0x36fc: b'\x11\xc9\x04', + -0x36fb: b'\x11\xc9\x05', + -0x36fa: b'\x11\xc9\x06', + -0x36f9: b'\x11\xc9\x07', + -0x36f8: b'\x11\xc9\x08', + -0x36f7: b'\x11\xc9\t', + -0x36f6: b'\x11\xc9\n', + -0x36f5: b'\x11\xc9\x0b', + -0x36f4: b'\x11\xc9\x0c', + -0x36f3: b'\x11\xc9\r', + -0x36f2: b'\x11\xc9\x0e', + -0x36f1: b'\x11\xc9\x0f', + -0x36f0: b'\x11\xc9\x10', + -0x36ef: b'\x11\xc9\x11', + -0x36ee: b'\x11\xc9\x12', + -0x36ed: b'\x11\xc9\x13', + -0x36ec: b'\x11\xc9\x14', + -0x36eb: b'\x11\xc9\x15', + -0x36ea: b'\x11\xc9\x16', + -0x36e9: b'\x11\xc9\x17', + -0x36e8: b'\x11\xc9\x18', + -0x36e7: b'\x11\xc9\x19', + -0x36e6: b'\x11\xc9\x1a', + -0x36e5: b'\x11\xc9\x1b', + -0x36e4: b'\x11\xc9\x1c', + -0x36e3: b'\x11\xc9\x1d', + -0x36e2: b'\x11\xc9\x1e', + -0x36e1: b'\x11\xc9\x1f', + -0x36e0: b'\x11\xc9 ', + -0x36df: b'\x11\xc9!', + -0x36de: b'\x11\xc9"', + -0x36dd: b'\x11\xc9#', + -0x36dc: b'\x11\xc9$', + -0x36db: b'\x11\xc9%', + -0x36da: b'\x11\xc9&', + -0x36d9: b"\x11\xc9'", + -0x36d8: b'\x11\xc9(', + -0x36d7: b'\x11\xc9)', + -0x36d6: b'\x11\xc9*', + -0x36d5: b'\x11\xc9+', + -0x36d4: b'\x11\xc9,', + -0x36d3: b'\x11\xc9-', + -0x36d2: b'\x11\xc9.', + -0x36d1: b'\x11\xc9/', + -0x36d0: b'\x11\xc90', + -0x36cf: b'\x11\xc91', + -0x36ce: b'\x11\xc92', + -0x36cd: b'\x11\xc93', + -0x36cc: b'\x11\xc94', + -0x36cb: b'\x11\xc95', + -0x36ca: b'\x11\xc96', + -0x36c9: b'\x11\xc97', + -0x36c8: b'\x11\xc98', + -0x36c7: b'\x11\xc99', + -0x36c6: b'\x11\xc9:', + -0x36c5: b'\x11\xc9;', + -0x36c4: b'\x11\xc9<', + -0x36c3: b'\x11\xc9=', + -0x36c2: b'\x11\xc9>', + -0x36c1: b'\x11\xc9?', + -0x36c0: b'\x11\xc9@', + -0x36bf: b'\x11\xc9A', + -0x36be: b'\x11\xc9B', + -0x36bd: b'\x11\xc9C', + -0x36bc: b'\x11\xc9D', + -0x36bb: b'\x11\xc9E', + -0x36ba: b'\x11\xc9F', + -0x36b9: b'\x11\xc9G', + -0x36b8: b'\x11\xc9H', + -0x36b7: b'\x11\xc9I', + -0x36b6: b'\x11\xc9J', + -0x36b5: b'\x11\xc9K', + -0x36b4: b'\x11\xc9L', + -0x36b3: b'\x11\xc9M', + -0x36b2: b'\x11\xc9N', + -0x36b1: b'\x11\xc9O', + -0x36b0: b'\x11\xc9P', + -0x36af: b'\x11\xc9Q', + -0x36ae: b'\x11\xc9R', + -0x36ad: b'\x11\xc9S', + -0x36ac: b'\x11\xc9T', + -0x36ab: b'\x11\xc9U', + -0x36aa: b'\x11\xc9V', + -0x36a9: b'\x11\xc9W', + -0x36a8: b'\x11\xc9X', + -0x36a7: b'\x11\xc9Y', + -0x36a6: b'\x11\xc9Z', + -0x36a5: b'\x11\xc9[', + -0x36a4: b'\x11\xc9\\', + -0x36a3: b'\x11\xc9]', + -0x36a2: b'\x11\xc9^', + -0x36a1: b'\x11\xc9_', + -0x36a0: b'\x11\xc9`', + -0x369f: b'\x11\xc9a', + -0x369e: b'\x11\xc9b', + -0x369d: b'\x11\xc9c', + -0x369c: b'\x11\xc9d', + -0x369b: b'\x11\xc9e', + -0x369a: b'\x11\xc9f', + -0x3699: b'\x11\xc9g', + -0x3698: b'\x11\xc9h', + -0x3697: b'\x11\xc9i', + -0x3696: b'\x11\xc9j', + -0x3695: b'\x11\xc9k', + -0x3694: b'\x11\xc9l', + -0x3693: b'\x11\xc9m', + -0x3692: b'\x11\xc9n', + -0x3691: b'\x11\xc9o', + -0x3690: b'\x11\xc9p', + -0x368f: b'\x11\xc9q', + -0x368e: b'\x11\xc9r', + -0x368d: b'\x11\xc9s', + -0x368c: b'\x11\xc9t', + -0x368b: b'\x11\xc9u', + -0x368a: b'\x11\xc9v', + -0x3689: b'\x11\xc9w', + -0x3688: b'\x11\xc9x', + -0x3687: b'\x11\xc9y', + -0x3686: b'\x11\xc9z', + -0x3685: b'\x11\xc9{', + -0x3684: b'\x11\xc9|', + -0x3683: b'\x11\xc9}', + -0x3682: b'\x11\xc9~', + -0x3681: b'\x11\xc9\x7f', + -0x3680: b'\x11\xc9\x80', + -0x367f: b'\x11\xc9\x81', + -0x367e: b'\x11\xc9\x82', + -0x367d: b'\x11\xc9\x83', + -0x367c: b'\x11\xc9\x84', + -0x367b: b'\x11\xc9\x85', + -0x367a: b'\x11\xc9\x86', + -0x3679: b'\x11\xc9\x87', + -0x3678: b'\x11\xc9\x88', + -0x3677: b'\x11\xc9\x89', + -0x3676: b'\x11\xc9\x8a', + -0x3675: b'\x11\xc9\x8b', + -0x3674: b'\x11\xc9\x8c', + -0x3673: b'\x11\xc9\x8d', + -0x3672: b'\x11\xc9\x8e', + -0x3671: b'\x11\xc9\x8f', + -0x3670: b'\x11\xc9\x90', + -0x366f: b'\x11\xc9\x91', + -0x366e: b'\x11\xc9\x92', + -0x366d: b'\x11\xc9\x93', + -0x366c: b'\x11\xc9\x94', + -0x366b: b'\x11\xc9\x95', + -0x366a: b'\x11\xc9\x96', + -0x3669: b'\x11\xc9\x97', + -0x3668: b'\x11\xc9\x98', + -0x3667: b'\x11\xc9\x99', + -0x3666: b'\x11\xc9\x9a', + -0x3665: b'\x11\xc9\x9b', + -0x3664: b'\x11\xc9\x9c', + -0x3663: b'\x11\xc9\x9d', + -0x3662: b'\x11\xc9\x9e', + -0x3661: b'\x11\xc9\x9f', + -0x3660: b'\x11\xc9\xa0', + -0x365f: b'\x11\xc9\xa1', + -0x365e: b'\x11\xc9\xa2', + -0x365d: b'\x11\xc9\xa3', + -0x365c: b'\x11\xc9\xa4', + -0x365b: b'\x11\xc9\xa5', + -0x365a: b'\x11\xc9\xa6', + -0x3659: b'\x11\xc9\xa7', + -0x3658: b'\x11\xc9\xa8', + -0x3657: b'\x11\xc9\xa9', + -0x3656: b'\x11\xc9\xaa', + -0x3655: b'\x11\xc9\xab', + -0x3654: b'\x11\xc9\xac', + -0x3653: b'\x11\xc9\xad', + -0x3652: b'\x11\xc9\xae', + -0x3651: b'\x11\xc9\xaf', + -0x3650: b'\x11\xc9\xb0', + -0x364f: b'\x11\xc9\xb1', + -0x364e: b'\x11\xc9\xb2', + -0x364d: b'\x11\xc9\xb3', + -0x364c: b'\x11\xc9\xb4', + -0x364b: b'\x11\xc9\xb5', + -0x364a: b'\x11\xc9\xb6', + -0x3649: b'\x11\xc9\xb7', + -0x3648: b'\x11\xc9\xb8', + -0x3647: b'\x11\xc9\xb9', + -0x3646: b'\x11\xc9\xba', + -0x3645: b'\x11\xc9\xbb', + -0x3644: b'\x11\xc9\xbc', + -0x3643: b'\x11\xc9\xbd', + -0x3642: b'\x11\xc9\xbe', + -0x3641: b'\x11\xc9\xbf', + -0x3640: b'\x11\xc9\xc0', + -0x363f: b'\x11\xc9\xc1', + -0x363e: b'\x11\xc9\xc2', + -0x363d: b'\x11\xc9\xc3', + -0x363c: b'\x11\xc9\xc4', + -0x363b: b'\x11\xc9\xc5', + -0x363a: b'\x11\xc9\xc6', + -0x3639: b'\x11\xc9\xc7', + -0x3638: b'\x11\xc9\xc8', + -0x3637: b'\x11\xc9\xc9', + -0x3636: b'\x11\xc9\xca', + -0x3635: b'\x11\xc9\xcb', + -0x3634: b'\x11\xc9\xcc', + -0x3633: b'\x11\xc9\xcd', + -0x3632: b'\x11\xc9\xce', + -0x3631: b'\x11\xc9\xcf', + -0x3630: b'\x11\xc9\xd0', + -0x362f: b'\x11\xc9\xd1', + -0x362e: b'\x11\xc9\xd2', + -0x362d: b'\x11\xc9\xd3', + -0x362c: b'\x11\xc9\xd4', + -0x362b: b'\x11\xc9\xd5', + -0x362a: b'\x11\xc9\xd6', + -0x3629: b'\x11\xc9\xd7', + -0x3628: b'\x11\xc9\xd8', + -0x3627: b'\x11\xc9\xd9', + -0x3626: b'\x11\xc9\xda', + -0x3625: b'\x11\xc9\xdb', + -0x3624: b'\x11\xc9\xdc', + -0x3623: b'\x11\xc9\xdd', + -0x3622: b'\x11\xc9\xde', + -0x3621: b'\x11\xc9\xdf', + -0x3620: b'\x11\xc9\xe0', + -0x361f: b'\x11\xc9\xe1', + -0x361e: b'\x11\xc9\xe2', + -0x361d: b'\x11\xc9\xe3', + -0x361c: b'\x11\xc9\xe4', + -0x361b: b'\x11\xc9\xe5', + -0x361a: b'\x11\xc9\xe6', + -0x3619: b'\x11\xc9\xe7', + -0x3618: b'\x11\xc9\xe8', + -0x3617: b'\x11\xc9\xe9', + -0x3616: b'\x11\xc9\xea', + -0x3615: b'\x11\xc9\xeb', + -0x3614: b'\x11\xc9\xec', + -0x3613: b'\x11\xc9\xed', + -0x3612: b'\x11\xc9\xee', + -0x3611: b'\x11\xc9\xef', + -0x3610: b'\x11\xc9\xf0', + -0x360f: b'\x11\xc9\xf1', + -0x360e: b'\x11\xc9\xf2', + -0x360d: b'\x11\xc9\xf3', + -0x360c: b'\x11\xc9\xf4', + -0x360b: b'\x11\xc9\xf5', + -0x360a: b'\x11\xc9\xf6', + -0x3609: b'\x11\xc9\xf7', + -0x3608: b'\x11\xc9\xf8', + -0x3607: b'\x11\xc9\xf9', + -0x3606: b'\x11\xc9\xfa', + -0x3605: b'\x11\xc9\xfb', + -0x3604: b'\x11\xc9\xfc', + -0x3603: b'\x11\xc9\xfd', + -0x3602: b'\x11\xc9\xfe', + -0x3601: b'\x11\xc9\xff', + -0x3600: b'\x11\xca\x00', + -0x35ff: b'\x11\xca\x01', + -0x35fe: b'\x11\xca\x02', + -0x35fd: b'\x11\xca\x03', + -0x35fc: b'\x11\xca\x04', + -0x35fb: b'\x11\xca\x05', + -0x35fa: b'\x11\xca\x06', + -0x35f9: b'\x11\xca\x07', + -0x35f8: b'\x11\xca\x08', + -0x35f7: b'\x11\xca\t', + -0x35f6: b'\x11\xca\n', + -0x35f5: b'\x11\xca\x0b', + -0x35f4: b'\x11\xca\x0c', + -0x35f3: b'\x11\xca\r', + -0x35f2: b'\x11\xca\x0e', + -0x35f1: b'\x11\xca\x0f', + -0x35f0: b'\x11\xca\x10', + -0x35ef: b'\x11\xca\x11', + -0x35ee: b'\x11\xca\x12', + -0x35ed: b'\x11\xca\x13', + -0x35ec: b'\x11\xca\x14', + -0x35eb: b'\x11\xca\x15', + -0x35ea: b'\x11\xca\x16', + -0x35e9: b'\x11\xca\x17', + -0x35e8: b'\x11\xca\x18', + -0x35e7: b'\x11\xca\x19', + -0x35e6: b'\x11\xca\x1a', + -0x35e5: b'\x11\xca\x1b', + -0x35e4: b'\x11\xca\x1c', + -0x35e3: b'\x11\xca\x1d', + -0x35e2: b'\x11\xca\x1e', + -0x35e1: b'\x11\xca\x1f', + -0x35e0: b'\x11\xca ', + -0x35df: b'\x11\xca!', + -0x35de: b'\x11\xca"', + -0x35dd: b'\x11\xca#', + -0x35dc: b'\x11\xca$', + -0x35db: b'\x11\xca%', + -0x35da: b'\x11\xca&', + -0x35d9: b"\x11\xca'", + -0x35d8: b'\x11\xca(', + -0x35d7: b'\x11\xca)', + -0x35d6: b'\x11\xca*', + -0x35d5: b'\x11\xca+', + -0x35d4: b'\x11\xca,', + -0x35d3: b'\x11\xca-', + -0x35d2: b'\x11\xca.', + -0x35d1: b'\x11\xca/', + -0x35d0: b'\x11\xca0', + -0x35cf: b'\x11\xca1', + -0x35ce: b'\x11\xca2', + -0x35cd: b'\x11\xca3', + -0x35cc: b'\x11\xca4', + -0x35cb: b'\x11\xca5', + -0x35ca: b'\x11\xca6', + -0x35c9: b'\x11\xca7', + -0x35c8: b'\x11\xca8', + -0x35c7: b'\x11\xca9', + -0x35c6: b'\x11\xca:', + -0x35c5: b'\x11\xca;', + -0x35c4: b'\x11\xca<', + -0x35c3: b'\x11\xca=', + -0x35c2: b'\x11\xca>', + -0x35c1: b'\x11\xca?', + -0x35c0: b'\x11\xca@', + -0x35bf: b'\x11\xcaA', + -0x35be: b'\x11\xcaB', + -0x35bd: b'\x11\xcaC', + -0x35bc: b'\x11\xcaD', + -0x35bb: b'\x11\xcaE', + -0x35ba: b'\x11\xcaF', + -0x35b9: b'\x11\xcaG', + -0x35b8: b'\x11\xcaH', + -0x35b7: b'\x11\xcaI', + -0x35b6: b'\x11\xcaJ', + -0x35b5: b'\x11\xcaK', + -0x35b4: b'\x11\xcaL', + -0x35b3: b'\x11\xcaM', + -0x35b2: b'\x11\xcaN', + -0x35b1: b'\x11\xcaO', + -0x35b0: b'\x11\xcaP', + -0x35af: b'\x11\xcaQ', + -0x35ae: b'\x11\xcaR', + -0x35ad: b'\x11\xcaS', + -0x35ac: b'\x11\xcaT', + -0x35ab: b'\x11\xcaU', + -0x35aa: b'\x11\xcaV', + -0x35a9: b'\x11\xcaW', + -0x35a8: b'\x11\xcaX', + -0x35a7: b'\x11\xcaY', + -0x35a6: b'\x11\xcaZ', + -0x35a5: b'\x11\xca[', + -0x35a4: b'\x11\xca\\', + -0x35a3: b'\x11\xca]', + -0x35a2: b'\x11\xca^', + -0x35a1: b'\x11\xca_', + -0x35a0: b'\x11\xca`', + -0x359f: b'\x11\xcaa', + -0x359e: b'\x11\xcab', + -0x359d: b'\x11\xcac', + -0x359c: b'\x11\xcad', + -0x359b: b'\x11\xcae', + -0x359a: b'\x11\xcaf', + -0x3599: b'\x11\xcag', + -0x3598: b'\x11\xcah', + -0x3597: b'\x11\xcai', + -0x3596: b'\x11\xcaj', + -0x3595: b'\x11\xcak', + -0x3594: b'\x11\xcal', + -0x3593: b'\x11\xcam', + -0x3592: b'\x11\xcan', + -0x3591: b'\x11\xcao', + -0x3590: b'\x11\xcap', + -0x358f: b'\x11\xcaq', + -0x358e: b'\x11\xcar', + -0x358d: b'\x11\xcas', + -0x358c: b'\x11\xcat', + -0x358b: b'\x11\xcau', + -0x358a: b'\x11\xcav', + -0x3589: b'\x11\xcaw', + -0x3588: b'\x11\xcax', + -0x3587: b'\x11\xcay', + -0x3586: b'\x11\xcaz', + -0x3585: b'\x11\xca{', + -0x3584: b'\x11\xca|', + -0x3583: b'\x11\xca}', + -0x3582: b'\x11\xca~', + -0x3581: b'\x11\xca\x7f', + -0x3580: b'\x11\xca\x80', + -0x357f: b'\x11\xca\x81', + -0x357e: b'\x11\xca\x82', + -0x357d: b'\x11\xca\x83', + -0x357c: b'\x11\xca\x84', + -0x357b: b'\x11\xca\x85', + -0x357a: b'\x11\xca\x86', + -0x3579: b'\x11\xca\x87', + -0x3578: b'\x11\xca\x88', + -0x3577: b'\x11\xca\x89', + -0x3576: b'\x11\xca\x8a', + -0x3575: b'\x11\xca\x8b', + -0x3574: b'\x11\xca\x8c', + -0x3573: b'\x11\xca\x8d', + -0x3572: b'\x11\xca\x8e', + -0x3571: b'\x11\xca\x8f', + -0x3570: b'\x11\xca\x90', + -0x356f: b'\x11\xca\x91', + -0x356e: b'\x11\xca\x92', + -0x356d: b'\x11\xca\x93', + -0x356c: b'\x11\xca\x94', + -0x356b: b'\x11\xca\x95', + -0x356a: b'\x11\xca\x96', + -0x3569: b'\x11\xca\x97', + -0x3568: b'\x11\xca\x98', + -0x3567: b'\x11\xca\x99', + -0x3566: b'\x11\xca\x9a', + -0x3565: b'\x11\xca\x9b', + -0x3564: b'\x11\xca\x9c', + -0x3563: b'\x11\xca\x9d', + -0x3562: b'\x11\xca\x9e', + -0x3561: b'\x11\xca\x9f', + -0x3560: b'\x11\xca\xa0', + -0x355f: b'\x11\xca\xa1', + -0x355e: b'\x11\xca\xa2', + -0x355d: b'\x11\xca\xa3', + -0x355c: b'\x11\xca\xa4', + -0x355b: b'\x11\xca\xa5', + -0x355a: b'\x11\xca\xa6', + -0x3559: b'\x11\xca\xa7', + -0x3558: b'\x11\xca\xa8', + -0x3557: b'\x11\xca\xa9', + -0x3556: b'\x11\xca\xaa', + -0x3555: b'\x11\xca\xab', + -0x3554: b'\x11\xca\xac', + -0x3553: b'\x11\xca\xad', + -0x3552: b'\x11\xca\xae', + -0x3551: b'\x11\xca\xaf', + -0x3550: b'\x11\xca\xb0', + -0x354f: b'\x11\xca\xb1', + -0x354e: b'\x11\xca\xb2', + -0x354d: b'\x11\xca\xb3', + -0x354c: b'\x11\xca\xb4', + -0x354b: b'\x11\xca\xb5', + -0x354a: b'\x11\xca\xb6', + -0x3549: b'\x11\xca\xb7', + -0x3548: b'\x11\xca\xb8', + -0x3547: b'\x11\xca\xb9', + -0x3546: b'\x11\xca\xba', + -0x3545: b'\x11\xca\xbb', + -0x3544: b'\x11\xca\xbc', + -0x3543: b'\x11\xca\xbd', + -0x3542: b'\x11\xca\xbe', + -0x3541: b'\x11\xca\xbf', + -0x3540: b'\x11\xca\xc0', + -0x353f: b'\x11\xca\xc1', + -0x353e: b'\x11\xca\xc2', + -0x353d: b'\x11\xca\xc3', + -0x353c: b'\x11\xca\xc4', + -0x353b: b'\x11\xca\xc5', + -0x353a: b'\x11\xca\xc6', + -0x3539: b'\x11\xca\xc7', + -0x3538: b'\x11\xca\xc8', + -0x3537: b'\x11\xca\xc9', + -0x3536: b'\x11\xca\xca', + -0x3535: b'\x11\xca\xcb', + -0x3534: b'\x11\xca\xcc', + -0x3533: b'\x11\xca\xcd', + -0x3532: b'\x11\xca\xce', + -0x3531: b'\x11\xca\xcf', + -0x3530: b'\x11\xca\xd0', + -0x352f: b'\x11\xca\xd1', + -0x352e: b'\x11\xca\xd2', + -0x352d: b'\x11\xca\xd3', + -0x352c: b'\x11\xca\xd4', + -0x352b: b'\x11\xca\xd5', + -0x352a: b'\x11\xca\xd6', + -0x3529: b'\x11\xca\xd7', + -0x3528: b'\x11\xca\xd8', + -0x3527: b'\x11\xca\xd9', + -0x3526: b'\x11\xca\xda', + -0x3525: b'\x11\xca\xdb', + -0x3524: b'\x11\xca\xdc', + -0x3523: b'\x11\xca\xdd', + -0x3522: b'\x11\xca\xde', + -0x3521: b'\x11\xca\xdf', + -0x3520: b'\x11\xca\xe0', + -0x351f: b'\x11\xca\xe1', + -0x351e: b'\x11\xca\xe2', + -0x351d: b'\x11\xca\xe3', + -0x351c: b'\x11\xca\xe4', + -0x351b: b'\x11\xca\xe5', + -0x351a: b'\x11\xca\xe6', + -0x3519: b'\x11\xca\xe7', + -0x3518: b'\x11\xca\xe8', + -0x3517: b'\x11\xca\xe9', + -0x3516: b'\x11\xca\xea', + -0x3515: b'\x11\xca\xeb', + -0x3514: b'\x11\xca\xec', + -0x3513: b'\x11\xca\xed', + -0x3512: b'\x11\xca\xee', + -0x3511: b'\x11\xca\xef', + -0x3510: b'\x11\xca\xf0', + -0x350f: b'\x11\xca\xf1', + -0x350e: b'\x11\xca\xf2', + -0x350d: b'\x11\xca\xf3', + -0x350c: b'\x11\xca\xf4', + -0x350b: b'\x11\xca\xf5', + -0x350a: b'\x11\xca\xf6', + -0x3509: b'\x11\xca\xf7', + -0x3508: b'\x11\xca\xf8', + -0x3507: b'\x11\xca\xf9', + -0x3506: b'\x11\xca\xfa', + -0x3505: b'\x11\xca\xfb', + -0x3504: b'\x11\xca\xfc', + -0x3503: b'\x11\xca\xfd', + -0x3502: b'\x11\xca\xfe', + -0x3501: b'\x11\xca\xff', + -0x3500: b'\x11\xcb\x00', + -0x34ff: b'\x11\xcb\x01', + -0x34fe: b'\x11\xcb\x02', + -0x34fd: b'\x11\xcb\x03', + -0x34fc: b'\x11\xcb\x04', + -0x34fb: b'\x11\xcb\x05', + -0x34fa: b'\x11\xcb\x06', + -0x34f9: b'\x11\xcb\x07', + -0x34f8: b'\x11\xcb\x08', + -0x34f7: b'\x11\xcb\t', + -0x34f6: b'\x11\xcb\n', + -0x34f5: b'\x11\xcb\x0b', + -0x34f4: b'\x11\xcb\x0c', + -0x34f3: b'\x11\xcb\r', + -0x34f2: b'\x11\xcb\x0e', + -0x34f1: b'\x11\xcb\x0f', + -0x34f0: b'\x11\xcb\x10', + -0x34ef: b'\x11\xcb\x11', + -0x34ee: b'\x11\xcb\x12', + -0x34ed: b'\x11\xcb\x13', + -0x34ec: b'\x11\xcb\x14', + -0x34eb: b'\x11\xcb\x15', + -0x34ea: b'\x11\xcb\x16', + -0x34e9: b'\x11\xcb\x17', + -0x34e8: b'\x11\xcb\x18', + -0x34e7: b'\x11\xcb\x19', + -0x34e6: b'\x11\xcb\x1a', + -0x34e5: b'\x11\xcb\x1b', + -0x34e4: b'\x11\xcb\x1c', + -0x34e3: b'\x11\xcb\x1d', + -0x34e2: b'\x11\xcb\x1e', + -0x34e1: b'\x11\xcb\x1f', + -0x34e0: b'\x11\xcb ', + -0x34df: b'\x11\xcb!', + -0x34de: b'\x11\xcb"', + -0x34dd: b'\x11\xcb#', + -0x34dc: b'\x11\xcb$', + -0x34db: b'\x11\xcb%', + -0x34da: b'\x11\xcb&', + -0x34d9: b"\x11\xcb'", + -0x34d8: b'\x11\xcb(', + -0x34d7: b'\x11\xcb)', + -0x34d6: b'\x11\xcb*', + -0x34d5: b'\x11\xcb+', + -0x34d4: b'\x11\xcb,', + -0x34d3: b'\x11\xcb-', + -0x34d2: b'\x11\xcb.', + -0x34d1: b'\x11\xcb/', + -0x34d0: b'\x11\xcb0', + -0x34cf: b'\x11\xcb1', + -0x34ce: b'\x11\xcb2', + -0x34cd: b'\x11\xcb3', + -0x34cc: b'\x11\xcb4', + -0x34cb: b'\x11\xcb5', + -0x34ca: b'\x11\xcb6', + -0x34c9: b'\x11\xcb7', + -0x34c8: b'\x11\xcb8', + -0x34c7: b'\x11\xcb9', + -0x34c6: b'\x11\xcb:', + -0x34c5: b'\x11\xcb;', + -0x34c4: b'\x11\xcb<', + -0x34c3: b'\x11\xcb=', + -0x34c2: b'\x11\xcb>', + -0x34c1: b'\x11\xcb?', + -0x34c0: b'\x11\xcb@', + -0x34bf: b'\x11\xcbA', + -0x34be: b'\x11\xcbB', + -0x34bd: b'\x11\xcbC', + -0x34bc: b'\x11\xcbD', + -0x34bb: b'\x11\xcbE', + -0x34ba: b'\x11\xcbF', + -0x34b9: b'\x11\xcbG', + -0x34b8: b'\x11\xcbH', + -0x34b7: b'\x11\xcbI', + -0x34b6: b'\x11\xcbJ', + -0x34b5: b'\x11\xcbK', + -0x34b4: b'\x11\xcbL', + -0x34b3: b'\x11\xcbM', + -0x34b2: b'\x11\xcbN', + -0x34b1: b'\x11\xcbO', + -0x34b0: b'\x11\xcbP', + -0x34af: b'\x11\xcbQ', + -0x34ae: b'\x11\xcbR', + -0x34ad: b'\x11\xcbS', + -0x34ac: b'\x11\xcbT', + -0x34ab: b'\x11\xcbU', + -0x34aa: b'\x11\xcbV', + -0x34a9: b'\x11\xcbW', + -0x34a8: b'\x11\xcbX', + -0x34a7: b'\x11\xcbY', + -0x34a6: b'\x11\xcbZ', + -0x34a5: b'\x11\xcb[', + -0x34a4: b'\x11\xcb\\', + -0x34a3: b'\x11\xcb]', + -0x34a2: b'\x11\xcb^', + -0x34a1: b'\x11\xcb_', + -0x34a0: b'\x11\xcb`', + -0x349f: b'\x11\xcba', + -0x349e: b'\x11\xcbb', + -0x349d: b'\x11\xcbc', + -0x349c: b'\x11\xcbd', + -0x349b: b'\x11\xcbe', + -0x349a: b'\x11\xcbf', + -0x3499: b'\x11\xcbg', + -0x3498: b'\x11\xcbh', + -0x3497: b'\x11\xcbi', + -0x3496: b'\x11\xcbj', + -0x3495: b'\x11\xcbk', + -0x3494: b'\x11\xcbl', + -0x3493: b'\x11\xcbm', + -0x3492: b'\x11\xcbn', + -0x3491: b'\x11\xcbo', + -0x3490: b'\x11\xcbp', + -0x348f: b'\x11\xcbq', + -0x348e: b'\x11\xcbr', + -0x348d: b'\x11\xcbs', + -0x348c: b'\x11\xcbt', + -0x348b: b'\x11\xcbu', + -0x348a: b'\x11\xcbv', + -0x3489: b'\x11\xcbw', + -0x3488: b'\x11\xcbx', + -0x3487: b'\x11\xcby', + -0x3486: b'\x11\xcbz', + -0x3485: b'\x11\xcb{', + -0x3484: b'\x11\xcb|', + -0x3483: b'\x11\xcb}', + -0x3482: b'\x11\xcb~', + -0x3481: b'\x11\xcb\x7f', + -0x3480: b'\x11\xcb\x80', + -0x347f: b'\x11\xcb\x81', + -0x347e: b'\x11\xcb\x82', + -0x347d: b'\x11\xcb\x83', + -0x347c: b'\x11\xcb\x84', + -0x347b: b'\x11\xcb\x85', + -0x347a: b'\x11\xcb\x86', + -0x3479: b'\x11\xcb\x87', + -0x3478: b'\x11\xcb\x88', + -0x3477: b'\x11\xcb\x89', + -0x3476: b'\x11\xcb\x8a', + -0x3475: b'\x11\xcb\x8b', + -0x3474: b'\x11\xcb\x8c', + -0x3473: b'\x11\xcb\x8d', + -0x3472: b'\x11\xcb\x8e', + -0x3471: b'\x11\xcb\x8f', + -0x3470: b'\x11\xcb\x90', + -0x346f: b'\x11\xcb\x91', + -0x346e: b'\x11\xcb\x92', + -0x346d: b'\x11\xcb\x93', + -0x346c: b'\x11\xcb\x94', + -0x346b: b'\x11\xcb\x95', + -0x346a: b'\x11\xcb\x96', + -0x3469: b'\x11\xcb\x97', + -0x3468: b'\x11\xcb\x98', + -0x3467: b'\x11\xcb\x99', + -0x3466: b'\x11\xcb\x9a', + -0x3465: b'\x11\xcb\x9b', + -0x3464: b'\x11\xcb\x9c', + -0x3463: b'\x11\xcb\x9d', + -0x3462: b'\x11\xcb\x9e', + -0x3461: b'\x11\xcb\x9f', + -0x3460: b'\x11\xcb\xa0', + -0x345f: b'\x11\xcb\xa1', + -0x345e: b'\x11\xcb\xa2', + -0x345d: b'\x11\xcb\xa3', + -0x345c: b'\x11\xcb\xa4', + -0x345b: b'\x11\xcb\xa5', + -0x345a: b'\x11\xcb\xa6', + -0x3459: b'\x11\xcb\xa7', + -0x3458: b'\x11\xcb\xa8', + -0x3457: b'\x11\xcb\xa9', + -0x3456: b'\x11\xcb\xaa', + -0x3455: b'\x11\xcb\xab', + -0x3454: b'\x11\xcb\xac', + -0x3453: b'\x11\xcb\xad', + -0x3452: b'\x11\xcb\xae', + -0x3451: b'\x11\xcb\xaf', + -0x3450: b'\x11\xcb\xb0', + -0x344f: b'\x11\xcb\xb1', + -0x344e: b'\x11\xcb\xb2', + -0x344d: b'\x11\xcb\xb3', + -0x344c: b'\x11\xcb\xb4', + -0x344b: b'\x11\xcb\xb5', + -0x344a: b'\x11\xcb\xb6', + -0x3449: b'\x11\xcb\xb7', + -0x3448: b'\x11\xcb\xb8', + -0x3447: b'\x11\xcb\xb9', + -0x3446: b'\x11\xcb\xba', + -0x3445: b'\x11\xcb\xbb', + -0x3444: b'\x11\xcb\xbc', + -0x3443: b'\x11\xcb\xbd', + -0x3442: b'\x11\xcb\xbe', + -0x3441: b'\x11\xcb\xbf', + -0x3440: b'\x11\xcb\xc0', + -0x343f: b'\x11\xcb\xc1', + -0x343e: b'\x11\xcb\xc2', + -0x343d: b'\x11\xcb\xc3', + -0x343c: b'\x11\xcb\xc4', + -0x343b: b'\x11\xcb\xc5', + -0x343a: b'\x11\xcb\xc6', + -0x3439: b'\x11\xcb\xc7', + -0x3438: b'\x11\xcb\xc8', + -0x3437: b'\x11\xcb\xc9', + -0x3436: b'\x11\xcb\xca', + -0x3435: b'\x11\xcb\xcb', + -0x3434: b'\x11\xcb\xcc', + -0x3433: b'\x11\xcb\xcd', + -0x3432: b'\x11\xcb\xce', + -0x3431: b'\x11\xcb\xcf', + -0x3430: b'\x11\xcb\xd0', + -0x342f: b'\x11\xcb\xd1', + -0x342e: b'\x11\xcb\xd2', + -0x342d: b'\x11\xcb\xd3', + -0x342c: b'\x11\xcb\xd4', + -0x342b: b'\x11\xcb\xd5', + -0x342a: b'\x11\xcb\xd6', + -0x3429: b'\x11\xcb\xd7', + -0x3428: b'\x11\xcb\xd8', + -0x3427: b'\x11\xcb\xd9', + -0x3426: b'\x11\xcb\xda', + -0x3425: b'\x11\xcb\xdb', + -0x3424: b'\x11\xcb\xdc', + -0x3423: b'\x11\xcb\xdd', + -0x3422: b'\x11\xcb\xde', + -0x3421: b'\x11\xcb\xdf', + -0x3420: b'\x11\xcb\xe0', + -0x341f: b'\x11\xcb\xe1', + -0x341e: b'\x11\xcb\xe2', + -0x341d: b'\x11\xcb\xe3', + -0x341c: b'\x11\xcb\xe4', + -0x341b: b'\x11\xcb\xe5', + -0x341a: b'\x11\xcb\xe6', + -0x3419: b'\x11\xcb\xe7', + -0x3418: b'\x11\xcb\xe8', + -0x3417: b'\x11\xcb\xe9', + -0x3416: b'\x11\xcb\xea', + -0x3415: b'\x11\xcb\xeb', + -0x3414: b'\x11\xcb\xec', + -0x3413: b'\x11\xcb\xed', + -0x3412: b'\x11\xcb\xee', + -0x3411: b'\x11\xcb\xef', + -0x3410: b'\x11\xcb\xf0', + -0x340f: b'\x11\xcb\xf1', + -0x340e: b'\x11\xcb\xf2', + -0x340d: b'\x11\xcb\xf3', + -0x340c: b'\x11\xcb\xf4', + -0x340b: b'\x11\xcb\xf5', + -0x340a: b'\x11\xcb\xf6', + -0x3409: b'\x11\xcb\xf7', + -0x3408: b'\x11\xcb\xf8', + -0x3407: b'\x11\xcb\xf9', + -0x3406: b'\x11\xcb\xfa', + -0x3405: b'\x11\xcb\xfb', + -0x3404: b'\x11\xcb\xfc', + -0x3403: b'\x11\xcb\xfd', + -0x3402: b'\x11\xcb\xfe', + -0x3401: b'\x11\xcb\xff', + -0x3400: b'\x11\xcc\x00', + -0x33ff: b'\x11\xcc\x01', + -0x33fe: b'\x11\xcc\x02', + -0x33fd: b'\x11\xcc\x03', + -0x33fc: b'\x11\xcc\x04', + -0x33fb: b'\x11\xcc\x05', + -0x33fa: b'\x11\xcc\x06', + -0x33f9: b'\x11\xcc\x07', + -0x33f8: b'\x11\xcc\x08', + -0x33f7: b'\x11\xcc\t', + -0x33f6: b'\x11\xcc\n', + -0x33f5: b'\x11\xcc\x0b', + -0x33f4: b'\x11\xcc\x0c', + -0x33f3: b'\x11\xcc\r', + -0x33f2: b'\x11\xcc\x0e', + -0x33f1: b'\x11\xcc\x0f', + -0x33f0: b'\x11\xcc\x10', + -0x33ef: b'\x11\xcc\x11', + -0x33ee: b'\x11\xcc\x12', + -0x33ed: b'\x11\xcc\x13', + -0x33ec: b'\x11\xcc\x14', + -0x33eb: b'\x11\xcc\x15', + -0x33ea: b'\x11\xcc\x16', + -0x33e9: b'\x11\xcc\x17', + -0x33e8: b'\x11\xcc\x18', + -0x33e7: b'\x11\xcc\x19', + -0x33e6: b'\x11\xcc\x1a', + -0x33e5: b'\x11\xcc\x1b', + -0x33e4: b'\x11\xcc\x1c', + -0x33e3: b'\x11\xcc\x1d', + -0x33e2: b'\x11\xcc\x1e', + -0x33e1: b'\x11\xcc\x1f', + -0x33e0: b'\x11\xcc ', + -0x33df: b'\x11\xcc!', + -0x33de: b'\x11\xcc"', + -0x33dd: b'\x11\xcc#', + -0x33dc: b'\x11\xcc$', + -0x33db: b'\x11\xcc%', + -0x33da: b'\x11\xcc&', + -0x33d9: b"\x11\xcc'", + -0x33d8: b'\x11\xcc(', + -0x33d7: b'\x11\xcc)', + -0x33d6: b'\x11\xcc*', + -0x33d5: b'\x11\xcc+', + -0x33d4: b'\x11\xcc,', + -0x33d3: b'\x11\xcc-', + -0x33d2: b'\x11\xcc.', + -0x33d1: b'\x11\xcc/', + -0x33d0: b'\x11\xcc0', + -0x33cf: b'\x11\xcc1', + -0x33ce: b'\x11\xcc2', + -0x33cd: b'\x11\xcc3', + -0x33cc: b'\x11\xcc4', + -0x33cb: b'\x11\xcc5', + -0x33ca: b'\x11\xcc6', + -0x33c9: b'\x11\xcc7', + -0x33c8: b'\x11\xcc8', + -0x33c7: b'\x11\xcc9', + -0x33c6: b'\x11\xcc:', + -0x33c5: b'\x11\xcc;', + -0x33c4: b'\x11\xcc<', + -0x33c3: b'\x11\xcc=', + -0x33c2: b'\x11\xcc>', + -0x33c1: b'\x11\xcc?', + -0x33c0: b'\x11\xcc@', + -0x33bf: b'\x11\xccA', + -0x33be: b'\x11\xccB', + -0x33bd: b'\x11\xccC', + -0x33bc: b'\x11\xccD', + -0x33bb: b'\x11\xccE', + -0x33ba: b'\x11\xccF', + -0x33b9: b'\x11\xccG', + -0x33b8: b'\x11\xccH', + -0x33b7: b'\x11\xccI', + -0x33b6: b'\x11\xccJ', + -0x33b5: b'\x11\xccK', + -0x33b4: b'\x11\xccL', + -0x33b3: b'\x11\xccM', + -0x33b2: b'\x11\xccN', + -0x33b1: b'\x11\xccO', + -0x33b0: b'\x11\xccP', + -0x33af: b'\x11\xccQ', + -0x33ae: b'\x11\xccR', + -0x33ad: b'\x11\xccS', + -0x33ac: b'\x11\xccT', + -0x33ab: b'\x11\xccU', + -0x33aa: b'\x11\xccV', + -0x33a9: b'\x11\xccW', + -0x33a8: b'\x11\xccX', + -0x33a7: b'\x11\xccY', + -0x33a6: b'\x11\xccZ', + -0x33a5: b'\x11\xcc[', + -0x33a4: b'\x11\xcc\\', + -0x33a3: b'\x11\xcc]', + -0x33a2: b'\x11\xcc^', + -0x33a1: b'\x11\xcc_', + -0x33a0: b'\x11\xcc`', + -0x339f: b'\x11\xcca', + -0x339e: b'\x11\xccb', + -0x339d: b'\x11\xccc', + -0x339c: b'\x11\xccd', + -0x339b: b'\x11\xcce', + -0x339a: b'\x11\xccf', + -0x3399: b'\x11\xccg', + -0x3398: b'\x11\xcch', + -0x3397: b'\x11\xcci', + -0x3396: b'\x11\xccj', + -0x3395: b'\x11\xcck', + -0x3394: b'\x11\xccl', + -0x3393: b'\x11\xccm', + -0x3392: b'\x11\xccn', + -0x3391: b'\x11\xcco', + -0x3390: b'\x11\xccp', + -0x338f: b'\x11\xccq', + -0x338e: b'\x11\xccr', + -0x338d: b'\x11\xccs', + -0x338c: b'\x11\xcct', + -0x338b: b'\x11\xccu', + -0x338a: b'\x11\xccv', + -0x3389: b'\x11\xccw', + -0x3388: b'\x11\xccx', + -0x3387: b'\x11\xccy', + -0x3386: b'\x11\xccz', + -0x3385: b'\x11\xcc{', + -0x3384: b'\x11\xcc|', + -0x3383: b'\x11\xcc}', + -0x3382: b'\x11\xcc~', + -0x3381: b'\x11\xcc\x7f', + -0x3380: b'\x11\xcc\x80', + -0x337f: b'\x11\xcc\x81', + -0x337e: b'\x11\xcc\x82', + -0x337d: b'\x11\xcc\x83', + -0x337c: b'\x11\xcc\x84', + -0x337b: b'\x11\xcc\x85', + -0x337a: b'\x11\xcc\x86', + -0x3379: b'\x11\xcc\x87', + -0x3378: b'\x11\xcc\x88', + -0x3377: b'\x11\xcc\x89', + -0x3376: b'\x11\xcc\x8a', + -0x3375: b'\x11\xcc\x8b', + -0x3374: b'\x11\xcc\x8c', + -0x3373: b'\x11\xcc\x8d', + -0x3372: b'\x11\xcc\x8e', + -0x3371: b'\x11\xcc\x8f', + -0x3370: b'\x11\xcc\x90', + -0x336f: b'\x11\xcc\x91', + -0x336e: b'\x11\xcc\x92', + -0x336d: b'\x11\xcc\x93', + -0x336c: b'\x11\xcc\x94', + -0x336b: b'\x11\xcc\x95', + -0x336a: b'\x11\xcc\x96', + -0x3369: b'\x11\xcc\x97', + -0x3368: b'\x11\xcc\x98', + -0x3367: b'\x11\xcc\x99', + -0x3366: b'\x11\xcc\x9a', + -0x3365: b'\x11\xcc\x9b', + -0x3364: b'\x11\xcc\x9c', + -0x3363: b'\x11\xcc\x9d', + -0x3362: b'\x11\xcc\x9e', + -0x3361: b'\x11\xcc\x9f', + -0x3360: b'\x11\xcc\xa0', + -0x335f: b'\x11\xcc\xa1', + -0x335e: b'\x11\xcc\xa2', + -0x335d: b'\x11\xcc\xa3', + -0x335c: b'\x11\xcc\xa4', + -0x335b: b'\x11\xcc\xa5', + -0x335a: b'\x11\xcc\xa6', + -0x3359: b'\x11\xcc\xa7', + -0x3358: b'\x11\xcc\xa8', + -0x3357: b'\x11\xcc\xa9', + -0x3356: b'\x11\xcc\xaa', + -0x3355: b'\x11\xcc\xab', + -0x3354: b'\x11\xcc\xac', + -0x3353: b'\x11\xcc\xad', + -0x3352: b'\x11\xcc\xae', + -0x3351: b'\x11\xcc\xaf', + -0x3350: b'\x11\xcc\xb0', + -0x334f: b'\x11\xcc\xb1', + -0x334e: b'\x11\xcc\xb2', + -0x334d: b'\x11\xcc\xb3', + -0x334c: b'\x11\xcc\xb4', + -0x334b: b'\x11\xcc\xb5', + -0x334a: b'\x11\xcc\xb6', + -0x3349: b'\x11\xcc\xb7', + -0x3348: b'\x11\xcc\xb8', + -0x3347: b'\x11\xcc\xb9', + -0x3346: b'\x11\xcc\xba', + -0x3345: b'\x11\xcc\xbb', + -0x3344: b'\x11\xcc\xbc', + -0x3343: b'\x11\xcc\xbd', + -0x3342: b'\x11\xcc\xbe', + -0x3341: b'\x11\xcc\xbf', + -0x3340: b'\x11\xcc\xc0', + -0x333f: b'\x11\xcc\xc1', + -0x333e: b'\x11\xcc\xc2', + -0x333d: b'\x11\xcc\xc3', + -0x333c: b'\x11\xcc\xc4', + -0x333b: b'\x11\xcc\xc5', + -0x333a: b'\x11\xcc\xc6', + -0x3339: b'\x11\xcc\xc7', + -0x3338: b'\x11\xcc\xc8', + -0x3337: b'\x11\xcc\xc9', + -0x3336: b'\x11\xcc\xca', + -0x3335: b'\x11\xcc\xcb', + -0x3334: b'\x11\xcc\xcc', + -0x3333: b'\x11\xcc\xcd', + -0x3332: b'\x11\xcc\xce', + -0x3331: b'\x11\xcc\xcf', + -0x3330: b'\x11\xcc\xd0', + -0x332f: b'\x11\xcc\xd1', + -0x332e: b'\x11\xcc\xd2', + -0x332d: b'\x11\xcc\xd3', + -0x332c: b'\x11\xcc\xd4', + -0x332b: b'\x11\xcc\xd5', + -0x332a: b'\x11\xcc\xd6', + -0x3329: b'\x11\xcc\xd7', + -0x3328: b'\x11\xcc\xd8', + -0x3327: b'\x11\xcc\xd9', + -0x3326: b'\x11\xcc\xda', + -0x3325: b'\x11\xcc\xdb', + -0x3324: b'\x11\xcc\xdc', + -0x3323: b'\x11\xcc\xdd', + -0x3322: b'\x11\xcc\xde', + -0x3321: b'\x11\xcc\xdf', + -0x3320: b'\x11\xcc\xe0', + -0x331f: b'\x11\xcc\xe1', + -0x331e: b'\x11\xcc\xe2', + -0x331d: b'\x11\xcc\xe3', + -0x331c: b'\x11\xcc\xe4', + -0x331b: b'\x11\xcc\xe5', + -0x331a: b'\x11\xcc\xe6', + -0x3319: b'\x11\xcc\xe7', + -0x3318: b'\x11\xcc\xe8', + -0x3317: b'\x11\xcc\xe9', + -0x3316: b'\x11\xcc\xea', + -0x3315: b'\x11\xcc\xeb', + -0x3314: b'\x11\xcc\xec', + -0x3313: b'\x11\xcc\xed', + -0x3312: b'\x11\xcc\xee', + -0x3311: b'\x11\xcc\xef', + -0x3310: b'\x11\xcc\xf0', + -0x330f: b'\x11\xcc\xf1', + -0x330e: b'\x11\xcc\xf2', + -0x330d: b'\x11\xcc\xf3', + -0x330c: b'\x11\xcc\xf4', + -0x330b: b'\x11\xcc\xf5', + -0x330a: b'\x11\xcc\xf6', + -0x3309: b'\x11\xcc\xf7', + -0x3308: b'\x11\xcc\xf8', + -0x3307: b'\x11\xcc\xf9', + -0x3306: b'\x11\xcc\xfa', + -0x3305: b'\x11\xcc\xfb', + -0x3304: b'\x11\xcc\xfc', + -0x3303: b'\x11\xcc\xfd', + -0x3302: b'\x11\xcc\xfe', + -0x3301: b'\x11\xcc\xff', + -0x3300: b'\x11\xcd\x00', + -0x32ff: b'\x11\xcd\x01', + -0x32fe: b'\x11\xcd\x02', + -0x32fd: b'\x11\xcd\x03', + -0x32fc: b'\x11\xcd\x04', + -0x32fb: b'\x11\xcd\x05', + -0x32fa: b'\x11\xcd\x06', + -0x32f9: b'\x11\xcd\x07', + -0x32f8: b'\x11\xcd\x08', + -0x32f7: b'\x11\xcd\t', + -0x32f6: b'\x11\xcd\n', + -0x32f5: b'\x11\xcd\x0b', + -0x32f4: b'\x11\xcd\x0c', + -0x32f3: b'\x11\xcd\r', + -0x32f2: b'\x11\xcd\x0e', + -0x32f1: b'\x11\xcd\x0f', + -0x32f0: b'\x11\xcd\x10', + -0x32ef: b'\x11\xcd\x11', + -0x32ee: b'\x11\xcd\x12', + -0x32ed: b'\x11\xcd\x13', + -0x32ec: b'\x11\xcd\x14', + -0x32eb: b'\x11\xcd\x15', + -0x32ea: b'\x11\xcd\x16', + -0x32e9: b'\x11\xcd\x17', + -0x32e8: b'\x11\xcd\x18', + -0x32e7: b'\x11\xcd\x19', + -0x32e6: b'\x11\xcd\x1a', + -0x32e5: b'\x11\xcd\x1b', + -0x32e4: b'\x11\xcd\x1c', + -0x32e3: b'\x11\xcd\x1d', + -0x32e2: b'\x11\xcd\x1e', + -0x32e1: b'\x11\xcd\x1f', + -0x32e0: b'\x11\xcd ', + -0x32df: b'\x11\xcd!', + -0x32de: b'\x11\xcd"', + -0x32dd: b'\x11\xcd#', + -0x32dc: b'\x11\xcd$', + -0x32db: b'\x11\xcd%', + -0x32da: b'\x11\xcd&', + -0x32d9: b"\x11\xcd'", + -0x32d8: b'\x11\xcd(', + -0x32d7: b'\x11\xcd)', + -0x32d6: b'\x11\xcd*', + -0x32d5: b'\x11\xcd+', + -0x32d4: b'\x11\xcd,', + -0x32d3: b'\x11\xcd-', + -0x32d2: b'\x11\xcd.', + -0x32d1: b'\x11\xcd/', + -0x32d0: b'\x11\xcd0', + -0x32cf: b'\x11\xcd1', + -0x32ce: b'\x11\xcd2', + -0x32cd: b'\x11\xcd3', + -0x32cc: b'\x11\xcd4', + -0x32cb: b'\x11\xcd5', + -0x32ca: b'\x11\xcd6', + -0x32c9: b'\x11\xcd7', + -0x32c8: b'\x11\xcd8', + -0x32c7: b'\x11\xcd9', + -0x32c6: b'\x11\xcd:', + -0x32c5: b'\x11\xcd;', + -0x32c4: b'\x11\xcd<', + -0x32c3: b'\x11\xcd=', + -0x32c2: b'\x11\xcd>', + -0x32c1: b'\x11\xcd?', + -0x32c0: b'\x11\xcd@', + -0x32bf: b'\x11\xcdA', + -0x32be: b'\x11\xcdB', + -0x32bd: b'\x11\xcdC', + -0x32bc: b'\x11\xcdD', + -0x32bb: b'\x11\xcdE', + -0x32ba: b'\x11\xcdF', + -0x32b9: b'\x11\xcdG', + -0x32b8: b'\x11\xcdH', + -0x32b7: b'\x11\xcdI', + -0x32b6: b'\x11\xcdJ', + -0x32b5: b'\x11\xcdK', + -0x32b4: b'\x11\xcdL', + -0x32b3: b'\x11\xcdM', + -0x32b2: b'\x11\xcdN', + -0x32b1: b'\x11\xcdO', + -0x32b0: b'\x11\xcdP', + -0x32af: b'\x11\xcdQ', + -0x32ae: b'\x11\xcdR', + -0x32ad: b'\x11\xcdS', + -0x32ac: b'\x11\xcdT', + -0x32ab: b'\x11\xcdU', + -0x32aa: b'\x11\xcdV', + -0x32a9: b'\x11\xcdW', + -0x32a8: b'\x11\xcdX', + -0x32a7: b'\x11\xcdY', + -0x32a6: b'\x11\xcdZ', + -0x32a5: b'\x11\xcd[', + -0x32a4: b'\x11\xcd\\', + -0x32a3: b'\x11\xcd]', + -0x32a2: b'\x11\xcd^', + -0x32a1: b'\x11\xcd_', + -0x32a0: b'\x11\xcd`', + -0x329f: b'\x11\xcda', + -0x329e: b'\x11\xcdb', + -0x329d: b'\x11\xcdc', + -0x329c: b'\x11\xcdd', + -0x329b: b'\x11\xcde', + -0x329a: b'\x11\xcdf', + -0x3299: b'\x11\xcdg', + -0x3298: b'\x11\xcdh', + -0x3297: b'\x11\xcdi', + -0x3296: b'\x11\xcdj', + -0x3295: b'\x11\xcdk', + -0x3294: b'\x11\xcdl', + -0x3293: b'\x11\xcdm', + -0x3292: b'\x11\xcdn', + -0x3291: b'\x11\xcdo', + -0x3290: b'\x11\xcdp', + -0x328f: b'\x11\xcdq', + -0x328e: b'\x11\xcdr', + -0x328d: b'\x11\xcds', + -0x328c: b'\x11\xcdt', + -0x328b: b'\x11\xcdu', + -0x328a: b'\x11\xcdv', + -0x3289: b'\x11\xcdw', + -0x3288: b'\x11\xcdx', + -0x3287: b'\x11\xcdy', + -0x3286: b'\x11\xcdz', + -0x3285: b'\x11\xcd{', + -0x3284: b'\x11\xcd|', + -0x3283: b'\x11\xcd}', + -0x3282: b'\x11\xcd~', + -0x3281: b'\x11\xcd\x7f', + -0x3280: b'\x11\xcd\x80', + -0x327f: b'\x11\xcd\x81', + -0x327e: b'\x11\xcd\x82', + -0x327d: b'\x11\xcd\x83', + -0x327c: b'\x11\xcd\x84', + -0x327b: b'\x11\xcd\x85', + -0x327a: b'\x11\xcd\x86', + -0x3279: b'\x11\xcd\x87', + -0x3278: b'\x11\xcd\x88', + -0x3277: b'\x11\xcd\x89', + -0x3276: b'\x11\xcd\x8a', + -0x3275: b'\x11\xcd\x8b', + -0x3274: b'\x11\xcd\x8c', + -0x3273: b'\x11\xcd\x8d', + -0x3272: b'\x11\xcd\x8e', + -0x3271: b'\x11\xcd\x8f', + -0x3270: b'\x11\xcd\x90', + -0x326f: b'\x11\xcd\x91', + -0x326e: b'\x11\xcd\x92', + -0x326d: b'\x11\xcd\x93', + -0x326c: b'\x11\xcd\x94', + -0x326b: b'\x11\xcd\x95', + -0x326a: b'\x11\xcd\x96', + -0x3269: b'\x11\xcd\x97', + -0x3268: b'\x11\xcd\x98', + -0x3267: b'\x11\xcd\x99', + -0x3266: b'\x11\xcd\x9a', + -0x3265: b'\x11\xcd\x9b', + -0x3264: b'\x11\xcd\x9c', + -0x3263: b'\x11\xcd\x9d', + -0x3262: b'\x11\xcd\x9e', + -0x3261: b'\x11\xcd\x9f', + -0x3260: b'\x11\xcd\xa0', + -0x325f: b'\x11\xcd\xa1', + -0x325e: b'\x11\xcd\xa2', + -0x325d: b'\x11\xcd\xa3', + -0x325c: b'\x11\xcd\xa4', + -0x325b: b'\x11\xcd\xa5', + -0x325a: b'\x11\xcd\xa6', + -0x3259: b'\x11\xcd\xa7', + -0x3258: b'\x11\xcd\xa8', + -0x3257: b'\x11\xcd\xa9', + -0x3256: b'\x11\xcd\xaa', + -0x3255: b'\x11\xcd\xab', + -0x3254: b'\x11\xcd\xac', + -0x3253: b'\x11\xcd\xad', + -0x3252: b'\x11\xcd\xae', + -0x3251: b'\x11\xcd\xaf', + -0x3250: b'\x11\xcd\xb0', + -0x324f: b'\x11\xcd\xb1', + -0x324e: b'\x11\xcd\xb2', + -0x324d: b'\x11\xcd\xb3', + -0x324c: b'\x11\xcd\xb4', + -0x324b: b'\x11\xcd\xb5', + -0x324a: b'\x11\xcd\xb6', + -0x3249: b'\x11\xcd\xb7', + -0x3248: b'\x11\xcd\xb8', + -0x3247: b'\x11\xcd\xb9', + -0x3246: b'\x11\xcd\xba', + -0x3245: b'\x11\xcd\xbb', + -0x3244: b'\x11\xcd\xbc', + -0x3243: b'\x11\xcd\xbd', + -0x3242: b'\x11\xcd\xbe', + -0x3241: b'\x11\xcd\xbf', + -0x3240: b'\x11\xcd\xc0', + -0x323f: b'\x11\xcd\xc1', + -0x323e: b'\x11\xcd\xc2', + -0x323d: b'\x11\xcd\xc3', + -0x323c: b'\x11\xcd\xc4', + -0x323b: b'\x11\xcd\xc5', + -0x323a: b'\x11\xcd\xc6', + -0x3239: b'\x11\xcd\xc7', + -0x3238: b'\x11\xcd\xc8', + -0x3237: b'\x11\xcd\xc9', + -0x3236: b'\x11\xcd\xca', + -0x3235: b'\x11\xcd\xcb', + -0x3234: b'\x11\xcd\xcc', + -0x3233: b'\x11\xcd\xcd', + -0x3232: b'\x11\xcd\xce', + -0x3231: b'\x11\xcd\xcf', + -0x3230: b'\x11\xcd\xd0', + -0x322f: b'\x11\xcd\xd1', + -0x322e: b'\x11\xcd\xd2', + -0x322d: b'\x11\xcd\xd3', + -0x322c: b'\x11\xcd\xd4', + -0x322b: b'\x11\xcd\xd5', + -0x322a: b'\x11\xcd\xd6', + -0x3229: b'\x11\xcd\xd7', + -0x3228: b'\x11\xcd\xd8', + -0x3227: b'\x11\xcd\xd9', + -0x3226: b'\x11\xcd\xda', + -0x3225: b'\x11\xcd\xdb', + -0x3224: b'\x11\xcd\xdc', + -0x3223: b'\x11\xcd\xdd', + -0x3222: b'\x11\xcd\xde', + -0x3221: b'\x11\xcd\xdf', + -0x3220: b'\x11\xcd\xe0', + -0x321f: b'\x11\xcd\xe1', + -0x321e: b'\x11\xcd\xe2', + -0x321d: b'\x11\xcd\xe3', + -0x321c: b'\x11\xcd\xe4', + -0x321b: b'\x11\xcd\xe5', + -0x321a: b'\x11\xcd\xe6', + -0x3219: b'\x11\xcd\xe7', + -0x3218: b'\x11\xcd\xe8', + -0x3217: b'\x11\xcd\xe9', + -0x3216: b'\x11\xcd\xea', + -0x3215: b'\x11\xcd\xeb', + -0x3214: b'\x11\xcd\xec', + -0x3213: b'\x11\xcd\xed', + -0x3212: b'\x11\xcd\xee', + -0x3211: b'\x11\xcd\xef', + -0x3210: b'\x11\xcd\xf0', + -0x320f: b'\x11\xcd\xf1', + -0x320e: b'\x11\xcd\xf2', + -0x320d: b'\x11\xcd\xf3', + -0x320c: b'\x11\xcd\xf4', + -0x320b: b'\x11\xcd\xf5', + -0x320a: b'\x11\xcd\xf6', + -0x3209: b'\x11\xcd\xf7', + -0x3208: b'\x11\xcd\xf8', + -0x3207: b'\x11\xcd\xf9', + -0x3206: b'\x11\xcd\xfa', + -0x3205: b'\x11\xcd\xfb', + -0x3204: b'\x11\xcd\xfc', + -0x3203: b'\x11\xcd\xfd', + -0x3202: b'\x11\xcd\xfe', + -0x3201: b'\x11\xcd\xff', + -0x3200: b'\x11\xce\x00', + -0x31ff: b'\x11\xce\x01', + -0x31fe: b'\x11\xce\x02', + -0x31fd: b'\x11\xce\x03', + -0x31fc: b'\x11\xce\x04', + -0x31fb: b'\x11\xce\x05', + -0x31fa: b'\x11\xce\x06', + -0x31f9: b'\x11\xce\x07', + -0x31f8: b'\x11\xce\x08', + -0x31f7: b'\x11\xce\t', + -0x31f6: b'\x11\xce\n', + -0x31f5: b'\x11\xce\x0b', + -0x31f4: b'\x11\xce\x0c', + -0x31f3: b'\x11\xce\r', + -0x31f2: b'\x11\xce\x0e', + -0x31f1: b'\x11\xce\x0f', + -0x31f0: b'\x11\xce\x10', + -0x31ef: b'\x11\xce\x11', + -0x31ee: b'\x11\xce\x12', + -0x31ed: b'\x11\xce\x13', + -0x31ec: b'\x11\xce\x14', + -0x31eb: b'\x11\xce\x15', + -0x31ea: b'\x11\xce\x16', + -0x31e9: b'\x11\xce\x17', + -0x31e8: b'\x11\xce\x18', + -0x31e7: b'\x11\xce\x19', + -0x31e6: b'\x11\xce\x1a', + -0x31e5: b'\x11\xce\x1b', + -0x31e4: b'\x11\xce\x1c', + -0x31e3: b'\x11\xce\x1d', + -0x31e2: b'\x11\xce\x1e', + -0x31e1: b'\x11\xce\x1f', + -0x31e0: b'\x11\xce ', + -0x31df: b'\x11\xce!', + -0x31de: b'\x11\xce"', + -0x31dd: b'\x11\xce#', + -0x31dc: b'\x11\xce$', + -0x31db: b'\x11\xce%', + -0x31da: b'\x11\xce&', + -0x31d9: b"\x11\xce'", + -0x31d8: b'\x11\xce(', + -0x31d7: b'\x11\xce)', + -0x31d6: b'\x11\xce*', + -0x31d5: b'\x11\xce+', + -0x31d4: b'\x11\xce,', + -0x31d3: b'\x11\xce-', + -0x31d2: b'\x11\xce.', + -0x31d1: b'\x11\xce/', + -0x31d0: b'\x11\xce0', + -0x31cf: b'\x11\xce1', + -0x31ce: b'\x11\xce2', + -0x31cd: b'\x11\xce3', + -0x31cc: b'\x11\xce4', + -0x31cb: b'\x11\xce5', + -0x31ca: b'\x11\xce6', + -0x31c9: b'\x11\xce7', + -0x31c8: b'\x11\xce8', + -0x31c7: b'\x11\xce9', + -0x31c6: b'\x11\xce:', + -0x31c5: b'\x11\xce;', + -0x31c4: b'\x11\xce<', + -0x31c3: b'\x11\xce=', + -0x31c2: b'\x11\xce>', + -0x31c1: b'\x11\xce?', + -0x31c0: b'\x11\xce@', + -0x31bf: b'\x11\xceA', + -0x31be: b'\x11\xceB', + -0x31bd: b'\x11\xceC', + -0x31bc: b'\x11\xceD', + -0x31bb: b'\x11\xceE', + -0x31ba: b'\x11\xceF', + -0x31b9: b'\x11\xceG', + -0x31b8: b'\x11\xceH', + -0x31b7: b'\x11\xceI', + -0x31b6: b'\x11\xceJ', + -0x31b5: b'\x11\xceK', + -0x31b4: b'\x11\xceL', + -0x31b3: b'\x11\xceM', + -0x31b2: b'\x11\xceN', + -0x31b1: b'\x11\xceO', + -0x31b0: b'\x11\xceP', + -0x31af: b'\x11\xceQ', + -0x31ae: b'\x11\xceR', + -0x31ad: b'\x11\xceS', + -0x31ac: b'\x11\xceT', + -0x31ab: b'\x11\xceU', + -0x31aa: b'\x11\xceV', + -0x31a9: b'\x11\xceW', + -0x31a8: b'\x11\xceX', + -0x31a7: b'\x11\xceY', + -0x31a6: b'\x11\xceZ', + -0x31a5: b'\x11\xce[', + -0x31a4: b'\x11\xce\\', + -0x31a3: b'\x11\xce]', + -0x31a2: b'\x11\xce^', + -0x31a1: b'\x11\xce_', + -0x31a0: b'\x11\xce`', + -0x319f: b'\x11\xcea', + -0x319e: b'\x11\xceb', + -0x319d: b'\x11\xcec', + -0x319c: b'\x11\xced', + -0x319b: b'\x11\xcee', + -0x319a: b'\x11\xcef', + -0x3199: b'\x11\xceg', + -0x3198: b'\x11\xceh', + -0x3197: b'\x11\xcei', + -0x3196: b'\x11\xcej', + -0x3195: b'\x11\xcek', + -0x3194: b'\x11\xcel', + -0x3193: b'\x11\xcem', + -0x3192: b'\x11\xcen', + -0x3191: b'\x11\xceo', + -0x3190: b'\x11\xcep', + -0x318f: b'\x11\xceq', + -0x318e: b'\x11\xcer', + -0x318d: b'\x11\xces', + -0x318c: b'\x11\xcet', + -0x318b: b'\x11\xceu', + -0x318a: b'\x11\xcev', + -0x3189: b'\x11\xcew', + -0x3188: b'\x11\xcex', + -0x3187: b'\x11\xcey', + -0x3186: b'\x11\xcez', + -0x3185: b'\x11\xce{', + -0x3184: b'\x11\xce|', + -0x3183: b'\x11\xce}', + -0x3182: b'\x11\xce~', + -0x3181: b'\x11\xce\x7f', + -0x3180: b'\x11\xce\x80', + -0x317f: b'\x11\xce\x81', + -0x317e: b'\x11\xce\x82', + -0x317d: b'\x11\xce\x83', + -0x317c: b'\x11\xce\x84', + -0x317b: b'\x11\xce\x85', + -0x317a: b'\x11\xce\x86', + -0x3179: b'\x11\xce\x87', + -0x3178: b'\x11\xce\x88', + -0x3177: b'\x11\xce\x89', + -0x3176: b'\x11\xce\x8a', + -0x3175: b'\x11\xce\x8b', + -0x3174: b'\x11\xce\x8c', + -0x3173: b'\x11\xce\x8d', + -0x3172: b'\x11\xce\x8e', + -0x3171: b'\x11\xce\x8f', + -0x3170: b'\x11\xce\x90', + -0x316f: b'\x11\xce\x91', + -0x316e: b'\x11\xce\x92', + -0x316d: b'\x11\xce\x93', + -0x316c: b'\x11\xce\x94', + -0x316b: b'\x11\xce\x95', + -0x316a: b'\x11\xce\x96', + -0x3169: b'\x11\xce\x97', + -0x3168: b'\x11\xce\x98', + -0x3167: b'\x11\xce\x99', + -0x3166: b'\x11\xce\x9a', + -0x3165: b'\x11\xce\x9b', + -0x3164: b'\x11\xce\x9c', + -0x3163: b'\x11\xce\x9d', + -0x3162: b'\x11\xce\x9e', + -0x3161: b'\x11\xce\x9f', + -0x3160: b'\x11\xce\xa0', + -0x315f: b'\x11\xce\xa1', + -0x315e: b'\x11\xce\xa2', + -0x315d: b'\x11\xce\xa3', + -0x315c: b'\x11\xce\xa4', + -0x315b: b'\x11\xce\xa5', + -0x315a: b'\x11\xce\xa6', + -0x3159: b'\x11\xce\xa7', + -0x3158: b'\x11\xce\xa8', + -0x3157: b'\x11\xce\xa9', + -0x3156: b'\x11\xce\xaa', + -0x3155: b'\x11\xce\xab', + -0x3154: b'\x11\xce\xac', + -0x3153: b'\x11\xce\xad', + -0x3152: b'\x11\xce\xae', + -0x3151: b'\x11\xce\xaf', + -0x3150: b'\x11\xce\xb0', + -0x314f: b'\x11\xce\xb1', + -0x314e: b'\x11\xce\xb2', + -0x314d: b'\x11\xce\xb3', + -0x314c: b'\x11\xce\xb4', + -0x314b: b'\x11\xce\xb5', + -0x314a: b'\x11\xce\xb6', + -0x3149: b'\x11\xce\xb7', + -0x3148: b'\x11\xce\xb8', + -0x3147: b'\x11\xce\xb9', + -0x3146: b'\x11\xce\xba', + -0x3145: b'\x11\xce\xbb', + -0x3144: b'\x11\xce\xbc', + -0x3143: b'\x11\xce\xbd', + -0x3142: b'\x11\xce\xbe', + -0x3141: b'\x11\xce\xbf', + -0x3140: b'\x11\xce\xc0', + -0x313f: b'\x11\xce\xc1', + -0x313e: b'\x11\xce\xc2', + -0x313d: b'\x11\xce\xc3', + -0x313c: b'\x11\xce\xc4', + -0x313b: b'\x11\xce\xc5', + -0x313a: b'\x11\xce\xc6', + -0x3139: b'\x11\xce\xc7', + -0x3138: b'\x11\xce\xc8', + -0x3137: b'\x11\xce\xc9', + -0x3136: b'\x11\xce\xca', + -0x3135: b'\x11\xce\xcb', + -0x3134: b'\x11\xce\xcc', + -0x3133: b'\x11\xce\xcd', + -0x3132: b'\x11\xce\xce', + -0x3131: b'\x11\xce\xcf', + -0x3130: b'\x11\xce\xd0', + -0x312f: b'\x11\xce\xd1', + -0x312e: b'\x11\xce\xd2', + -0x312d: b'\x11\xce\xd3', + -0x312c: b'\x11\xce\xd4', + -0x312b: b'\x11\xce\xd5', + -0x312a: b'\x11\xce\xd6', + -0x3129: b'\x11\xce\xd7', + -0x3128: b'\x11\xce\xd8', + -0x3127: b'\x11\xce\xd9', + -0x3126: b'\x11\xce\xda', + -0x3125: b'\x11\xce\xdb', + -0x3124: b'\x11\xce\xdc', + -0x3123: b'\x11\xce\xdd', + -0x3122: b'\x11\xce\xde', + -0x3121: b'\x11\xce\xdf', + -0x3120: b'\x11\xce\xe0', + -0x311f: b'\x11\xce\xe1', + -0x311e: b'\x11\xce\xe2', + -0x311d: b'\x11\xce\xe3', + -0x311c: b'\x11\xce\xe4', + -0x311b: b'\x11\xce\xe5', + -0x311a: b'\x11\xce\xe6', + -0x3119: b'\x11\xce\xe7', + -0x3118: b'\x11\xce\xe8', + -0x3117: b'\x11\xce\xe9', + -0x3116: b'\x11\xce\xea', + -0x3115: b'\x11\xce\xeb', + -0x3114: b'\x11\xce\xec', + -0x3113: b'\x11\xce\xed', + -0x3112: b'\x11\xce\xee', + -0x3111: b'\x11\xce\xef', + -0x3110: b'\x11\xce\xf0', + -0x310f: b'\x11\xce\xf1', + -0x310e: b'\x11\xce\xf2', + -0x310d: b'\x11\xce\xf3', + -0x310c: b'\x11\xce\xf4', + -0x310b: b'\x11\xce\xf5', + -0x310a: b'\x11\xce\xf6', + -0x3109: b'\x11\xce\xf7', + -0x3108: b'\x11\xce\xf8', + -0x3107: b'\x11\xce\xf9', + -0x3106: b'\x11\xce\xfa', + -0x3105: b'\x11\xce\xfb', + -0x3104: b'\x11\xce\xfc', + -0x3103: b'\x11\xce\xfd', + -0x3102: b'\x11\xce\xfe', + -0x3101: b'\x11\xce\xff', + -0x3100: b'\x11\xcf\x00', + -0x30ff: b'\x11\xcf\x01', + -0x30fe: b'\x11\xcf\x02', + -0x30fd: b'\x11\xcf\x03', + -0x30fc: b'\x11\xcf\x04', + -0x30fb: b'\x11\xcf\x05', + -0x30fa: b'\x11\xcf\x06', + -0x30f9: b'\x11\xcf\x07', + -0x30f8: b'\x11\xcf\x08', + -0x30f7: b'\x11\xcf\t', + -0x30f6: b'\x11\xcf\n', + -0x30f5: b'\x11\xcf\x0b', + -0x30f4: b'\x11\xcf\x0c', + -0x30f3: b'\x11\xcf\r', + -0x30f2: b'\x11\xcf\x0e', + -0x30f1: b'\x11\xcf\x0f', + -0x30f0: b'\x11\xcf\x10', + -0x30ef: b'\x11\xcf\x11', + -0x30ee: b'\x11\xcf\x12', + -0x30ed: b'\x11\xcf\x13', + -0x30ec: b'\x11\xcf\x14', + -0x30eb: b'\x11\xcf\x15', + -0x30ea: b'\x11\xcf\x16', + -0x30e9: b'\x11\xcf\x17', + -0x30e8: b'\x11\xcf\x18', + -0x30e7: b'\x11\xcf\x19', + -0x30e6: b'\x11\xcf\x1a', + -0x30e5: b'\x11\xcf\x1b', + -0x30e4: b'\x11\xcf\x1c', + -0x30e3: b'\x11\xcf\x1d', + -0x30e2: b'\x11\xcf\x1e', + -0x30e1: b'\x11\xcf\x1f', + -0x30e0: b'\x11\xcf ', + -0x30df: b'\x11\xcf!', + -0x30de: b'\x11\xcf"', + -0x30dd: b'\x11\xcf#', + -0x30dc: b'\x11\xcf$', + -0x30db: b'\x11\xcf%', + -0x30da: b'\x11\xcf&', + -0x30d9: b"\x11\xcf'", + -0x30d8: b'\x11\xcf(', + -0x30d7: b'\x11\xcf)', + -0x30d6: b'\x11\xcf*', + -0x30d5: b'\x11\xcf+', + -0x30d4: b'\x11\xcf,', + -0x30d3: b'\x11\xcf-', + -0x30d2: b'\x11\xcf.', + -0x30d1: b'\x11\xcf/', + -0x30d0: b'\x11\xcf0', + -0x30cf: b'\x11\xcf1', + -0x30ce: b'\x11\xcf2', + -0x30cd: b'\x11\xcf3', + -0x30cc: b'\x11\xcf4', + -0x30cb: b'\x11\xcf5', + -0x30ca: b'\x11\xcf6', + -0x30c9: b'\x11\xcf7', + -0x30c8: b'\x11\xcf8', + -0x30c7: b'\x11\xcf9', + -0x30c6: b'\x11\xcf:', + -0x30c5: b'\x11\xcf;', + -0x30c4: b'\x11\xcf<', + -0x30c3: b'\x11\xcf=', + -0x30c2: b'\x11\xcf>', + -0x30c1: b'\x11\xcf?', + -0x30c0: b'\x11\xcf@', + -0x30bf: b'\x11\xcfA', + -0x30be: b'\x11\xcfB', + -0x30bd: b'\x11\xcfC', + -0x30bc: b'\x11\xcfD', + -0x30bb: b'\x11\xcfE', + -0x30ba: b'\x11\xcfF', + -0x30b9: b'\x11\xcfG', + -0x30b8: b'\x11\xcfH', + -0x30b7: b'\x11\xcfI', + -0x30b6: b'\x11\xcfJ', + -0x30b5: b'\x11\xcfK', + -0x30b4: b'\x11\xcfL', + -0x30b3: b'\x11\xcfM', + -0x30b2: b'\x11\xcfN', + -0x30b1: b'\x11\xcfO', + -0x30b0: b'\x11\xcfP', + -0x30af: b'\x11\xcfQ', + -0x30ae: b'\x11\xcfR', + -0x30ad: b'\x11\xcfS', + -0x30ac: b'\x11\xcfT', + -0x30ab: b'\x11\xcfU', + -0x30aa: b'\x11\xcfV', + -0x30a9: b'\x11\xcfW', + -0x30a8: b'\x11\xcfX', + -0x30a7: b'\x11\xcfY', + -0x30a6: b'\x11\xcfZ', + -0x30a5: b'\x11\xcf[', + -0x30a4: b'\x11\xcf\\', + -0x30a3: b'\x11\xcf]', + -0x30a2: b'\x11\xcf^', + -0x30a1: b'\x11\xcf_', + -0x30a0: b'\x11\xcf`', + -0x309f: b'\x11\xcfa', + -0x309e: b'\x11\xcfb', + -0x309d: b'\x11\xcfc', + -0x309c: b'\x11\xcfd', + -0x309b: b'\x11\xcfe', + -0x309a: b'\x11\xcff', + -0x3099: b'\x11\xcfg', + -0x3098: b'\x11\xcfh', + -0x3097: b'\x11\xcfi', + -0x3096: b'\x11\xcfj', + -0x3095: b'\x11\xcfk', + -0x3094: b'\x11\xcfl', + -0x3093: b'\x11\xcfm', + -0x3092: b'\x11\xcfn', + -0x3091: b'\x11\xcfo', + -0x3090: b'\x11\xcfp', + -0x308f: b'\x11\xcfq', + -0x308e: b'\x11\xcfr', + -0x308d: b'\x11\xcfs', + -0x308c: b'\x11\xcft', + -0x308b: b'\x11\xcfu', + -0x308a: b'\x11\xcfv', + -0x3089: b'\x11\xcfw', + -0x3088: b'\x11\xcfx', + -0x3087: b'\x11\xcfy', + -0x3086: b'\x11\xcfz', + -0x3085: b'\x11\xcf{', + -0x3084: b'\x11\xcf|', + -0x3083: b'\x11\xcf}', + -0x3082: b'\x11\xcf~', + -0x3081: b'\x11\xcf\x7f', + -0x3080: b'\x11\xcf\x80', + -0x307f: b'\x11\xcf\x81', + -0x307e: b'\x11\xcf\x82', + -0x307d: b'\x11\xcf\x83', + -0x307c: b'\x11\xcf\x84', + -0x307b: b'\x11\xcf\x85', + -0x307a: b'\x11\xcf\x86', + -0x3079: b'\x11\xcf\x87', + -0x3078: b'\x11\xcf\x88', + -0x3077: b'\x11\xcf\x89', + -0x3076: b'\x11\xcf\x8a', + -0x3075: b'\x11\xcf\x8b', + -0x3074: b'\x11\xcf\x8c', + -0x3073: b'\x11\xcf\x8d', + -0x3072: b'\x11\xcf\x8e', + -0x3071: b'\x11\xcf\x8f', + -0x3070: b'\x11\xcf\x90', + -0x306f: b'\x11\xcf\x91', + -0x306e: b'\x11\xcf\x92', + -0x306d: b'\x11\xcf\x93', + -0x306c: b'\x11\xcf\x94', + -0x306b: b'\x11\xcf\x95', + -0x306a: b'\x11\xcf\x96', + -0x3069: b'\x11\xcf\x97', + -0x3068: b'\x11\xcf\x98', + -0x3067: b'\x11\xcf\x99', + -0x3066: b'\x11\xcf\x9a', + -0x3065: b'\x11\xcf\x9b', + -0x3064: b'\x11\xcf\x9c', + -0x3063: b'\x11\xcf\x9d', + -0x3062: b'\x11\xcf\x9e', + -0x3061: b'\x11\xcf\x9f', + -0x3060: b'\x11\xcf\xa0', + -0x305f: b'\x11\xcf\xa1', + -0x305e: b'\x11\xcf\xa2', + -0x305d: b'\x11\xcf\xa3', + -0x305c: b'\x11\xcf\xa4', + -0x305b: b'\x11\xcf\xa5', + -0x305a: b'\x11\xcf\xa6', + -0x3059: b'\x11\xcf\xa7', + -0x3058: b'\x11\xcf\xa8', + -0x3057: b'\x11\xcf\xa9', + -0x3056: b'\x11\xcf\xaa', + -0x3055: b'\x11\xcf\xab', + -0x3054: b'\x11\xcf\xac', + -0x3053: b'\x11\xcf\xad', + -0x3052: b'\x11\xcf\xae', + -0x3051: b'\x11\xcf\xaf', + -0x3050: b'\x11\xcf\xb0', + -0x304f: b'\x11\xcf\xb1', + -0x304e: b'\x11\xcf\xb2', + -0x304d: b'\x11\xcf\xb3', + -0x304c: b'\x11\xcf\xb4', + -0x304b: b'\x11\xcf\xb5', + -0x304a: b'\x11\xcf\xb6', + -0x3049: b'\x11\xcf\xb7', + -0x3048: b'\x11\xcf\xb8', + -0x3047: b'\x11\xcf\xb9', + -0x3046: b'\x11\xcf\xba', + -0x3045: b'\x11\xcf\xbb', + -0x3044: b'\x11\xcf\xbc', + -0x3043: b'\x11\xcf\xbd', + -0x3042: b'\x11\xcf\xbe', + -0x3041: b'\x11\xcf\xbf', + -0x3040: b'\x11\xcf\xc0', + -0x303f: b'\x11\xcf\xc1', + -0x303e: b'\x11\xcf\xc2', + -0x303d: b'\x11\xcf\xc3', + -0x303c: b'\x11\xcf\xc4', + -0x303b: b'\x11\xcf\xc5', + -0x303a: b'\x11\xcf\xc6', + -0x3039: b'\x11\xcf\xc7', + -0x3038: b'\x11\xcf\xc8', + -0x3037: b'\x11\xcf\xc9', + -0x3036: b'\x11\xcf\xca', + -0x3035: b'\x11\xcf\xcb', + -0x3034: b'\x11\xcf\xcc', + -0x3033: b'\x11\xcf\xcd', + -0x3032: b'\x11\xcf\xce', + -0x3031: b'\x11\xcf\xcf', + -0x3030: b'\x11\xcf\xd0', + -0x302f: b'\x11\xcf\xd1', + -0x302e: b'\x11\xcf\xd2', + -0x302d: b'\x11\xcf\xd3', + -0x302c: b'\x11\xcf\xd4', + -0x302b: b'\x11\xcf\xd5', + -0x302a: b'\x11\xcf\xd6', + -0x3029: b'\x11\xcf\xd7', + -0x3028: b'\x11\xcf\xd8', + -0x3027: b'\x11\xcf\xd9', + -0x3026: b'\x11\xcf\xda', + -0x3025: b'\x11\xcf\xdb', + -0x3024: b'\x11\xcf\xdc', + -0x3023: b'\x11\xcf\xdd', + -0x3022: b'\x11\xcf\xde', + -0x3021: b'\x11\xcf\xdf', + -0x3020: b'\x11\xcf\xe0', + -0x301f: b'\x11\xcf\xe1', + -0x301e: b'\x11\xcf\xe2', + -0x301d: b'\x11\xcf\xe3', + -0x301c: b'\x11\xcf\xe4', + -0x301b: b'\x11\xcf\xe5', + -0x301a: b'\x11\xcf\xe6', + -0x3019: b'\x11\xcf\xe7', + -0x3018: b'\x11\xcf\xe8', + -0x3017: b'\x11\xcf\xe9', + -0x3016: b'\x11\xcf\xea', + -0x3015: b'\x11\xcf\xeb', + -0x3014: b'\x11\xcf\xec', + -0x3013: b'\x11\xcf\xed', + -0x3012: b'\x11\xcf\xee', + -0x3011: b'\x11\xcf\xef', + -0x3010: b'\x11\xcf\xf0', + -0x300f: b'\x11\xcf\xf1', + -0x300e: b'\x11\xcf\xf2', + -0x300d: b'\x11\xcf\xf3', + -0x300c: b'\x11\xcf\xf4', + -0x300b: b'\x11\xcf\xf5', + -0x300a: b'\x11\xcf\xf6', + -0x3009: b'\x11\xcf\xf7', + -0x3008: b'\x11\xcf\xf8', + -0x3007: b'\x11\xcf\xf9', + -0x3006: b'\x11\xcf\xfa', + -0x3005: b'\x11\xcf\xfb', + -0x3004: b'\x11\xcf\xfc', + -0x3003: b'\x11\xcf\xfd', + -0x3002: b'\x11\xcf\xfe', + -0x3001: b'\x11\xcf\xff', + -0x3000: b'\x11\xd0\x00', + -0x2fff: b'\x11\xd0\x01', + -0x2ffe: b'\x11\xd0\x02', + -0x2ffd: b'\x11\xd0\x03', + -0x2ffc: b'\x11\xd0\x04', + -0x2ffb: b'\x11\xd0\x05', + -0x2ffa: b'\x11\xd0\x06', + -0x2ff9: b'\x11\xd0\x07', + -0x2ff8: b'\x11\xd0\x08', + -0x2ff7: b'\x11\xd0\t', + -0x2ff6: b'\x11\xd0\n', + -0x2ff5: b'\x11\xd0\x0b', + -0x2ff4: b'\x11\xd0\x0c', + -0x2ff3: b'\x11\xd0\r', + -0x2ff2: b'\x11\xd0\x0e', + -0x2ff1: b'\x11\xd0\x0f', + -0x2ff0: b'\x11\xd0\x10', + -0x2fef: b'\x11\xd0\x11', + -0x2fee: b'\x11\xd0\x12', + -0x2fed: b'\x11\xd0\x13', + -0x2fec: b'\x11\xd0\x14', + -0x2feb: b'\x11\xd0\x15', + -0x2fea: b'\x11\xd0\x16', + -0x2fe9: b'\x11\xd0\x17', + -0x2fe8: b'\x11\xd0\x18', + -0x2fe7: b'\x11\xd0\x19', + -0x2fe6: b'\x11\xd0\x1a', + -0x2fe5: b'\x11\xd0\x1b', + -0x2fe4: b'\x11\xd0\x1c', + -0x2fe3: b'\x11\xd0\x1d', + -0x2fe2: b'\x11\xd0\x1e', + -0x2fe1: b'\x11\xd0\x1f', + -0x2fe0: b'\x11\xd0 ', + -0x2fdf: b'\x11\xd0!', + -0x2fde: b'\x11\xd0"', + -0x2fdd: b'\x11\xd0#', + -0x2fdc: b'\x11\xd0$', + -0x2fdb: b'\x11\xd0%', + -0x2fda: b'\x11\xd0&', + -0x2fd9: b"\x11\xd0'", + -0x2fd8: b'\x11\xd0(', + -0x2fd7: b'\x11\xd0)', + -0x2fd6: b'\x11\xd0*', + -0x2fd5: b'\x11\xd0+', + -0x2fd4: b'\x11\xd0,', + -0x2fd3: b'\x11\xd0-', + -0x2fd2: b'\x11\xd0.', + -0x2fd1: b'\x11\xd0/', + -0x2fd0: b'\x11\xd00', + -0x2fcf: b'\x11\xd01', + -0x2fce: b'\x11\xd02', + -0x2fcd: b'\x11\xd03', + -0x2fcc: b'\x11\xd04', + -0x2fcb: b'\x11\xd05', + -0x2fca: b'\x11\xd06', + -0x2fc9: b'\x11\xd07', + -0x2fc8: b'\x11\xd08', + -0x2fc7: b'\x11\xd09', + -0x2fc6: b'\x11\xd0:', + -0x2fc5: b'\x11\xd0;', + -0x2fc4: b'\x11\xd0<', + -0x2fc3: b'\x11\xd0=', + -0x2fc2: b'\x11\xd0>', + -0x2fc1: b'\x11\xd0?', + -0x2fc0: b'\x11\xd0@', + -0x2fbf: b'\x11\xd0A', + -0x2fbe: b'\x11\xd0B', + -0x2fbd: b'\x11\xd0C', + -0x2fbc: b'\x11\xd0D', + -0x2fbb: b'\x11\xd0E', + -0x2fba: b'\x11\xd0F', + -0x2fb9: b'\x11\xd0G', + -0x2fb8: b'\x11\xd0H', + -0x2fb7: b'\x11\xd0I', + -0x2fb6: b'\x11\xd0J', + -0x2fb5: b'\x11\xd0K', + -0x2fb4: b'\x11\xd0L', + -0x2fb3: b'\x11\xd0M', + -0x2fb2: b'\x11\xd0N', + -0x2fb1: b'\x11\xd0O', + -0x2fb0: b'\x11\xd0P', + -0x2faf: b'\x11\xd0Q', + -0x2fae: b'\x11\xd0R', + -0x2fad: b'\x11\xd0S', + -0x2fac: b'\x11\xd0T', + -0x2fab: b'\x11\xd0U', + -0x2faa: b'\x11\xd0V', + -0x2fa9: b'\x11\xd0W', + -0x2fa8: b'\x11\xd0X', + -0x2fa7: b'\x11\xd0Y', + -0x2fa6: b'\x11\xd0Z', + -0x2fa5: b'\x11\xd0[', + -0x2fa4: b'\x11\xd0\\', + -0x2fa3: b'\x11\xd0]', + -0x2fa2: b'\x11\xd0^', + -0x2fa1: b'\x11\xd0_', + -0x2fa0: b'\x11\xd0`', + -0x2f9f: b'\x11\xd0a', + -0x2f9e: b'\x11\xd0b', + -0x2f9d: b'\x11\xd0c', + -0x2f9c: b'\x11\xd0d', + -0x2f9b: b'\x11\xd0e', + -0x2f9a: b'\x11\xd0f', + -0x2f99: b'\x11\xd0g', + -0x2f98: b'\x11\xd0h', + -0x2f97: b'\x11\xd0i', + -0x2f96: b'\x11\xd0j', + -0x2f95: b'\x11\xd0k', + -0x2f94: b'\x11\xd0l', + -0x2f93: b'\x11\xd0m', + -0x2f92: b'\x11\xd0n', + -0x2f91: b'\x11\xd0o', + -0x2f90: b'\x11\xd0p', + -0x2f8f: b'\x11\xd0q', + -0x2f8e: b'\x11\xd0r', + -0x2f8d: b'\x11\xd0s', + -0x2f8c: b'\x11\xd0t', + -0x2f8b: b'\x11\xd0u', + -0x2f8a: b'\x11\xd0v', + -0x2f89: b'\x11\xd0w', + -0x2f88: b'\x11\xd0x', + -0x2f87: b'\x11\xd0y', + -0x2f86: b'\x11\xd0z', + -0x2f85: b'\x11\xd0{', + -0x2f84: b'\x11\xd0|', + -0x2f83: b'\x11\xd0}', + -0x2f82: b'\x11\xd0~', + -0x2f81: b'\x11\xd0\x7f', + -0x2f80: b'\x11\xd0\x80', + -0x2f7f: b'\x11\xd0\x81', + -0x2f7e: b'\x11\xd0\x82', + -0x2f7d: b'\x11\xd0\x83', + -0x2f7c: b'\x11\xd0\x84', + -0x2f7b: b'\x11\xd0\x85', + -0x2f7a: b'\x11\xd0\x86', + -0x2f79: b'\x11\xd0\x87', + -0x2f78: b'\x11\xd0\x88', + -0x2f77: b'\x11\xd0\x89', + -0x2f76: b'\x11\xd0\x8a', + -0x2f75: b'\x11\xd0\x8b', + -0x2f74: b'\x11\xd0\x8c', + -0x2f73: b'\x11\xd0\x8d', + -0x2f72: b'\x11\xd0\x8e', + -0x2f71: b'\x11\xd0\x8f', + -0x2f70: b'\x11\xd0\x90', + -0x2f6f: b'\x11\xd0\x91', + -0x2f6e: b'\x11\xd0\x92', + -0x2f6d: b'\x11\xd0\x93', + -0x2f6c: b'\x11\xd0\x94', + -0x2f6b: b'\x11\xd0\x95', + -0x2f6a: b'\x11\xd0\x96', + -0x2f69: b'\x11\xd0\x97', + -0x2f68: b'\x11\xd0\x98', + -0x2f67: b'\x11\xd0\x99', + -0x2f66: b'\x11\xd0\x9a', + -0x2f65: b'\x11\xd0\x9b', + -0x2f64: b'\x11\xd0\x9c', + -0x2f63: b'\x11\xd0\x9d', + -0x2f62: b'\x11\xd0\x9e', + -0x2f61: b'\x11\xd0\x9f', + -0x2f60: b'\x11\xd0\xa0', + -0x2f5f: b'\x11\xd0\xa1', + -0x2f5e: b'\x11\xd0\xa2', + -0x2f5d: b'\x11\xd0\xa3', + -0x2f5c: b'\x11\xd0\xa4', + -0x2f5b: b'\x11\xd0\xa5', + -0x2f5a: b'\x11\xd0\xa6', + -0x2f59: b'\x11\xd0\xa7', + -0x2f58: b'\x11\xd0\xa8', + -0x2f57: b'\x11\xd0\xa9', + -0x2f56: b'\x11\xd0\xaa', + -0x2f55: b'\x11\xd0\xab', + -0x2f54: b'\x11\xd0\xac', + -0x2f53: b'\x11\xd0\xad', + -0x2f52: b'\x11\xd0\xae', + -0x2f51: b'\x11\xd0\xaf', + -0x2f50: b'\x11\xd0\xb0', + -0x2f4f: b'\x11\xd0\xb1', + -0x2f4e: b'\x11\xd0\xb2', + -0x2f4d: b'\x11\xd0\xb3', + -0x2f4c: b'\x11\xd0\xb4', + -0x2f4b: b'\x11\xd0\xb5', + -0x2f4a: b'\x11\xd0\xb6', + -0x2f49: b'\x11\xd0\xb7', + -0x2f48: b'\x11\xd0\xb8', + -0x2f47: b'\x11\xd0\xb9', + -0x2f46: b'\x11\xd0\xba', + -0x2f45: b'\x11\xd0\xbb', + -0x2f44: b'\x11\xd0\xbc', + -0x2f43: b'\x11\xd0\xbd', + -0x2f42: b'\x11\xd0\xbe', + -0x2f41: b'\x11\xd0\xbf', + -0x2f40: b'\x11\xd0\xc0', + -0x2f3f: b'\x11\xd0\xc1', + -0x2f3e: b'\x11\xd0\xc2', + -0x2f3d: b'\x11\xd0\xc3', + -0x2f3c: b'\x11\xd0\xc4', + -0x2f3b: b'\x11\xd0\xc5', + -0x2f3a: b'\x11\xd0\xc6', + -0x2f39: b'\x11\xd0\xc7', + -0x2f38: b'\x11\xd0\xc8', + -0x2f37: b'\x11\xd0\xc9', + -0x2f36: b'\x11\xd0\xca', + -0x2f35: b'\x11\xd0\xcb', + -0x2f34: b'\x11\xd0\xcc', + -0x2f33: b'\x11\xd0\xcd', + -0x2f32: b'\x11\xd0\xce', + -0x2f31: b'\x11\xd0\xcf', + -0x2f30: b'\x11\xd0\xd0', + -0x2f2f: b'\x11\xd0\xd1', + -0x2f2e: b'\x11\xd0\xd2', + -0x2f2d: b'\x11\xd0\xd3', + -0x2f2c: b'\x11\xd0\xd4', + -0x2f2b: b'\x11\xd0\xd5', + -0x2f2a: b'\x11\xd0\xd6', + -0x2f29: b'\x11\xd0\xd7', + -0x2f28: b'\x11\xd0\xd8', + -0x2f27: b'\x11\xd0\xd9', + -0x2f26: b'\x11\xd0\xda', + -0x2f25: b'\x11\xd0\xdb', + -0x2f24: b'\x11\xd0\xdc', + -0x2f23: b'\x11\xd0\xdd', + -0x2f22: b'\x11\xd0\xde', + -0x2f21: b'\x11\xd0\xdf', + -0x2f20: b'\x11\xd0\xe0', + -0x2f1f: b'\x11\xd0\xe1', + -0x2f1e: b'\x11\xd0\xe2', + -0x2f1d: b'\x11\xd0\xe3', + -0x2f1c: b'\x11\xd0\xe4', + -0x2f1b: b'\x11\xd0\xe5', + -0x2f1a: b'\x11\xd0\xe6', + -0x2f19: b'\x11\xd0\xe7', + -0x2f18: b'\x11\xd0\xe8', + -0x2f17: b'\x11\xd0\xe9', + -0x2f16: b'\x11\xd0\xea', + -0x2f15: b'\x11\xd0\xeb', + -0x2f14: b'\x11\xd0\xec', + -0x2f13: b'\x11\xd0\xed', + -0x2f12: b'\x11\xd0\xee', + -0x2f11: b'\x11\xd0\xef', + -0x2f10: b'\x11\xd0\xf0', + -0x2f0f: b'\x11\xd0\xf1', + -0x2f0e: b'\x11\xd0\xf2', + -0x2f0d: b'\x11\xd0\xf3', + -0x2f0c: b'\x11\xd0\xf4', + -0x2f0b: b'\x11\xd0\xf5', + -0x2f0a: b'\x11\xd0\xf6', + -0x2f09: b'\x11\xd0\xf7', + -0x2f08: b'\x11\xd0\xf8', + -0x2f07: b'\x11\xd0\xf9', + -0x2f06: b'\x11\xd0\xfa', + -0x2f05: b'\x11\xd0\xfb', + -0x2f04: b'\x11\xd0\xfc', + -0x2f03: b'\x11\xd0\xfd', + -0x2f02: b'\x11\xd0\xfe', + -0x2f01: b'\x11\xd0\xff', + -0x2f00: b'\x11\xd1\x00', + -0x2eff: b'\x11\xd1\x01', + -0x2efe: b'\x11\xd1\x02', + -0x2efd: b'\x11\xd1\x03', + -0x2efc: b'\x11\xd1\x04', + -0x2efb: b'\x11\xd1\x05', + -0x2efa: b'\x11\xd1\x06', + -0x2ef9: b'\x11\xd1\x07', + -0x2ef8: b'\x11\xd1\x08', + -0x2ef7: b'\x11\xd1\t', + -0x2ef6: b'\x11\xd1\n', + -0x2ef5: b'\x11\xd1\x0b', + -0x2ef4: b'\x11\xd1\x0c', + -0x2ef3: b'\x11\xd1\r', + -0x2ef2: b'\x11\xd1\x0e', + -0x2ef1: b'\x11\xd1\x0f', + -0x2ef0: b'\x11\xd1\x10', + -0x2eef: b'\x11\xd1\x11', + -0x2eee: b'\x11\xd1\x12', + -0x2eed: b'\x11\xd1\x13', + -0x2eec: b'\x11\xd1\x14', + -0x2eeb: b'\x11\xd1\x15', + -0x2eea: b'\x11\xd1\x16', + -0x2ee9: b'\x11\xd1\x17', + -0x2ee8: b'\x11\xd1\x18', + -0x2ee7: b'\x11\xd1\x19', + -0x2ee6: b'\x11\xd1\x1a', + -0x2ee5: b'\x11\xd1\x1b', + -0x2ee4: b'\x11\xd1\x1c', + -0x2ee3: b'\x11\xd1\x1d', + -0x2ee2: b'\x11\xd1\x1e', + -0x2ee1: b'\x11\xd1\x1f', + -0x2ee0: b'\x11\xd1 ', + -0x2edf: b'\x11\xd1!', + -0x2ede: b'\x11\xd1"', + -0x2edd: b'\x11\xd1#', + -0x2edc: b'\x11\xd1$', + -0x2edb: b'\x11\xd1%', + -0x2eda: b'\x11\xd1&', + -0x2ed9: b"\x11\xd1'", + -0x2ed8: b'\x11\xd1(', + -0x2ed7: b'\x11\xd1)', + -0x2ed6: b'\x11\xd1*', + -0x2ed5: b'\x11\xd1+', + -0x2ed4: b'\x11\xd1,', + -0x2ed3: b'\x11\xd1-', + -0x2ed2: b'\x11\xd1.', + -0x2ed1: b'\x11\xd1/', + -0x2ed0: b'\x11\xd10', + -0x2ecf: b'\x11\xd11', + -0x2ece: b'\x11\xd12', + -0x2ecd: b'\x11\xd13', + -0x2ecc: b'\x11\xd14', + -0x2ecb: b'\x11\xd15', + -0x2eca: b'\x11\xd16', + -0x2ec9: b'\x11\xd17', + -0x2ec8: b'\x11\xd18', + -0x2ec7: b'\x11\xd19', + -0x2ec6: b'\x11\xd1:', + -0x2ec5: b'\x11\xd1;', + -0x2ec4: b'\x11\xd1<', + -0x2ec3: b'\x11\xd1=', + -0x2ec2: b'\x11\xd1>', + -0x2ec1: b'\x11\xd1?', + -0x2ec0: b'\x11\xd1@', + -0x2ebf: b'\x11\xd1A', + -0x2ebe: b'\x11\xd1B', + -0x2ebd: b'\x11\xd1C', + -0x2ebc: b'\x11\xd1D', + -0x2ebb: b'\x11\xd1E', + -0x2eba: b'\x11\xd1F', + -0x2eb9: b'\x11\xd1G', + -0x2eb8: b'\x11\xd1H', + -0x2eb7: b'\x11\xd1I', + -0x2eb6: b'\x11\xd1J', + -0x2eb5: b'\x11\xd1K', + -0x2eb4: b'\x11\xd1L', + -0x2eb3: b'\x11\xd1M', + -0x2eb2: b'\x11\xd1N', + -0x2eb1: b'\x11\xd1O', + -0x2eb0: b'\x11\xd1P', + -0x2eaf: b'\x11\xd1Q', + -0x2eae: b'\x11\xd1R', + -0x2ead: b'\x11\xd1S', + -0x2eac: b'\x11\xd1T', + -0x2eab: b'\x11\xd1U', + -0x2eaa: b'\x11\xd1V', + -0x2ea9: b'\x11\xd1W', + -0x2ea8: b'\x11\xd1X', + -0x2ea7: b'\x11\xd1Y', + -0x2ea6: b'\x11\xd1Z', + -0x2ea5: b'\x11\xd1[', + -0x2ea4: b'\x11\xd1\\', + -0x2ea3: b'\x11\xd1]', + -0x2ea2: b'\x11\xd1^', + -0x2ea1: b'\x11\xd1_', + -0x2ea0: b'\x11\xd1`', + -0x2e9f: b'\x11\xd1a', + -0x2e9e: b'\x11\xd1b', + -0x2e9d: b'\x11\xd1c', + -0x2e9c: b'\x11\xd1d', + -0x2e9b: b'\x11\xd1e', + -0x2e9a: b'\x11\xd1f', + -0x2e99: b'\x11\xd1g', + -0x2e98: b'\x11\xd1h', + -0x2e97: b'\x11\xd1i', + -0x2e96: b'\x11\xd1j', + -0x2e95: b'\x11\xd1k', + -0x2e94: b'\x11\xd1l', + -0x2e93: b'\x11\xd1m', + -0x2e92: b'\x11\xd1n', + -0x2e91: b'\x11\xd1o', + -0x2e90: b'\x11\xd1p', + -0x2e8f: b'\x11\xd1q', + -0x2e8e: b'\x11\xd1r', + -0x2e8d: b'\x11\xd1s', + -0x2e8c: b'\x11\xd1t', + -0x2e8b: b'\x11\xd1u', + -0x2e8a: b'\x11\xd1v', + -0x2e89: b'\x11\xd1w', + -0x2e88: b'\x11\xd1x', + -0x2e87: b'\x11\xd1y', + -0x2e86: b'\x11\xd1z', + -0x2e85: b'\x11\xd1{', + -0x2e84: b'\x11\xd1|', + -0x2e83: b'\x11\xd1}', + -0x2e82: b'\x11\xd1~', + -0x2e81: b'\x11\xd1\x7f', + -0x2e80: b'\x11\xd1\x80', + -0x2e7f: b'\x11\xd1\x81', + -0x2e7e: b'\x11\xd1\x82', + -0x2e7d: b'\x11\xd1\x83', + -0x2e7c: b'\x11\xd1\x84', + -0x2e7b: b'\x11\xd1\x85', + -0x2e7a: b'\x11\xd1\x86', + -0x2e79: b'\x11\xd1\x87', + -0x2e78: b'\x11\xd1\x88', + -0x2e77: b'\x11\xd1\x89', + -0x2e76: b'\x11\xd1\x8a', + -0x2e75: b'\x11\xd1\x8b', + -0x2e74: b'\x11\xd1\x8c', + -0x2e73: b'\x11\xd1\x8d', + -0x2e72: b'\x11\xd1\x8e', + -0x2e71: b'\x11\xd1\x8f', + -0x2e70: b'\x11\xd1\x90', + -0x2e6f: b'\x11\xd1\x91', + -0x2e6e: b'\x11\xd1\x92', + -0x2e6d: b'\x11\xd1\x93', + -0x2e6c: b'\x11\xd1\x94', + -0x2e6b: b'\x11\xd1\x95', + -0x2e6a: b'\x11\xd1\x96', + -0x2e69: b'\x11\xd1\x97', + -0x2e68: b'\x11\xd1\x98', + -0x2e67: b'\x11\xd1\x99', + -0x2e66: b'\x11\xd1\x9a', + -0x2e65: b'\x11\xd1\x9b', + -0x2e64: b'\x11\xd1\x9c', + -0x2e63: b'\x11\xd1\x9d', + -0x2e62: b'\x11\xd1\x9e', + -0x2e61: b'\x11\xd1\x9f', + -0x2e60: b'\x11\xd1\xa0', + -0x2e5f: b'\x11\xd1\xa1', + -0x2e5e: b'\x11\xd1\xa2', + -0x2e5d: b'\x11\xd1\xa3', + -0x2e5c: b'\x11\xd1\xa4', + -0x2e5b: b'\x11\xd1\xa5', + -0x2e5a: b'\x11\xd1\xa6', + -0x2e59: b'\x11\xd1\xa7', + -0x2e58: b'\x11\xd1\xa8', + -0x2e57: b'\x11\xd1\xa9', + -0x2e56: b'\x11\xd1\xaa', + -0x2e55: b'\x11\xd1\xab', + -0x2e54: b'\x11\xd1\xac', + -0x2e53: b'\x11\xd1\xad', + -0x2e52: b'\x11\xd1\xae', + -0x2e51: b'\x11\xd1\xaf', + -0x2e50: b'\x11\xd1\xb0', + -0x2e4f: b'\x11\xd1\xb1', + -0x2e4e: b'\x11\xd1\xb2', + -0x2e4d: b'\x11\xd1\xb3', + -0x2e4c: b'\x11\xd1\xb4', + -0x2e4b: b'\x11\xd1\xb5', + -0x2e4a: b'\x11\xd1\xb6', + -0x2e49: b'\x11\xd1\xb7', + -0x2e48: b'\x11\xd1\xb8', + -0x2e47: b'\x11\xd1\xb9', + -0x2e46: b'\x11\xd1\xba', + -0x2e45: b'\x11\xd1\xbb', + -0x2e44: b'\x11\xd1\xbc', + -0x2e43: b'\x11\xd1\xbd', + -0x2e42: b'\x11\xd1\xbe', + -0x2e41: b'\x11\xd1\xbf', + -0x2e40: b'\x11\xd1\xc0', + -0x2e3f: b'\x11\xd1\xc1', + -0x2e3e: b'\x11\xd1\xc2', + -0x2e3d: b'\x11\xd1\xc3', + -0x2e3c: b'\x11\xd1\xc4', + -0x2e3b: b'\x11\xd1\xc5', + -0x2e3a: b'\x11\xd1\xc6', + -0x2e39: b'\x11\xd1\xc7', + -0x2e38: b'\x11\xd1\xc8', + -0x2e37: b'\x11\xd1\xc9', + -0x2e36: b'\x11\xd1\xca', + -0x2e35: b'\x11\xd1\xcb', + -0x2e34: b'\x11\xd1\xcc', + -0x2e33: b'\x11\xd1\xcd', + -0x2e32: b'\x11\xd1\xce', + -0x2e31: b'\x11\xd1\xcf', + -0x2e30: b'\x11\xd1\xd0', + -0x2e2f: b'\x11\xd1\xd1', + -0x2e2e: b'\x11\xd1\xd2', + -0x2e2d: b'\x11\xd1\xd3', + -0x2e2c: b'\x11\xd1\xd4', + -0x2e2b: b'\x11\xd1\xd5', + -0x2e2a: b'\x11\xd1\xd6', + -0x2e29: b'\x11\xd1\xd7', + -0x2e28: b'\x11\xd1\xd8', + -0x2e27: b'\x11\xd1\xd9', + -0x2e26: b'\x11\xd1\xda', + -0x2e25: b'\x11\xd1\xdb', + -0x2e24: b'\x11\xd1\xdc', + -0x2e23: b'\x11\xd1\xdd', + -0x2e22: b'\x11\xd1\xde', + -0x2e21: b'\x11\xd1\xdf', + -0x2e20: b'\x11\xd1\xe0', + -0x2e1f: b'\x11\xd1\xe1', + -0x2e1e: b'\x11\xd1\xe2', + -0x2e1d: b'\x11\xd1\xe3', + -0x2e1c: b'\x11\xd1\xe4', + -0x2e1b: b'\x11\xd1\xe5', + -0x2e1a: b'\x11\xd1\xe6', + -0x2e19: b'\x11\xd1\xe7', + -0x2e18: b'\x11\xd1\xe8', + -0x2e17: b'\x11\xd1\xe9', + -0x2e16: b'\x11\xd1\xea', + -0x2e15: b'\x11\xd1\xeb', + -0x2e14: b'\x11\xd1\xec', + -0x2e13: b'\x11\xd1\xed', + -0x2e12: b'\x11\xd1\xee', + -0x2e11: b'\x11\xd1\xef', + -0x2e10: b'\x11\xd1\xf0', + -0x2e0f: b'\x11\xd1\xf1', + -0x2e0e: b'\x11\xd1\xf2', + -0x2e0d: b'\x11\xd1\xf3', + -0x2e0c: b'\x11\xd1\xf4', + -0x2e0b: b'\x11\xd1\xf5', + -0x2e0a: b'\x11\xd1\xf6', + -0x2e09: b'\x11\xd1\xf7', + -0x2e08: b'\x11\xd1\xf8', + -0x2e07: b'\x11\xd1\xf9', + -0x2e06: b'\x11\xd1\xfa', + -0x2e05: b'\x11\xd1\xfb', + -0x2e04: b'\x11\xd1\xfc', + -0x2e03: b'\x11\xd1\xfd', + -0x2e02: b'\x11\xd1\xfe', + -0x2e01: b'\x11\xd1\xff', + -0x2e00: b'\x11\xd2\x00', + -0x2dff: b'\x11\xd2\x01', + -0x2dfe: b'\x11\xd2\x02', + -0x2dfd: b'\x11\xd2\x03', + -0x2dfc: b'\x11\xd2\x04', + -0x2dfb: b'\x11\xd2\x05', + -0x2dfa: b'\x11\xd2\x06', + -0x2df9: b'\x11\xd2\x07', + -0x2df8: b'\x11\xd2\x08', + -0x2df7: b'\x11\xd2\t', + -0x2df6: b'\x11\xd2\n', + -0x2df5: b'\x11\xd2\x0b', + -0x2df4: b'\x11\xd2\x0c', + -0x2df3: b'\x11\xd2\r', + -0x2df2: b'\x11\xd2\x0e', + -0x2df1: b'\x11\xd2\x0f', + -0x2df0: b'\x11\xd2\x10', + -0x2def: b'\x11\xd2\x11', + -0x2dee: b'\x11\xd2\x12', + -0x2ded: b'\x11\xd2\x13', + -0x2dec: b'\x11\xd2\x14', + -0x2deb: b'\x11\xd2\x15', + -0x2dea: b'\x11\xd2\x16', + -0x2de9: b'\x11\xd2\x17', + -0x2de8: b'\x11\xd2\x18', + -0x2de7: b'\x11\xd2\x19', + -0x2de6: b'\x11\xd2\x1a', + -0x2de5: b'\x11\xd2\x1b', + -0x2de4: b'\x11\xd2\x1c', + -0x2de3: b'\x11\xd2\x1d', + -0x2de2: b'\x11\xd2\x1e', + -0x2de1: b'\x11\xd2\x1f', + -0x2de0: b'\x11\xd2 ', + -0x2ddf: b'\x11\xd2!', + -0x2dde: b'\x11\xd2"', + -0x2ddd: b'\x11\xd2#', + -0x2ddc: b'\x11\xd2$', + -0x2ddb: b'\x11\xd2%', + -0x2dda: b'\x11\xd2&', + -0x2dd9: b"\x11\xd2'", + -0x2dd8: b'\x11\xd2(', + -0x2dd7: b'\x11\xd2)', + -0x2dd6: b'\x11\xd2*', + -0x2dd5: b'\x11\xd2+', + -0x2dd4: b'\x11\xd2,', + -0x2dd3: b'\x11\xd2-', + -0x2dd2: b'\x11\xd2.', + -0x2dd1: b'\x11\xd2/', + -0x2dd0: b'\x11\xd20', + -0x2dcf: b'\x11\xd21', + -0x2dce: b'\x11\xd22', + -0x2dcd: b'\x11\xd23', + -0x2dcc: b'\x11\xd24', + -0x2dcb: b'\x11\xd25', + -0x2dca: b'\x11\xd26', + -0x2dc9: b'\x11\xd27', + -0x2dc8: b'\x11\xd28', + -0x2dc7: b'\x11\xd29', + -0x2dc6: b'\x11\xd2:', + -0x2dc5: b'\x11\xd2;', + -0x2dc4: b'\x11\xd2<', + -0x2dc3: b'\x11\xd2=', + -0x2dc2: b'\x11\xd2>', + -0x2dc1: b'\x11\xd2?', + -0x2dc0: b'\x11\xd2@', + -0x2dbf: b'\x11\xd2A', + -0x2dbe: b'\x11\xd2B', + -0x2dbd: b'\x11\xd2C', + -0x2dbc: b'\x11\xd2D', + -0x2dbb: b'\x11\xd2E', + -0x2dba: b'\x11\xd2F', + -0x2db9: b'\x11\xd2G', + -0x2db8: b'\x11\xd2H', + -0x2db7: b'\x11\xd2I', + -0x2db6: b'\x11\xd2J', + -0x2db5: b'\x11\xd2K', + -0x2db4: b'\x11\xd2L', + -0x2db3: b'\x11\xd2M', + -0x2db2: b'\x11\xd2N', + -0x2db1: b'\x11\xd2O', + -0x2db0: b'\x11\xd2P', + -0x2daf: b'\x11\xd2Q', + -0x2dae: b'\x11\xd2R', + -0x2dad: b'\x11\xd2S', + -0x2dac: b'\x11\xd2T', + -0x2dab: b'\x11\xd2U', + -0x2daa: b'\x11\xd2V', + -0x2da9: b'\x11\xd2W', + -0x2da8: b'\x11\xd2X', + -0x2da7: b'\x11\xd2Y', + -0x2da6: b'\x11\xd2Z', + -0x2da5: b'\x11\xd2[', + -0x2da4: b'\x11\xd2\\', + -0x2da3: b'\x11\xd2]', + -0x2da2: b'\x11\xd2^', + -0x2da1: b'\x11\xd2_', + -0x2da0: b'\x11\xd2`', + -0x2d9f: b'\x11\xd2a', + -0x2d9e: b'\x11\xd2b', + -0x2d9d: b'\x11\xd2c', + -0x2d9c: b'\x11\xd2d', + -0x2d9b: b'\x11\xd2e', + -0x2d9a: b'\x11\xd2f', + -0x2d99: b'\x11\xd2g', + -0x2d98: b'\x11\xd2h', + -0x2d97: b'\x11\xd2i', + -0x2d96: b'\x11\xd2j', + -0x2d95: b'\x11\xd2k', + -0x2d94: b'\x11\xd2l', + -0x2d93: b'\x11\xd2m', + -0x2d92: b'\x11\xd2n', + -0x2d91: b'\x11\xd2o', + -0x2d90: b'\x11\xd2p', + -0x2d8f: b'\x11\xd2q', + -0x2d8e: b'\x11\xd2r', + -0x2d8d: b'\x11\xd2s', + -0x2d8c: b'\x11\xd2t', + -0x2d8b: b'\x11\xd2u', + -0x2d8a: b'\x11\xd2v', + -0x2d89: b'\x11\xd2w', + -0x2d88: b'\x11\xd2x', + -0x2d87: b'\x11\xd2y', + -0x2d86: b'\x11\xd2z', + -0x2d85: b'\x11\xd2{', + -0x2d84: b'\x11\xd2|', + -0x2d83: b'\x11\xd2}', + -0x2d82: b'\x11\xd2~', + -0x2d81: b'\x11\xd2\x7f', + -0x2d80: b'\x11\xd2\x80', + -0x2d7f: b'\x11\xd2\x81', + -0x2d7e: b'\x11\xd2\x82', + -0x2d7d: b'\x11\xd2\x83', + -0x2d7c: b'\x11\xd2\x84', + -0x2d7b: b'\x11\xd2\x85', + -0x2d7a: b'\x11\xd2\x86', + -0x2d79: b'\x11\xd2\x87', + -0x2d78: b'\x11\xd2\x88', + -0x2d77: b'\x11\xd2\x89', + -0x2d76: b'\x11\xd2\x8a', + -0x2d75: b'\x11\xd2\x8b', + -0x2d74: b'\x11\xd2\x8c', + -0x2d73: b'\x11\xd2\x8d', + -0x2d72: b'\x11\xd2\x8e', + -0x2d71: b'\x11\xd2\x8f', + -0x2d70: b'\x11\xd2\x90', + -0x2d6f: b'\x11\xd2\x91', + -0x2d6e: b'\x11\xd2\x92', + -0x2d6d: b'\x11\xd2\x93', + -0x2d6c: b'\x11\xd2\x94', + -0x2d6b: b'\x11\xd2\x95', + -0x2d6a: b'\x11\xd2\x96', + -0x2d69: b'\x11\xd2\x97', + -0x2d68: b'\x11\xd2\x98', + -0x2d67: b'\x11\xd2\x99', + -0x2d66: b'\x11\xd2\x9a', + -0x2d65: b'\x11\xd2\x9b', + -0x2d64: b'\x11\xd2\x9c', + -0x2d63: b'\x11\xd2\x9d', + -0x2d62: b'\x11\xd2\x9e', + -0x2d61: b'\x11\xd2\x9f', + -0x2d60: b'\x11\xd2\xa0', + -0x2d5f: b'\x11\xd2\xa1', + -0x2d5e: b'\x11\xd2\xa2', + -0x2d5d: b'\x11\xd2\xa3', + -0x2d5c: b'\x11\xd2\xa4', + -0x2d5b: b'\x11\xd2\xa5', + -0x2d5a: b'\x11\xd2\xa6', + -0x2d59: b'\x11\xd2\xa7', + -0x2d58: b'\x11\xd2\xa8', + -0x2d57: b'\x11\xd2\xa9', + -0x2d56: b'\x11\xd2\xaa', + -0x2d55: b'\x11\xd2\xab', + -0x2d54: b'\x11\xd2\xac', + -0x2d53: b'\x11\xd2\xad', + -0x2d52: b'\x11\xd2\xae', + -0x2d51: b'\x11\xd2\xaf', + -0x2d50: b'\x11\xd2\xb0', + -0x2d4f: b'\x11\xd2\xb1', + -0x2d4e: b'\x11\xd2\xb2', + -0x2d4d: b'\x11\xd2\xb3', + -0x2d4c: b'\x11\xd2\xb4', + -0x2d4b: b'\x11\xd2\xb5', + -0x2d4a: b'\x11\xd2\xb6', + -0x2d49: b'\x11\xd2\xb7', + -0x2d48: b'\x11\xd2\xb8', + -0x2d47: b'\x11\xd2\xb9', + -0x2d46: b'\x11\xd2\xba', + -0x2d45: b'\x11\xd2\xbb', + -0x2d44: b'\x11\xd2\xbc', + -0x2d43: b'\x11\xd2\xbd', + -0x2d42: b'\x11\xd2\xbe', + -0x2d41: b'\x11\xd2\xbf', + -0x2d40: b'\x11\xd2\xc0', + -0x2d3f: b'\x11\xd2\xc1', + -0x2d3e: b'\x11\xd2\xc2', + -0x2d3d: b'\x11\xd2\xc3', + -0x2d3c: b'\x11\xd2\xc4', + -0x2d3b: b'\x11\xd2\xc5', + -0x2d3a: b'\x11\xd2\xc6', + -0x2d39: b'\x11\xd2\xc7', + -0x2d38: b'\x11\xd2\xc8', + -0x2d37: b'\x11\xd2\xc9', + -0x2d36: b'\x11\xd2\xca', + -0x2d35: b'\x11\xd2\xcb', + -0x2d34: b'\x11\xd2\xcc', + -0x2d33: b'\x11\xd2\xcd', + -0x2d32: b'\x11\xd2\xce', + -0x2d31: b'\x11\xd2\xcf', + -0x2d30: b'\x11\xd2\xd0', + -0x2d2f: b'\x11\xd2\xd1', + -0x2d2e: b'\x11\xd2\xd2', + -0x2d2d: b'\x11\xd2\xd3', + -0x2d2c: b'\x11\xd2\xd4', + -0x2d2b: b'\x11\xd2\xd5', + -0x2d2a: b'\x11\xd2\xd6', + -0x2d29: b'\x11\xd2\xd7', + -0x2d28: b'\x11\xd2\xd8', + -0x2d27: b'\x11\xd2\xd9', + -0x2d26: b'\x11\xd2\xda', + -0x2d25: b'\x11\xd2\xdb', + -0x2d24: b'\x11\xd2\xdc', + -0x2d23: b'\x11\xd2\xdd', + -0x2d22: b'\x11\xd2\xde', + -0x2d21: b'\x11\xd2\xdf', + -0x2d20: b'\x11\xd2\xe0', + -0x2d1f: b'\x11\xd2\xe1', + -0x2d1e: b'\x11\xd2\xe2', + -0x2d1d: b'\x11\xd2\xe3', + -0x2d1c: b'\x11\xd2\xe4', + -0x2d1b: b'\x11\xd2\xe5', + -0x2d1a: b'\x11\xd2\xe6', + -0x2d19: b'\x11\xd2\xe7', + -0x2d18: b'\x11\xd2\xe8', + -0x2d17: b'\x11\xd2\xe9', + -0x2d16: b'\x11\xd2\xea', + -0x2d15: b'\x11\xd2\xeb', + -0x2d14: b'\x11\xd2\xec', + -0x2d13: b'\x11\xd2\xed', + -0x2d12: b'\x11\xd2\xee', + -0x2d11: b'\x11\xd2\xef', + -0x2d10: b'\x11\xd2\xf0', + -0x2d0f: b'\x11\xd2\xf1', + -0x2d0e: b'\x11\xd2\xf2', + -0x2d0d: b'\x11\xd2\xf3', + -0x2d0c: b'\x11\xd2\xf4', + -0x2d0b: b'\x11\xd2\xf5', + -0x2d0a: b'\x11\xd2\xf6', + -0x2d09: b'\x11\xd2\xf7', + -0x2d08: b'\x11\xd2\xf8', + -0x2d07: b'\x11\xd2\xf9', + -0x2d06: b'\x11\xd2\xfa', + -0x2d05: b'\x11\xd2\xfb', + -0x2d04: b'\x11\xd2\xfc', + -0x2d03: b'\x11\xd2\xfd', + -0x2d02: b'\x11\xd2\xfe', + -0x2d01: b'\x11\xd2\xff', + -0x2d00: b'\x11\xd3\x00', + -0x2cff: b'\x11\xd3\x01', + -0x2cfe: b'\x11\xd3\x02', + -0x2cfd: b'\x11\xd3\x03', + -0x2cfc: b'\x11\xd3\x04', + -0x2cfb: b'\x11\xd3\x05', + -0x2cfa: b'\x11\xd3\x06', + -0x2cf9: b'\x11\xd3\x07', + -0x2cf8: b'\x11\xd3\x08', + -0x2cf7: b'\x11\xd3\t', + -0x2cf6: b'\x11\xd3\n', + -0x2cf5: b'\x11\xd3\x0b', + -0x2cf4: b'\x11\xd3\x0c', + -0x2cf3: b'\x11\xd3\r', + -0x2cf2: b'\x11\xd3\x0e', + -0x2cf1: b'\x11\xd3\x0f', + -0x2cf0: b'\x11\xd3\x10', + -0x2cef: b'\x11\xd3\x11', + -0x2cee: b'\x11\xd3\x12', + -0x2ced: b'\x11\xd3\x13', + -0x2cec: b'\x11\xd3\x14', + -0x2ceb: b'\x11\xd3\x15', + -0x2cea: b'\x11\xd3\x16', + -0x2ce9: b'\x11\xd3\x17', + -0x2ce8: b'\x11\xd3\x18', + -0x2ce7: b'\x11\xd3\x19', + -0x2ce6: b'\x11\xd3\x1a', + -0x2ce5: b'\x11\xd3\x1b', + -0x2ce4: b'\x11\xd3\x1c', + -0x2ce3: b'\x11\xd3\x1d', + -0x2ce2: b'\x11\xd3\x1e', + -0x2ce1: b'\x11\xd3\x1f', + -0x2ce0: b'\x11\xd3 ', + -0x2cdf: b'\x11\xd3!', + -0x2cde: b'\x11\xd3"', + -0x2cdd: b'\x11\xd3#', + -0x2cdc: b'\x11\xd3$', + -0x2cdb: b'\x11\xd3%', + -0x2cda: b'\x11\xd3&', + -0x2cd9: b"\x11\xd3'", + -0x2cd8: b'\x11\xd3(', + -0x2cd7: b'\x11\xd3)', + -0x2cd6: b'\x11\xd3*', + -0x2cd5: b'\x11\xd3+', + -0x2cd4: b'\x11\xd3,', + -0x2cd3: b'\x11\xd3-', + -0x2cd2: b'\x11\xd3.', + -0x2cd1: b'\x11\xd3/', + -0x2cd0: b'\x11\xd30', + -0x2ccf: b'\x11\xd31', + -0x2cce: b'\x11\xd32', + -0x2ccd: b'\x11\xd33', + -0x2ccc: b'\x11\xd34', + -0x2ccb: b'\x11\xd35', + -0x2cca: b'\x11\xd36', + -0x2cc9: b'\x11\xd37', + -0x2cc8: b'\x11\xd38', + -0x2cc7: b'\x11\xd39', + -0x2cc6: b'\x11\xd3:', + -0x2cc5: b'\x11\xd3;', + -0x2cc4: b'\x11\xd3<', + -0x2cc3: b'\x11\xd3=', + -0x2cc2: b'\x11\xd3>', + -0x2cc1: b'\x11\xd3?', + -0x2cc0: b'\x11\xd3@', + -0x2cbf: b'\x11\xd3A', + -0x2cbe: b'\x11\xd3B', + -0x2cbd: b'\x11\xd3C', + -0x2cbc: b'\x11\xd3D', + -0x2cbb: b'\x11\xd3E', + -0x2cba: b'\x11\xd3F', + -0x2cb9: b'\x11\xd3G', + -0x2cb8: b'\x11\xd3H', + -0x2cb7: b'\x11\xd3I', + -0x2cb6: b'\x11\xd3J', + -0x2cb5: b'\x11\xd3K', + -0x2cb4: b'\x11\xd3L', + -0x2cb3: b'\x11\xd3M', + -0x2cb2: b'\x11\xd3N', + -0x2cb1: b'\x11\xd3O', + -0x2cb0: b'\x11\xd3P', + -0x2caf: b'\x11\xd3Q', + -0x2cae: b'\x11\xd3R', + -0x2cad: b'\x11\xd3S', + -0x2cac: b'\x11\xd3T', + -0x2cab: b'\x11\xd3U', + -0x2caa: b'\x11\xd3V', + -0x2ca9: b'\x11\xd3W', + -0x2ca8: b'\x11\xd3X', + -0x2ca7: b'\x11\xd3Y', + -0x2ca6: b'\x11\xd3Z', + -0x2ca5: b'\x11\xd3[', + -0x2ca4: b'\x11\xd3\\', + -0x2ca3: b'\x11\xd3]', + -0x2ca2: b'\x11\xd3^', + -0x2ca1: b'\x11\xd3_', + -0x2ca0: b'\x11\xd3`', + -0x2c9f: b'\x11\xd3a', + -0x2c9e: b'\x11\xd3b', + -0x2c9d: b'\x11\xd3c', + -0x2c9c: b'\x11\xd3d', + -0x2c9b: b'\x11\xd3e', + -0x2c9a: b'\x11\xd3f', + -0x2c99: b'\x11\xd3g', + -0x2c98: b'\x11\xd3h', + -0x2c97: b'\x11\xd3i', + -0x2c96: b'\x11\xd3j', + -0x2c95: b'\x11\xd3k', + -0x2c94: b'\x11\xd3l', + -0x2c93: b'\x11\xd3m', + -0x2c92: b'\x11\xd3n', + -0x2c91: b'\x11\xd3o', + -0x2c90: b'\x11\xd3p', + -0x2c8f: b'\x11\xd3q', + -0x2c8e: b'\x11\xd3r', + -0x2c8d: b'\x11\xd3s', + -0x2c8c: b'\x11\xd3t', + -0x2c8b: b'\x11\xd3u', + -0x2c8a: b'\x11\xd3v', + -0x2c89: b'\x11\xd3w', + -0x2c88: b'\x11\xd3x', + -0x2c87: b'\x11\xd3y', + -0x2c86: b'\x11\xd3z', + -0x2c85: b'\x11\xd3{', + -0x2c84: b'\x11\xd3|', + -0x2c83: b'\x11\xd3}', + -0x2c82: b'\x11\xd3~', + -0x2c81: b'\x11\xd3\x7f', + -0x2c80: b'\x11\xd3\x80', + -0x2c7f: b'\x11\xd3\x81', + -0x2c7e: b'\x11\xd3\x82', + -0x2c7d: b'\x11\xd3\x83', + -0x2c7c: b'\x11\xd3\x84', + -0x2c7b: b'\x11\xd3\x85', + -0x2c7a: b'\x11\xd3\x86', + -0x2c79: b'\x11\xd3\x87', + -0x2c78: b'\x11\xd3\x88', + -0x2c77: b'\x11\xd3\x89', + -0x2c76: b'\x11\xd3\x8a', + -0x2c75: b'\x11\xd3\x8b', + -0x2c74: b'\x11\xd3\x8c', + -0x2c73: b'\x11\xd3\x8d', + -0x2c72: b'\x11\xd3\x8e', + -0x2c71: b'\x11\xd3\x8f', + -0x2c70: b'\x11\xd3\x90', + -0x2c6f: b'\x11\xd3\x91', + -0x2c6e: b'\x11\xd3\x92', + -0x2c6d: b'\x11\xd3\x93', + -0x2c6c: b'\x11\xd3\x94', + -0x2c6b: b'\x11\xd3\x95', + -0x2c6a: b'\x11\xd3\x96', + -0x2c69: b'\x11\xd3\x97', + -0x2c68: b'\x11\xd3\x98', + -0x2c67: b'\x11\xd3\x99', + -0x2c66: b'\x11\xd3\x9a', + -0x2c65: b'\x11\xd3\x9b', + -0x2c64: b'\x11\xd3\x9c', + -0x2c63: b'\x11\xd3\x9d', + -0x2c62: b'\x11\xd3\x9e', + -0x2c61: b'\x11\xd3\x9f', + -0x2c60: b'\x11\xd3\xa0', + -0x2c5f: b'\x11\xd3\xa1', + -0x2c5e: b'\x11\xd3\xa2', + -0x2c5d: b'\x11\xd3\xa3', + -0x2c5c: b'\x11\xd3\xa4', + -0x2c5b: b'\x11\xd3\xa5', + -0x2c5a: b'\x11\xd3\xa6', + -0x2c59: b'\x11\xd3\xa7', + -0x2c58: b'\x11\xd3\xa8', + -0x2c57: b'\x11\xd3\xa9', + -0x2c56: b'\x11\xd3\xaa', + -0x2c55: b'\x11\xd3\xab', + -0x2c54: b'\x11\xd3\xac', + -0x2c53: b'\x11\xd3\xad', + -0x2c52: b'\x11\xd3\xae', + -0x2c51: b'\x11\xd3\xaf', + -0x2c50: b'\x11\xd3\xb0', + -0x2c4f: b'\x11\xd3\xb1', + -0x2c4e: b'\x11\xd3\xb2', + -0x2c4d: b'\x11\xd3\xb3', + -0x2c4c: b'\x11\xd3\xb4', + -0x2c4b: b'\x11\xd3\xb5', + -0x2c4a: b'\x11\xd3\xb6', + -0x2c49: b'\x11\xd3\xb7', + -0x2c48: b'\x11\xd3\xb8', + -0x2c47: b'\x11\xd3\xb9', + -0x2c46: b'\x11\xd3\xba', + -0x2c45: b'\x11\xd3\xbb', + -0x2c44: b'\x11\xd3\xbc', + -0x2c43: b'\x11\xd3\xbd', + -0x2c42: b'\x11\xd3\xbe', + -0x2c41: b'\x11\xd3\xbf', + -0x2c40: b'\x11\xd3\xc0', + -0x2c3f: b'\x11\xd3\xc1', + -0x2c3e: b'\x11\xd3\xc2', + -0x2c3d: b'\x11\xd3\xc3', + -0x2c3c: b'\x11\xd3\xc4', + -0x2c3b: b'\x11\xd3\xc5', + -0x2c3a: b'\x11\xd3\xc6', + -0x2c39: b'\x11\xd3\xc7', + -0x2c38: b'\x11\xd3\xc8', + -0x2c37: b'\x11\xd3\xc9', + -0x2c36: b'\x11\xd3\xca', + -0x2c35: b'\x11\xd3\xcb', + -0x2c34: b'\x11\xd3\xcc', + -0x2c33: b'\x11\xd3\xcd', + -0x2c32: b'\x11\xd3\xce', + -0x2c31: b'\x11\xd3\xcf', + -0x2c30: b'\x11\xd3\xd0', + -0x2c2f: b'\x11\xd3\xd1', + -0x2c2e: b'\x11\xd3\xd2', + -0x2c2d: b'\x11\xd3\xd3', + -0x2c2c: b'\x11\xd3\xd4', + -0x2c2b: b'\x11\xd3\xd5', + -0x2c2a: b'\x11\xd3\xd6', + -0x2c29: b'\x11\xd3\xd7', + -0x2c28: b'\x11\xd3\xd8', + -0x2c27: b'\x11\xd3\xd9', + -0x2c26: b'\x11\xd3\xda', + -0x2c25: b'\x11\xd3\xdb', + -0x2c24: b'\x11\xd3\xdc', + -0x2c23: b'\x11\xd3\xdd', + -0x2c22: b'\x11\xd3\xde', + -0x2c21: b'\x11\xd3\xdf', + -0x2c20: b'\x11\xd3\xe0', + -0x2c1f: b'\x11\xd3\xe1', + -0x2c1e: b'\x11\xd3\xe2', + -0x2c1d: b'\x11\xd3\xe3', + -0x2c1c: b'\x11\xd3\xe4', + -0x2c1b: b'\x11\xd3\xe5', + -0x2c1a: b'\x11\xd3\xe6', + -0x2c19: b'\x11\xd3\xe7', + -0x2c18: b'\x11\xd3\xe8', + -0x2c17: b'\x11\xd3\xe9', + -0x2c16: b'\x11\xd3\xea', + -0x2c15: b'\x11\xd3\xeb', + -0x2c14: b'\x11\xd3\xec', + -0x2c13: b'\x11\xd3\xed', + -0x2c12: b'\x11\xd3\xee', + -0x2c11: b'\x11\xd3\xef', + -0x2c10: b'\x11\xd3\xf0', + -0x2c0f: b'\x11\xd3\xf1', + -0x2c0e: b'\x11\xd3\xf2', + -0x2c0d: b'\x11\xd3\xf3', + -0x2c0c: b'\x11\xd3\xf4', + -0x2c0b: b'\x11\xd3\xf5', + -0x2c0a: b'\x11\xd3\xf6', + -0x2c09: b'\x11\xd3\xf7', + -0x2c08: b'\x11\xd3\xf8', + -0x2c07: b'\x11\xd3\xf9', + -0x2c06: b'\x11\xd3\xfa', + -0x2c05: b'\x11\xd3\xfb', + -0x2c04: b'\x11\xd3\xfc', + -0x2c03: b'\x11\xd3\xfd', + -0x2c02: b'\x11\xd3\xfe', + -0x2c01: b'\x11\xd3\xff', + -0x2c00: b'\x11\xd4\x00', + -0x2bff: b'\x11\xd4\x01', + -0x2bfe: b'\x11\xd4\x02', + -0x2bfd: b'\x11\xd4\x03', + -0x2bfc: b'\x11\xd4\x04', + -0x2bfb: b'\x11\xd4\x05', + -0x2bfa: b'\x11\xd4\x06', + -0x2bf9: b'\x11\xd4\x07', + -0x2bf8: b'\x11\xd4\x08', + -0x2bf7: b'\x11\xd4\t', + -0x2bf6: b'\x11\xd4\n', + -0x2bf5: b'\x11\xd4\x0b', + -0x2bf4: b'\x11\xd4\x0c', + -0x2bf3: b'\x11\xd4\r', + -0x2bf2: b'\x11\xd4\x0e', + -0x2bf1: b'\x11\xd4\x0f', + -0x2bf0: b'\x11\xd4\x10', + -0x2bef: b'\x11\xd4\x11', + -0x2bee: b'\x11\xd4\x12', + -0x2bed: b'\x11\xd4\x13', + -0x2bec: b'\x11\xd4\x14', + -0x2beb: b'\x11\xd4\x15', + -0x2bea: b'\x11\xd4\x16', + -0x2be9: b'\x11\xd4\x17', + -0x2be8: b'\x11\xd4\x18', + -0x2be7: b'\x11\xd4\x19', + -0x2be6: b'\x11\xd4\x1a', + -0x2be5: b'\x11\xd4\x1b', + -0x2be4: b'\x11\xd4\x1c', + -0x2be3: b'\x11\xd4\x1d', + -0x2be2: b'\x11\xd4\x1e', + -0x2be1: b'\x11\xd4\x1f', + -0x2be0: b'\x11\xd4 ', + -0x2bdf: b'\x11\xd4!', + -0x2bde: b'\x11\xd4"', + -0x2bdd: b'\x11\xd4#', + -0x2bdc: b'\x11\xd4$', + -0x2bdb: b'\x11\xd4%', + -0x2bda: b'\x11\xd4&', + -0x2bd9: b"\x11\xd4'", + -0x2bd8: b'\x11\xd4(', + -0x2bd7: b'\x11\xd4)', + -0x2bd6: b'\x11\xd4*', + -0x2bd5: b'\x11\xd4+', + -0x2bd4: b'\x11\xd4,', + -0x2bd3: b'\x11\xd4-', + -0x2bd2: b'\x11\xd4.', + -0x2bd1: b'\x11\xd4/', + -0x2bd0: b'\x11\xd40', + -0x2bcf: b'\x11\xd41', + -0x2bce: b'\x11\xd42', + -0x2bcd: b'\x11\xd43', + -0x2bcc: b'\x11\xd44', + -0x2bcb: b'\x11\xd45', + -0x2bca: b'\x11\xd46', + -0x2bc9: b'\x11\xd47', + -0x2bc8: b'\x11\xd48', + -0x2bc7: b'\x11\xd49', + -0x2bc6: b'\x11\xd4:', + -0x2bc5: b'\x11\xd4;', + -0x2bc4: b'\x11\xd4<', + -0x2bc3: b'\x11\xd4=', + -0x2bc2: b'\x11\xd4>', + -0x2bc1: b'\x11\xd4?', + -0x2bc0: b'\x11\xd4@', + -0x2bbf: b'\x11\xd4A', + -0x2bbe: b'\x11\xd4B', + -0x2bbd: b'\x11\xd4C', + -0x2bbc: b'\x11\xd4D', + -0x2bbb: b'\x11\xd4E', + -0x2bba: b'\x11\xd4F', + -0x2bb9: b'\x11\xd4G', + -0x2bb8: b'\x11\xd4H', + -0x2bb7: b'\x11\xd4I', + -0x2bb6: b'\x11\xd4J', + -0x2bb5: b'\x11\xd4K', + -0x2bb4: b'\x11\xd4L', + -0x2bb3: b'\x11\xd4M', + -0x2bb2: b'\x11\xd4N', + -0x2bb1: b'\x11\xd4O', + -0x2bb0: b'\x11\xd4P', + -0x2baf: b'\x11\xd4Q', + -0x2bae: b'\x11\xd4R', + -0x2bad: b'\x11\xd4S', + -0x2bac: b'\x11\xd4T', + -0x2bab: b'\x11\xd4U', + -0x2baa: b'\x11\xd4V', + -0x2ba9: b'\x11\xd4W', + -0x2ba8: b'\x11\xd4X', + -0x2ba7: b'\x11\xd4Y', + -0x2ba6: b'\x11\xd4Z', + -0x2ba5: b'\x11\xd4[', + -0x2ba4: b'\x11\xd4\\', + -0x2ba3: b'\x11\xd4]', + -0x2ba2: b'\x11\xd4^', + -0x2ba1: b'\x11\xd4_', + -0x2ba0: b'\x11\xd4`', + -0x2b9f: b'\x11\xd4a', + -0x2b9e: b'\x11\xd4b', + -0x2b9d: b'\x11\xd4c', + -0x2b9c: b'\x11\xd4d', + -0x2b9b: b'\x11\xd4e', + -0x2b9a: b'\x11\xd4f', + -0x2b99: b'\x11\xd4g', + -0x2b98: b'\x11\xd4h', + -0x2b97: b'\x11\xd4i', + -0x2b96: b'\x11\xd4j', + -0x2b95: b'\x11\xd4k', + -0x2b94: b'\x11\xd4l', + -0x2b93: b'\x11\xd4m', + -0x2b92: b'\x11\xd4n', + -0x2b91: b'\x11\xd4o', + -0x2b90: b'\x11\xd4p', + -0x2b8f: b'\x11\xd4q', + -0x2b8e: b'\x11\xd4r', + -0x2b8d: b'\x11\xd4s', + -0x2b8c: b'\x11\xd4t', + -0x2b8b: b'\x11\xd4u', + -0x2b8a: b'\x11\xd4v', + -0x2b89: b'\x11\xd4w', + -0x2b88: b'\x11\xd4x', + -0x2b87: b'\x11\xd4y', + -0x2b86: b'\x11\xd4z', + -0x2b85: b'\x11\xd4{', + -0x2b84: b'\x11\xd4|', + -0x2b83: b'\x11\xd4}', + -0x2b82: b'\x11\xd4~', + -0x2b81: b'\x11\xd4\x7f', + -0x2b80: b'\x11\xd4\x80', + -0x2b7f: b'\x11\xd4\x81', + -0x2b7e: b'\x11\xd4\x82', + -0x2b7d: b'\x11\xd4\x83', + -0x2b7c: b'\x11\xd4\x84', + -0x2b7b: b'\x11\xd4\x85', + -0x2b7a: b'\x11\xd4\x86', + -0x2b79: b'\x11\xd4\x87', + -0x2b78: b'\x11\xd4\x88', + -0x2b77: b'\x11\xd4\x89', + -0x2b76: b'\x11\xd4\x8a', + -0x2b75: b'\x11\xd4\x8b', + -0x2b74: b'\x11\xd4\x8c', + -0x2b73: b'\x11\xd4\x8d', + -0x2b72: b'\x11\xd4\x8e', + -0x2b71: b'\x11\xd4\x8f', + -0x2b70: b'\x11\xd4\x90', + -0x2b6f: b'\x11\xd4\x91', + -0x2b6e: b'\x11\xd4\x92', + -0x2b6d: b'\x11\xd4\x93', + -0x2b6c: b'\x11\xd4\x94', + -0x2b6b: b'\x11\xd4\x95', + -0x2b6a: b'\x11\xd4\x96', + -0x2b69: b'\x11\xd4\x97', + -0x2b68: b'\x11\xd4\x98', + -0x2b67: b'\x11\xd4\x99', + -0x2b66: b'\x11\xd4\x9a', + -0x2b65: b'\x11\xd4\x9b', + -0x2b64: b'\x11\xd4\x9c', + -0x2b63: b'\x11\xd4\x9d', + -0x2b62: b'\x11\xd4\x9e', + -0x2b61: b'\x11\xd4\x9f', + -0x2b60: b'\x11\xd4\xa0', + -0x2b5f: b'\x11\xd4\xa1', + -0x2b5e: b'\x11\xd4\xa2', + -0x2b5d: b'\x11\xd4\xa3', + -0x2b5c: b'\x11\xd4\xa4', + -0x2b5b: b'\x11\xd4\xa5', + -0x2b5a: b'\x11\xd4\xa6', + -0x2b59: b'\x11\xd4\xa7', + -0x2b58: b'\x11\xd4\xa8', + -0x2b57: b'\x11\xd4\xa9', + -0x2b56: b'\x11\xd4\xaa', + -0x2b55: b'\x11\xd4\xab', + -0x2b54: b'\x11\xd4\xac', + -0x2b53: b'\x11\xd4\xad', + -0x2b52: b'\x11\xd4\xae', + -0x2b51: b'\x11\xd4\xaf', + -0x2b50: b'\x11\xd4\xb0', + -0x2b4f: b'\x11\xd4\xb1', + -0x2b4e: b'\x11\xd4\xb2', + -0x2b4d: b'\x11\xd4\xb3', + -0x2b4c: b'\x11\xd4\xb4', + -0x2b4b: b'\x11\xd4\xb5', + -0x2b4a: b'\x11\xd4\xb6', + -0x2b49: b'\x11\xd4\xb7', + -0x2b48: b'\x11\xd4\xb8', + -0x2b47: b'\x11\xd4\xb9', + -0x2b46: b'\x11\xd4\xba', + -0x2b45: b'\x11\xd4\xbb', + -0x2b44: b'\x11\xd4\xbc', + -0x2b43: b'\x11\xd4\xbd', + -0x2b42: b'\x11\xd4\xbe', + -0x2b41: b'\x11\xd4\xbf', + -0x2b40: b'\x11\xd4\xc0', + -0x2b3f: b'\x11\xd4\xc1', + -0x2b3e: b'\x11\xd4\xc2', + -0x2b3d: b'\x11\xd4\xc3', + -0x2b3c: b'\x11\xd4\xc4', + -0x2b3b: b'\x11\xd4\xc5', + -0x2b3a: b'\x11\xd4\xc6', + -0x2b39: b'\x11\xd4\xc7', + -0x2b38: b'\x11\xd4\xc8', + -0x2b37: b'\x11\xd4\xc9', + -0x2b36: b'\x11\xd4\xca', + -0x2b35: b'\x11\xd4\xcb', + -0x2b34: b'\x11\xd4\xcc', + -0x2b33: b'\x11\xd4\xcd', + -0x2b32: b'\x11\xd4\xce', + -0x2b31: b'\x11\xd4\xcf', + -0x2b30: b'\x11\xd4\xd0', + -0x2b2f: b'\x11\xd4\xd1', + -0x2b2e: b'\x11\xd4\xd2', + -0x2b2d: b'\x11\xd4\xd3', + -0x2b2c: b'\x11\xd4\xd4', + -0x2b2b: b'\x11\xd4\xd5', + -0x2b2a: b'\x11\xd4\xd6', + -0x2b29: b'\x11\xd4\xd7', + -0x2b28: b'\x11\xd4\xd8', + -0x2b27: b'\x11\xd4\xd9', + -0x2b26: b'\x11\xd4\xda', + -0x2b25: b'\x11\xd4\xdb', + -0x2b24: b'\x11\xd4\xdc', + -0x2b23: b'\x11\xd4\xdd', + -0x2b22: b'\x11\xd4\xde', + -0x2b21: b'\x11\xd4\xdf', + -0x2b20: b'\x11\xd4\xe0', + -0x2b1f: b'\x11\xd4\xe1', + -0x2b1e: b'\x11\xd4\xe2', + -0x2b1d: b'\x11\xd4\xe3', + -0x2b1c: b'\x11\xd4\xe4', + -0x2b1b: b'\x11\xd4\xe5', + -0x2b1a: b'\x11\xd4\xe6', + -0x2b19: b'\x11\xd4\xe7', + -0x2b18: b'\x11\xd4\xe8', + -0x2b17: b'\x11\xd4\xe9', + -0x2b16: b'\x11\xd4\xea', + -0x2b15: b'\x11\xd4\xeb', + -0x2b14: b'\x11\xd4\xec', + -0x2b13: b'\x11\xd4\xed', + -0x2b12: b'\x11\xd4\xee', + -0x2b11: b'\x11\xd4\xef', + -0x2b10: b'\x11\xd4\xf0', + -0x2b0f: b'\x11\xd4\xf1', + -0x2b0e: b'\x11\xd4\xf2', + -0x2b0d: b'\x11\xd4\xf3', + -0x2b0c: b'\x11\xd4\xf4', + -0x2b0b: b'\x11\xd4\xf5', + -0x2b0a: b'\x11\xd4\xf6', + -0x2b09: b'\x11\xd4\xf7', + -0x2b08: b'\x11\xd4\xf8', + -0x2b07: b'\x11\xd4\xf9', + -0x2b06: b'\x11\xd4\xfa', + -0x2b05: b'\x11\xd4\xfb', + -0x2b04: b'\x11\xd4\xfc', + -0x2b03: b'\x11\xd4\xfd', + -0x2b02: b'\x11\xd4\xfe', + -0x2b01: b'\x11\xd4\xff', + -0x2b00: b'\x11\xd5\x00', + -0x2aff: b'\x11\xd5\x01', + -0x2afe: b'\x11\xd5\x02', + -0x2afd: b'\x11\xd5\x03', + -0x2afc: b'\x11\xd5\x04', + -0x2afb: b'\x11\xd5\x05', + -0x2afa: b'\x11\xd5\x06', + -0x2af9: b'\x11\xd5\x07', + -0x2af8: b'\x11\xd5\x08', + -0x2af7: b'\x11\xd5\t', + -0x2af6: b'\x11\xd5\n', + -0x2af5: b'\x11\xd5\x0b', + -0x2af4: b'\x11\xd5\x0c', + -0x2af3: b'\x11\xd5\r', + -0x2af2: b'\x11\xd5\x0e', + -0x2af1: b'\x11\xd5\x0f', + -0x2af0: b'\x11\xd5\x10', + -0x2aef: b'\x11\xd5\x11', + -0x2aee: b'\x11\xd5\x12', + -0x2aed: b'\x11\xd5\x13', + -0x2aec: b'\x11\xd5\x14', + -0x2aeb: b'\x11\xd5\x15', + -0x2aea: b'\x11\xd5\x16', + -0x2ae9: b'\x11\xd5\x17', + -0x2ae8: b'\x11\xd5\x18', + -0x2ae7: b'\x11\xd5\x19', + -0x2ae6: b'\x11\xd5\x1a', + -0x2ae5: b'\x11\xd5\x1b', + -0x2ae4: b'\x11\xd5\x1c', + -0x2ae3: b'\x11\xd5\x1d', + -0x2ae2: b'\x11\xd5\x1e', + -0x2ae1: b'\x11\xd5\x1f', + -0x2ae0: b'\x11\xd5 ', + -0x2adf: b'\x11\xd5!', + -0x2ade: b'\x11\xd5"', + -0x2add: b'\x11\xd5#', + -0x2adc: b'\x11\xd5$', + -0x2adb: b'\x11\xd5%', + -0x2ada: b'\x11\xd5&', + -0x2ad9: b"\x11\xd5'", + -0x2ad8: b'\x11\xd5(', + -0x2ad7: b'\x11\xd5)', + -0x2ad6: b'\x11\xd5*', + -0x2ad5: b'\x11\xd5+', + -0x2ad4: b'\x11\xd5,', + -0x2ad3: b'\x11\xd5-', + -0x2ad2: b'\x11\xd5.', + -0x2ad1: b'\x11\xd5/', + -0x2ad0: b'\x11\xd50', + -0x2acf: b'\x11\xd51', + -0x2ace: b'\x11\xd52', + -0x2acd: b'\x11\xd53', + -0x2acc: b'\x11\xd54', + -0x2acb: b'\x11\xd55', + -0x2aca: b'\x11\xd56', + -0x2ac9: b'\x11\xd57', + -0x2ac8: b'\x11\xd58', + -0x2ac7: b'\x11\xd59', + -0x2ac6: b'\x11\xd5:', + -0x2ac5: b'\x11\xd5;', + -0x2ac4: b'\x11\xd5<', + -0x2ac3: b'\x11\xd5=', + -0x2ac2: b'\x11\xd5>', + -0x2ac1: b'\x11\xd5?', + -0x2ac0: b'\x11\xd5@', + -0x2abf: b'\x11\xd5A', + -0x2abe: b'\x11\xd5B', + -0x2abd: b'\x11\xd5C', + -0x2abc: b'\x11\xd5D', + -0x2abb: b'\x11\xd5E', + -0x2aba: b'\x11\xd5F', + -0x2ab9: b'\x11\xd5G', + -0x2ab8: b'\x11\xd5H', + -0x2ab7: b'\x11\xd5I', + -0x2ab6: b'\x11\xd5J', + -0x2ab5: b'\x11\xd5K', + -0x2ab4: b'\x11\xd5L', + -0x2ab3: b'\x11\xd5M', + -0x2ab2: b'\x11\xd5N', + -0x2ab1: b'\x11\xd5O', + -0x2ab0: b'\x11\xd5P', + -0x2aaf: b'\x11\xd5Q', + -0x2aae: b'\x11\xd5R', + -0x2aad: b'\x11\xd5S', + -0x2aac: b'\x11\xd5T', + -0x2aab: b'\x11\xd5U', + -0x2aaa: b'\x11\xd5V', + -0x2aa9: b'\x11\xd5W', + -0x2aa8: b'\x11\xd5X', + -0x2aa7: b'\x11\xd5Y', + -0x2aa6: b'\x11\xd5Z', + -0x2aa5: b'\x11\xd5[', + -0x2aa4: b'\x11\xd5\\', + -0x2aa3: b'\x11\xd5]', + -0x2aa2: b'\x11\xd5^', + -0x2aa1: b'\x11\xd5_', + -0x2aa0: b'\x11\xd5`', + -0x2a9f: b'\x11\xd5a', + -0x2a9e: b'\x11\xd5b', + -0x2a9d: b'\x11\xd5c', + -0x2a9c: b'\x11\xd5d', + -0x2a9b: b'\x11\xd5e', + -0x2a9a: b'\x11\xd5f', + -0x2a99: b'\x11\xd5g', + -0x2a98: b'\x11\xd5h', + -0x2a97: b'\x11\xd5i', + -0x2a96: b'\x11\xd5j', + -0x2a95: b'\x11\xd5k', + -0x2a94: b'\x11\xd5l', + -0x2a93: b'\x11\xd5m', + -0x2a92: b'\x11\xd5n', + -0x2a91: b'\x11\xd5o', + -0x2a90: b'\x11\xd5p', + -0x2a8f: b'\x11\xd5q', + -0x2a8e: b'\x11\xd5r', + -0x2a8d: b'\x11\xd5s', + -0x2a8c: b'\x11\xd5t', + -0x2a8b: b'\x11\xd5u', + -0x2a8a: b'\x11\xd5v', + -0x2a89: b'\x11\xd5w', + -0x2a88: b'\x11\xd5x', + -0x2a87: b'\x11\xd5y', + -0x2a86: b'\x11\xd5z', + -0x2a85: b'\x11\xd5{', + -0x2a84: b'\x11\xd5|', + -0x2a83: b'\x11\xd5}', + -0x2a82: b'\x11\xd5~', + -0x2a81: b'\x11\xd5\x7f', + -0x2a80: b'\x11\xd5\x80', + -0x2a7f: b'\x11\xd5\x81', + -0x2a7e: b'\x11\xd5\x82', + -0x2a7d: b'\x11\xd5\x83', + -0x2a7c: b'\x11\xd5\x84', + -0x2a7b: b'\x11\xd5\x85', + -0x2a7a: b'\x11\xd5\x86', + -0x2a79: b'\x11\xd5\x87', + -0x2a78: b'\x11\xd5\x88', + -0x2a77: b'\x11\xd5\x89', + -0x2a76: b'\x11\xd5\x8a', + -0x2a75: b'\x11\xd5\x8b', + -0x2a74: b'\x11\xd5\x8c', + -0x2a73: b'\x11\xd5\x8d', + -0x2a72: b'\x11\xd5\x8e', + -0x2a71: b'\x11\xd5\x8f', + -0x2a70: b'\x11\xd5\x90', + -0x2a6f: b'\x11\xd5\x91', + -0x2a6e: b'\x11\xd5\x92', + -0x2a6d: b'\x11\xd5\x93', + -0x2a6c: b'\x11\xd5\x94', + -0x2a6b: b'\x11\xd5\x95', + -0x2a6a: b'\x11\xd5\x96', + -0x2a69: b'\x11\xd5\x97', + -0x2a68: b'\x11\xd5\x98', + -0x2a67: b'\x11\xd5\x99', + -0x2a66: b'\x11\xd5\x9a', + -0x2a65: b'\x11\xd5\x9b', + -0x2a64: b'\x11\xd5\x9c', + -0x2a63: b'\x11\xd5\x9d', + -0x2a62: b'\x11\xd5\x9e', + -0x2a61: b'\x11\xd5\x9f', + -0x2a60: b'\x11\xd5\xa0', + -0x2a5f: b'\x11\xd5\xa1', + -0x2a5e: b'\x11\xd5\xa2', + -0x2a5d: b'\x11\xd5\xa3', + -0x2a5c: b'\x11\xd5\xa4', + -0x2a5b: b'\x11\xd5\xa5', + -0x2a5a: b'\x11\xd5\xa6', + -0x2a59: b'\x11\xd5\xa7', + -0x2a58: b'\x11\xd5\xa8', + -0x2a57: b'\x11\xd5\xa9', + -0x2a56: b'\x11\xd5\xaa', + -0x2a55: b'\x11\xd5\xab', + -0x2a54: b'\x11\xd5\xac', + -0x2a53: b'\x11\xd5\xad', + -0x2a52: b'\x11\xd5\xae', + -0x2a51: b'\x11\xd5\xaf', + -0x2a50: b'\x11\xd5\xb0', + -0x2a4f: b'\x11\xd5\xb1', + -0x2a4e: b'\x11\xd5\xb2', + -0x2a4d: b'\x11\xd5\xb3', + -0x2a4c: b'\x11\xd5\xb4', + -0x2a4b: b'\x11\xd5\xb5', + -0x2a4a: b'\x11\xd5\xb6', + -0x2a49: b'\x11\xd5\xb7', + -0x2a48: b'\x11\xd5\xb8', + -0x2a47: b'\x11\xd5\xb9', + -0x2a46: b'\x11\xd5\xba', + -0x2a45: b'\x11\xd5\xbb', + -0x2a44: b'\x11\xd5\xbc', + -0x2a43: b'\x11\xd5\xbd', + -0x2a42: b'\x11\xd5\xbe', + -0x2a41: b'\x11\xd5\xbf', + -0x2a40: b'\x11\xd5\xc0', + -0x2a3f: b'\x11\xd5\xc1', + -0x2a3e: b'\x11\xd5\xc2', + -0x2a3d: b'\x11\xd5\xc3', + -0x2a3c: b'\x11\xd5\xc4', + -0x2a3b: b'\x11\xd5\xc5', + -0x2a3a: b'\x11\xd5\xc6', + -0x2a39: b'\x11\xd5\xc7', + -0x2a38: b'\x11\xd5\xc8', + -0x2a37: b'\x11\xd5\xc9', + -0x2a36: b'\x11\xd5\xca', + -0x2a35: b'\x11\xd5\xcb', + -0x2a34: b'\x11\xd5\xcc', + -0x2a33: b'\x11\xd5\xcd', + -0x2a32: b'\x11\xd5\xce', + -0x2a31: b'\x11\xd5\xcf', + -0x2a30: b'\x11\xd5\xd0', + -0x2a2f: b'\x11\xd5\xd1', + -0x2a2e: b'\x11\xd5\xd2', + -0x2a2d: b'\x11\xd5\xd3', + -0x2a2c: b'\x11\xd5\xd4', + -0x2a2b: b'\x11\xd5\xd5', + -0x2a2a: b'\x11\xd5\xd6', + -0x2a29: b'\x11\xd5\xd7', + -0x2a28: b'\x11\xd5\xd8', + -0x2a27: b'\x11\xd5\xd9', + -0x2a26: b'\x11\xd5\xda', + -0x2a25: b'\x11\xd5\xdb', + -0x2a24: b'\x11\xd5\xdc', + -0x2a23: b'\x11\xd5\xdd', + -0x2a22: b'\x11\xd5\xde', + -0x2a21: b'\x11\xd5\xdf', + -0x2a20: b'\x11\xd5\xe0', + -0x2a1f: b'\x11\xd5\xe1', + -0x2a1e: b'\x11\xd5\xe2', + -0x2a1d: b'\x11\xd5\xe3', + -0x2a1c: b'\x11\xd5\xe4', + -0x2a1b: b'\x11\xd5\xe5', + -0x2a1a: b'\x11\xd5\xe6', + -0x2a19: b'\x11\xd5\xe7', + -0x2a18: b'\x11\xd5\xe8', + -0x2a17: b'\x11\xd5\xe9', + -0x2a16: b'\x11\xd5\xea', + -0x2a15: b'\x11\xd5\xeb', + -0x2a14: b'\x11\xd5\xec', + -0x2a13: b'\x11\xd5\xed', + -0x2a12: b'\x11\xd5\xee', + -0x2a11: b'\x11\xd5\xef', + -0x2a10: b'\x11\xd5\xf0', + -0x2a0f: b'\x11\xd5\xf1', + -0x2a0e: b'\x11\xd5\xf2', + -0x2a0d: b'\x11\xd5\xf3', + -0x2a0c: b'\x11\xd5\xf4', + -0x2a0b: b'\x11\xd5\xf5', + -0x2a0a: b'\x11\xd5\xf6', + -0x2a09: b'\x11\xd5\xf7', + -0x2a08: b'\x11\xd5\xf8', + -0x2a07: b'\x11\xd5\xf9', + -0x2a06: b'\x11\xd5\xfa', + -0x2a05: b'\x11\xd5\xfb', + -0x2a04: b'\x11\xd5\xfc', + -0x2a03: b'\x11\xd5\xfd', + -0x2a02: b'\x11\xd5\xfe', + -0x2a01: b'\x11\xd5\xff', + -0x2a00: b'\x11\xd6\x00', + -0x29ff: b'\x11\xd6\x01', + -0x29fe: b'\x11\xd6\x02', + -0x29fd: b'\x11\xd6\x03', + -0x29fc: b'\x11\xd6\x04', + -0x29fb: b'\x11\xd6\x05', + -0x29fa: b'\x11\xd6\x06', + -0x29f9: b'\x11\xd6\x07', + -0x29f8: b'\x11\xd6\x08', + -0x29f7: b'\x11\xd6\t', + -0x29f6: b'\x11\xd6\n', + -0x29f5: b'\x11\xd6\x0b', + -0x29f4: b'\x11\xd6\x0c', + -0x29f3: b'\x11\xd6\r', + -0x29f2: b'\x11\xd6\x0e', + -0x29f1: b'\x11\xd6\x0f', + -0x29f0: b'\x11\xd6\x10', + -0x29ef: b'\x11\xd6\x11', + -0x29ee: b'\x11\xd6\x12', + -0x29ed: b'\x11\xd6\x13', + -0x29ec: b'\x11\xd6\x14', + -0x29eb: b'\x11\xd6\x15', + -0x29ea: b'\x11\xd6\x16', + -0x29e9: b'\x11\xd6\x17', + -0x29e8: b'\x11\xd6\x18', + -0x29e7: b'\x11\xd6\x19', + -0x29e6: b'\x11\xd6\x1a', + -0x29e5: b'\x11\xd6\x1b', + -0x29e4: b'\x11\xd6\x1c', + -0x29e3: b'\x11\xd6\x1d', + -0x29e2: b'\x11\xd6\x1e', + -0x29e1: b'\x11\xd6\x1f', + -0x29e0: b'\x11\xd6 ', + -0x29df: b'\x11\xd6!', + -0x29de: b'\x11\xd6"', + -0x29dd: b'\x11\xd6#', + -0x29dc: b'\x11\xd6$', + -0x29db: b'\x11\xd6%', + -0x29da: b'\x11\xd6&', + -0x29d9: b"\x11\xd6'", + -0x29d8: b'\x11\xd6(', + -0x29d7: b'\x11\xd6)', + -0x29d6: b'\x11\xd6*', + -0x29d5: b'\x11\xd6+', + -0x29d4: b'\x11\xd6,', + -0x29d3: b'\x11\xd6-', + -0x29d2: b'\x11\xd6.', + -0x29d1: b'\x11\xd6/', + -0x29d0: b'\x11\xd60', + -0x29cf: b'\x11\xd61', + -0x29ce: b'\x11\xd62', + -0x29cd: b'\x11\xd63', + -0x29cc: b'\x11\xd64', + -0x29cb: b'\x11\xd65', + -0x29ca: b'\x11\xd66', + -0x29c9: b'\x11\xd67', + -0x29c8: b'\x11\xd68', + -0x29c7: b'\x11\xd69', + -0x29c6: b'\x11\xd6:', + -0x29c5: b'\x11\xd6;', + -0x29c4: b'\x11\xd6<', + -0x29c3: b'\x11\xd6=', + -0x29c2: b'\x11\xd6>', + -0x29c1: b'\x11\xd6?', + -0x29c0: b'\x11\xd6@', + -0x29bf: b'\x11\xd6A', + -0x29be: b'\x11\xd6B', + -0x29bd: b'\x11\xd6C', + -0x29bc: b'\x11\xd6D', + -0x29bb: b'\x11\xd6E', + -0x29ba: b'\x11\xd6F', + -0x29b9: b'\x11\xd6G', + -0x29b8: b'\x11\xd6H', + -0x29b7: b'\x11\xd6I', + -0x29b6: b'\x11\xd6J', + -0x29b5: b'\x11\xd6K', + -0x29b4: b'\x11\xd6L', + -0x29b3: b'\x11\xd6M', + -0x29b2: b'\x11\xd6N', + -0x29b1: b'\x11\xd6O', + -0x29b0: b'\x11\xd6P', + -0x29af: b'\x11\xd6Q', + -0x29ae: b'\x11\xd6R', + -0x29ad: b'\x11\xd6S', + -0x29ac: b'\x11\xd6T', + -0x29ab: b'\x11\xd6U', + -0x29aa: b'\x11\xd6V', + -0x29a9: b'\x11\xd6W', + -0x29a8: b'\x11\xd6X', + -0x29a7: b'\x11\xd6Y', + -0x29a6: b'\x11\xd6Z', + -0x29a5: b'\x11\xd6[', + -0x29a4: b'\x11\xd6\\', + -0x29a3: b'\x11\xd6]', + -0x29a2: b'\x11\xd6^', + -0x29a1: b'\x11\xd6_', + -0x29a0: b'\x11\xd6`', + -0x299f: b'\x11\xd6a', + -0x299e: b'\x11\xd6b', + -0x299d: b'\x11\xd6c', + -0x299c: b'\x11\xd6d', + -0x299b: b'\x11\xd6e', + -0x299a: b'\x11\xd6f', + -0x2999: b'\x11\xd6g', + -0x2998: b'\x11\xd6h', + -0x2997: b'\x11\xd6i', + -0x2996: b'\x11\xd6j', + -0x2995: b'\x11\xd6k', + -0x2994: b'\x11\xd6l', + -0x2993: b'\x11\xd6m', + -0x2992: b'\x11\xd6n', + -0x2991: b'\x11\xd6o', + -0x2990: b'\x11\xd6p', + -0x298f: b'\x11\xd6q', + -0x298e: b'\x11\xd6r', + -0x298d: b'\x11\xd6s', + -0x298c: b'\x11\xd6t', + -0x298b: b'\x11\xd6u', + -0x298a: b'\x11\xd6v', + -0x2989: b'\x11\xd6w', + -0x2988: b'\x11\xd6x', + -0x2987: b'\x11\xd6y', + -0x2986: b'\x11\xd6z', + -0x2985: b'\x11\xd6{', + -0x2984: b'\x11\xd6|', + -0x2983: b'\x11\xd6}', + -0x2982: b'\x11\xd6~', + -0x2981: b'\x11\xd6\x7f', + -0x2980: b'\x11\xd6\x80', + -0x297f: b'\x11\xd6\x81', + -0x297e: b'\x11\xd6\x82', + -0x297d: b'\x11\xd6\x83', + -0x297c: b'\x11\xd6\x84', + -0x297b: b'\x11\xd6\x85', + -0x297a: b'\x11\xd6\x86', + -0x2979: b'\x11\xd6\x87', + -0x2978: b'\x11\xd6\x88', + -0x2977: b'\x11\xd6\x89', + -0x2976: b'\x11\xd6\x8a', + -0x2975: b'\x11\xd6\x8b', + -0x2974: b'\x11\xd6\x8c', + -0x2973: b'\x11\xd6\x8d', + -0x2972: b'\x11\xd6\x8e', + -0x2971: b'\x11\xd6\x8f', + -0x2970: b'\x11\xd6\x90', + -0x296f: b'\x11\xd6\x91', + -0x296e: b'\x11\xd6\x92', + -0x296d: b'\x11\xd6\x93', + -0x296c: b'\x11\xd6\x94', + -0x296b: b'\x11\xd6\x95', + -0x296a: b'\x11\xd6\x96', + -0x2969: b'\x11\xd6\x97', + -0x2968: b'\x11\xd6\x98', + -0x2967: b'\x11\xd6\x99', + -0x2966: b'\x11\xd6\x9a', + -0x2965: b'\x11\xd6\x9b', + -0x2964: b'\x11\xd6\x9c', + -0x2963: b'\x11\xd6\x9d', + -0x2962: b'\x11\xd6\x9e', + -0x2961: b'\x11\xd6\x9f', + -0x2960: b'\x11\xd6\xa0', + -0x295f: b'\x11\xd6\xa1', + -0x295e: b'\x11\xd6\xa2', + -0x295d: b'\x11\xd6\xa3', + -0x295c: b'\x11\xd6\xa4', + -0x295b: b'\x11\xd6\xa5', + -0x295a: b'\x11\xd6\xa6', + -0x2959: b'\x11\xd6\xa7', + -0x2958: b'\x11\xd6\xa8', + -0x2957: b'\x11\xd6\xa9', + -0x2956: b'\x11\xd6\xaa', + -0x2955: b'\x11\xd6\xab', + -0x2954: b'\x11\xd6\xac', + -0x2953: b'\x11\xd6\xad', + -0x2952: b'\x11\xd6\xae', + -0x2951: b'\x11\xd6\xaf', + -0x2950: b'\x11\xd6\xb0', + -0x294f: b'\x11\xd6\xb1', + -0x294e: b'\x11\xd6\xb2', + -0x294d: b'\x11\xd6\xb3', + -0x294c: b'\x11\xd6\xb4', + -0x294b: b'\x11\xd6\xb5', + -0x294a: b'\x11\xd6\xb6', + -0x2949: b'\x11\xd6\xb7', + -0x2948: b'\x11\xd6\xb8', + -0x2947: b'\x11\xd6\xb9', + -0x2946: b'\x11\xd6\xba', + -0x2945: b'\x11\xd6\xbb', + -0x2944: b'\x11\xd6\xbc', + -0x2943: b'\x11\xd6\xbd', + -0x2942: b'\x11\xd6\xbe', + -0x2941: b'\x11\xd6\xbf', + -0x2940: b'\x11\xd6\xc0', + -0x293f: b'\x11\xd6\xc1', + -0x293e: b'\x11\xd6\xc2', + -0x293d: b'\x11\xd6\xc3', + -0x293c: b'\x11\xd6\xc4', + -0x293b: b'\x11\xd6\xc5', + -0x293a: b'\x11\xd6\xc6', + -0x2939: b'\x11\xd6\xc7', + -0x2938: b'\x11\xd6\xc8', + -0x2937: b'\x11\xd6\xc9', + -0x2936: b'\x11\xd6\xca', + -0x2935: b'\x11\xd6\xcb', + -0x2934: b'\x11\xd6\xcc', + -0x2933: b'\x11\xd6\xcd', + -0x2932: b'\x11\xd6\xce', + -0x2931: b'\x11\xd6\xcf', + -0x2930: b'\x11\xd6\xd0', + -0x292f: b'\x11\xd6\xd1', + -0x292e: b'\x11\xd6\xd2', + -0x292d: b'\x11\xd6\xd3', + -0x292c: b'\x11\xd6\xd4', + -0x292b: b'\x11\xd6\xd5', + -0x292a: b'\x11\xd6\xd6', + -0x2929: b'\x11\xd6\xd7', + -0x2928: b'\x11\xd6\xd8', + -0x2927: b'\x11\xd6\xd9', + -0x2926: b'\x11\xd6\xda', + -0x2925: b'\x11\xd6\xdb', + -0x2924: b'\x11\xd6\xdc', + -0x2923: b'\x11\xd6\xdd', + -0x2922: b'\x11\xd6\xde', + -0x2921: b'\x11\xd6\xdf', + -0x2920: b'\x11\xd6\xe0', + -0x291f: b'\x11\xd6\xe1', + -0x291e: b'\x11\xd6\xe2', + -0x291d: b'\x11\xd6\xe3', + -0x291c: b'\x11\xd6\xe4', + -0x291b: b'\x11\xd6\xe5', + -0x291a: b'\x11\xd6\xe6', + -0x2919: b'\x11\xd6\xe7', + -0x2918: b'\x11\xd6\xe8', + -0x2917: b'\x11\xd6\xe9', + -0x2916: b'\x11\xd6\xea', + -0x2915: b'\x11\xd6\xeb', + -0x2914: b'\x11\xd6\xec', + -0x2913: b'\x11\xd6\xed', + -0x2912: b'\x11\xd6\xee', + -0x2911: b'\x11\xd6\xef', + -0x2910: b'\x11\xd6\xf0', + -0x290f: b'\x11\xd6\xf1', + -0x290e: b'\x11\xd6\xf2', + -0x290d: b'\x11\xd6\xf3', + -0x290c: b'\x11\xd6\xf4', + -0x290b: b'\x11\xd6\xf5', + -0x290a: b'\x11\xd6\xf6', + -0x2909: b'\x11\xd6\xf7', + -0x2908: b'\x11\xd6\xf8', + -0x2907: b'\x11\xd6\xf9', + -0x2906: b'\x11\xd6\xfa', + -0x2905: b'\x11\xd6\xfb', + -0x2904: b'\x11\xd6\xfc', + -0x2903: b'\x11\xd6\xfd', + -0x2902: b'\x11\xd6\xfe', + -0x2901: b'\x11\xd6\xff', + -0x2900: b'\x11\xd7\x00', + -0x28ff: b'\x11\xd7\x01', + -0x28fe: b'\x11\xd7\x02', + -0x28fd: b'\x11\xd7\x03', + -0x28fc: b'\x11\xd7\x04', + -0x28fb: b'\x11\xd7\x05', + -0x28fa: b'\x11\xd7\x06', + -0x28f9: b'\x11\xd7\x07', + -0x28f8: b'\x11\xd7\x08', + -0x28f7: b'\x11\xd7\t', + -0x28f6: b'\x11\xd7\n', + -0x28f5: b'\x11\xd7\x0b', + -0x28f4: b'\x11\xd7\x0c', + -0x28f3: b'\x11\xd7\r', + -0x28f2: b'\x11\xd7\x0e', + -0x28f1: b'\x11\xd7\x0f', + -0x28f0: b'\x11\xd7\x10', + -0x28ef: b'\x11\xd7\x11', + -0x28ee: b'\x11\xd7\x12', + -0x28ed: b'\x11\xd7\x13', + -0x28ec: b'\x11\xd7\x14', + -0x28eb: b'\x11\xd7\x15', + -0x28ea: b'\x11\xd7\x16', + -0x28e9: b'\x11\xd7\x17', + -0x28e8: b'\x11\xd7\x18', + -0x28e7: b'\x11\xd7\x19', + -0x28e6: b'\x11\xd7\x1a', + -0x28e5: b'\x11\xd7\x1b', + -0x28e4: b'\x11\xd7\x1c', + -0x28e3: b'\x11\xd7\x1d', + -0x28e2: b'\x11\xd7\x1e', + -0x28e1: b'\x11\xd7\x1f', + -0x28e0: b'\x11\xd7 ', + -0x28df: b'\x11\xd7!', + -0x28de: b'\x11\xd7"', + -0x28dd: b'\x11\xd7#', + -0x28dc: b'\x11\xd7$', + -0x28db: b'\x11\xd7%', + -0x28da: b'\x11\xd7&', + -0x28d9: b"\x11\xd7'", + -0x28d8: b'\x11\xd7(', + -0x28d7: b'\x11\xd7)', + -0x28d6: b'\x11\xd7*', + -0x28d5: b'\x11\xd7+', + -0x28d4: b'\x11\xd7,', + -0x28d3: b'\x11\xd7-', + -0x28d2: b'\x11\xd7.', + -0x28d1: b'\x11\xd7/', + -0x28d0: b'\x11\xd70', + -0x28cf: b'\x11\xd71', + -0x28ce: b'\x11\xd72', + -0x28cd: b'\x11\xd73', + -0x28cc: b'\x11\xd74', + -0x28cb: b'\x11\xd75', + -0x28ca: b'\x11\xd76', + -0x28c9: b'\x11\xd77', + -0x28c8: b'\x11\xd78', + -0x28c7: b'\x11\xd79', + -0x28c6: b'\x11\xd7:', + -0x28c5: b'\x11\xd7;', + -0x28c4: b'\x11\xd7<', + -0x28c3: b'\x11\xd7=', + -0x28c2: b'\x11\xd7>', + -0x28c1: b'\x11\xd7?', + -0x28c0: b'\x11\xd7@', + -0x28bf: b'\x11\xd7A', + -0x28be: b'\x11\xd7B', + -0x28bd: b'\x11\xd7C', + -0x28bc: b'\x11\xd7D', + -0x28bb: b'\x11\xd7E', + -0x28ba: b'\x11\xd7F', + -0x28b9: b'\x11\xd7G', + -0x28b8: b'\x11\xd7H', + -0x28b7: b'\x11\xd7I', + -0x28b6: b'\x11\xd7J', + -0x28b5: b'\x11\xd7K', + -0x28b4: b'\x11\xd7L', + -0x28b3: b'\x11\xd7M', + -0x28b2: b'\x11\xd7N', + -0x28b1: b'\x11\xd7O', + -0x28b0: b'\x11\xd7P', + -0x28af: b'\x11\xd7Q', + -0x28ae: b'\x11\xd7R', + -0x28ad: b'\x11\xd7S', + -0x28ac: b'\x11\xd7T', + -0x28ab: b'\x11\xd7U', + -0x28aa: b'\x11\xd7V', + -0x28a9: b'\x11\xd7W', + -0x28a8: b'\x11\xd7X', + -0x28a7: b'\x11\xd7Y', + -0x28a6: b'\x11\xd7Z', + -0x28a5: b'\x11\xd7[', + -0x28a4: b'\x11\xd7\\', + -0x28a3: b'\x11\xd7]', + -0x28a2: b'\x11\xd7^', + -0x28a1: b'\x11\xd7_', + -0x28a0: b'\x11\xd7`', + -0x289f: b'\x11\xd7a', + -0x289e: b'\x11\xd7b', + -0x289d: b'\x11\xd7c', + -0x289c: b'\x11\xd7d', + -0x289b: b'\x11\xd7e', + -0x289a: b'\x11\xd7f', + -0x2899: b'\x11\xd7g', + -0x2898: b'\x11\xd7h', + -0x2897: b'\x11\xd7i', + -0x2896: b'\x11\xd7j', + -0x2895: b'\x11\xd7k', + -0x2894: b'\x11\xd7l', + -0x2893: b'\x11\xd7m', + -0x2892: b'\x11\xd7n', + -0x2891: b'\x11\xd7o', + -0x2890: b'\x11\xd7p', + -0x288f: b'\x11\xd7q', + -0x288e: b'\x11\xd7r', + -0x288d: b'\x11\xd7s', + -0x288c: b'\x11\xd7t', + -0x288b: b'\x11\xd7u', + -0x288a: b'\x11\xd7v', + -0x2889: b'\x11\xd7w', + -0x2888: b'\x11\xd7x', + -0x2887: b'\x11\xd7y', + -0x2886: b'\x11\xd7z', + -0x2885: b'\x11\xd7{', + -0x2884: b'\x11\xd7|', + -0x2883: b'\x11\xd7}', + -0x2882: b'\x11\xd7~', + -0x2881: b'\x11\xd7\x7f', + -0x2880: b'\x11\xd7\x80', + -0x287f: b'\x11\xd7\x81', + -0x287e: b'\x11\xd7\x82', + -0x287d: b'\x11\xd7\x83', + -0x287c: b'\x11\xd7\x84', + -0x287b: b'\x11\xd7\x85', + -0x287a: b'\x11\xd7\x86', + -0x2879: b'\x11\xd7\x87', + -0x2878: b'\x11\xd7\x88', + -0x2877: b'\x11\xd7\x89', + -0x2876: b'\x11\xd7\x8a', + -0x2875: b'\x11\xd7\x8b', + -0x2874: b'\x11\xd7\x8c', + -0x2873: b'\x11\xd7\x8d', + -0x2872: b'\x11\xd7\x8e', + -0x2871: b'\x11\xd7\x8f', + -0x2870: b'\x11\xd7\x90', + -0x286f: b'\x11\xd7\x91', + -0x286e: b'\x11\xd7\x92', + -0x286d: b'\x11\xd7\x93', + -0x286c: b'\x11\xd7\x94', + -0x286b: b'\x11\xd7\x95', + -0x286a: b'\x11\xd7\x96', + -0x2869: b'\x11\xd7\x97', + -0x2868: b'\x11\xd7\x98', + -0x2867: b'\x11\xd7\x99', + -0x2866: b'\x11\xd7\x9a', + -0x2865: b'\x11\xd7\x9b', + -0x2864: b'\x11\xd7\x9c', + -0x2863: b'\x11\xd7\x9d', + -0x2862: b'\x11\xd7\x9e', + -0x2861: b'\x11\xd7\x9f', + -0x2860: b'\x11\xd7\xa0', + -0x285f: b'\x11\xd7\xa1', + -0x285e: b'\x11\xd7\xa2', + -0x285d: b'\x11\xd7\xa3', + -0x285c: b'\x11\xd7\xa4', + -0x285b: b'\x11\xd7\xa5', + -0x285a: b'\x11\xd7\xa6', + -0x2859: b'\x11\xd7\xa7', + -0x2858: b'\x11\xd7\xa8', + -0x2857: b'\x11\xd7\xa9', + -0x2856: b'\x11\xd7\xaa', + -0x2855: b'\x11\xd7\xab', + -0x2854: b'\x11\xd7\xac', + -0x2853: b'\x11\xd7\xad', + -0x2852: b'\x11\xd7\xae', + -0x2851: b'\x11\xd7\xaf', + -0x2850: b'\x11\xd7\xb0', + -0x284f: b'\x11\xd7\xb1', + -0x284e: b'\x11\xd7\xb2', + -0x284d: b'\x11\xd7\xb3', + -0x284c: b'\x11\xd7\xb4', + -0x284b: b'\x11\xd7\xb5', + -0x284a: b'\x11\xd7\xb6', + -0x2849: b'\x11\xd7\xb7', + -0x2848: b'\x11\xd7\xb8', + -0x2847: b'\x11\xd7\xb9', + -0x2846: b'\x11\xd7\xba', + -0x2845: b'\x11\xd7\xbb', + -0x2844: b'\x11\xd7\xbc', + -0x2843: b'\x11\xd7\xbd', + -0x2842: b'\x11\xd7\xbe', + -0x2841: b'\x11\xd7\xbf', + -0x2840: b'\x11\xd7\xc0', + -0x283f: b'\x11\xd7\xc1', + -0x283e: b'\x11\xd7\xc2', + -0x283d: b'\x11\xd7\xc3', + -0x283c: b'\x11\xd7\xc4', + -0x283b: b'\x11\xd7\xc5', + -0x283a: b'\x11\xd7\xc6', + -0x2839: b'\x11\xd7\xc7', + -0x2838: b'\x11\xd7\xc8', + -0x2837: b'\x11\xd7\xc9', + -0x2836: b'\x11\xd7\xca', + -0x2835: b'\x11\xd7\xcb', + -0x2834: b'\x11\xd7\xcc', + -0x2833: b'\x11\xd7\xcd', + -0x2832: b'\x11\xd7\xce', + -0x2831: b'\x11\xd7\xcf', + -0x2830: b'\x11\xd7\xd0', + -0x282f: b'\x11\xd7\xd1', + -0x282e: b'\x11\xd7\xd2', + -0x282d: b'\x11\xd7\xd3', + -0x282c: b'\x11\xd7\xd4', + -0x282b: b'\x11\xd7\xd5', + -0x282a: b'\x11\xd7\xd6', + -0x2829: b'\x11\xd7\xd7', + -0x2828: b'\x11\xd7\xd8', + -0x2827: b'\x11\xd7\xd9', + -0x2826: b'\x11\xd7\xda', + -0x2825: b'\x11\xd7\xdb', + -0x2824: b'\x11\xd7\xdc', + -0x2823: b'\x11\xd7\xdd', + -0x2822: b'\x11\xd7\xde', + -0x2821: b'\x11\xd7\xdf', + -0x2820: b'\x11\xd7\xe0', + -0x281f: b'\x11\xd7\xe1', + -0x281e: b'\x11\xd7\xe2', + -0x281d: b'\x11\xd7\xe3', + -0x281c: b'\x11\xd7\xe4', + -0x281b: b'\x11\xd7\xe5', + -0x281a: b'\x11\xd7\xe6', + -0x2819: b'\x11\xd7\xe7', + -0x2818: b'\x11\xd7\xe8', + -0x2817: b'\x11\xd7\xe9', + -0x2816: b'\x11\xd7\xea', + -0x2815: b'\x11\xd7\xeb', + -0x2814: b'\x11\xd7\xec', + -0x2813: b'\x11\xd7\xed', + -0x2812: b'\x11\xd7\xee', + -0x2811: b'\x11\xd7\xef', + -0x2810: b'\x11\xd7\xf0', + -0x280f: b'\x11\xd7\xf1', + -0x280e: b'\x11\xd7\xf2', + -0x280d: b'\x11\xd7\xf3', + -0x280c: b'\x11\xd7\xf4', + -0x280b: b'\x11\xd7\xf5', + -0x280a: b'\x11\xd7\xf6', + -0x2809: b'\x11\xd7\xf7', + -0x2808: b'\x11\xd7\xf8', + -0x2807: b'\x11\xd7\xf9', + -0x2806: b'\x11\xd7\xfa', + -0x2805: b'\x11\xd7\xfb', + -0x2804: b'\x11\xd7\xfc', + -0x2803: b'\x11\xd7\xfd', + -0x2802: b'\x11\xd7\xfe', + -0x2801: b'\x11\xd7\xff', + -0x2800: b'\x11\xd8\x00', + -0x27ff: b'\x11\xd8\x01', + -0x27fe: b'\x11\xd8\x02', + -0x27fd: b'\x11\xd8\x03', + -0x27fc: b'\x11\xd8\x04', + -0x27fb: b'\x11\xd8\x05', + -0x27fa: b'\x11\xd8\x06', + -0x27f9: b'\x11\xd8\x07', + -0x27f8: b'\x11\xd8\x08', + -0x27f7: b'\x11\xd8\t', + -0x27f6: b'\x11\xd8\n', + -0x27f5: b'\x11\xd8\x0b', + -0x27f4: b'\x11\xd8\x0c', + -0x27f3: b'\x11\xd8\r', + -0x27f2: b'\x11\xd8\x0e', + -0x27f1: b'\x11\xd8\x0f', + -0x27f0: b'\x11\xd8\x10', + -0x27ef: b'\x11\xd8\x11', + -0x27ee: b'\x11\xd8\x12', + -0x27ed: b'\x11\xd8\x13', + -0x27ec: b'\x11\xd8\x14', + -0x27eb: b'\x11\xd8\x15', + -0x27ea: b'\x11\xd8\x16', + -0x27e9: b'\x11\xd8\x17', + -0x27e8: b'\x11\xd8\x18', + -0x27e7: b'\x11\xd8\x19', + -0x27e6: b'\x11\xd8\x1a', + -0x27e5: b'\x11\xd8\x1b', + -0x27e4: b'\x11\xd8\x1c', + -0x27e3: b'\x11\xd8\x1d', + -0x27e2: b'\x11\xd8\x1e', + -0x27e1: b'\x11\xd8\x1f', + -0x27e0: b'\x11\xd8 ', + -0x27df: b'\x11\xd8!', + -0x27de: b'\x11\xd8"', + -0x27dd: b'\x11\xd8#', + -0x27dc: b'\x11\xd8$', + -0x27db: b'\x11\xd8%', + -0x27da: b'\x11\xd8&', + -0x27d9: b"\x11\xd8'", + -0x27d8: b'\x11\xd8(', + -0x27d7: b'\x11\xd8)', + -0x27d6: b'\x11\xd8*', + -0x27d5: b'\x11\xd8+', + -0x27d4: b'\x11\xd8,', + -0x27d3: b'\x11\xd8-', + -0x27d2: b'\x11\xd8.', + -0x27d1: b'\x11\xd8/', + -0x27d0: b'\x11\xd80', + -0x27cf: b'\x11\xd81', + -0x27ce: b'\x11\xd82', + -0x27cd: b'\x11\xd83', + -0x27cc: b'\x11\xd84', + -0x27cb: b'\x11\xd85', + -0x27ca: b'\x11\xd86', + -0x27c9: b'\x11\xd87', + -0x27c8: b'\x11\xd88', + -0x27c7: b'\x11\xd89', + -0x27c6: b'\x11\xd8:', + -0x27c5: b'\x11\xd8;', + -0x27c4: b'\x11\xd8<', + -0x27c3: b'\x11\xd8=', + -0x27c2: b'\x11\xd8>', + -0x27c1: b'\x11\xd8?', + -0x27c0: b'\x11\xd8@', + -0x27bf: b'\x11\xd8A', + -0x27be: b'\x11\xd8B', + -0x27bd: b'\x11\xd8C', + -0x27bc: b'\x11\xd8D', + -0x27bb: b'\x11\xd8E', + -0x27ba: b'\x11\xd8F', + -0x27b9: b'\x11\xd8G', + -0x27b8: b'\x11\xd8H', + -0x27b7: b'\x11\xd8I', + -0x27b6: b'\x11\xd8J', + -0x27b5: b'\x11\xd8K', + -0x27b4: b'\x11\xd8L', + -0x27b3: b'\x11\xd8M', + -0x27b2: b'\x11\xd8N', + -0x27b1: b'\x11\xd8O', + -0x27b0: b'\x11\xd8P', + -0x27af: b'\x11\xd8Q', + -0x27ae: b'\x11\xd8R', + -0x27ad: b'\x11\xd8S', + -0x27ac: b'\x11\xd8T', + -0x27ab: b'\x11\xd8U', + -0x27aa: b'\x11\xd8V', + -0x27a9: b'\x11\xd8W', + -0x27a8: b'\x11\xd8X', + -0x27a7: b'\x11\xd8Y', + -0x27a6: b'\x11\xd8Z', + -0x27a5: b'\x11\xd8[', + -0x27a4: b'\x11\xd8\\', + -0x27a3: b'\x11\xd8]', + -0x27a2: b'\x11\xd8^', + -0x27a1: b'\x11\xd8_', + -0x27a0: b'\x11\xd8`', + -0x279f: b'\x11\xd8a', + -0x279e: b'\x11\xd8b', + -0x279d: b'\x11\xd8c', + -0x279c: b'\x11\xd8d', + -0x279b: b'\x11\xd8e', + -0x279a: b'\x11\xd8f', + -0x2799: b'\x11\xd8g', + -0x2798: b'\x11\xd8h', + -0x2797: b'\x11\xd8i', + -0x2796: b'\x11\xd8j', + -0x2795: b'\x11\xd8k', + -0x2794: b'\x11\xd8l', + -0x2793: b'\x11\xd8m', + -0x2792: b'\x11\xd8n', + -0x2791: b'\x11\xd8o', + -0x2790: b'\x11\xd8p', + -0x278f: b'\x11\xd8q', + -0x278e: b'\x11\xd8r', + -0x278d: b'\x11\xd8s', + -0x278c: b'\x11\xd8t', + -0x278b: b'\x11\xd8u', + -0x278a: b'\x11\xd8v', + -0x2789: b'\x11\xd8w', + -0x2788: b'\x11\xd8x', + -0x2787: b'\x11\xd8y', + -0x2786: b'\x11\xd8z', + -0x2785: b'\x11\xd8{', + -0x2784: b'\x11\xd8|', + -0x2783: b'\x11\xd8}', + -0x2782: b'\x11\xd8~', + -0x2781: b'\x11\xd8\x7f', + -0x2780: b'\x11\xd8\x80', + -0x277f: b'\x11\xd8\x81', + -0x277e: b'\x11\xd8\x82', + -0x277d: b'\x11\xd8\x83', + -0x277c: b'\x11\xd8\x84', + -0x277b: b'\x11\xd8\x85', + -0x277a: b'\x11\xd8\x86', + -0x2779: b'\x11\xd8\x87', + -0x2778: b'\x11\xd8\x88', + -0x2777: b'\x11\xd8\x89', + -0x2776: b'\x11\xd8\x8a', + -0x2775: b'\x11\xd8\x8b', + -0x2774: b'\x11\xd8\x8c', + -0x2773: b'\x11\xd8\x8d', + -0x2772: b'\x11\xd8\x8e', + -0x2771: b'\x11\xd8\x8f', + -0x2770: b'\x11\xd8\x90', + -0x276f: b'\x11\xd8\x91', + -0x276e: b'\x11\xd8\x92', + -0x276d: b'\x11\xd8\x93', + -0x276c: b'\x11\xd8\x94', + -0x276b: b'\x11\xd8\x95', + -0x276a: b'\x11\xd8\x96', + -0x2769: b'\x11\xd8\x97', + -0x2768: b'\x11\xd8\x98', + -0x2767: b'\x11\xd8\x99', + -0x2766: b'\x11\xd8\x9a', + -0x2765: b'\x11\xd8\x9b', + -0x2764: b'\x11\xd8\x9c', + -0x2763: b'\x11\xd8\x9d', + -0x2762: b'\x11\xd8\x9e', + -0x2761: b'\x11\xd8\x9f', + -0x2760: b'\x11\xd8\xa0', + -0x275f: b'\x11\xd8\xa1', + -0x275e: b'\x11\xd8\xa2', + -0x275d: b'\x11\xd8\xa3', + -0x275c: b'\x11\xd8\xa4', + -0x275b: b'\x11\xd8\xa5', + -0x275a: b'\x11\xd8\xa6', + -0x2759: b'\x11\xd8\xa7', + -0x2758: b'\x11\xd8\xa8', + -0x2757: b'\x11\xd8\xa9', + -0x2756: b'\x11\xd8\xaa', + -0x2755: b'\x11\xd8\xab', + -0x2754: b'\x11\xd8\xac', + -0x2753: b'\x11\xd8\xad', + -0x2752: b'\x11\xd8\xae', + -0x2751: b'\x11\xd8\xaf', + -0x2750: b'\x11\xd8\xb0', + -0x274f: b'\x11\xd8\xb1', + -0x274e: b'\x11\xd8\xb2', + -0x274d: b'\x11\xd8\xb3', + -0x274c: b'\x11\xd8\xb4', + -0x274b: b'\x11\xd8\xb5', + -0x274a: b'\x11\xd8\xb6', + -0x2749: b'\x11\xd8\xb7', + -0x2748: b'\x11\xd8\xb8', + -0x2747: b'\x11\xd8\xb9', + -0x2746: b'\x11\xd8\xba', + -0x2745: b'\x11\xd8\xbb', + -0x2744: b'\x11\xd8\xbc', + -0x2743: b'\x11\xd8\xbd', + -0x2742: b'\x11\xd8\xbe', + -0x2741: b'\x11\xd8\xbf', + -0x2740: b'\x11\xd8\xc0', + -0x273f: b'\x11\xd8\xc1', + -0x273e: b'\x11\xd8\xc2', + -0x273d: b'\x11\xd8\xc3', + -0x273c: b'\x11\xd8\xc4', + -0x273b: b'\x11\xd8\xc5', + -0x273a: b'\x11\xd8\xc6', + -0x2739: b'\x11\xd8\xc7', + -0x2738: b'\x11\xd8\xc8', + -0x2737: b'\x11\xd8\xc9', + -0x2736: b'\x11\xd8\xca', + -0x2735: b'\x11\xd8\xcb', + -0x2734: b'\x11\xd8\xcc', + -0x2733: b'\x11\xd8\xcd', + -0x2732: b'\x11\xd8\xce', + -0x2731: b'\x11\xd8\xcf', + -0x2730: b'\x11\xd8\xd0', + -0x272f: b'\x11\xd8\xd1', + -0x272e: b'\x11\xd8\xd2', + -0x272d: b'\x11\xd8\xd3', + -0x272c: b'\x11\xd8\xd4', + -0x272b: b'\x11\xd8\xd5', + -0x272a: b'\x11\xd8\xd6', + -0x2729: b'\x11\xd8\xd7', + -0x2728: b'\x11\xd8\xd8', + -0x2727: b'\x11\xd8\xd9', + -0x2726: b'\x11\xd8\xda', + -0x2725: b'\x11\xd8\xdb', + -0x2724: b'\x11\xd8\xdc', + -0x2723: b'\x11\xd8\xdd', + -0x2722: b'\x11\xd8\xde', + -0x2721: b'\x11\xd8\xdf', + -0x2720: b'\x11\xd8\xe0', + -0x271f: b'\x11\xd8\xe1', + -0x271e: b'\x11\xd8\xe2', + -0x271d: b'\x11\xd8\xe3', + -0x271c: b'\x11\xd8\xe4', + -0x271b: b'\x11\xd8\xe5', + -0x271a: b'\x11\xd8\xe6', + -0x2719: b'\x11\xd8\xe7', + -0x2718: b'\x11\xd8\xe8', + -0x2717: b'\x11\xd8\xe9', + -0x2716: b'\x11\xd8\xea', + -0x2715: b'\x11\xd8\xeb', + -0x2714: b'\x11\xd8\xec', + -0x2713: b'\x11\xd8\xed', + -0x2712: b'\x11\xd8\xee', + -0x2711: b'\x11\xd8\xef', + -0x2710: b'\x11\xd8\xf0', + -0x270f: b'\x11\xd8\xf1', + -0x270e: b'\x11\xd8\xf2', + -0x270d: b'\x11\xd8\xf3', + -0x270c: b'\x11\xd8\xf4', + -0x270b: b'\x11\xd8\xf5', + -0x270a: b'\x11\xd8\xf6', + -0x2709: b'\x11\xd8\xf7', + -0x2708: b'\x11\xd8\xf8', + -0x2707: b'\x11\xd8\xf9', + -0x2706: b'\x11\xd8\xfa', + -0x2705: b'\x11\xd8\xfb', + -0x2704: b'\x11\xd8\xfc', + -0x2703: b'\x11\xd8\xfd', + -0x2702: b'\x11\xd8\xfe', + -0x2701: b'\x11\xd8\xff', + -0x2700: b'\x11\xd9\x00', + -0x26ff: b'\x11\xd9\x01', + -0x26fe: b'\x11\xd9\x02', + -0x26fd: b'\x11\xd9\x03', + -0x26fc: b'\x11\xd9\x04', + -0x26fb: b'\x11\xd9\x05', + -0x26fa: b'\x11\xd9\x06', + -0x26f9: b'\x11\xd9\x07', + -0x26f8: b'\x11\xd9\x08', + -0x26f7: b'\x11\xd9\t', + -0x26f6: b'\x11\xd9\n', + -0x26f5: b'\x11\xd9\x0b', + -0x26f4: b'\x11\xd9\x0c', + -0x26f3: b'\x11\xd9\r', + -0x26f2: b'\x11\xd9\x0e', + -0x26f1: b'\x11\xd9\x0f', + -0x26f0: b'\x11\xd9\x10', + -0x26ef: b'\x11\xd9\x11', + -0x26ee: b'\x11\xd9\x12', + -0x26ed: b'\x11\xd9\x13', + -0x26ec: b'\x11\xd9\x14', + -0x26eb: b'\x11\xd9\x15', + -0x26ea: b'\x11\xd9\x16', + -0x26e9: b'\x11\xd9\x17', + -0x26e8: b'\x11\xd9\x18', + -0x26e7: b'\x11\xd9\x19', + -0x26e6: b'\x11\xd9\x1a', + -0x26e5: b'\x11\xd9\x1b', + -0x26e4: b'\x11\xd9\x1c', + -0x26e3: b'\x11\xd9\x1d', + -0x26e2: b'\x11\xd9\x1e', + -0x26e1: b'\x11\xd9\x1f', + -0x26e0: b'\x11\xd9 ', + -0x26df: b'\x11\xd9!', + -0x26de: b'\x11\xd9"', + -0x26dd: b'\x11\xd9#', + -0x26dc: b'\x11\xd9$', + -0x26db: b'\x11\xd9%', + -0x26da: b'\x11\xd9&', + -0x26d9: b"\x11\xd9'", + -0x26d8: b'\x11\xd9(', + -0x26d7: b'\x11\xd9)', + -0x26d6: b'\x11\xd9*', + -0x26d5: b'\x11\xd9+', + -0x26d4: b'\x11\xd9,', + -0x26d3: b'\x11\xd9-', + -0x26d2: b'\x11\xd9.', + -0x26d1: b'\x11\xd9/', + -0x26d0: b'\x11\xd90', + -0x26cf: b'\x11\xd91', + -0x26ce: b'\x11\xd92', + -0x26cd: b'\x11\xd93', + -0x26cc: b'\x11\xd94', + -0x26cb: b'\x11\xd95', + -0x26ca: b'\x11\xd96', + -0x26c9: b'\x11\xd97', + -0x26c8: b'\x11\xd98', + -0x26c7: b'\x11\xd99', + -0x26c6: b'\x11\xd9:', + -0x26c5: b'\x11\xd9;', + -0x26c4: b'\x11\xd9<', + -0x26c3: b'\x11\xd9=', + -0x26c2: b'\x11\xd9>', + -0x26c1: b'\x11\xd9?', + -0x26c0: b'\x11\xd9@', + -0x26bf: b'\x11\xd9A', + -0x26be: b'\x11\xd9B', + -0x26bd: b'\x11\xd9C', + -0x26bc: b'\x11\xd9D', + -0x26bb: b'\x11\xd9E', + -0x26ba: b'\x11\xd9F', + -0x26b9: b'\x11\xd9G', + -0x26b8: b'\x11\xd9H', + -0x26b7: b'\x11\xd9I', + -0x26b6: b'\x11\xd9J', + -0x26b5: b'\x11\xd9K', + -0x26b4: b'\x11\xd9L', + -0x26b3: b'\x11\xd9M', + -0x26b2: b'\x11\xd9N', + -0x26b1: b'\x11\xd9O', + -0x26b0: b'\x11\xd9P', + -0x26af: b'\x11\xd9Q', + -0x26ae: b'\x11\xd9R', + -0x26ad: b'\x11\xd9S', + -0x26ac: b'\x11\xd9T', + -0x26ab: b'\x11\xd9U', + -0x26aa: b'\x11\xd9V', + -0x26a9: b'\x11\xd9W', + -0x26a8: b'\x11\xd9X', + -0x26a7: b'\x11\xd9Y', + -0x26a6: b'\x11\xd9Z', + -0x26a5: b'\x11\xd9[', + -0x26a4: b'\x11\xd9\\', + -0x26a3: b'\x11\xd9]', + -0x26a2: b'\x11\xd9^', + -0x26a1: b'\x11\xd9_', + -0x26a0: b'\x11\xd9`', + -0x269f: b'\x11\xd9a', + -0x269e: b'\x11\xd9b', + -0x269d: b'\x11\xd9c', + -0x269c: b'\x11\xd9d', + -0x269b: b'\x11\xd9e', + -0x269a: b'\x11\xd9f', + -0x2699: b'\x11\xd9g', + -0x2698: b'\x11\xd9h', + -0x2697: b'\x11\xd9i', + -0x2696: b'\x11\xd9j', + -0x2695: b'\x11\xd9k', + -0x2694: b'\x11\xd9l', + -0x2693: b'\x11\xd9m', + -0x2692: b'\x11\xd9n', + -0x2691: b'\x11\xd9o', + -0x2690: b'\x11\xd9p', + -0x268f: b'\x11\xd9q', + -0x268e: b'\x11\xd9r', + -0x268d: b'\x11\xd9s', + -0x268c: b'\x11\xd9t', + -0x268b: b'\x11\xd9u', + -0x268a: b'\x11\xd9v', + -0x2689: b'\x11\xd9w', + -0x2688: b'\x11\xd9x', + -0x2687: b'\x11\xd9y', + -0x2686: b'\x11\xd9z', + -0x2685: b'\x11\xd9{', + -0x2684: b'\x11\xd9|', + -0x2683: b'\x11\xd9}', + -0x2682: b'\x11\xd9~', + -0x2681: b'\x11\xd9\x7f', + -0x2680: b'\x11\xd9\x80', + -0x267f: b'\x11\xd9\x81', + -0x267e: b'\x11\xd9\x82', + -0x267d: b'\x11\xd9\x83', + -0x267c: b'\x11\xd9\x84', + -0x267b: b'\x11\xd9\x85', + -0x267a: b'\x11\xd9\x86', + -0x2679: b'\x11\xd9\x87', + -0x2678: b'\x11\xd9\x88', + -0x2677: b'\x11\xd9\x89', + -0x2676: b'\x11\xd9\x8a', + -0x2675: b'\x11\xd9\x8b', + -0x2674: b'\x11\xd9\x8c', + -0x2673: b'\x11\xd9\x8d', + -0x2672: b'\x11\xd9\x8e', + -0x2671: b'\x11\xd9\x8f', + -0x2670: b'\x11\xd9\x90', + -0x266f: b'\x11\xd9\x91', + -0x266e: b'\x11\xd9\x92', + -0x266d: b'\x11\xd9\x93', + -0x266c: b'\x11\xd9\x94', + -0x266b: b'\x11\xd9\x95', + -0x266a: b'\x11\xd9\x96', + -0x2669: b'\x11\xd9\x97', + -0x2668: b'\x11\xd9\x98', + -0x2667: b'\x11\xd9\x99', + -0x2666: b'\x11\xd9\x9a', + -0x2665: b'\x11\xd9\x9b', + -0x2664: b'\x11\xd9\x9c', + -0x2663: b'\x11\xd9\x9d', + -0x2662: b'\x11\xd9\x9e', + -0x2661: b'\x11\xd9\x9f', + -0x2660: b'\x11\xd9\xa0', + -0x265f: b'\x11\xd9\xa1', + -0x265e: b'\x11\xd9\xa2', + -0x265d: b'\x11\xd9\xa3', + -0x265c: b'\x11\xd9\xa4', + -0x265b: b'\x11\xd9\xa5', + -0x265a: b'\x11\xd9\xa6', + -0x2659: b'\x11\xd9\xa7', + -0x2658: b'\x11\xd9\xa8', + -0x2657: b'\x11\xd9\xa9', + -0x2656: b'\x11\xd9\xaa', + -0x2655: b'\x11\xd9\xab', + -0x2654: b'\x11\xd9\xac', + -0x2653: b'\x11\xd9\xad', + -0x2652: b'\x11\xd9\xae', + -0x2651: b'\x11\xd9\xaf', + -0x2650: b'\x11\xd9\xb0', + -0x264f: b'\x11\xd9\xb1', + -0x264e: b'\x11\xd9\xb2', + -0x264d: b'\x11\xd9\xb3', + -0x264c: b'\x11\xd9\xb4', + -0x264b: b'\x11\xd9\xb5', + -0x264a: b'\x11\xd9\xb6', + -0x2649: b'\x11\xd9\xb7', + -0x2648: b'\x11\xd9\xb8', + -0x2647: b'\x11\xd9\xb9', + -0x2646: b'\x11\xd9\xba', + -0x2645: b'\x11\xd9\xbb', + -0x2644: b'\x11\xd9\xbc', + -0x2643: b'\x11\xd9\xbd', + -0x2642: b'\x11\xd9\xbe', + -0x2641: b'\x11\xd9\xbf', + -0x2640: b'\x11\xd9\xc0', + -0x263f: b'\x11\xd9\xc1', + -0x263e: b'\x11\xd9\xc2', + -0x263d: b'\x11\xd9\xc3', + -0x263c: b'\x11\xd9\xc4', + -0x263b: b'\x11\xd9\xc5', + -0x263a: b'\x11\xd9\xc6', + -0x2639: b'\x11\xd9\xc7', + -0x2638: b'\x11\xd9\xc8', + -0x2637: b'\x11\xd9\xc9', + -0x2636: b'\x11\xd9\xca', + -0x2635: b'\x11\xd9\xcb', + -0x2634: b'\x11\xd9\xcc', + -0x2633: b'\x11\xd9\xcd', + -0x2632: b'\x11\xd9\xce', + -0x2631: b'\x11\xd9\xcf', + -0x2630: b'\x11\xd9\xd0', + -0x262f: b'\x11\xd9\xd1', + -0x262e: b'\x11\xd9\xd2', + -0x262d: b'\x11\xd9\xd3', + -0x262c: b'\x11\xd9\xd4', + -0x262b: b'\x11\xd9\xd5', + -0x262a: b'\x11\xd9\xd6', + -0x2629: b'\x11\xd9\xd7', + -0x2628: b'\x11\xd9\xd8', + -0x2627: b'\x11\xd9\xd9', + -0x2626: b'\x11\xd9\xda', + -0x2625: b'\x11\xd9\xdb', + -0x2624: b'\x11\xd9\xdc', + -0x2623: b'\x11\xd9\xdd', + -0x2622: b'\x11\xd9\xde', + -0x2621: b'\x11\xd9\xdf', + -0x2620: b'\x11\xd9\xe0', + -0x261f: b'\x11\xd9\xe1', + -0x261e: b'\x11\xd9\xe2', + -0x261d: b'\x11\xd9\xe3', + -0x261c: b'\x11\xd9\xe4', + -0x261b: b'\x11\xd9\xe5', + -0x261a: b'\x11\xd9\xe6', + -0x2619: b'\x11\xd9\xe7', + -0x2618: b'\x11\xd9\xe8', + -0x2617: b'\x11\xd9\xe9', + -0x2616: b'\x11\xd9\xea', + -0x2615: b'\x11\xd9\xeb', + -0x2614: b'\x11\xd9\xec', + -0x2613: b'\x11\xd9\xed', + -0x2612: b'\x11\xd9\xee', + -0x2611: b'\x11\xd9\xef', + -0x2610: b'\x11\xd9\xf0', + -0x260f: b'\x11\xd9\xf1', + -0x260e: b'\x11\xd9\xf2', + -0x260d: b'\x11\xd9\xf3', + -0x260c: b'\x11\xd9\xf4', + -0x260b: b'\x11\xd9\xf5', + -0x260a: b'\x11\xd9\xf6', + -0x2609: b'\x11\xd9\xf7', + -0x2608: b'\x11\xd9\xf8', + -0x2607: b'\x11\xd9\xf9', + -0x2606: b'\x11\xd9\xfa', + -0x2605: b'\x11\xd9\xfb', + -0x2604: b'\x11\xd9\xfc', + -0x2603: b'\x11\xd9\xfd', + -0x2602: b'\x11\xd9\xfe', + -0x2601: b'\x11\xd9\xff', + -0x2600: b'\x11\xda\x00', + -0x25ff: b'\x11\xda\x01', + -0x25fe: b'\x11\xda\x02', + -0x25fd: b'\x11\xda\x03', + -0x25fc: b'\x11\xda\x04', + -0x25fb: b'\x11\xda\x05', + -0x25fa: b'\x11\xda\x06', + -0x25f9: b'\x11\xda\x07', + -0x25f8: b'\x11\xda\x08', + -0x25f7: b'\x11\xda\t', + -0x25f6: b'\x11\xda\n', + -0x25f5: b'\x11\xda\x0b', + -0x25f4: b'\x11\xda\x0c', + -0x25f3: b'\x11\xda\r', + -0x25f2: b'\x11\xda\x0e', + -0x25f1: b'\x11\xda\x0f', + -0x25f0: b'\x11\xda\x10', + -0x25ef: b'\x11\xda\x11', + -0x25ee: b'\x11\xda\x12', + -0x25ed: b'\x11\xda\x13', + -0x25ec: b'\x11\xda\x14', + -0x25eb: b'\x11\xda\x15', + -0x25ea: b'\x11\xda\x16', + -0x25e9: b'\x11\xda\x17', + -0x25e8: b'\x11\xda\x18', + -0x25e7: b'\x11\xda\x19', + -0x25e6: b'\x11\xda\x1a', + -0x25e5: b'\x11\xda\x1b', + -0x25e4: b'\x11\xda\x1c', + -0x25e3: b'\x11\xda\x1d', + -0x25e2: b'\x11\xda\x1e', + -0x25e1: b'\x11\xda\x1f', + -0x25e0: b'\x11\xda ', + -0x25df: b'\x11\xda!', + -0x25de: b'\x11\xda"', + -0x25dd: b'\x11\xda#', + -0x25dc: b'\x11\xda$', + -0x25db: b'\x11\xda%', + -0x25da: b'\x11\xda&', + -0x25d9: b"\x11\xda'", + -0x25d8: b'\x11\xda(', + -0x25d7: b'\x11\xda)', + -0x25d6: b'\x11\xda*', + -0x25d5: b'\x11\xda+', + -0x25d4: b'\x11\xda,', + -0x25d3: b'\x11\xda-', + -0x25d2: b'\x11\xda.', + -0x25d1: b'\x11\xda/', + -0x25d0: b'\x11\xda0', + -0x25cf: b'\x11\xda1', + -0x25ce: b'\x11\xda2', + -0x25cd: b'\x11\xda3', + -0x25cc: b'\x11\xda4', + -0x25cb: b'\x11\xda5', + -0x25ca: b'\x11\xda6', + -0x25c9: b'\x11\xda7', + -0x25c8: b'\x11\xda8', + -0x25c7: b'\x11\xda9', + -0x25c6: b'\x11\xda:', + -0x25c5: b'\x11\xda;', + -0x25c4: b'\x11\xda<', + -0x25c3: b'\x11\xda=', + -0x25c2: b'\x11\xda>', + -0x25c1: b'\x11\xda?', + -0x25c0: b'\x11\xda@', + -0x25bf: b'\x11\xdaA', + -0x25be: b'\x11\xdaB', + -0x25bd: b'\x11\xdaC', + -0x25bc: b'\x11\xdaD', + -0x25bb: b'\x11\xdaE', + -0x25ba: b'\x11\xdaF', + -0x25b9: b'\x11\xdaG', + -0x25b8: b'\x11\xdaH', + -0x25b7: b'\x11\xdaI', + -0x25b6: b'\x11\xdaJ', + -0x25b5: b'\x11\xdaK', + -0x25b4: b'\x11\xdaL', + -0x25b3: b'\x11\xdaM', + -0x25b2: b'\x11\xdaN', + -0x25b1: b'\x11\xdaO', + -0x25b0: b'\x11\xdaP', + -0x25af: b'\x11\xdaQ', + -0x25ae: b'\x11\xdaR', + -0x25ad: b'\x11\xdaS', + -0x25ac: b'\x11\xdaT', + -0x25ab: b'\x11\xdaU', + -0x25aa: b'\x11\xdaV', + -0x25a9: b'\x11\xdaW', + -0x25a8: b'\x11\xdaX', + -0x25a7: b'\x11\xdaY', + -0x25a6: b'\x11\xdaZ', + -0x25a5: b'\x11\xda[', + -0x25a4: b'\x11\xda\\', + -0x25a3: b'\x11\xda]', + -0x25a2: b'\x11\xda^', + -0x25a1: b'\x11\xda_', + -0x25a0: b'\x11\xda`', + -0x259f: b'\x11\xdaa', + -0x259e: b'\x11\xdab', + -0x259d: b'\x11\xdac', + -0x259c: b'\x11\xdad', + -0x259b: b'\x11\xdae', + -0x259a: b'\x11\xdaf', + -0x2599: b'\x11\xdag', + -0x2598: b'\x11\xdah', + -0x2597: b'\x11\xdai', + -0x2596: b'\x11\xdaj', + -0x2595: b'\x11\xdak', + -0x2594: b'\x11\xdal', + -0x2593: b'\x11\xdam', + -0x2592: b'\x11\xdan', + -0x2591: b'\x11\xdao', + -0x2590: b'\x11\xdap', + -0x258f: b'\x11\xdaq', + -0x258e: b'\x11\xdar', + -0x258d: b'\x11\xdas', + -0x258c: b'\x11\xdat', + -0x258b: b'\x11\xdau', + -0x258a: b'\x11\xdav', + -0x2589: b'\x11\xdaw', + -0x2588: b'\x11\xdax', + -0x2587: b'\x11\xday', + -0x2586: b'\x11\xdaz', + -0x2585: b'\x11\xda{', + -0x2584: b'\x11\xda|', + -0x2583: b'\x11\xda}', + -0x2582: b'\x11\xda~', + -0x2581: b'\x11\xda\x7f', + -0x2580: b'\x11\xda\x80', + -0x257f: b'\x11\xda\x81', + -0x257e: b'\x11\xda\x82', + -0x257d: b'\x11\xda\x83', + -0x257c: b'\x11\xda\x84', + -0x257b: b'\x11\xda\x85', + -0x257a: b'\x11\xda\x86', + -0x2579: b'\x11\xda\x87', + -0x2578: b'\x11\xda\x88', + -0x2577: b'\x11\xda\x89', + -0x2576: b'\x11\xda\x8a', + -0x2575: b'\x11\xda\x8b', + -0x2574: b'\x11\xda\x8c', + -0x2573: b'\x11\xda\x8d', + -0x2572: b'\x11\xda\x8e', + -0x2571: b'\x11\xda\x8f', + -0x2570: b'\x11\xda\x90', + -0x256f: b'\x11\xda\x91', + -0x256e: b'\x11\xda\x92', + -0x256d: b'\x11\xda\x93', + -0x256c: b'\x11\xda\x94', + -0x256b: b'\x11\xda\x95', + -0x256a: b'\x11\xda\x96', + -0x2569: b'\x11\xda\x97', + -0x2568: b'\x11\xda\x98', + -0x2567: b'\x11\xda\x99', + -0x2566: b'\x11\xda\x9a', + -0x2565: b'\x11\xda\x9b', + -0x2564: b'\x11\xda\x9c', + -0x2563: b'\x11\xda\x9d', + -0x2562: b'\x11\xda\x9e', + -0x2561: b'\x11\xda\x9f', + -0x2560: b'\x11\xda\xa0', + -0x255f: b'\x11\xda\xa1', + -0x255e: b'\x11\xda\xa2', + -0x255d: b'\x11\xda\xa3', + -0x255c: b'\x11\xda\xa4', + -0x255b: b'\x11\xda\xa5', + -0x255a: b'\x11\xda\xa6', + -0x2559: b'\x11\xda\xa7', + -0x2558: b'\x11\xda\xa8', + -0x2557: b'\x11\xda\xa9', + -0x2556: b'\x11\xda\xaa', + -0x2555: b'\x11\xda\xab', + -0x2554: b'\x11\xda\xac', + -0x2553: b'\x11\xda\xad', + -0x2552: b'\x11\xda\xae', + -0x2551: b'\x11\xda\xaf', + -0x2550: b'\x11\xda\xb0', + -0x254f: b'\x11\xda\xb1', + -0x254e: b'\x11\xda\xb2', + -0x254d: b'\x11\xda\xb3', + -0x254c: b'\x11\xda\xb4', + -0x254b: b'\x11\xda\xb5', + -0x254a: b'\x11\xda\xb6', + -0x2549: b'\x11\xda\xb7', + -0x2548: b'\x11\xda\xb8', + -0x2547: b'\x11\xda\xb9', + -0x2546: b'\x11\xda\xba', + -0x2545: b'\x11\xda\xbb', + -0x2544: b'\x11\xda\xbc', + -0x2543: b'\x11\xda\xbd', + -0x2542: b'\x11\xda\xbe', + -0x2541: b'\x11\xda\xbf', + -0x2540: b'\x11\xda\xc0', + -0x253f: b'\x11\xda\xc1', + -0x253e: b'\x11\xda\xc2', + -0x253d: b'\x11\xda\xc3', + -0x253c: b'\x11\xda\xc4', + -0x253b: b'\x11\xda\xc5', + -0x253a: b'\x11\xda\xc6', + -0x2539: b'\x11\xda\xc7', + -0x2538: b'\x11\xda\xc8', + -0x2537: b'\x11\xda\xc9', + -0x2536: b'\x11\xda\xca', + -0x2535: b'\x11\xda\xcb', + -0x2534: b'\x11\xda\xcc', + -0x2533: b'\x11\xda\xcd', + -0x2532: b'\x11\xda\xce', + -0x2531: b'\x11\xda\xcf', + -0x2530: b'\x11\xda\xd0', + -0x252f: b'\x11\xda\xd1', + -0x252e: b'\x11\xda\xd2', + -0x252d: b'\x11\xda\xd3', + -0x252c: b'\x11\xda\xd4', + -0x252b: b'\x11\xda\xd5', + -0x252a: b'\x11\xda\xd6', + -0x2529: b'\x11\xda\xd7', + -0x2528: b'\x11\xda\xd8', + -0x2527: b'\x11\xda\xd9', + -0x2526: b'\x11\xda\xda', + -0x2525: b'\x11\xda\xdb', + -0x2524: b'\x11\xda\xdc', + -0x2523: b'\x11\xda\xdd', + -0x2522: b'\x11\xda\xde', + -0x2521: b'\x11\xda\xdf', + -0x2520: b'\x11\xda\xe0', + -0x251f: b'\x11\xda\xe1', + -0x251e: b'\x11\xda\xe2', + -0x251d: b'\x11\xda\xe3', + -0x251c: b'\x11\xda\xe4', + -0x251b: b'\x11\xda\xe5', + -0x251a: b'\x11\xda\xe6', + -0x2519: b'\x11\xda\xe7', + -0x2518: b'\x11\xda\xe8', + -0x2517: b'\x11\xda\xe9', + -0x2516: b'\x11\xda\xea', + -0x2515: b'\x11\xda\xeb', + -0x2514: b'\x11\xda\xec', + -0x2513: b'\x11\xda\xed', + -0x2512: b'\x11\xda\xee', + -0x2511: b'\x11\xda\xef', + -0x2510: b'\x11\xda\xf0', + -0x250f: b'\x11\xda\xf1', + -0x250e: b'\x11\xda\xf2', + -0x250d: b'\x11\xda\xf3', + -0x250c: b'\x11\xda\xf4', + -0x250b: b'\x11\xda\xf5', + -0x250a: b'\x11\xda\xf6', + -0x2509: b'\x11\xda\xf7', + -0x2508: b'\x11\xda\xf8', + -0x2507: b'\x11\xda\xf9', + -0x2506: b'\x11\xda\xfa', + -0x2505: b'\x11\xda\xfb', + -0x2504: b'\x11\xda\xfc', + -0x2503: b'\x11\xda\xfd', + -0x2502: b'\x11\xda\xfe', + -0x2501: b'\x11\xda\xff', + -0x2500: b'\x11\xdb\x00', + -0x24ff: b'\x11\xdb\x01', + -0x24fe: b'\x11\xdb\x02', + -0x24fd: b'\x11\xdb\x03', + -0x24fc: b'\x11\xdb\x04', + -0x24fb: b'\x11\xdb\x05', + -0x24fa: b'\x11\xdb\x06', + -0x24f9: b'\x11\xdb\x07', + -0x24f8: b'\x11\xdb\x08', + -0x24f7: b'\x11\xdb\t', + -0x24f6: b'\x11\xdb\n', + -0x24f5: b'\x11\xdb\x0b', + -0x24f4: b'\x11\xdb\x0c', + -0x24f3: b'\x11\xdb\r', + -0x24f2: b'\x11\xdb\x0e', + -0x24f1: b'\x11\xdb\x0f', + -0x24f0: b'\x11\xdb\x10', + -0x24ef: b'\x11\xdb\x11', + -0x24ee: b'\x11\xdb\x12', + -0x24ed: b'\x11\xdb\x13', + -0x24ec: b'\x11\xdb\x14', + -0x24eb: b'\x11\xdb\x15', + -0x24ea: b'\x11\xdb\x16', + -0x24e9: b'\x11\xdb\x17', + -0x24e8: b'\x11\xdb\x18', + -0x24e7: b'\x11\xdb\x19', + -0x24e6: b'\x11\xdb\x1a', + -0x24e5: b'\x11\xdb\x1b', + -0x24e4: b'\x11\xdb\x1c', + -0x24e3: b'\x11\xdb\x1d', + -0x24e2: b'\x11\xdb\x1e', + -0x24e1: b'\x11\xdb\x1f', + -0x24e0: b'\x11\xdb ', + -0x24df: b'\x11\xdb!', + -0x24de: b'\x11\xdb"', + -0x24dd: b'\x11\xdb#', + -0x24dc: b'\x11\xdb$', + -0x24db: b'\x11\xdb%', + -0x24da: b'\x11\xdb&', + -0x24d9: b"\x11\xdb'", + -0x24d8: b'\x11\xdb(', + -0x24d7: b'\x11\xdb)', + -0x24d6: b'\x11\xdb*', + -0x24d5: b'\x11\xdb+', + -0x24d4: b'\x11\xdb,', + -0x24d3: b'\x11\xdb-', + -0x24d2: b'\x11\xdb.', + -0x24d1: b'\x11\xdb/', + -0x24d0: b'\x11\xdb0', + -0x24cf: b'\x11\xdb1', + -0x24ce: b'\x11\xdb2', + -0x24cd: b'\x11\xdb3', + -0x24cc: b'\x11\xdb4', + -0x24cb: b'\x11\xdb5', + -0x24ca: b'\x11\xdb6', + -0x24c9: b'\x11\xdb7', + -0x24c8: b'\x11\xdb8', + -0x24c7: b'\x11\xdb9', + -0x24c6: b'\x11\xdb:', + -0x24c5: b'\x11\xdb;', + -0x24c4: b'\x11\xdb<', + -0x24c3: b'\x11\xdb=', + -0x24c2: b'\x11\xdb>', + -0x24c1: b'\x11\xdb?', + -0x24c0: b'\x11\xdb@', + -0x24bf: b'\x11\xdbA', + -0x24be: b'\x11\xdbB', + -0x24bd: b'\x11\xdbC', + -0x24bc: b'\x11\xdbD', + -0x24bb: b'\x11\xdbE', + -0x24ba: b'\x11\xdbF', + -0x24b9: b'\x11\xdbG', + -0x24b8: b'\x11\xdbH', + -0x24b7: b'\x11\xdbI', + -0x24b6: b'\x11\xdbJ', + -0x24b5: b'\x11\xdbK', + -0x24b4: b'\x11\xdbL', + -0x24b3: b'\x11\xdbM', + -0x24b2: b'\x11\xdbN', + -0x24b1: b'\x11\xdbO', + -0x24b0: b'\x11\xdbP', + -0x24af: b'\x11\xdbQ', + -0x24ae: b'\x11\xdbR', + -0x24ad: b'\x11\xdbS', + -0x24ac: b'\x11\xdbT', + -0x24ab: b'\x11\xdbU', + -0x24aa: b'\x11\xdbV', + -0x24a9: b'\x11\xdbW', + -0x24a8: b'\x11\xdbX', + -0x24a7: b'\x11\xdbY', + -0x24a6: b'\x11\xdbZ', + -0x24a5: b'\x11\xdb[', + -0x24a4: b'\x11\xdb\\', + -0x24a3: b'\x11\xdb]', + -0x24a2: b'\x11\xdb^', + -0x24a1: b'\x11\xdb_', + -0x24a0: b'\x11\xdb`', + -0x249f: b'\x11\xdba', + -0x249e: b'\x11\xdbb', + -0x249d: b'\x11\xdbc', + -0x249c: b'\x11\xdbd', + -0x249b: b'\x11\xdbe', + -0x249a: b'\x11\xdbf', + -0x2499: b'\x11\xdbg', + -0x2498: b'\x11\xdbh', + -0x2497: b'\x11\xdbi', + -0x2496: b'\x11\xdbj', + -0x2495: b'\x11\xdbk', + -0x2494: b'\x11\xdbl', + -0x2493: b'\x11\xdbm', + -0x2492: b'\x11\xdbn', + -0x2491: b'\x11\xdbo', + -0x2490: b'\x11\xdbp', + -0x248f: b'\x11\xdbq', + -0x248e: b'\x11\xdbr', + -0x248d: b'\x11\xdbs', + -0x248c: b'\x11\xdbt', + -0x248b: b'\x11\xdbu', + -0x248a: b'\x11\xdbv', + -0x2489: b'\x11\xdbw', + -0x2488: b'\x11\xdbx', + -0x2487: b'\x11\xdby', + -0x2486: b'\x11\xdbz', + -0x2485: b'\x11\xdb{', + -0x2484: b'\x11\xdb|', + -0x2483: b'\x11\xdb}', + -0x2482: b'\x11\xdb~', + -0x2481: b'\x11\xdb\x7f', + -0x2480: b'\x11\xdb\x80', + -0x247f: b'\x11\xdb\x81', + -0x247e: b'\x11\xdb\x82', + -0x247d: b'\x11\xdb\x83', + -0x247c: b'\x11\xdb\x84', + -0x247b: b'\x11\xdb\x85', + -0x247a: b'\x11\xdb\x86', + -0x2479: b'\x11\xdb\x87', + -0x2478: b'\x11\xdb\x88', + -0x2477: b'\x11\xdb\x89', + -0x2476: b'\x11\xdb\x8a', + -0x2475: b'\x11\xdb\x8b', + -0x2474: b'\x11\xdb\x8c', + -0x2473: b'\x11\xdb\x8d', + -0x2472: b'\x11\xdb\x8e', + -0x2471: b'\x11\xdb\x8f', + -0x2470: b'\x11\xdb\x90', + -0x246f: b'\x11\xdb\x91', + -0x246e: b'\x11\xdb\x92', + -0x246d: b'\x11\xdb\x93', + -0x246c: b'\x11\xdb\x94', + -0x246b: b'\x11\xdb\x95', + -0x246a: b'\x11\xdb\x96', + -0x2469: b'\x11\xdb\x97', + -0x2468: b'\x11\xdb\x98', + -0x2467: b'\x11\xdb\x99', + -0x2466: b'\x11\xdb\x9a', + -0x2465: b'\x11\xdb\x9b', + -0x2464: b'\x11\xdb\x9c', + -0x2463: b'\x11\xdb\x9d', + -0x2462: b'\x11\xdb\x9e', + -0x2461: b'\x11\xdb\x9f', + -0x2460: b'\x11\xdb\xa0', + -0x245f: b'\x11\xdb\xa1', + -0x245e: b'\x11\xdb\xa2', + -0x245d: b'\x11\xdb\xa3', + -0x245c: b'\x11\xdb\xa4', + -0x245b: b'\x11\xdb\xa5', + -0x245a: b'\x11\xdb\xa6', + -0x2459: b'\x11\xdb\xa7', + -0x2458: b'\x11\xdb\xa8', + -0x2457: b'\x11\xdb\xa9', + -0x2456: b'\x11\xdb\xaa', + -0x2455: b'\x11\xdb\xab', + -0x2454: b'\x11\xdb\xac', + -0x2453: b'\x11\xdb\xad', + -0x2452: b'\x11\xdb\xae', + -0x2451: b'\x11\xdb\xaf', + -0x2450: b'\x11\xdb\xb0', + -0x244f: b'\x11\xdb\xb1', + -0x244e: b'\x11\xdb\xb2', + -0x244d: b'\x11\xdb\xb3', + -0x244c: b'\x11\xdb\xb4', + -0x244b: b'\x11\xdb\xb5', + -0x244a: b'\x11\xdb\xb6', + -0x2449: b'\x11\xdb\xb7', + -0x2448: b'\x11\xdb\xb8', + -0x2447: b'\x11\xdb\xb9', + -0x2446: b'\x11\xdb\xba', + -0x2445: b'\x11\xdb\xbb', + -0x2444: b'\x11\xdb\xbc', + -0x2443: b'\x11\xdb\xbd', + -0x2442: b'\x11\xdb\xbe', + -0x2441: b'\x11\xdb\xbf', + -0x2440: b'\x11\xdb\xc0', + -0x243f: b'\x11\xdb\xc1', + -0x243e: b'\x11\xdb\xc2', + -0x243d: b'\x11\xdb\xc3', + -0x243c: b'\x11\xdb\xc4', + -0x243b: b'\x11\xdb\xc5', + -0x243a: b'\x11\xdb\xc6', + -0x2439: b'\x11\xdb\xc7', + -0x2438: b'\x11\xdb\xc8', + -0x2437: b'\x11\xdb\xc9', + -0x2436: b'\x11\xdb\xca', + -0x2435: b'\x11\xdb\xcb', + -0x2434: b'\x11\xdb\xcc', + -0x2433: b'\x11\xdb\xcd', + -0x2432: b'\x11\xdb\xce', + -0x2431: b'\x11\xdb\xcf', + -0x2430: b'\x11\xdb\xd0', + -0x242f: b'\x11\xdb\xd1', + -0x242e: b'\x11\xdb\xd2', + -0x242d: b'\x11\xdb\xd3', + -0x242c: b'\x11\xdb\xd4', + -0x242b: b'\x11\xdb\xd5', + -0x242a: b'\x11\xdb\xd6', + -0x2429: b'\x11\xdb\xd7', + -0x2428: b'\x11\xdb\xd8', + -0x2427: b'\x11\xdb\xd9', + -0x2426: b'\x11\xdb\xda', + -0x2425: b'\x11\xdb\xdb', + -0x2424: b'\x11\xdb\xdc', + -0x2423: b'\x11\xdb\xdd', + -0x2422: b'\x11\xdb\xde', + -0x2421: b'\x11\xdb\xdf', + -0x2420: b'\x11\xdb\xe0', + -0x241f: b'\x11\xdb\xe1', + -0x241e: b'\x11\xdb\xe2', + -0x241d: b'\x11\xdb\xe3', + -0x241c: b'\x11\xdb\xe4', + -0x241b: b'\x11\xdb\xe5', + -0x241a: b'\x11\xdb\xe6', + -0x2419: b'\x11\xdb\xe7', + -0x2418: b'\x11\xdb\xe8', + -0x2417: b'\x11\xdb\xe9', + -0x2416: b'\x11\xdb\xea', + -0x2415: b'\x11\xdb\xeb', + -0x2414: b'\x11\xdb\xec', + -0x2413: b'\x11\xdb\xed', + -0x2412: b'\x11\xdb\xee', + -0x2411: b'\x11\xdb\xef', + -0x2410: b'\x11\xdb\xf0', + -0x240f: b'\x11\xdb\xf1', + -0x240e: b'\x11\xdb\xf2', + -0x240d: b'\x11\xdb\xf3', + -0x240c: b'\x11\xdb\xf4', + -0x240b: b'\x11\xdb\xf5', + -0x240a: b'\x11\xdb\xf6', + -0x2409: b'\x11\xdb\xf7', + -0x2408: b'\x11\xdb\xf8', + -0x2407: b'\x11\xdb\xf9', + -0x2406: b'\x11\xdb\xfa', + -0x2405: b'\x11\xdb\xfb', + -0x2404: b'\x11\xdb\xfc', + -0x2403: b'\x11\xdb\xfd', + -0x2402: b'\x11\xdb\xfe', + -0x2401: b'\x11\xdb\xff', + -0x2400: b'\x11\xdc\x00', + -0x23ff: b'\x11\xdc\x01', + -0x23fe: b'\x11\xdc\x02', + -0x23fd: b'\x11\xdc\x03', + -0x23fc: b'\x11\xdc\x04', + -0x23fb: b'\x11\xdc\x05', + -0x23fa: b'\x11\xdc\x06', + -0x23f9: b'\x11\xdc\x07', + -0x23f8: b'\x11\xdc\x08', + -0x23f7: b'\x11\xdc\t', + -0x23f6: b'\x11\xdc\n', + -0x23f5: b'\x11\xdc\x0b', + -0x23f4: b'\x11\xdc\x0c', + -0x23f3: b'\x11\xdc\r', + -0x23f2: b'\x11\xdc\x0e', + -0x23f1: b'\x11\xdc\x0f', + -0x23f0: b'\x11\xdc\x10', + -0x23ef: b'\x11\xdc\x11', + -0x23ee: b'\x11\xdc\x12', + -0x23ed: b'\x11\xdc\x13', + -0x23ec: b'\x11\xdc\x14', + -0x23eb: b'\x11\xdc\x15', + -0x23ea: b'\x11\xdc\x16', + -0x23e9: b'\x11\xdc\x17', + -0x23e8: b'\x11\xdc\x18', + -0x23e7: b'\x11\xdc\x19', + -0x23e6: b'\x11\xdc\x1a', + -0x23e5: b'\x11\xdc\x1b', + -0x23e4: b'\x11\xdc\x1c', + -0x23e3: b'\x11\xdc\x1d', + -0x23e2: b'\x11\xdc\x1e', + -0x23e1: b'\x11\xdc\x1f', + -0x23e0: b'\x11\xdc ', + -0x23df: b'\x11\xdc!', + -0x23de: b'\x11\xdc"', + -0x23dd: b'\x11\xdc#', + -0x23dc: b'\x11\xdc$', + -0x23db: b'\x11\xdc%', + -0x23da: b'\x11\xdc&', + -0x23d9: b"\x11\xdc'", + -0x23d8: b'\x11\xdc(', + -0x23d7: b'\x11\xdc)', + -0x23d6: b'\x11\xdc*', + -0x23d5: b'\x11\xdc+', + -0x23d4: b'\x11\xdc,', + -0x23d3: b'\x11\xdc-', + -0x23d2: b'\x11\xdc.', + -0x23d1: b'\x11\xdc/', + -0x23d0: b'\x11\xdc0', + -0x23cf: b'\x11\xdc1', + -0x23ce: b'\x11\xdc2', + -0x23cd: b'\x11\xdc3', + -0x23cc: b'\x11\xdc4', + -0x23cb: b'\x11\xdc5', + -0x23ca: b'\x11\xdc6', + -0x23c9: b'\x11\xdc7', + -0x23c8: b'\x11\xdc8', + -0x23c7: b'\x11\xdc9', + -0x23c6: b'\x11\xdc:', + -0x23c5: b'\x11\xdc;', + -0x23c4: b'\x11\xdc<', + -0x23c3: b'\x11\xdc=', + -0x23c2: b'\x11\xdc>', + -0x23c1: b'\x11\xdc?', + -0x23c0: b'\x11\xdc@', + -0x23bf: b'\x11\xdcA', + -0x23be: b'\x11\xdcB', + -0x23bd: b'\x11\xdcC', + -0x23bc: b'\x11\xdcD', + -0x23bb: b'\x11\xdcE', + -0x23ba: b'\x11\xdcF', + -0x23b9: b'\x11\xdcG', + -0x23b8: b'\x11\xdcH', + -0x23b7: b'\x11\xdcI', + -0x23b6: b'\x11\xdcJ', + -0x23b5: b'\x11\xdcK', + -0x23b4: b'\x11\xdcL', + -0x23b3: b'\x11\xdcM', + -0x23b2: b'\x11\xdcN', + -0x23b1: b'\x11\xdcO', + -0x23b0: b'\x11\xdcP', + -0x23af: b'\x11\xdcQ', + -0x23ae: b'\x11\xdcR', + -0x23ad: b'\x11\xdcS', + -0x23ac: b'\x11\xdcT', + -0x23ab: b'\x11\xdcU', + -0x23aa: b'\x11\xdcV', + -0x23a9: b'\x11\xdcW', + -0x23a8: b'\x11\xdcX', + -0x23a7: b'\x11\xdcY', + -0x23a6: b'\x11\xdcZ', + -0x23a5: b'\x11\xdc[', + -0x23a4: b'\x11\xdc\\', + -0x23a3: b'\x11\xdc]', + -0x23a2: b'\x11\xdc^', + -0x23a1: b'\x11\xdc_', + -0x23a0: b'\x11\xdc`', + -0x239f: b'\x11\xdca', + -0x239e: b'\x11\xdcb', + -0x239d: b'\x11\xdcc', + -0x239c: b'\x11\xdcd', + -0x239b: b'\x11\xdce', + -0x239a: b'\x11\xdcf', + -0x2399: b'\x11\xdcg', + -0x2398: b'\x11\xdch', + -0x2397: b'\x11\xdci', + -0x2396: b'\x11\xdcj', + -0x2395: b'\x11\xdck', + -0x2394: b'\x11\xdcl', + -0x2393: b'\x11\xdcm', + -0x2392: b'\x11\xdcn', + -0x2391: b'\x11\xdco', + -0x2390: b'\x11\xdcp', + -0x238f: b'\x11\xdcq', + -0x238e: b'\x11\xdcr', + -0x238d: b'\x11\xdcs', + -0x238c: b'\x11\xdct', + -0x238b: b'\x11\xdcu', + -0x238a: b'\x11\xdcv', + -0x2389: b'\x11\xdcw', + -0x2388: b'\x11\xdcx', + -0x2387: b'\x11\xdcy', + -0x2386: b'\x11\xdcz', + -0x2385: b'\x11\xdc{', + -0x2384: b'\x11\xdc|', + -0x2383: b'\x11\xdc}', + -0x2382: b'\x11\xdc~', + -0x2381: b'\x11\xdc\x7f', + -0x2380: b'\x11\xdc\x80', + -0x237f: b'\x11\xdc\x81', + -0x237e: b'\x11\xdc\x82', + -0x237d: b'\x11\xdc\x83', + -0x237c: b'\x11\xdc\x84', + -0x237b: b'\x11\xdc\x85', + -0x237a: b'\x11\xdc\x86', + -0x2379: b'\x11\xdc\x87', + -0x2378: b'\x11\xdc\x88', + -0x2377: b'\x11\xdc\x89', + -0x2376: b'\x11\xdc\x8a', + -0x2375: b'\x11\xdc\x8b', + -0x2374: b'\x11\xdc\x8c', + -0x2373: b'\x11\xdc\x8d', + -0x2372: b'\x11\xdc\x8e', + -0x2371: b'\x11\xdc\x8f', + -0x2370: b'\x11\xdc\x90', + -0x236f: b'\x11\xdc\x91', + -0x236e: b'\x11\xdc\x92', + -0x236d: b'\x11\xdc\x93', + -0x236c: b'\x11\xdc\x94', + -0x236b: b'\x11\xdc\x95', + -0x236a: b'\x11\xdc\x96', + -0x2369: b'\x11\xdc\x97', + -0x2368: b'\x11\xdc\x98', + -0x2367: b'\x11\xdc\x99', + -0x2366: b'\x11\xdc\x9a', + -0x2365: b'\x11\xdc\x9b', + -0x2364: b'\x11\xdc\x9c', + -0x2363: b'\x11\xdc\x9d', + -0x2362: b'\x11\xdc\x9e', + -0x2361: b'\x11\xdc\x9f', + -0x2360: b'\x11\xdc\xa0', + -0x235f: b'\x11\xdc\xa1', + -0x235e: b'\x11\xdc\xa2', + -0x235d: b'\x11\xdc\xa3', + -0x235c: b'\x11\xdc\xa4', + -0x235b: b'\x11\xdc\xa5', + -0x235a: b'\x11\xdc\xa6', + -0x2359: b'\x11\xdc\xa7', + -0x2358: b'\x11\xdc\xa8', + -0x2357: b'\x11\xdc\xa9', + -0x2356: b'\x11\xdc\xaa', + -0x2355: b'\x11\xdc\xab', + -0x2354: b'\x11\xdc\xac', + -0x2353: b'\x11\xdc\xad', + -0x2352: b'\x11\xdc\xae', + -0x2351: b'\x11\xdc\xaf', + -0x2350: b'\x11\xdc\xb0', + -0x234f: b'\x11\xdc\xb1', + -0x234e: b'\x11\xdc\xb2', + -0x234d: b'\x11\xdc\xb3', + -0x234c: b'\x11\xdc\xb4', + -0x234b: b'\x11\xdc\xb5', + -0x234a: b'\x11\xdc\xb6', + -0x2349: b'\x11\xdc\xb7', + -0x2348: b'\x11\xdc\xb8', + -0x2347: b'\x11\xdc\xb9', + -0x2346: b'\x11\xdc\xba', + -0x2345: b'\x11\xdc\xbb', + -0x2344: b'\x11\xdc\xbc', + -0x2343: b'\x11\xdc\xbd', + -0x2342: b'\x11\xdc\xbe', + -0x2341: b'\x11\xdc\xbf', + -0x2340: b'\x11\xdc\xc0', + -0x233f: b'\x11\xdc\xc1', + -0x233e: b'\x11\xdc\xc2', + -0x233d: b'\x11\xdc\xc3', + -0x233c: b'\x11\xdc\xc4', + -0x233b: b'\x11\xdc\xc5', + -0x233a: b'\x11\xdc\xc6', + -0x2339: b'\x11\xdc\xc7', + -0x2338: b'\x11\xdc\xc8', + -0x2337: b'\x11\xdc\xc9', + -0x2336: b'\x11\xdc\xca', + -0x2335: b'\x11\xdc\xcb', + -0x2334: b'\x11\xdc\xcc', + -0x2333: b'\x11\xdc\xcd', + -0x2332: b'\x11\xdc\xce', + -0x2331: b'\x11\xdc\xcf', + -0x2330: b'\x11\xdc\xd0', + -0x232f: b'\x11\xdc\xd1', + -0x232e: b'\x11\xdc\xd2', + -0x232d: b'\x11\xdc\xd3', + -0x232c: b'\x11\xdc\xd4', + -0x232b: b'\x11\xdc\xd5', + -0x232a: b'\x11\xdc\xd6', + -0x2329: b'\x11\xdc\xd7', + -0x2328: b'\x11\xdc\xd8', + -0x2327: b'\x11\xdc\xd9', + -0x2326: b'\x11\xdc\xda', + -0x2325: b'\x11\xdc\xdb', + -0x2324: b'\x11\xdc\xdc', + -0x2323: b'\x11\xdc\xdd', + -0x2322: b'\x11\xdc\xde', + -0x2321: b'\x11\xdc\xdf', + -0x2320: b'\x11\xdc\xe0', + -0x231f: b'\x11\xdc\xe1', + -0x231e: b'\x11\xdc\xe2', + -0x231d: b'\x11\xdc\xe3', + -0x231c: b'\x11\xdc\xe4', + -0x231b: b'\x11\xdc\xe5', + -0x231a: b'\x11\xdc\xe6', + -0x2319: b'\x11\xdc\xe7', + -0x2318: b'\x11\xdc\xe8', + -0x2317: b'\x11\xdc\xe9', + -0x2316: b'\x11\xdc\xea', + -0x2315: b'\x11\xdc\xeb', + -0x2314: b'\x11\xdc\xec', + -0x2313: b'\x11\xdc\xed', + -0x2312: b'\x11\xdc\xee', + -0x2311: b'\x11\xdc\xef', + -0x2310: b'\x11\xdc\xf0', + -0x230f: b'\x11\xdc\xf1', + -0x230e: b'\x11\xdc\xf2', + -0x230d: b'\x11\xdc\xf3', + -0x230c: b'\x11\xdc\xf4', + -0x230b: b'\x11\xdc\xf5', + -0x230a: b'\x11\xdc\xf6', + -0x2309: b'\x11\xdc\xf7', + -0x2308: b'\x11\xdc\xf8', + -0x2307: b'\x11\xdc\xf9', + -0x2306: b'\x11\xdc\xfa', + -0x2305: b'\x11\xdc\xfb', + -0x2304: b'\x11\xdc\xfc', + -0x2303: b'\x11\xdc\xfd', + -0x2302: b'\x11\xdc\xfe', + -0x2301: b'\x11\xdc\xff', + -0x2300: b'\x11\xdd\x00', + -0x22ff: b'\x11\xdd\x01', + -0x22fe: b'\x11\xdd\x02', + -0x22fd: b'\x11\xdd\x03', + -0x22fc: b'\x11\xdd\x04', + -0x22fb: b'\x11\xdd\x05', + -0x22fa: b'\x11\xdd\x06', + -0x22f9: b'\x11\xdd\x07', + -0x22f8: b'\x11\xdd\x08', + -0x22f7: b'\x11\xdd\t', + -0x22f6: b'\x11\xdd\n', + -0x22f5: b'\x11\xdd\x0b', + -0x22f4: b'\x11\xdd\x0c', + -0x22f3: b'\x11\xdd\r', + -0x22f2: b'\x11\xdd\x0e', + -0x22f1: b'\x11\xdd\x0f', + -0x22f0: b'\x11\xdd\x10', + -0x22ef: b'\x11\xdd\x11', + -0x22ee: b'\x11\xdd\x12', + -0x22ed: b'\x11\xdd\x13', + -0x22ec: b'\x11\xdd\x14', + -0x22eb: b'\x11\xdd\x15', + -0x22ea: b'\x11\xdd\x16', + -0x22e9: b'\x11\xdd\x17', + -0x22e8: b'\x11\xdd\x18', + -0x22e7: b'\x11\xdd\x19', + -0x22e6: b'\x11\xdd\x1a', + -0x22e5: b'\x11\xdd\x1b', + -0x22e4: b'\x11\xdd\x1c', + -0x22e3: b'\x11\xdd\x1d', + -0x22e2: b'\x11\xdd\x1e', + -0x22e1: b'\x11\xdd\x1f', + -0x22e0: b'\x11\xdd ', + -0x22df: b'\x11\xdd!', + -0x22de: b'\x11\xdd"', + -0x22dd: b'\x11\xdd#', + -0x22dc: b'\x11\xdd$', + -0x22db: b'\x11\xdd%', + -0x22da: b'\x11\xdd&', + -0x22d9: b"\x11\xdd'", + -0x22d8: b'\x11\xdd(', + -0x22d7: b'\x11\xdd)', + -0x22d6: b'\x11\xdd*', + -0x22d5: b'\x11\xdd+', + -0x22d4: b'\x11\xdd,', + -0x22d3: b'\x11\xdd-', + -0x22d2: b'\x11\xdd.', + -0x22d1: b'\x11\xdd/', + -0x22d0: b'\x11\xdd0', + -0x22cf: b'\x11\xdd1', + -0x22ce: b'\x11\xdd2', + -0x22cd: b'\x11\xdd3', + -0x22cc: b'\x11\xdd4', + -0x22cb: b'\x11\xdd5', + -0x22ca: b'\x11\xdd6', + -0x22c9: b'\x11\xdd7', + -0x22c8: b'\x11\xdd8', + -0x22c7: b'\x11\xdd9', + -0x22c6: b'\x11\xdd:', + -0x22c5: b'\x11\xdd;', + -0x22c4: b'\x11\xdd<', + -0x22c3: b'\x11\xdd=', + -0x22c2: b'\x11\xdd>', + -0x22c1: b'\x11\xdd?', + -0x22c0: b'\x11\xdd@', + -0x22bf: b'\x11\xddA', + -0x22be: b'\x11\xddB', + -0x22bd: b'\x11\xddC', + -0x22bc: b'\x11\xddD', + -0x22bb: b'\x11\xddE', + -0x22ba: b'\x11\xddF', + -0x22b9: b'\x11\xddG', + -0x22b8: b'\x11\xddH', + -0x22b7: b'\x11\xddI', + -0x22b6: b'\x11\xddJ', + -0x22b5: b'\x11\xddK', + -0x22b4: b'\x11\xddL', + -0x22b3: b'\x11\xddM', + -0x22b2: b'\x11\xddN', + -0x22b1: b'\x11\xddO', + -0x22b0: b'\x11\xddP', + -0x22af: b'\x11\xddQ', + -0x22ae: b'\x11\xddR', + -0x22ad: b'\x11\xddS', + -0x22ac: b'\x11\xddT', + -0x22ab: b'\x11\xddU', + -0x22aa: b'\x11\xddV', + -0x22a9: b'\x11\xddW', + -0x22a8: b'\x11\xddX', + -0x22a7: b'\x11\xddY', + -0x22a6: b'\x11\xddZ', + -0x22a5: b'\x11\xdd[', + -0x22a4: b'\x11\xdd\\', + -0x22a3: b'\x11\xdd]', + -0x22a2: b'\x11\xdd^', + -0x22a1: b'\x11\xdd_', + -0x22a0: b'\x11\xdd`', + -0x229f: b'\x11\xdda', + -0x229e: b'\x11\xddb', + -0x229d: b'\x11\xddc', + -0x229c: b'\x11\xddd', + -0x229b: b'\x11\xdde', + -0x229a: b'\x11\xddf', + -0x2299: b'\x11\xddg', + -0x2298: b'\x11\xddh', + -0x2297: b'\x11\xddi', + -0x2296: b'\x11\xddj', + -0x2295: b'\x11\xddk', + -0x2294: b'\x11\xddl', + -0x2293: b'\x11\xddm', + -0x2292: b'\x11\xddn', + -0x2291: b'\x11\xddo', + -0x2290: b'\x11\xddp', + -0x228f: b'\x11\xddq', + -0x228e: b'\x11\xddr', + -0x228d: b'\x11\xdds', + -0x228c: b'\x11\xddt', + -0x228b: b'\x11\xddu', + -0x228a: b'\x11\xddv', + -0x2289: b'\x11\xddw', + -0x2288: b'\x11\xddx', + -0x2287: b'\x11\xddy', + -0x2286: b'\x11\xddz', + -0x2285: b'\x11\xdd{', + -0x2284: b'\x11\xdd|', + -0x2283: b'\x11\xdd}', + -0x2282: b'\x11\xdd~', + -0x2281: b'\x11\xdd\x7f', + -0x2280: b'\x11\xdd\x80', + -0x227f: b'\x11\xdd\x81', + -0x227e: b'\x11\xdd\x82', + -0x227d: b'\x11\xdd\x83', + -0x227c: b'\x11\xdd\x84', + -0x227b: b'\x11\xdd\x85', + -0x227a: b'\x11\xdd\x86', + -0x2279: b'\x11\xdd\x87', + -0x2278: b'\x11\xdd\x88', + -0x2277: b'\x11\xdd\x89', + -0x2276: b'\x11\xdd\x8a', + -0x2275: b'\x11\xdd\x8b', + -0x2274: b'\x11\xdd\x8c', + -0x2273: b'\x11\xdd\x8d', + -0x2272: b'\x11\xdd\x8e', + -0x2271: b'\x11\xdd\x8f', + -0x2270: b'\x11\xdd\x90', + -0x226f: b'\x11\xdd\x91', + -0x226e: b'\x11\xdd\x92', + -0x226d: b'\x11\xdd\x93', + -0x226c: b'\x11\xdd\x94', + -0x226b: b'\x11\xdd\x95', + -0x226a: b'\x11\xdd\x96', + -0x2269: b'\x11\xdd\x97', + -0x2268: b'\x11\xdd\x98', + -0x2267: b'\x11\xdd\x99', + -0x2266: b'\x11\xdd\x9a', + -0x2265: b'\x11\xdd\x9b', + -0x2264: b'\x11\xdd\x9c', + -0x2263: b'\x11\xdd\x9d', + -0x2262: b'\x11\xdd\x9e', + -0x2261: b'\x11\xdd\x9f', + -0x2260: b'\x11\xdd\xa0', + -0x225f: b'\x11\xdd\xa1', + -0x225e: b'\x11\xdd\xa2', + -0x225d: b'\x11\xdd\xa3', + -0x225c: b'\x11\xdd\xa4', + -0x225b: b'\x11\xdd\xa5', + -0x225a: b'\x11\xdd\xa6', + -0x2259: b'\x11\xdd\xa7', + -0x2258: b'\x11\xdd\xa8', + -0x2257: b'\x11\xdd\xa9', + -0x2256: b'\x11\xdd\xaa', + -0x2255: b'\x11\xdd\xab', + -0x2254: b'\x11\xdd\xac', + -0x2253: b'\x11\xdd\xad', + -0x2252: b'\x11\xdd\xae', + -0x2251: b'\x11\xdd\xaf', + -0x2250: b'\x11\xdd\xb0', + -0x224f: b'\x11\xdd\xb1', + -0x224e: b'\x11\xdd\xb2', + -0x224d: b'\x11\xdd\xb3', + -0x224c: b'\x11\xdd\xb4', + -0x224b: b'\x11\xdd\xb5', + -0x224a: b'\x11\xdd\xb6', + -0x2249: b'\x11\xdd\xb7', + -0x2248: b'\x11\xdd\xb8', + -0x2247: b'\x11\xdd\xb9', + -0x2246: b'\x11\xdd\xba', + -0x2245: b'\x11\xdd\xbb', + -0x2244: b'\x11\xdd\xbc', + -0x2243: b'\x11\xdd\xbd', + -0x2242: b'\x11\xdd\xbe', + -0x2241: b'\x11\xdd\xbf', + -0x2240: b'\x11\xdd\xc0', + -0x223f: b'\x11\xdd\xc1', + -0x223e: b'\x11\xdd\xc2', + -0x223d: b'\x11\xdd\xc3', + -0x223c: b'\x11\xdd\xc4', + -0x223b: b'\x11\xdd\xc5', + -0x223a: b'\x11\xdd\xc6', + -0x2239: b'\x11\xdd\xc7', + -0x2238: b'\x11\xdd\xc8', + -0x2237: b'\x11\xdd\xc9', + -0x2236: b'\x11\xdd\xca', + -0x2235: b'\x11\xdd\xcb', + -0x2234: b'\x11\xdd\xcc', + -0x2233: b'\x11\xdd\xcd', + -0x2232: b'\x11\xdd\xce', + -0x2231: b'\x11\xdd\xcf', + -0x2230: b'\x11\xdd\xd0', + -0x222f: b'\x11\xdd\xd1', + -0x222e: b'\x11\xdd\xd2', + -0x222d: b'\x11\xdd\xd3', + -0x222c: b'\x11\xdd\xd4', + -0x222b: b'\x11\xdd\xd5', + -0x222a: b'\x11\xdd\xd6', + -0x2229: b'\x11\xdd\xd7', + -0x2228: b'\x11\xdd\xd8', + -0x2227: b'\x11\xdd\xd9', + -0x2226: b'\x11\xdd\xda', + -0x2225: b'\x11\xdd\xdb', + -0x2224: b'\x11\xdd\xdc', + -0x2223: b'\x11\xdd\xdd', + -0x2222: b'\x11\xdd\xde', + -0x2221: b'\x11\xdd\xdf', + -0x2220: b'\x11\xdd\xe0', + -0x221f: b'\x11\xdd\xe1', + -0x221e: b'\x11\xdd\xe2', + -0x221d: b'\x11\xdd\xe3', + -0x221c: b'\x11\xdd\xe4', + -0x221b: b'\x11\xdd\xe5', + -0x221a: b'\x11\xdd\xe6', + -0x2219: b'\x11\xdd\xe7', + -0x2218: b'\x11\xdd\xe8', + -0x2217: b'\x11\xdd\xe9', + -0x2216: b'\x11\xdd\xea', + -0x2215: b'\x11\xdd\xeb', + -0x2214: b'\x11\xdd\xec', + -0x2213: b'\x11\xdd\xed', + -0x2212: b'\x11\xdd\xee', + -0x2211: b'\x11\xdd\xef', + -0x2210: b'\x11\xdd\xf0', + -0x220f: b'\x11\xdd\xf1', + -0x220e: b'\x11\xdd\xf2', + -0x220d: b'\x11\xdd\xf3', + -0x220c: b'\x11\xdd\xf4', + -0x220b: b'\x11\xdd\xf5', + -0x220a: b'\x11\xdd\xf6', + -0x2209: b'\x11\xdd\xf7', + -0x2208: b'\x11\xdd\xf8', + -0x2207: b'\x11\xdd\xf9', + -0x2206: b'\x11\xdd\xfa', + -0x2205: b'\x11\xdd\xfb', + -0x2204: b'\x11\xdd\xfc', + -0x2203: b'\x11\xdd\xfd', + -0x2202: b'\x11\xdd\xfe', + -0x2201: b'\x11\xdd\xff', + -0x2200: b'\x11\xde\x00', + -0x21ff: b'\x11\xde\x01', + -0x21fe: b'\x11\xde\x02', + -0x21fd: b'\x11\xde\x03', + -0x21fc: b'\x11\xde\x04', + -0x21fb: b'\x11\xde\x05', + -0x21fa: b'\x11\xde\x06', + -0x21f9: b'\x11\xde\x07', + -0x21f8: b'\x11\xde\x08', + -0x21f7: b'\x11\xde\t', + -0x21f6: b'\x11\xde\n', + -0x21f5: b'\x11\xde\x0b', + -0x21f4: b'\x11\xde\x0c', + -0x21f3: b'\x11\xde\r', + -0x21f2: b'\x11\xde\x0e', + -0x21f1: b'\x11\xde\x0f', + -0x21f0: b'\x11\xde\x10', + -0x21ef: b'\x11\xde\x11', + -0x21ee: b'\x11\xde\x12', + -0x21ed: b'\x11\xde\x13', + -0x21ec: b'\x11\xde\x14', + -0x21eb: b'\x11\xde\x15', + -0x21ea: b'\x11\xde\x16', + -0x21e9: b'\x11\xde\x17', + -0x21e8: b'\x11\xde\x18', + -0x21e7: b'\x11\xde\x19', + -0x21e6: b'\x11\xde\x1a', + -0x21e5: b'\x11\xde\x1b', + -0x21e4: b'\x11\xde\x1c', + -0x21e3: b'\x11\xde\x1d', + -0x21e2: b'\x11\xde\x1e', + -0x21e1: b'\x11\xde\x1f', + -0x21e0: b'\x11\xde ', + -0x21df: b'\x11\xde!', + -0x21de: b'\x11\xde"', + -0x21dd: b'\x11\xde#', + -0x21dc: b'\x11\xde$', + -0x21db: b'\x11\xde%', + -0x21da: b'\x11\xde&', + -0x21d9: b"\x11\xde'", + -0x21d8: b'\x11\xde(', + -0x21d7: b'\x11\xde)', + -0x21d6: b'\x11\xde*', + -0x21d5: b'\x11\xde+', + -0x21d4: b'\x11\xde,', + -0x21d3: b'\x11\xde-', + -0x21d2: b'\x11\xde.', + -0x21d1: b'\x11\xde/', + -0x21d0: b'\x11\xde0', + -0x21cf: b'\x11\xde1', + -0x21ce: b'\x11\xde2', + -0x21cd: b'\x11\xde3', + -0x21cc: b'\x11\xde4', + -0x21cb: b'\x11\xde5', + -0x21ca: b'\x11\xde6', + -0x21c9: b'\x11\xde7', + -0x21c8: b'\x11\xde8', + -0x21c7: b'\x11\xde9', + -0x21c6: b'\x11\xde:', + -0x21c5: b'\x11\xde;', + -0x21c4: b'\x11\xde<', + -0x21c3: b'\x11\xde=', + -0x21c2: b'\x11\xde>', + -0x21c1: b'\x11\xde?', + -0x21c0: b'\x11\xde@', + -0x21bf: b'\x11\xdeA', + -0x21be: b'\x11\xdeB', + -0x21bd: b'\x11\xdeC', + -0x21bc: b'\x11\xdeD', + -0x21bb: b'\x11\xdeE', + -0x21ba: b'\x11\xdeF', + -0x21b9: b'\x11\xdeG', + -0x21b8: b'\x11\xdeH', + -0x21b7: b'\x11\xdeI', + -0x21b6: b'\x11\xdeJ', + -0x21b5: b'\x11\xdeK', + -0x21b4: b'\x11\xdeL', + -0x21b3: b'\x11\xdeM', + -0x21b2: b'\x11\xdeN', + -0x21b1: b'\x11\xdeO', + -0x21b0: b'\x11\xdeP', + -0x21af: b'\x11\xdeQ', + -0x21ae: b'\x11\xdeR', + -0x21ad: b'\x11\xdeS', + -0x21ac: b'\x11\xdeT', + -0x21ab: b'\x11\xdeU', + -0x21aa: b'\x11\xdeV', + -0x21a9: b'\x11\xdeW', + -0x21a8: b'\x11\xdeX', + -0x21a7: b'\x11\xdeY', + -0x21a6: b'\x11\xdeZ', + -0x21a5: b'\x11\xde[', + -0x21a4: b'\x11\xde\\', + -0x21a3: b'\x11\xde]', + -0x21a2: b'\x11\xde^', + -0x21a1: b'\x11\xde_', + -0x21a0: b'\x11\xde`', + -0x219f: b'\x11\xdea', + -0x219e: b'\x11\xdeb', + -0x219d: b'\x11\xdec', + -0x219c: b'\x11\xded', + -0x219b: b'\x11\xdee', + -0x219a: b'\x11\xdef', + -0x2199: b'\x11\xdeg', + -0x2198: b'\x11\xdeh', + -0x2197: b'\x11\xdei', + -0x2196: b'\x11\xdej', + -0x2195: b'\x11\xdek', + -0x2194: b'\x11\xdel', + -0x2193: b'\x11\xdem', + -0x2192: b'\x11\xden', + -0x2191: b'\x11\xdeo', + -0x2190: b'\x11\xdep', + -0x218f: b'\x11\xdeq', + -0x218e: b'\x11\xder', + -0x218d: b'\x11\xdes', + -0x218c: b'\x11\xdet', + -0x218b: b'\x11\xdeu', + -0x218a: b'\x11\xdev', + -0x2189: b'\x11\xdew', + -0x2188: b'\x11\xdex', + -0x2187: b'\x11\xdey', + -0x2186: b'\x11\xdez', + -0x2185: b'\x11\xde{', + -0x2184: b'\x11\xde|', + -0x2183: b'\x11\xde}', + -0x2182: b'\x11\xde~', + -0x2181: b'\x11\xde\x7f', + -0x2180: b'\x11\xde\x80', + -0x217f: b'\x11\xde\x81', + -0x217e: b'\x11\xde\x82', + -0x217d: b'\x11\xde\x83', + -0x217c: b'\x11\xde\x84', + -0x217b: b'\x11\xde\x85', + -0x217a: b'\x11\xde\x86', + -0x2179: b'\x11\xde\x87', + -0x2178: b'\x11\xde\x88', + -0x2177: b'\x11\xde\x89', + -0x2176: b'\x11\xde\x8a', + -0x2175: b'\x11\xde\x8b', + -0x2174: b'\x11\xde\x8c', + -0x2173: b'\x11\xde\x8d', + -0x2172: b'\x11\xde\x8e', + -0x2171: b'\x11\xde\x8f', + -0x2170: b'\x11\xde\x90', + -0x216f: b'\x11\xde\x91', + -0x216e: b'\x11\xde\x92', + -0x216d: b'\x11\xde\x93', + -0x216c: b'\x11\xde\x94', + -0x216b: b'\x11\xde\x95', + -0x216a: b'\x11\xde\x96', + -0x2169: b'\x11\xde\x97', + -0x2168: b'\x11\xde\x98', + -0x2167: b'\x11\xde\x99', + -0x2166: b'\x11\xde\x9a', + -0x2165: b'\x11\xde\x9b', + -0x2164: b'\x11\xde\x9c', + -0x2163: b'\x11\xde\x9d', + -0x2162: b'\x11\xde\x9e', + -0x2161: b'\x11\xde\x9f', + -0x2160: b'\x11\xde\xa0', + -0x215f: b'\x11\xde\xa1', + -0x215e: b'\x11\xde\xa2', + -0x215d: b'\x11\xde\xa3', + -0x215c: b'\x11\xde\xa4', + -0x215b: b'\x11\xde\xa5', + -0x215a: b'\x11\xde\xa6', + -0x2159: b'\x11\xde\xa7', + -0x2158: b'\x11\xde\xa8', + -0x2157: b'\x11\xde\xa9', + -0x2156: b'\x11\xde\xaa', + -0x2155: b'\x11\xde\xab', + -0x2154: b'\x11\xde\xac', + -0x2153: b'\x11\xde\xad', + -0x2152: b'\x11\xde\xae', + -0x2151: b'\x11\xde\xaf', + -0x2150: b'\x11\xde\xb0', + -0x214f: b'\x11\xde\xb1', + -0x214e: b'\x11\xde\xb2', + -0x214d: b'\x11\xde\xb3', + -0x214c: b'\x11\xde\xb4', + -0x214b: b'\x11\xde\xb5', + -0x214a: b'\x11\xde\xb6', + -0x2149: b'\x11\xde\xb7', + -0x2148: b'\x11\xde\xb8', + -0x2147: b'\x11\xde\xb9', + -0x2146: b'\x11\xde\xba', + -0x2145: b'\x11\xde\xbb', + -0x2144: b'\x11\xde\xbc', + -0x2143: b'\x11\xde\xbd', + -0x2142: b'\x11\xde\xbe', + -0x2141: b'\x11\xde\xbf', + -0x2140: b'\x11\xde\xc0', + -0x213f: b'\x11\xde\xc1', + -0x213e: b'\x11\xde\xc2', + -0x213d: b'\x11\xde\xc3', + -0x213c: b'\x11\xde\xc4', + -0x213b: b'\x11\xde\xc5', + -0x213a: b'\x11\xde\xc6', + -0x2139: b'\x11\xde\xc7', + -0x2138: b'\x11\xde\xc8', + -0x2137: b'\x11\xde\xc9', + -0x2136: b'\x11\xde\xca', + -0x2135: b'\x11\xde\xcb', + -0x2134: b'\x11\xde\xcc', + -0x2133: b'\x11\xde\xcd', + -0x2132: b'\x11\xde\xce', + -0x2131: b'\x11\xde\xcf', + -0x2130: b'\x11\xde\xd0', + -0x212f: b'\x11\xde\xd1', + -0x212e: b'\x11\xde\xd2', + -0x212d: b'\x11\xde\xd3', + -0x212c: b'\x11\xde\xd4', + -0x212b: b'\x11\xde\xd5', + -0x212a: b'\x11\xde\xd6', + -0x2129: b'\x11\xde\xd7', + -0x2128: b'\x11\xde\xd8', + -0x2127: b'\x11\xde\xd9', + -0x2126: b'\x11\xde\xda', + -0x2125: b'\x11\xde\xdb', + -0x2124: b'\x11\xde\xdc', + -0x2123: b'\x11\xde\xdd', + -0x2122: b'\x11\xde\xde', + -0x2121: b'\x11\xde\xdf', + -0x2120: b'\x11\xde\xe0', + -0x211f: b'\x11\xde\xe1', + -0x211e: b'\x11\xde\xe2', + -0x211d: b'\x11\xde\xe3', + -0x211c: b'\x11\xde\xe4', + -0x211b: b'\x11\xde\xe5', + -0x211a: b'\x11\xde\xe6', + -0x2119: b'\x11\xde\xe7', + -0x2118: b'\x11\xde\xe8', + -0x2117: b'\x11\xde\xe9', + -0x2116: b'\x11\xde\xea', + -0x2115: b'\x11\xde\xeb', + -0x2114: b'\x11\xde\xec', + -0x2113: b'\x11\xde\xed', + -0x2112: b'\x11\xde\xee', + -0x2111: b'\x11\xde\xef', + -0x2110: b'\x11\xde\xf0', + -0x210f: b'\x11\xde\xf1', + -0x210e: b'\x11\xde\xf2', + -0x210d: b'\x11\xde\xf3', + -0x210c: b'\x11\xde\xf4', + -0x210b: b'\x11\xde\xf5', + -0x210a: b'\x11\xde\xf6', + -0x2109: b'\x11\xde\xf7', + -0x2108: b'\x11\xde\xf8', + -0x2107: b'\x11\xde\xf9', + -0x2106: b'\x11\xde\xfa', + -0x2105: b'\x11\xde\xfb', + -0x2104: b'\x11\xde\xfc', + -0x2103: b'\x11\xde\xfd', + -0x2102: b'\x11\xde\xfe', + -0x2101: b'\x11\xde\xff', + -0x2100: b'\x11\xdf\x00', + -0x20ff: b'\x11\xdf\x01', + -0x20fe: b'\x11\xdf\x02', + -0x20fd: b'\x11\xdf\x03', + -0x20fc: b'\x11\xdf\x04', + -0x20fb: b'\x11\xdf\x05', + -0x20fa: b'\x11\xdf\x06', + -0x20f9: b'\x11\xdf\x07', + -0x20f8: b'\x11\xdf\x08', + -0x20f7: b'\x11\xdf\t', + -0x20f6: b'\x11\xdf\n', + -0x20f5: b'\x11\xdf\x0b', + -0x20f4: b'\x11\xdf\x0c', + -0x20f3: b'\x11\xdf\r', + -0x20f2: b'\x11\xdf\x0e', + -0x20f1: b'\x11\xdf\x0f', + -0x20f0: b'\x11\xdf\x10', + -0x20ef: b'\x11\xdf\x11', + -0x20ee: b'\x11\xdf\x12', + -0x20ed: b'\x11\xdf\x13', + -0x20ec: b'\x11\xdf\x14', + -0x20eb: b'\x11\xdf\x15', + -0x20ea: b'\x11\xdf\x16', + -0x20e9: b'\x11\xdf\x17', + -0x20e8: b'\x11\xdf\x18', + -0x20e7: b'\x11\xdf\x19', + -0x20e6: b'\x11\xdf\x1a', + -0x20e5: b'\x11\xdf\x1b', + -0x20e4: b'\x11\xdf\x1c', + -0x20e3: b'\x11\xdf\x1d', + -0x20e2: b'\x11\xdf\x1e', + -0x20e1: b'\x11\xdf\x1f', + -0x20e0: b'\x11\xdf ', + -0x20df: b'\x11\xdf!', + -0x20de: b'\x11\xdf"', + -0x20dd: b'\x11\xdf#', + -0x20dc: b'\x11\xdf$', + -0x20db: b'\x11\xdf%', + -0x20da: b'\x11\xdf&', + -0x20d9: b"\x11\xdf'", + -0x20d8: b'\x11\xdf(', + -0x20d7: b'\x11\xdf)', + -0x20d6: b'\x11\xdf*', + -0x20d5: b'\x11\xdf+', + -0x20d4: b'\x11\xdf,', + -0x20d3: b'\x11\xdf-', + -0x20d2: b'\x11\xdf.', + -0x20d1: b'\x11\xdf/', + -0x20d0: b'\x11\xdf0', + -0x20cf: b'\x11\xdf1', + -0x20ce: b'\x11\xdf2', + -0x20cd: b'\x11\xdf3', + -0x20cc: b'\x11\xdf4', + -0x20cb: b'\x11\xdf5', + -0x20ca: b'\x11\xdf6', + -0x20c9: b'\x11\xdf7', + -0x20c8: b'\x11\xdf8', + -0x20c7: b'\x11\xdf9', + -0x20c6: b'\x11\xdf:', + -0x20c5: b'\x11\xdf;', + -0x20c4: b'\x11\xdf<', + -0x20c3: b'\x11\xdf=', + -0x20c2: b'\x11\xdf>', + -0x20c1: b'\x11\xdf?', + -0x20c0: b'\x11\xdf@', + -0x20bf: b'\x11\xdfA', + -0x20be: b'\x11\xdfB', + -0x20bd: b'\x11\xdfC', + -0x20bc: b'\x11\xdfD', + -0x20bb: b'\x11\xdfE', + -0x20ba: b'\x11\xdfF', + -0x20b9: b'\x11\xdfG', + -0x20b8: b'\x11\xdfH', + -0x20b7: b'\x11\xdfI', + -0x20b6: b'\x11\xdfJ', + -0x20b5: b'\x11\xdfK', + -0x20b4: b'\x11\xdfL', + -0x20b3: b'\x11\xdfM', + -0x20b2: b'\x11\xdfN', + -0x20b1: b'\x11\xdfO', + -0x20b0: b'\x11\xdfP', + -0x20af: b'\x11\xdfQ', + -0x20ae: b'\x11\xdfR', + -0x20ad: b'\x11\xdfS', + -0x20ac: b'\x11\xdfT', + -0x20ab: b'\x11\xdfU', + -0x20aa: b'\x11\xdfV', + -0x20a9: b'\x11\xdfW', + -0x20a8: b'\x11\xdfX', + -0x20a7: b'\x11\xdfY', + -0x20a6: b'\x11\xdfZ', + -0x20a5: b'\x11\xdf[', + -0x20a4: b'\x11\xdf\\', + -0x20a3: b'\x11\xdf]', + -0x20a2: b'\x11\xdf^', + -0x20a1: b'\x11\xdf_', + -0x20a0: b'\x11\xdf`', + -0x209f: b'\x11\xdfa', + -0x209e: b'\x11\xdfb', + -0x209d: b'\x11\xdfc', + -0x209c: b'\x11\xdfd', + -0x209b: b'\x11\xdfe', + -0x209a: b'\x11\xdff', + -0x2099: b'\x11\xdfg', + -0x2098: b'\x11\xdfh', + -0x2097: b'\x11\xdfi', + -0x2096: b'\x11\xdfj', + -0x2095: b'\x11\xdfk', + -0x2094: b'\x11\xdfl', + -0x2093: b'\x11\xdfm', + -0x2092: b'\x11\xdfn', + -0x2091: b'\x11\xdfo', + -0x2090: b'\x11\xdfp', + -0x208f: b'\x11\xdfq', + -0x208e: b'\x11\xdfr', + -0x208d: b'\x11\xdfs', + -0x208c: b'\x11\xdft', + -0x208b: b'\x11\xdfu', + -0x208a: b'\x11\xdfv', + -0x2089: b'\x11\xdfw', + -0x2088: b'\x11\xdfx', + -0x2087: b'\x11\xdfy', + -0x2086: b'\x11\xdfz', + -0x2085: b'\x11\xdf{', + -0x2084: b'\x11\xdf|', + -0x2083: b'\x11\xdf}', + -0x2082: b'\x11\xdf~', + -0x2081: b'\x11\xdf\x7f', + -0x2080: b'\x11\xdf\x80', + -0x207f: b'\x11\xdf\x81', + -0x207e: b'\x11\xdf\x82', + -0x207d: b'\x11\xdf\x83', + -0x207c: b'\x11\xdf\x84', + -0x207b: b'\x11\xdf\x85', + -0x207a: b'\x11\xdf\x86', + -0x2079: b'\x11\xdf\x87', + -0x2078: b'\x11\xdf\x88', + -0x2077: b'\x11\xdf\x89', + -0x2076: b'\x11\xdf\x8a', + -0x2075: b'\x11\xdf\x8b', + -0x2074: b'\x11\xdf\x8c', + -0x2073: b'\x11\xdf\x8d', + -0x2072: b'\x11\xdf\x8e', + -0x2071: b'\x11\xdf\x8f', + -0x2070: b'\x11\xdf\x90', + -0x206f: b'\x11\xdf\x91', + -0x206e: b'\x11\xdf\x92', + -0x206d: b'\x11\xdf\x93', + -0x206c: b'\x11\xdf\x94', + -0x206b: b'\x11\xdf\x95', + -0x206a: b'\x11\xdf\x96', + -0x2069: b'\x11\xdf\x97', + -0x2068: b'\x11\xdf\x98', + -0x2067: b'\x11\xdf\x99', + -0x2066: b'\x11\xdf\x9a', + -0x2065: b'\x11\xdf\x9b', + -0x2064: b'\x11\xdf\x9c', + -0x2063: b'\x11\xdf\x9d', + -0x2062: b'\x11\xdf\x9e', + -0x2061: b'\x11\xdf\x9f', + -0x2060: b'\x11\xdf\xa0', + -0x205f: b'\x11\xdf\xa1', + -0x205e: b'\x11\xdf\xa2', + -0x205d: b'\x11\xdf\xa3', + -0x205c: b'\x11\xdf\xa4', + -0x205b: b'\x11\xdf\xa5', + -0x205a: b'\x11\xdf\xa6', + -0x2059: b'\x11\xdf\xa7', + -0x2058: b'\x11\xdf\xa8', + -0x2057: b'\x11\xdf\xa9', + -0x2056: b'\x11\xdf\xaa', + -0x2055: b'\x11\xdf\xab', + -0x2054: b'\x11\xdf\xac', + -0x2053: b'\x11\xdf\xad', + -0x2052: b'\x11\xdf\xae', + -0x2051: b'\x11\xdf\xaf', + -0x2050: b'\x11\xdf\xb0', + -0x204f: b'\x11\xdf\xb1', + -0x204e: b'\x11\xdf\xb2', + -0x204d: b'\x11\xdf\xb3', + -0x204c: b'\x11\xdf\xb4', + -0x204b: b'\x11\xdf\xb5', + -0x204a: b'\x11\xdf\xb6', + -0x2049: b'\x11\xdf\xb7', + -0x2048: b'\x11\xdf\xb8', + -0x2047: b'\x11\xdf\xb9', + -0x2046: b'\x11\xdf\xba', + -0x2045: b'\x11\xdf\xbb', + -0x2044: b'\x11\xdf\xbc', + -0x2043: b'\x11\xdf\xbd', + -0x2042: b'\x11\xdf\xbe', + -0x2041: b'\x11\xdf\xbf', + -0x2040: b'\x11\xdf\xc0', + -0x203f: b'\x11\xdf\xc1', + -0x203e: b'\x11\xdf\xc2', + -0x203d: b'\x11\xdf\xc3', + -0x203c: b'\x11\xdf\xc4', + -0x203b: b'\x11\xdf\xc5', + -0x203a: b'\x11\xdf\xc6', + -0x2039: b'\x11\xdf\xc7', + -0x2038: b'\x11\xdf\xc8', + -0x2037: b'\x11\xdf\xc9', + -0x2036: b'\x11\xdf\xca', + -0x2035: b'\x11\xdf\xcb', + -0x2034: b'\x11\xdf\xcc', + -0x2033: b'\x11\xdf\xcd', + -0x2032: b'\x11\xdf\xce', + -0x2031: b'\x11\xdf\xcf', + -0x2030: b'\x11\xdf\xd0', + -0x202f: b'\x11\xdf\xd1', + -0x202e: b'\x11\xdf\xd2', + -0x202d: b'\x11\xdf\xd3', + -0x202c: b'\x11\xdf\xd4', + -0x202b: b'\x11\xdf\xd5', + -0x202a: b'\x11\xdf\xd6', + -0x2029: b'\x11\xdf\xd7', + -0x2028: b'\x11\xdf\xd8', + -0x2027: b'\x11\xdf\xd9', + -0x2026: b'\x11\xdf\xda', + -0x2025: b'\x11\xdf\xdb', + -0x2024: b'\x11\xdf\xdc', + -0x2023: b'\x11\xdf\xdd', + -0x2022: b'\x11\xdf\xde', + -0x2021: b'\x11\xdf\xdf', + -0x2020: b'\x11\xdf\xe0', + -0x201f: b'\x11\xdf\xe1', + -0x201e: b'\x11\xdf\xe2', + -0x201d: b'\x11\xdf\xe3', + -0x201c: b'\x11\xdf\xe4', + -0x201b: b'\x11\xdf\xe5', + -0x201a: b'\x11\xdf\xe6', + -0x2019: b'\x11\xdf\xe7', + -0x2018: b'\x11\xdf\xe8', + -0x2017: b'\x11\xdf\xe9', + -0x2016: b'\x11\xdf\xea', + -0x2015: b'\x11\xdf\xeb', + -0x2014: b'\x11\xdf\xec', + -0x2013: b'\x11\xdf\xed', + -0x2012: b'\x11\xdf\xee', + -0x2011: b'\x11\xdf\xef', + -0x2010: b'\x11\xdf\xf0', + -0x200f: b'\x11\xdf\xf1', + -0x200e: b'\x11\xdf\xf2', + -0x200d: b'\x11\xdf\xf3', + -0x200c: b'\x11\xdf\xf4', + -0x200b: b'\x11\xdf\xf5', + -0x200a: b'\x11\xdf\xf6', + -0x2009: b'\x11\xdf\xf7', + -0x2008: b'\x11\xdf\xf8', + -0x2007: b'\x11\xdf\xf9', + -0x2006: b'\x11\xdf\xfa', + -0x2005: b'\x11\xdf\xfb', + -0x2004: b'\x11\xdf\xfc', + -0x2003: b'\x11\xdf\xfd', + -0x2002: b'\x11\xdf\xfe', + -0x2001: b'\x11\xdf\xff', + -0x2000: b'\x11\xe0\x00', + -0x1fff: b'\x11\xe0\x01', + -0x1ffe: b'\x11\xe0\x02', + -0x1ffd: b'\x11\xe0\x03', + -0x1ffc: b'\x11\xe0\x04', + -0x1ffb: b'\x11\xe0\x05', + -0x1ffa: b'\x11\xe0\x06', + -0x1ff9: b'\x11\xe0\x07', + -0x1ff8: b'\x11\xe0\x08', + -0x1ff7: b'\x11\xe0\t', + -0x1ff6: b'\x11\xe0\n', + -0x1ff5: b'\x11\xe0\x0b', + -0x1ff4: b'\x11\xe0\x0c', + -0x1ff3: b'\x11\xe0\r', + -0x1ff2: b'\x11\xe0\x0e', + -0x1ff1: b'\x11\xe0\x0f', + -0x1ff0: b'\x11\xe0\x10', + -0x1fef: b'\x11\xe0\x11', + -0x1fee: b'\x11\xe0\x12', + -0x1fed: b'\x11\xe0\x13', + -0x1fec: b'\x11\xe0\x14', + -0x1feb: b'\x11\xe0\x15', + -0x1fea: b'\x11\xe0\x16', + -0x1fe9: b'\x11\xe0\x17', + -0x1fe8: b'\x11\xe0\x18', + -0x1fe7: b'\x11\xe0\x19', + -0x1fe6: b'\x11\xe0\x1a', + -0x1fe5: b'\x11\xe0\x1b', + -0x1fe4: b'\x11\xe0\x1c', + -0x1fe3: b'\x11\xe0\x1d', + -0x1fe2: b'\x11\xe0\x1e', + -0x1fe1: b'\x11\xe0\x1f', + -0x1fe0: b'\x11\xe0 ', + -0x1fdf: b'\x11\xe0!', + -0x1fde: b'\x11\xe0"', + -0x1fdd: b'\x11\xe0#', + -0x1fdc: b'\x11\xe0$', + -0x1fdb: b'\x11\xe0%', + -0x1fda: b'\x11\xe0&', + -0x1fd9: b"\x11\xe0'", + -0x1fd8: b'\x11\xe0(', + -0x1fd7: b'\x11\xe0)', + -0x1fd6: b'\x11\xe0*', + -0x1fd5: b'\x11\xe0+', + -0x1fd4: b'\x11\xe0,', + -0x1fd3: b'\x11\xe0-', + -0x1fd2: b'\x11\xe0.', + -0x1fd1: b'\x11\xe0/', + -0x1fd0: b'\x11\xe00', + -0x1fcf: b'\x11\xe01', + -0x1fce: b'\x11\xe02', + -0x1fcd: b'\x11\xe03', + -0x1fcc: b'\x11\xe04', + -0x1fcb: b'\x11\xe05', + -0x1fca: b'\x11\xe06', + -0x1fc9: b'\x11\xe07', + -0x1fc8: b'\x11\xe08', + -0x1fc7: b'\x11\xe09', + -0x1fc6: b'\x11\xe0:', + -0x1fc5: b'\x11\xe0;', + -0x1fc4: b'\x11\xe0<', + -0x1fc3: b'\x11\xe0=', + -0x1fc2: b'\x11\xe0>', + -0x1fc1: b'\x11\xe0?', + -0x1fc0: b'\x11\xe0@', + -0x1fbf: b'\x11\xe0A', + -0x1fbe: b'\x11\xe0B', + -0x1fbd: b'\x11\xe0C', + -0x1fbc: b'\x11\xe0D', + -0x1fbb: b'\x11\xe0E', + -0x1fba: b'\x11\xe0F', + -0x1fb9: b'\x11\xe0G', + -0x1fb8: b'\x11\xe0H', + -0x1fb7: b'\x11\xe0I', + -0x1fb6: b'\x11\xe0J', + -0x1fb5: b'\x11\xe0K', + -0x1fb4: b'\x11\xe0L', + -0x1fb3: b'\x11\xe0M', + -0x1fb2: b'\x11\xe0N', + -0x1fb1: b'\x11\xe0O', + -0x1fb0: b'\x11\xe0P', + -0x1faf: b'\x11\xe0Q', + -0x1fae: b'\x11\xe0R', + -0x1fad: b'\x11\xe0S', + -0x1fac: b'\x11\xe0T', + -0x1fab: b'\x11\xe0U', + -0x1faa: b'\x11\xe0V', + -0x1fa9: b'\x11\xe0W', + -0x1fa8: b'\x11\xe0X', + -0x1fa7: b'\x11\xe0Y', + -0x1fa6: b'\x11\xe0Z', + -0x1fa5: b'\x11\xe0[', + -0x1fa4: b'\x11\xe0\\', + -0x1fa3: b'\x11\xe0]', + -0x1fa2: b'\x11\xe0^', + -0x1fa1: b'\x11\xe0_', + -0x1fa0: b'\x11\xe0`', + -0x1f9f: b'\x11\xe0a', + -0x1f9e: b'\x11\xe0b', + -0x1f9d: b'\x11\xe0c', + -0x1f9c: b'\x11\xe0d', + -0x1f9b: b'\x11\xe0e', + -0x1f9a: b'\x11\xe0f', + -0x1f99: b'\x11\xe0g', + -0x1f98: b'\x11\xe0h', + -0x1f97: b'\x11\xe0i', + -0x1f96: b'\x11\xe0j', + -0x1f95: b'\x11\xe0k', + -0x1f94: b'\x11\xe0l', + -0x1f93: b'\x11\xe0m', + -0x1f92: b'\x11\xe0n', + -0x1f91: b'\x11\xe0o', + -0x1f90: b'\x11\xe0p', + -0x1f8f: b'\x11\xe0q', + -0x1f8e: b'\x11\xe0r', + -0x1f8d: b'\x11\xe0s', + -0x1f8c: b'\x11\xe0t', + -0x1f8b: b'\x11\xe0u', + -0x1f8a: b'\x11\xe0v', + -0x1f89: b'\x11\xe0w', + -0x1f88: b'\x11\xe0x', + -0x1f87: b'\x11\xe0y', + -0x1f86: b'\x11\xe0z', + -0x1f85: b'\x11\xe0{', + -0x1f84: b'\x11\xe0|', + -0x1f83: b'\x11\xe0}', + -0x1f82: b'\x11\xe0~', + -0x1f81: b'\x11\xe0\x7f', + -0x1f80: b'\x11\xe0\x80', + -0x1f7f: b'\x11\xe0\x81', + -0x1f7e: b'\x11\xe0\x82', + -0x1f7d: b'\x11\xe0\x83', + -0x1f7c: b'\x11\xe0\x84', + -0x1f7b: b'\x11\xe0\x85', + -0x1f7a: b'\x11\xe0\x86', + -0x1f79: b'\x11\xe0\x87', + -0x1f78: b'\x11\xe0\x88', + -0x1f77: b'\x11\xe0\x89', + -0x1f76: b'\x11\xe0\x8a', + -0x1f75: b'\x11\xe0\x8b', + -0x1f74: b'\x11\xe0\x8c', + -0x1f73: b'\x11\xe0\x8d', + -0x1f72: b'\x11\xe0\x8e', + -0x1f71: b'\x11\xe0\x8f', + -0x1f70: b'\x11\xe0\x90', + -0x1f6f: b'\x11\xe0\x91', + -0x1f6e: b'\x11\xe0\x92', + -0x1f6d: b'\x11\xe0\x93', + -0x1f6c: b'\x11\xe0\x94', + -0x1f6b: b'\x11\xe0\x95', + -0x1f6a: b'\x11\xe0\x96', + -0x1f69: b'\x11\xe0\x97', + -0x1f68: b'\x11\xe0\x98', + -0x1f67: b'\x11\xe0\x99', + -0x1f66: b'\x11\xe0\x9a', + -0x1f65: b'\x11\xe0\x9b', + -0x1f64: b'\x11\xe0\x9c', + -0x1f63: b'\x11\xe0\x9d', + -0x1f62: b'\x11\xe0\x9e', + -0x1f61: b'\x11\xe0\x9f', + -0x1f60: b'\x11\xe0\xa0', + -0x1f5f: b'\x11\xe0\xa1', + -0x1f5e: b'\x11\xe0\xa2', + -0x1f5d: b'\x11\xe0\xa3', + -0x1f5c: b'\x11\xe0\xa4', + -0x1f5b: b'\x11\xe0\xa5', + -0x1f5a: b'\x11\xe0\xa6', + -0x1f59: b'\x11\xe0\xa7', + -0x1f58: b'\x11\xe0\xa8', + -0x1f57: b'\x11\xe0\xa9', + -0x1f56: b'\x11\xe0\xaa', + -0x1f55: b'\x11\xe0\xab', + -0x1f54: b'\x11\xe0\xac', + -0x1f53: b'\x11\xe0\xad', + -0x1f52: b'\x11\xe0\xae', + -0x1f51: b'\x11\xe0\xaf', + -0x1f50: b'\x11\xe0\xb0', + -0x1f4f: b'\x11\xe0\xb1', + -0x1f4e: b'\x11\xe0\xb2', + -0x1f4d: b'\x11\xe0\xb3', + -0x1f4c: b'\x11\xe0\xb4', + -0x1f4b: b'\x11\xe0\xb5', + -0x1f4a: b'\x11\xe0\xb6', + -0x1f49: b'\x11\xe0\xb7', + -0x1f48: b'\x11\xe0\xb8', + -0x1f47: b'\x11\xe0\xb9', + -0x1f46: b'\x11\xe0\xba', + -0x1f45: b'\x11\xe0\xbb', + -0x1f44: b'\x11\xe0\xbc', + -0x1f43: b'\x11\xe0\xbd', + -0x1f42: b'\x11\xe0\xbe', + -0x1f41: b'\x11\xe0\xbf', + -0x1f40: b'\x11\xe0\xc0', + -0x1f3f: b'\x11\xe0\xc1', + -0x1f3e: b'\x11\xe0\xc2', + -0x1f3d: b'\x11\xe0\xc3', + -0x1f3c: b'\x11\xe0\xc4', + -0x1f3b: b'\x11\xe0\xc5', + -0x1f3a: b'\x11\xe0\xc6', + -0x1f39: b'\x11\xe0\xc7', + -0x1f38: b'\x11\xe0\xc8', + -0x1f37: b'\x11\xe0\xc9', + -0x1f36: b'\x11\xe0\xca', + -0x1f35: b'\x11\xe0\xcb', + -0x1f34: b'\x11\xe0\xcc', + -0x1f33: b'\x11\xe0\xcd', + -0x1f32: b'\x11\xe0\xce', + -0x1f31: b'\x11\xe0\xcf', + -0x1f30: b'\x11\xe0\xd0', + -0x1f2f: b'\x11\xe0\xd1', + -0x1f2e: b'\x11\xe0\xd2', + -0x1f2d: b'\x11\xe0\xd3', + -0x1f2c: b'\x11\xe0\xd4', + -0x1f2b: b'\x11\xe0\xd5', + -0x1f2a: b'\x11\xe0\xd6', + -0x1f29: b'\x11\xe0\xd7', + -0x1f28: b'\x11\xe0\xd8', + -0x1f27: b'\x11\xe0\xd9', + -0x1f26: b'\x11\xe0\xda', + -0x1f25: b'\x11\xe0\xdb', + -0x1f24: b'\x11\xe0\xdc', + -0x1f23: b'\x11\xe0\xdd', + -0x1f22: b'\x11\xe0\xde', + -0x1f21: b'\x11\xe0\xdf', + -0x1f20: b'\x11\xe0\xe0', + -0x1f1f: b'\x11\xe0\xe1', + -0x1f1e: b'\x11\xe0\xe2', + -0x1f1d: b'\x11\xe0\xe3', + -0x1f1c: b'\x11\xe0\xe4', + -0x1f1b: b'\x11\xe0\xe5', + -0x1f1a: b'\x11\xe0\xe6', + -0x1f19: b'\x11\xe0\xe7', + -0x1f18: b'\x11\xe0\xe8', + -0x1f17: b'\x11\xe0\xe9', + -0x1f16: b'\x11\xe0\xea', + -0x1f15: b'\x11\xe0\xeb', + -0x1f14: b'\x11\xe0\xec', + -0x1f13: b'\x11\xe0\xed', + -0x1f12: b'\x11\xe0\xee', + -0x1f11: b'\x11\xe0\xef', + -0x1f10: b'\x11\xe0\xf0', + -0x1f0f: b'\x11\xe0\xf1', + -0x1f0e: b'\x11\xe0\xf2', + -0x1f0d: b'\x11\xe0\xf3', + -0x1f0c: b'\x11\xe0\xf4', + -0x1f0b: b'\x11\xe0\xf5', + -0x1f0a: b'\x11\xe0\xf6', + -0x1f09: b'\x11\xe0\xf7', + -0x1f08: b'\x11\xe0\xf8', + -0x1f07: b'\x11\xe0\xf9', + -0x1f06: b'\x11\xe0\xfa', + -0x1f05: b'\x11\xe0\xfb', + -0x1f04: b'\x11\xe0\xfc', + -0x1f03: b'\x11\xe0\xfd', + -0x1f02: b'\x11\xe0\xfe', + -0x1f01: b'\x11\xe0\xff', + -0x1f00: b'\x11\xe1\x00', + -0x1eff: b'\x11\xe1\x01', + -0x1efe: b'\x11\xe1\x02', + -0x1efd: b'\x11\xe1\x03', + -0x1efc: b'\x11\xe1\x04', + -0x1efb: b'\x11\xe1\x05', + -0x1efa: b'\x11\xe1\x06', + -0x1ef9: b'\x11\xe1\x07', + -0x1ef8: b'\x11\xe1\x08', + -0x1ef7: b'\x11\xe1\t', + -0x1ef6: b'\x11\xe1\n', + -0x1ef5: b'\x11\xe1\x0b', + -0x1ef4: b'\x11\xe1\x0c', + -0x1ef3: b'\x11\xe1\r', + -0x1ef2: b'\x11\xe1\x0e', + -0x1ef1: b'\x11\xe1\x0f', + -0x1ef0: b'\x11\xe1\x10', + -0x1eef: b'\x11\xe1\x11', + -0x1eee: b'\x11\xe1\x12', + -0x1eed: b'\x11\xe1\x13', + -0x1eec: b'\x11\xe1\x14', + -0x1eeb: b'\x11\xe1\x15', + -0x1eea: b'\x11\xe1\x16', + -0x1ee9: b'\x11\xe1\x17', + -0x1ee8: b'\x11\xe1\x18', + -0x1ee7: b'\x11\xe1\x19', + -0x1ee6: b'\x11\xe1\x1a', + -0x1ee5: b'\x11\xe1\x1b', + -0x1ee4: b'\x11\xe1\x1c', + -0x1ee3: b'\x11\xe1\x1d', + -0x1ee2: b'\x11\xe1\x1e', + -0x1ee1: b'\x11\xe1\x1f', + -0x1ee0: b'\x11\xe1 ', + -0x1edf: b'\x11\xe1!', + -0x1ede: b'\x11\xe1"', + -0x1edd: b'\x11\xe1#', + -0x1edc: b'\x11\xe1$', + -0x1edb: b'\x11\xe1%', + -0x1eda: b'\x11\xe1&', + -0x1ed9: b"\x11\xe1'", + -0x1ed8: b'\x11\xe1(', + -0x1ed7: b'\x11\xe1)', + -0x1ed6: b'\x11\xe1*', + -0x1ed5: b'\x11\xe1+', + -0x1ed4: b'\x11\xe1,', + -0x1ed3: b'\x11\xe1-', + -0x1ed2: b'\x11\xe1.', + -0x1ed1: b'\x11\xe1/', + -0x1ed0: b'\x11\xe10', + -0x1ecf: b'\x11\xe11', + -0x1ece: b'\x11\xe12', + -0x1ecd: b'\x11\xe13', + -0x1ecc: b'\x11\xe14', + -0x1ecb: b'\x11\xe15', + -0x1eca: b'\x11\xe16', + -0x1ec9: b'\x11\xe17', + -0x1ec8: b'\x11\xe18', + -0x1ec7: b'\x11\xe19', + -0x1ec6: b'\x11\xe1:', + -0x1ec5: b'\x11\xe1;', + -0x1ec4: b'\x11\xe1<', + -0x1ec3: b'\x11\xe1=', + -0x1ec2: b'\x11\xe1>', + -0x1ec1: b'\x11\xe1?', + -0x1ec0: b'\x11\xe1@', + -0x1ebf: b'\x11\xe1A', + -0x1ebe: b'\x11\xe1B', + -0x1ebd: b'\x11\xe1C', + -0x1ebc: b'\x11\xe1D', + -0x1ebb: b'\x11\xe1E', + -0x1eba: b'\x11\xe1F', + -0x1eb9: b'\x11\xe1G', + -0x1eb8: b'\x11\xe1H', + -0x1eb7: b'\x11\xe1I', + -0x1eb6: b'\x11\xe1J', + -0x1eb5: b'\x11\xe1K', + -0x1eb4: b'\x11\xe1L', + -0x1eb3: b'\x11\xe1M', + -0x1eb2: b'\x11\xe1N', + -0x1eb1: b'\x11\xe1O', + -0x1eb0: b'\x11\xe1P', + -0x1eaf: b'\x11\xe1Q', + -0x1eae: b'\x11\xe1R', + -0x1ead: b'\x11\xe1S', + -0x1eac: b'\x11\xe1T', + -0x1eab: b'\x11\xe1U', + -0x1eaa: b'\x11\xe1V', + -0x1ea9: b'\x11\xe1W', + -0x1ea8: b'\x11\xe1X', + -0x1ea7: b'\x11\xe1Y', + -0x1ea6: b'\x11\xe1Z', + -0x1ea5: b'\x11\xe1[', + -0x1ea4: b'\x11\xe1\\', + -0x1ea3: b'\x11\xe1]', + -0x1ea2: b'\x11\xe1^', + -0x1ea1: b'\x11\xe1_', + -0x1ea0: b'\x11\xe1`', + -0x1e9f: b'\x11\xe1a', + -0x1e9e: b'\x11\xe1b', + -0x1e9d: b'\x11\xe1c', + -0x1e9c: b'\x11\xe1d', + -0x1e9b: b'\x11\xe1e', + -0x1e9a: b'\x11\xe1f', + -0x1e99: b'\x11\xe1g', + -0x1e98: b'\x11\xe1h', + -0x1e97: b'\x11\xe1i', + -0x1e96: b'\x11\xe1j', + -0x1e95: b'\x11\xe1k', + -0x1e94: b'\x11\xe1l', + -0x1e93: b'\x11\xe1m', + -0x1e92: b'\x11\xe1n', + -0x1e91: b'\x11\xe1o', + -0x1e90: b'\x11\xe1p', + -0x1e8f: b'\x11\xe1q', + -0x1e8e: b'\x11\xe1r', + -0x1e8d: b'\x11\xe1s', + -0x1e8c: b'\x11\xe1t', + -0x1e8b: b'\x11\xe1u', + -0x1e8a: b'\x11\xe1v', + -0x1e89: b'\x11\xe1w', + -0x1e88: b'\x11\xe1x', + -0x1e87: b'\x11\xe1y', + -0x1e86: b'\x11\xe1z', + -0x1e85: b'\x11\xe1{', + -0x1e84: b'\x11\xe1|', + -0x1e83: b'\x11\xe1}', + -0x1e82: b'\x11\xe1~', + -0x1e81: b'\x11\xe1\x7f', + -0x1e80: b'\x11\xe1\x80', + -0x1e7f: b'\x11\xe1\x81', + -0x1e7e: b'\x11\xe1\x82', + -0x1e7d: b'\x11\xe1\x83', + -0x1e7c: b'\x11\xe1\x84', + -0x1e7b: b'\x11\xe1\x85', + -0x1e7a: b'\x11\xe1\x86', + -0x1e79: b'\x11\xe1\x87', + -0x1e78: b'\x11\xe1\x88', + -0x1e77: b'\x11\xe1\x89', + -0x1e76: b'\x11\xe1\x8a', + -0x1e75: b'\x11\xe1\x8b', + -0x1e74: b'\x11\xe1\x8c', + -0x1e73: b'\x11\xe1\x8d', + -0x1e72: b'\x11\xe1\x8e', + -0x1e71: b'\x11\xe1\x8f', + -0x1e70: b'\x11\xe1\x90', + -0x1e6f: b'\x11\xe1\x91', + -0x1e6e: b'\x11\xe1\x92', + -0x1e6d: b'\x11\xe1\x93', + -0x1e6c: b'\x11\xe1\x94', + -0x1e6b: b'\x11\xe1\x95', + -0x1e6a: b'\x11\xe1\x96', + -0x1e69: b'\x11\xe1\x97', + -0x1e68: b'\x11\xe1\x98', + -0x1e67: b'\x11\xe1\x99', + -0x1e66: b'\x11\xe1\x9a', + -0x1e65: b'\x11\xe1\x9b', + -0x1e64: b'\x11\xe1\x9c', + -0x1e63: b'\x11\xe1\x9d', + -0x1e62: b'\x11\xe1\x9e', + -0x1e61: b'\x11\xe1\x9f', + -0x1e60: b'\x11\xe1\xa0', + -0x1e5f: b'\x11\xe1\xa1', + -0x1e5e: b'\x11\xe1\xa2', + -0x1e5d: b'\x11\xe1\xa3', + -0x1e5c: b'\x11\xe1\xa4', + -0x1e5b: b'\x11\xe1\xa5', + -0x1e5a: b'\x11\xe1\xa6', + -0x1e59: b'\x11\xe1\xa7', + -0x1e58: b'\x11\xe1\xa8', + -0x1e57: b'\x11\xe1\xa9', + -0x1e56: b'\x11\xe1\xaa', + -0x1e55: b'\x11\xe1\xab', + -0x1e54: b'\x11\xe1\xac', + -0x1e53: b'\x11\xe1\xad', + -0x1e52: b'\x11\xe1\xae', + -0x1e51: b'\x11\xe1\xaf', + -0x1e50: b'\x11\xe1\xb0', + -0x1e4f: b'\x11\xe1\xb1', + -0x1e4e: b'\x11\xe1\xb2', + -0x1e4d: b'\x11\xe1\xb3', + -0x1e4c: b'\x11\xe1\xb4', + -0x1e4b: b'\x11\xe1\xb5', + -0x1e4a: b'\x11\xe1\xb6', + -0x1e49: b'\x11\xe1\xb7', + -0x1e48: b'\x11\xe1\xb8', + -0x1e47: b'\x11\xe1\xb9', + -0x1e46: b'\x11\xe1\xba', + -0x1e45: b'\x11\xe1\xbb', + -0x1e44: b'\x11\xe1\xbc', + -0x1e43: b'\x11\xe1\xbd', + -0x1e42: b'\x11\xe1\xbe', + -0x1e41: b'\x11\xe1\xbf', + -0x1e40: b'\x11\xe1\xc0', + -0x1e3f: b'\x11\xe1\xc1', + -0x1e3e: b'\x11\xe1\xc2', + -0x1e3d: b'\x11\xe1\xc3', + -0x1e3c: b'\x11\xe1\xc4', + -0x1e3b: b'\x11\xe1\xc5', + -0x1e3a: b'\x11\xe1\xc6', + -0x1e39: b'\x11\xe1\xc7', + -0x1e38: b'\x11\xe1\xc8', + -0x1e37: b'\x11\xe1\xc9', + -0x1e36: b'\x11\xe1\xca', + -0x1e35: b'\x11\xe1\xcb', + -0x1e34: b'\x11\xe1\xcc', + -0x1e33: b'\x11\xe1\xcd', + -0x1e32: b'\x11\xe1\xce', + -0x1e31: b'\x11\xe1\xcf', + -0x1e30: b'\x11\xe1\xd0', + -0x1e2f: b'\x11\xe1\xd1', + -0x1e2e: b'\x11\xe1\xd2', + -0x1e2d: b'\x11\xe1\xd3', + -0x1e2c: b'\x11\xe1\xd4', + -0x1e2b: b'\x11\xe1\xd5', + -0x1e2a: b'\x11\xe1\xd6', + -0x1e29: b'\x11\xe1\xd7', + -0x1e28: b'\x11\xe1\xd8', + -0x1e27: b'\x11\xe1\xd9', + -0x1e26: b'\x11\xe1\xda', + -0x1e25: b'\x11\xe1\xdb', + -0x1e24: b'\x11\xe1\xdc', + -0x1e23: b'\x11\xe1\xdd', + -0x1e22: b'\x11\xe1\xde', + -0x1e21: b'\x11\xe1\xdf', + -0x1e20: b'\x11\xe1\xe0', + -0x1e1f: b'\x11\xe1\xe1', + -0x1e1e: b'\x11\xe1\xe2', + -0x1e1d: b'\x11\xe1\xe3', + -0x1e1c: b'\x11\xe1\xe4', + -0x1e1b: b'\x11\xe1\xe5', + -0x1e1a: b'\x11\xe1\xe6', + -0x1e19: b'\x11\xe1\xe7', + -0x1e18: b'\x11\xe1\xe8', + -0x1e17: b'\x11\xe1\xe9', + -0x1e16: b'\x11\xe1\xea', + -0x1e15: b'\x11\xe1\xeb', + -0x1e14: b'\x11\xe1\xec', + -0x1e13: b'\x11\xe1\xed', + -0x1e12: b'\x11\xe1\xee', + -0x1e11: b'\x11\xe1\xef', + -0x1e10: b'\x11\xe1\xf0', + -0x1e0f: b'\x11\xe1\xf1', + -0x1e0e: b'\x11\xe1\xf2', + -0x1e0d: b'\x11\xe1\xf3', + -0x1e0c: b'\x11\xe1\xf4', + -0x1e0b: b'\x11\xe1\xf5', + -0x1e0a: b'\x11\xe1\xf6', + -0x1e09: b'\x11\xe1\xf7', + -0x1e08: b'\x11\xe1\xf8', + -0x1e07: b'\x11\xe1\xf9', + -0x1e06: b'\x11\xe1\xfa', + -0x1e05: b'\x11\xe1\xfb', + -0x1e04: b'\x11\xe1\xfc', + -0x1e03: b'\x11\xe1\xfd', + -0x1e02: b'\x11\xe1\xfe', + -0x1e01: b'\x11\xe1\xff', + -0x1e00: b'\x11\xe2\x00', + -0x1dff: b'\x11\xe2\x01', + -0x1dfe: b'\x11\xe2\x02', + -0x1dfd: b'\x11\xe2\x03', + -0x1dfc: b'\x11\xe2\x04', + -0x1dfb: b'\x11\xe2\x05', + -0x1dfa: b'\x11\xe2\x06', + -0x1df9: b'\x11\xe2\x07', + -0x1df8: b'\x11\xe2\x08', + -0x1df7: b'\x11\xe2\t', + -0x1df6: b'\x11\xe2\n', + -0x1df5: b'\x11\xe2\x0b', + -0x1df4: b'\x11\xe2\x0c', + -0x1df3: b'\x11\xe2\r', + -0x1df2: b'\x11\xe2\x0e', + -0x1df1: b'\x11\xe2\x0f', + -0x1df0: b'\x11\xe2\x10', + -0x1def: b'\x11\xe2\x11', + -0x1dee: b'\x11\xe2\x12', + -0x1ded: b'\x11\xe2\x13', + -0x1dec: b'\x11\xe2\x14', + -0x1deb: b'\x11\xe2\x15', + -0x1dea: b'\x11\xe2\x16', + -0x1de9: b'\x11\xe2\x17', + -0x1de8: b'\x11\xe2\x18', + -0x1de7: b'\x11\xe2\x19', + -0x1de6: b'\x11\xe2\x1a', + -0x1de5: b'\x11\xe2\x1b', + -0x1de4: b'\x11\xe2\x1c', + -0x1de3: b'\x11\xe2\x1d', + -0x1de2: b'\x11\xe2\x1e', + -0x1de1: b'\x11\xe2\x1f', + -0x1de0: b'\x11\xe2 ', + -0x1ddf: b'\x11\xe2!', + -0x1dde: b'\x11\xe2"', + -0x1ddd: b'\x11\xe2#', + -0x1ddc: b'\x11\xe2$', + -0x1ddb: b'\x11\xe2%', + -0x1dda: b'\x11\xe2&', + -0x1dd9: b"\x11\xe2'", + -0x1dd8: b'\x11\xe2(', + -0x1dd7: b'\x11\xe2)', + -0x1dd6: b'\x11\xe2*', + -0x1dd5: b'\x11\xe2+', + -0x1dd4: b'\x11\xe2,', + -0x1dd3: b'\x11\xe2-', + -0x1dd2: b'\x11\xe2.', + -0x1dd1: b'\x11\xe2/', + -0x1dd0: b'\x11\xe20', + -0x1dcf: b'\x11\xe21', + -0x1dce: b'\x11\xe22', + -0x1dcd: b'\x11\xe23', + -0x1dcc: b'\x11\xe24', + -0x1dcb: b'\x11\xe25', + -0x1dca: b'\x11\xe26', + -0x1dc9: b'\x11\xe27', + -0x1dc8: b'\x11\xe28', + -0x1dc7: b'\x11\xe29', + -0x1dc6: b'\x11\xe2:', + -0x1dc5: b'\x11\xe2;', + -0x1dc4: b'\x11\xe2<', + -0x1dc3: b'\x11\xe2=', + -0x1dc2: b'\x11\xe2>', + -0x1dc1: b'\x11\xe2?', + -0x1dc0: b'\x11\xe2@', + -0x1dbf: b'\x11\xe2A', + -0x1dbe: b'\x11\xe2B', + -0x1dbd: b'\x11\xe2C', + -0x1dbc: b'\x11\xe2D', + -0x1dbb: b'\x11\xe2E', + -0x1dba: b'\x11\xe2F', + -0x1db9: b'\x11\xe2G', + -0x1db8: b'\x11\xe2H', + -0x1db7: b'\x11\xe2I', + -0x1db6: b'\x11\xe2J', + -0x1db5: b'\x11\xe2K', + -0x1db4: b'\x11\xe2L', + -0x1db3: b'\x11\xe2M', + -0x1db2: b'\x11\xe2N', + -0x1db1: b'\x11\xe2O', + -0x1db0: b'\x11\xe2P', + -0x1daf: b'\x11\xe2Q', + -0x1dae: b'\x11\xe2R', + -0x1dad: b'\x11\xe2S', + -0x1dac: b'\x11\xe2T', + -0x1dab: b'\x11\xe2U', + -0x1daa: b'\x11\xe2V', + -0x1da9: b'\x11\xe2W', + -0x1da8: b'\x11\xe2X', + -0x1da7: b'\x11\xe2Y', + -0x1da6: b'\x11\xe2Z', + -0x1da5: b'\x11\xe2[', + -0x1da4: b'\x11\xe2\\', + -0x1da3: b'\x11\xe2]', + -0x1da2: b'\x11\xe2^', + -0x1da1: b'\x11\xe2_', + -0x1da0: b'\x11\xe2`', + -0x1d9f: b'\x11\xe2a', + -0x1d9e: b'\x11\xe2b', + -0x1d9d: b'\x11\xe2c', + -0x1d9c: b'\x11\xe2d', + -0x1d9b: b'\x11\xe2e', + -0x1d9a: b'\x11\xe2f', + -0x1d99: b'\x11\xe2g', + -0x1d98: b'\x11\xe2h', + -0x1d97: b'\x11\xe2i', + -0x1d96: b'\x11\xe2j', + -0x1d95: b'\x11\xe2k', + -0x1d94: b'\x11\xe2l', + -0x1d93: b'\x11\xe2m', + -0x1d92: b'\x11\xe2n', + -0x1d91: b'\x11\xe2o', + -0x1d90: b'\x11\xe2p', + -0x1d8f: b'\x11\xe2q', + -0x1d8e: b'\x11\xe2r', + -0x1d8d: b'\x11\xe2s', + -0x1d8c: b'\x11\xe2t', + -0x1d8b: b'\x11\xe2u', + -0x1d8a: b'\x11\xe2v', + -0x1d89: b'\x11\xe2w', + -0x1d88: b'\x11\xe2x', + -0x1d87: b'\x11\xe2y', + -0x1d86: b'\x11\xe2z', + -0x1d85: b'\x11\xe2{', + -0x1d84: b'\x11\xe2|', + -0x1d83: b'\x11\xe2}', + -0x1d82: b'\x11\xe2~', + -0x1d81: b'\x11\xe2\x7f', + -0x1d80: b'\x11\xe2\x80', + -0x1d7f: b'\x11\xe2\x81', + -0x1d7e: b'\x11\xe2\x82', + -0x1d7d: b'\x11\xe2\x83', + -0x1d7c: b'\x11\xe2\x84', + -0x1d7b: b'\x11\xe2\x85', + -0x1d7a: b'\x11\xe2\x86', + -0x1d79: b'\x11\xe2\x87', + -0x1d78: b'\x11\xe2\x88', + -0x1d77: b'\x11\xe2\x89', + -0x1d76: b'\x11\xe2\x8a', + -0x1d75: b'\x11\xe2\x8b', + -0x1d74: b'\x11\xe2\x8c', + -0x1d73: b'\x11\xe2\x8d', + -0x1d72: b'\x11\xe2\x8e', + -0x1d71: b'\x11\xe2\x8f', + -0x1d70: b'\x11\xe2\x90', + -0x1d6f: b'\x11\xe2\x91', + -0x1d6e: b'\x11\xe2\x92', + -0x1d6d: b'\x11\xe2\x93', + -0x1d6c: b'\x11\xe2\x94', + -0x1d6b: b'\x11\xe2\x95', + -0x1d6a: b'\x11\xe2\x96', + -0x1d69: b'\x11\xe2\x97', + -0x1d68: b'\x11\xe2\x98', + -0x1d67: b'\x11\xe2\x99', + -0x1d66: b'\x11\xe2\x9a', + -0x1d65: b'\x11\xe2\x9b', + -0x1d64: b'\x11\xe2\x9c', + -0x1d63: b'\x11\xe2\x9d', + -0x1d62: b'\x11\xe2\x9e', + -0x1d61: b'\x11\xe2\x9f', + -0x1d60: b'\x11\xe2\xa0', + -0x1d5f: b'\x11\xe2\xa1', + -0x1d5e: b'\x11\xe2\xa2', + -0x1d5d: b'\x11\xe2\xa3', + -0x1d5c: b'\x11\xe2\xa4', + -0x1d5b: b'\x11\xe2\xa5', + -0x1d5a: b'\x11\xe2\xa6', + -0x1d59: b'\x11\xe2\xa7', + -0x1d58: b'\x11\xe2\xa8', + -0x1d57: b'\x11\xe2\xa9', + -0x1d56: b'\x11\xe2\xaa', + -0x1d55: b'\x11\xe2\xab', + -0x1d54: b'\x11\xe2\xac', + -0x1d53: b'\x11\xe2\xad', + -0x1d52: b'\x11\xe2\xae', + -0x1d51: b'\x11\xe2\xaf', + -0x1d50: b'\x11\xe2\xb0', + -0x1d4f: b'\x11\xe2\xb1', + -0x1d4e: b'\x11\xe2\xb2', + -0x1d4d: b'\x11\xe2\xb3', + -0x1d4c: b'\x11\xe2\xb4', + -0x1d4b: b'\x11\xe2\xb5', + -0x1d4a: b'\x11\xe2\xb6', + -0x1d49: b'\x11\xe2\xb7', + -0x1d48: b'\x11\xe2\xb8', + -0x1d47: b'\x11\xe2\xb9', + -0x1d46: b'\x11\xe2\xba', + -0x1d45: b'\x11\xe2\xbb', + -0x1d44: b'\x11\xe2\xbc', + -0x1d43: b'\x11\xe2\xbd', + -0x1d42: b'\x11\xe2\xbe', + -0x1d41: b'\x11\xe2\xbf', + -0x1d40: b'\x11\xe2\xc0', + -0x1d3f: b'\x11\xe2\xc1', + -0x1d3e: b'\x11\xe2\xc2', + -0x1d3d: b'\x11\xe2\xc3', + -0x1d3c: b'\x11\xe2\xc4', + -0x1d3b: b'\x11\xe2\xc5', + -0x1d3a: b'\x11\xe2\xc6', + -0x1d39: b'\x11\xe2\xc7', + -0x1d38: b'\x11\xe2\xc8', + -0x1d37: b'\x11\xe2\xc9', + -0x1d36: b'\x11\xe2\xca', + -0x1d35: b'\x11\xe2\xcb', + -0x1d34: b'\x11\xe2\xcc', + -0x1d33: b'\x11\xe2\xcd', + -0x1d32: b'\x11\xe2\xce', + -0x1d31: b'\x11\xe2\xcf', + -0x1d30: b'\x11\xe2\xd0', + -0x1d2f: b'\x11\xe2\xd1', + -0x1d2e: b'\x11\xe2\xd2', + -0x1d2d: b'\x11\xe2\xd3', + -0x1d2c: b'\x11\xe2\xd4', + -0x1d2b: b'\x11\xe2\xd5', + -0x1d2a: b'\x11\xe2\xd6', + -0x1d29: b'\x11\xe2\xd7', + -0x1d28: b'\x11\xe2\xd8', + -0x1d27: b'\x11\xe2\xd9', + -0x1d26: b'\x11\xe2\xda', + -0x1d25: b'\x11\xe2\xdb', + -0x1d24: b'\x11\xe2\xdc', + -0x1d23: b'\x11\xe2\xdd', + -0x1d22: b'\x11\xe2\xde', + -0x1d21: b'\x11\xe2\xdf', + -0x1d20: b'\x11\xe2\xe0', + -0x1d1f: b'\x11\xe2\xe1', + -0x1d1e: b'\x11\xe2\xe2', + -0x1d1d: b'\x11\xe2\xe3', + -0x1d1c: b'\x11\xe2\xe4', + -0x1d1b: b'\x11\xe2\xe5', + -0x1d1a: b'\x11\xe2\xe6', + -0x1d19: b'\x11\xe2\xe7', + -0x1d18: b'\x11\xe2\xe8', + -0x1d17: b'\x11\xe2\xe9', + -0x1d16: b'\x11\xe2\xea', + -0x1d15: b'\x11\xe2\xeb', + -0x1d14: b'\x11\xe2\xec', + -0x1d13: b'\x11\xe2\xed', + -0x1d12: b'\x11\xe2\xee', + -0x1d11: b'\x11\xe2\xef', + -0x1d10: b'\x11\xe2\xf0', + -0x1d0f: b'\x11\xe2\xf1', + -0x1d0e: b'\x11\xe2\xf2', + -0x1d0d: b'\x11\xe2\xf3', + -0x1d0c: b'\x11\xe2\xf4', + -0x1d0b: b'\x11\xe2\xf5', + -0x1d0a: b'\x11\xe2\xf6', + -0x1d09: b'\x11\xe2\xf7', + -0x1d08: b'\x11\xe2\xf8', + -0x1d07: b'\x11\xe2\xf9', + -0x1d06: b'\x11\xe2\xfa', + -0x1d05: b'\x11\xe2\xfb', + -0x1d04: b'\x11\xe2\xfc', + -0x1d03: b'\x11\xe2\xfd', + -0x1d02: b'\x11\xe2\xfe', + -0x1d01: b'\x11\xe2\xff', + -0x1d00: b'\x11\xe3\x00', + -0x1cff: b'\x11\xe3\x01', + -0x1cfe: b'\x11\xe3\x02', + -0x1cfd: b'\x11\xe3\x03', + -0x1cfc: b'\x11\xe3\x04', + -0x1cfb: b'\x11\xe3\x05', + -0x1cfa: b'\x11\xe3\x06', + -0x1cf9: b'\x11\xe3\x07', + -0x1cf8: b'\x11\xe3\x08', + -0x1cf7: b'\x11\xe3\t', + -0x1cf6: b'\x11\xe3\n', + -0x1cf5: b'\x11\xe3\x0b', + -0x1cf4: b'\x11\xe3\x0c', + -0x1cf3: b'\x11\xe3\r', + -0x1cf2: b'\x11\xe3\x0e', + -0x1cf1: b'\x11\xe3\x0f', + -0x1cf0: b'\x11\xe3\x10', + -0x1cef: b'\x11\xe3\x11', + -0x1cee: b'\x11\xe3\x12', + -0x1ced: b'\x11\xe3\x13', + -0x1cec: b'\x11\xe3\x14', + -0x1ceb: b'\x11\xe3\x15', + -0x1cea: b'\x11\xe3\x16', + -0x1ce9: b'\x11\xe3\x17', + -0x1ce8: b'\x11\xe3\x18', + -0x1ce7: b'\x11\xe3\x19', + -0x1ce6: b'\x11\xe3\x1a', + -0x1ce5: b'\x11\xe3\x1b', + -0x1ce4: b'\x11\xe3\x1c', + -0x1ce3: b'\x11\xe3\x1d', + -0x1ce2: b'\x11\xe3\x1e', + -0x1ce1: b'\x11\xe3\x1f', + -0x1ce0: b'\x11\xe3 ', + -0x1cdf: b'\x11\xe3!', + -0x1cde: b'\x11\xe3"', + -0x1cdd: b'\x11\xe3#', + -0x1cdc: b'\x11\xe3$', + -0x1cdb: b'\x11\xe3%', + -0x1cda: b'\x11\xe3&', + -0x1cd9: b"\x11\xe3'", + -0x1cd8: b'\x11\xe3(', + -0x1cd7: b'\x11\xe3)', + -0x1cd6: b'\x11\xe3*', + -0x1cd5: b'\x11\xe3+', + -0x1cd4: b'\x11\xe3,', + -0x1cd3: b'\x11\xe3-', + -0x1cd2: b'\x11\xe3.', + -0x1cd1: b'\x11\xe3/', + -0x1cd0: b'\x11\xe30', + -0x1ccf: b'\x11\xe31', + -0x1cce: b'\x11\xe32', + -0x1ccd: b'\x11\xe33', + -0x1ccc: b'\x11\xe34', + -0x1ccb: b'\x11\xe35', + -0x1cca: b'\x11\xe36', + -0x1cc9: b'\x11\xe37', + -0x1cc8: b'\x11\xe38', + -0x1cc7: b'\x11\xe39', + -0x1cc6: b'\x11\xe3:', + -0x1cc5: b'\x11\xe3;', + -0x1cc4: b'\x11\xe3<', + -0x1cc3: b'\x11\xe3=', + -0x1cc2: b'\x11\xe3>', + -0x1cc1: b'\x11\xe3?', + -0x1cc0: b'\x11\xe3@', + -0x1cbf: b'\x11\xe3A', + -0x1cbe: b'\x11\xe3B', + -0x1cbd: b'\x11\xe3C', + -0x1cbc: b'\x11\xe3D', + -0x1cbb: b'\x11\xe3E', + -0x1cba: b'\x11\xe3F', + -0x1cb9: b'\x11\xe3G', + -0x1cb8: b'\x11\xe3H', + -0x1cb7: b'\x11\xe3I', + -0x1cb6: b'\x11\xe3J', + -0x1cb5: b'\x11\xe3K', + -0x1cb4: b'\x11\xe3L', + -0x1cb3: b'\x11\xe3M', + -0x1cb2: b'\x11\xe3N', + -0x1cb1: b'\x11\xe3O', + -0x1cb0: b'\x11\xe3P', + -0x1caf: b'\x11\xe3Q', + -0x1cae: b'\x11\xe3R', + -0x1cad: b'\x11\xe3S', + -0x1cac: b'\x11\xe3T', + -0x1cab: b'\x11\xe3U', + -0x1caa: b'\x11\xe3V', + -0x1ca9: b'\x11\xe3W', + -0x1ca8: b'\x11\xe3X', + -0x1ca7: b'\x11\xe3Y', + -0x1ca6: b'\x11\xe3Z', + -0x1ca5: b'\x11\xe3[', + -0x1ca4: b'\x11\xe3\\', + -0x1ca3: b'\x11\xe3]', + -0x1ca2: b'\x11\xe3^', + -0x1ca1: b'\x11\xe3_', + -0x1ca0: b'\x11\xe3`', + -0x1c9f: b'\x11\xe3a', + -0x1c9e: b'\x11\xe3b', + -0x1c9d: b'\x11\xe3c', + -0x1c9c: b'\x11\xe3d', + -0x1c9b: b'\x11\xe3e', + -0x1c9a: b'\x11\xe3f', + -0x1c99: b'\x11\xe3g', + -0x1c98: b'\x11\xe3h', + -0x1c97: b'\x11\xe3i', + -0x1c96: b'\x11\xe3j', + -0x1c95: b'\x11\xe3k', + -0x1c94: b'\x11\xe3l', + -0x1c93: b'\x11\xe3m', + -0x1c92: b'\x11\xe3n', + -0x1c91: b'\x11\xe3o', + -0x1c90: b'\x11\xe3p', + -0x1c8f: b'\x11\xe3q', + -0x1c8e: b'\x11\xe3r', + -0x1c8d: b'\x11\xe3s', + -0x1c8c: b'\x11\xe3t', + -0x1c8b: b'\x11\xe3u', + -0x1c8a: b'\x11\xe3v', + -0x1c89: b'\x11\xe3w', + -0x1c88: b'\x11\xe3x', + -0x1c87: b'\x11\xe3y', + -0x1c86: b'\x11\xe3z', + -0x1c85: b'\x11\xe3{', + -0x1c84: b'\x11\xe3|', + -0x1c83: b'\x11\xe3}', + -0x1c82: b'\x11\xe3~', + -0x1c81: b'\x11\xe3\x7f', + -0x1c80: b'\x11\xe3\x80', + -0x1c7f: b'\x11\xe3\x81', + -0x1c7e: b'\x11\xe3\x82', + -0x1c7d: b'\x11\xe3\x83', + -0x1c7c: b'\x11\xe3\x84', + -0x1c7b: b'\x11\xe3\x85', + -0x1c7a: b'\x11\xe3\x86', + -0x1c79: b'\x11\xe3\x87', + -0x1c78: b'\x11\xe3\x88', + -0x1c77: b'\x11\xe3\x89', + -0x1c76: b'\x11\xe3\x8a', + -0x1c75: b'\x11\xe3\x8b', + -0x1c74: b'\x11\xe3\x8c', + -0x1c73: b'\x11\xe3\x8d', + -0x1c72: b'\x11\xe3\x8e', + -0x1c71: b'\x11\xe3\x8f', + -0x1c70: b'\x11\xe3\x90', + -0x1c6f: b'\x11\xe3\x91', + -0x1c6e: b'\x11\xe3\x92', + -0x1c6d: b'\x11\xe3\x93', + -0x1c6c: b'\x11\xe3\x94', + -0x1c6b: b'\x11\xe3\x95', + -0x1c6a: b'\x11\xe3\x96', + -0x1c69: b'\x11\xe3\x97', + -0x1c68: b'\x11\xe3\x98', + -0x1c67: b'\x11\xe3\x99', + -0x1c66: b'\x11\xe3\x9a', + -0x1c65: b'\x11\xe3\x9b', + -0x1c64: b'\x11\xe3\x9c', + -0x1c63: b'\x11\xe3\x9d', + -0x1c62: b'\x11\xe3\x9e', + -0x1c61: b'\x11\xe3\x9f', + -0x1c60: b'\x11\xe3\xa0', + -0x1c5f: b'\x11\xe3\xa1', + -0x1c5e: b'\x11\xe3\xa2', + -0x1c5d: b'\x11\xe3\xa3', + -0x1c5c: b'\x11\xe3\xa4', + -0x1c5b: b'\x11\xe3\xa5', + -0x1c5a: b'\x11\xe3\xa6', + -0x1c59: b'\x11\xe3\xa7', + -0x1c58: b'\x11\xe3\xa8', + -0x1c57: b'\x11\xe3\xa9', + -0x1c56: b'\x11\xe3\xaa', + -0x1c55: b'\x11\xe3\xab', + -0x1c54: b'\x11\xe3\xac', + -0x1c53: b'\x11\xe3\xad', + -0x1c52: b'\x11\xe3\xae', + -0x1c51: b'\x11\xe3\xaf', + -0x1c50: b'\x11\xe3\xb0', + -0x1c4f: b'\x11\xe3\xb1', + -0x1c4e: b'\x11\xe3\xb2', + -0x1c4d: b'\x11\xe3\xb3', + -0x1c4c: b'\x11\xe3\xb4', + -0x1c4b: b'\x11\xe3\xb5', + -0x1c4a: b'\x11\xe3\xb6', + -0x1c49: b'\x11\xe3\xb7', + -0x1c48: b'\x11\xe3\xb8', + -0x1c47: b'\x11\xe3\xb9', + -0x1c46: b'\x11\xe3\xba', + -0x1c45: b'\x11\xe3\xbb', + -0x1c44: b'\x11\xe3\xbc', + -0x1c43: b'\x11\xe3\xbd', + -0x1c42: b'\x11\xe3\xbe', + -0x1c41: b'\x11\xe3\xbf', + -0x1c40: b'\x11\xe3\xc0', + -0x1c3f: b'\x11\xe3\xc1', + -0x1c3e: b'\x11\xe3\xc2', + -0x1c3d: b'\x11\xe3\xc3', + -0x1c3c: b'\x11\xe3\xc4', + -0x1c3b: b'\x11\xe3\xc5', + -0x1c3a: b'\x11\xe3\xc6', + -0x1c39: b'\x11\xe3\xc7', + -0x1c38: b'\x11\xe3\xc8', + -0x1c37: b'\x11\xe3\xc9', + -0x1c36: b'\x11\xe3\xca', + -0x1c35: b'\x11\xe3\xcb', + -0x1c34: b'\x11\xe3\xcc', + -0x1c33: b'\x11\xe3\xcd', + -0x1c32: b'\x11\xe3\xce', + -0x1c31: b'\x11\xe3\xcf', + -0x1c30: b'\x11\xe3\xd0', + -0x1c2f: b'\x11\xe3\xd1', + -0x1c2e: b'\x11\xe3\xd2', + -0x1c2d: b'\x11\xe3\xd3', + -0x1c2c: b'\x11\xe3\xd4', + -0x1c2b: b'\x11\xe3\xd5', + -0x1c2a: b'\x11\xe3\xd6', + -0x1c29: b'\x11\xe3\xd7', + -0x1c28: b'\x11\xe3\xd8', + -0x1c27: b'\x11\xe3\xd9', + -0x1c26: b'\x11\xe3\xda', + -0x1c25: b'\x11\xe3\xdb', + -0x1c24: b'\x11\xe3\xdc', + -0x1c23: b'\x11\xe3\xdd', + -0x1c22: b'\x11\xe3\xde', + -0x1c21: b'\x11\xe3\xdf', + -0x1c20: b'\x11\xe3\xe0', + -0x1c1f: b'\x11\xe3\xe1', + -0x1c1e: b'\x11\xe3\xe2', + -0x1c1d: b'\x11\xe3\xe3', + -0x1c1c: b'\x11\xe3\xe4', + -0x1c1b: b'\x11\xe3\xe5', + -0x1c1a: b'\x11\xe3\xe6', + -0x1c19: b'\x11\xe3\xe7', + -0x1c18: b'\x11\xe3\xe8', + -0x1c17: b'\x11\xe3\xe9', + -0x1c16: b'\x11\xe3\xea', + -0x1c15: b'\x11\xe3\xeb', + -0x1c14: b'\x11\xe3\xec', + -0x1c13: b'\x11\xe3\xed', + -0x1c12: b'\x11\xe3\xee', + -0x1c11: b'\x11\xe3\xef', + -0x1c10: b'\x11\xe3\xf0', + -0x1c0f: b'\x11\xe3\xf1', + -0x1c0e: b'\x11\xe3\xf2', + -0x1c0d: b'\x11\xe3\xf3', + -0x1c0c: b'\x11\xe3\xf4', + -0x1c0b: b'\x11\xe3\xf5', + -0x1c0a: b'\x11\xe3\xf6', + -0x1c09: b'\x11\xe3\xf7', + -0x1c08: b'\x11\xe3\xf8', + -0x1c07: b'\x11\xe3\xf9', + -0x1c06: b'\x11\xe3\xfa', + -0x1c05: b'\x11\xe3\xfb', + -0x1c04: b'\x11\xe3\xfc', + -0x1c03: b'\x11\xe3\xfd', + -0x1c02: b'\x11\xe3\xfe', + -0x1c01: b'\x11\xe3\xff', + -0x1c00: b'\x11\xe4\x00', + -0x1bff: b'\x11\xe4\x01', + -0x1bfe: b'\x11\xe4\x02', + -0x1bfd: b'\x11\xe4\x03', + -0x1bfc: b'\x11\xe4\x04', + -0x1bfb: b'\x11\xe4\x05', + -0x1bfa: b'\x11\xe4\x06', + -0x1bf9: b'\x11\xe4\x07', + -0x1bf8: b'\x11\xe4\x08', + -0x1bf7: b'\x11\xe4\t', + -0x1bf6: b'\x11\xe4\n', + -0x1bf5: b'\x11\xe4\x0b', + -0x1bf4: b'\x11\xe4\x0c', + -0x1bf3: b'\x11\xe4\r', + -0x1bf2: b'\x11\xe4\x0e', + -0x1bf1: b'\x11\xe4\x0f', + -0x1bf0: b'\x11\xe4\x10', + -0x1bef: b'\x11\xe4\x11', + -0x1bee: b'\x11\xe4\x12', + -0x1bed: b'\x11\xe4\x13', + -0x1bec: b'\x11\xe4\x14', + -0x1beb: b'\x11\xe4\x15', + -0x1bea: b'\x11\xe4\x16', + -0x1be9: b'\x11\xe4\x17', + -0x1be8: b'\x11\xe4\x18', + -0x1be7: b'\x11\xe4\x19', + -0x1be6: b'\x11\xe4\x1a', + -0x1be5: b'\x11\xe4\x1b', + -0x1be4: b'\x11\xe4\x1c', + -0x1be3: b'\x11\xe4\x1d', + -0x1be2: b'\x11\xe4\x1e', + -0x1be1: b'\x11\xe4\x1f', + -0x1be0: b'\x11\xe4 ', + -0x1bdf: b'\x11\xe4!', + -0x1bde: b'\x11\xe4"', + -0x1bdd: b'\x11\xe4#', + -0x1bdc: b'\x11\xe4$', + -0x1bdb: b'\x11\xe4%', + -0x1bda: b'\x11\xe4&', + -0x1bd9: b"\x11\xe4'", + -0x1bd8: b'\x11\xe4(', + -0x1bd7: b'\x11\xe4)', + -0x1bd6: b'\x11\xe4*', + -0x1bd5: b'\x11\xe4+', + -0x1bd4: b'\x11\xe4,', + -0x1bd3: b'\x11\xe4-', + -0x1bd2: b'\x11\xe4.', + -0x1bd1: b'\x11\xe4/', + -0x1bd0: b'\x11\xe40', + -0x1bcf: b'\x11\xe41', + -0x1bce: b'\x11\xe42', + -0x1bcd: b'\x11\xe43', + -0x1bcc: b'\x11\xe44', + -0x1bcb: b'\x11\xe45', + -0x1bca: b'\x11\xe46', + -0x1bc9: b'\x11\xe47', + -0x1bc8: b'\x11\xe48', + -0x1bc7: b'\x11\xe49', + -0x1bc6: b'\x11\xe4:', + -0x1bc5: b'\x11\xe4;', + -0x1bc4: b'\x11\xe4<', + -0x1bc3: b'\x11\xe4=', + -0x1bc2: b'\x11\xe4>', + -0x1bc1: b'\x11\xe4?', + -0x1bc0: b'\x11\xe4@', + -0x1bbf: b'\x11\xe4A', + -0x1bbe: b'\x11\xe4B', + -0x1bbd: b'\x11\xe4C', + -0x1bbc: b'\x11\xe4D', + -0x1bbb: b'\x11\xe4E', + -0x1bba: b'\x11\xe4F', + -0x1bb9: b'\x11\xe4G', + -0x1bb8: b'\x11\xe4H', + -0x1bb7: b'\x11\xe4I', + -0x1bb6: b'\x11\xe4J', + -0x1bb5: b'\x11\xe4K', + -0x1bb4: b'\x11\xe4L', + -0x1bb3: b'\x11\xe4M', + -0x1bb2: b'\x11\xe4N', + -0x1bb1: b'\x11\xe4O', + -0x1bb0: b'\x11\xe4P', + -0x1baf: b'\x11\xe4Q', + -0x1bae: b'\x11\xe4R', + -0x1bad: b'\x11\xe4S', + -0x1bac: b'\x11\xe4T', + -0x1bab: b'\x11\xe4U', + -0x1baa: b'\x11\xe4V', + -0x1ba9: b'\x11\xe4W', + -0x1ba8: b'\x11\xe4X', + -0x1ba7: b'\x11\xe4Y', + -0x1ba6: b'\x11\xe4Z', + -0x1ba5: b'\x11\xe4[', + -0x1ba4: b'\x11\xe4\\', + -0x1ba3: b'\x11\xe4]', + -0x1ba2: b'\x11\xe4^', + -0x1ba1: b'\x11\xe4_', + -0x1ba0: b'\x11\xe4`', + -0x1b9f: b'\x11\xe4a', + -0x1b9e: b'\x11\xe4b', + -0x1b9d: b'\x11\xe4c', + -0x1b9c: b'\x11\xe4d', + -0x1b9b: b'\x11\xe4e', + -0x1b9a: b'\x11\xe4f', + -0x1b99: b'\x11\xe4g', + -0x1b98: b'\x11\xe4h', + -0x1b97: b'\x11\xe4i', + -0x1b96: b'\x11\xe4j', + -0x1b95: b'\x11\xe4k', + -0x1b94: b'\x11\xe4l', + -0x1b93: b'\x11\xe4m', + -0x1b92: b'\x11\xe4n', + -0x1b91: b'\x11\xe4o', + -0x1b90: b'\x11\xe4p', + -0x1b8f: b'\x11\xe4q', + -0x1b8e: b'\x11\xe4r', + -0x1b8d: b'\x11\xe4s', + -0x1b8c: b'\x11\xe4t', + -0x1b8b: b'\x11\xe4u', + -0x1b8a: b'\x11\xe4v', + -0x1b89: b'\x11\xe4w', + -0x1b88: b'\x11\xe4x', + -0x1b87: b'\x11\xe4y', + -0x1b86: b'\x11\xe4z', + -0x1b85: b'\x11\xe4{', + -0x1b84: b'\x11\xe4|', + -0x1b83: b'\x11\xe4}', + -0x1b82: b'\x11\xe4~', + -0x1b81: b'\x11\xe4\x7f', + -0x1b80: b'\x11\xe4\x80', + -0x1b7f: b'\x11\xe4\x81', + -0x1b7e: b'\x11\xe4\x82', + -0x1b7d: b'\x11\xe4\x83', + -0x1b7c: b'\x11\xe4\x84', + -0x1b7b: b'\x11\xe4\x85', + -0x1b7a: b'\x11\xe4\x86', + -0x1b79: b'\x11\xe4\x87', + -0x1b78: b'\x11\xe4\x88', + -0x1b77: b'\x11\xe4\x89', + -0x1b76: b'\x11\xe4\x8a', + -0x1b75: b'\x11\xe4\x8b', + -0x1b74: b'\x11\xe4\x8c', + -0x1b73: b'\x11\xe4\x8d', + -0x1b72: b'\x11\xe4\x8e', + -0x1b71: b'\x11\xe4\x8f', + -0x1b70: b'\x11\xe4\x90', + -0x1b6f: b'\x11\xe4\x91', + -0x1b6e: b'\x11\xe4\x92', + -0x1b6d: b'\x11\xe4\x93', + -0x1b6c: b'\x11\xe4\x94', + -0x1b6b: b'\x11\xe4\x95', + -0x1b6a: b'\x11\xe4\x96', + -0x1b69: b'\x11\xe4\x97', + -0x1b68: b'\x11\xe4\x98', + -0x1b67: b'\x11\xe4\x99', + -0x1b66: b'\x11\xe4\x9a', + -0x1b65: b'\x11\xe4\x9b', + -0x1b64: b'\x11\xe4\x9c', + -0x1b63: b'\x11\xe4\x9d', + -0x1b62: b'\x11\xe4\x9e', + -0x1b61: b'\x11\xe4\x9f', + -0x1b60: b'\x11\xe4\xa0', + -0x1b5f: b'\x11\xe4\xa1', + -0x1b5e: b'\x11\xe4\xa2', + -0x1b5d: b'\x11\xe4\xa3', + -0x1b5c: b'\x11\xe4\xa4', + -0x1b5b: b'\x11\xe4\xa5', + -0x1b5a: b'\x11\xe4\xa6', + -0x1b59: b'\x11\xe4\xa7', + -0x1b58: b'\x11\xe4\xa8', + -0x1b57: b'\x11\xe4\xa9', + -0x1b56: b'\x11\xe4\xaa', + -0x1b55: b'\x11\xe4\xab', + -0x1b54: b'\x11\xe4\xac', + -0x1b53: b'\x11\xe4\xad', + -0x1b52: b'\x11\xe4\xae', + -0x1b51: b'\x11\xe4\xaf', + -0x1b50: b'\x11\xe4\xb0', + -0x1b4f: b'\x11\xe4\xb1', + -0x1b4e: b'\x11\xe4\xb2', + -0x1b4d: b'\x11\xe4\xb3', + -0x1b4c: b'\x11\xe4\xb4', + -0x1b4b: b'\x11\xe4\xb5', + -0x1b4a: b'\x11\xe4\xb6', + -0x1b49: b'\x11\xe4\xb7', + -0x1b48: b'\x11\xe4\xb8', + -0x1b47: b'\x11\xe4\xb9', + -0x1b46: b'\x11\xe4\xba', + -0x1b45: b'\x11\xe4\xbb', + -0x1b44: b'\x11\xe4\xbc', + -0x1b43: b'\x11\xe4\xbd', + -0x1b42: b'\x11\xe4\xbe', + -0x1b41: b'\x11\xe4\xbf', + -0x1b40: b'\x11\xe4\xc0', + -0x1b3f: b'\x11\xe4\xc1', + -0x1b3e: b'\x11\xe4\xc2', + -0x1b3d: b'\x11\xe4\xc3', + -0x1b3c: b'\x11\xe4\xc4', + -0x1b3b: b'\x11\xe4\xc5', + -0x1b3a: b'\x11\xe4\xc6', + -0x1b39: b'\x11\xe4\xc7', + -0x1b38: b'\x11\xe4\xc8', + -0x1b37: b'\x11\xe4\xc9', + -0x1b36: b'\x11\xe4\xca', + -0x1b35: b'\x11\xe4\xcb', + -0x1b34: b'\x11\xe4\xcc', + -0x1b33: b'\x11\xe4\xcd', + -0x1b32: b'\x11\xe4\xce', + -0x1b31: b'\x11\xe4\xcf', + -0x1b30: b'\x11\xe4\xd0', + -0x1b2f: b'\x11\xe4\xd1', + -0x1b2e: b'\x11\xe4\xd2', + -0x1b2d: b'\x11\xe4\xd3', + -0x1b2c: b'\x11\xe4\xd4', + -0x1b2b: b'\x11\xe4\xd5', + -0x1b2a: b'\x11\xe4\xd6', + -0x1b29: b'\x11\xe4\xd7', + -0x1b28: b'\x11\xe4\xd8', + -0x1b27: b'\x11\xe4\xd9', + -0x1b26: b'\x11\xe4\xda', + -0x1b25: b'\x11\xe4\xdb', + -0x1b24: b'\x11\xe4\xdc', + -0x1b23: b'\x11\xe4\xdd', + -0x1b22: b'\x11\xe4\xde', + -0x1b21: b'\x11\xe4\xdf', + -0x1b20: b'\x11\xe4\xe0', + -0x1b1f: b'\x11\xe4\xe1', + -0x1b1e: b'\x11\xe4\xe2', + -0x1b1d: b'\x11\xe4\xe3', + -0x1b1c: b'\x11\xe4\xe4', + -0x1b1b: b'\x11\xe4\xe5', + -0x1b1a: b'\x11\xe4\xe6', + -0x1b19: b'\x11\xe4\xe7', + -0x1b18: b'\x11\xe4\xe8', + -0x1b17: b'\x11\xe4\xe9', + -0x1b16: b'\x11\xe4\xea', + -0x1b15: b'\x11\xe4\xeb', + -0x1b14: b'\x11\xe4\xec', + -0x1b13: b'\x11\xe4\xed', + -0x1b12: b'\x11\xe4\xee', + -0x1b11: b'\x11\xe4\xef', + -0x1b10: b'\x11\xe4\xf0', + -0x1b0f: b'\x11\xe4\xf1', + -0x1b0e: b'\x11\xe4\xf2', + -0x1b0d: b'\x11\xe4\xf3', + -0x1b0c: b'\x11\xe4\xf4', + -0x1b0b: b'\x11\xe4\xf5', + -0x1b0a: b'\x11\xe4\xf6', + -0x1b09: b'\x11\xe4\xf7', + -0x1b08: b'\x11\xe4\xf8', + -0x1b07: b'\x11\xe4\xf9', + -0x1b06: b'\x11\xe4\xfa', + -0x1b05: b'\x11\xe4\xfb', + -0x1b04: b'\x11\xe4\xfc', + -0x1b03: b'\x11\xe4\xfd', + -0x1b02: b'\x11\xe4\xfe', + -0x1b01: b'\x11\xe4\xff', + -0x1b00: b'\x11\xe5\x00', + -0x1aff: b'\x11\xe5\x01', + -0x1afe: b'\x11\xe5\x02', + -0x1afd: b'\x11\xe5\x03', + -0x1afc: b'\x11\xe5\x04', + -0x1afb: b'\x11\xe5\x05', + -0x1afa: b'\x11\xe5\x06', + -0x1af9: b'\x11\xe5\x07', + -0x1af8: b'\x11\xe5\x08', + -0x1af7: b'\x11\xe5\t', + -0x1af6: b'\x11\xe5\n', + -0x1af5: b'\x11\xe5\x0b', + -0x1af4: b'\x11\xe5\x0c', + -0x1af3: b'\x11\xe5\r', + -0x1af2: b'\x11\xe5\x0e', + -0x1af1: b'\x11\xe5\x0f', + -0x1af0: b'\x11\xe5\x10', + -0x1aef: b'\x11\xe5\x11', + -0x1aee: b'\x11\xe5\x12', + -0x1aed: b'\x11\xe5\x13', + -0x1aec: b'\x11\xe5\x14', + -0x1aeb: b'\x11\xe5\x15', + -0x1aea: b'\x11\xe5\x16', + -0x1ae9: b'\x11\xe5\x17', + -0x1ae8: b'\x11\xe5\x18', + -0x1ae7: b'\x11\xe5\x19', + -0x1ae6: b'\x11\xe5\x1a', + -0x1ae5: b'\x11\xe5\x1b', + -0x1ae4: b'\x11\xe5\x1c', + -0x1ae3: b'\x11\xe5\x1d', + -0x1ae2: b'\x11\xe5\x1e', + -0x1ae1: b'\x11\xe5\x1f', + -0x1ae0: b'\x11\xe5 ', + -0x1adf: b'\x11\xe5!', + -0x1ade: b'\x11\xe5"', + -0x1add: b'\x11\xe5#', + -0x1adc: b'\x11\xe5$', + -0x1adb: b'\x11\xe5%', + -0x1ada: b'\x11\xe5&', + -0x1ad9: b"\x11\xe5'", + -0x1ad8: b'\x11\xe5(', + -0x1ad7: b'\x11\xe5)', + -0x1ad6: b'\x11\xe5*', + -0x1ad5: b'\x11\xe5+', + -0x1ad4: b'\x11\xe5,', + -0x1ad3: b'\x11\xe5-', + -0x1ad2: b'\x11\xe5.', + -0x1ad1: b'\x11\xe5/', + -0x1ad0: b'\x11\xe50', + -0x1acf: b'\x11\xe51', + -0x1ace: b'\x11\xe52', + -0x1acd: b'\x11\xe53', + -0x1acc: b'\x11\xe54', + -0x1acb: b'\x11\xe55', + -0x1aca: b'\x11\xe56', + -0x1ac9: b'\x11\xe57', + -0x1ac8: b'\x11\xe58', + -0x1ac7: b'\x11\xe59', + -0x1ac6: b'\x11\xe5:', + -0x1ac5: b'\x11\xe5;', + -0x1ac4: b'\x11\xe5<', + -0x1ac3: b'\x11\xe5=', + -0x1ac2: b'\x11\xe5>', + -0x1ac1: b'\x11\xe5?', + -0x1ac0: b'\x11\xe5@', + -0x1abf: b'\x11\xe5A', + -0x1abe: b'\x11\xe5B', + -0x1abd: b'\x11\xe5C', + -0x1abc: b'\x11\xe5D', + -0x1abb: b'\x11\xe5E', + -0x1aba: b'\x11\xe5F', + -0x1ab9: b'\x11\xe5G', + -0x1ab8: b'\x11\xe5H', + -0x1ab7: b'\x11\xe5I', + -0x1ab6: b'\x11\xe5J', + -0x1ab5: b'\x11\xe5K', + -0x1ab4: b'\x11\xe5L', + -0x1ab3: b'\x11\xe5M', + -0x1ab2: b'\x11\xe5N', + -0x1ab1: b'\x11\xe5O', + -0x1ab0: b'\x11\xe5P', + -0x1aaf: b'\x11\xe5Q', + -0x1aae: b'\x11\xe5R', + -0x1aad: b'\x11\xe5S', + -0x1aac: b'\x11\xe5T', + -0x1aab: b'\x11\xe5U', + -0x1aaa: b'\x11\xe5V', + -0x1aa9: b'\x11\xe5W', + -0x1aa8: b'\x11\xe5X', + -0x1aa7: b'\x11\xe5Y', + -0x1aa6: b'\x11\xe5Z', + -0x1aa5: b'\x11\xe5[', + -0x1aa4: b'\x11\xe5\\', + -0x1aa3: b'\x11\xe5]', + -0x1aa2: b'\x11\xe5^', + -0x1aa1: b'\x11\xe5_', + -0x1aa0: b'\x11\xe5`', + -0x1a9f: b'\x11\xe5a', + -0x1a9e: b'\x11\xe5b', + -0x1a9d: b'\x11\xe5c', + -0x1a9c: b'\x11\xe5d', + -0x1a9b: b'\x11\xe5e', + -0x1a9a: b'\x11\xe5f', + -0x1a99: b'\x11\xe5g', + -0x1a98: b'\x11\xe5h', + -0x1a97: b'\x11\xe5i', + -0x1a96: b'\x11\xe5j', + -0x1a95: b'\x11\xe5k', + -0x1a94: b'\x11\xe5l', + -0x1a93: b'\x11\xe5m', + -0x1a92: b'\x11\xe5n', + -0x1a91: b'\x11\xe5o', + -0x1a90: b'\x11\xe5p', + -0x1a8f: b'\x11\xe5q', + -0x1a8e: b'\x11\xe5r', + -0x1a8d: b'\x11\xe5s', + -0x1a8c: b'\x11\xe5t', + -0x1a8b: b'\x11\xe5u', + -0x1a8a: b'\x11\xe5v', + -0x1a89: b'\x11\xe5w', + -0x1a88: b'\x11\xe5x', + -0x1a87: b'\x11\xe5y', + -0x1a86: b'\x11\xe5z', + -0x1a85: b'\x11\xe5{', + -0x1a84: b'\x11\xe5|', + -0x1a83: b'\x11\xe5}', + -0x1a82: b'\x11\xe5~', + -0x1a81: b'\x11\xe5\x7f', + -0x1a80: b'\x11\xe5\x80', + -0x1a7f: b'\x11\xe5\x81', + -0x1a7e: b'\x11\xe5\x82', + -0x1a7d: b'\x11\xe5\x83', + -0x1a7c: b'\x11\xe5\x84', + -0x1a7b: b'\x11\xe5\x85', + -0x1a7a: b'\x11\xe5\x86', + -0x1a79: b'\x11\xe5\x87', + -0x1a78: b'\x11\xe5\x88', + -0x1a77: b'\x11\xe5\x89', + -0x1a76: b'\x11\xe5\x8a', + -0x1a75: b'\x11\xe5\x8b', + -0x1a74: b'\x11\xe5\x8c', + -0x1a73: b'\x11\xe5\x8d', + -0x1a72: b'\x11\xe5\x8e', + -0x1a71: b'\x11\xe5\x8f', + -0x1a70: b'\x11\xe5\x90', + -0x1a6f: b'\x11\xe5\x91', + -0x1a6e: b'\x11\xe5\x92', + -0x1a6d: b'\x11\xe5\x93', + -0x1a6c: b'\x11\xe5\x94', + -0x1a6b: b'\x11\xe5\x95', + -0x1a6a: b'\x11\xe5\x96', + -0x1a69: b'\x11\xe5\x97', + -0x1a68: b'\x11\xe5\x98', + -0x1a67: b'\x11\xe5\x99', + -0x1a66: b'\x11\xe5\x9a', + -0x1a65: b'\x11\xe5\x9b', + -0x1a64: b'\x11\xe5\x9c', + -0x1a63: b'\x11\xe5\x9d', + -0x1a62: b'\x11\xe5\x9e', + -0x1a61: b'\x11\xe5\x9f', + -0x1a60: b'\x11\xe5\xa0', + -0x1a5f: b'\x11\xe5\xa1', + -0x1a5e: b'\x11\xe5\xa2', + -0x1a5d: b'\x11\xe5\xa3', + -0x1a5c: b'\x11\xe5\xa4', + -0x1a5b: b'\x11\xe5\xa5', + -0x1a5a: b'\x11\xe5\xa6', + -0x1a59: b'\x11\xe5\xa7', + -0x1a58: b'\x11\xe5\xa8', + -0x1a57: b'\x11\xe5\xa9', + -0x1a56: b'\x11\xe5\xaa', + -0x1a55: b'\x11\xe5\xab', + -0x1a54: b'\x11\xe5\xac', + -0x1a53: b'\x11\xe5\xad', + -0x1a52: b'\x11\xe5\xae', + -0x1a51: b'\x11\xe5\xaf', + -0x1a50: b'\x11\xe5\xb0', + -0x1a4f: b'\x11\xe5\xb1', + -0x1a4e: b'\x11\xe5\xb2', + -0x1a4d: b'\x11\xe5\xb3', + -0x1a4c: b'\x11\xe5\xb4', + -0x1a4b: b'\x11\xe5\xb5', + -0x1a4a: b'\x11\xe5\xb6', + -0x1a49: b'\x11\xe5\xb7', + -0x1a48: b'\x11\xe5\xb8', + -0x1a47: b'\x11\xe5\xb9', + -0x1a46: b'\x11\xe5\xba', + -0x1a45: b'\x11\xe5\xbb', + -0x1a44: b'\x11\xe5\xbc', + -0x1a43: b'\x11\xe5\xbd', + -0x1a42: b'\x11\xe5\xbe', + -0x1a41: b'\x11\xe5\xbf', + -0x1a40: b'\x11\xe5\xc0', + -0x1a3f: b'\x11\xe5\xc1', + -0x1a3e: b'\x11\xe5\xc2', + -0x1a3d: b'\x11\xe5\xc3', + -0x1a3c: b'\x11\xe5\xc4', + -0x1a3b: b'\x11\xe5\xc5', + -0x1a3a: b'\x11\xe5\xc6', + -0x1a39: b'\x11\xe5\xc7', + -0x1a38: b'\x11\xe5\xc8', + -0x1a37: b'\x11\xe5\xc9', + -0x1a36: b'\x11\xe5\xca', + -0x1a35: b'\x11\xe5\xcb', + -0x1a34: b'\x11\xe5\xcc', + -0x1a33: b'\x11\xe5\xcd', + -0x1a32: b'\x11\xe5\xce', + -0x1a31: b'\x11\xe5\xcf', + -0x1a30: b'\x11\xe5\xd0', + -0x1a2f: b'\x11\xe5\xd1', + -0x1a2e: b'\x11\xe5\xd2', + -0x1a2d: b'\x11\xe5\xd3', + -0x1a2c: b'\x11\xe5\xd4', + -0x1a2b: b'\x11\xe5\xd5', + -0x1a2a: b'\x11\xe5\xd6', + -0x1a29: b'\x11\xe5\xd7', + -0x1a28: b'\x11\xe5\xd8', + -0x1a27: b'\x11\xe5\xd9', + -0x1a26: b'\x11\xe5\xda', + -0x1a25: b'\x11\xe5\xdb', + -0x1a24: b'\x11\xe5\xdc', + -0x1a23: b'\x11\xe5\xdd', + -0x1a22: b'\x11\xe5\xde', + -0x1a21: b'\x11\xe5\xdf', + -0x1a20: b'\x11\xe5\xe0', + -0x1a1f: b'\x11\xe5\xe1', + -0x1a1e: b'\x11\xe5\xe2', + -0x1a1d: b'\x11\xe5\xe3', + -0x1a1c: b'\x11\xe5\xe4', + -0x1a1b: b'\x11\xe5\xe5', + -0x1a1a: b'\x11\xe5\xe6', + -0x1a19: b'\x11\xe5\xe7', + -0x1a18: b'\x11\xe5\xe8', + -0x1a17: b'\x11\xe5\xe9', + -0x1a16: b'\x11\xe5\xea', + -0x1a15: b'\x11\xe5\xeb', + -0x1a14: b'\x11\xe5\xec', + -0x1a13: b'\x11\xe5\xed', + -0x1a12: b'\x11\xe5\xee', + -0x1a11: b'\x11\xe5\xef', + -0x1a10: b'\x11\xe5\xf0', + -0x1a0f: b'\x11\xe5\xf1', + -0x1a0e: b'\x11\xe5\xf2', + -0x1a0d: b'\x11\xe5\xf3', + -0x1a0c: b'\x11\xe5\xf4', + -0x1a0b: b'\x11\xe5\xf5', + -0x1a0a: b'\x11\xe5\xf6', + -0x1a09: b'\x11\xe5\xf7', + -0x1a08: b'\x11\xe5\xf8', + -0x1a07: b'\x11\xe5\xf9', + -0x1a06: b'\x11\xe5\xfa', + -0x1a05: b'\x11\xe5\xfb', + -0x1a04: b'\x11\xe5\xfc', + -0x1a03: b'\x11\xe5\xfd', + -0x1a02: b'\x11\xe5\xfe', + -0x1a01: b'\x11\xe5\xff', + -0x1a00: b'\x11\xe6\x00', + -0x19ff: b'\x11\xe6\x01', + -0x19fe: b'\x11\xe6\x02', + -0x19fd: b'\x11\xe6\x03', + -0x19fc: b'\x11\xe6\x04', + -0x19fb: b'\x11\xe6\x05', + -0x19fa: b'\x11\xe6\x06', + -0x19f9: b'\x11\xe6\x07', + -0x19f8: b'\x11\xe6\x08', + -0x19f7: b'\x11\xe6\t', + -0x19f6: b'\x11\xe6\n', + -0x19f5: b'\x11\xe6\x0b', + -0x19f4: b'\x11\xe6\x0c', + -0x19f3: b'\x11\xe6\r', + -0x19f2: b'\x11\xe6\x0e', + -0x19f1: b'\x11\xe6\x0f', + -0x19f0: b'\x11\xe6\x10', + -0x19ef: b'\x11\xe6\x11', + -0x19ee: b'\x11\xe6\x12', + -0x19ed: b'\x11\xe6\x13', + -0x19ec: b'\x11\xe6\x14', + -0x19eb: b'\x11\xe6\x15', + -0x19ea: b'\x11\xe6\x16', + -0x19e9: b'\x11\xe6\x17', + -0x19e8: b'\x11\xe6\x18', + -0x19e7: b'\x11\xe6\x19', + -0x19e6: b'\x11\xe6\x1a', + -0x19e5: b'\x11\xe6\x1b', + -0x19e4: b'\x11\xe6\x1c', + -0x19e3: b'\x11\xe6\x1d', + -0x19e2: b'\x11\xe6\x1e', + -0x19e1: b'\x11\xe6\x1f', + -0x19e0: b'\x11\xe6 ', + -0x19df: b'\x11\xe6!', + -0x19de: b'\x11\xe6"', + -0x19dd: b'\x11\xe6#', + -0x19dc: b'\x11\xe6$', + -0x19db: b'\x11\xe6%', + -0x19da: b'\x11\xe6&', + -0x19d9: b"\x11\xe6'", + -0x19d8: b'\x11\xe6(', + -0x19d7: b'\x11\xe6)', + -0x19d6: b'\x11\xe6*', + -0x19d5: b'\x11\xe6+', + -0x19d4: b'\x11\xe6,', + -0x19d3: b'\x11\xe6-', + -0x19d2: b'\x11\xe6.', + -0x19d1: b'\x11\xe6/', + -0x19d0: b'\x11\xe60', + -0x19cf: b'\x11\xe61', + -0x19ce: b'\x11\xe62', + -0x19cd: b'\x11\xe63', + -0x19cc: b'\x11\xe64', + -0x19cb: b'\x11\xe65', + -0x19ca: b'\x11\xe66', + -0x19c9: b'\x11\xe67', + -0x19c8: b'\x11\xe68', + -0x19c7: b'\x11\xe69', + -0x19c6: b'\x11\xe6:', + -0x19c5: b'\x11\xe6;', + -0x19c4: b'\x11\xe6<', + -0x19c3: b'\x11\xe6=', + -0x19c2: b'\x11\xe6>', + -0x19c1: b'\x11\xe6?', + -0x19c0: b'\x11\xe6@', + -0x19bf: b'\x11\xe6A', + -0x19be: b'\x11\xe6B', + -0x19bd: b'\x11\xe6C', + -0x19bc: b'\x11\xe6D', + -0x19bb: b'\x11\xe6E', + -0x19ba: b'\x11\xe6F', + -0x19b9: b'\x11\xe6G', + -0x19b8: b'\x11\xe6H', + -0x19b7: b'\x11\xe6I', + -0x19b6: b'\x11\xe6J', + -0x19b5: b'\x11\xe6K', + -0x19b4: b'\x11\xe6L', + -0x19b3: b'\x11\xe6M', + -0x19b2: b'\x11\xe6N', + -0x19b1: b'\x11\xe6O', + -0x19b0: b'\x11\xe6P', + -0x19af: b'\x11\xe6Q', + -0x19ae: b'\x11\xe6R', + -0x19ad: b'\x11\xe6S', + -0x19ac: b'\x11\xe6T', + -0x19ab: b'\x11\xe6U', + -0x19aa: b'\x11\xe6V', + -0x19a9: b'\x11\xe6W', + -0x19a8: b'\x11\xe6X', + -0x19a7: b'\x11\xe6Y', + -0x19a6: b'\x11\xe6Z', + -0x19a5: b'\x11\xe6[', + -0x19a4: b'\x11\xe6\\', + -0x19a3: b'\x11\xe6]', + -0x19a2: b'\x11\xe6^', + -0x19a1: b'\x11\xe6_', + -0x19a0: b'\x11\xe6`', + -0x199f: b'\x11\xe6a', + -0x199e: b'\x11\xe6b', + -0x199d: b'\x11\xe6c', + -0x199c: b'\x11\xe6d', + -0x199b: b'\x11\xe6e', + -0x199a: b'\x11\xe6f', + -0x1999: b'\x11\xe6g', + -0x1998: b'\x11\xe6h', + -0x1997: b'\x11\xe6i', + -0x1996: b'\x11\xe6j', + -0x1995: b'\x11\xe6k', + -0x1994: b'\x11\xe6l', + -0x1993: b'\x11\xe6m', + -0x1992: b'\x11\xe6n', + -0x1991: b'\x11\xe6o', + -0x1990: b'\x11\xe6p', + -0x198f: b'\x11\xe6q', + -0x198e: b'\x11\xe6r', + -0x198d: b'\x11\xe6s', + -0x198c: b'\x11\xe6t', + -0x198b: b'\x11\xe6u', + -0x198a: b'\x11\xe6v', + -0x1989: b'\x11\xe6w', + -0x1988: b'\x11\xe6x', + -0x1987: b'\x11\xe6y', + -0x1986: b'\x11\xe6z', + -0x1985: b'\x11\xe6{', + -0x1984: b'\x11\xe6|', + -0x1983: b'\x11\xe6}', + -0x1982: b'\x11\xe6~', + -0x1981: b'\x11\xe6\x7f', + -0x1980: b'\x11\xe6\x80', + -0x197f: b'\x11\xe6\x81', + -0x197e: b'\x11\xe6\x82', + -0x197d: b'\x11\xe6\x83', + -0x197c: b'\x11\xe6\x84', + -0x197b: b'\x11\xe6\x85', + -0x197a: b'\x11\xe6\x86', + -0x1979: b'\x11\xe6\x87', + -0x1978: b'\x11\xe6\x88', + -0x1977: b'\x11\xe6\x89', + -0x1976: b'\x11\xe6\x8a', + -0x1975: b'\x11\xe6\x8b', + -0x1974: b'\x11\xe6\x8c', + -0x1973: b'\x11\xe6\x8d', + -0x1972: b'\x11\xe6\x8e', + -0x1971: b'\x11\xe6\x8f', + -0x1970: b'\x11\xe6\x90', + -0x196f: b'\x11\xe6\x91', + -0x196e: b'\x11\xe6\x92', + -0x196d: b'\x11\xe6\x93', + -0x196c: b'\x11\xe6\x94', + -0x196b: b'\x11\xe6\x95', + -0x196a: b'\x11\xe6\x96', + -0x1969: b'\x11\xe6\x97', + -0x1968: b'\x11\xe6\x98', + -0x1967: b'\x11\xe6\x99', + -0x1966: b'\x11\xe6\x9a', + -0x1965: b'\x11\xe6\x9b', + -0x1964: b'\x11\xe6\x9c', + -0x1963: b'\x11\xe6\x9d', + -0x1962: b'\x11\xe6\x9e', + -0x1961: b'\x11\xe6\x9f', + -0x1960: b'\x11\xe6\xa0', + -0x195f: b'\x11\xe6\xa1', + -0x195e: b'\x11\xe6\xa2', + -0x195d: b'\x11\xe6\xa3', + -0x195c: b'\x11\xe6\xa4', + -0x195b: b'\x11\xe6\xa5', + -0x195a: b'\x11\xe6\xa6', + -0x1959: b'\x11\xe6\xa7', + -0x1958: b'\x11\xe6\xa8', + -0x1957: b'\x11\xe6\xa9', + -0x1956: b'\x11\xe6\xaa', + -0x1955: b'\x11\xe6\xab', + -0x1954: b'\x11\xe6\xac', + -0x1953: b'\x11\xe6\xad', + -0x1952: b'\x11\xe6\xae', + -0x1951: b'\x11\xe6\xaf', + -0x1950: b'\x11\xe6\xb0', + -0x194f: b'\x11\xe6\xb1', + -0x194e: b'\x11\xe6\xb2', + -0x194d: b'\x11\xe6\xb3', + -0x194c: b'\x11\xe6\xb4', + -0x194b: b'\x11\xe6\xb5', + -0x194a: b'\x11\xe6\xb6', + -0x1949: b'\x11\xe6\xb7', + -0x1948: b'\x11\xe6\xb8', + -0x1947: b'\x11\xe6\xb9', + -0x1946: b'\x11\xe6\xba', + -0x1945: b'\x11\xe6\xbb', + -0x1944: b'\x11\xe6\xbc', + -0x1943: b'\x11\xe6\xbd', + -0x1942: b'\x11\xe6\xbe', + -0x1941: b'\x11\xe6\xbf', + -0x1940: b'\x11\xe6\xc0', + -0x193f: b'\x11\xe6\xc1', + -0x193e: b'\x11\xe6\xc2', + -0x193d: b'\x11\xe6\xc3', + -0x193c: b'\x11\xe6\xc4', + -0x193b: b'\x11\xe6\xc5', + -0x193a: b'\x11\xe6\xc6', + -0x1939: b'\x11\xe6\xc7', + -0x1938: b'\x11\xe6\xc8', + -0x1937: b'\x11\xe6\xc9', + -0x1936: b'\x11\xe6\xca', + -0x1935: b'\x11\xe6\xcb', + -0x1934: b'\x11\xe6\xcc', + -0x1933: b'\x11\xe6\xcd', + -0x1932: b'\x11\xe6\xce', + -0x1931: b'\x11\xe6\xcf', + -0x1930: b'\x11\xe6\xd0', + -0x192f: b'\x11\xe6\xd1', + -0x192e: b'\x11\xe6\xd2', + -0x192d: b'\x11\xe6\xd3', + -0x192c: b'\x11\xe6\xd4', + -0x192b: b'\x11\xe6\xd5', + -0x192a: b'\x11\xe6\xd6', + -0x1929: b'\x11\xe6\xd7', + -0x1928: b'\x11\xe6\xd8', + -0x1927: b'\x11\xe6\xd9', + -0x1926: b'\x11\xe6\xda', + -0x1925: b'\x11\xe6\xdb', + -0x1924: b'\x11\xe6\xdc', + -0x1923: b'\x11\xe6\xdd', + -0x1922: b'\x11\xe6\xde', + -0x1921: b'\x11\xe6\xdf', + -0x1920: b'\x11\xe6\xe0', + -0x191f: b'\x11\xe6\xe1', + -0x191e: b'\x11\xe6\xe2', + -0x191d: b'\x11\xe6\xe3', + -0x191c: b'\x11\xe6\xe4', + -0x191b: b'\x11\xe6\xe5', + -0x191a: b'\x11\xe6\xe6', + -0x1919: b'\x11\xe6\xe7', + -0x1918: b'\x11\xe6\xe8', + -0x1917: b'\x11\xe6\xe9', + -0x1916: b'\x11\xe6\xea', + -0x1915: b'\x11\xe6\xeb', + -0x1914: b'\x11\xe6\xec', + -0x1913: b'\x11\xe6\xed', + -0x1912: b'\x11\xe6\xee', + -0x1911: b'\x11\xe6\xef', + -0x1910: b'\x11\xe6\xf0', + -0x190f: b'\x11\xe6\xf1', + -0x190e: b'\x11\xe6\xf2', + -0x190d: b'\x11\xe6\xf3', + -0x190c: b'\x11\xe6\xf4', + -0x190b: b'\x11\xe6\xf5', + -0x190a: b'\x11\xe6\xf6', + -0x1909: b'\x11\xe6\xf7', + -0x1908: b'\x11\xe6\xf8', + -0x1907: b'\x11\xe6\xf9', + -0x1906: b'\x11\xe6\xfa', + -0x1905: b'\x11\xe6\xfb', + -0x1904: b'\x11\xe6\xfc', + -0x1903: b'\x11\xe6\xfd', + -0x1902: b'\x11\xe6\xfe', + -0x1901: b'\x11\xe6\xff', + -0x1900: b'\x11\xe7\x00', + -0x18ff: b'\x11\xe7\x01', + -0x18fe: b'\x11\xe7\x02', + -0x18fd: b'\x11\xe7\x03', + -0x18fc: b'\x11\xe7\x04', + -0x18fb: b'\x11\xe7\x05', + -0x18fa: b'\x11\xe7\x06', + -0x18f9: b'\x11\xe7\x07', + -0x18f8: b'\x11\xe7\x08', + -0x18f7: b'\x11\xe7\t', + -0x18f6: b'\x11\xe7\n', + -0x18f5: b'\x11\xe7\x0b', + -0x18f4: b'\x11\xe7\x0c', + -0x18f3: b'\x11\xe7\r', + -0x18f2: b'\x11\xe7\x0e', + -0x18f1: b'\x11\xe7\x0f', + -0x18f0: b'\x11\xe7\x10', + -0x18ef: b'\x11\xe7\x11', + -0x18ee: b'\x11\xe7\x12', + -0x18ed: b'\x11\xe7\x13', + -0x18ec: b'\x11\xe7\x14', + -0x18eb: b'\x11\xe7\x15', + -0x18ea: b'\x11\xe7\x16', + -0x18e9: b'\x11\xe7\x17', + -0x18e8: b'\x11\xe7\x18', + -0x18e7: b'\x11\xe7\x19', + -0x18e6: b'\x11\xe7\x1a', + -0x18e5: b'\x11\xe7\x1b', + -0x18e4: b'\x11\xe7\x1c', + -0x18e3: b'\x11\xe7\x1d', + -0x18e2: b'\x11\xe7\x1e', + -0x18e1: b'\x11\xe7\x1f', + -0x18e0: b'\x11\xe7 ', + -0x18df: b'\x11\xe7!', + -0x18de: b'\x11\xe7"', + -0x18dd: b'\x11\xe7#', + -0x18dc: b'\x11\xe7$', + -0x18db: b'\x11\xe7%', + -0x18da: b'\x11\xe7&', + -0x18d9: b"\x11\xe7'", + -0x18d8: b'\x11\xe7(', + -0x18d7: b'\x11\xe7)', + -0x18d6: b'\x11\xe7*', + -0x18d5: b'\x11\xe7+', + -0x18d4: b'\x11\xe7,', + -0x18d3: b'\x11\xe7-', + -0x18d2: b'\x11\xe7.', + -0x18d1: b'\x11\xe7/', + -0x18d0: b'\x11\xe70', + -0x18cf: b'\x11\xe71', + -0x18ce: b'\x11\xe72', + -0x18cd: b'\x11\xe73', + -0x18cc: b'\x11\xe74', + -0x18cb: b'\x11\xe75', + -0x18ca: b'\x11\xe76', + -0x18c9: b'\x11\xe77', + -0x18c8: b'\x11\xe78', + -0x18c7: b'\x11\xe79', + -0x18c6: b'\x11\xe7:', + -0x18c5: b'\x11\xe7;', + -0x18c4: b'\x11\xe7<', + -0x18c3: b'\x11\xe7=', + -0x18c2: b'\x11\xe7>', + -0x18c1: b'\x11\xe7?', + -0x18c0: b'\x11\xe7@', + -0x18bf: b'\x11\xe7A', + -0x18be: b'\x11\xe7B', + -0x18bd: b'\x11\xe7C', + -0x18bc: b'\x11\xe7D', + -0x18bb: b'\x11\xe7E', + -0x18ba: b'\x11\xe7F', + -0x18b9: b'\x11\xe7G', + -0x18b8: b'\x11\xe7H', + -0x18b7: b'\x11\xe7I', + -0x18b6: b'\x11\xe7J', + -0x18b5: b'\x11\xe7K', + -0x18b4: b'\x11\xe7L', + -0x18b3: b'\x11\xe7M', + -0x18b2: b'\x11\xe7N', + -0x18b1: b'\x11\xe7O', + -0x18b0: b'\x11\xe7P', + -0x18af: b'\x11\xe7Q', + -0x18ae: b'\x11\xe7R', + -0x18ad: b'\x11\xe7S', + -0x18ac: b'\x11\xe7T', + -0x18ab: b'\x11\xe7U', + -0x18aa: b'\x11\xe7V', + -0x18a9: b'\x11\xe7W', + -0x18a8: b'\x11\xe7X', + -0x18a7: b'\x11\xe7Y', + -0x18a6: b'\x11\xe7Z', + -0x18a5: b'\x11\xe7[', + -0x18a4: b'\x11\xe7\\', + -0x18a3: b'\x11\xe7]', + -0x18a2: b'\x11\xe7^', + -0x18a1: b'\x11\xe7_', + -0x18a0: b'\x11\xe7`', + -0x189f: b'\x11\xe7a', + -0x189e: b'\x11\xe7b', + -0x189d: b'\x11\xe7c', + -0x189c: b'\x11\xe7d', + -0x189b: b'\x11\xe7e', + -0x189a: b'\x11\xe7f', + -0x1899: b'\x11\xe7g', + -0x1898: b'\x11\xe7h', + -0x1897: b'\x11\xe7i', + -0x1896: b'\x11\xe7j', + -0x1895: b'\x11\xe7k', + -0x1894: b'\x11\xe7l', + -0x1893: b'\x11\xe7m', + -0x1892: b'\x11\xe7n', + -0x1891: b'\x11\xe7o', + -0x1890: b'\x11\xe7p', + -0x188f: b'\x11\xe7q', + -0x188e: b'\x11\xe7r', + -0x188d: b'\x11\xe7s', + -0x188c: b'\x11\xe7t', + -0x188b: b'\x11\xe7u', + -0x188a: b'\x11\xe7v', + -0x1889: b'\x11\xe7w', + -0x1888: b'\x11\xe7x', + -0x1887: b'\x11\xe7y', + -0x1886: b'\x11\xe7z', + -0x1885: b'\x11\xe7{', + -0x1884: b'\x11\xe7|', + -0x1883: b'\x11\xe7}', + -0x1882: b'\x11\xe7~', + -0x1881: b'\x11\xe7\x7f', + -0x1880: b'\x11\xe7\x80', + -0x187f: b'\x11\xe7\x81', + -0x187e: b'\x11\xe7\x82', + -0x187d: b'\x11\xe7\x83', + -0x187c: b'\x11\xe7\x84', + -0x187b: b'\x11\xe7\x85', + -0x187a: b'\x11\xe7\x86', + -0x1879: b'\x11\xe7\x87', + -0x1878: b'\x11\xe7\x88', + -0x1877: b'\x11\xe7\x89', + -0x1876: b'\x11\xe7\x8a', + -0x1875: b'\x11\xe7\x8b', + -0x1874: b'\x11\xe7\x8c', + -0x1873: b'\x11\xe7\x8d', + -0x1872: b'\x11\xe7\x8e', + -0x1871: b'\x11\xe7\x8f', + -0x1870: b'\x11\xe7\x90', + -0x186f: b'\x11\xe7\x91', + -0x186e: b'\x11\xe7\x92', + -0x186d: b'\x11\xe7\x93', + -0x186c: b'\x11\xe7\x94', + -0x186b: b'\x11\xe7\x95', + -0x186a: b'\x11\xe7\x96', + -0x1869: b'\x11\xe7\x97', + -0x1868: b'\x11\xe7\x98', + -0x1867: b'\x11\xe7\x99', + -0x1866: b'\x11\xe7\x9a', + -0x1865: b'\x11\xe7\x9b', + -0x1864: b'\x11\xe7\x9c', + -0x1863: b'\x11\xe7\x9d', + -0x1862: b'\x11\xe7\x9e', + -0x1861: b'\x11\xe7\x9f', + -0x1860: b'\x11\xe7\xa0', + -0x185f: b'\x11\xe7\xa1', + -0x185e: b'\x11\xe7\xa2', + -0x185d: b'\x11\xe7\xa3', + -0x185c: b'\x11\xe7\xa4', + -0x185b: b'\x11\xe7\xa5', + -0x185a: b'\x11\xe7\xa6', + -0x1859: b'\x11\xe7\xa7', + -0x1858: b'\x11\xe7\xa8', + -0x1857: b'\x11\xe7\xa9', + -0x1856: b'\x11\xe7\xaa', + -0x1855: b'\x11\xe7\xab', + -0x1854: b'\x11\xe7\xac', + -0x1853: b'\x11\xe7\xad', + -0x1852: b'\x11\xe7\xae', + -0x1851: b'\x11\xe7\xaf', + -0x1850: b'\x11\xe7\xb0', + -0x184f: b'\x11\xe7\xb1', + -0x184e: b'\x11\xe7\xb2', + -0x184d: b'\x11\xe7\xb3', + -0x184c: b'\x11\xe7\xb4', + -0x184b: b'\x11\xe7\xb5', + -0x184a: b'\x11\xe7\xb6', + -0x1849: b'\x11\xe7\xb7', + -0x1848: b'\x11\xe7\xb8', + -0x1847: b'\x11\xe7\xb9', + -0x1846: b'\x11\xe7\xba', + -0x1845: b'\x11\xe7\xbb', + -0x1844: b'\x11\xe7\xbc', + -0x1843: b'\x11\xe7\xbd', + -0x1842: b'\x11\xe7\xbe', + -0x1841: b'\x11\xe7\xbf', + -0x1840: b'\x11\xe7\xc0', + -0x183f: b'\x11\xe7\xc1', + -0x183e: b'\x11\xe7\xc2', + -0x183d: b'\x11\xe7\xc3', + -0x183c: b'\x11\xe7\xc4', + -0x183b: b'\x11\xe7\xc5', + -0x183a: b'\x11\xe7\xc6', + -0x1839: b'\x11\xe7\xc7', + -0x1838: b'\x11\xe7\xc8', + -0x1837: b'\x11\xe7\xc9', + -0x1836: b'\x11\xe7\xca', + -0x1835: b'\x11\xe7\xcb', + -0x1834: b'\x11\xe7\xcc', + -0x1833: b'\x11\xe7\xcd', + -0x1832: b'\x11\xe7\xce', + -0x1831: b'\x11\xe7\xcf', + -0x1830: b'\x11\xe7\xd0', + -0x182f: b'\x11\xe7\xd1', + -0x182e: b'\x11\xe7\xd2', + -0x182d: b'\x11\xe7\xd3', + -0x182c: b'\x11\xe7\xd4', + -0x182b: b'\x11\xe7\xd5', + -0x182a: b'\x11\xe7\xd6', + -0x1829: b'\x11\xe7\xd7', + -0x1828: b'\x11\xe7\xd8', + -0x1827: b'\x11\xe7\xd9', + -0x1826: b'\x11\xe7\xda', + -0x1825: b'\x11\xe7\xdb', + -0x1824: b'\x11\xe7\xdc', + -0x1823: b'\x11\xe7\xdd', + -0x1822: b'\x11\xe7\xde', + -0x1821: b'\x11\xe7\xdf', + -0x1820: b'\x11\xe7\xe0', + -0x181f: b'\x11\xe7\xe1', + -0x181e: b'\x11\xe7\xe2', + -0x181d: b'\x11\xe7\xe3', + -0x181c: b'\x11\xe7\xe4', + -0x181b: b'\x11\xe7\xe5', + -0x181a: b'\x11\xe7\xe6', + -0x1819: b'\x11\xe7\xe7', + -0x1818: b'\x11\xe7\xe8', + -0x1817: b'\x11\xe7\xe9', + -0x1816: b'\x11\xe7\xea', + -0x1815: b'\x11\xe7\xeb', + -0x1814: b'\x11\xe7\xec', + -0x1813: b'\x11\xe7\xed', + -0x1812: b'\x11\xe7\xee', + -0x1811: b'\x11\xe7\xef', + -0x1810: b'\x11\xe7\xf0', + -0x180f: b'\x11\xe7\xf1', + -0x180e: b'\x11\xe7\xf2', + -0x180d: b'\x11\xe7\xf3', + -0x180c: b'\x11\xe7\xf4', + -0x180b: b'\x11\xe7\xf5', + -0x180a: b'\x11\xe7\xf6', + -0x1809: b'\x11\xe7\xf7', + -0x1808: b'\x11\xe7\xf8', + -0x1807: b'\x11\xe7\xf9', + -0x1806: b'\x11\xe7\xfa', + -0x1805: b'\x11\xe7\xfb', + -0x1804: b'\x11\xe7\xfc', + -0x1803: b'\x11\xe7\xfd', + -0x1802: b'\x11\xe7\xfe', + -0x1801: b'\x11\xe7\xff', + -0x1800: b'\x11\xe8\x00', + -0x17ff: b'\x11\xe8\x01', + -0x17fe: b'\x11\xe8\x02', + -0x17fd: b'\x11\xe8\x03', + -0x17fc: b'\x11\xe8\x04', + -0x17fb: b'\x11\xe8\x05', + -0x17fa: b'\x11\xe8\x06', + -0x17f9: b'\x11\xe8\x07', + -0x17f8: b'\x11\xe8\x08', + -0x17f7: b'\x11\xe8\t', + -0x17f6: b'\x11\xe8\n', + -0x17f5: b'\x11\xe8\x0b', + -0x17f4: b'\x11\xe8\x0c', + -0x17f3: b'\x11\xe8\r', + -0x17f2: b'\x11\xe8\x0e', + -0x17f1: b'\x11\xe8\x0f', + -0x17f0: b'\x11\xe8\x10', + -0x17ef: b'\x11\xe8\x11', + -0x17ee: b'\x11\xe8\x12', + -0x17ed: b'\x11\xe8\x13', + -0x17ec: b'\x11\xe8\x14', + -0x17eb: b'\x11\xe8\x15', + -0x17ea: b'\x11\xe8\x16', + -0x17e9: b'\x11\xe8\x17', + -0x17e8: b'\x11\xe8\x18', + -0x17e7: b'\x11\xe8\x19', + -0x17e6: b'\x11\xe8\x1a', + -0x17e5: b'\x11\xe8\x1b', + -0x17e4: b'\x11\xe8\x1c', + -0x17e3: b'\x11\xe8\x1d', + -0x17e2: b'\x11\xe8\x1e', + -0x17e1: b'\x11\xe8\x1f', + -0x17e0: b'\x11\xe8 ', + -0x17df: b'\x11\xe8!', + -0x17de: b'\x11\xe8"', + -0x17dd: b'\x11\xe8#', + -0x17dc: b'\x11\xe8$', + -0x17db: b'\x11\xe8%', + -0x17da: b'\x11\xe8&', + -0x17d9: b"\x11\xe8'", + -0x17d8: b'\x11\xe8(', + -0x17d7: b'\x11\xe8)', + -0x17d6: b'\x11\xe8*', + -0x17d5: b'\x11\xe8+', + -0x17d4: b'\x11\xe8,', + -0x17d3: b'\x11\xe8-', + -0x17d2: b'\x11\xe8.', + -0x17d1: b'\x11\xe8/', + -0x17d0: b'\x11\xe80', + -0x17cf: b'\x11\xe81', + -0x17ce: b'\x11\xe82', + -0x17cd: b'\x11\xe83', + -0x17cc: b'\x11\xe84', + -0x17cb: b'\x11\xe85', + -0x17ca: b'\x11\xe86', + -0x17c9: b'\x11\xe87', + -0x17c8: b'\x11\xe88', + -0x17c7: b'\x11\xe89', + -0x17c6: b'\x11\xe8:', + -0x17c5: b'\x11\xe8;', + -0x17c4: b'\x11\xe8<', + -0x17c3: b'\x11\xe8=', + -0x17c2: b'\x11\xe8>', + -0x17c1: b'\x11\xe8?', + -0x17c0: b'\x11\xe8@', + -0x17bf: b'\x11\xe8A', + -0x17be: b'\x11\xe8B', + -0x17bd: b'\x11\xe8C', + -0x17bc: b'\x11\xe8D', + -0x17bb: b'\x11\xe8E', + -0x17ba: b'\x11\xe8F', + -0x17b9: b'\x11\xe8G', + -0x17b8: b'\x11\xe8H', + -0x17b7: b'\x11\xe8I', + -0x17b6: b'\x11\xe8J', + -0x17b5: b'\x11\xe8K', + -0x17b4: b'\x11\xe8L', + -0x17b3: b'\x11\xe8M', + -0x17b2: b'\x11\xe8N', + -0x17b1: b'\x11\xe8O', + -0x17b0: b'\x11\xe8P', + -0x17af: b'\x11\xe8Q', + -0x17ae: b'\x11\xe8R', + -0x17ad: b'\x11\xe8S', + -0x17ac: b'\x11\xe8T', + -0x17ab: b'\x11\xe8U', + -0x17aa: b'\x11\xe8V', + -0x17a9: b'\x11\xe8W', + -0x17a8: b'\x11\xe8X', + -0x17a7: b'\x11\xe8Y', + -0x17a6: b'\x11\xe8Z', + -0x17a5: b'\x11\xe8[', + -0x17a4: b'\x11\xe8\\', + -0x17a3: b'\x11\xe8]', + -0x17a2: b'\x11\xe8^', + -0x17a1: b'\x11\xe8_', + -0x17a0: b'\x11\xe8`', + -0x179f: b'\x11\xe8a', + -0x179e: b'\x11\xe8b', + -0x179d: b'\x11\xe8c', + -0x179c: b'\x11\xe8d', + -0x179b: b'\x11\xe8e', + -0x179a: b'\x11\xe8f', + -0x1799: b'\x11\xe8g', + -0x1798: b'\x11\xe8h', + -0x1797: b'\x11\xe8i', + -0x1796: b'\x11\xe8j', + -0x1795: b'\x11\xe8k', + -0x1794: b'\x11\xe8l', + -0x1793: b'\x11\xe8m', + -0x1792: b'\x11\xe8n', + -0x1791: b'\x11\xe8o', + -0x1790: b'\x11\xe8p', + -0x178f: b'\x11\xe8q', + -0x178e: b'\x11\xe8r', + -0x178d: b'\x11\xe8s', + -0x178c: b'\x11\xe8t', + -0x178b: b'\x11\xe8u', + -0x178a: b'\x11\xe8v', + -0x1789: b'\x11\xe8w', + -0x1788: b'\x11\xe8x', + -0x1787: b'\x11\xe8y', + -0x1786: b'\x11\xe8z', + -0x1785: b'\x11\xe8{', + -0x1784: b'\x11\xe8|', + -0x1783: b'\x11\xe8}', + -0x1782: b'\x11\xe8~', + -0x1781: b'\x11\xe8\x7f', + -0x1780: b'\x11\xe8\x80', + -0x177f: b'\x11\xe8\x81', + -0x177e: b'\x11\xe8\x82', + -0x177d: b'\x11\xe8\x83', + -0x177c: b'\x11\xe8\x84', + -0x177b: b'\x11\xe8\x85', + -0x177a: b'\x11\xe8\x86', + -0x1779: b'\x11\xe8\x87', + -0x1778: b'\x11\xe8\x88', + -0x1777: b'\x11\xe8\x89', + -0x1776: b'\x11\xe8\x8a', + -0x1775: b'\x11\xe8\x8b', + -0x1774: b'\x11\xe8\x8c', + -0x1773: b'\x11\xe8\x8d', + -0x1772: b'\x11\xe8\x8e', + -0x1771: b'\x11\xe8\x8f', + -0x1770: b'\x11\xe8\x90', + -0x176f: b'\x11\xe8\x91', + -0x176e: b'\x11\xe8\x92', + -0x176d: b'\x11\xe8\x93', + -0x176c: b'\x11\xe8\x94', + -0x176b: b'\x11\xe8\x95', + -0x176a: b'\x11\xe8\x96', + -0x1769: b'\x11\xe8\x97', + -0x1768: b'\x11\xe8\x98', + -0x1767: b'\x11\xe8\x99', + -0x1766: b'\x11\xe8\x9a', + -0x1765: b'\x11\xe8\x9b', + -0x1764: b'\x11\xe8\x9c', + -0x1763: b'\x11\xe8\x9d', + -0x1762: b'\x11\xe8\x9e', + -0x1761: b'\x11\xe8\x9f', + -0x1760: b'\x11\xe8\xa0', + -0x175f: b'\x11\xe8\xa1', + -0x175e: b'\x11\xe8\xa2', + -0x175d: b'\x11\xe8\xa3', + -0x175c: b'\x11\xe8\xa4', + -0x175b: b'\x11\xe8\xa5', + -0x175a: b'\x11\xe8\xa6', + -0x1759: b'\x11\xe8\xa7', + -0x1758: b'\x11\xe8\xa8', + -0x1757: b'\x11\xe8\xa9', + -0x1756: b'\x11\xe8\xaa', + -0x1755: b'\x11\xe8\xab', + -0x1754: b'\x11\xe8\xac', + -0x1753: b'\x11\xe8\xad', + -0x1752: b'\x11\xe8\xae', + -0x1751: b'\x11\xe8\xaf', + -0x1750: b'\x11\xe8\xb0', + -0x174f: b'\x11\xe8\xb1', + -0x174e: b'\x11\xe8\xb2', + -0x174d: b'\x11\xe8\xb3', + -0x174c: b'\x11\xe8\xb4', + -0x174b: b'\x11\xe8\xb5', + -0x174a: b'\x11\xe8\xb6', + -0x1749: b'\x11\xe8\xb7', + -0x1748: b'\x11\xe8\xb8', + -0x1747: b'\x11\xe8\xb9', + -0x1746: b'\x11\xe8\xba', + -0x1745: b'\x11\xe8\xbb', + -0x1744: b'\x11\xe8\xbc', + -0x1743: b'\x11\xe8\xbd', + -0x1742: b'\x11\xe8\xbe', + -0x1741: b'\x11\xe8\xbf', + -0x1740: b'\x11\xe8\xc0', + -0x173f: b'\x11\xe8\xc1', + -0x173e: b'\x11\xe8\xc2', + -0x173d: b'\x11\xe8\xc3', + -0x173c: b'\x11\xe8\xc4', + -0x173b: b'\x11\xe8\xc5', + -0x173a: b'\x11\xe8\xc6', + -0x1739: b'\x11\xe8\xc7', + -0x1738: b'\x11\xe8\xc8', + -0x1737: b'\x11\xe8\xc9', + -0x1736: b'\x11\xe8\xca', + -0x1735: b'\x11\xe8\xcb', + -0x1734: b'\x11\xe8\xcc', + -0x1733: b'\x11\xe8\xcd', + -0x1732: b'\x11\xe8\xce', + -0x1731: b'\x11\xe8\xcf', + -0x1730: b'\x11\xe8\xd0', + -0x172f: b'\x11\xe8\xd1', + -0x172e: b'\x11\xe8\xd2', + -0x172d: b'\x11\xe8\xd3', + -0x172c: b'\x11\xe8\xd4', + -0x172b: b'\x11\xe8\xd5', + -0x172a: b'\x11\xe8\xd6', + -0x1729: b'\x11\xe8\xd7', + -0x1728: b'\x11\xe8\xd8', + -0x1727: b'\x11\xe8\xd9', + -0x1726: b'\x11\xe8\xda', + -0x1725: b'\x11\xe8\xdb', + -0x1724: b'\x11\xe8\xdc', + -0x1723: b'\x11\xe8\xdd', + -0x1722: b'\x11\xe8\xde', + -0x1721: b'\x11\xe8\xdf', + -0x1720: b'\x11\xe8\xe0', + -0x171f: b'\x11\xe8\xe1', + -0x171e: b'\x11\xe8\xe2', + -0x171d: b'\x11\xe8\xe3', + -0x171c: b'\x11\xe8\xe4', + -0x171b: b'\x11\xe8\xe5', + -0x171a: b'\x11\xe8\xe6', + -0x1719: b'\x11\xe8\xe7', + -0x1718: b'\x11\xe8\xe8', + -0x1717: b'\x11\xe8\xe9', + -0x1716: b'\x11\xe8\xea', + -0x1715: b'\x11\xe8\xeb', + -0x1714: b'\x11\xe8\xec', + -0x1713: b'\x11\xe8\xed', + -0x1712: b'\x11\xe8\xee', + -0x1711: b'\x11\xe8\xef', + -0x1710: b'\x11\xe8\xf0', + -0x170f: b'\x11\xe8\xf1', + -0x170e: b'\x11\xe8\xf2', + -0x170d: b'\x11\xe8\xf3', + -0x170c: b'\x11\xe8\xf4', + -0x170b: b'\x11\xe8\xf5', + -0x170a: b'\x11\xe8\xf6', + -0x1709: b'\x11\xe8\xf7', + -0x1708: b'\x11\xe8\xf8', + -0x1707: b'\x11\xe8\xf9', + -0x1706: b'\x11\xe8\xfa', + -0x1705: b'\x11\xe8\xfb', + -0x1704: b'\x11\xe8\xfc', + -0x1703: b'\x11\xe8\xfd', + -0x1702: b'\x11\xe8\xfe', + -0x1701: b'\x11\xe8\xff', + -0x1700: b'\x11\xe9\x00', + -0x16ff: b'\x11\xe9\x01', + -0x16fe: b'\x11\xe9\x02', + -0x16fd: b'\x11\xe9\x03', + -0x16fc: b'\x11\xe9\x04', + -0x16fb: b'\x11\xe9\x05', + -0x16fa: b'\x11\xe9\x06', + -0x16f9: b'\x11\xe9\x07', + -0x16f8: b'\x11\xe9\x08', + -0x16f7: b'\x11\xe9\t', + -0x16f6: b'\x11\xe9\n', + -0x16f5: b'\x11\xe9\x0b', + -0x16f4: b'\x11\xe9\x0c', + -0x16f3: b'\x11\xe9\r', + -0x16f2: b'\x11\xe9\x0e', + -0x16f1: b'\x11\xe9\x0f', + -0x16f0: b'\x11\xe9\x10', + -0x16ef: b'\x11\xe9\x11', + -0x16ee: b'\x11\xe9\x12', + -0x16ed: b'\x11\xe9\x13', + -0x16ec: b'\x11\xe9\x14', + -0x16eb: b'\x11\xe9\x15', + -0x16ea: b'\x11\xe9\x16', + -0x16e9: b'\x11\xe9\x17', + -0x16e8: b'\x11\xe9\x18', + -0x16e7: b'\x11\xe9\x19', + -0x16e6: b'\x11\xe9\x1a', + -0x16e5: b'\x11\xe9\x1b', + -0x16e4: b'\x11\xe9\x1c', + -0x16e3: b'\x11\xe9\x1d', + -0x16e2: b'\x11\xe9\x1e', + -0x16e1: b'\x11\xe9\x1f', + -0x16e0: b'\x11\xe9 ', + -0x16df: b'\x11\xe9!', + -0x16de: b'\x11\xe9"', + -0x16dd: b'\x11\xe9#', + -0x16dc: b'\x11\xe9$', + -0x16db: b'\x11\xe9%', + -0x16da: b'\x11\xe9&', + -0x16d9: b"\x11\xe9'", + -0x16d8: b'\x11\xe9(', + -0x16d7: b'\x11\xe9)', + -0x16d6: b'\x11\xe9*', + -0x16d5: b'\x11\xe9+', + -0x16d4: b'\x11\xe9,', + -0x16d3: b'\x11\xe9-', + -0x16d2: b'\x11\xe9.', + -0x16d1: b'\x11\xe9/', + -0x16d0: b'\x11\xe90', + -0x16cf: b'\x11\xe91', + -0x16ce: b'\x11\xe92', + -0x16cd: b'\x11\xe93', + -0x16cc: b'\x11\xe94', + -0x16cb: b'\x11\xe95', + -0x16ca: b'\x11\xe96', + -0x16c9: b'\x11\xe97', + -0x16c8: b'\x11\xe98', + -0x16c7: b'\x11\xe99', + -0x16c6: b'\x11\xe9:', + -0x16c5: b'\x11\xe9;', + -0x16c4: b'\x11\xe9<', + -0x16c3: b'\x11\xe9=', + -0x16c2: b'\x11\xe9>', + -0x16c1: b'\x11\xe9?', + -0x16c0: b'\x11\xe9@', + -0x16bf: b'\x11\xe9A', + -0x16be: b'\x11\xe9B', + -0x16bd: b'\x11\xe9C', + -0x16bc: b'\x11\xe9D', + -0x16bb: b'\x11\xe9E', + -0x16ba: b'\x11\xe9F', + -0x16b9: b'\x11\xe9G', + -0x16b8: b'\x11\xe9H', + -0x16b7: b'\x11\xe9I', + -0x16b6: b'\x11\xe9J', + -0x16b5: b'\x11\xe9K', + -0x16b4: b'\x11\xe9L', + -0x16b3: b'\x11\xe9M', + -0x16b2: b'\x11\xe9N', + -0x16b1: b'\x11\xe9O', + -0x16b0: b'\x11\xe9P', + -0x16af: b'\x11\xe9Q', + -0x16ae: b'\x11\xe9R', + -0x16ad: b'\x11\xe9S', + -0x16ac: b'\x11\xe9T', + -0x16ab: b'\x11\xe9U', + -0x16aa: b'\x11\xe9V', + -0x16a9: b'\x11\xe9W', + -0x16a8: b'\x11\xe9X', + -0x16a7: b'\x11\xe9Y', + -0x16a6: b'\x11\xe9Z', + -0x16a5: b'\x11\xe9[', + -0x16a4: b'\x11\xe9\\', + -0x16a3: b'\x11\xe9]', + -0x16a2: b'\x11\xe9^', + -0x16a1: b'\x11\xe9_', + -0x16a0: b'\x11\xe9`', + -0x169f: b'\x11\xe9a', + -0x169e: b'\x11\xe9b', + -0x169d: b'\x11\xe9c', + -0x169c: b'\x11\xe9d', + -0x169b: b'\x11\xe9e', + -0x169a: b'\x11\xe9f', + -0x1699: b'\x11\xe9g', + -0x1698: b'\x11\xe9h', + -0x1697: b'\x11\xe9i', + -0x1696: b'\x11\xe9j', + -0x1695: b'\x11\xe9k', + -0x1694: b'\x11\xe9l', + -0x1693: b'\x11\xe9m', + -0x1692: b'\x11\xe9n', + -0x1691: b'\x11\xe9o', + -0x1690: b'\x11\xe9p', + -0x168f: b'\x11\xe9q', + -0x168e: b'\x11\xe9r', + -0x168d: b'\x11\xe9s', + -0x168c: b'\x11\xe9t', + -0x168b: b'\x11\xe9u', + -0x168a: b'\x11\xe9v', + -0x1689: b'\x11\xe9w', + -0x1688: b'\x11\xe9x', + -0x1687: b'\x11\xe9y', + -0x1686: b'\x11\xe9z', + -0x1685: b'\x11\xe9{', + -0x1684: b'\x11\xe9|', + -0x1683: b'\x11\xe9}', + -0x1682: b'\x11\xe9~', + -0x1681: b'\x11\xe9\x7f', + -0x1680: b'\x11\xe9\x80', + -0x167f: b'\x11\xe9\x81', + -0x167e: b'\x11\xe9\x82', + -0x167d: b'\x11\xe9\x83', + -0x167c: b'\x11\xe9\x84', + -0x167b: b'\x11\xe9\x85', + -0x167a: b'\x11\xe9\x86', + -0x1679: b'\x11\xe9\x87', + -0x1678: b'\x11\xe9\x88', + -0x1677: b'\x11\xe9\x89', + -0x1676: b'\x11\xe9\x8a', + -0x1675: b'\x11\xe9\x8b', + -0x1674: b'\x11\xe9\x8c', + -0x1673: b'\x11\xe9\x8d', + -0x1672: b'\x11\xe9\x8e', + -0x1671: b'\x11\xe9\x8f', + -0x1670: b'\x11\xe9\x90', + -0x166f: b'\x11\xe9\x91', + -0x166e: b'\x11\xe9\x92', + -0x166d: b'\x11\xe9\x93', + -0x166c: b'\x11\xe9\x94', + -0x166b: b'\x11\xe9\x95', + -0x166a: b'\x11\xe9\x96', + -0x1669: b'\x11\xe9\x97', + -0x1668: b'\x11\xe9\x98', + -0x1667: b'\x11\xe9\x99', + -0x1666: b'\x11\xe9\x9a', + -0x1665: b'\x11\xe9\x9b', + -0x1664: b'\x11\xe9\x9c', + -0x1663: b'\x11\xe9\x9d', + -0x1662: b'\x11\xe9\x9e', + -0x1661: b'\x11\xe9\x9f', + -0x1660: b'\x11\xe9\xa0', + -0x165f: b'\x11\xe9\xa1', + -0x165e: b'\x11\xe9\xa2', + -0x165d: b'\x11\xe9\xa3', + -0x165c: b'\x11\xe9\xa4', + -0x165b: b'\x11\xe9\xa5', + -0x165a: b'\x11\xe9\xa6', + -0x1659: b'\x11\xe9\xa7', + -0x1658: b'\x11\xe9\xa8', + -0x1657: b'\x11\xe9\xa9', + -0x1656: b'\x11\xe9\xaa', + -0x1655: b'\x11\xe9\xab', + -0x1654: b'\x11\xe9\xac', + -0x1653: b'\x11\xe9\xad', + -0x1652: b'\x11\xe9\xae', + -0x1651: b'\x11\xe9\xaf', + -0x1650: b'\x11\xe9\xb0', + -0x164f: b'\x11\xe9\xb1', + -0x164e: b'\x11\xe9\xb2', + -0x164d: b'\x11\xe9\xb3', + -0x164c: b'\x11\xe9\xb4', + -0x164b: b'\x11\xe9\xb5', + -0x164a: b'\x11\xe9\xb6', + -0x1649: b'\x11\xe9\xb7', + -0x1648: b'\x11\xe9\xb8', + -0x1647: b'\x11\xe9\xb9', + -0x1646: b'\x11\xe9\xba', + -0x1645: b'\x11\xe9\xbb', + -0x1644: b'\x11\xe9\xbc', + -0x1643: b'\x11\xe9\xbd', + -0x1642: b'\x11\xe9\xbe', + -0x1641: b'\x11\xe9\xbf', + -0x1640: b'\x11\xe9\xc0', + -0x163f: b'\x11\xe9\xc1', + -0x163e: b'\x11\xe9\xc2', + -0x163d: b'\x11\xe9\xc3', + -0x163c: b'\x11\xe9\xc4', + -0x163b: b'\x11\xe9\xc5', + -0x163a: b'\x11\xe9\xc6', + -0x1639: b'\x11\xe9\xc7', + -0x1638: b'\x11\xe9\xc8', + -0x1637: b'\x11\xe9\xc9', + -0x1636: b'\x11\xe9\xca', + -0x1635: b'\x11\xe9\xcb', + -0x1634: b'\x11\xe9\xcc', + -0x1633: b'\x11\xe9\xcd', + -0x1632: b'\x11\xe9\xce', + -0x1631: b'\x11\xe9\xcf', + -0x1630: b'\x11\xe9\xd0', + -0x162f: b'\x11\xe9\xd1', + -0x162e: b'\x11\xe9\xd2', + -0x162d: b'\x11\xe9\xd3', + -0x162c: b'\x11\xe9\xd4', + -0x162b: b'\x11\xe9\xd5', + -0x162a: b'\x11\xe9\xd6', + -0x1629: b'\x11\xe9\xd7', + -0x1628: b'\x11\xe9\xd8', + -0x1627: b'\x11\xe9\xd9', + -0x1626: b'\x11\xe9\xda', + -0x1625: b'\x11\xe9\xdb', + -0x1624: b'\x11\xe9\xdc', + -0x1623: b'\x11\xe9\xdd', + -0x1622: b'\x11\xe9\xde', + -0x1621: b'\x11\xe9\xdf', + -0x1620: b'\x11\xe9\xe0', + -0x161f: b'\x11\xe9\xe1', + -0x161e: b'\x11\xe9\xe2', + -0x161d: b'\x11\xe9\xe3', + -0x161c: b'\x11\xe9\xe4', + -0x161b: b'\x11\xe9\xe5', + -0x161a: b'\x11\xe9\xe6', + -0x1619: b'\x11\xe9\xe7', + -0x1618: b'\x11\xe9\xe8', + -0x1617: b'\x11\xe9\xe9', + -0x1616: b'\x11\xe9\xea', + -0x1615: b'\x11\xe9\xeb', + -0x1614: b'\x11\xe9\xec', + -0x1613: b'\x11\xe9\xed', + -0x1612: b'\x11\xe9\xee', + -0x1611: b'\x11\xe9\xef', + -0x1610: b'\x11\xe9\xf0', + -0x160f: b'\x11\xe9\xf1', + -0x160e: b'\x11\xe9\xf2', + -0x160d: b'\x11\xe9\xf3', + -0x160c: b'\x11\xe9\xf4', + -0x160b: b'\x11\xe9\xf5', + -0x160a: b'\x11\xe9\xf6', + -0x1609: b'\x11\xe9\xf7', + -0x1608: b'\x11\xe9\xf8', + -0x1607: b'\x11\xe9\xf9', + -0x1606: b'\x11\xe9\xfa', + -0x1605: b'\x11\xe9\xfb', + -0x1604: b'\x11\xe9\xfc', + -0x1603: b'\x11\xe9\xfd', + -0x1602: b'\x11\xe9\xfe', + -0x1601: b'\x11\xe9\xff', + -0x1600: b'\x11\xea\x00', + -0x15ff: b'\x11\xea\x01', + -0x15fe: b'\x11\xea\x02', + -0x15fd: b'\x11\xea\x03', + -0x15fc: b'\x11\xea\x04', + -0x15fb: b'\x11\xea\x05', + -0x15fa: b'\x11\xea\x06', + -0x15f9: b'\x11\xea\x07', + -0x15f8: b'\x11\xea\x08', + -0x15f7: b'\x11\xea\t', + -0x15f6: b'\x11\xea\n', + -0x15f5: b'\x11\xea\x0b', + -0x15f4: b'\x11\xea\x0c', + -0x15f3: b'\x11\xea\r', + -0x15f2: b'\x11\xea\x0e', + -0x15f1: b'\x11\xea\x0f', + -0x15f0: b'\x11\xea\x10', + -0x15ef: b'\x11\xea\x11', + -0x15ee: b'\x11\xea\x12', + -0x15ed: b'\x11\xea\x13', + -0x15ec: b'\x11\xea\x14', + -0x15eb: b'\x11\xea\x15', + -0x15ea: b'\x11\xea\x16', + -0x15e9: b'\x11\xea\x17', + -0x15e8: b'\x11\xea\x18', + -0x15e7: b'\x11\xea\x19', + -0x15e6: b'\x11\xea\x1a', + -0x15e5: b'\x11\xea\x1b', + -0x15e4: b'\x11\xea\x1c', + -0x15e3: b'\x11\xea\x1d', + -0x15e2: b'\x11\xea\x1e', + -0x15e1: b'\x11\xea\x1f', + -0x15e0: b'\x11\xea ', + -0x15df: b'\x11\xea!', + -0x15de: b'\x11\xea"', + -0x15dd: b'\x11\xea#', + -0x15dc: b'\x11\xea$', + -0x15db: b'\x11\xea%', + -0x15da: b'\x11\xea&', + -0x15d9: b"\x11\xea'", + -0x15d8: b'\x11\xea(', + -0x15d7: b'\x11\xea)', + -0x15d6: b'\x11\xea*', + -0x15d5: b'\x11\xea+', + -0x15d4: b'\x11\xea,', + -0x15d3: b'\x11\xea-', + -0x15d2: b'\x11\xea.', + -0x15d1: b'\x11\xea/', + -0x15d0: b'\x11\xea0', + -0x15cf: b'\x11\xea1', + -0x15ce: b'\x11\xea2', + -0x15cd: b'\x11\xea3', + -0x15cc: b'\x11\xea4', + -0x15cb: b'\x11\xea5', + -0x15ca: b'\x11\xea6', + -0x15c9: b'\x11\xea7', + -0x15c8: b'\x11\xea8', + -0x15c7: b'\x11\xea9', + -0x15c6: b'\x11\xea:', + -0x15c5: b'\x11\xea;', + -0x15c4: b'\x11\xea<', + -0x15c3: b'\x11\xea=', + -0x15c2: b'\x11\xea>', + -0x15c1: b'\x11\xea?', + -0x15c0: b'\x11\xea@', + -0x15bf: b'\x11\xeaA', + -0x15be: b'\x11\xeaB', + -0x15bd: b'\x11\xeaC', + -0x15bc: b'\x11\xeaD', + -0x15bb: b'\x11\xeaE', + -0x15ba: b'\x11\xeaF', + -0x15b9: b'\x11\xeaG', + -0x15b8: b'\x11\xeaH', + -0x15b7: b'\x11\xeaI', + -0x15b6: b'\x11\xeaJ', + -0x15b5: b'\x11\xeaK', + -0x15b4: b'\x11\xeaL', + -0x15b3: b'\x11\xeaM', + -0x15b2: b'\x11\xeaN', + -0x15b1: b'\x11\xeaO', + -0x15b0: b'\x11\xeaP', + -0x15af: b'\x11\xeaQ', + -0x15ae: b'\x11\xeaR', + -0x15ad: b'\x11\xeaS', + -0x15ac: b'\x11\xeaT', + -0x15ab: b'\x11\xeaU', + -0x15aa: b'\x11\xeaV', + -0x15a9: b'\x11\xeaW', + -0x15a8: b'\x11\xeaX', + -0x15a7: b'\x11\xeaY', + -0x15a6: b'\x11\xeaZ', + -0x15a5: b'\x11\xea[', + -0x15a4: b'\x11\xea\\', + -0x15a3: b'\x11\xea]', + -0x15a2: b'\x11\xea^', + -0x15a1: b'\x11\xea_', + -0x15a0: b'\x11\xea`', + -0x159f: b'\x11\xeaa', + -0x159e: b'\x11\xeab', + -0x159d: b'\x11\xeac', + -0x159c: b'\x11\xead', + -0x159b: b'\x11\xeae', + -0x159a: b'\x11\xeaf', + -0x1599: b'\x11\xeag', + -0x1598: b'\x11\xeah', + -0x1597: b'\x11\xeai', + -0x1596: b'\x11\xeaj', + -0x1595: b'\x11\xeak', + -0x1594: b'\x11\xeal', + -0x1593: b'\x11\xeam', + -0x1592: b'\x11\xean', + -0x1591: b'\x11\xeao', + -0x1590: b'\x11\xeap', + -0x158f: b'\x11\xeaq', + -0x158e: b'\x11\xear', + -0x158d: b'\x11\xeas', + -0x158c: b'\x11\xeat', + -0x158b: b'\x11\xeau', + -0x158a: b'\x11\xeav', + -0x1589: b'\x11\xeaw', + -0x1588: b'\x11\xeax', + -0x1587: b'\x11\xeay', + -0x1586: b'\x11\xeaz', + -0x1585: b'\x11\xea{', + -0x1584: b'\x11\xea|', + -0x1583: b'\x11\xea}', + -0x1582: b'\x11\xea~', + -0x1581: b'\x11\xea\x7f', + -0x1580: b'\x11\xea\x80', + -0x157f: b'\x11\xea\x81', + -0x157e: b'\x11\xea\x82', + -0x157d: b'\x11\xea\x83', + -0x157c: b'\x11\xea\x84', + -0x157b: b'\x11\xea\x85', + -0x157a: b'\x11\xea\x86', + -0x1579: b'\x11\xea\x87', + -0x1578: b'\x11\xea\x88', + -0x1577: b'\x11\xea\x89', + -0x1576: b'\x11\xea\x8a', + -0x1575: b'\x11\xea\x8b', + -0x1574: b'\x11\xea\x8c', + -0x1573: b'\x11\xea\x8d', + -0x1572: b'\x11\xea\x8e', + -0x1571: b'\x11\xea\x8f', + -0x1570: b'\x11\xea\x90', + -0x156f: b'\x11\xea\x91', + -0x156e: b'\x11\xea\x92', + -0x156d: b'\x11\xea\x93', + -0x156c: b'\x11\xea\x94', + -0x156b: b'\x11\xea\x95', + -0x156a: b'\x11\xea\x96', + -0x1569: b'\x11\xea\x97', + -0x1568: b'\x11\xea\x98', + -0x1567: b'\x11\xea\x99', + -0x1566: b'\x11\xea\x9a', + -0x1565: b'\x11\xea\x9b', + -0x1564: b'\x11\xea\x9c', + -0x1563: b'\x11\xea\x9d', + -0x1562: b'\x11\xea\x9e', + -0x1561: b'\x11\xea\x9f', + -0x1560: b'\x11\xea\xa0', + -0x155f: b'\x11\xea\xa1', + -0x155e: b'\x11\xea\xa2', + -0x155d: b'\x11\xea\xa3', + -0x155c: b'\x11\xea\xa4', + -0x155b: b'\x11\xea\xa5', + -0x155a: b'\x11\xea\xa6', + -0x1559: b'\x11\xea\xa7', + -0x1558: b'\x11\xea\xa8', + -0x1557: b'\x11\xea\xa9', + -0x1556: b'\x11\xea\xaa', + -0x1555: b'\x11\xea\xab', + -0x1554: b'\x11\xea\xac', + -0x1553: b'\x11\xea\xad', + -0x1552: b'\x11\xea\xae', + -0x1551: b'\x11\xea\xaf', + -0x1550: b'\x11\xea\xb0', + -0x154f: b'\x11\xea\xb1', + -0x154e: b'\x11\xea\xb2', + -0x154d: b'\x11\xea\xb3', + -0x154c: b'\x11\xea\xb4', + -0x154b: b'\x11\xea\xb5', + -0x154a: b'\x11\xea\xb6', + -0x1549: b'\x11\xea\xb7', + -0x1548: b'\x11\xea\xb8', + -0x1547: b'\x11\xea\xb9', + -0x1546: b'\x11\xea\xba', + -0x1545: b'\x11\xea\xbb', + -0x1544: b'\x11\xea\xbc', + -0x1543: b'\x11\xea\xbd', + -0x1542: b'\x11\xea\xbe', + -0x1541: b'\x11\xea\xbf', + -0x1540: b'\x11\xea\xc0', + -0x153f: b'\x11\xea\xc1', + -0x153e: b'\x11\xea\xc2', + -0x153d: b'\x11\xea\xc3', + -0x153c: b'\x11\xea\xc4', + -0x153b: b'\x11\xea\xc5', + -0x153a: b'\x11\xea\xc6', + -0x1539: b'\x11\xea\xc7', + -0x1538: b'\x11\xea\xc8', + -0x1537: b'\x11\xea\xc9', + -0x1536: b'\x11\xea\xca', + -0x1535: b'\x11\xea\xcb', + -0x1534: b'\x11\xea\xcc', + -0x1533: b'\x11\xea\xcd', + -0x1532: b'\x11\xea\xce', + -0x1531: b'\x11\xea\xcf', + -0x1530: b'\x11\xea\xd0', + -0x152f: b'\x11\xea\xd1', + -0x152e: b'\x11\xea\xd2', + -0x152d: b'\x11\xea\xd3', + -0x152c: b'\x11\xea\xd4', + -0x152b: b'\x11\xea\xd5', + -0x152a: b'\x11\xea\xd6', + -0x1529: b'\x11\xea\xd7', + -0x1528: b'\x11\xea\xd8', + -0x1527: b'\x11\xea\xd9', + -0x1526: b'\x11\xea\xda', + -0x1525: b'\x11\xea\xdb', + -0x1524: b'\x11\xea\xdc', + -0x1523: b'\x11\xea\xdd', + -0x1522: b'\x11\xea\xde', + -0x1521: b'\x11\xea\xdf', + -0x1520: b'\x11\xea\xe0', + -0x151f: b'\x11\xea\xe1', + -0x151e: b'\x11\xea\xe2', + -0x151d: b'\x11\xea\xe3', + -0x151c: b'\x11\xea\xe4', + -0x151b: b'\x11\xea\xe5', + -0x151a: b'\x11\xea\xe6', + -0x1519: b'\x11\xea\xe7', + -0x1518: b'\x11\xea\xe8', + -0x1517: b'\x11\xea\xe9', + -0x1516: b'\x11\xea\xea', + -0x1515: b'\x11\xea\xeb', + -0x1514: b'\x11\xea\xec', + -0x1513: b'\x11\xea\xed', + -0x1512: b'\x11\xea\xee', + -0x1511: b'\x11\xea\xef', + -0x1510: b'\x11\xea\xf0', + -0x150f: b'\x11\xea\xf1', + -0x150e: b'\x11\xea\xf2', + -0x150d: b'\x11\xea\xf3', + -0x150c: b'\x11\xea\xf4', + -0x150b: b'\x11\xea\xf5', + -0x150a: b'\x11\xea\xf6', + -0x1509: b'\x11\xea\xf7', + -0x1508: b'\x11\xea\xf8', + -0x1507: b'\x11\xea\xf9', + -0x1506: b'\x11\xea\xfa', + -0x1505: b'\x11\xea\xfb', + -0x1504: b'\x11\xea\xfc', + -0x1503: b'\x11\xea\xfd', + -0x1502: b'\x11\xea\xfe', + -0x1501: b'\x11\xea\xff', + -0x1500: b'\x11\xeb\x00', + -0x14ff: b'\x11\xeb\x01', + -0x14fe: b'\x11\xeb\x02', + -0x14fd: b'\x11\xeb\x03', + -0x14fc: b'\x11\xeb\x04', + -0x14fb: b'\x11\xeb\x05', + -0x14fa: b'\x11\xeb\x06', + -0x14f9: b'\x11\xeb\x07', + -0x14f8: b'\x11\xeb\x08', + -0x14f7: b'\x11\xeb\t', + -0x14f6: b'\x11\xeb\n', + -0x14f5: b'\x11\xeb\x0b', + -0x14f4: b'\x11\xeb\x0c', + -0x14f3: b'\x11\xeb\r', + -0x14f2: b'\x11\xeb\x0e', + -0x14f1: b'\x11\xeb\x0f', + -0x14f0: b'\x11\xeb\x10', + -0x14ef: b'\x11\xeb\x11', + -0x14ee: b'\x11\xeb\x12', + -0x14ed: b'\x11\xeb\x13', + -0x14ec: b'\x11\xeb\x14', + -0x14eb: b'\x11\xeb\x15', + -0x14ea: b'\x11\xeb\x16', + -0x14e9: b'\x11\xeb\x17', + -0x14e8: b'\x11\xeb\x18', + -0x14e7: b'\x11\xeb\x19', + -0x14e6: b'\x11\xeb\x1a', + -0x14e5: b'\x11\xeb\x1b', + -0x14e4: b'\x11\xeb\x1c', + -0x14e3: b'\x11\xeb\x1d', + -0x14e2: b'\x11\xeb\x1e', + -0x14e1: b'\x11\xeb\x1f', + -0x14e0: b'\x11\xeb ', + -0x14df: b'\x11\xeb!', + -0x14de: b'\x11\xeb"', + -0x14dd: b'\x11\xeb#', + -0x14dc: b'\x11\xeb$', + -0x14db: b'\x11\xeb%', + -0x14da: b'\x11\xeb&', + -0x14d9: b"\x11\xeb'", + -0x14d8: b'\x11\xeb(', + -0x14d7: b'\x11\xeb)', + -0x14d6: b'\x11\xeb*', + -0x14d5: b'\x11\xeb+', + -0x14d4: b'\x11\xeb,', + -0x14d3: b'\x11\xeb-', + -0x14d2: b'\x11\xeb.', + -0x14d1: b'\x11\xeb/', + -0x14d0: b'\x11\xeb0', + -0x14cf: b'\x11\xeb1', + -0x14ce: b'\x11\xeb2', + -0x14cd: b'\x11\xeb3', + -0x14cc: b'\x11\xeb4', + -0x14cb: b'\x11\xeb5', + -0x14ca: b'\x11\xeb6', + -0x14c9: b'\x11\xeb7', + -0x14c8: b'\x11\xeb8', + -0x14c7: b'\x11\xeb9', + -0x14c6: b'\x11\xeb:', + -0x14c5: b'\x11\xeb;', + -0x14c4: b'\x11\xeb<', + -0x14c3: b'\x11\xeb=', + -0x14c2: b'\x11\xeb>', + -0x14c1: b'\x11\xeb?', + -0x14c0: b'\x11\xeb@', + -0x14bf: b'\x11\xebA', + -0x14be: b'\x11\xebB', + -0x14bd: b'\x11\xebC', + -0x14bc: b'\x11\xebD', + -0x14bb: b'\x11\xebE', + -0x14ba: b'\x11\xebF', + -0x14b9: b'\x11\xebG', + -0x14b8: b'\x11\xebH', + -0x14b7: b'\x11\xebI', + -0x14b6: b'\x11\xebJ', + -0x14b5: b'\x11\xebK', + -0x14b4: b'\x11\xebL', + -0x14b3: b'\x11\xebM', + -0x14b2: b'\x11\xebN', + -0x14b1: b'\x11\xebO', + -0x14b0: b'\x11\xebP', + -0x14af: b'\x11\xebQ', + -0x14ae: b'\x11\xebR', + -0x14ad: b'\x11\xebS', + -0x14ac: b'\x11\xebT', + -0x14ab: b'\x11\xebU', + -0x14aa: b'\x11\xebV', + -0x14a9: b'\x11\xebW', + -0x14a8: b'\x11\xebX', + -0x14a7: b'\x11\xebY', + -0x14a6: b'\x11\xebZ', + -0x14a5: b'\x11\xeb[', + -0x14a4: b'\x11\xeb\\', + -0x14a3: b'\x11\xeb]', + -0x14a2: b'\x11\xeb^', + -0x14a1: b'\x11\xeb_', + -0x14a0: b'\x11\xeb`', + -0x149f: b'\x11\xeba', + -0x149e: b'\x11\xebb', + -0x149d: b'\x11\xebc', + -0x149c: b'\x11\xebd', + -0x149b: b'\x11\xebe', + -0x149a: b'\x11\xebf', + -0x1499: b'\x11\xebg', + -0x1498: b'\x11\xebh', + -0x1497: b'\x11\xebi', + -0x1496: b'\x11\xebj', + -0x1495: b'\x11\xebk', + -0x1494: b'\x11\xebl', + -0x1493: b'\x11\xebm', + -0x1492: b'\x11\xebn', + -0x1491: b'\x11\xebo', + -0x1490: b'\x11\xebp', + -0x148f: b'\x11\xebq', + -0x148e: b'\x11\xebr', + -0x148d: b'\x11\xebs', + -0x148c: b'\x11\xebt', + -0x148b: b'\x11\xebu', + -0x148a: b'\x11\xebv', + -0x1489: b'\x11\xebw', + -0x1488: b'\x11\xebx', + -0x1487: b'\x11\xeby', + -0x1486: b'\x11\xebz', + -0x1485: b'\x11\xeb{', + -0x1484: b'\x11\xeb|', + -0x1483: b'\x11\xeb}', + -0x1482: b'\x11\xeb~', + -0x1481: b'\x11\xeb\x7f', + -0x1480: b'\x11\xeb\x80', + -0x147f: b'\x11\xeb\x81', + -0x147e: b'\x11\xeb\x82', + -0x147d: b'\x11\xeb\x83', + -0x147c: b'\x11\xeb\x84', + -0x147b: b'\x11\xeb\x85', + -0x147a: b'\x11\xeb\x86', + -0x1479: b'\x11\xeb\x87', + -0x1478: b'\x11\xeb\x88', + -0x1477: b'\x11\xeb\x89', + -0x1476: b'\x11\xeb\x8a', + -0x1475: b'\x11\xeb\x8b', + -0x1474: b'\x11\xeb\x8c', + -0x1473: b'\x11\xeb\x8d', + -0x1472: b'\x11\xeb\x8e', + -0x1471: b'\x11\xeb\x8f', + -0x1470: b'\x11\xeb\x90', + -0x146f: b'\x11\xeb\x91', + -0x146e: b'\x11\xeb\x92', + -0x146d: b'\x11\xeb\x93', + -0x146c: b'\x11\xeb\x94', + -0x146b: b'\x11\xeb\x95', + -0x146a: b'\x11\xeb\x96', + -0x1469: b'\x11\xeb\x97', + -0x1468: b'\x11\xeb\x98', + -0x1467: b'\x11\xeb\x99', + -0x1466: b'\x11\xeb\x9a', + -0x1465: b'\x11\xeb\x9b', + -0x1464: b'\x11\xeb\x9c', + -0x1463: b'\x11\xeb\x9d', + -0x1462: b'\x11\xeb\x9e', + -0x1461: b'\x11\xeb\x9f', + -0x1460: b'\x11\xeb\xa0', + -0x145f: b'\x11\xeb\xa1', + -0x145e: b'\x11\xeb\xa2', + -0x145d: b'\x11\xeb\xa3', + -0x145c: b'\x11\xeb\xa4', + -0x145b: b'\x11\xeb\xa5', + -0x145a: b'\x11\xeb\xa6', + -0x1459: b'\x11\xeb\xa7', + -0x1458: b'\x11\xeb\xa8', + -0x1457: b'\x11\xeb\xa9', + -0x1456: b'\x11\xeb\xaa', + -0x1455: b'\x11\xeb\xab', + -0x1454: b'\x11\xeb\xac', + -0x1453: b'\x11\xeb\xad', + -0x1452: b'\x11\xeb\xae', + -0x1451: b'\x11\xeb\xaf', + -0x1450: b'\x11\xeb\xb0', + -0x144f: b'\x11\xeb\xb1', + -0x144e: b'\x11\xeb\xb2', + -0x144d: b'\x11\xeb\xb3', + -0x144c: b'\x11\xeb\xb4', + -0x144b: b'\x11\xeb\xb5', + -0x144a: b'\x11\xeb\xb6', + -0x1449: b'\x11\xeb\xb7', + -0x1448: b'\x11\xeb\xb8', + -0x1447: b'\x11\xeb\xb9', + -0x1446: b'\x11\xeb\xba', + -0x1445: b'\x11\xeb\xbb', + -0x1444: b'\x11\xeb\xbc', + -0x1443: b'\x11\xeb\xbd', + -0x1442: b'\x11\xeb\xbe', + -0x1441: b'\x11\xeb\xbf', + -0x1440: b'\x11\xeb\xc0', + -0x143f: b'\x11\xeb\xc1', + -0x143e: b'\x11\xeb\xc2', + -0x143d: b'\x11\xeb\xc3', + -0x143c: b'\x11\xeb\xc4', + -0x143b: b'\x11\xeb\xc5', + -0x143a: b'\x11\xeb\xc6', + -0x1439: b'\x11\xeb\xc7', + -0x1438: b'\x11\xeb\xc8', + -0x1437: b'\x11\xeb\xc9', + -0x1436: b'\x11\xeb\xca', + -0x1435: b'\x11\xeb\xcb', + -0x1434: b'\x11\xeb\xcc', + -0x1433: b'\x11\xeb\xcd', + -0x1432: b'\x11\xeb\xce', + -0x1431: b'\x11\xeb\xcf', + -0x1430: b'\x11\xeb\xd0', + -0x142f: b'\x11\xeb\xd1', + -0x142e: b'\x11\xeb\xd2', + -0x142d: b'\x11\xeb\xd3', + -0x142c: b'\x11\xeb\xd4', + -0x142b: b'\x11\xeb\xd5', + -0x142a: b'\x11\xeb\xd6', + -0x1429: b'\x11\xeb\xd7', + -0x1428: b'\x11\xeb\xd8', + -0x1427: b'\x11\xeb\xd9', + -0x1426: b'\x11\xeb\xda', + -0x1425: b'\x11\xeb\xdb', + -0x1424: b'\x11\xeb\xdc', + -0x1423: b'\x11\xeb\xdd', + -0x1422: b'\x11\xeb\xde', + -0x1421: b'\x11\xeb\xdf', + -0x1420: b'\x11\xeb\xe0', + -0x141f: b'\x11\xeb\xe1', + -0x141e: b'\x11\xeb\xe2', + -0x141d: b'\x11\xeb\xe3', + -0x141c: b'\x11\xeb\xe4', + -0x141b: b'\x11\xeb\xe5', + -0x141a: b'\x11\xeb\xe6', + -0x1419: b'\x11\xeb\xe7', + -0x1418: b'\x11\xeb\xe8', + -0x1417: b'\x11\xeb\xe9', + -0x1416: b'\x11\xeb\xea', + -0x1415: b'\x11\xeb\xeb', + -0x1414: b'\x11\xeb\xec', + -0x1413: b'\x11\xeb\xed', + -0x1412: b'\x11\xeb\xee', + -0x1411: b'\x11\xeb\xef', + -0x1410: b'\x11\xeb\xf0', + -0x140f: b'\x11\xeb\xf1', + -0x140e: b'\x11\xeb\xf2', + -0x140d: b'\x11\xeb\xf3', + -0x140c: b'\x11\xeb\xf4', + -0x140b: b'\x11\xeb\xf5', + -0x140a: b'\x11\xeb\xf6', + -0x1409: b'\x11\xeb\xf7', + -0x1408: b'\x11\xeb\xf8', + -0x1407: b'\x11\xeb\xf9', + -0x1406: b'\x11\xeb\xfa', + -0x1405: b'\x11\xeb\xfb', + -0x1404: b'\x11\xeb\xfc', + -0x1403: b'\x11\xeb\xfd', + -0x1402: b'\x11\xeb\xfe', + -0x1401: b'\x11\xeb\xff', + -0x1400: b'\x11\xec\x00', + -0x13ff: b'\x11\xec\x01', + -0x13fe: b'\x11\xec\x02', + -0x13fd: b'\x11\xec\x03', + -0x13fc: b'\x11\xec\x04', + -0x13fb: b'\x11\xec\x05', + -0x13fa: b'\x11\xec\x06', + -0x13f9: b'\x11\xec\x07', + -0x13f8: b'\x11\xec\x08', + -0x13f7: b'\x11\xec\t', + -0x13f6: b'\x11\xec\n', + -0x13f5: b'\x11\xec\x0b', + -0x13f4: b'\x11\xec\x0c', + -0x13f3: b'\x11\xec\r', + -0x13f2: b'\x11\xec\x0e', + -0x13f1: b'\x11\xec\x0f', + -0x13f0: b'\x11\xec\x10', + -0x13ef: b'\x11\xec\x11', + -0x13ee: b'\x11\xec\x12', + -0x13ed: b'\x11\xec\x13', + -0x13ec: b'\x11\xec\x14', + -0x13eb: b'\x11\xec\x15', + -0x13ea: b'\x11\xec\x16', + -0x13e9: b'\x11\xec\x17', + -0x13e8: b'\x11\xec\x18', + -0x13e7: b'\x11\xec\x19', + -0x13e6: b'\x11\xec\x1a', + -0x13e5: b'\x11\xec\x1b', + -0x13e4: b'\x11\xec\x1c', + -0x13e3: b'\x11\xec\x1d', + -0x13e2: b'\x11\xec\x1e', + -0x13e1: b'\x11\xec\x1f', + -0x13e0: b'\x11\xec ', + -0x13df: b'\x11\xec!', + -0x13de: b'\x11\xec"', + -0x13dd: b'\x11\xec#', + -0x13dc: b'\x11\xec$', + -0x13db: b'\x11\xec%', + -0x13da: b'\x11\xec&', + -0x13d9: b"\x11\xec'", + -0x13d8: b'\x11\xec(', + -0x13d7: b'\x11\xec)', + -0x13d6: b'\x11\xec*', + -0x13d5: b'\x11\xec+', + -0x13d4: b'\x11\xec,', + -0x13d3: b'\x11\xec-', + -0x13d2: b'\x11\xec.', + -0x13d1: b'\x11\xec/', + -0x13d0: b'\x11\xec0', + -0x13cf: b'\x11\xec1', + -0x13ce: b'\x11\xec2', + -0x13cd: b'\x11\xec3', + -0x13cc: b'\x11\xec4', + -0x13cb: b'\x11\xec5', + -0x13ca: b'\x11\xec6', + -0x13c9: b'\x11\xec7', + -0x13c8: b'\x11\xec8', + -0x13c7: b'\x11\xec9', + -0x13c6: b'\x11\xec:', + -0x13c5: b'\x11\xec;', + -0x13c4: b'\x11\xec<', + -0x13c3: b'\x11\xec=', + -0x13c2: b'\x11\xec>', + -0x13c1: b'\x11\xec?', + -0x13c0: b'\x11\xec@', + -0x13bf: b'\x11\xecA', + -0x13be: b'\x11\xecB', + -0x13bd: b'\x11\xecC', + -0x13bc: b'\x11\xecD', + -0x13bb: b'\x11\xecE', + -0x13ba: b'\x11\xecF', + -0x13b9: b'\x11\xecG', + -0x13b8: b'\x11\xecH', + -0x13b7: b'\x11\xecI', + -0x13b6: b'\x11\xecJ', + -0x13b5: b'\x11\xecK', + -0x13b4: b'\x11\xecL', + -0x13b3: b'\x11\xecM', + -0x13b2: b'\x11\xecN', + -0x13b1: b'\x11\xecO', + -0x13b0: b'\x11\xecP', + -0x13af: b'\x11\xecQ', + -0x13ae: b'\x11\xecR', + -0x13ad: b'\x11\xecS', + -0x13ac: b'\x11\xecT', + -0x13ab: b'\x11\xecU', + -0x13aa: b'\x11\xecV', + -0x13a9: b'\x11\xecW', + -0x13a8: b'\x11\xecX', + -0x13a7: b'\x11\xecY', + -0x13a6: b'\x11\xecZ', + -0x13a5: b'\x11\xec[', + -0x13a4: b'\x11\xec\\', + -0x13a3: b'\x11\xec]', + -0x13a2: b'\x11\xec^', + -0x13a1: b'\x11\xec_', + -0x13a0: b'\x11\xec`', + -0x139f: b'\x11\xeca', + -0x139e: b'\x11\xecb', + -0x139d: b'\x11\xecc', + -0x139c: b'\x11\xecd', + -0x139b: b'\x11\xece', + -0x139a: b'\x11\xecf', + -0x1399: b'\x11\xecg', + -0x1398: b'\x11\xech', + -0x1397: b'\x11\xeci', + -0x1396: b'\x11\xecj', + -0x1395: b'\x11\xeck', + -0x1394: b'\x11\xecl', + -0x1393: b'\x11\xecm', + -0x1392: b'\x11\xecn', + -0x1391: b'\x11\xeco', + -0x1390: b'\x11\xecp', + -0x138f: b'\x11\xecq', + -0x138e: b'\x11\xecr', + -0x138d: b'\x11\xecs', + -0x138c: b'\x11\xect', + -0x138b: b'\x11\xecu', + -0x138a: b'\x11\xecv', + -0x1389: b'\x11\xecw', + -0x1388: b'\x11\xecx', + -0x1387: b'\x11\xecy', + -0x1386: b'\x11\xecz', + -0x1385: b'\x11\xec{', + -0x1384: b'\x11\xec|', + -0x1383: b'\x11\xec}', + -0x1382: b'\x11\xec~', + -0x1381: b'\x11\xec\x7f', + -0x1380: b'\x11\xec\x80', + -0x137f: b'\x11\xec\x81', + -0x137e: b'\x11\xec\x82', + -0x137d: b'\x11\xec\x83', + -0x137c: b'\x11\xec\x84', + -0x137b: b'\x11\xec\x85', + -0x137a: b'\x11\xec\x86', + -0x1379: b'\x11\xec\x87', + -0x1378: b'\x11\xec\x88', + -0x1377: b'\x11\xec\x89', + -0x1376: b'\x11\xec\x8a', + -0x1375: b'\x11\xec\x8b', + -0x1374: b'\x11\xec\x8c', + -0x1373: b'\x11\xec\x8d', + -0x1372: b'\x11\xec\x8e', + -0x1371: b'\x11\xec\x8f', + -0x1370: b'\x11\xec\x90', + -0x136f: b'\x11\xec\x91', + -0x136e: b'\x11\xec\x92', + -0x136d: b'\x11\xec\x93', + -0x136c: b'\x11\xec\x94', + -0x136b: b'\x11\xec\x95', + -0x136a: b'\x11\xec\x96', + -0x1369: b'\x11\xec\x97', + -0x1368: b'\x11\xec\x98', + -0x1367: b'\x11\xec\x99', + -0x1366: b'\x11\xec\x9a', + -0x1365: b'\x11\xec\x9b', + -0x1364: b'\x11\xec\x9c', + -0x1363: b'\x11\xec\x9d', + -0x1362: b'\x11\xec\x9e', + -0x1361: b'\x11\xec\x9f', + -0x1360: b'\x11\xec\xa0', + -0x135f: b'\x11\xec\xa1', + -0x135e: b'\x11\xec\xa2', + -0x135d: b'\x11\xec\xa3', + -0x135c: b'\x11\xec\xa4', + -0x135b: b'\x11\xec\xa5', + -0x135a: b'\x11\xec\xa6', + -0x1359: b'\x11\xec\xa7', + -0x1358: b'\x11\xec\xa8', + -0x1357: b'\x11\xec\xa9', + -0x1356: b'\x11\xec\xaa', + -0x1355: b'\x11\xec\xab', + -0x1354: b'\x11\xec\xac', + -0x1353: b'\x11\xec\xad', + -0x1352: b'\x11\xec\xae', + -0x1351: b'\x11\xec\xaf', + -0x1350: b'\x11\xec\xb0', + -0x134f: b'\x11\xec\xb1', + -0x134e: b'\x11\xec\xb2', + -0x134d: b'\x11\xec\xb3', + -0x134c: b'\x11\xec\xb4', + -0x134b: b'\x11\xec\xb5', + -0x134a: b'\x11\xec\xb6', + -0x1349: b'\x11\xec\xb7', + -0x1348: b'\x11\xec\xb8', + -0x1347: b'\x11\xec\xb9', + -0x1346: b'\x11\xec\xba', + -0x1345: b'\x11\xec\xbb', + -0x1344: b'\x11\xec\xbc', + -0x1343: b'\x11\xec\xbd', + -0x1342: b'\x11\xec\xbe', + -0x1341: b'\x11\xec\xbf', + -0x1340: b'\x11\xec\xc0', + -0x133f: b'\x11\xec\xc1', + -0x133e: b'\x11\xec\xc2', + -0x133d: b'\x11\xec\xc3', + -0x133c: b'\x11\xec\xc4', + -0x133b: b'\x11\xec\xc5', + -0x133a: b'\x11\xec\xc6', + -0x1339: b'\x11\xec\xc7', + -0x1338: b'\x11\xec\xc8', + -0x1337: b'\x11\xec\xc9', + -0x1336: b'\x11\xec\xca', + -0x1335: b'\x11\xec\xcb', + -0x1334: b'\x11\xec\xcc', + -0x1333: b'\x11\xec\xcd', + -0x1332: b'\x11\xec\xce', + -0x1331: b'\x11\xec\xcf', + -0x1330: b'\x11\xec\xd0', + -0x132f: b'\x11\xec\xd1', + -0x132e: b'\x11\xec\xd2', + -0x132d: b'\x11\xec\xd3', + -0x132c: b'\x11\xec\xd4', + -0x132b: b'\x11\xec\xd5', + -0x132a: b'\x11\xec\xd6', + -0x1329: b'\x11\xec\xd7', + -0x1328: b'\x11\xec\xd8', + -0x1327: b'\x11\xec\xd9', + -0x1326: b'\x11\xec\xda', + -0x1325: b'\x11\xec\xdb', + -0x1324: b'\x11\xec\xdc', + -0x1323: b'\x11\xec\xdd', + -0x1322: b'\x11\xec\xde', + -0x1321: b'\x11\xec\xdf', + -0x1320: b'\x11\xec\xe0', + -0x131f: b'\x11\xec\xe1', + -0x131e: b'\x11\xec\xe2', + -0x131d: b'\x11\xec\xe3', + -0x131c: b'\x11\xec\xe4', + -0x131b: b'\x11\xec\xe5', + -0x131a: b'\x11\xec\xe6', + -0x1319: b'\x11\xec\xe7', + -0x1318: b'\x11\xec\xe8', + -0x1317: b'\x11\xec\xe9', + -0x1316: b'\x11\xec\xea', + -0x1315: b'\x11\xec\xeb', + -0x1314: b'\x11\xec\xec', + -0x1313: b'\x11\xec\xed', + -0x1312: b'\x11\xec\xee', + -0x1311: b'\x11\xec\xef', + -0x1310: b'\x11\xec\xf0', + -0x130f: b'\x11\xec\xf1', + -0x130e: b'\x11\xec\xf2', + -0x130d: b'\x11\xec\xf3', + -0x130c: b'\x11\xec\xf4', + -0x130b: b'\x11\xec\xf5', + -0x130a: b'\x11\xec\xf6', + -0x1309: b'\x11\xec\xf7', + -0x1308: b'\x11\xec\xf8', + -0x1307: b'\x11\xec\xf9', + -0x1306: b'\x11\xec\xfa', + -0x1305: b'\x11\xec\xfb', + -0x1304: b'\x11\xec\xfc', + -0x1303: b'\x11\xec\xfd', + -0x1302: b'\x11\xec\xfe', + -0x1301: b'\x11\xec\xff', + -0x1300: b'\x11\xed\x00', + -0x12ff: b'\x11\xed\x01', + -0x12fe: b'\x11\xed\x02', + -0x12fd: b'\x11\xed\x03', + -0x12fc: b'\x11\xed\x04', + -0x12fb: b'\x11\xed\x05', + -0x12fa: b'\x11\xed\x06', + -0x12f9: b'\x11\xed\x07', + -0x12f8: b'\x11\xed\x08', + -0x12f7: b'\x11\xed\t', + -0x12f6: b'\x11\xed\n', + -0x12f5: b'\x11\xed\x0b', + -0x12f4: b'\x11\xed\x0c', + -0x12f3: b'\x11\xed\r', + -0x12f2: b'\x11\xed\x0e', + -0x12f1: b'\x11\xed\x0f', + -0x12f0: b'\x11\xed\x10', + -0x12ef: b'\x11\xed\x11', + -0x12ee: b'\x11\xed\x12', + -0x12ed: b'\x11\xed\x13', + -0x12ec: b'\x11\xed\x14', + -0x12eb: b'\x11\xed\x15', + -0x12ea: b'\x11\xed\x16', + -0x12e9: b'\x11\xed\x17', + -0x12e8: b'\x11\xed\x18', + -0x12e7: b'\x11\xed\x19', + -0x12e6: b'\x11\xed\x1a', + -0x12e5: b'\x11\xed\x1b', + -0x12e4: b'\x11\xed\x1c', + -0x12e3: b'\x11\xed\x1d', + -0x12e2: b'\x11\xed\x1e', + -0x12e1: b'\x11\xed\x1f', + -0x12e0: b'\x11\xed ', + -0x12df: b'\x11\xed!', + -0x12de: b'\x11\xed"', + -0x12dd: b'\x11\xed#', + -0x12dc: b'\x11\xed$', + -0x12db: b'\x11\xed%', + -0x12da: b'\x11\xed&', + -0x12d9: b"\x11\xed'", + -0x12d8: b'\x11\xed(', + -0x12d7: b'\x11\xed)', + -0x12d6: b'\x11\xed*', + -0x12d5: b'\x11\xed+', + -0x12d4: b'\x11\xed,', + -0x12d3: b'\x11\xed-', + -0x12d2: b'\x11\xed.', + -0x12d1: b'\x11\xed/', + -0x12d0: b'\x11\xed0', + -0x12cf: b'\x11\xed1', + -0x12ce: b'\x11\xed2', + -0x12cd: b'\x11\xed3', + -0x12cc: b'\x11\xed4', + -0x12cb: b'\x11\xed5', + -0x12ca: b'\x11\xed6', + -0x12c9: b'\x11\xed7', + -0x12c8: b'\x11\xed8', + -0x12c7: b'\x11\xed9', + -0x12c6: b'\x11\xed:', + -0x12c5: b'\x11\xed;', + -0x12c4: b'\x11\xed<', + -0x12c3: b'\x11\xed=', + -0x12c2: b'\x11\xed>', + -0x12c1: b'\x11\xed?', + -0x12c0: b'\x11\xed@', + -0x12bf: b'\x11\xedA', + -0x12be: b'\x11\xedB', + -0x12bd: b'\x11\xedC', + -0x12bc: b'\x11\xedD', + -0x12bb: b'\x11\xedE', + -0x12ba: b'\x11\xedF', + -0x12b9: b'\x11\xedG', + -0x12b8: b'\x11\xedH', + -0x12b7: b'\x11\xedI', + -0x12b6: b'\x11\xedJ', + -0x12b5: b'\x11\xedK', + -0x12b4: b'\x11\xedL', + -0x12b3: b'\x11\xedM', + -0x12b2: b'\x11\xedN', + -0x12b1: b'\x11\xedO', + -0x12b0: b'\x11\xedP', + -0x12af: b'\x11\xedQ', + -0x12ae: b'\x11\xedR', + -0x12ad: b'\x11\xedS', + -0x12ac: b'\x11\xedT', + -0x12ab: b'\x11\xedU', + -0x12aa: b'\x11\xedV', + -0x12a9: b'\x11\xedW', + -0x12a8: b'\x11\xedX', + -0x12a7: b'\x11\xedY', + -0x12a6: b'\x11\xedZ', + -0x12a5: b'\x11\xed[', + -0x12a4: b'\x11\xed\\', + -0x12a3: b'\x11\xed]', + -0x12a2: b'\x11\xed^', + -0x12a1: b'\x11\xed_', + -0x12a0: b'\x11\xed`', + -0x129f: b'\x11\xeda', + -0x129e: b'\x11\xedb', + -0x129d: b'\x11\xedc', + -0x129c: b'\x11\xedd', + -0x129b: b'\x11\xede', + -0x129a: b'\x11\xedf', + -0x1299: b'\x11\xedg', + -0x1298: b'\x11\xedh', + -0x1297: b'\x11\xedi', + -0x1296: b'\x11\xedj', + -0x1295: b'\x11\xedk', + -0x1294: b'\x11\xedl', + -0x1293: b'\x11\xedm', + -0x1292: b'\x11\xedn', + -0x1291: b'\x11\xedo', + -0x1290: b'\x11\xedp', + -0x128f: b'\x11\xedq', + -0x128e: b'\x11\xedr', + -0x128d: b'\x11\xeds', + -0x128c: b'\x11\xedt', + -0x128b: b'\x11\xedu', + -0x128a: b'\x11\xedv', + -0x1289: b'\x11\xedw', + -0x1288: b'\x11\xedx', + -0x1287: b'\x11\xedy', + -0x1286: b'\x11\xedz', + -0x1285: b'\x11\xed{', + -0x1284: b'\x11\xed|', + -0x1283: b'\x11\xed}', + -0x1282: b'\x11\xed~', + -0x1281: b'\x11\xed\x7f', + -0x1280: b'\x11\xed\x80', + -0x127f: b'\x11\xed\x81', + -0x127e: b'\x11\xed\x82', + -0x127d: b'\x11\xed\x83', + -0x127c: b'\x11\xed\x84', + -0x127b: b'\x11\xed\x85', + -0x127a: b'\x11\xed\x86', + -0x1279: b'\x11\xed\x87', + -0x1278: b'\x11\xed\x88', + -0x1277: b'\x11\xed\x89', + -0x1276: b'\x11\xed\x8a', + -0x1275: b'\x11\xed\x8b', + -0x1274: b'\x11\xed\x8c', + -0x1273: b'\x11\xed\x8d', + -0x1272: b'\x11\xed\x8e', + -0x1271: b'\x11\xed\x8f', + -0x1270: b'\x11\xed\x90', + -0x126f: b'\x11\xed\x91', + -0x126e: b'\x11\xed\x92', + -0x126d: b'\x11\xed\x93', + -0x126c: b'\x11\xed\x94', + -0x126b: b'\x11\xed\x95', + -0x126a: b'\x11\xed\x96', + -0x1269: b'\x11\xed\x97', + -0x1268: b'\x11\xed\x98', + -0x1267: b'\x11\xed\x99', + -0x1266: b'\x11\xed\x9a', + -0x1265: b'\x11\xed\x9b', + -0x1264: b'\x11\xed\x9c', + -0x1263: b'\x11\xed\x9d', + -0x1262: b'\x11\xed\x9e', + -0x1261: b'\x11\xed\x9f', + -0x1260: b'\x11\xed\xa0', + -0x125f: b'\x11\xed\xa1', + -0x125e: b'\x11\xed\xa2', + -0x125d: b'\x11\xed\xa3', + -0x125c: b'\x11\xed\xa4', + -0x125b: b'\x11\xed\xa5', + -0x125a: b'\x11\xed\xa6', + -0x1259: b'\x11\xed\xa7', + -0x1258: b'\x11\xed\xa8', + -0x1257: b'\x11\xed\xa9', + -0x1256: b'\x11\xed\xaa', + -0x1255: b'\x11\xed\xab', + -0x1254: b'\x11\xed\xac', + -0x1253: b'\x11\xed\xad', + -0x1252: b'\x11\xed\xae', + -0x1251: b'\x11\xed\xaf', + -0x1250: b'\x11\xed\xb0', + -0x124f: b'\x11\xed\xb1', + -0x124e: b'\x11\xed\xb2', + -0x124d: b'\x11\xed\xb3', + -0x124c: b'\x11\xed\xb4', + -0x124b: b'\x11\xed\xb5', + -0x124a: b'\x11\xed\xb6', + -0x1249: b'\x11\xed\xb7', + -0x1248: b'\x11\xed\xb8', + -0x1247: b'\x11\xed\xb9', + -0x1246: b'\x11\xed\xba', + -0x1245: b'\x11\xed\xbb', + -0x1244: b'\x11\xed\xbc', + -0x1243: b'\x11\xed\xbd', + -0x1242: b'\x11\xed\xbe', + -0x1241: b'\x11\xed\xbf', + -0x1240: b'\x11\xed\xc0', + -0x123f: b'\x11\xed\xc1', + -0x123e: b'\x11\xed\xc2', + -0x123d: b'\x11\xed\xc3', + -0x123c: b'\x11\xed\xc4', + -0x123b: b'\x11\xed\xc5', + -0x123a: b'\x11\xed\xc6', + -0x1239: b'\x11\xed\xc7', + -0x1238: b'\x11\xed\xc8', + -0x1237: b'\x11\xed\xc9', + -0x1236: b'\x11\xed\xca', + -0x1235: b'\x11\xed\xcb', + -0x1234: b'\x11\xed\xcc', + -0x1233: b'\x11\xed\xcd', + -0x1232: b'\x11\xed\xce', + -0x1231: b'\x11\xed\xcf', + -0x1230: b'\x11\xed\xd0', + -0x122f: b'\x11\xed\xd1', + -0x122e: b'\x11\xed\xd2', + -0x122d: b'\x11\xed\xd3', + -0x122c: b'\x11\xed\xd4', + -0x122b: b'\x11\xed\xd5', + -0x122a: b'\x11\xed\xd6', + -0x1229: b'\x11\xed\xd7', + -0x1228: b'\x11\xed\xd8', + -0x1227: b'\x11\xed\xd9', + -0x1226: b'\x11\xed\xda', + -0x1225: b'\x11\xed\xdb', + -0x1224: b'\x11\xed\xdc', + -0x1223: b'\x11\xed\xdd', + -0x1222: b'\x11\xed\xde', + -0x1221: b'\x11\xed\xdf', + -0x1220: b'\x11\xed\xe0', + -0x121f: b'\x11\xed\xe1', + -0x121e: b'\x11\xed\xe2', + -0x121d: b'\x11\xed\xe3', + -0x121c: b'\x11\xed\xe4', + -0x121b: b'\x11\xed\xe5', + -0x121a: b'\x11\xed\xe6', + -0x1219: b'\x11\xed\xe7', + -0x1218: b'\x11\xed\xe8', + -0x1217: b'\x11\xed\xe9', + -0x1216: b'\x11\xed\xea', + -0x1215: b'\x11\xed\xeb', + -0x1214: b'\x11\xed\xec', + -0x1213: b'\x11\xed\xed', + -0x1212: b'\x11\xed\xee', + -0x1211: b'\x11\xed\xef', + -0x1210: b'\x11\xed\xf0', + -0x120f: b'\x11\xed\xf1', + -0x120e: b'\x11\xed\xf2', + -0x120d: b'\x11\xed\xf3', + -0x120c: b'\x11\xed\xf4', + -0x120b: b'\x11\xed\xf5', + -0x120a: b'\x11\xed\xf6', + -0x1209: b'\x11\xed\xf7', + -0x1208: b'\x11\xed\xf8', + -0x1207: b'\x11\xed\xf9', + -0x1206: b'\x11\xed\xfa', + -0x1205: b'\x11\xed\xfb', + -0x1204: b'\x11\xed\xfc', + -0x1203: b'\x11\xed\xfd', + -0x1202: b'\x11\xed\xfe', + -0x1201: b'\x11\xed\xff', + -0x1200: b'\x11\xee\x00', + -0x11ff: b'\x11\xee\x01', + -0x11fe: b'\x11\xee\x02', + -0x11fd: b'\x11\xee\x03', + -0x11fc: b'\x11\xee\x04', + -0x11fb: b'\x11\xee\x05', + -0x11fa: b'\x11\xee\x06', + -0x11f9: b'\x11\xee\x07', + -0x11f8: b'\x11\xee\x08', + -0x11f7: b'\x11\xee\t', + -0x11f6: b'\x11\xee\n', + -0x11f5: b'\x11\xee\x0b', + -0x11f4: b'\x11\xee\x0c', + -0x11f3: b'\x11\xee\r', + -0x11f2: b'\x11\xee\x0e', + -0x11f1: b'\x11\xee\x0f', + -0x11f0: b'\x11\xee\x10', + -0x11ef: b'\x11\xee\x11', + -0x11ee: b'\x11\xee\x12', + -0x11ed: b'\x11\xee\x13', + -0x11ec: b'\x11\xee\x14', + -0x11eb: b'\x11\xee\x15', + -0x11ea: b'\x11\xee\x16', + -0x11e9: b'\x11\xee\x17', + -0x11e8: b'\x11\xee\x18', + -0x11e7: b'\x11\xee\x19', + -0x11e6: b'\x11\xee\x1a', + -0x11e5: b'\x11\xee\x1b', + -0x11e4: b'\x11\xee\x1c', + -0x11e3: b'\x11\xee\x1d', + -0x11e2: b'\x11\xee\x1e', + -0x11e1: b'\x11\xee\x1f', + -0x11e0: b'\x11\xee ', + -0x11df: b'\x11\xee!', + -0x11de: b'\x11\xee"', + -0x11dd: b'\x11\xee#', + -0x11dc: b'\x11\xee$', + -0x11db: b'\x11\xee%', + -0x11da: b'\x11\xee&', + -0x11d9: b"\x11\xee'", + -0x11d8: b'\x11\xee(', + -0x11d7: b'\x11\xee)', + -0x11d6: b'\x11\xee*', + -0x11d5: b'\x11\xee+', + -0x11d4: b'\x11\xee,', + -0x11d3: b'\x11\xee-', + -0x11d2: b'\x11\xee.', + -0x11d1: b'\x11\xee/', + -0x11d0: b'\x11\xee0', + -0x11cf: b'\x11\xee1', + -0x11ce: b'\x11\xee2', + -0x11cd: b'\x11\xee3', + -0x11cc: b'\x11\xee4', + -0x11cb: b'\x11\xee5', + -0x11ca: b'\x11\xee6', + -0x11c9: b'\x11\xee7', + -0x11c8: b'\x11\xee8', + -0x11c7: b'\x11\xee9', + -0x11c6: b'\x11\xee:', + -0x11c5: b'\x11\xee;', + -0x11c4: b'\x11\xee<', + -0x11c3: b'\x11\xee=', + -0x11c2: b'\x11\xee>', + -0x11c1: b'\x11\xee?', + -0x11c0: b'\x11\xee@', + -0x11bf: b'\x11\xeeA', + -0x11be: b'\x11\xeeB', + -0x11bd: b'\x11\xeeC', + -0x11bc: b'\x11\xeeD', + -0x11bb: b'\x11\xeeE', + -0x11ba: b'\x11\xeeF', + -0x11b9: b'\x11\xeeG', + -0x11b8: b'\x11\xeeH', + -0x11b7: b'\x11\xeeI', + -0x11b6: b'\x11\xeeJ', + -0x11b5: b'\x11\xeeK', + -0x11b4: b'\x11\xeeL', + -0x11b3: b'\x11\xeeM', + -0x11b2: b'\x11\xeeN', + -0x11b1: b'\x11\xeeO', + -0x11b0: b'\x11\xeeP', + -0x11af: b'\x11\xeeQ', + -0x11ae: b'\x11\xeeR', + -0x11ad: b'\x11\xeeS', + -0x11ac: b'\x11\xeeT', + -0x11ab: b'\x11\xeeU', + -0x11aa: b'\x11\xeeV', + -0x11a9: b'\x11\xeeW', + -0x11a8: b'\x11\xeeX', + -0x11a7: b'\x11\xeeY', + -0x11a6: b'\x11\xeeZ', + -0x11a5: b'\x11\xee[', + -0x11a4: b'\x11\xee\\', + -0x11a3: b'\x11\xee]', + -0x11a2: b'\x11\xee^', + -0x11a1: b'\x11\xee_', + -0x11a0: b'\x11\xee`', + -0x119f: b'\x11\xeea', + -0x119e: b'\x11\xeeb', + -0x119d: b'\x11\xeec', + -0x119c: b'\x11\xeed', + -0x119b: b'\x11\xeee', + -0x119a: b'\x11\xeef', + -0x1199: b'\x11\xeeg', + -0x1198: b'\x11\xeeh', + -0x1197: b'\x11\xeei', + -0x1196: b'\x11\xeej', + -0x1195: b'\x11\xeek', + -0x1194: b'\x11\xeel', + -0x1193: b'\x11\xeem', + -0x1192: b'\x11\xeen', + -0x1191: b'\x11\xeeo', + -0x1190: b'\x11\xeep', + -0x118f: b'\x11\xeeq', + -0x118e: b'\x11\xeer', + -0x118d: b'\x11\xees', + -0x118c: b'\x11\xeet', + -0x118b: b'\x11\xeeu', + -0x118a: b'\x11\xeev', + -0x1189: b'\x11\xeew', + -0x1188: b'\x11\xeex', + -0x1187: b'\x11\xeey', + -0x1186: b'\x11\xeez', + -0x1185: b'\x11\xee{', + -0x1184: b'\x11\xee|', + -0x1183: b'\x11\xee}', + -0x1182: b'\x11\xee~', + -0x1181: b'\x11\xee\x7f', + -0x1180: b'\x11\xee\x80', + -0x117f: b'\x11\xee\x81', + -0x117e: b'\x11\xee\x82', + -0x117d: b'\x11\xee\x83', + -0x117c: b'\x11\xee\x84', + -0x117b: b'\x11\xee\x85', + -0x117a: b'\x11\xee\x86', + -0x1179: b'\x11\xee\x87', + -0x1178: b'\x11\xee\x88', + -0x1177: b'\x11\xee\x89', + -0x1176: b'\x11\xee\x8a', + -0x1175: b'\x11\xee\x8b', + -0x1174: b'\x11\xee\x8c', + -0x1173: b'\x11\xee\x8d', + -0x1172: b'\x11\xee\x8e', + -0x1171: b'\x11\xee\x8f', + -0x1170: b'\x11\xee\x90', + -0x116f: b'\x11\xee\x91', + -0x116e: b'\x11\xee\x92', + -0x116d: b'\x11\xee\x93', + -0x116c: b'\x11\xee\x94', + -0x116b: b'\x11\xee\x95', + -0x116a: b'\x11\xee\x96', + -0x1169: b'\x11\xee\x97', + -0x1168: b'\x11\xee\x98', + -0x1167: b'\x11\xee\x99', + -0x1166: b'\x11\xee\x9a', + -0x1165: b'\x11\xee\x9b', + -0x1164: b'\x11\xee\x9c', + -0x1163: b'\x11\xee\x9d', + -0x1162: b'\x11\xee\x9e', + -0x1161: b'\x11\xee\x9f', + -0x1160: b'\x11\xee\xa0', + -0x115f: b'\x11\xee\xa1', + -0x115e: b'\x11\xee\xa2', + -0x115d: b'\x11\xee\xa3', + -0x115c: b'\x11\xee\xa4', + -0x115b: b'\x11\xee\xa5', + -0x115a: b'\x11\xee\xa6', + -0x1159: b'\x11\xee\xa7', + -0x1158: b'\x11\xee\xa8', + -0x1157: b'\x11\xee\xa9', + -0x1156: b'\x11\xee\xaa', + -0x1155: b'\x11\xee\xab', + -0x1154: b'\x11\xee\xac', + -0x1153: b'\x11\xee\xad', + -0x1152: b'\x11\xee\xae', + -0x1151: b'\x11\xee\xaf', + -0x1150: b'\x11\xee\xb0', + -0x114f: b'\x11\xee\xb1', + -0x114e: b'\x11\xee\xb2', + -0x114d: b'\x11\xee\xb3', + -0x114c: b'\x11\xee\xb4', + -0x114b: b'\x11\xee\xb5', + -0x114a: b'\x11\xee\xb6', + -0x1149: b'\x11\xee\xb7', + -0x1148: b'\x11\xee\xb8', + -0x1147: b'\x11\xee\xb9', + -0x1146: b'\x11\xee\xba', + -0x1145: b'\x11\xee\xbb', + -0x1144: b'\x11\xee\xbc', + -0x1143: b'\x11\xee\xbd', + -0x1142: b'\x11\xee\xbe', + -0x1141: b'\x11\xee\xbf', + -0x1140: b'\x11\xee\xc0', + -0x113f: b'\x11\xee\xc1', + -0x113e: b'\x11\xee\xc2', + -0x113d: b'\x11\xee\xc3', + -0x113c: b'\x11\xee\xc4', + -0x113b: b'\x11\xee\xc5', + -0x113a: b'\x11\xee\xc6', + -0x1139: b'\x11\xee\xc7', + -0x1138: b'\x11\xee\xc8', + -0x1137: b'\x11\xee\xc9', + -0x1136: b'\x11\xee\xca', + -0x1135: b'\x11\xee\xcb', + -0x1134: b'\x11\xee\xcc', + -0x1133: b'\x11\xee\xcd', + -0x1132: b'\x11\xee\xce', + -0x1131: b'\x11\xee\xcf', + -0x1130: b'\x11\xee\xd0', + -0x112f: b'\x11\xee\xd1', + -0x112e: b'\x11\xee\xd2', + -0x112d: b'\x11\xee\xd3', + -0x112c: b'\x11\xee\xd4', + -0x112b: b'\x11\xee\xd5', + -0x112a: b'\x11\xee\xd6', + -0x1129: b'\x11\xee\xd7', + -0x1128: b'\x11\xee\xd8', + -0x1127: b'\x11\xee\xd9', + -0x1126: b'\x11\xee\xda', + -0x1125: b'\x11\xee\xdb', + -0x1124: b'\x11\xee\xdc', + -0x1123: b'\x11\xee\xdd', + -0x1122: b'\x11\xee\xde', + -0x1121: b'\x11\xee\xdf', + -0x1120: b'\x11\xee\xe0', + -0x111f: b'\x11\xee\xe1', + -0x111e: b'\x11\xee\xe2', + -0x111d: b'\x11\xee\xe3', + -0x111c: b'\x11\xee\xe4', + -0x111b: b'\x11\xee\xe5', + -0x111a: b'\x11\xee\xe6', + -0x1119: b'\x11\xee\xe7', + -0x1118: b'\x11\xee\xe8', + -0x1117: b'\x11\xee\xe9', + -0x1116: b'\x11\xee\xea', + -0x1115: b'\x11\xee\xeb', + -0x1114: b'\x11\xee\xec', + -0x1113: b'\x11\xee\xed', + -0x1112: b'\x11\xee\xee', + -0x1111: b'\x11\xee\xef', + -0x1110: b'\x11\xee\xf0', + -0x110f: b'\x11\xee\xf1', + -0x110e: b'\x11\xee\xf2', + -0x110d: b'\x11\xee\xf3', + -0x110c: b'\x11\xee\xf4', + -0x110b: b'\x11\xee\xf5', + -0x110a: b'\x11\xee\xf6', + -0x1109: b'\x11\xee\xf7', + -0x1108: b'\x11\xee\xf8', + -0x1107: b'\x11\xee\xf9', + -0x1106: b'\x11\xee\xfa', + -0x1105: b'\x11\xee\xfb', + -0x1104: b'\x11\xee\xfc', + -0x1103: b'\x11\xee\xfd', + -0x1102: b'\x11\xee\xfe', + -0x1101: b'\x11\xee\xff', + -0x1100: b'\x11\xef\x00', + -0x10ff: b'\x11\xef\x01', + -0x10fe: b'\x11\xef\x02', + -0x10fd: b'\x11\xef\x03', + -0x10fc: b'\x11\xef\x04', + -0x10fb: b'\x11\xef\x05', + -0x10fa: b'\x11\xef\x06', + -0x10f9: b'\x11\xef\x07', + -0x10f8: b'\x11\xef\x08', + -0x10f7: b'\x11\xef\t', + -0x10f6: b'\x11\xef\n', + -0x10f5: b'\x11\xef\x0b', + -0x10f4: b'\x11\xef\x0c', + -0x10f3: b'\x11\xef\r', + -0x10f2: b'\x11\xef\x0e', + -0x10f1: b'\x11\xef\x0f', + -0x10f0: b'\x11\xef\x10', + -0x10ef: b'\x11\xef\x11', + -0x10ee: b'\x11\xef\x12', + -0x10ed: b'\x11\xef\x13', + -0x10ec: b'\x11\xef\x14', + -0x10eb: b'\x11\xef\x15', + -0x10ea: b'\x11\xef\x16', + -0x10e9: b'\x11\xef\x17', + -0x10e8: b'\x11\xef\x18', + -0x10e7: b'\x11\xef\x19', + -0x10e6: b'\x11\xef\x1a', + -0x10e5: b'\x11\xef\x1b', + -0x10e4: b'\x11\xef\x1c', + -0x10e3: b'\x11\xef\x1d', + -0x10e2: b'\x11\xef\x1e', + -0x10e1: b'\x11\xef\x1f', + -0x10e0: b'\x11\xef ', + -0x10df: b'\x11\xef!', + -0x10de: b'\x11\xef"', + -0x10dd: b'\x11\xef#', + -0x10dc: b'\x11\xef$', + -0x10db: b'\x11\xef%', + -0x10da: b'\x11\xef&', + -0x10d9: b"\x11\xef'", + -0x10d8: b'\x11\xef(', + -0x10d7: b'\x11\xef)', + -0x10d6: b'\x11\xef*', + -0x10d5: b'\x11\xef+', + -0x10d4: b'\x11\xef,', + -0x10d3: b'\x11\xef-', + -0x10d2: b'\x11\xef.', + -0x10d1: b'\x11\xef/', + -0x10d0: b'\x11\xef0', + -0x10cf: b'\x11\xef1', + -0x10ce: b'\x11\xef2', + -0x10cd: b'\x11\xef3', + -0x10cc: b'\x11\xef4', + -0x10cb: b'\x11\xef5', + -0x10ca: b'\x11\xef6', + -0x10c9: b'\x11\xef7', + -0x10c8: b'\x11\xef8', + -0x10c7: b'\x11\xef9', + -0x10c6: b'\x11\xef:', + -0x10c5: b'\x11\xef;', + -0x10c4: b'\x11\xef<', + -0x10c3: b'\x11\xef=', + -0x10c2: b'\x11\xef>', + -0x10c1: b'\x11\xef?', + -0x10c0: b'\x11\xef@', + -0x10bf: b'\x11\xefA', + -0x10be: b'\x11\xefB', + -0x10bd: b'\x11\xefC', + -0x10bc: b'\x11\xefD', + -0x10bb: b'\x11\xefE', + -0x10ba: b'\x11\xefF', + -0x10b9: b'\x11\xefG', + -0x10b8: b'\x11\xefH', + -0x10b7: b'\x11\xefI', + -0x10b6: b'\x11\xefJ', + -0x10b5: b'\x11\xefK', + -0x10b4: b'\x11\xefL', + -0x10b3: b'\x11\xefM', + -0x10b2: b'\x11\xefN', + -0x10b1: b'\x11\xefO', + -0x10b0: b'\x11\xefP', + -0x10af: b'\x11\xefQ', + -0x10ae: b'\x11\xefR', + -0x10ad: b'\x11\xefS', + -0x10ac: b'\x11\xefT', + -0x10ab: b'\x11\xefU', + -0x10aa: b'\x11\xefV', + -0x10a9: b'\x11\xefW', + -0x10a8: b'\x11\xefX', + -0x10a7: b'\x11\xefY', + -0x10a6: b'\x11\xefZ', + -0x10a5: b'\x11\xef[', + -0x10a4: b'\x11\xef\\', + -0x10a3: b'\x11\xef]', + -0x10a2: b'\x11\xef^', + -0x10a1: b'\x11\xef_', + -0x10a0: b'\x11\xef`', + -0x109f: b'\x11\xefa', + -0x109e: b'\x11\xefb', + -0x109d: b'\x11\xefc', + -0x109c: b'\x11\xefd', + -0x109b: b'\x11\xefe', + -0x109a: b'\x11\xeff', + -0x1099: b'\x11\xefg', + -0x1098: b'\x11\xefh', + -0x1097: b'\x11\xefi', + -0x1096: b'\x11\xefj', + -0x1095: b'\x11\xefk', + -0x1094: b'\x11\xefl', + -0x1093: b'\x11\xefm', + -0x1092: b'\x11\xefn', + -0x1091: b'\x11\xefo', + -0x1090: b'\x11\xefp', + -0x108f: b'\x11\xefq', + -0x108e: b'\x11\xefr', + -0x108d: b'\x11\xefs', + -0x108c: b'\x11\xeft', + -0x108b: b'\x11\xefu', + -0x108a: b'\x11\xefv', + -0x1089: b'\x11\xefw', + -0x1088: b'\x11\xefx', + -0x1087: b'\x11\xefy', + -0x1086: b'\x11\xefz', + -0x1085: b'\x11\xef{', + -0x1084: b'\x11\xef|', + -0x1083: b'\x11\xef}', + -0x1082: b'\x11\xef~', + -0x1081: b'\x11\xef\x7f', + -0x1080: b'\x11\xef\x80', + -0x107f: b'\x11\xef\x81', + -0x107e: b'\x11\xef\x82', + -0x107d: b'\x11\xef\x83', + -0x107c: b'\x11\xef\x84', + -0x107b: b'\x11\xef\x85', + -0x107a: b'\x11\xef\x86', + -0x1079: b'\x11\xef\x87', + -0x1078: b'\x11\xef\x88', + -0x1077: b'\x11\xef\x89', + -0x1076: b'\x11\xef\x8a', + -0x1075: b'\x11\xef\x8b', + -0x1074: b'\x11\xef\x8c', + -0x1073: b'\x11\xef\x8d', + -0x1072: b'\x11\xef\x8e', + -0x1071: b'\x11\xef\x8f', + -0x1070: b'\x11\xef\x90', + -0x106f: b'\x11\xef\x91', + -0x106e: b'\x11\xef\x92', + -0x106d: b'\x11\xef\x93', + -0x106c: b'\x11\xef\x94', + -0x106b: b'\x11\xef\x95', + -0x106a: b'\x11\xef\x96', + -0x1069: b'\x11\xef\x97', + -0x1068: b'\x11\xef\x98', + -0x1067: b'\x11\xef\x99', + -0x1066: b'\x11\xef\x9a', + -0x1065: b'\x11\xef\x9b', + -0x1064: b'\x11\xef\x9c', + -0x1063: b'\x11\xef\x9d', + -0x1062: b'\x11\xef\x9e', + -0x1061: b'\x11\xef\x9f', + -0x1060: b'\x11\xef\xa0', + -0x105f: b'\x11\xef\xa1', + -0x105e: b'\x11\xef\xa2', + -0x105d: b'\x11\xef\xa3', + -0x105c: b'\x11\xef\xa4', + -0x105b: b'\x11\xef\xa5', + -0x105a: b'\x11\xef\xa6', + -0x1059: b'\x11\xef\xa7', + -0x1058: b'\x11\xef\xa8', + -0x1057: b'\x11\xef\xa9', + -0x1056: b'\x11\xef\xaa', + -0x1055: b'\x11\xef\xab', + -0x1054: b'\x11\xef\xac', + -0x1053: b'\x11\xef\xad', + -0x1052: b'\x11\xef\xae', + -0x1051: b'\x11\xef\xaf', + -0x1050: b'\x11\xef\xb0', + -0x104f: b'\x11\xef\xb1', + -0x104e: b'\x11\xef\xb2', + -0x104d: b'\x11\xef\xb3', + -0x104c: b'\x11\xef\xb4', + -0x104b: b'\x11\xef\xb5', + -0x104a: b'\x11\xef\xb6', + -0x1049: b'\x11\xef\xb7', + -0x1048: b'\x11\xef\xb8', + -0x1047: b'\x11\xef\xb9', + -0x1046: b'\x11\xef\xba', + -0x1045: b'\x11\xef\xbb', + -0x1044: b'\x11\xef\xbc', + -0x1043: b'\x11\xef\xbd', + -0x1042: b'\x11\xef\xbe', + -0x1041: b'\x11\xef\xbf', + -0x1040: b'\x11\xef\xc0', + -0x103f: b'\x11\xef\xc1', + -0x103e: b'\x11\xef\xc2', + -0x103d: b'\x11\xef\xc3', + -0x103c: b'\x11\xef\xc4', + -0x103b: b'\x11\xef\xc5', + -0x103a: b'\x11\xef\xc6', + -0x1039: b'\x11\xef\xc7', + -0x1038: b'\x11\xef\xc8', + -0x1037: b'\x11\xef\xc9', + -0x1036: b'\x11\xef\xca', + -0x1035: b'\x11\xef\xcb', + -0x1034: b'\x11\xef\xcc', + -0x1033: b'\x11\xef\xcd', + -0x1032: b'\x11\xef\xce', + -0x1031: b'\x11\xef\xcf', + -0x1030: b'\x11\xef\xd0', + -0x102f: b'\x11\xef\xd1', + -0x102e: b'\x11\xef\xd2', + -0x102d: b'\x11\xef\xd3', + -0x102c: b'\x11\xef\xd4', + -0x102b: b'\x11\xef\xd5', + -0x102a: b'\x11\xef\xd6', + -0x1029: b'\x11\xef\xd7', + -0x1028: b'\x11\xef\xd8', + -0x1027: b'\x11\xef\xd9', + -0x1026: b'\x11\xef\xda', + -0x1025: b'\x11\xef\xdb', + -0x1024: b'\x11\xef\xdc', + -0x1023: b'\x11\xef\xdd', + -0x1022: b'\x11\xef\xde', + -0x1021: b'\x11\xef\xdf', + -0x1020: b'\x11\xef\xe0', + -0x101f: b'\x11\xef\xe1', + -0x101e: b'\x11\xef\xe2', + -0x101d: b'\x11\xef\xe3', + -0x101c: b'\x11\xef\xe4', + -0x101b: b'\x11\xef\xe5', + -0x101a: b'\x11\xef\xe6', + -0x1019: b'\x11\xef\xe7', + -0x1018: b'\x11\xef\xe8', + -0x1017: b'\x11\xef\xe9', + -0x1016: b'\x11\xef\xea', + -0x1015: b'\x11\xef\xeb', + -0x1014: b'\x11\xef\xec', + -0x1013: b'\x11\xef\xed', + -0x1012: b'\x11\xef\xee', + -0x1011: b'\x11\xef\xef', + -0x1010: b'\x11\xef\xf0', + -0x100f: b'\x11\xef\xf1', + -0x100e: b'\x11\xef\xf2', + -0x100d: b'\x11\xef\xf3', + -0x100c: b'\x11\xef\xf4', + -0x100b: b'\x11\xef\xf5', + -0x100a: b'\x11\xef\xf6', + -0x1009: b'\x11\xef\xf7', + -0x1008: b'\x11\xef\xf8', + -0x1007: b'\x11\xef\xf9', + -0x1006: b'\x11\xef\xfa', + -0x1005: b'\x11\xef\xfb', + -0x1004: b'\x11\xef\xfc', + -0x1003: b'\x11\xef\xfd', + -0x1002: b'\x11\xef\xfe', + -0x1001: b'\x11\xef\xff', + -0x1000: b'\x11\xf0\x00', + -0xfff: b'\x11\xf0\x01', + -0xffe: b'\x11\xf0\x02', + -0xffd: b'\x11\xf0\x03', + -0xffc: b'\x11\xf0\x04', + -0xffb: b'\x11\xf0\x05', + -0xffa: b'\x11\xf0\x06', + -0xff9: b'\x11\xf0\x07', + -0xff8: b'\x11\xf0\x08', + -0xff7: b'\x11\xf0\t', + -0xff6: b'\x11\xf0\n', + -0xff5: b'\x11\xf0\x0b', + -0xff4: b'\x11\xf0\x0c', + -0xff3: b'\x11\xf0\r', + -0xff2: b'\x11\xf0\x0e', + -0xff1: b'\x11\xf0\x0f', + -0xff0: b'\x11\xf0\x10', + -0xfef: b'\x11\xf0\x11', + -0xfee: b'\x11\xf0\x12', + -0xfed: b'\x11\xf0\x13', + -0xfec: b'\x11\xf0\x14', + -0xfeb: b'\x11\xf0\x15', + -0xfea: b'\x11\xf0\x16', + -0xfe9: b'\x11\xf0\x17', + -0xfe8: b'\x11\xf0\x18', + -0xfe7: b'\x11\xf0\x19', + -0xfe6: b'\x11\xf0\x1a', + -0xfe5: b'\x11\xf0\x1b', + -0xfe4: b'\x11\xf0\x1c', + -0xfe3: b'\x11\xf0\x1d', + -0xfe2: b'\x11\xf0\x1e', + -0xfe1: b'\x11\xf0\x1f', + -0xfe0: b'\x11\xf0 ', + -0xfdf: b'\x11\xf0!', + -0xfde: b'\x11\xf0"', + -0xfdd: b'\x11\xf0#', + -0xfdc: b'\x11\xf0$', + -0xfdb: b'\x11\xf0%', + -0xfda: b'\x11\xf0&', + -0xfd9: b"\x11\xf0'", + -0xfd8: b'\x11\xf0(', + -0xfd7: b'\x11\xf0)', + -0xfd6: b'\x11\xf0*', + -0xfd5: b'\x11\xf0+', + -0xfd4: b'\x11\xf0,', + -0xfd3: b'\x11\xf0-', + -0xfd2: b'\x11\xf0.', + -0xfd1: b'\x11\xf0/', + -0xfd0: b'\x11\xf00', + -0xfcf: b'\x11\xf01', + -0xfce: b'\x11\xf02', + -0xfcd: b'\x11\xf03', + -0xfcc: b'\x11\xf04', + -0xfcb: b'\x11\xf05', + -0xfca: b'\x11\xf06', + -0xfc9: b'\x11\xf07', + -0xfc8: b'\x11\xf08', + -0xfc7: b'\x11\xf09', + -0xfc6: b'\x11\xf0:', + -0xfc5: b'\x11\xf0;', + -0xfc4: b'\x11\xf0<', + -0xfc3: b'\x11\xf0=', + -0xfc2: b'\x11\xf0>', + -0xfc1: b'\x11\xf0?', + -0xfc0: b'\x11\xf0@', + -0xfbf: b'\x11\xf0A', + -0xfbe: b'\x11\xf0B', + -0xfbd: b'\x11\xf0C', + -0xfbc: b'\x11\xf0D', + -0xfbb: b'\x11\xf0E', + -0xfba: b'\x11\xf0F', + -0xfb9: b'\x11\xf0G', + -0xfb8: b'\x11\xf0H', + -0xfb7: b'\x11\xf0I', + -0xfb6: b'\x11\xf0J', + -0xfb5: b'\x11\xf0K', + -0xfb4: b'\x11\xf0L', + -0xfb3: b'\x11\xf0M', + -0xfb2: b'\x11\xf0N', + -0xfb1: b'\x11\xf0O', + -0xfb0: b'\x11\xf0P', + -0xfaf: b'\x11\xf0Q', + -0xfae: b'\x11\xf0R', + -0xfad: b'\x11\xf0S', + -0xfac: b'\x11\xf0T', + -0xfab: b'\x11\xf0U', + -0xfaa: b'\x11\xf0V', + -0xfa9: b'\x11\xf0W', + -0xfa8: b'\x11\xf0X', + -0xfa7: b'\x11\xf0Y', + -0xfa6: b'\x11\xf0Z', + -0xfa5: b'\x11\xf0[', + -0xfa4: b'\x11\xf0\\', + -0xfa3: b'\x11\xf0]', + -0xfa2: b'\x11\xf0^', + -0xfa1: b'\x11\xf0_', + -0xfa0: b'\x11\xf0`', + -0xf9f: b'\x11\xf0a', + -0xf9e: b'\x11\xf0b', + -0xf9d: b'\x11\xf0c', + -0xf9c: b'\x11\xf0d', + -0xf9b: b'\x11\xf0e', + -0xf9a: b'\x11\xf0f', + -0xf99: b'\x11\xf0g', + -0xf98: b'\x11\xf0h', + -0xf97: b'\x11\xf0i', + -0xf96: b'\x11\xf0j', + -0xf95: b'\x11\xf0k', + -0xf94: b'\x11\xf0l', + -0xf93: b'\x11\xf0m', + -0xf92: b'\x11\xf0n', + -0xf91: b'\x11\xf0o', + -0xf90: b'\x11\xf0p', + -0xf8f: b'\x11\xf0q', + -0xf8e: b'\x11\xf0r', + -0xf8d: b'\x11\xf0s', + -0xf8c: b'\x11\xf0t', + -0xf8b: b'\x11\xf0u', + -0xf8a: b'\x11\xf0v', + -0xf89: b'\x11\xf0w', + -0xf88: b'\x11\xf0x', + -0xf87: b'\x11\xf0y', + -0xf86: b'\x11\xf0z', + -0xf85: b'\x11\xf0{', + -0xf84: b'\x11\xf0|', + -0xf83: b'\x11\xf0}', + -0xf82: b'\x11\xf0~', + -0xf81: b'\x11\xf0\x7f', + -0xf80: b'\x11\xf0\x80', + -0xf7f: b'\x11\xf0\x81', + -0xf7e: b'\x11\xf0\x82', + -0xf7d: b'\x11\xf0\x83', + -0xf7c: b'\x11\xf0\x84', + -0xf7b: b'\x11\xf0\x85', + -0xf7a: b'\x11\xf0\x86', + -0xf79: b'\x11\xf0\x87', + -0xf78: b'\x11\xf0\x88', + -0xf77: b'\x11\xf0\x89', + -0xf76: b'\x11\xf0\x8a', + -0xf75: b'\x11\xf0\x8b', + -0xf74: b'\x11\xf0\x8c', + -0xf73: b'\x11\xf0\x8d', + -0xf72: b'\x11\xf0\x8e', + -0xf71: b'\x11\xf0\x8f', + -0xf70: b'\x11\xf0\x90', + -0xf6f: b'\x11\xf0\x91', + -0xf6e: b'\x11\xf0\x92', + -0xf6d: b'\x11\xf0\x93', + -0xf6c: b'\x11\xf0\x94', + -0xf6b: b'\x11\xf0\x95', + -0xf6a: b'\x11\xf0\x96', + -0xf69: b'\x11\xf0\x97', + -0xf68: b'\x11\xf0\x98', + -0xf67: b'\x11\xf0\x99', + -0xf66: b'\x11\xf0\x9a', + -0xf65: b'\x11\xf0\x9b', + -0xf64: b'\x11\xf0\x9c', + -0xf63: b'\x11\xf0\x9d', + -0xf62: b'\x11\xf0\x9e', + -0xf61: b'\x11\xf0\x9f', + -0xf60: b'\x11\xf0\xa0', + -0xf5f: b'\x11\xf0\xa1', + -0xf5e: b'\x11\xf0\xa2', + -0xf5d: b'\x11\xf0\xa3', + -0xf5c: b'\x11\xf0\xa4', + -0xf5b: b'\x11\xf0\xa5', + -0xf5a: b'\x11\xf0\xa6', + -0xf59: b'\x11\xf0\xa7', + -0xf58: b'\x11\xf0\xa8', + -0xf57: b'\x11\xf0\xa9', + -0xf56: b'\x11\xf0\xaa', + -0xf55: b'\x11\xf0\xab', + -0xf54: b'\x11\xf0\xac', + -0xf53: b'\x11\xf0\xad', + -0xf52: b'\x11\xf0\xae', + -0xf51: b'\x11\xf0\xaf', + -0xf50: b'\x11\xf0\xb0', + -0xf4f: b'\x11\xf0\xb1', + -0xf4e: b'\x11\xf0\xb2', + -0xf4d: b'\x11\xf0\xb3', + -0xf4c: b'\x11\xf0\xb4', + -0xf4b: b'\x11\xf0\xb5', + -0xf4a: b'\x11\xf0\xb6', + -0xf49: b'\x11\xf0\xb7', + -0xf48: b'\x11\xf0\xb8', + -0xf47: b'\x11\xf0\xb9', + -0xf46: b'\x11\xf0\xba', + -0xf45: b'\x11\xf0\xbb', + -0xf44: b'\x11\xf0\xbc', + -0xf43: b'\x11\xf0\xbd', + -0xf42: b'\x11\xf0\xbe', + -0xf41: b'\x11\xf0\xbf', + -0xf40: b'\x11\xf0\xc0', + -0xf3f: b'\x11\xf0\xc1', + -0xf3e: b'\x11\xf0\xc2', + -0xf3d: b'\x11\xf0\xc3', + -0xf3c: b'\x11\xf0\xc4', + -0xf3b: b'\x11\xf0\xc5', + -0xf3a: b'\x11\xf0\xc6', + -0xf39: b'\x11\xf0\xc7', + -0xf38: b'\x11\xf0\xc8', + -0xf37: b'\x11\xf0\xc9', + -0xf36: b'\x11\xf0\xca', + -0xf35: b'\x11\xf0\xcb', + -0xf34: b'\x11\xf0\xcc', + -0xf33: b'\x11\xf0\xcd', + -0xf32: b'\x11\xf0\xce', + -0xf31: b'\x11\xf0\xcf', + -0xf30: b'\x11\xf0\xd0', + -0xf2f: b'\x11\xf0\xd1', + -0xf2e: b'\x11\xf0\xd2', + -0xf2d: b'\x11\xf0\xd3', + -0xf2c: b'\x11\xf0\xd4', + -0xf2b: b'\x11\xf0\xd5', + -0xf2a: b'\x11\xf0\xd6', + -0xf29: b'\x11\xf0\xd7', + -0xf28: b'\x11\xf0\xd8', + -0xf27: b'\x11\xf0\xd9', + -0xf26: b'\x11\xf0\xda', + -0xf25: b'\x11\xf0\xdb', + -0xf24: b'\x11\xf0\xdc', + -0xf23: b'\x11\xf0\xdd', + -0xf22: b'\x11\xf0\xde', + -0xf21: b'\x11\xf0\xdf', + -0xf20: b'\x11\xf0\xe0', + -0xf1f: b'\x11\xf0\xe1', + -0xf1e: b'\x11\xf0\xe2', + -0xf1d: b'\x11\xf0\xe3', + -0xf1c: b'\x11\xf0\xe4', + -0xf1b: b'\x11\xf0\xe5', + -0xf1a: b'\x11\xf0\xe6', + -0xf19: b'\x11\xf0\xe7', + -0xf18: b'\x11\xf0\xe8', + -0xf17: b'\x11\xf0\xe9', + -0xf16: b'\x11\xf0\xea', + -0xf15: b'\x11\xf0\xeb', + -0xf14: b'\x11\xf0\xec', + -0xf13: b'\x11\xf0\xed', + -0xf12: b'\x11\xf0\xee', + -0xf11: b'\x11\xf0\xef', + -0xf10: b'\x11\xf0\xf0', + -0xf0f: b'\x11\xf0\xf1', + -0xf0e: b'\x11\xf0\xf2', + -0xf0d: b'\x11\xf0\xf3', + -0xf0c: b'\x11\xf0\xf4', + -0xf0b: b'\x11\xf0\xf5', + -0xf0a: b'\x11\xf0\xf6', + -0xf09: b'\x11\xf0\xf7', + -0xf08: b'\x11\xf0\xf8', + -0xf07: b'\x11\xf0\xf9', + -0xf06: b'\x11\xf0\xfa', + -0xf05: b'\x11\xf0\xfb', + -0xf04: b'\x11\xf0\xfc', + -0xf03: b'\x11\xf0\xfd', + -0xf02: b'\x11\xf0\xfe', + -0xf01: b'\x11\xf0\xff', + -0xf00: b'\x11\xf1\x00', + -0xeff: b'\x11\xf1\x01', + -0xefe: b'\x11\xf1\x02', + -0xefd: b'\x11\xf1\x03', + -0xefc: b'\x11\xf1\x04', + -0xefb: b'\x11\xf1\x05', + -0xefa: b'\x11\xf1\x06', + -0xef9: b'\x11\xf1\x07', + -0xef8: b'\x11\xf1\x08', + -0xef7: b'\x11\xf1\t', + -0xef6: b'\x11\xf1\n', + -0xef5: b'\x11\xf1\x0b', + -0xef4: b'\x11\xf1\x0c', + -0xef3: b'\x11\xf1\r', + -0xef2: b'\x11\xf1\x0e', + -0xef1: b'\x11\xf1\x0f', + -0xef0: b'\x11\xf1\x10', + -0xeef: b'\x11\xf1\x11', + -0xeee: b'\x11\xf1\x12', + -0xeed: b'\x11\xf1\x13', + -0xeec: b'\x11\xf1\x14', + -0xeeb: b'\x11\xf1\x15', + -0xeea: b'\x11\xf1\x16', + -0xee9: b'\x11\xf1\x17', + -0xee8: b'\x11\xf1\x18', + -0xee7: b'\x11\xf1\x19', + -0xee6: b'\x11\xf1\x1a', + -0xee5: b'\x11\xf1\x1b', + -0xee4: b'\x11\xf1\x1c', + -0xee3: b'\x11\xf1\x1d', + -0xee2: b'\x11\xf1\x1e', + -0xee1: b'\x11\xf1\x1f', + -0xee0: b'\x11\xf1 ', + -0xedf: b'\x11\xf1!', + -0xede: b'\x11\xf1"', + -0xedd: b'\x11\xf1#', + -0xedc: b'\x11\xf1$', + -0xedb: b'\x11\xf1%', + -0xeda: b'\x11\xf1&', + -0xed9: b"\x11\xf1'", + -0xed8: b'\x11\xf1(', + -0xed7: b'\x11\xf1)', + -0xed6: b'\x11\xf1*', + -0xed5: b'\x11\xf1+', + -0xed4: b'\x11\xf1,', + -0xed3: b'\x11\xf1-', + -0xed2: b'\x11\xf1.', + -0xed1: b'\x11\xf1/', + -0xed0: b'\x11\xf10', + -0xecf: b'\x11\xf11', + -0xece: b'\x11\xf12', + -0xecd: b'\x11\xf13', + -0xecc: b'\x11\xf14', + -0xecb: b'\x11\xf15', + -0xeca: b'\x11\xf16', + -0xec9: b'\x11\xf17', + -0xec8: b'\x11\xf18', + -0xec7: b'\x11\xf19', + -0xec6: b'\x11\xf1:', + -0xec5: b'\x11\xf1;', + -0xec4: b'\x11\xf1<', + -0xec3: b'\x11\xf1=', + -0xec2: b'\x11\xf1>', + -0xec1: b'\x11\xf1?', + -0xec0: b'\x11\xf1@', + -0xebf: b'\x11\xf1A', + -0xebe: b'\x11\xf1B', + -0xebd: b'\x11\xf1C', + -0xebc: b'\x11\xf1D', + -0xebb: b'\x11\xf1E', + -0xeba: b'\x11\xf1F', + -0xeb9: b'\x11\xf1G', + -0xeb8: b'\x11\xf1H', + -0xeb7: b'\x11\xf1I', + -0xeb6: b'\x11\xf1J', + -0xeb5: b'\x11\xf1K', + -0xeb4: b'\x11\xf1L', + -0xeb3: b'\x11\xf1M', + -0xeb2: b'\x11\xf1N', + -0xeb1: b'\x11\xf1O', + -0xeb0: b'\x11\xf1P', + -0xeaf: b'\x11\xf1Q', + -0xeae: b'\x11\xf1R', + -0xead: b'\x11\xf1S', + -0xeac: b'\x11\xf1T', + -0xeab: b'\x11\xf1U', + -0xeaa: b'\x11\xf1V', + -0xea9: b'\x11\xf1W', + -0xea8: b'\x11\xf1X', + -0xea7: b'\x11\xf1Y', + -0xea6: b'\x11\xf1Z', + -0xea5: b'\x11\xf1[', + -0xea4: b'\x11\xf1\\', + -0xea3: b'\x11\xf1]', + -0xea2: b'\x11\xf1^', + -0xea1: b'\x11\xf1_', + -0xea0: b'\x11\xf1`', + -0xe9f: b'\x11\xf1a', + -0xe9e: b'\x11\xf1b', + -0xe9d: b'\x11\xf1c', + -0xe9c: b'\x11\xf1d', + -0xe9b: b'\x11\xf1e', + -0xe9a: b'\x11\xf1f', + -0xe99: b'\x11\xf1g', + -0xe98: b'\x11\xf1h', + -0xe97: b'\x11\xf1i', + -0xe96: b'\x11\xf1j', + -0xe95: b'\x11\xf1k', + -0xe94: b'\x11\xf1l', + -0xe93: b'\x11\xf1m', + -0xe92: b'\x11\xf1n', + -0xe91: b'\x11\xf1o', + -0xe90: b'\x11\xf1p', + -0xe8f: b'\x11\xf1q', + -0xe8e: b'\x11\xf1r', + -0xe8d: b'\x11\xf1s', + -0xe8c: b'\x11\xf1t', + -0xe8b: b'\x11\xf1u', + -0xe8a: b'\x11\xf1v', + -0xe89: b'\x11\xf1w', + -0xe88: b'\x11\xf1x', + -0xe87: b'\x11\xf1y', + -0xe86: b'\x11\xf1z', + -0xe85: b'\x11\xf1{', + -0xe84: b'\x11\xf1|', + -0xe83: b'\x11\xf1}', + -0xe82: b'\x11\xf1~', + -0xe81: b'\x11\xf1\x7f', + -0xe80: b'\x11\xf1\x80', + -0xe7f: b'\x11\xf1\x81', + -0xe7e: b'\x11\xf1\x82', + -0xe7d: b'\x11\xf1\x83', + -0xe7c: b'\x11\xf1\x84', + -0xe7b: b'\x11\xf1\x85', + -0xe7a: b'\x11\xf1\x86', + -0xe79: b'\x11\xf1\x87', + -0xe78: b'\x11\xf1\x88', + -0xe77: b'\x11\xf1\x89', + -0xe76: b'\x11\xf1\x8a', + -0xe75: b'\x11\xf1\x8b', + -0xe74: b'\x11\xf1\x8c', + -0xe73: b'\x11\xf1\x8d', + -0xe72: b'\x11\xf1\x8e', + -0xe71: b'\x11\xf1\x8f', + -0xe70: b'\x11\xf1\x90', + -0xe6f: b'\x11\xf1\x91', + -0xe6e: b'\x11\xf1\x92', + -0xe6d: b'\x11\xf1\x93', + -0xe6c: b'\x11\xf1\x94', + -0xe6b: b'\x11\xf1\x95', + -0xe6a: b'\x11\xf1\x96', + -0xe69: b'\x11\xf1\x97', + -0xe68: b'\x11\xf1\x98', + -0xe67: b'\x11\xf1\x99', + -0xe66: b'\x11\xf1\x9a', + -0xe65: b'\x11\xf1\x9b', + -0xe64: b'\x11\xf1\x9c', + -0xe63: b'\x11\xf1\x9d', + -0xe62: b'\x11\xf1\x9e', + -0xe61: b'\x11\xf1\x9f', + -0xe60: b'\x11\xf1\xa0', + -0xe5f: b'\x11\xf1\xa1', + -0xe5e: b'\x11\xf1\xa2', + -0xe5d: b'\x11\xf1\xa3', + -0xe5c: b'\x11\xf1\xa4', + -0xe5b: b'\x11\xf1\xa5', + -0xe5a: b'\x11\xf1\xa6', + -0xe59: b'\x11\xf1\xa7', + -0xe58: b'\x11\xf1\xa8', + -0xe57: b'\x11\xf1\xa9', + -0xe56: b'\x11\xf1\xaa', + -0xe55: b'\x11\xf1\xab', + -0xe54: b'\x11\xf1\xac', + -0xe53: b'\x11\xf1\xad', + -0xe52: b'\x11\xf1\xae', + -0xe51: b'\x11\xf1\xaf', + -0xe50: b'\x11\xf1\xb0', + -0xe4f: b'\x11\xf1\xb1', + -0xe4e: b'\x11\xf1\xb2', + -0xe4d: b'\x11\xf1\xb3', + -0xe4c: b'\x11\xf1\xb4', + -0xe4b: b'\x11\xf1\xb5', + -0xe4a: b'\x11\xf1\xb6', + -0xe49: b'\x11\xf1\xb7', + -0xe48: b'\x11\xf1\xb8', + -0xe47: b'\x11\xf1\xb9', + -0xe46: b'\x11\xf1\xba', + -0xe45: b'\x11\xf1\xbb', + -0xe44: b'\x11\xf1\xbc', + -0xe43: b'\x11\xf1\xbd', + -0xe42: b'\x11\xf1\xbe', + -0xe41: b'\x11\xf1\xbf', + -0xe40: b'\x11\xf1\xc0', + -0xe3f: b'\x11\xf1\xc1', + -0xe3e: b'\x11\xf1\xc2', + -0xe3d: b'\x11\xf1\xc3', + -0xe3c: b'\x11\xf1\xc4', + -0xe3b: b'\x11\xf1\xc5', + -0xe3a: b'\x11\xf1\xc6', + -0xe39: b'\x11\xf1\xc7', + -0xe38: b'\x11\xf1\xc8', + -0xe37: b'\x11\xf1\xc9', + -0xe36: b'\x11\xf1\xca', + -0xe35: b'\x11\xf1\xcb', + -0xe34: b'\x11\xf1\xcc', + -0xe33: b'\x11\xf1\xcd', + -0xe32: b'\x11\xf1\xce', + -0xe31: b'\x11\xf1\xcf', + -0xe30: b'\x11\xf1\xd0', + -0xe2f: b'\x11\xf1\xd1', + -0xe2e: b'\x11\xf1\xd2', + -0xe2d: b'\x11\xf1\xd3', + -0xe2c: b'\x11\xf1\xd4', + -0xe2b: b'\x11\xf1\xd5', + -0xe2a: b'\x11\xf1\xd6', + -0xe29: b'\x11\xf1\xd7', + -0xe28: b'\x11\xf1\xd8', + -0xe27: b'\x11\xf1\xd9', + -0xe26: b'\x11\xf1\xda', + -0xe25: b'\x11\xf1\xdb', + -0xe24: b'\x11\xf1\xdc', + -0xe23: b'\x11\xf1\xdd', + -0xe22: b'\x11\xf1\xde', + -0xe21: b'\x11\xf1\xdf', + -0xe20: b'\x11\xf1\xe0', + -0xe1f: b'\x11\xf1\xe1', + -0xe1e: b'\x11\xf1\xe2', + -0xe1d: b'\x11\xf1\xe3', + -0xe1c: b'\x11\xf1\xe4', + -0xe1b: b'\x11\xf1\xe5', + -0xe1a: b'\x11\xf1\xe6', + -0xe19: b'\x11\xf1\xe7', + -0xe18: b'\x11\xf1\xe8', + -0xe17: b'\x11\xf1\xe9', + -0xe16: b'\x11\xf1\xea', + -0xe15: b'\x11\xf1\xeb', + -0xe14: b'\x11\xf1\xec', + -0xe13: b'\x11\xf1\xed', + -0xe12: b'\x11\xf1\xee', + -0xe11: b'\x11\xf1\xef', + -0xe10: b'\x11\xf1\xf0', + -0xe0f: b'\x11\xf1\xf1', + -0xe0e: b'\x11\xf1\xf2', + -0xe0d: b'\x11\xf1\xf3', + -0xe0c: b'\x11\xf1\xf4', + -0xe0b: b'\x11\xf1\xf5', + -0xe0a: b'\x11\xf1\xf6', + -0xe09: b'\x11\xf1\xf7', + -0xe08: b'\x11\xf1\xf8', + -0xe07: b'\x11\xf1\xf9', + -0xe06: b'\x11\xf1\xfa', + -0xe05: b'\x11\xf1\xfb', + -0xe04: b'\x11\xf1\xfc', + -0xe03: b'\x11\xf1\xfd', + -0xe02: b'\x11\xf1\xfe', + -0xe01: b'\x11\xf1\xff', + -0xe00: b'\x11\xf2\x00', + -0xdff: b'\x11\xf2\x01', + -0xdfe: b'\x11\xf2\x02', + -0xdfd: b'\x11\xf2\x03', + -0xdfc: b'\x11\xf2\x04', + -0xdfb: b'\x11\xf2\x05', + -0xdfa: b'\x11\xf2\x06', + -0xdf9: b'\x11\xf2\x07', + -0xdf8: b'\x11\xf2\x08', + -0xdf7: b'\x11\xf2\t', + -0xdf6: b'\x11\xf2\n', + -0xdf5: b'\x11\xf2\x0b', + -0xdf4: b'\x11\xf2\x0c', + -0xdf3: b'\x11\xf2\r', + -0xdf2: b'\x11\xf2\x0e', + -0xdf1: b'\x11\xf2\x0f', + -0xdf0: b'\x11\xf2\x10', + -0xdef: b'\x11\xf2\x11', + -0xdee: b'\x11\xf2\x12', + -0xded: b'\x11\xf2\x13', + -0xdec: b'\x11\xf2\x14', + -0xdeb: b'\x11\xf2\x15', + -0xdea: b'\x11\xf2\x16', + -0xde9: b'\x11\xf2\x17', + -0xde8: b'\x11\xf2\x18', + -0xde7: b'\x11\xf2\x19', + -0xde6: b'\x11\xf2\x1a', + -0xde5: b'\x11\xf2\x1b', + -0xde4: b'\x11\xf2\x1c', + -0xde3: b'\x11\xf2\x1d', + -0xde2: b'\x11\xf2\x1e', + -0xde1: b'\x11\xf2\x1f', + -0xde0: b'\x11\xf2 ', + -0xddf: b'\x11\xf2!', + -0xdde: b'\x11\xf2"', + -0xddd: b'\x11\xf2#', + -0xddc: b'\x11\xf2$', + -0xddb: b'\x11\xf2%', + -0xdda: b'\x11\xf2&', + -0xdd9: b"\x11\xf2'", + -0xdd8: b'\x11\xf2(', + -0xdd7: b'\x11\xf2)', + -0xdd6: b'\x11\xf2*', + -0xdd5: b'\x11\xf2+', + -0xdd4: b'\x11\xf2,', + -0xdd3: b'\x11\xf2-', + -0xdd2: b'\x11\xf2.', + -0xdd1: b'\x11\xf2/', + -0xdd0: b'\x11\xf20', + -0xdcf: b'\x11\xf21', + -0xdce: b'\x11\xf22', + -0xdcd: b'\x11\xf23', + -0xdcc: b'\x11\xf24', + -0xdcb: b'\x11\xf25', + -0xdca: b'\x11\xf26', + -0xdc9: b'\x11\xf27', + -0xdc8: b'\x11\xf28', + -0xdc7: b'\x11\xf29', + -0xdc6: b'\x11\xf2:', + -0xdc5: b'\x11\xf2;', + -0xdc4: b'\x11\xf2<', + -0xdc3: b'\x11\xf2=', + -0xdc2: b'\x11\xf2>', + -0xdc1: b'\x11\xf2?', + -0xdc0: b'\x11\xf2@', + -0xdbf: b'\x11\xf2A', + -0xdbe: b'\x11\xf2B', + -0xdbd: b'\x11\xf2C', + -0xdbc: b'\x11\xf2D', + -0xdbb: b'\x11\xf2E', + -0xdba: b'\x11\xf2F', + -0xdb9: b'\x11\xf2G', + -0xdb8: b'\x11\xf2H', + -0xdb7: b'\x11\xf2I', + -0xdb6: b'\x11\xf2J', + -0xdb5: b'\x11\xf2K', + -0xdb4: b'\x11\xf2L', + -0xdb3: b'\x11\xf2M', + -0xdb2: b'\x11\xf2N', + -0xdb1: b'\x11\xf2O', + -0xdb0: b'\x11\xf2P', + -0xdaf: b'\x11\xf2Q', + -0xdae: b'\x11\xf2R', + -0xdad: b'\x11\xf2S', + -0xdac: b'\x11\xf2T', + -0xdab: b'\x11\xf2U', + -0xdaa: b'\x11\xf2V', + -0xda9: b'\x11\xf2W', + -0xda8: b'\x11\xf2X', + -0xda7: b'\x11\xf2Y', + -0xda6: b'\x11\xf2Z', + -0xda5: b'\x11\xf2[', + -0xda4: b'\x11\xf2\\', + -0xda3: b'\x11\xf2]', + -0xda2: b'\x11\xf2^', + -0xda1: b'\x11\xf2_', + -0xda0: b'\x11\xf2`', + -0xd9f: b'\x11\xf2a', + -0xd9e: b'\x11\xf2b', + -0xd9d: b'\x11\xf2c', + -0xd9c: b'\x11\xf2d', + -0xd9b: b'\x11\xf2e', + -0xd9a: b'\x11\xf2f', + -0xd99: b'\x11\xf2g', + -0xd98: b'\x11\xf2h', + -0xd97: b'\x11\xf2i', + -0xd96: b'\x11\xf2j', + -0xd95: b'\x11\xf2k', + -0xd94: b'\x11\xf2l', + -0xd93: b'\x11\xf2m', + -0xd92: b'\x11\xf2n', + -0xd91: b'\x11\xf2o', + -0xd90: b'\x11\xf2p', + -0xd8f: b'\x11\xf2q', + -0xd8e: b'\x11\xf2r', + -0xd8d: b'\x11\xf2s', + -0xd8c: b'\x11\xf2t', + -0xd8b: b'\x11\xf2u', + -0xd8a: b'\x11\xf2v', + -0xd89: b'\x11\xf2w', + -0xd88: b'\x11\xf2x', + -0xd87: b'\x11\xf2y', + -0xd86: b'\x11\xf2z', + -0xd85: b'\x11\xf2{', + -0xd84: b'\x11\xf2|', + -0xd83: b'\x11\xf2}', + -0xd82: b'\x11\xf2~', + -0xd81: b'\x11\xf2\x7f', + -0xd80: b'\x11\xf2\x80', + -0xd7f: b'\x11\xf2\x81', + -0xd7e: b'\x11\xf2\x82', + -0xd7d: b'\x11\xf2\x83', + -0xd7c: b'\x11\xf2\x84', + -0xd7b: b'\x11\xf2\x85', + -0xd7a: b'\x11\xf2\x86', + -0xd79: b'\x11\xf2\x87', + -0xd78: b'\x11\xf2\x88', + -0xd77: b'\x11\xf2\x89', + -0xd76: b'\x11\xf2\x8a', + -0xd75: b'\x11\xf2\x8b', + -0xd74: b'\x11\xf2\x8c', + -0xd73: b'\x11\xf2\x8d', + -0xd72: b'\x11\xf2\x8e', + -0xd71: b'\x11\xf2\x8f', + -0xd70: b'\x11\xf2\x90', + -0xd6f: b'\x11\xf2\x91', + -0xd6e: b'\x11\xf2\x92', + -0xd6d: b'\x11\xf2\x93', + -0xd6c: b'\x11\xf2\x94', + -0xd6b: b'\x11\xf2\x95', + -0xd6a: b'\x11\xf2\x96', + -0xd69: b'\x11\xf2\x97', + -0xd68: b'\x11\xf2\x98', + -0xd67: b'\x11\xf2\x99', + -0xd66: b'\x11\xf2\x9a', + -0xd65: b'\x11\xf2\x9b', + -0xd64: b'\x11\xf2\x9c', + -0xd63: b'\x11\xf2\x9d', + -0xd62: b'\x11\xf2\x9e', + -0xd61: b'\x11\xf2\x9f', + -0xd60: b'\x11\xf2\xa0', + -0xd5f: b'\x11\xf2\xa1', + -0xd5e: b'\x11\xf2\xa2', + -0xd5d: b'\x11\xf2\xa3', + -0xd5c: b'\x11\xf2\xa4', + -0xd5b: b'\x11\xf2\xa5', + -0xd5a: b'\x11\xf2\xa6', + -0xd59: b'\x11\xf2\xa7', + -0xd58: b'\x11\xf2\xa8', + -0xd57: b'\x11\xf2\xa9', + -0xd56: b'\x11\xf2\xaa', + -0xd55: b'\x11\xf2\xab', + -0xd54: b'\x11\xf2\xac', + -0xd53: b'\x11\xf2\xad', + -0xd52: b'\x11\xf2\xae', + -0xd51: b'\x11\xf2\xaf', + -0xd50: b'\x11\xf2\xb0', + -0xd4f: b'\x11\xf2\xb1', + -0xd4e: b'\x11\xf2\xb2', + -0xd4d: b'\x11\xf2\xb3', + -0xd4c: b'\x11\xf2\xb4', + -0xd4b: b'\x11\xf2\xb5', + -0xd4a: b'\x11\xf2\xb6', + -0xd49: b'\x11\xf2\xb7', + -0xd48: b'\x11\xf2\xb8', + -0xd47: b'\x11\xf2\xb9', + -0xd46: b'\x11\xf2\xba', + -0xd45: b'\x11\xf2\xbb', + -0xd44: b'\x11\xf2\xbc', + -0xd43: b'\x11\xf2\xbd', + -0xd42: b'\x11\xf2\xbe', + -0xd41: b'\x11\xf2\xbf', + -0xd40: b'\x11\xf2\xc0', + -0xd3f: b'\x11\xf2\xc1', + -0xd3e: b'\x11\xf2\xc2', + -0xd3d: b'\x11\xf2\xc3', + -0xd3c: b'\x11\xf2\xc4', + -0xd3b: b'\x11\xf2\xc5', + -0xd3a: b'\x11\xf2\xc6', + -0xd39: b'\x11\xf2\xc7', + -0xd38: b'\x11\xf2\xc8', + -0xd37: b'\x11\xf2\xc9', + -0xd36: b'\x11\xf2\xca', + -0xd35: b'\x11\xf2\xcb', + -0xd34: b'\x11\xf2\xcc', + -0xd33: b'\x11\xf2\xcd', + -0xd32: b'\x11\xf2\xce', + -0xd31: b'\x11\xf2\xcf', + -0xd30: b'\x11\xf2\xd0', + -0xd2f: b'\x11\xf2\xd1', + -0xd2e: b'\x11\xf2\xd2', + -0xd2d: b'\x11\xf2\xd3', + -0xd2c: b'\x11\xf2\xd4', + -0xd2b: b'\x11\xf2\xd5', + -0xd2a: b'\x11\xf2\xd6', + -0xd29: b'\x11\xf2\xd7', + -0xd28: b'\x11\xf2\xd8', + -0xd27: b'\x11\xf2\xd9', + -0xd26: b'\x11\xf2\xda', + -0xd25: b'\x11\xf2\xdb', + -0xd24: b'\x11\xf2\xdc', + -0xd23: b'\x11\xf2\xdd', + -0xd22: b'\x11\xf2\xde', + -0xd21: b'\x11\xf2\xdf', + -0xd20: b'\x11\xf2\xe0', + -0xd1f: b'\x11\xf2\xe1', + -0xd1e: b'\x11\xf2\xe2', + -0xd1d: b'\x11\xf2\xe3', + -0xd1c: b'\x11\xf2\xe4', + -0xd1b: b'\x11\xf2\xe5', + -0xd1a: b'\x11\xf2\xe6', + -0xd19: b'\x11\xf2\xe7', + -0xd18: b'\x11\xf2\xe8', + -0xd17: b'\x11\xf2\xe9', + -0xd16: b'\x11\xf2\xea', + -0xd15: b'\x11\xf2\xeb', + -0xd14: b'\x11\xf2\xec', + -0xd13: b'\x11\xf2\xed', + -0xd12: b'\x11\xf2\xee', + -0xd11: b'\x11\xf2\xef', + -0xd10: b'\x11\xf2\xf0', + -0xd0f: b'\x11\xf2\xf1', + -0xd0e: b'\x11\xf2\xf2', + -0xd0d: b'\x11\xf2\xf3', + -0xd0c: b'\x11\xf2\xf4', + -0xd0b: b'\x11\xf2\xf5', + -0xd0a: b'\x11\xf2\xf6', + -0xd09: b'\x11\xf2\xf7', + -0xd08: b'\x11\xf2\xf8', + -0xd07: b'\x11\xf2\xf9', + -0xd06: b'\x11\xf2\xfa', + -0xd05: b'\x11\xf2\xfb', + -0xd04: b'\x11\xf2\xfc', + -0xd03: b'\x11\xf2\xfd', + -0xd02: b'\x11\xf2\xfe', + -0xd01: b'\x11\xf2\xff', + -0xd00: b'\x11\xf3\x00', + -0xcff: b'\x11\xf3\x01', + -0xcfe: b'\x11\xf3\x02', + -0xcfd: b'\x11\xf3\x03', + -0xcfc: b'\x11\xf3\x04', + -0xcfb: b'\x11\xf3\x05', + -0xcfa: b'\x11\xf3\x06', + -0xcf9: b'\x11\xf3\x07', + -0xcf8: b'\x11\xf3\x08', + -0xcf7: b'\x11\xf3\t', + -0xcf6: b'\x11\xf3\n', + -0xcf5: b'\x11\xf3\x0b', + -0xcf4: b'\x11\xf3\x0c', + -0xcf3: b'\x11\xf3\r', + -0xcf2: b'\x11\xf3\x0e', + -0xcf1: b'\x11\xf3\x0f', + -0xcf0: b'\x11\xf3\x10', + -0xcef: b'\x11\xf3\x11', + -0xcee: b'\x11\xf3\x12', + -0xced: b'\x11\xf3\x13', + -0xcec: b'\x11\xf3\x14', + -0xceb: b'\x11\xf3\x15', + -0xcea: b'\x11\xf3\x16', + -0xce9: b'\x11\xf3\x17', + -0xce8: b'\x11\xf3\x18', + -0xce7: b'\x11\xf3\x19', + -0xce6: b'\x11\xf3\x1a', + -0xce5: b'\x11\xf3\x1b', + -0xce4: b'\x11\xf3\x1c', + -0xce3: b'\x11\xf3\x1d', + -0xce2: b'\x11\xf3\x1e', + -0xce1: b'\x11\xf3\x1f', + -0xce0: b'\x11\xf3 ', + -0xcdf: b'\x11\xf3!', + -0xcde: b'\x11\xf3"', + -0xcdd: b'\x11\xf3#', + -0xcdc: b'\x11\xf3$', + -0xcdb: b'\x11\xf3%', + -0xcda: b'\x11\xf3&', + -0xcd9: b"\x11\xf3'", + -0xcd8: b'\x11\xf3(', + -0xcd7: b'\x11\xf3)', + -0xcd6: b'\x11\xf3*', + -0xcd5: b'\x11\xf3+', + -0xcd4: b'\x11\xf3,', + -0xcd3: b'\x11\xf3-', + -0xcd2: b'\x11\xf3.', + -0xcd1: b'\x11\xf3/', + -0xcd0: b'\x11\xf30', + -0xccf: b'\x11\xf31', + -0xcce: b'\x11\xf32', + -0xccd: b'\x11\xf33', + -0xccc: b'\x11\xf34', + -0xccb: b'\x11\xf35', + -0xcca: b'\x11\xf36', + -0xcc9: b'\x11\xf37', + -0xcc8: b'\x11\xf38', + -0xcc7: b'\x11\xf39', + -0xcc6: b'\x11\xf3:', + -0xcc5: b'\x11\xf3;', + -0xcc4: b'\x11\xf3<', + -0xcc3: b'\x11\xf3=', + -0xcc2: b'\x11\xf3>', + -0xcc1: b'\x11\xf3?', + -0xcc0: b'\x11\xf3@', + -0xcbf: b'\x11\xf3A', + -0xcbe: b'\x11\xf3B', + -0xcbd: b'\x11\xf3C', + -0xcbc: b'\x11\xf3D', + -0xcbb: b'\x11\xf3E', + -0xcba: b'\x11\xf3F', + -0xcb9: b'\x11\xf3G', + -0xcb8: b'\x11\xf3H', + -0xcb7: b'\x11\xf3I', + -0xcb6: b'\x11\xf3J', + -0xcb5: b'\x11\xf3K', + -0xcb4: b'\x11\xf3L', + -0xcb3: b'\x11\xf3M', + -0xcb2: b'\x11\xf3N', + -0xcb1: b'\x11\xf3O', + -0xcb0: b'\x11\xf3P', + -0xcaf: b'\x11\xf3Q', + -0xcae: b'\x11\xf3R', + -0xcad: b'\x11\xf3S', + -0xcac: b'\x11\xf3T', + -0xcab: b'\x11\xf3U', + -0xcaa: b'\x11\xf3V', + -0xca9: b'\x11\xf3W', + -0xca8: b'\x11\xf3X', + -0xca7: b'\x11\xf3Y', + -0xca6: b'\x11\xf3Z', + -0xca5: b'\x11\xf3[', + -0xca4: b'\x11\xf3\\', + -0xca3: b'\x11\xf3]', + -0xca2: b'\x11\xf3^', + -0xca1: b'\x11\xf3_', + -0xca0: b'\x11\xf3`', + -0xc9f: b'\x11\xf3a', + -0xc9e: b'\x11\xf3b', + -0xc9d: b'\x11\xf3c', + -0xc9c: b'\x11\xf3d', + -0xc9b: b'\x11\xf3e', + -0xc9a: b'\x11\xf3f', + -0xc99: b'\x11\xf3g', + -0xc98: b'\x11\xf3h', + -0xc97: b'\x11\xf3i', + -0xc96: b'\x11\xf3j', + -0xc95: b'\x11\xf3k', + -0xc94: b'\x11\xf3l', + -0xc93: b'\x11\xf3m', + -0xc92: b'\x11\xf3n', + -0xc91: b'\x11\xf3o', + -0xc90: b'\x11\xf3p', + -0xc8f: b'\x11\xf3q', + -0xc8e: b'\x11\xf3r', + -0xc8d: b'\x11\xf3s', + -0xc8c: b'\x11\xf3t', + -0xc8b: b'\x11\xf3u', + -0xc8a: b'\x11\xf3v', + -0xc89: b'\x11\xf3w', + -0xc88: b'\x11\xf3x', + -0xc87: b'\x11\xf3y', + -0xc86: b'\x11\xf3z', + -0xc85: b'\x11\xf3{', + -0xc84: b'\x11\xf3|', + -0xc83: b'\x11\xf3}', + -0xc82: b'\x11\xf3~', + -0xc81: b'\x11\xf3\x7f', + -0xc80: b'\x11\xf3\x80', + -0xc7f: b'\x11\xf3\x81', + -0xc7e: b'\x11\xf3\x82', + -0xc7d: b'\x11\xf3\x83', + -0xc7c: b'\x11\xf3\x84', + -0xc7b: b'\x11\xf3\x85', + -0xc7a: b'\x11\xf3\x86', + -0xc79: b'\x11\xf3\x87', + -0xc78: b'\x11\xf3\x88', + -0xc77: b'\x11\xf3\x89', + -0xc76: b'\x11\xf3\x8a', + -0xc75: b'\x11\xf3\x8b', + -0xc74: b'\x11\xf3\x8c', + -0xc73: b'\x11\xf3\x8d', + -0xc72: b'\x11\xf3\x8e', + -0xc71: b'\x11\xf3\x8f', + -0xc70: b'\x11\xf3\x90', + -0xc6f: b'\x11\xf3\x91', + -0xc6e: b'\x11\xf3\x92', + -0xc6d: b'\x11\xf3\x93', + -0xc6c: b'\x11\xf3\x94', + -0xc6b: b'\x11\xf3\x95', + -0xc6a: b'\x11\xf3\x96', + -0xc69: b'\x11\xf3\x97', + -0xc68: b'\x11\xf3\x98', + -0xc67: b'\x11\xf3\x99', + -0xc66: b'\x11\xf3\x9a', + -0xc65: b'\x11\xf3\x9b', + -0xc64: b'\x11\xf3\x9c', + -0xc63: b'\x11\xf3\x9d', + -0xc62: b'\x11\xf3\x9e', + -0xc61: b'\x11\xf3\x9f', + -0xc60: b'\x11\xf3\xa0', + -0xc5f: b'\x11\xf3\xa1', + -0xc5e: b'\x11\xf3\xa2', + -0xc5d: b'\x11\xf3\xa3', + -0xc5c: b'\x11\xf3\xa4', + -0xc5b: b'\x11\xf3\xa5', + -0xc5a: b'\x11\xf3\xa6', + -0xc59: b'\x11\xf3\xa7', + -0xc58: b'\x11\xf3\xa8', + -0xc57: b'\x11\xf3\xa9', + -0xc56: b'\x11\xf3\xaa', + -0xc55: b'\x11\xf3\xab', + -0xc54: b'\x11\xf3\xac', + -0xc53: b'\x11\xf3\xad', + -0xc52: b'\x11\xf3\xae', + -0xc51: b'\x11\xf3\xaf', + -0xc50: b'\x11\xf3\xb0', + -0xc4f: b'\x11\xf3\xb1', + -0xc4e: b'\x11\xf3\xb2', + -0xc4d: b'\x11\xf3\xb3', + -0xc4c: b'\x11\xf3\xb4', + -0xc4b: b'\x11\xf3\xb5', + -0xc4a: b'\x11\xf3\xb6', + -0xc49: b'\x11\xf3\xb7', + -0xc48: b'\x11\xf3\xb8', + -0xc47: b'\x11\xf3\xb9', + -0xc46: b'\x11\xf3\xba', + -0xc45: b'\x11\xf3\xbb', + -0xc44: b'\x11\xf3\xbc', + -0xc43: b'\x11\xf3\xbd', + -0xc42: b'\x11\xf3\xbe', + -0xc41: b'\x11\xf3\xbf', + -0xc40: b'\x11\xf3\xc0', + -0xc3f: b'\x11\xf3\xc1', + -0xc3e: b'\x11\xf3\xc2', + -0xc3d: b'\x11\xf3\xc3', + -0xc3c: b'\x11\xf3\xc4', + -0xc3b: b'\x11\xf3\xc5', + -0xc3a: b'\x11\xf3\xc6', + -0xc39: b'\x11\xf3\xc7', + -0xc38: b'\x11\xf3\xc8', + -0xc37: b'\x11\xf3\xc9', + -0xc36: b'\x11\xf3\xca', + -0xc35: b'\x11\xf3\xcb', + -0xc34: b'\x11\xf3\xcc', + -0xc33: b'\x11\xf3\xcd', + -0xc32: b'\x11\xf3\xce', + -0xc31: b'\x11\xf3\xcf', + -0xc30: b'\x11\xf3\xd0', + -0xc2f: b'\x11\xf3\xd1', + -0xc2e: b'\x11\xf3\xd2', + -0xc2d: b'\x11\xf3\xd3', + -0xc2c: b'\x11\xf3\xd4', + -0xc2b: b'\x11\xf3\xd5', + -0xc2a: b'\x11\xf3\xd6', + -0xc29: b'\x11\xf3\xd7', + -0xc28: b'\x11\xf3\xd8', + -0xc27: b'\x11\xf3\xd9', + -0xc26: b'\x11\xf3\xda', + -0xc25: b'\x11\xf3\xdb', + -0xc24: b'\x11\xf3\xdc', + -0xc23: b'\x11\xf3\xdd', + -0xc22: b'\x11\xf3\xde', + -0xc21: b'\x11\xf3\xdf', + -0xc20: b'\x11\xf3\xe0', + -0xc1f: b'\x11\xf3\xe1', + -0xc1e: b'\x11\xf3\xe2', + -0xc1d: b'\x11\xf3\xe3', + -0xc1c: b'\x11\xf3\xe4', + -0xc1b: b'\x11\xf3\xe5', + -0xc1a: b'\x11\xf3\xe6', + -0xc19: b'\x11\xf3\xe7', + -0xc18: b'\x11\xf3\xe8', + -0xc17: b'\x11\xf3\xe9', + -0xc16: b'\x11\xf3\xea', + -0xc15: b'\x11\xf3\xeb', + -0xc14: b'\x11\xf3\xec', + -0xc13: b'\x11\xf3\xed', + -0xc12: b'\x11\xf3\xee', + -0xc11: b'\x11\xf3\xef', + -0xc10: b'\x11\xf3\xf0', + -0xc0f: b'\x11\xf3\xf1', + -0xc0e: b'\x11\xf3\xf2', + -0xc0d: b'\x11\xf3\xf3', + -0xc0c: b'\x11\xf3\xf4', + -0xc0b: b'\x11\xf3\xf5', + -0xc0a: b'\x11\xf3\xf6', + -0xc09: b'\x11\xf3\xf7', + -0xc08: b'\x11\xf3\xf8', + -0xc07: b'\x11\xf3\xf9', + -0xc06: b'\x11\xf3\xfa', + -0xc05: b'\x11\xf3\xfb', + -0xc04: b'\x11\xf3\xfc', + -0xc03: b'\x11\xf3\xfd', + -0xc02: b'\x11\xf3\xfe', + -0xc01: b'\x11\xf3\xff', + -0xc00: b'\x11\xf4\x00', + -0xbff: b'\x11\xf4\x01', + -0xbfe: b'\x11\xf4\x02', + -0xbfd: b'\x11\xf4\x03', + -0xbfc: b'\x11\xf4\x04', + -0xbfb: b'\x11\xf4\x05', + -0xbfa: b'\x11\xf4\x06', + -0xbf9: b'\x11\xf4\x07', + -0xbf8: b'\x11\xf4\x08', + -0xbf7: b'\x11\xf4\t', + -0xbf6: b'\x11\xf4\n', + -0xbf5: b'\x11\xf4\x0b', + -0xbf4: b'\x11\xf4\x0c', + -0xbf3: b'\x11\xf4\r', + -0xbf2: b'\x11\xf4\x0e', + -0xbf1: b'\x11\xf4\x0f', + -0xbf0: b'\x11\xf4\x10', + -0xbef: b'\x11\xf4\x11', + -0xbee: b'\x11\xf4\x12', + -0xbed: b'\x11\xf4\x13', + -0xbec: b'\x11\xf4\x14', + -0xbeb: b'\x11\xf4\x15', + -0xbea: b'\x11\xf4\x16', + -0xbe9: b'\x11\xf4\x17', + -0xbe8: b'\x11\xf4\x18', + -0xbe7: b'\x11\xf4\x19', + -0xbe6: b'\x11\xf4\x1a', + -0xbe5: b'\x11\xf4\x1b', + -0xbe4: b'\x11\xf4\x1c', + -0xbe3: b'\x11\xf4\x1d', + -0xbe2: b'\x11\xf4\x1e', + -0xbe1: b'\x11\xf4\x1f', + -0xbe0: b'\x11\xf4 ', + -0xbdf: b'\x11\xf4!', + -0xbde: b'\x11\xf4"', + -0xbdd: b'\x11\xf4#', + -0xbdc: b'\x11\xf4$', + -0xbdb: b'\x11\xf4%', + -0xbda: b'\x11\xf4&', + -0xbd9: b"\x11\xf4'", + -0xbd8: b'\x11\xf4(', + -0xbd7: b'\x11\xf4)', + -0xbd6: b'\x11\xf4*', + -0xbd5: b'\x11\xf4+', + -0xbd4: b'\x11\xf4,', + -0xbd3: b'\x11\xf4-', + -0xbd2: b'\x11\xf4.', + -0xbd1: b'\x11\xf4/', + -0xbd0: b'\x11\xf40', + -0xbcf: b'\x11\xf41', + -0xbce: b'\x11\xf42', + -0xbcd: b'\x11\xf43', + -0xbcc: b'\x11\xf44', + -0xbcb: b'\x11\xf45', + -0xbca: b'\x11\xf46', + -0xbc9: b'\x11\xf47', + -0xbc8: b'\x11\xf48', + -0xbc7: b'\x11\xf49', + -0xbc6: b'\x11\xf4:', + -0xbc5: b'\x11\xf4;', + -0xbc4: b'\x11\xf4<', + -0xbc3: b'\x11\xf4=', + -0xbc2: b'\x11\xf4>', + -0xbc1: b'\x11\xf4?', + -0xbc0: b'\x11\xf4@', + -0xbbf: b'\x11\xf4A', + -0xbbe: b'\x11\xf4B', + -0xbbd: b'\x11\xf4C', + -0xbbc: b'\x11\xf4D', + -0xbbb: b'\x11\xf4E', + -0xbba: b'\x11\xf4F', + -0xbb9: b'\x11\xf4G', + -0xbb8: b'\x11\xf4H', + -0xbb7: b'\x11\xf4I', + -0xbb6: b'\x11\xf4J', + -0xbb5: b'\x11\xf4K', + -0xbb4: b'\x11\xf4L', + -0xbb3: b'\x11\xf4M', + -0xbb2: b'\x11\xf4N', + -0xbb1: b'\x11\xf4O', + -0xbb0: b'\x11\xf4P', + -0xbaf: b'\x11\xf4Q', + -0xbae: b'\x11\xf4R', + -0xbad: b'\x11\xf4S', + -0xbac: b'\x11\xf4T', + -0xbab: b'\x11\xf4U', + -0xbaa: b'\x11\xf4V', + -0xba9: b'\x11\xf4W', + -0xba8: b'\x11\xf4X', + -0xba7: b'\x11\xf4Y', + -0xba6: b'\x11\xf4Z', + -0xba5: b'\x11\xf4[', + -0xba4: b'\x11\xf4\\', + -0xba3: b'\x11\xf4]', + -0xba2: b'\x11\xf4^', + -0xba1: b'\x11\xf4_', + -0xba0: b'\x11\xf4`', + -0xb9f: b'\x11\xf4a', + -0xb9e: b'\x11\xf4b', + -0xb9d: b'\x11\xf4c', + -0xb9c: b'\x11\xf4d', + -0xb9b: b'\x11\xf4e', + -0xb9a: b'\x11\xf4f', + -0xb99: b'\x11\xf4g', + -0xb98: b'\x11\xf4h', + -0xb97: b'\x11\xf4i', + -0xb96: b'\x11\xf4j', + -0xb95: b'\x11\xf4k', + -0xb94: b'\x11\xf4l', + -0xb93: b'\x11\xf4m', + -0xb92: b'\x11\xf4n', + -0xb91: b'\x11\xf4o', + -0xb90: b'\x11\xf4p', + -0xb8f: b'\x11\xf4q', + -0xb8e: b'\x11\xf4r', + -0xb8d: b'\x11\xf4s', + -0xb8c: b'\x11\xf4t', + -0xb8b: b'\x11\xf4u', + -0xb8a: b'\x11\xf4v', + -0xb89: b'\x11\xf4w', + -0xb88: b'\x11\xf4x', + -0xb87: b'\x11\xf4y', + -0xb86: b'\x11\xf4z', + -0xb85: b'\x11\xf4{', + -0xb84: b'\x11\xf4|', + -0xb83: b'\x11\xf4}', + -0xb82: b'\x11\xf4~', + -0xb81: b'\x11\xf4\x7f', + -0xb80: b'\x11\xf4\x80', + -0xb7f: b'\x11\xf4\x81', + -0xb7e: b'\x11\xf4\x82', + -0xb7d: b'\x11\xf4\x83', + -0xb7c: b'\x11\xf4\x84', + -0xb7b: b'\x11\xf4\x85', + -0xb7a: b'\x11\xf4\x86', + -0xb79: b'\x11\xf4\x87', + -0xb78: b'\x11\xf4\x88', + -0xb77: b'\x11\xf4\x89', + -0xb76: b'\x11\xf4\x8a', + -0xb75: b'\x11\xf4\x8b', + -0xb74: b'\x11\xf4\x8c', + -0xb73: b'\x11\xf4\x8d', + -0xb72: b'\x11\xf4\x8e', + -0xb71: b'\x11\xf4\x8f', + -0xb70: b'\x11\xf4\x90', + -0xb6f: b'\x11\xf4\x91', + -0xb6e: b'\x11\xf4\x92', + -0xb6d: b'\x11\xf4\x93', + -0xb6c: b'\x11\xf4\x94', + -0xb6b: b'\x11\xf4\x95', + -0xb6a: b'\x11\xf4\x96', + -0xb69: b'\x11\xf4\x97', + -0xb68: b'\x11\xf4\x98', + -0xb67: b'\x11\xf4\x99', + -0xb66: b'\x11\xf4\x9a', + -0xb65: b'\x11\xf4\x9b', + -0xb64: b'\x11\xf4\x9c', + -0xb63: b'\x11\xf4\x9d', + -0xb62: b'\x11\xf4\x9e', + -0xb61: b'\x11\xf4\x9f', + -0xb60: b'\x11\xf4\xa0', + -0xb5f: b'\x11\xf4\xa1', + -0xb5e: b'\x11\xf4\xa2', + -0xb5d: b'\x11\xf4\xa3', + -0xb5c: b'\x11\xf4\xa4', + -0xb5b: b'\x11\xf4\xa5', + -0xb5a: b'\x11\xf4\xa6', + -0xb59: b'\x11\xf4\xa7', + -0xb58: b'\x11\xf4\xa8', + -0xb57: b'\x11\xf4\xa9', + -0xb56: b'\x11\xf4\xaa', + -0xb55: b'\x11\xf4\xab', + -0xb54: b'\x11\xf4\xac', + -0xb53: b'\x11\xf4\xad', + -0xb52: b'\x11\xf4\xae', + -0xb51: b'\x11\xf4\xaf', + -0xb50: b'\x11\xf4\xb0', + -0xb4f: b'\x11\xf4\xb1', + -0xb4e: b'\x11\xf4\xb2', + -0xb4d: b'\x11\xf4\xb3', + -0xb4c: b'\x11\xf4\xb4', + -0xb4b: b'\x11\xf4\xb5', + -0xb4a: b'\x11\xf4\xb6', + -0xb49: b'\x11\xf4\xb7', + -0xb48: b'\x11\xf4\xb8', + -0xb47: b'\x11\xf4\xb9', + -0xb46: b'\x11\xf4\xba', + -0xb45: b'\x11\xf4\xbb', + -0xb44: b'\x11\xf4\xbc', + -0xb43: b'\x11\xf4\xbd', + -0xb42: b'\x11\xf4\xbe', + -0xb41: b'\x11\xf4\xbf', + -0xb40: b'\x11\xf4\xc0', + -0xb3f: b'\x11\xf4\xc1', + -0xb3e: b'\x11\xf4\xc2', + -0xb3d: b'\x11\xf4\xc3', + -0xb3c: b'\x11\xf4\xc4', + -0xb3b: b'\x11\xf4\xc5', + -0xb3a: b'\x11\xf4\xc6', + -0xb39: b'\x11\xf4\xc7', + -0xb38: b'\x11\xf4\xc8', + -0xb37: b'\x11\xf4\xc9', + -0xb36: b'\x11\xf4\xca', + -0xb35: b'\x11\xf4\xcb', + -0xb34: b'\x11\xf4\xcc', + -0xb33: b'\x11\xf4\xcd', + -0xb32: b'\x11\xf4\xce', + -0xb31: b'\x11\xf4\xcf', + -0xb30: b'\x11\xf4\xd0', + -0xb2f: b'\x11\xf4\xd1', + -0xb2e: b'\x11\xf4\xd2', + -0xb2d: b'\x11\xf4\xd3', + -0xb2c: b'\x11\xf4\xd4', + -0xb2b: b'\x11\xf4\xd5', + -0xb2a: b'\x11\xf4\xd6', + -0xb29: b'\x11\xf4\xd7', + -0xb28: b'\x11\xf4\xd8', + -0xb27: b'\x11\xf4\xd9', + -0xb26: b'\x11\xf4\xda', + -0xb25: b'\x11\xf4\xdb', + -0xb24: b'\x11\xf4\xdc', + -0xb23: b'\x11\xf4\xdd', + -0xb22: b'\x11\xf4\xde', + -0xb21: b'\x11\xf4\xdf', + -0xb20: b'\x11\xf4\xe0', + -0xb1f: b'\x11\xf4\xe1', + -0xb1e: b'\x11\xf4\xe2', + -0xb1d: b'\x11\xf4\xe3', + -0xb1c: b'\x11\xf4\xe4', + -0xb1b: b'\x11\xf4\xe5', + -0xb1a: b'\x11\xf4\xe6', + -0xb19: b'\x11\xf4\xe7', + -0xb18: b'\x11\xf4\xe8', + -0xb17: b'\x11\xf4\xe9', + -0xb16: b'\x11\xf4\xea', + -0xb15: b'\x11\xf4\xeb', + -0xb14: b'\x11\xf4\xec', + -0xb13: b'\x11\xf4\xed', + -0xb12: b'\x11\xf4\xee', + -0xb11: b'\x11\xf4\xef', + -0xb10: b'\x11\xf4\xf0', + -0xb0f: b'\x11\xf4\xf1', + -0xb0e: b'\x11\xf4\xf2', + -0xb0d: b'\x11\xf4\xf3', + -0xb0c: b'\x11\xf4\xf4', + -0xb0b: b'\x11\xf4\xf5', + -0xb0a: b'\x11\xf4\xf6', + -0xb09: b'\x11\xf4\xf7', + -0xb08: b'\x11\xf4\xf8', + -0xb07: b'\x11\xf4\xf9', + -0xb06: b'\x11\xf4\xfa', + -0xb05: b'\x11\xf4\xfb', + -0xb04: b'\x11\xf4\xfc', + -0xb03: b'\x11\xf4\xfd', + -0xb02: b'\x11\xf4\xfe', + -0xb01: b'\x11\xf4\xff', + -0xb00: b'\x11\xf5\x00', + -0xaff: b'\x11\xf5\x01', + -0xafe: b'\x11\xf5\x02', + -0xafd: b'\x11\xf5\x03', + -0xafc: b'\x11\xf5\x04', + -0xafb: b'\x11\xf5\x05', + -0xafa: b'\x11\xf5\x06', + -0xaf9: b'\x11\xf5\x07', + -0xaf8: b'\x11\xf5\x08', + -0xaf7: b'\x11\xf5\t', + -0xaf6: b'\x11\xf5\n', + -0xaf5: b'\x11\xf5\x0b', + -0xaf4: b'\x11\xf5\x0c', + -0xaf3: b'\x11\xf5\r', + -0xaf2: b'\x11\xf5\x0e', + -0xaf1: b'\x11\xf5\x0f', + -0xaf0: b'\x11\xf5\x10', + -0xaef: b'\x11\xf5\x11', + -0xaee: b'\x11\xf5\x12', + -0xaed: b'\x11\xf5\x13', + -0xaec: b'\x11\xf5\x14', + -0xaeb: b'\x11\xf5\x15', + -0xaea: b'\x11\xf5\x16', + -0xae9: b'\x11\xf5\x17', + -0xae8: b'\x11\xf5\x18', + -0xae7: b'\x11\xf5\x19', + -0xae6: b'\x11\xf5\x1a', + -0xae5: b'\x11\xf5\x1b', + -0xae4: b'\x11\xf5\x1c', + -0xae3: b'\x11\xf5\x1d', + -0xae2: b'\x11\xf5\x1e', + -0xae1: b'\x11\xf5\x1f', + -0xae0: b'\x11\xf5 ', + -0xadf: b'\x11\xf5!', + -0xade: b'\x11\xf5"', + -0xadd: b'\x11\xf5#', + -0xadc: b'\x11\xf5$', + -0xadb: b'\x11\xf5%', + -0xada: b'\x11\xf5&', + -0xad9: b"\x11\xf5'", + -0xad8: b'\x11\xf5(', + -0xad7: b'\x11\xf5)', + -0xad6: b'\x11\xf5*', + -0xad5: b'\x11\xf5+', + -0xad4: b'\x11\xf5,', + -0xad3: b'\x11\xf5-', + -0xad2: b'\x11\xf5.', + -0xad1: b'\x11\xf5/', + -0xad0: b'\x11\xf50', + -0xacf: b'\x11\xf51', + -0xace: b'\x11\xf52', + -0xacd: b'\x11\xf53', + -0xacc: b'\x11\xf54', + -0xacb: b'\x11\xf55', + -0xaca: b'\x11\xf56', + -0xac9: b'\x11\xf57', + -0xac8: b'\x11\xf58', + -0xac7: b'\x11\xf59', + -0xac6: b'\x11\xf5:', + -0xac5: b'\x11\xf5;', + -0xac4: b'\x11\xf5<', + -0xac3: b'\x11\xf5=', + -0xac2: b'\x11\xf5>', + -0xac1: b'\x11\xf5?', + -0xac0: b'\x11\xf5@', + -0xabf: b'\x11\xf5A', + -0xabe: b'\x11\xf5B', + -0xabd: b'\x11\xf5C', + -0xabc: b'\x11\xf5D', + -0xabb: b'\x11\xf5E', + -0xaba: b'\x11\xf5F', + -0xab9: b'\x11\xf5G', + -0xab8: b'\x11\xf5H', + -0xab7: b'\x11\xf5I', + -0xab6: b'\x11\xf5J', + -0xab5: b'\x11\xf5K', + -0xab4: b'\x11\xf5L', + -0xab3: b'\x11\xf5M', + -0xab2: b'\x11\xf5N', + -0xab1: b'\x11\xf5O', + -0xab0: b'\x11\xf5P', + -0xaaf: b'\x11\xf5Q', + -0xaae: b'\x11\xf5R', + -0xaad: b'\x11\xf5S', + -0xaac: b'\x11\xf5T', + -0xaab: b'\x11\xf5U', + -0xaaa: b'\x11\xf5V', + -0xaa9: b'\x11\xf5W', + -0xaa8: b'\x11\xf5X', + -0xaa7: b'\x11\xf5Y', + -0xaa6: b'\x11\xf5Z', + -0xaa5: b'\x11\xf5[', + -0xaa4: b'\x11\xf5\\', + -0xaa3: b'\x11\xf5]', + -0xaa2: b'\x11\xf5^', + -0xaa1: b'\x11\xf5_', + -0xaa0: b'\x11\xf5`', + -0xa9f: b'\x11\xf5a', + -0xa9e: b'\x11\xf5b', + -0xa9d: b'\x11\xf5c', + -0xa9c: b'\x11\xf5d', + -0xa9b: b'\x11\xf5e', + -0xa9a: b'\x11\xf5f', + -0xa99: b'\x11\xf5g', + -0xa98: b'\x11\xf5h', + -0xa97: b'\x11\xf5i', + -0xa96: b'\x11\xf5j', + -0xa95: b'\x11\xf5k', + -0xa94: b'\x11\xf5l', + -0xa93: b'\x11\xf5m', + -0xa92: b'\x11\xf5n', + -0xa91: b'\x11\xf5o', + -0xa90: b'\x11\xf5p', + -0xa8f: b'\x11\xf5q', + -0xa8e: b'\x11\xf5r', + -0xa8d: b'\x11\xf5s', + -0xa8c: b'\x11\xf5t', + -0xa8b: b'\x11\xf5u', + -0xa8a: b'\x11\xf5v', + -0xa89: b'\x11\xf5w', + -0xa88: b'\x11\xf5x', + -0xa87: b'\x11\xf5y', + -0xa86: b'\x11\xf5z', + -0xa85: b'\x11\xf5{', + -0xa84: b'\x11\xf5|', + -0xa83: b'\x11\xf5}', + -0xa82: b'\x11\xf5~', + -0xa81: b'\x11\xf5\x7f', + -0xa80: b'\x11\xf5\x80', + -0xa7f: b'\x11\xf5\x81', + -0xa7e: b'\x11\xf5\x82', + -0xa7d: b'\x11\xf5\x83', + -0xa7c: b'\x11\xf5\x84', + -0xa7b: b'\x11\xf5\x85', + -0xa7a: b'\x11\xf5\x86', + -0xa79: b'\x11\xf5\x87', + -0xa78: b'\x11\xf5\x88', + -0xa77: b'\x11\xf5\x89', + -0xa76: b'\x11\xf5\x8a', + -0xa75: b'\x11\xf5\x8b', + -0xa74: b'\x11\xf5\x8c', + -0xa73: b'\x11\xf5\x8d', + -0xa72: b'\x11\xf5\x8e', + -0xa71: b'\x11\xf5\x8f', + -0xa70: b'\x11\xf5\x90', + -0xa6f: b'\x11\xf5\x91', + -0xa6e: b'\x11\xf5\x92', + -0xa6d: b'\x11\xf5\x93', + -0xa6c: b'\x11\xf5\x94', + -0xa6b: b'\x11\xf5\x95', + -0xa6a: b'\x11\xf5\x96', + -0xa69: b'\x11\xf5\x97', + -0xa68: b'\x11\xf5\x98', + -0xa67: b'\x11\xf5\x99', + -0xa66: b'\x11\xf5\x9a', + -0xa65: b'\x11\xf5\x9b', + -0xa64: b'\x11\xf5\x9c', + -0xa63: b'\x11\xf5\x9d', + -0xa62: b'\x11\xf5\x9e', + -0xa61: b'\x11\xf5\x9f', + -0xa60: b'\x11\xf5\xa0', + -0xa5f: b'\x11\xf5\xa1', + -0xa5e: b'\x11\xf5\xa2', + -0xa5d: b'\x11\xf5\xa3', + -0xa5c: b'\x11\xf5\xa4', + -0xa5b: b'\x11\xf5\xa5', + -0xa5a: b'\x11\xf5\xa6', + -0xa59: b'\x11\xf5\xa7', + -0xa58: b'\x11\xf5\xa8', + -0xa57: b'\x11\xf5\xa9', + -0xa56: b'\x11\xf5\xaa', + -0xa55: b'\x11\xf5\xab', + -0xa54: b'\x11\xf5\xac', + -0xa53: b'\x11\xf5\xad', + -0xa52: b'\x11\xf5\xae', + -0xa51: b'\x11\xf5\xaf', + -0xa50: b'\x11\xf5\xb0', + -0xa4f: b'\x11\xf5\xb1', + -0xa4e: b'\x11\xf5\xb2', + -0xa4d: b'\x11\xf5\xb3', + -0xa4c: b'\x11\xf5\xb4', + -0xa4b: b'\x11\xf5\xb5', + -0xa4a: b'\x11\xf5\xb6', + -0xa49: b'\x11\xf5\xb7', + -0xa48: b'\x11\xf5\xb8', + -0xa47: b'\x11\xf5\xb9', + -0xa46: b'\x11\xf5\xba', + -0xa45: b'\x11\xf5\xbb', + -0xa44: b'\x11\xf5\xbc', + -0xa43: b'\x11\xf5\xbd', + -0xa42: b'\x11\xf5\xbe', + -0xa41: b'\x11\xf5\xbf', + -0xa40: b'\x11\xf5\xc0', + -0xa3f: b'\x11\xf5\xc1', + -0xa3e: b'\x11\xf5\xc2', + -0xa3d: b'\x11\xf5\xc3', + -0xa3c: b'\x11\xf5\xc4', + -0xa3b: b'\x11\xf5\xc5', + -0xa3a: b'\x11\xf5\xc6', + -0xa39: b'\x11\xf5\xc7', + -0xa38: b'\x11\xf5\xc8', + -0xa37: b'\x11\xf5\xc9', + -0xa36: b'\x11\xf5\xca', + -0xa35: b'\x11\xf5\xcb', + -0xa34: b'\x11\xf5\xcc', + -0xa33: b'\x11\xf5\xcd', + -0xa32: b'\x11\xf5\xce', + -0xa31: b'\x11\xf5\xcf', + -0xa30: b'\x11\xf5\xd0', + -0xa2f: b'\x11\xf5\xd1', + -0xa2e: b'\x11\xf5\xd2', + -0xa2d: b'\x11\xf5\xd3', + -0xa2c: b'\x11\xf5\xd4', + -0xa2b: b'\x11\xf5\xd5', + -0xa2a: b'\x11\xf5\xd6', + -0xa29: b'\x11\xf5\xd7', + -0xa28: b'\x11\xf5\xd8', + -0xa27: b'\x11\xf5\xd9', + -0xa26: b'\x11\xf5\xda', + -0xa25: b'\x11\xf5\xdb', + -0xa24: b'\x11\xf5\xdc', + -0xa23: b'\x11\xf5\xdd', + -0xa22: b'\x11\xf5\xde', + -0xa21: b'\x11\xf5\xdf', + -0xa20: b'\x11\xf5\xe0', + -0xa1f: b'\x11\xf5\xe1', + -0xa1e: b'\x11\xf5\xe2', + -0xa1d: b'\x11\xf5\xe3', + -0xa1c: b'\x11\xf5\xe4', + -0xa1b: b'\x11\xf5\xe5', + -0xa1a: b'\x11\xf5\xe6', + -0xa19: b'\x11\xf5\xe7', + -0xa18: b'\x11\xf5\xe8', + -0xa17: b'\x11\xf5\xe9', + -0xa16: b'\x11\xf5\xea', + -0xa15: b'\x11\xf5\xeb', + -0xa14: b'\x11\xf5\xec', + -0xa13: b'\x11\xf5\xed', + -0xa12: b'\x11\xf5\xee', + -0xa11: b'\x11\xf5\xef', + -0xa10: b'\x11\xf5\xf0', + -0xa0f: b'\x11\xf5\xf1', + -0xa0e: b'\x11\xf5\xf2', + -0xa0d: b'\x11\xf5\xf3', + -0xa0c: b'\x11\xf5\xf4', + -0xa0b: b'\x11\xf5\xf5', + -0xa0a: b'\x11\xf5\xf6', + -0xa09: b'\x11\xf5\xf7', + -0xa08: b'\x11\xf5\xf8', + -0xa07: b'\x11\xf5\xf9', + -0xa06: b'\x11\xf5\xfa', + -0xa05: b'\x11\xf5\xfb', + -0xa04: b'\x11\xf5\xfc', + -0xa03: b'\x11\xf5\xfd', + -0xa02: b'\x11\xf5\xfe', + -0xa01: b'\x11\xf5\xff', + -0xa00: b'\x11\xf6\x00', + -0x9ff: b'\x11\xf6\x01', + -0x9fe: b'\x11\xf6\x02', + -0x9fd: b'\x11\xf6\x03', + -0x9fc: b'\x11\xf6\x04', + -0x9fb: b'\x11\xf6\x05', + -0x9fa: b'\x11\xf6\x06', + -0x9f9: b'\x11\xf6\x07', + -0x9f8: b'\x11\xf6\x08', + -0x9f7: b'\x11\xf6\t', + -0x9f6: b'\x11\xf6\n', + -0x9f5: b'\x11\xf6\x0b', + -0x9f4: b'\x11\xf6\x0c', + -0x9f3: b'\x11\xf6\r', + -0x9f2: b'\x11\xf6\x0e', + -0x9f1: b'\x11\xf6\x0f', + -0x9f0: b'\x11\xf6\x10', + -0x9ef: b'\x11\xf6\x11', + -0x9ee: b'\x11\xf6\x12', + -0x9ed: b'\x11\xf6\x13', + -0x9ec: b'\x11\xf6\x14', + -0x9eb: b'\x11\xf6\x15', + -0x9ea: b'\x11\xf6\x16', + -0x9e9: b'\x11\xf6\x17', + -0x9e8: b'\x11\xf6\x18', + -0x9e7: b'\x11\xf6\x19', + -0x9e6: b'\x11\xf6\x1a', + -0x9e5: b'\x11\xf6\x1b', + -0x9e4: b'\x11\xf6\x1c', + -0x9e3: b'\x11\xf6\x1d', + -0x9e2: b'\x11\xf6\x1e', + -0x9e1: b'\x11\xf6\x1f', + -0x9e0: b'\x11\xf6 ', + -0x9df: b'\x11\xf6!', + -0x9de: b'\x11\xf6"', + -0x9dd: b'\x11\xf6#', + -0x9dc: b'\x11\xf6$', + -0x9db: b'\x11\xf6%', + -0x9da: b'\x11\xf6&', + -0x9d9: b"\x11\xf6'", + -0x9d8: b'\x11\xf6(', + -0x9d7: b'\x11\xf6)', + -0x9d6: b'\x11\xf6*', + -0x9d5: b'\x11\xf6+', + -0x9d4: b'\x11\xf6,', + -0x9d3: b'\x11\xf6-', + -0x9d2: b'\x11\xf6.', + -0x9d1: b'\x11\xf6/', + -0x9d0: b'\x11\xf60', + -0x9cf: b'\x11\xf61', + -0x9ce: b'\x11\xf62', + -0x9cd: b'\x11\xf63', + -0x9cc: b'\x11\xf64', + -0x9cb: b'\x11\xf65', + -0x9ca: b'\x11\xf66', + -0x9c9: b'\x11\xf67', + -0x9c8: b'\x11\xf68', + -0x9c7: b'\x11\xf69', + -0x9c6: b'\x11\xf6:', + -0x9c5: b'\x11\xf6;', + -0x9c4: b'\x11\xf6<', + -0x9c3: b'\x11\xf6=', + -0x9c2: b'\x11\xf6>', + -0x9c1: b'\x11\xf6?', + -0x9c0: b'\x11\xf6@', + -0x9bf: b'\x11\xf6A', + -0x9be: b'\x11\xf6B', + -0x9bd: b'\x11\xf6C', + -0x9bc: b'\x11\xf6D', + -0x9bb: b'\x11\xf6E', + -0x9ba: b'\x11\xf6F', + -0x9b9: b'\x11\xf6G', + -0x9b8: b'\x11\xf6H', + -0x9b7: b'\x11\xf6I', + -0x9b6: b'\x11\xf6J', + -0x9b5: b'\x11\xf6K', + -0x9b4: b'\x11\xf6L', + -0x9b3: b'\x11\xf6M', + -0x9b2: b'\x11\xf6N', + -0x9b1: b'\x11\xf6O', + -0x9b0: b'\x11\xf6P', + -0x9af: b'\x11\xf6Q', + -0x9ae: b'\x11\xf6R', + -0x9ad: b'\x11\xf6S', + -0x9ac: b'\x11\xf6T', + -0x9ab: b'\x11\xf6U', + -0x9aa: b'\x11\xf6V', + -0x9a9: b'\x11\xf6W', + -0x9a8: b'\x11\xf6X', + -0x9a7: b'\x11\xf6Y', + -0x9a6: b'\x11\xf6Z', + -0x9a5: b'\x11\xf6[', + -0x9a4: b'\x11\xf6\\', + -0x9a3: b'\x11\xf6]', + -0x9a2: b'\x11\xf6^', + -0x9a1: b'\x11\xf6_', + -0x9a0: b'\x11\xf6`', + -0x99f: b'\x11\xf6a', + -0x99e: b'\x11\xf6b', + -0x99d: b'\x11\xf6c', + -0x99c: b'\x11\xf6d', + -0x99b: b'\x11\xf6e', + -0x99a: b'\x11\xf6f', + -0x999: b'\x11\xf6g', + -0x998: b'\x11\xf6h', + -0x997: b'\x11\xf6i', + -0x996: b'\x11\xf6j', + -0x995: b'\x11\xf6k', + -0x994: b'\x11\xf6l', + -0x993: b'\x11\xf6m', + -0x992: b'\x11\xf6n', + -0x991: b'\x11\xf6o', + -0x990: b'\x11\xf6p', + -0x98f: b'\x11\xf6q', + -0x98e: b'\x11\xf6r', + -0x98d: b'\x11\xf6s', + -0x98c: b'\x11\xf6t', + -0x98b: b'\x11\xf6u', + -0x98a: b'\x11\xf6v', + -0x989: b'\x11\xf6w', + -0x988: b'\x11\xf6x', + -0x987: b'\x11\xf6y', + -0x986: b'\x11\xf6z', + -0x985: b'\x11\xf6{', + -0x984: b'\x11\xf6|', + -0x983: b'\x11\xf6}', + -0x982: b'\x11\xf6~', + -0x981: b'\x11\xf6\x7f', + -0x980: b'\x11\xf6\x80', + -0x97f: b'\x11\xf6\x81', + -0x97e: b'\x11\xf6\x82', + -0x97d: b'\x11\xf6\x83', + -0x97c: b'\x11\xf6\x84', + -0x97b: b'\x11\xf6\x85', + -0x97a: b'\x11\xf6\x86', + -0x979: b'\x11\xf6\x87', + -0x978: b'\x11\xf6\x88', + -0x977: b'\x11\xf6\x89', + -0x976: b'\x11\xf6\x8a', + -0x975: b'\x11\xf6\x8b', + -0x974: b'\x11\xf6\x8c', + -0x973: b'\x11\xf6\x8d', + -0x972: b'\x11\xf6\x8e', + -0x971: b'\x11\xf6\x8f', + -0x970: b'\x11\xf6\x90', + -0x96f: b'\x11\xf6\x91', + -0x96e: b'\x11\xf6\x92', + -0x96d: b'\x11\xf6\x93', + -0x96c: b'\x11\xf6\x94', + -0x96b: b'\x11\xf6\x95', + -0x96a: b'\x11\xf6\x96', + -0x969: b'\x11\xf6\x97', + -0x968: b'\x11\xf6\x98', + -0x967: b'\x11\xf6\x99', + -0x966: b'\x11\xf6\x9a', + -0x965: b'\x11\xf6\x9b', + -0x964: b'\x11\xf6\x9c', + -0x963: b'\x11\xf6\x9d', + -0x962: b'\x11\xf6\x9e', + -0x961: b'\x11\xf6\x9f', + -0x960: b'\x11\xf6\xa0', + -0x95f: b'\x11\xf6\xa1', + -0x95e: b'\x11\xf6\xa2', + -0x95d: b'\x11\xf6\xa3', + -0x95c: b'\x11\xf6\xa4', + -0x95b: b'\x11\xf6\xa5', + -0x95a: b'\x11\xf6\xa6', + -0x959: b'\x11\xf6\xa7', + -0x958: b'\x11\xf6\xa8', + -0x957: b'\x11\xf6\xa9', + -0x956: b'\x11\xf6\xaa', + -0x955: b'\x11\xf6\xab', + -0x954: b'\x11\xf6\xac', + -0x953: b'\x11\xf6\xad', + -0x952: b'\x11\xf6\xae', + -0x951: b'\x11\xf6\xaf', + -0x950: b'\x11\xf6\xb0', + -0x94f: b'\x11\xf6\xb1', + -0x94e: b'\x11\xf6\xb2', + -0x94d: b'\x11\xf6\xb3', + -0x94c: b'\x11\xf6\xb4', + -0x94b: b'\x11\xf6\xb5', + -0x94a: b'\x11\xf6\xb6', + -0x949: b'\x11\xf6\xb7', + -0x948: b'\x11\xf6\xb8', + -0x947: b'\x11\xf6\xb9', + -0x946: b'\x11\xf6\xba', + -0x945: b'\x11\xf6\xbb', + -0x944: b'\x11\xf6\xbc', + -0x943: b'\x11\xf6\xbd', + -0x942: b'\x11\xf6\xbe', + -0x941: b'\x11\xf6\xbf', + -0x940: b'\x11\xf6\xc0', + -0x93f: b'\x11\xf6\xc1', + -0x93e: b'\x11\xf6\xc2', + -0x93d: b'\x11\xf6\xc3', + -0x93c: b'\x11\xf6\xc4', + -0x93b: b'\x11\xf6\xc5', + -0x93a: b'\x11\xf6\xc6', + -0x939: b'\x11\xf6\xc7', + -0x938: b'\x11\xf6\xc8', + -0x937: b'\x11\xf6\xc9', + -0x936: b'\x11\xf6\xca', + -0x935: b'\x11\xf6\xcb', + -0x934: b'\x11\xf6\xcc', + -0x933: b'\x11\xf6\xcd', + -0x932: b'\x11\xf6\xce', + -0x931: b'\x11\xf6\xcf', + -0x930: b'\x11\xf6\xd0', + -0x92f: b'\x11\xf6\xd1', + -0x92e: b'\x11\xf6\xd2', + -0x92d: b'\x11\xf6\xd3', + -0x92c: b'\x11\xf6\xd4', + -0x92b: b'\x11\xf6\xd5', + -0x92a: b'\x11\xf6\xd6', + -0x929: b'\x11\xf6\xd7', + -0x928: b'\x11\xf6\xd8', + -0x927: b'\x11\xf6\xd9', + -0x926: b'\x11\xf6\xda', + -0x925: b'\x11\xf6\xdb', + -0x924: b'\x11\xf6\xdc', + -0x923: b'\x11\xf6\xdd', + -0x922: b'\x11\xf6\xde', + -0x921: b'\x11\xf6\xdf', + -0x920: b'\x11\xf6\xe0', + -0x91f: b'\x11\xf6\xe1', + -0x91e: b'\x11\xf6\xe2', + -0x91d: b'\x11\xf6\xe3', + -0x91c: b'\x11\xf6\xe4', + -0x91b: b'\x11\xf6\xe5', + -0x91a: b'\x11\xf6\xe6', + -0x919: b'\x11\xf6\xe7', + -0x918: b'\x11\xf6\xe8', + -0x917: b'\x11\xf6\xe9', + -0x916: b'\x11\xf6\xea', + -0x915: b'\x11\xf6\xeb', + -0x914: b'\x11\xf6\xec', + -0x913: b'\x11\xf6\xed', + -0x912: b'\x11\xf6\xee', + -0x911: b'\x11\xf6\xef', + -0x910: b'\x11\xf6\xf0', + -0x90f: b'\x11\xf6\xf1', + -0x90e: b'\x11\xf6\xf2', + -0x90d: b'\x11\xf6\xf3', + -0x90c: b'\x11\xf6\xf4', + -0x90b: b'\x11\xf6\xf5', + -0x90a: b'\x11\xf6\xf6', + -0x909: b'\x11\xf6\xf7', + -0x908: b'\x11\xf6\xf8', + -0x907: b'\x11\xf6\xf9', + -0x906: b'\x11\xf6\xfa', + -0x905: b'\x11\xf6\xfb', + -0x904: b'\x11\xf6\xfc', + -0x903: b'\x11\xf6\xfd', + -0x902: b'\x11\xf6\xfe', + -0x901: b'\x11\xf6\xff', + -0x900: b'\x11\xf7\x00', + -0x8ff: b'\x11\xf7\x01', + -0x8fe: b'\x11\xf7\x02', + -0x8fd: b'\x11\xf7\x03', + -0x8fc: b'\x11\xf7\x04', + -0x8fb: b'\x11\xf7\x05', + -0x8fa: b'\x11\xf7\x06', + -0x8f9: b'\x11\xf7\x07', + -0x8f8: b'\x11\xf7\x08', + -0x8f7: b'\x11\xf7\t', + -0x8f6: b'\x11\xf7\n', + -0x8f5: b'\x11\xf7\x0b', + -0x8f4: b'\x11\xf7\x0c', + -0x8f3: b'\x11\xf7\r', + -0x8f2: b'\x11\xf7\x0e', + -0x8f1: b'\x11\xf7\x0f', + -0x8f0: b'\x11\xf7\x10', + -0x8ef: b'\x11\xf7\x11', + -0x8ee: b'\x11\xf7\x12', + -0x8ed: b'\x11\xf7\x13', + -0x8ec: b'\x11\xf7\x14', + -0x8eb: b'\x11\xf7\x15', + -0x8ea: b'\x11\xf7\x16', + -0x8e9: b'\x11\xf7\x17', + -0x8e8: b'\x11\xf7\x18', + -0x8e7: b'\x11\xf7\x19', + -0x8e6: b'\x11\xf7\x1a', + -0x8e5: b'\x11\xf7\x1b', + -0x8e4: b'\x11\xf7\x1c', + -0x8e3: b'\x11\xf7\x1d', + -0x8e2: b'\x11\xf7\x1e', + -0x8e1: b'\x11\xf7\x1f', + -0x8e0: b'\x11\xf7 ', + -0x8df: b'\x11\xf7!', + -0x8de: b'\x11\xf7"', + -0x8dd: b'\x11\xf7#', + -0x8dc: b'\x11\xf7$', + -0x8db: b'\x11\xf7%', + -0x8da: b'\x11\xf7&', + -0x8d9: b"\x11\xf7'", + -0x8d8: b'\x11\xf7(', + -0x8d7: b'\x11\xf7)', + -0x8d6: b'\x11\xf7*', + -0x8d5: b'\x11\xf7+', + -0x8d4: b'\x11\xf7,', + -0x8d3: b'\x11\xf7-', + -0x8d2: b'\x11\xf7.', + -0x8d1: b'\x11\xf7/', + -0x8d0: b'\x11\xf70', + -0x8cf: b'\x11\xf71', + -0x8ce: b'\x11\xf72', + -0x8cd: b'\x11\xf73', + -0x8cc: b'\x11\xf74', + -0x8cb: b'\x11\xf75', + -0x8ca: b'\x11\xf76', + -0x8c9: b'\x11\xf77', + -0x8c8: b'\x11\xf78', + -0x8c7: b'\x11\xf79', + -0x8c6: b'\x11\xf7:', + -0x8c5: b'\x11\xf7;', + -0x8c4: b'\x11\xf7<', + -0x8c3: b'\x11\xf7=', + -0x8c2: b'\x11\xf7>', + -0x8c1: b'\x11\xf7?', + -0x8c0: b'\x11\xf7@', + -0x8bf: b'\x11\xf7A', + -0x8be: b'\x11\xf7B', + -0x8bd: b'\x11\xf7C', + -0x8bc: b'\x11\xf7D', + -0x8bb: b'\x11\xf7E', + -0x8ba: b'\x11\xf7F', + -0x8b9: b'\x11\xf7G', + -0x8b8: b'\x11\xf7H', + -0x8b7: b'\x11\xf7I', + -0x8b6: b'\x11\xf7J', + -0x8b5: b'\x11\xf7K', + -0x8b4: b'\x11\xf7L', + -0x8b3: b'\x11\xf7M', + -0x8b2: b'\x11\xf7N', + -0x8b1: b'\x11\xf7O', + -0x8b0: b'\x11\xf7P', + -0x8af: b'\x11\xf7Q', + -0x8ae: b'\x11\xf7R', + -0x8ad: b'\x11\xf7S', + -0x8ac: b'\x11\xf7T', + -0x8ab: b'\x11\xf7U', + -0x8aa: b'\x11\xf7V', + -0x8a9: b'\x11\xf7W', + -0x8a8: b'\x11\xf7X', + -0x8a7: b'\x11\xf7Y', + -0x8a6: b'\x11\xf7Z', + -0x8a5: b'\x11\xf7[', + -0x8a4: b'\x11\xf7\\', + -0x8a3: b'\x11\xf7]', + -0x8a2: b'\x11\xf7^', + -0x8a1: b'\x11\xf7_', + -0x8a0: b'\x11\xf7`', + -0x89f: b'\x11\xf7a', + -0x89e: b'\x11\xf7b', + -0x89d: b'\x11\xf7c', + -0x89c: b'\x11\xf7d', + -0x89b: b'\x11\xf7e', + -0x89a: b'\x11\xf7f', + -0x899: b'\x11\xf7g', + -0x898: b'\x11\xf7h', + -0x897: b'\x11\xf7i', + -0x896: b'\x11\xf7j', + -0x895: b'\x11\xf7k', + -0x894: b'\x11\xf7l', + -0x893: b'\x11\xf7m', + -0x892: b'\x11\xf7n', + -0x891: b'\x11\xf7o', + -0x890: b'\x11\xf7p', + -0x88f: b'\x11\xf7q', + -0x88e: b'\x11\xf7r', + -0x88d: b'\x11\xf7s', + -0x88c: b'\x11\xf7t', + -0x88b: b'\x11\xf7u', + -0x88a: b'\x11\xf7v', + -0x889: b'\x11\xf7w', + -0x888: b'\x11\xf7x', + -0x887: b'\x11\xf7y', + -0x886: b'\x11\xf7z', + -0x885: b'\x11\xf7{', + -0x884: b'\x11\xf7|', + -0x883: b'\x11\xf7}', + -0x882: b'\x11\xf7~', + -0x881: b'\x11\xf7\x7f', + -0x880: b'\x11\xf7\x80', + -0x87f: b'\x11\xf7\x81', + -0x87e: b'\x11\xf7\x82', + -0x87d: b'\x11\xf7\x83', + -0x87c: b'\x11\xf7\x84', + -0x87b: b'\x11\xf7\x85', + -0x87a: b'\x11\xf7\x86', + -0x879: b'\x11\xf7\x87', + -0x878: b'\x11\xf7\x88', + -0x877: b'\x11\xf7\x89', + -0x876: b'\x11\xf7\x8a', + -0x875: b'\x11\xf7\x8b', + -0x874: b'\x11\xf7\x8c', + -0x873: b'\x11\xf7\x8d', + -0x872: b'\x11\xf7\x8e', + -0x871: b'\x11\xf7\x8f', + -0x870: b'\x11\xf7\x90', + -0x86f: b'\x11\xf7\x91', + -0x86e: b'\x11\xf7\x92', + -0x86d: b'\x11\xf7\x93', + -0x86c: b'\x11\xf7\x94', + -0x86b: b'\x11\xf7\x95', + -0x86a: b'\x11\xf7\x96', + -0x869: b'\x11\xf7\x97', + -0x868: b'\x11\xf7\x98', + -0x867: b'\x11\xf7\x99', + -0x866: b'\x11\xf7\x9a', + -0x865: b'\x11\xf7\x9b', + -0x864: b'\x11\xf7\x9c', + -0x863: b'\x11\xf7\x9d', + -0x862: b'\x11\xf7\x9e', + -0x861: b'\x11\xf7\x9f', + -0x860: b'\x11\xf7\xa0', + -0x85f: b'\x11\xf7\xa1', + -0x85e: b'\x11\xf7\xa2', + -0x85d: b'\x11\xf7\xa3', + -0x85c: b'\x11\xf7\xa4', + -0x85b: b'\x11\xf7\xa5', + -0x85a: b'\x11\xf7\xa6', + -0x859: b'\x11\xf7\xa7', + -0x858: b'\x11\xf7\xa8', + -0x857: b'\x11\xf7\xa9', + -0x856: b'\x11\xf7\xaa', + -0x855: b'\x11\xf7\xab', + -0x854: b'\x11\xf7\xac', + -0x853: b'\x11\xf7\xad', + -0x852: b'\x11\xf7\xae', + -0x851: b'\x11\xf7\xaf', + -0x850: b'\x11\xf7\xb0', + -0x84f: b'\x11\xf7\xb1', + -0x84e: b'\x11\xf7\xb2', + -0x84d: b'\x11\xf7\xb3', + -0x84c: b'\x11\xf7\xb4', + -0x84b: b'\x11\xf7\xb5', + -0x84a: b'\x11\xf7\xb6', + -0x849: b'\x11\xf7\xb7', + -0x848: b'\x11\xf7\xb8', + -0x847: b'\x11\xf7\xb9', + -0x846: b'\x11\xf7\xba', + -0x845: b'\x11\xf7\xbb', + -0x844: b'\x11\xf7\xbc', + -0x843: b'\x11\xf7\xbd', + -0x842: b'\x11\xf7\xbe', + -0x841: b'\x11\xf7\xbf', + -0x840: b'\x11\xf7\xc0', + -0x83f: b'\x11\xf7\xc1', + -0x83e: b'\x11\xf7\xc2', + -0x83d: b'\x11\xf7\xc3', + -0x83c: b'\x11\xf7\xc4', + -0x83b: b'\x11\xf7\xc5', + -0x83a: b'\x11\xf7\xc6', + -0x839: b'\x11\xf7\xc7', + -0x838: b'\x11\xf7\xc8', + -0x837: b'\x11\xf7\xc9', + -0x836: b'\x11\xf7\xca', + -0x835: b'\x11\xf7\xcb', + -0x834: b'\x11\xf7\xcc', + -0x833: b'\x11\xf7\xcd', + -0x832: b'\x11\xf7\xce', + -0x831: b'\x11\xf7\xcf', + -0x830: b'\x11\xf7\xd0', + -0x82f: b'\x11\xf7\xd1', + -0x82e: b'\x11\xf7\xd2', + -0x82d: b'\x11\xf7\xd3', + -0x82c: b'\x11\xf7\xd4', + -0x82b: b'\x11\xf7\xd5', + -0x82a: b'\x11\xf7\xd6', + -0x829: b'\x11\xf7\xd7', + -0x828: b'\x11\xf7\xd8', + -0x827: b'\x11\xf7\xd9', + -0x826: b'\x11\xf7\xda', + -0x825: b'\x11\xf7\xdb', + -0x824: b'\x11\xf7\xdc', + -0x823: b'\x11\xf7\xdd', + -0x822: b'\x11\xf7\xde', + -0x821: b'\x11\xf7\xdf', + -0x820: b'\x11\xf7\xe0', + -0x81f: b'\x11\xf7\xe1', + -0x81e: b'\x11\xf7\xe2', + -0x81d: b'\x11\xf7\xe3', + -0x81c: b'\x11\xf7\xe4', + -0x81b: b'\x11\xf7\xe5', + -0x81a: b'\x11\xf7\xe6', + -0x819: b'\x11\xf7\xe7', + -0x818: b'\x11\xf7\xe8', + -0x817: b'\x11\xf7\xe9', + -0x816: b'\x11\xf7\xea', + -0x815: b'\x11\xf7\xeb', + -0x814: b'\x11\xf7\xec', + -0x813: b'\x11\xf7\xed', + -0x812: b'\x11\xf7\xee', + -0x811: b'\x11\xf7\xef', + -0x810: b'\x11\xf7\xf0', + -0x80f: b'\x11\xf7\xf1', + -0x80e: b'\x11\xf7\xf2', + -0x80d: b'\x11\xf7\xf3', + -0x80c: b'\x11\xf7\xf4', + -0x80b: b'\x11\xf7\xf5', + -0x80a: b'\x11\xf7\xf6', + -0x809: b'\x11\xf7\xf7', + -0x808: b'\x11\xf7\xf8', + -0x807: b'\x11\xf7\xf9', + -0x806: b'\x11\xf7\xfa', + -0x805: b'\x11\xf7\xfb', + -0x804: b'\x11\xf7\xfc', + -0x803: b'\x11\xf7\xfd', + -0x802: b'\x11\xf7\xfe', + -0x801: b'\x11\xf7\xff', + -0x800: b'\x11\xf8\x00', + -0x7ff: b'\x11\xf8\x01', + -0x7fe: b'\x11\xf8\x02', + -0x7fd: b'\x11\xf8\x03', + -0x7fc: b'\x11\xf8\x04', + -0x7fb: b'\x11\xf8\x05', + -0x7fa: b'\x11\xf8\x06', + -0x7f9: b'\x11\xf8\x07', + -0x7f8: b'\x11\xf8\x08', + -0x7f7: b'\x11\xf8\t', + -0x7f6: b'\x11\xf8\n', + -0x7f5: b'\x11\xf8\x0b', + -0x7f4: b'\x11\xf8\x0c', + -0x7f3: b'\x11\xf8\r', + -0x7f2: b'\x11\xf8\x0e', + -0x7f1: b'\x11\xf8\x0f', + -0x7f0: b'\x11\xf8\x10', + -0x7ef: b'\x11\xf8\x11', + -0x7ee: b'\x11\xf8\x12', + -0x7ed: b'\x11\xf8\x13', + -0x7ec: b'\x11\xf8\x14', + -0x7eb: b'\x11\xf8\x15', + -0x7ea: b'\x11\xf8\x16', + -0x7e9: b'\x11\xf8\x17', + -0x7e8: b'\x11\xf8\x18', + -0x7e7: b'\x11\xf8\x19', + -0x7e6: b'\x11\xf8\x1a', + -0x7e5: b'\x11\xf8\x1b', + -0x7e4: b'\x11\xf8\x1c', + -0x7e3: b'\x11\xf8\x1d', + -0x7e2: b'\x11\xf8\x1e', + -0x7e1: b'\x11\xf8\x1f', + -0x7e0: b'\x11\xf8 ', + -0x7df: b'\x11\xf8!', + -0x7de: b'\x11\xf8"', + -0x7dd: b'\x11\xf8#', + -0x7dc: b'\x11\xf8$', + -0x7db: b'\x11\xf8%', + -0x7da: b'\x11\xf8&', + -0x7d9: b"\x11\xf8'", + -0x7d8: b'\x11\xf8(', + -0x7d7: b'\x11\xf8)', + -0x7d6: b'\x11\xf8*', + -0x7d5: b'\x11\xf8+', + -0x7d4: b'\x11\xf8,', + -0x7d3: b'\x11\xf8-', + -0x7d2: b'\x11\xf8.', + -0x7d1: b'\x11\xf8/', + -0x7d0: b'\x11\xf80', + -0x7cf: b'\x11\xf81', + -0x7ce: b'\x11\xf82', + -0x7cd: b'\x11\xf83', + -0x7cc: b'\x11\xf84', + -0x7cb: b'\x11\xf85', + -0x7ca: b'\x11\xf86', + -0x7c9: b'\x11\xf87', + -0x7c8: b'\x11\xf88', + -0x7c7: b'\x11\xf89', + -0x7c6: b'\x11\xf8:', + -0x7c5: b'\x11\xf8;', + -0x7c4: b'\x11\xf8<', + -0x7c3: b'\x11\xf8=', + -0x7c2: b'\x11\xf8>', + -0x7c1: b'\x11\xf8?', + -0x7c0: b'\x11\xf8@', + -0x7bf: b'\x11\xf8A', + -0x7be: b'\x11\xf8B', + -0x7bd: b'\x11\xf8C', + -0x7bc: b'\x11\xf8D', + -0x7bb: b'\x11\xf8E', + -0x7ba: b'\x11\xf8F', + -0x7b9: b'\x11\xf8G', + -0x7b8: b'\x11\xf8H', + -0x7b7: b'\x11\xf8I', + -0x7b6: b'\x11\xf8J', + -0x7b5: b'\x11\xf8K', + -0x7b4: b'\x11\xf8L', + -0x7b3: b'\x11\xf8M', + -0x7b2: b'\x11\xf8N', + -0x7b1: b'\x11\xf8O', + -0x7b0: b'\x11\xf8P', + -0x7af: b'\x11\xf8Q', + -0x7ae: b'\x11\xf8R', + -0x7ad: b'\x11\xf8S', + -0x7ac: b'\x11\xf8T', + -0x7ab: b'\x11\xf8U', + -0x7aa: b'\x11\xf8V', + -0x7a9: b'\x11\xf8W', + -0x7a8: b'\x11\xf8X', + -0x7a7: b'\x11\xf8Y', + -0x7a6: b'\x11\xf8Z', + -0x7a5: b'\x11\xf8[', + -0x7a4: b'\x11\xf8\\', + -0x7a3: b'\x11\xf8]', + -0x7a2: b'\x11\xf8^', + -0x7a1: b'\x11\xf8_', + -0x7a0: b'\x11\xf8`', + -0x79f: b'\x11\xf8a', + -0x79e: b'\x11\xf8b', + -0x79d: b'\x11\xf8c', + -0x79c: b'\x11\xf8d', + -0x79b: b'\x11\xf8e', + -0x79a: b'\x11\xf8f', + -0x799: b'\x11\xf8g', + -0x798: b'\x11\xf8h', + -0x797: b'\x11\xf8i', + -0x796: b'\x11\xf8j', + -0x795: b'\x11\xf8k', + -0x794: b'\x11\xf8l', + -0x793: b'\x11\xf8m', + -0x792: b'\x11\xf8n', + -0x791: b'\x11\xf8o', + -0x790: b'\x11\xf8p', + -0x78f: b'\x11\xf8q', + -0x78e: b'\x11\xf8r', + -0x78d: b'\x11\xf8s', + -0x78c: b'\x11\xf8t', + -0x78b: b'\x11\xf8u', + -0x78a: b'\x11\xf8v', + -0x789: b'\x11\xf8w', + -0x788: b'\x11\xf8x', + -0x787: b'\x11\xf8y', + -0x786: b'\x11\xf8z', + -0x785: b'\x11\xf8{', + -0x784: b'\x11\xf8|', + -0x783: b'\x11\xf8}', + -0x782: b'\x11\xf8~', + -0x781: b'\x11\xf8\x7f', + -0x780: b'\x11\xf8\x80', + -0x77f: b'\x11\xf8\x81', + -0x77e: b'\x11\xf8\x82', + -0x77d: b'\x11\xf8\x83', + -0x77c: b'\x11\xf8\x84', + -0x77b: b'\x11\xf8\x85', + -0x77a: b'\x11\xf8\x86', + -0x779: b'\x11\xf8\x87', + -0x778: b'\x11\xf8\x88', + -0x777: b'\x11\xf8\x89', + -0x776: b'\x11\xf8\x8a', + -0x775: b'\x11\xf8\x8b', + -0x774: b'\x11\xf8\x8c', + -0x773: b'\x11\xf8\x8d', + -0x772: b'\x11\xf8\x8e', + -0x771: b'\x11\xf8\x8f', + -0x770: b'\x11\xf8\x90', + -0x76f: b'\x11\xf8\x91', + -0x76e: b'\x11\xf8\x92', + -0x76d: b'\x11\xf8\x93', + -0x76c: b'\x11\xf8\x94', + -0x76b: b'\x11\xf8\x95', + -0x76a: b'\x11\xf8\x96', + -0x769: b'\x11\xf8\x97', + -0x768: b'\x11\xf8\x98', + -0x767: b'\x11\xf8\x99', + -0x766: b'\x11\xf8\x9a', + -0x765: b'\x11\xf8\x9b', + -0x764: b'\x11\xf8\x9c', + -0x763: b'\x11\xf8\x9d', + -0x762: b'\x11\xf8\x9e', + -0x761: b'\x11\xf8\x9f', + -0x760: b'\x11\xf8\xa0', + -0x75f: b'\x11\xf8\xa1', + -0x75e: b'\x11\xf8\xa2', + -0x75d: b'\x11\xf8\xa3', + -0x75c: b'\x11\xf8\xa4', + -0x75b: b'\x11\xf8\xa5', + -0x75a: b'\x11\xf8\xa6', + -0x759: b'\x11\xf8\xa7', + -0x758: b'\x11\xf8\xa8', + -0x757: b'\x11\xf8\xa9', + -0x756: b'\x11\xf8\xaa', + -0x755: b'\x11\xf8\xab', + -0x754: b'\x11\xf8\xac', + -0x753: b'\x11\xf8\xad', + -0x752: b'\x11\xf8\xae', + -0x751: b'\x11\xf8\xaf', + -0x750: b'\x11\xf8\xb0', + -0x74f: b'\x11\xf8\xb1', + -0x74e: b'\x11\xf8\xb2', + -0x74d: b'\x11\xf8\xb3', + -0x74c: b'\x11\xf8\xb4', + -0x74b: b'\x11\xf8\xb5', + -0x74a: b'\x11\xf8\xb6', + -0x749: b'\x11\xf8\xb7', + -0x748: b'\x11\xf8\xb8', + -0x747: b'\x11\xf8\xb9', + -0x746: b'\x11\xf8\xba', + -0x745: b'\x11\xf8\xbb', + -0x744: b'\x11\xf8\xbc', + -0x743: b'\x11\xf8\xbd', + -0x742: b'\x11\xf8\xbe', + -0x741: b'\x11\xf8\xbf', + -0x740: b'\x11\xf8\xc0', + -0x73f: b'\x11\xf8\xc1', + -0x73e: b'\x11\xf8\xc2', + -0x73d: b'\x11\xf8\xc3', + -0x73c: b'\x11\xf8\xc4', + -0x73b: b'\x11\xf8\xc5', + -0x73a: b'\x11\xf8\xc6', + -0x739: b'\x11\xf8\xc7', + -0x738: b'\x11\xf8\xc8', + -0x737: b'\x11\xf8\xc9', + -0x736: b'\x11\xf8\xca', + -0x735: b'\x11\xf8\xcb', + -0x734: b'\x11\xf8\xcc', + -0x733: b'\x11\xf8\xcd', + -0x732: b'\x11\xf8\xce', + -0x731: b'\x11\xf8\xcf', + -0x730: b'\x11\xf8\xd0', + -0x72f: b'\x11\xf8\xd1', + -0x72e: b'\x11\xf8\xd2', + -0x72d: b'\x11\xf8\xd3', + -0x72c: b'\x11\xf8\xd4', + -0x72b: b'\x11\xf8\xd5', + -0x72a: b'\x11\xf8\xd6', + -0x729: b'\x11\xf8\xd7', + -0x728: b'\x11\xf8\xd8', + -0x727: b'\x11\xf8\xd9', + -0x726: b'\x11\xf8\xda', + -0x725: b'\x11\xf8\xdb', + -0x724: b'\x11\xf8\xdc', + -0x723: b'\x11\xf8\xdd', + -0x722: b'\x11\xf8\xde', + -0x721: b'\x11\xf8\xdf', + -0x720: b'\x11\xf8\xe0', + -0x71f: b'\x11\xf8\xe1', + -0x71e: b'\x11\xf8\xe2', + -0x71d: b'\x11\xf8\xe3', + -0x71c: b'\x11\xf8\xe4', + -0x71b: b'\x11\xf8\xe5', + -0x71a: b'\x11\xf8\xe6', + -0x719: b'\x11\xf8\xe7', + -0x718: b'\x11\xf8\xe8', + -0x717: b'\x11\xf8\xe9', + -0x716: b'\x11\xf8\xea', + -0x715: b'\x11\xf8\xeb', + -0x714: b'\x11\xf8\xec', + -0x713: b'\x11\xf8\xed', + -0x712: b'\x11\xf8\xee', + -0x711: b'\x11\xf8\xef', + -0x710: b'\x11\xf8\xf0', + -0x70f: b'\x11\xf8\xf1', + -0x70e: b'\x11\xf8\xf2', + -0x70d: b'\x11\xf8\xf3', + -0x70c: b'\x11\xf8\xf4', + -0x70b: b'\x11\xf8\xf5', + -0x70a: b'\x11\xf8\xf6', + -0x709: b'\x11\xf8\xf7', + -0x708: b'\x11\xf8\xf8', + -0x707: b'\x11\xf8\xf9', + -0x706: b'\x11\xf8\xfa', + -0x705: b'\x11\xf8\xfb', + -0x704: b'\x11\xf8\xfc', + -0x703: b'\x11\xf8\xfd', + -0x702: b'\x11\xf8\xfe', + -0x701: b'\x11\xf8\xff', + -0x700: b'\x11\xf9\x00', + -0x6ff: b'\x11\xf9\x01', + -0x6fe: b'\x11\xf9\x02', + -0x6fd: b'\x11\xf9\x03', + -0x6fc: b'\x11\xf9\x04', + -0x6fb: b'\x11\xf9\x05', + -0x6fa: b'\x11\xf9\x06', + -0x6f9: b'\x11\xf9\x07', + -0x6f8: b'\x11\xf9\x08', + -0x6f7: b'\x11\xf9\t', + -0x6f6: b'\x11\xf9\n', + -0x6f5: b'\x11\xf9\x0b', + -0x6f4: b'\x11\xf9\x0c', + -0x6f3: b'\x11\xf9\r', + -0x6f2: b'\x11\xf9\x0e', + -0x6f1: b'\x11\xf9\x0f', + -0x6f0: b'\x11\xf9\x10', + -0x6ef: b'\x11\xf9\x11', + -0x6ee: b'\x11\xf9\x12', + -0x6ed: b'\x11\xf9\x13', + -0x6ec: b'\x11\xf9\x14', + -0x6eb: b'\x11\xf9\x15', + -0x6ea: b'\x11\xf9\x16', + -0x6e9: b'\x11\xf9\x17', + -0x6e8: b'\x11\xf9\x18', + -0x6e7: b'\x11\xf9\x19', + -0x6e6: b'\x11\xf9\x1a', + -0x6e5: b'\x11\xf9\x1b', + -0x6e4: b'\x11\xf9\x1c', + -0x6e3: b'\x11\xf9\x1d', + -0x6e2: b'\x11\xf9\x1e', + -0x6e1: b'\x11\xf9\x1f', + -0x6e0: b'\x11\xf9 ', + -0x6df: b'\x11\xf9!', + -0x6de: b'\x11\xf9"', + -0x6dd: b'\x11\xf9#', + -0x6dc: b'\x11\xf9$', + -0x6db: b'\x11\xf9%', + -0x6da: b'\x11\xf9&', + -0x6d9: b"\x11\xf9'", + -0x6d8: b'\x11\xf9(', + -0x6d7: b'\x11\xf9)', + -0x6d6: b'\x11\xf9*', + -0x6d5: b'\x11\xf9+', + -0x6d4: b'\x11\xf9,', + -0x6d3: b'\x11\xf9-', + -0x6d2: b'\x11\xf9.', + -0x6d1: b'\x11\xf9/', + -0x6d0: b'\x11\xf90', + -0x6cf: b'\x11\xf91', + -0x6ce: b'\x11\xf92', + -0x6cd: b'\x11\xf93', + -0x6cc: b'\x11\xf94', + -0x6cb: b'\x11\xf95', + -0x6ca: b'\x11\xf96', + -0x6c9: b'\x11\xf97', + -0x6c8: b'\x11\xf98', + -0x6c7: b'\x11\xf99', + -0x6c6: b'\x11\xf9:', + -0x6c5: b'\x11\xf9;', + -0x6c4: b'\x11\xf9<', + -0x6c3: b'\x11\xf9=', + -0x6c2: b'\x11\xf9>', + -0x6c1: b'\x11\xf9?', + -0x6c0: b'\x11\xf9@', + -0x6bf: b'\x11\xf9A', + -0x6be: b'\x11\xf9B', + -0x6bd: b'\x11\xf9C', + -0x6bc: b'\x11\xf9D', + -0x6bb: b'\x11\xf9E', + -0x6ba: b'\x11\xf9F', + -0x6b9: b'\x11\xf9G', + -0x6b8: b'\x11\xf9H', + -0x6b7: b'\x11\xf9I', + -0x6b6: b'\x11\xf9J', + -0x6b5: b'\x11\xf9K', + -0x6b4: b'\x11\xf9L', + -0x6b3: b'\x11\xf9M', + -0x6b2: b'\x11\xf9N', + -0x6b1: b'\x11\xf9O', + -0x6b0: b'\x11\xf9P', + -0x6af: b'\x11\xf9Q', + -0x6ae: b'\x11\xf9R', + -0x6ad: b'\x11\xf9S', + -0x6ac: b'\x11\xf9T', + -0x6ab: b'\x11\xf9U', + -0x6aa: b'\x11\xf9V', + -0x6a9: b'\x11\xf9W', + -0x6a8: b'\x11\xf9X', + -0x6a7: b'\x11\xf9Y', + -0x6a6: b'\x11\xf9Z', + -0x6a5: b'\x11\xf9[', + -0x6a4: b'\x11\xf9\\', + -0x6a3: b'\x11\xf9]', + -0x6a2: b'\x11\xf9^', + -0x6a1: b'\x11\xf9_', + -0x6a0: b'\x11\xf9`', + -0x69f: b'\x11\xf9a', + -0x69e: b'\x11\xf9b', + -0x69d: b'\x11\xf9c', + -0x69c: b'\x11\xf9d', + -0x69b: b'\x11\xf9e', + -0x69a: b'\x11\xf9f', + -0x699: b'\x11\xf9g', + -0x698: b'\x11\xf9h', + -0x697: b'\x11\xf9i', + -0x696: b'\x11\xf9j', + -0x695: b'\x11\xf9k', + -0x694: b'\x11\xf9l', + -0x693: b'\x11\xf9m', + -0x692: b'\x11\xf9n', + -0x691: b'\x11\xf9o', + -0x690: b'\x11\xf9p', + -0x68f: b'\x11\xf9q', + -0x68e: b'\x11\xf9r', + -0x68d: b'\x11\xf9s', + -0x68c: b'\x11\xf9t', + -0x68b: b'\x11\xf9u', + -0x68a: b'\x11\xf9v', + -0x689: b'\x11\xf9w', + -0x688: b'\x11\xf9x', + -0x687: b'\x11\xf9y', + -0x686: b'\x11\xf9z', + -0x685: b'\x11\xf9{', + -0x684: b'\x11\xf9|', + -0x683: b'\x11\xf9}', + -0x682: b'\x11\xf9~', + -0x681: b'\x11\xf9\x7f', + -0x680: b'\x11\xf9\x80', + -0x67f: b'\x11\xf9\x81', + -0x67e: b'\x11\xf9\x82', + -0x67d: b'\x11\xf9\x83', + -0x67c: b'\x11\xf9\x84', + -0x67b: b'\x11\xf9\x85', + -0x67a: b'\x11\xf9\x86', + -0x679: b'\x11\xf9\x87', + -0x678: b'\x11\xf9\x88', + -0x677: b'\x11\xf9\x89', + -0x676: b'\x11\xf9\x8a', + -0x675: b'\x11\xf9\x8b', + -0x674: b'\x11\xf9\x8c', + -0x673: b'\x11\xf9\x8d', + -0x672: b'\x11\xf9\x8e', + -0x671: b'\x11\xf9\x8f', + -0x670: b'\x11\xf9\x90', + -0x66f: b'\x11\xf9\x91', + -0x66e: b'\x11\xf9\x92', + -0x66d: b'\x11\xf9\x93', + -0x66c: b'\x11\xf9\x94', + -0x66b: b'\x11\xf9\x95', + -0x66a: b'\x11\xf9\x96', + -0x669: b'\x11\xf9\x97', + -0x668: b'\x11\xf9\x98', + -0x667: b'\x11\xf9\x99', + -0x666: b'\x11\xf9\x9a', + -0x665: b'\x11\xf9\x9b', + -0x664: b'\x11\xf9\x9c', + -0x663: b'\x11\xf9\x9d', + -0x662: b'\x11\xf9\x9e', + -0x661: b'\x11\xf9\x9f', + -0x660: b'\x11\xf9\xa0', + -0x65f: b'\x11\xf9\xa1', + -0x65e: b'\x11\xf9\xa2', + -0x65d: b'\x11\xf9\xa3', + -0x65c: b'\x11\xf9\xa4', + -0x65b: b'\x11\xf9\xa5', + -0x65a: b'\x11\xf9\xa6', + -0x659: b'\x11\xf9\xa7', + -0x658: b'\x11\xf9\xa8', + -0x657: b'\x11\xf9\xa9', + -0x656: b'\x11\xf9\xaa', + -0x655: b'\x11\xf9\xab', + -0x654: b'\x11\xf9\xac', + -0x653: b'\x11\xf9\xad', + -0x652: b'\x11\xf9\xae', + -0x651: b'\x11\xf9\xaf', + -0x650: b'\x11\xf9\xb0', + -0x64f: b'\x11\xf9\xb1', + -0x64e: b'\x11\xf9\xb2', + -0x64d: b'\x11\xf9\xb3', + -0x64c: b'\x11\xf9\xb4', + -0x64b: b'\x11\xf9\xb5', + -0x64a: b'\x11\xf9\xb6', + -0x649: b'\x11\xf9\xb7', + -0x648: b'\x11\xf9\xb8', + -0x647: b'\x11\xf9\xb9', + -0x646: b'\x11\xf9\xba', + -0x645: b'\x11\xf9\xbb', + -0x644: b'\x11\xf9\xbc', + -0x643: b'\x11\xf9\xbd', + -0x642: b'\x11\xf9\xbe', + -0x641: b'\x11\xf9\xbf', + -0x640: b'\x11\xf9\xc0', + -0x63f: b'\x11\xf9\xc1', + -0x63e: b'\x11\xf9\xc2', + -0x63d: b'\x11\xf9\xc3', + -0x63c: b'\x11\xf9\xc4', + -0x63b: b'\x11\xf9\xc5', + -0x63a: b'\x11\xf9\xc6', + -0x639: b'\x11\xf9\xc7', + -0x638: b'\x11\xf9\xc8', + -0x637: b'\x11\xf9\xc9', + -0x636: b'\x11\xf9\xca', + -0x635: b'\x11\xf9\xcb', + -0x634: b'\x11\xf9\xcc', + -0x633: b'\x11\xf9\xcd', + -0x632: b'\x11\xf9\xce', + -0x631: b'\x11\xf9\xcf', + -0x630: b'\x11\xf9\xd0', + -0x62f: b'\x11\xf9\xd1', + -0x62e: b'\x11\xf9\xd2', + -0x62d: b'\x11\xf9\xd3', + -0x62c: b'\x11\xf9\xd4', + -0x62b: b'\x11\xf9\xd5', + -0x62a: b'\x11\xf9\xd6', + -0x629: b'\x11\xf9\xd7', + -0x628: b'\x11\xf9\xd8', + -0x627: b'\x11\xf9\xd9', + -0x626: b'\x11\xf9\xda', + -0x625: b'\x11\xf9\xdb', + -0x624: b'\x11\xf9\xdc', + -0x623: b'\x11\xf9\xdd', + -0x622: b'\x11\xf9\xde', + -0x621: b'\x11\xf9\xdf', + -0x620: b'\x11\xf9\xe0', + -0x61f: b'\x11\xf9\xe1', + -0x61e: b'\x11\xf9\xe2', + -0x61d: b'\x11\xf9\xe3', + -0x61c: b'\x11\xf9\xe4', + -0x61b: b'\x11\xf9\xe5', + -0x61a: b'\x11\xf9\xe6', + -0x619: b'\x11\xf9\xe7', + -0x618: b'\x11\xf9\xe8', + -0x617: b'\x11\xf9\xe9', + -0x616: b'\x11\xf9\xea', + -0x615: b'\x11\xf9\xeb', + -0x614: b'\x11\xf9\xec', + -0x613: b'\x11\xf9\xed', + -0x612: b'\x11\xf9\xee', + -0x611: b'\x11\xf9\xef', + -0x610: b'\x11\xf9\xf0', + -0x60f: b'\x11\xf9\xf1', + -0x60e: b'\x11\xf9\xf2', + -0x60d: b'\x11\xf9\xf3', + -0x60c: b'\x11\xf9\xf4', + -0x60b: b'\x11\xf9\xf5', + -0x60a: b'\x11\xf9\xf6', + -0x609: b'\x11\xf9\xf7', + -0x608: b'\x11\xf9\xf8', + -0x607: b'\x11\xf9\xf9', + -0x606: b'\x11\xf9\xfa', + -0x605: b'\x11\xf9\xfb', + -0x604: b'\x11\xf9\xfc', + -0x603: b'\x11\xf9\xfd', + -0x602: b'\x11\xf9\xfe', + -0x601: b'\x11\xf9\xff', + -0x600: b'\x11\xfa\x00', + -0x5ff: b'\x11\xfa\x01', + -0x5fe: b'\x11\xfa\x02', + -0x5fd: b'\x11\xfa\x03', + -0x5fc: b'\x11\xfa\x04', + -0x5fb: b'\x11\xfa\x05', + -0x5fa: b'\x11\xfa\x06', + -0x5f9: b'\x11\xfa\x07', + -0x5f8: b'\x11\xfa\x08', + -0x5f7: b'\x11\xfa\t', + -0x5f6: b'\x11\xfa\n', + -0x5f5: b'\x11\xfa\x0b', + -0x5f4: b'\x11\xfa\x0c', + -0x5f3: b'\x11\xfa\r', + -0x5f2: b'\x11\xfa\x0e', + -0x5f1: b'\x11\xfa\x0f', + -0x5f0: b'\x11\xfa\x10', + -0x5ef: b'\x11\xfa\x11', + -0x5ee: b'\x11\xfa\x12', + -0x5ed: b'\x11\xfa\x13', + -0x5ec: b'\x11\xfa\x14', + -0x5eb: b'\x11\xfa\x15', + -0x5ea: b'\x11\xfa\x16', + -0x5e9: b'\x11\xfa\x17', + -0x5e8: b'\x11\xfa\x18', + -0x5e7: b'\x11\xfa\x19', + -0x5e6: b'\x11\xfa\x1a', + -0x5e5: b'\x11\xfa\x1b', + -0x5e4: b'\x11\xfa\x1c', + -0x5e3: b'\x11\xfa\x1d', + -0x5e2: b'\x11\xfa\x1e', + -0x5e1: b'\x11\xfa\x1f', + -0x5e0: b'\x11\xfa ', + -0x5df: b'\x11\xfa!', + -0x5de: b'\x11\xfa"', + -0x5dd: b'\x11\xfa#', + -0x5dc: b'\x11\xfa$', + -0x5db: b'\x11\xfa%', + -0x5da: b'\x11\xfa&', + -0x5d9: b"\x11\xfa'", + -0x5d8: b'\x11\xfa(', + -0x5d7: b'\x11\xfa)', + -0x5d6: b'\x11\xfa*', + -0x5d5: b'\x11\xfa+', + -0x5d4: b'\x11\xfa,', + -0x5d3: b'\x11\xfa-', + -0x5d2: b'\x11\xfa.', + -0x5d1: b'\x11\xfa/', + -0x5d0: b'\x11\xfa0', + -0x5cf: b'\x11\xfa1', + -0x5ce: b'\x11\xfa2', + -0x5cd: b'\x11\xfa3', + -0x5cc: b'\x11\xfa4', + -0x5cb: b'\x11\xfa5', + -0x5ca: b'\x11\xfa6', + -0x5c9: b'\x11\xfa7', + -0x5c8: b'\x11\xfa8', + -0x5c7: b'\x11\xfa9', + -0x5c6: b'\x11\xfa:', + -0x5c5: b'\x11\xfa;', + -0x5c4: b'\x11\xfa<', + -0x5c3: b'\x11\xfa=', + -0x5c2: b'\x11\xfa>', + -0x5c1: b'\x11\xfa?', + -0x5c0: b'\x11\xfa@', + -0x5bf: b'\x11\xfaA', + -0x5be: b'\x11\xfaB', + -0x5bd: b'\x11\xfaC', + -0x5bc: b'\x11\xfaD', + -0x5bb: b'\x11\xfaE', + -0x5ba: b'\x11\xfaF', + -0x5b9: b'\x11\xfaG', + -0x5b8: b'\x11\xfaH', + -0x5b7: b'\x11\xfaI', + -0x5b6: b'\x11\xfaJ', + -0x5b5: b'\x11\xfaK', + -0x5b4: b'\x11\xfaL', + -0x5b3: b'\x11\xfaM', + -0x5b2: b'\x11\xfaN', + -0x5b1: b'\x11\xfaO', + -0x5b0: b'\x11\xfaP', + -0x5af: b'\x11\xfaQ', + -0x5ae: b'\x11\xfaR', + -0x5ad: b'\x11\xfaS', + -0x5ac: b'\x11\xfaT', + -0x5ab: b'\x11\xfaU', + -0x5aa: b'\x11\xfaV', + -0x5a9: b'\x11\xfaW', + -0x5a8: b'\x11\xfaX', + -0x5a7: b'\x11\xfaY', + -0x5a6: b'\x11\xfaZ', + -0x5a5: b'\x11\xfa[', + -0x5a4: b'\x11\xfa\\', + -0x5a3: b'\x11\xfa]', + -0x5a2: b'\x11\xfa^', + -0x5a1: b'\x11\xfa_', + -0x5a0: b'\x11\xfa`', + -0x59f: b'\x11\xfaa', + -0x59e: b'\x11\xfab', + -0x59d: b'\x11\xfac', + -0x59c: b'\x11\xfad', + -0x59b: b'\x11\xfae', + -0x59a: b'\x11\xfaf', + -0x599: b'\x11\xfag', + -0x598: b'\x11\xfah', + -0x597: b'\x11\xfai', + -0x596: b'\x11\xfaj', + -0x595: b'\x11\xfak', + -0x594: b'\x11\xfal', + -0x593: b'\x11\xfam', + -0x592: b'\x11\xfan', + -0x591: b'\x11\xfao', + -0x590: b'\x11\xfap', + -0x58f: b'\x11\xfaq', + -0x58e: b'\x11\xfar', + -0x58d: b'\x11\xfas', + -0x58c: b'\x11\xfat', + -0x58b: b'\x11\xfau', + -0x58a: b'\x11\xfav', + -0x589: b'\x11\xfaw', + -0x588: b'\x11\xfax', + -0x587: b'\x11\xfay', + -0x586: b'\x11\xfaz', + -0x585: b'\x11\xfa{', + -0x584: b'\x11\xfa|', + -0x583: b'\x11\xfa}', + -0x582: b'\x11\xfa~', + -0x581: b'\x11\xfa\x7f', + -0x580: b'\x11\xfa\x80', + -0x57f: b'\x11\xfa\x81', + -0x57e: b'\x11\xfa\x82', + -0x57d: b'\x11\xfa\x83', + -0x57c: b'\x11\xfa\x84', + -0x57b: b'\x11\xfa\x85', + -0x57a: b'\x11\xfa\x86', + -0x579: b'\x11\xfa\x87', + -0x578: b'\x11\xfa\x88', + -0x577: b'\x11\xfa\x89', + -0x576: b'\x11\xfa\x8a', + -0x575: b'\x11\xfa\x8b', + -0x574: b'\x11\xfa\x8c', + -0x573: b'\x11\xfa\x8d', + -0x572: b'\x11\xfa\x8e', + -0x571: b'\x11\xfa\x8f', + -0x570: b'\x11\xfa\x90', + -0x56f: b'\x11\xfa\x91', + -0x56e: b'\x11\xfa\x92', + -0x56d: b'\x11\xfa\x93', + -0x56c: b'\x11\xfa\x94', + -0x56b: b'\x11\xfa\x95', + -0x56a: b'\x11\xfa\x96', + -0x569: b'\x11\xfa\x97', + -0x568: b'\x11\xfa\x98', + -0x567: b'\x11\xfa\x99', + -0x566: b'\x11\xfa\x9a', + -0x565: b'\x11\xfa\x9b', + -0x564: b'\x11\xfa\x9c', + -0x563: b'\x11\xfa\x9d', + -0x562: b'\x11\xfa\x9e', + -0x561: b'\x11\xfa\x9f', + -0x560: b'\x11\xfa\xa0', + -0x55f: b'\x11\xfa\xa1', + -0x55e: b'\x11\xfa\xa2', + -0x55d: b'\x11\xfa\xa3', + -0x55c: b'\x11\xfa\xa4', + -0x55b: b'\x11\xfa\xa5', + -0x55a: b'\x11\xfa\xa6', + -0x559: b'\x11\xfa\xa7', + -0x558: b'\x11\xfa\xa8', + -0x557: b'\x11\xfa\xa9', + -0x556: b'\x11\xfa\xaa', + -0x555: b'\x11\xfa\xab', + -0x554: b'\x11\xfa\xac', + -0x553: b'\x11\xfa\xad', + -0x552: b'\x11\xfa\xae', + -0x551: b'\x11\xfa\xaf', + -0x550: b'\x11\xfa\xb0', + -0x54f: b'\x11\xfa\xb1', + -0x54e: b'\x11\xfa\xb2', + -0x54d: b'\x11\xfa\xb3', + -0x54c: b'\x11\xfa\xb4', + -0x54b: b'\x11\xfa\xb5', + -0x54a: b'\x11\xfa\xb6', + -0x549: b'\x11\xfa\xb7', + -0x548: b'\x11\xfa\xb8', + -0x547: b'\x11\xfa\xb9', + -0x546: b'\x11\xfa\xba', + -0x545: b'\x11\xfa\xbb', + -0x544: b'\x11\xfa\xbc', + -0x543: b'\x11\xfa\xbd', + -0x542: b'\x11\xfa\xbe', + -0x541: b'\x11\xfa\xbf', + -0x540: b'\x11\xfa\xc0', + -0x53f: b'\x11\xfa\xc1', + -0x53e: b'\x11\xfa\xc2', + -0x53d: b'\x11\xfa\xc3', + -0x53c: b'\x11\xfa\xc4', + -0x53b: b'\x11\xfa\xc5', + -0x53a: b'\x11\xfa\xc6', + -0x539: b'\x11\xfa\xc7', + -0x538: b'\x11\xfa\xc8', + -0x537: b'\x11\xfa\xc9', + -0x536: b'\x11\xfa\xca', + -0x535: b'\x11\xfa\xcb', + -0x534: b'\x11\xfa\xcc', + -0x533: b'\x11\xfa\xcd', + -0x532: b'\x11\xfa\xce', + -0x531: b'\x11\xfa\xcf', + -0x530: b'\x11\xfa\xd0', + -0x52f: b'\x11\xfa\xd1', + -0x52e: b'\x11\xfa\xd2', + -0x52d: b'\x11\xfa\xd3', + -0x52c: b'\x11\xfa\xd4', + -0x52b: b'\x11\xfa\xd5', + -0x52a: b'\x11\xfa\xd6', + -0x529: b'\x11\xfa\xd7', + -0x528: b'\x11\xfa\xd8', + -0x527: b'\x11\xfa\xd9', + -0x526: b'\x11\xfa\xda', + -0x525: b'\x11\xfa\xdb', + -0x524: b'\x11\xfa\xdc', + -0x523: b'\x11\xfa\xdd', + -0x522: b'\x11\xfa\xde', + -0x521: b'\x11\xfa\xdf', + -0x520: b'\x11\xfa\xe0', + -0x51f: b'\x11\xfa\xe1', + -0x51e: b'\x11\xfa\xe2', + -0x51d: b'\x11\xfa\xe3', + -0x51c: b'\x11\xfa\xe4', + -0x51b: b'\x11\xfa\xe5', + -0x51a: b'\x11\xfa\xe6', + -0x519: b'\x11\xfa\xe7', + -0x518: b'\x11\xfa\xe8', + -0x517: b'\x11\xfa\xe9', + -0x516: b'\x11\xfa\xea', + -0x515: b'\x11\xfa\xeb', + -0x514: b'\x11\xfa\xec', + -0x513: b'\x11\xfa\xed', + -0x512: b'\x11\xfa\xee', + -0x511: b'\x11\xfa\xef', + -0x510: b'\x11\xfa\xf0', + -0x50f: b'\x11\xfa\xf1', + -0x50e: b'\x11\xfa\xf2', + -0x50d: b'\x11\xfa\xf3', + -0x50c: b'\x11\xfa\xf4', + -0x50b: b'\x11\xfa\xf5', + -0x50a: b'\x11\xfa\xf6', + -0x509: b'\x11\xfa\xf7', + -0x508: b'\x11\xfa\xf8', + -0x507: b'\x11\xfa\xf9', + -0x506: b'\x11\xfa\xfa', + -0x505: b'\x11\xfa\xfb', + -0x504: b'\x11\xfa\xfc', + -0x503: b'\x11\xfa\xfd', + -0x502: b'\x11\xfa\xfe', + -0x501: b'\x11\xfa\xff', + -0x500: b'\x11\xfb\x00', + -0x4ff: b'\x11\xfb\x01', + -0x4fe: b'\x11\xfb\x02', + -0x4fd: b'\x11\xfb\x03', + -0x4fc: b'\x11\xfb\x04', + -0x4fb: b'\x11\xfb\x05', + -0x4fa: b'\x11\xfb\x06', + -0x4f9: b'\x11\xfb\x07', + -0x4f8: b'\x11\xfb\x08', + -0x4f7: b'\x11\xfb\t', + -0x4f6: b'\x11\xfb\n', + -0x4f5: b'\x11\xfb\x0b', + -0x4f4: b'\x11\xfb\x0c', + -0x4f3: b'\x11\xfb\r', + -0x4f2: b'\x11\xfb\x0e', + -0x4f1: b'\x11\xfb\x0f', + -0x4f0: b'\x11\xfb\x10', + -0x4ef: b'\x11\xfb\x11', + -0x4ee: b'\x11\xfb\x12', + -0x4ed: b'\x11\xfb\x13', + -0x4ec: b'\x11\xfb\x14', + -0x4eb: b'\x11\xfb\x15', + -0x4ea: b'\x11\xfb\x16', + -0x4e9: b'\x11\xfb\x17', + -0x4e8: b'\x11\xfb\x18', + -0x4e7: b'\x11\xfb\x19', + -0x4e6: b'\x11\xfb\x1a', + -0x4e5: b'\x11\xfb\x1b', + -0x4e4: b'\x11\xfb\x1c', + -0x4e3: b'\x11\xfb\x1d', + -0x4e2: b'\x11\xfb\x1e', + -0x4e1: b'\x11\xfb\x1f', + -0x4e0: b'\x11\xfb ', + -0x4df: b'\x11\xfb!', + -0x4de: b'\x11\xfb"', + -0x4dd: b'\x11\xfb#', + -0x4dc: b'\x11\xfb$', + -0x4db: b'\x11\xfb%', + -0x4da: b'\x11\xfb&', + -0x4d9: b"\x11\xfb'", + -0x4d8: b'\x11\xfb(', + -0x4d7: b'\x11\xfb)', + -0x4d6: b'\x11\xfb*', + -0x4d5: b'\x11\xfb+', + -0x4d4: b'\x11\xfb,', + -0x4d3: b'\x11\xfb-', + -0x4d2: b'\x11\xfb.', + -0x4d1: b'\x11\xfb/', + -0x4d0: b'\x11\xfb0', + -0x4cf: b'\x11\xfb1', + -0x4ce: b'\x11\xfb2', + -0x4cd: b'\x11\xfb3', + -0x4cc: b'\x11\xfb4', + -0x4cb: b'\x11\xfb5', + -0x4ca: b'\x11\xfb6', + -0x4c9: b'\x11\xfb7', + -0x4c8: b'\x11\xfb8', + -0x4c7: b'\x11\xfb9', + -0x4c6: b'\x11\xfb:', + -0x4c5: b'\x11\xfb;', + -0x4c4: b'\x11\xfb<', + -0x4c3: b'\x11\xfb=', + -0x4c2: b'\x11\xfb>', + -0x4c1: b'\x11\xfb?', + -0x4c0: b'\x11\xfb@', + -0x4bf: b'\x11\xfbA', + -0x4be: b'\x11\xfbB', + -0x4bd: b'\x11\xfbC', + -0x4bc: b'\x11\xfbD', + -0x4bb: b'\x11\xfbE', + -0x4ba: b'\x11\xfbF', + -0x4b9: b'\x11\xfbG', + -0x4b8: b'\x11\xfbH', + -0x4b7: b'\x11\xfbI', + -0x4b6: b'\x11\xfbJ', + -0x4b5: b'\x11\xfbK', + -0x4b4: b'\x11\xfbL', + -0x4b3: b'\x11\xfbM', + -0x4b2: b'\x11\xfbN', + -0x4b1: b'\x11\xfbO', + -0x4b0: b'\x11\xfbP', + -0x4af: b'\x11\xfbQ', + -0x4ae: b'\x11\xfbR', + -0x4ad: b'\x11\xfbS', + -0x4ac: b'\x11\xfbT', + -0x4ab: b'\x11\xfbU', + -0x4aa: b'\x11\xfbV', + -0x4a9: b'\x11\xfbW', + -0x4a8: b'\x11\xfbX', + -0x4a7: b'\x11\xfbY', + -0x4a6: b'\x11\xfbZ', + -0x4a5: b'\x11\xfb[', + -0x4a4: b'\x11\xfb\\', + -0x4a3: b'\x11\xfb]', + -0x4a2: b'\x11\xfb^', + -0x4a1: b'\x11\xfb_', + -0x4a0: b'\x11\xfb`', + -0x49f: b'\x11\xfba', + -0x49e: b'\x11\xfbb', + -0x49d: b'\x11\xfbc', + -0x49c: b'\x11\xfbd', + -0x49b: b'\x11\xfbe', + -0x49a: b'\x11\xfbf', + -0x499: b'\x11\xfbg', + -0x498: b'\x11\xfbh', + -0x497: b'\x11\xfbi', + -0x496: b'\x11\xfbj', + -0x495: b'\x11\xfbk', + -0x494: b'\x11\xfbl', + -0x493: b'\x11\xfbm', + -0x492: b'\x11\xfbn', + -0x491: b'\x11\xfbo', + -0x490: b'\x11\xfbp', + -0x48f: b'\x11\xfbq', + -0x48e: b'\x11\xfbr', + -0x48d: b'\x11\xfbs', + -0x48c: b'\x11\xfbt', + -0x48b: b'\x11\xfbu', + -0x48a: b'\x11\xfbv', + -0x489: b'\x11\xfbw', + -0x488: b'\x11\xfbx', + -0x487: b'\x11\xfby', + -0x486: b'\x11\xfbz', + -0x485: b'\x11\xfb{', + -0x484: b'\x11\xfb|', + -0x483: b'\x11\xfb}', + -0x482: b'\x11\xfb~', + -0x481: b'\x11\xfb\x7f', + -0x480: b'\x11\xfb\x80', + -0x47f: b'\x11\xfb\x81', + -0x47e: b'\x11\xfb\x82', + -0x47d: b'\x11\xfb\x83', + -0x47c: b'\x11\xfb\x84', + -0x47b: b'\x11\xfb\x85', + -0x47a: b'\x11\xfb\x86', + -0x479: b'\x11\xfb\x87', + -0x478: b'\x11\xfb\x88', + -0x477: b'\x11\xfb\x89', + -0x476: b'\x11\xfb\x8a', + -0x475: b'\x11\xfb\x8b', + -0x474: b'\x11\xfb\x8c', + -0x473: b'\x11\xfb\x8d', + -0x472: b'\x11\xfb\x8e', + -0x471: b'\x11\xfb\x8f', + -0x470: b'\x11\xfb\x90', + -0x46f: b'\x11\xfb\x91', + -0x46e: b'\x11\xfb\x92', + -0x46d: b'\x11\xfb\x93', + -0x46c: b'\x11\xfb\x94', + -0x46b: b'\x11\xfb\x95', + -0x46a: b'\x11\xfb\x96', + -0x469: b'\x11\xfb\x97', + -0x468: b'\x11\xfb\x98', + -0x467: b'\x11\xfb\x99', + -0x466: b'\x11\xfb\x9a', + -0x465: b'\x11\xfb\x9b', + -0x464: b'\x11\xfb\x9c', + -0x463: b'\x11\xfb\x9d', + -0x462: b'\x11\xfb\x9e', + -0x461: b'\x11\xfb\x9f', + -0x460: b'\x11\xfb\xa0', + -0x45f: b'\x11\xfb\xa1', + -0x45e: b'\x11\xfb\xa2', + -0x45d: b'\x11\xfb\xa3', + -0x45c: b'\x11\xfb\xa4', + -0x45b: b'\x11\xfb\xa5', + -0x45a: b'\x11\xfb\xa6', + -0x459: b'\x11\xfb\xa7', + -0x458: b'\x11\xfb\xa8', + -0x457: b'\x11\xfb\xa9', + -0x456: b'\x11\xfb\xaa', + -0x455: b'\x11\xfb\xab', + -0x454: b'\x11\xfb\xac', + -0x453: b'\x11\xfb\xad', + -0x452: b'\x11\xfb\xae', + -0x451: b'\x11\xfb\xaf', + -0x450: b'\x11\xfb\xb0', + -0x44f: b'\x11\xfb\xb1', + -0x44e: b'\x11\xfb\xb2', + -0x44d: b'\x11\xfb\xb3', + -0x44c: b'\x11\xfb\xb4', + -0x44b: b'\x11\xfb\xb5', + -0x44a: b'\x11\xfb\xb6', + -0x449: b'\x11\xfb\xb7', + -0x448: b'\x11\xfb\xb8', + -0x447: b'\x11\xfb\xb9', + -0x446: b'\x11\xfb\xba', + -0x445: b'\x11\xfb\xbb', + -0x444: b'\x11\xfb\xbc', + -0x443: b'\x11\xfb\xbd', + -0x442: b'\x11\xfb\xbe', + -0x441: b'\x11\xfb\xbf', + -0x440: b'\x11\xfb\xc0', + -0x43f: b'\x11\xfb\xc1', + -0x43e: b'\x11\xfb\xc2', + -0x43d: b'\x11\xfb\xc3', + -0x43c: b'\x11\xfb\xc4', + -0x43b: b'\x11\xfb\xc5', + -0x43a: b'\x11\xfb\xc6', + -0x439: b'\x11\xfb\xc7', + -0x438: b'\x11\xfb\xc8', + -0x437: b'\x11\xfb\xc9', + -0x436: b'\x11\xfb\xca', + -0x435: b'\x11\xfb\xcb', + -0x434: b'\x11\xfb\xcc', + -0x433: b'\x11\xfb\xcd', + -0x432: b'\x11\xfb\xce', + -0x431: b'\x11\xfb\xcf', + -0x430: b'\x11\xfb\xd0', + -0x42f: b'\x11\xfb\xd1', + -0x42e: b'\x11\xfb\xd2', + -0x42d: b'\x11\xfb\xd3', + -0x42c: b'\x11\xfb\xd4', + -0x42b: b'\x11\xfb\xd5', + -0x42a: b'\x11\xfb\xd6', + -0x429: b'\x11\xfb\xd7', + -0x428: b'\x11\xfb\xd8', + -0x427: b'\x11\xfb\xd9', + -0x426: b'\x11\xfb\xda', + -0x425: b'\x11\xfb\xdb', + -0x424: b'\x11\xfb\xdc', + -0x423: b'\x11\xfb\xdd', + -0x422: b'\x11\xfb\xde', + -0x421: b'\x11\xfb\xdf', + -0x420: b'\x11\xfb\xe0', + -0x41f: b'\x11\xfb\xe1', + -0x41e: b'\x11\xfb\xe2', + -0x41d: b'\x11\xfb\xe3', + -0x41c: b'\x11\xfb\xe4', + -0x41b: b'\x11\xfb\xe5', + -0x41a: b'\x11\xfb\xe6', + -0x419: b'\x11\xfb\xe7', + -0x418: b'\x11\xfb\xe8', + -0x417: b'\x11\xfb\xe9', + -0x416: b'\x11\xfb\xea', + -0x415: b'\x11\xfb\xeb', + -0x414: b'\x11\xfb\xec', + -0x413: b'\x11\xfb\xed', + -0x412: b'\x11\xfb\xee', + -0x411: b'\x11\xfb\xef', + -0x410: b'\x11\xfb\xf0', + -0x40f: b'\x11\xfb\xf1', + -0x40e: b'\x11\xfb\xf2', + -0x40d: b'\x11\xfb\xf3', + -0x40c: b'\x11\xfb\xf4', + -0x40b: b'\x11\xfb\xf5', + -0x40a: b'\x11\xfb\xf6', + -0x409: b'\x11\xfb\xf7', + -0x408: b'\x11\xfb\xf8', + -0x407: b'\x11\xfb\xf9', + -0x406: b'\x11\xfb\xfa', + -0x405: b'\x11\xfb\xfb', + -0x404: b'\x11\xfb\xfc', + -0x403: b'\x11\xfb\xfd', + -0x402: b'\x11\xfb\xfe', + -0x401: b'\x11\xfb\xff', + -0x400: b'\x11\xfc\x00', + -0x3ff: b'\x11\xfc\x01', + -0x3fe: b'\x11\xfc\x02', + -0x3fd: b'\x11\xfc\x03', + -0x3fc: b'\x11\xfc\x04', + -0x3fb: b'\x11\xfc\x05', + -0x3fa: b'\x11\xfc\x06', + -0x3f9: b'\x11\xfc\x07', + -0x3f8: b'\x11\xfc\x08', + -0x3f7: b'\x11\xfc\t', + -0x3f6: b'\x11\xfc\n', + -0x3f5: b'\x11\xfc\x0b', + -0x3f4: b'\x11\xfc\x0c', + -0x3f3: b'\x11\xfc\r', + -0x3f2: b'\x11\xfc\x0e', + -0x3f1: b'\x11\xfc\x0f', + -0x3f0: b'\x11\xfc\x10', + -0x3ef: b'\x11\xfc\x11', + -0x3ee: b'\x11\xfc\x12', + -0x3ed: b'\x11\xfc\x13', + -0x3ec: b'\x11\xfc\x14', + -0x3eb: b'\x11\xfc\x15', + -0x3ea: b'\x11\xfc\x16', + -0x3e9: b'\x11\xfc\x17', + -0x3e8: b'\x11\xfc\x18', + -0x3e7: b'\x11\xfc\x19', + -0x3e6: b'\x11\xfc\x1a', + -0x3e5: b'\x11\xfc\x1b', + -0x3e4: b'\x11\xfc\x1c', + -0x3e3: b'\x11\xfc\x1d', + -0x3e2: b'\x11\xfc\x1e', + -0x3e1: b'\x11\xfc\x1f', + -0x3e0: b'\x11\xfc ', + -0x3df: b'\x11\xfc!', + -0x3de: b'\x11\xfc"', + -0x3dd: b'\x11\xfc#', + -0x3dc: b'\x11\xfc$', + -0x3db: b'\x11\xfc%', + -0x3da: b'\x11\xfc&', + -0x3d9: b"\x11\xfc'", + -0x3d8: b'\x11\xfc(', + -0x3d7: b'\x11\xfc)', + -0x3d6: b'\x11\xfc*', + -0x3d5: b'\x11\xfc+', + -0x3d4: b'\x11\xfc,', + -0x3d3: b'\x11\xfc-', + -0x3d2: b'\x11\xfc.', + -0x3d1: b'\x11\xfc/', + -0x3d0: b'\x11\xfc0', + -0x3cf: b'\x11\xfc1', + -0x3ce: b'\x11\xfc2', + -0x3cd: b'\x11\xfc3', + -0x3cc: b'\x11\xfc4', + -0x3cb: b'\x11\xfc5', + -0x3ca: b'\x11\xfc6', + -0x3c9: b'\x11\xfc7', + -0x3c8: b'\x11\xfc8', + -0x3c7: b'\x11\xfc9', + -0x3c6: b'\x11\xfc:', + -0x3c5: b'\x11\xfc;', + -0x3c4: b'\x11\xfc<', + -0x3c3: b'\x11\xfc=', + -0x3c2: b'\x11\xfc>', + -0x3c1: b'\x11\xfc?', + -0x3c0: b'\x11\xfc@', + -0x3bf: b'\x11\xfcA', + -0x3be: b'\x11\xfcB', + -0x3bd: b'\x11\xfcC', + -0x3bc: b'\x11\xfcD', + -0x3bb: b'\x11\xfcE', + -0x3ba: b'\x11\xfcF', + -0x3b9: b'\x11\xfcG', + -0x3b8: b'\x11\xfcH', + -0x3b7: b'\x11\xfcI', + -0x3b6: b'\x11\xfcJ', + -0x3b5: b'\x11\xfcK', + -0x3b4: b'\x11\xfcL', + -0x3b3: b'\x11\xfcM', + -0x3b2: b'\x11\xfcN', + -0x3b1: b'\x11\xfcO', + -0x3b0: b'\x11\xfcP', + -0x3af: b'\x11\xfcQ', + -0x3ae: b'\x11\xfcR', + -0x3ad: b'\x11\xfcS', + -0x3ac: b'\x11\xfcT', + -0x3ab: b'\x11\xfcU', + -0x3aa: b'\x11\xfcV', + -0x3a9: b'\x11\xfcW', + -0x3a8: b'\x11\xfcX', + -0x3a7: b'\x11\xfcY', + -0x3a6: b'\x11\xfcZ', + -0x3a5: b'\x11\xfc[', + -0x3a4: b'\x11\xfc\\', + -0x3a3: b'\x11\xfc]', + -0x3a2: b'\x11\xfc^', + -0x3a1: b'\x11\xfc_', + -0x3a0: b'\x11\xfc`', + -0x39f: b'\x11\xfca', + -0x39e: b'\x11\xfcb', + -0x39d: b'\x11\xfcc', + -0x39c: b'\x11\xfcd', + -0x39b: b'\x11\xfce', + -0x39a: b'\x11\xfcf', + -0x399: b'\x11\xfcg', + -0x398: b'\x11\xfch', + -0x397: b'\x11\xfci', + -0x396: b'\x11\xfcj', + -0x395: b'\x11\xfck', + -0x394: b'\x11\xfcl', + -0x393: b'\x11\xfcm', + -0x392: b'\x11\xfcn', + -0x391: b'\x11\xfco', + -0x390: b'\x11\xfcp', + -0x38f: b'\x11\xfcq', + -0x38e: b'\x11\xfcr', + -0x38d: b'\x11\xfcs', + -0x38c: b'\x11\xfct', + -0x38b: b'\x11\xfcu', + -0x38a: b'\x11\xfcv', + -0x389: b'\x11\xfcw', + -0x388: b'\x11\xfcx', + -0x387: b'\x11\xfcy', + -0x386: b'\x11\xfcz', + -0x385: b'\x11\xfc{', + -0x384: b'\x11\xfc|', + -0x383: b'\x11\xfc}', + -0x382: b'\x11\xfc~', + -0x381: b'\x11\xfc\x7f', + -0x380: b'\x11\xfc\x80', + -0x37f: b'\x11\xfc\x81', + -0x37e: b'\x11\xfc\x82', + -0x37d: b'\x11\xfc\x83', + -0x37c: b'\x11\xfc\x84', + -0x37b: b'\x11\xfc\x85', + -0x37a: b'\x11\xfc\x86', + -0x379: b'\x11\xfc\x87', + -0x378: b'\x11\xfc\x88', + -0x377: b'\x11\xfc\x89', + -0x376: b'\x11\xfc\x8a', + -0x375: b'\x11\xfc\x8b', + -0x374: b'\x11\xfc\x8c', + -0x373: b'\x11\xfc\x8d', + -0x372: b'\x11\xfc\x8e', + -0x371: b'\x11\xfc\x8f', + -0x370: b'\x11\xfc\x90', + -0x36f: b'\x11\xfc\x91', + -0x36e: b'\x11\xfc\x92', + -0x36d: b'\x11\xfc\x93', + -0x36c: b'\x11\xfc\x94', + -0x36b: b'\x11\xfc\x95', + -0x36a: b'\x11\xfc\x96', + -0x369: b'\x11\xfc\x97', + -0x368: b'\x11\xfc\x98', + -0x367: b'\x11\xfc\x99', + -0x366: b'\x11\xfc\x9a', + -0x365: b'\x11\xfc\x9b', + -0x364: b'\x11\xfc\x9c', + -0x363: b'\x11\xfc\x9d', + -0x362: b'\x11\xfc\x9e', + -0x361: b'\x11\xfc\x9f', + -0x360: b'\x11\xfc\xa0', + -0x35f: b'\x11\xfc\xa1', + -0x35e: b'\x11\xfc\xa2', + -0x35d: b'\x11\xfc\xa3', + -0x35c: b'\x11\xfc\xa4', + -0x35b: b'\x11\xfc\xa5', + -0x35a: b'\x11\xfc\xa6', + -0x359: b'\x11\xfc\xa7', + -0x358: b'\x11\xfc\xa8', + -0x357: b'\x11\xfc\xa9', + -0x356: b'\x11\xfc\xaa', + -0x355: b'\x11\xfc\xab', + -0x354: b'\x11\xfc\xac', + -0x353: b'\x11\xfc\xad', + -0x352: b'\x11\xfc\xae', + -0x351: b'\x11\xfc\xaf', + -0x350: b'\x11\xfc\xb0', + -0x34f: b'\x11\xfc\xb1', + -0x34e: b'\x11\xfc\xb2', + -0x34d: b'\x11\xfc\xb3', + -0x34c: b'\x11\xfc\xb4', + -0x34b: b'\x11\xfc\xb5', + -0x34a: b'\x11\xfc\xb6', + -0x349: b'\x11\xfc\xb7', + -0x348: b'\x11\xfc\xb8', + -0x347: b'\x11\xfc\xb9', + -0x346: b'\x11\xfc\xba', + -0x345: b'\x11\xfc\xbb', + -0x344: b'\x11\xfc\xbc', + -0x343: b'\x11\xfc\xbd', + -0x342: b'\x11\xfc\xbe', + -0x341: b'\x11\xfc\xbf', + -0x340: b'\x11\xfc\xc0', + -0x33f: b'\x11\xfc\xc1', + -0x33e: b'\x11\xfc\xc2', + -0x33d: b'\x11\xfc\xc3', + -0x33c: b'\x11\xfc\xc4', + -0x33b: b'\x11\xfc\xc5', + -0x33a: b'\x11\xfc\xc6', + -0x339: b'\x11\xfc\xc7', + -0x338: b'\x11\xfc\xc8', + -0x337: b'\x11\xfc\xc9', + -0x336: b'\x11\xfc\xca', + -0x335: b'\x11\xfc\xcb', + -0x334: b'\x11\xfc\xcc', + -0x333: b'\x11\xfc\xcd', + -0x332: b'\x11\xfc\xce', + -0x331: b'\x11\xfc\xcf', + -0x330: b'\x11\xfc\xd0', + -0x32f: b'\x11\xfc\xd1', + -0x32e: b'\x11\xfc\xd2', + -0x32d: b'\x11\xfc\xd3', + -0x32c: b'\x11\xfc\xd4', + -0x32b: b'\x11\xfc\xd5', + -0x32a: b'\x11\xfc\xd6', + -0x329: b'\x11\xfc\xd7', + -0x328: b'\x11\xfc\xd8', + -0x327: b'\x11\xfc\xd9', + -0x326: b'\x11\xfc\xda', + -0x325: b'\x11\xfc\xdb', + -0x324: b'\x11\xfc\xdc', + -0x323: b'\x11\xfc\xdd', + -0x322: b'\x11\xfc\xde', + -0x321: b'\x11\xfc\xdf', + -0x320: b'\x11\xfc\xe0', + -0x31f: b'\x11\xfc\xe1', + -0x31e: b'\x11\xfc\xe2', + -0x31d: b'\x11\xfc\xe3', + -0x31c: b'\x11\xfc\xe4', + -0x31b: b'\x11\xfc\xe5', + -0x31a: b'\x11\xfc\xe6', + -0x319: b'\x11\xfc\xe7', + -0x318: b'\x11\xfc\xe8', + -0x317: b'\x11\xfc\xe9', + -0x316: b'\x11\xfc\xea', + -0x315: b'\x11\xfc\xeb', + -0x314: b'\x11\xfc\xec', + -0x313: b'\x11\xfc\xed', + -0x312: b'\x11\xfc\xee', + -0x311: b'\x11\xfc\xef', + -0x310: b'\x11\xfc\xf0', + -0x30f: b'\x11\xfc\xf1', + -0x30e: b'\x11\xfc\xf2', + -0x30d: b'\x11\xfc\xf3', + -0x30c: b'\x11\xfc\xf4', + -0x30b: b'\x11\xfc\xf5', + -0x30a: b'\x11\xfc\xf6', + -0x309: b'\x11\xfc\xf7', + -0x308: b'\x11\xfc\xf8', + -0x307: b'\x11\xfc\xf9', + -0x306: b'\x11\xfc\xfa', + -0x305: b'\x11\xfc\xfb', + -0x304: b'\x11\xfc\xfc', + -0x303: b'\x11\xfc\xfd', + -0x302: b'\x11\xfc\xfe', + -0x301: b'\x11\xfc\xff', + -0x300: b'\x11\xfd\x00', + -0x2ff: b'\x11\xfd\x01', + -0x2fe: b'\x11\xfd\x02', + -0x2fd: b'\x11\xfd\x03', + -0x2fc: b'\x11\xfd\x04', + -0x2fb: b'\x11\xfd\x05', + -0x2fa: b'\x11\xfd\x06', + -0x2f9: b'\x11\xfd\x07', + -0x2f8: b'\x11\xfd\x08', + -0x2f7: b'\x11\xfd\t', + -0x2f6: b'\x11\xfd\n', + -0x2f5: b'\x11\xfd\x0b', + -0x2f4: b'\x11\xfd\x0c', + -0x2f3: b'\x11\xfd\r', + -0x2f2: b'\x11\xfd\x0e', + -0x2f1: b'\x11\xfd\x0f', + -0x2f0: b'\x11\xfd\x10', + -0x2ef: b'\x11\xfd\x11', + -0x2ee: b'\x11\xfd\x12', + -0x2ed: b'\x11\xfd\x13', + -0x2ec: b'\x11\xfd\x14', + -0x2eb: b'\x11\xfd\x15', + -0x2ea: b'\x11\xfd\x16', + -0x2e9: b'\x11\xfd\x17', + -0x2e8: b'\x11\xfd\x18', + -0x2e7: b'\x11\xfd\x19', + -0x2e6: b'\x11\xfd\x1a', + -0x2e5: b'\x11\xfd\x1b', + -0x2e4: b'\x11\xfd\x1c', + -0x2e3: b'\x11\xfd\x1d', + -0x2e2: b'\x11\xfd\x1e', + -0x2e1: b'\x11\xfd\x1f', + -0x2e0: b'\x11\xfd ', + -0x2df: b'\x11\xfd!', + -0x2de: b'\x11\xfd"', + -0x2dd: b'\x11\xfd#', + -0x2dc: b'\x11\xfd$', + -0x2db: b'\x11\xfd%', + -0x2da: b'\x11\xfd&', + -0x2d9: b"\x11\xfd'", + -0x2d8: b'\x11\xfd(', + -0x2d7: b'\x11\xfd)', + -0x2d6: b'\x11\xfd*', + -0x2d5: b'\x11\xfd+', + -0x2d4: b'\x11\xfd,', + -0x2d3: b'\x11\xfd-', + -0x2d2: b'\x11\xfd.', + -0x2d1: b'\x11\xfd/', + -0x2d0: b'\x11\xfd0', + -0x2cf: b'\x11\xfd1', + -0x2ce: b'\x11\xfd2', + -0x2cd: b'\x11\xfd3', + -0x2cc: b'\x11\xfd4', + -0x2cb: b'\x11\xfd5', + -0x2ca: b'\x11\xfd6', + -0x2c9: b'\x11\xfd7', + -0x2c8: b'\x11\xfd8', + -0x2c7: b'\x11\xfd9', + -0x2c6: b'\x11\xfd:', + -0x2c5: b'\x11\xfd;', + -0x2c4: b'\x11\xfd<', + -0x2c3: b'\x11\xfd=', + -0x2c2: b'\x11\xfd>', + -0x2c1: b'\x11\xfd?', + -0x2c0: b'\x11\xfd@', + -0x2bf: b'\x11\xfdA', + -0x2be: b'\x11\xfdB', + -0x2bd: b'\x11\xfdC', + -0x2bc: b'\x11\xfdD', + -0x2bb: b'\x11\xfdE', + -0x2ba: b'\x11\xfdF', + -0x2b9: b'\x11\xfdG', + -0x2b8: b'\x11\xfdH', + -0x2b7: b'\x11\xfdI', + -0x2b6: b'\x11\xfdJ', + -0x2b5: b'\x11\xfdK', + -0x2b4: b'\x11\xfdL', + -0x2b3: b'\x11\xfdM', + -0x2b2: b'\x11\xfdN', + -0x2b1: b'\x11\xfdO', + -0x2b0: b'\x11\xfdP', + -0x2af: b'\x11\xfdQ', + -0x2ae: b'\x11\xfdR', + -0x2ad: b'\x11\xfdS', + -0x2ac: b'\x11\xfdT', + -0x2ab: b'\x11\xfdU', + -0x2aa: b'\x11\xfdV', + -0x2a9: b'\x11\xfdW', + -0x2a8: b'\x11\xfdX', + -0x2a7: b'\x11\xfdY', + -0x2a6: b'\x11\xfdZ', + -0x2a5: b'\x11\xfd[', + -0x2a4: b'\x11\xfd\\', + -0x2a3: b'\x11\xfd]', + -0x2a2: b'\x11\xfd^', + -0x2a1: b'\x11\xfd_', + -0x2a0: b'\x11\xfd`', + -0x29f: b'\x11\xfda', + -0x29e: b'\x11\xfdb', + -0x29d: b'\x11\xfdc', + -0x29c: b'\x11\xfdd', + -0x29b: b'\x11\xfde', + -0x29a: b'\x11\xfdf', + -0x299: b'\x11\xfdg', + -0x298: b'\x11\xfdh', + -0x297: b'\x11\xfdi', + -0x296: b'\x11\xfdj', + -0x295: b'\x11\xfdk', + -0x294: b'\x11\xfdl', + -0x293: b'\x11\xfdm', + -0x292: b'\x11\xfdn', + -0x291: b'\x11\xfdo', + -0x290: b'\x11\xfdp', + -0x28f: b'\x11\xfdq', + -0x28e: b'\x11\xfdr', + -0x28d: b'\x11\xfds', + -0x28c: b'\x11\xfdt', + -0x28b: b'\x11\xfdu', + -0x28a: b'\x11\xfdv', + -0x289: b'\x11\xfdw', + -0x288: b'\x11\xfdx', + -0x287: b'\x11\xfdy', + -0x286: b'\x11\xfdz', + -0x285: b'\x11\xfd{', + -0x284: b'\x11\xfd|', + -0x283: b'\x11\xfd}', + -0x282: b'\x11\xfd~', + -0x281: b'\x11\xfd\x7f', + -0x280: b'\x11\xfd\x80', + -0x27f: b'\x11\xfd\x81', + -0x27e: b'\x11\xfd\x82', + -0x27d: b'\x11\xfd\x83', + -0x27c: b'\x11\xfd\x84', + -0x27b: b'\x11\xfd\x85', + -0x27a: b'\x11\xfd\x86', + -0x279: b'\x11\xfd\x87', + -0x278: b'\x11\xfd\x88', + -0x277: b'\x11\xfd\x89', + -0x276: b'\x11\xfd\x8a', + -0x275: b'\x11\xfd\x8b', + -0x274: b'\x11\xfd\x8c', + -0x273: b'\x11\xfd\x8d', + -0x272: b'\x11\xfd\x8e', + -0x271: b'\x11\xfd\x8f', + -0x270: b'\x11\xfd\x90', + -0x26f: b'\x11\xfd\x91', + -0x26e: b'\x11\xfd\x92', + -0x26d: b'\x11\xfd\x93', + -0x26c: b'\x11\xfd\x94', + -0x26b: b'\x11\xfd\x95', + -0x26a: b'\x11\xfd\x96', + -0x269: b'\x11\xfd\x97', + -0x268: b'\x11\xfd\x98', + -0x267: b'\x11\xfd\x99', + -0x266: b'\x11\xfd\x9a', + -0x265: b'\x11\xfd\x9b', + -0x264: b'\x11\xfd\x9c', + -0x263: b'\x11\xfd\x9d', + -0x262: b'\x11\xfd\x9e', + -0x261: b'\x11\xfd\x9f', + -0x260: b'\x11\xfd\xa0', + -0x25f: b'\x11\xfd\xa1', + -0x25e: b'\x11\xfd\xa2', + -0x25d: b'\x11\xfd\xa3', + -0x25c: b'\x11\xfd\xa4', + -0x25b: b'\x11\xfd\xa5', + -0x25a: b'\x11\xfd\xa6', + -0x259: b'\x11\xfd\xa7', + -0x258: b'\x11\xfd\xa8', + -0x257: b'\x11\xfd\xa9', + -0x256: b'\x11\xfd\xaa', + -0x255: b'\x11\xfd\xab', + -0x254: b'\x11\xfd\xac', + -0x253: b'\x11\xfd\xad', + -0x252: b'\x11\xfd\xae', + -0x251: b'\x11\xfd\xaf', + -0x250: b'\x11\xfd\xb0', + -0x24f: b'\x11\xfd\xb1', + -0x24e: b'\x11\xfd\xb2', + -0x24d: b'\x11\xfd\xb3', + -0x24c: b'\x11\xfd\xb4', + -0x24b: b'\x11\xfd\xb5', + -0x24a: b'\x11\xfd\xb6', + -0x249: b'\x11\xfd\xb7', + -0x248: b'\x11\xfd\xb8', + -0x247: b'\x11\xfd\xb9', + -0x246: b'\x11\xfd\xba', + -0x245: b'\x11\xfd\xbb', + -0x244: b'\x11\xfd\xbc', + -0x243: b'\x11\xfd\xbd', + -0x242: b'\x11\xfd\xbe', + -0x241: b'\x11\xfd\xbf', + -0x240: b'\x11\xfd\xc0', + -0x23f: b'\x11\xfd\xc1', + -0x23e: b'\x11\xfd\xc2', + -0x23d: b'\x11\xfd\xc3', + -0x23c: b'\x11\xfd\xc4', + -0x23b: b'\x11\xfd\xc5', + -0x23a: b'\x11\xfd\xc6', + -0x239: b'\x11\xfd\xc7', + -0x238: b'\x11\xfd\xc8', + -0x237: b'\x11\xfd\xc9', + -0x236: b'\x11\xfd\xca', + -0x235: b'\x11\xfd\xcb', + -0x234: b'\x11\xfd\xcc', + -0x233: b'\x11\xfd\xcd', + -0x232: b'\x11\xfd\xce', + -0x231: b'\x11\xfd\xcf', + -0x230: b'\x11\xfd\xd0', + -0x22f: b'\x11\xfd\xd1', + -0x22e: b'\x11\xfd\xd2', + -0x22d: b'\x11\xfd\xd3', + -0x22c: b'\x11\xfd\xd4', + -0x22b: b'\x11\xfd\xd5', + -0x22a: b'\x11\xfd\xd6', + -0x229: b'\x11\xfd\xd7', + -0x228: b'\x11\xfd\xd8', + -0x227: b'\x11\xfd\xd9', + -0x226: b'\x11\xfd\xda', + -0x225: b'\x11\xfd\xdb', + -0x224: b'\x11\xfd\xdc', + -0x223: b'\x11\xfd\xdd', + -0x222: b'\x11\xfd\xde', + -0x221: b'\x11\xfd\xdf', + -0x220: b'\x11\xfd\xe0', + -0x21f: b'\x11\xfd\xe1', + -0x21e: b'\x11\xfd\xe2', + -0x21d: b'\x11\xfd\xe3', + -0x21c: b'\x11\xfd\xe4', + -0x21b: b'\x11\xfd\xe5', + -0x21a: b'\x11\xfd\xe6', + -0x219: b'\x11\xfd\xe7', + -0x218: b'\x11\xfd\xe8', + -0x217: b'\x11\xfd\xe9', + -0x216: b'\x11\xfd\xea', + -0x215: b'\x11\xfd\xeb', + -0x214: b'\x11\xfd\xec', + -0x213: b'\x11\xfd\xed', + -0x212: b'\x11\xfd\xee', + -0x211: b'\x11\xfd\xef', + -0x210: b'\x11\xfd\xf0', + -0x20f: b'\x11\xfd\xf1', + -0x20e: b'\x11\xfd\xf2', + -0x20d: b'\x11\xfd\xf3', + -0x20c: b'\x11\xfd\xf4', + -0x20b: b'\x11\xfd\xf5', + -0x20a: b'\x11\xfd\xf6', + -0x209: b'\x11\xfd\xf7', + -0x208: b'\x11\xfd\xf8', + -0x207: b'\x11\xfd\xf9', + -0x206: b'\x11\xfd\xfa', + -0x205: b'\x11\xfd\xfb', + -0x204: b'\x11\xfd\xfc', + -0x203: b'\x11\xfd\xfd', + -0x202: b'\x11\xfd\xfe', + -0x201: b'\x11\xfd\xff', + -0x200: b'\x11\xfe\x00', + -0x1ff: b'\x11\xfe\x01', + -0x1fe: b'\x11\xfe\x02', + -0x1fd: b'\x11\xfe\x03', + -0x1fc: b'\x11\xfe\x04', + -0x1fb: b'\x11\xfe\x05', + -0x1fa: b'\x11\xfe\x06', + -0x1f9: b'\x11\xfe\x07', + -0x1f8: b'\x11\xfe\x08', + -0x1f7: b'\x11\xfe\t', + -0x1f6: b'\x11\xfe\n', + -0x1f5: b'\x11\xfe\x0b', + -0x1f4: b'\x11\xfe\x0c', + -0x1f3: b'\x11\xfe\r', + -0x1f2: b'\x11\xfe\x0e', + -0x1f1: b'\x11\xfe\x0f', + -0x1f0: b'\x11\xfe\x10', + -0x1ef: b'\x11\xfe\x11', + -0x1ee: b'\x11\xfe\x12', + -0x1ed: b'\x11\xfe\x13', + -0x1ec: b'\x11\xfe\x14', + -0x1eb: b'\x11\xfe\x15', + -0x1ea: b'\x11\xfe\x16', + -0x1e9: b'\x11\xfe\x17', + -0x1e8: b'\x11\xfe\x18', + -0x1e7: b'\x11\xfe\x19', + -0x1e6: b'\x11\xfe\x1a', + -0x1e5: b'\x11\xfe\x1b', + -0x1e4: b'\x11\xfe\x1c', + -0x1e3: b'\x11\xfe\x1d', + -0x1e2: b'\x11\xfe\x1e', + -0x1e1: b'\x11\xfe\x1f', + -0x1e0: b'\x11\xfe ', + -0x1df: b'\x11\xfe!', + -0x1de: b'\x11\xfe"', + -0x1dd: b'\x11\xfe#', + -0x1dc: b'\x11\xfe$', + -0x1db: b'\x11\xfe%', + -0x1da: b'\x11\xfe&', + -0x1d9: b"\x11\xfe'", + -0x1d8: b'\x11\xfe(', + -0x1d7: b'\x11\xfe)', + -0x1d6: b'\x11\xfe*', + -0x1d5: b'\x11\xfe+', + -0x1d4: b'\x11\xfe,', + -0x1d3: b'\x11\xfe-', + -0x1d2: b'\x11\xfe.', + -0x1d1: b'\x11\xfe/', + -0x1d0: b'\x11\xfe0', + -0x1cf: b'\x11\xfe1', + -0x1ce: b'\x11\xfe2', + -0x1cd: b'\x11\xfe3', + -0x1cc: b'\x11\xfe4', + -0x1cb: b'\x11\xfe5', + -0x1ca: b'\x11\xfe6', + -0x1c9: b'\x11\xfe7', + -0x1c8: b'\x11\xfe8', + -0x1c7: b'\x11\xfe9', + -0x1c6: b'\x11\xfe:', + -0x1c5: b'\x11\xfe;', + -0x1c4: b'\x11\xfe<', + -0x1c3: b'\x11\xfe=', + -0x1c2: b'\x11\xfe>', + -0x1c1: b'\x11\xfe?', + -0x1c0: b'\x11\xfe@', + -0x1bf: b'\x11\xfeA', + -0x1be: b'\x11\xfeB', + -0x1bd: b'\x11\xfeC', + -0x1bc: b'\x11\xfeD', + -0x1bb: b'\x11\xfeE', + -0x1ba: b'\x11\xfeF', + -0x1b9: b'\x11\xfeG', + -0x1b8: b'\x11\xfeH', + -0x1b7: b'\x11\xfeI', + -0x1b6: b'\x11\xfeJ', + -0x1b5: b'\x11\xfeK', + -0x1b4: b'\x11\xfeL', + -0x1b3: b'\x11\xfeM', + -0x1b2: b'\x11\xfeN', + -0x1b1: b'\x11\xfeO', + -0x1b0: b'\x11\xfeP', + -0x1af: b'\x11\xfeQ', + -0x1ae: b'\x11\xfeR', + -0x1ad: b'\x11\xfeS', + -0x1ac: b'\x11\xfeT', + -0x1ab: b'\x11\xfeU', + -0x1aa: b'\x11\xfeV', + -0x1a9: b'\x11\xfeW', + -0x1a8: b'\x11\xfeX', + -0x1a7: b'\x11\xfeY', + -0x1a6: b'\x11\xfeZ', + -0x1a5: b'\x11\xfe[', + -0x1a4: b'\x11\xfe\\', + -0x1a3: b'\x11\xfe]', + -0x1a2: b'\x11\xfe^', + -0x1a1: b'\x11\xfe_', + -0x1a0: b'\x11\xfe`', + -0x19f: b'\x11\xfea', + -0x19e: b'\x11\xfeb', + -0x19d: b'\x11\xfec', + -0x19c: b'\x11\xfed', + -0x19b: b'\x11\xfee', + -0x19a: b'\x11\xfef', + -0x199: b'\x11\xfeg', + -0x198: b'\x11\xfeh', + -0x197: b'\x11\xfei', + -0x196: b'\x11\xfej', + -0x195: b'\x11\xfek', + -0x194: b'\x11\xfel', + -0x193: b'\x11\xfem', + -0x192: b'\x11\xfen', + -0x191: b'\x11\xfeo', + -0x190: b'\x11\xfep', + -0x18f: b'\x11\xfeq', + -0x18e: b'\x11\xfer', + -0x18d: b'\x11\xfes', + -0x18c: b'\x11\xfet', + -0x18b: b'\x11\xfeu', + -0x18a: b'\x11\xfev', + -0x189: b'\x11\xfew', + -0x188: b'\x11\xfex', + -0x187: b'\x11\xfey', + -0x186: b'\x11\xfez', + -0x185: b'\x11\xfe{', + -0x184: b'\x11\xfe|', + -0x183: b'\x11\xfe}', + -0x182: b'\x11\xfe~', + -0x181: b'\x11\xfe\x7f', + -0x180: b'\x11\xfe\x80', + -0x17f: b'\x11\xfe\x81', + -0x17e: b'\x11\xfe\x82', + -0x17d: b'\x11\xfe\x83', + -0x17c: b'\x11\xfe\x84', + -0x17b: b'\x11\xfe\x85', + -0x17a: b'\x11\xfe\x86', + -0x179: b'\x11\xfe\x87', + -0x178: b'\x11\xfe\x88', + -0x177: b'\x11\xfe\x89', + -0x176: b'\x11\xfe\x8a', + -0x175: b'\x11\xfe\x8b', + -0x174: b'\x11\xfe\x8c', + -0x173: b'\x11\xfe\x8d', + -0x172: b'\x11\xfe\x8e', + -0x171: b'\x11\xfe\x8f', + -0x170: b'\x11\xfe\x90', + -0x16f: b'\x11\xfe\x91', + -0x16e: b'\x11\xfe\x92', + -0x16d: b'\x11\xfe\x93', + -0x16c: b'\x11\xfe\x94', + -0x16b: b'\x11\xfe\x95', + -0x16a: b'\x11\xfe\x96', + -0x169: b'\x11\xfe\x97', + -0x168: b'\x11\xfe\x98', + -0x167: b'\x11\xfe\x99', + -0x166: b'\x11\xfe\x9a', + -0x165: b'\x11\xfe\x9b', + -0x164: b'\x11\xfe\x9c', + -0x163: b'\x11\xfe\x9d', + -0x162: b'\x11\xfe\x9e', + -0x161: b'\x11\xfe\x9f', + -0x160: b'\x11\xfe\xa0', + -0x15f: b'\x11\xfe\xa1', + -0x15e: b'\x11\xfe\xa2', + -0x15d: b'\x11\xfe\xa3', + -0x15c: b'\x11\xfe\xa4', + -0x15b: b'\x11\xfe\xa5', + -0x15a: b'\x11\xfe\xa6', + -0x159: b'\x11\xfe\xa7', + -0x158: b'\x11\xfe\xa8', + -0x157: b'\x11\xfe\xa9', + -0x156: b'\x11\xfe\xaa', + -0x155: b'\x11\xfe\xab', + -0x154: b'\x11\xfe\xac', + -0x153: b'\x11\xfe\xad', + -0x152: b'\x11\xfe\xae', + -0x151: b'\x11\xfe\xaf', + -0x150: b'\x11\xfe\xb0', + -0x14f: b'\x11\xfe\xb1', + -0x14e: b'\x11\xfe\xb2', + -0x14d: b'\x11\xfe\xb3', + -0x14c: b'\x11\xfe\xb4', + -0x14b: b'\x11\xfe\xb5', + -0x14a: b'\x11\xfe\xb6', + -0x149: b'\x11\xfe\xb7', + -0x148: b'\x11\xfe\xb8', + -0x147: b'\x11\xfe\xb9', + -0x146: b'\x11\xfe\xba', + -0x145: b'\x11\xfe\xbb', + -0x144: b'\x11\xfe\xbc', + -0x143: b'\x11\xfe\xbd', + -0x142: b'\x11\xfe\xbe', + -0x141: b'\x11\xfe\xbf', + -0x140: b'\x11\xfe\xc0', + -0x13f: b'\x11\xfe\xc1', + -0x13e: b'\x11\xfe\xc2', + -0x13d: b'\x11\xfe\xc3', + -0x13c: b'\x11\xfe\xc4', + -0x13b: b'\x11\xfe\xc5', + -0x13a: b'\x11\xfe\xc6', + -0x139: b'\x11\xfe\xc7', + -0x138: b'\x11\xfe\xc8', + -0x137: b'\x11\xfe\xc9', + -0x136: b'\x11\xfe\xca', + -0x135: b'\x11\xfe\xcb', + -0x134: b'\x11\xfe\xcc', + -0x133: b'\x11\xfe\xcd', + -0x132: b'\x11\xfe\xce', + -0x131: b'\x11\xfe\xcf', + -0x130: b'\x11\xfe\xd0', + -0x12f: b'\x11\xfe\xd1', + -0x12e: b'\x11\xfe\xd2', + -0x12d: b'\x11\xfe\xd3', + -0x12c: b'\x11\xfe\xd4', + -0x12b: b'\x11\xfe\xd5', + -0x12a: b'\x11\xfe\xd6', + -0x129: b'\x11\xfe\xd7', + -0x128: b'\x11\xfe\xd8', + -0x127: b'\x11\xfe\xd9', + -0x126: b'\x11\xfe\xda', + -0x125: b'\x11\xfe\xdb', + -0x124: b'\x11\xfe\xdc', + -0x123: b'\x11\xfe\xdd', + -0x122: b'\x11\xfe\xde', + -0x121: b'\x11\xfe\xdf', + -0x120: b'\x11\xfe\xe0', + -0x11f: b'\x11\xfe\xe1', + -0x11e: b'\x11\xfe\xe2', + -0x11d: b'\x11\xfe\xe3', + -0x11c: b'\x11\xfe\xe4', + -0x11b: b'\x11\xfe\xe5', + -0x11a: b'\x11\xfe\xe6', + -0x119: b'\x11\xfe\xe7', + -0x118: b'\x11\xfe\xe8', + -0x117: b'\x11\xfe\xe9', + -0x116: b'\x11\xfe\xea', + -0x115: b'\x11\xfe\xeb', + -0x114: b'\x11\xfe\xec', + -0x113: b'\x11\xfe\xed', + -0x112: b'\x11\xfe\xee', + -0x111: b'\x11\xfe\xef', + -0x110: b'\x11\xfe\xf0', + -0x10f: b'\x11\xfe\xf1', + -0x10e: b'\x11\xfe\xf2', + -0x10d: b'\x11\xfe\xf3', + -0x10c: b'\x11\xfe\xf4', + -0x10b: b'\x11\xfe\xf5', + -0x10a: b'\x11\xfe\xf6', + -0x109: b'\x11\xfe\xf7', + -0x108: b'\x11\xfe\xf8', + -0x107: b'\x11\xfe\xf9', + -0x106: b'\x11\xfe\xfa', + -0x105: b'\x11\xfe\xfb', + -0x104: b'\x11\xfe\xfc', + -0x103: b'\x11\xfe\xfd', + -0x102: b'\x11\xfe\xfe', + -0x101: b'\x11\xfe\xff', + -0x100: b'\x11\xff\x00', + -0xff: b'\x11\xff\x01', + -0xfe: b'\x11\xff\x02', + -0xfd: b'\x11\xff\x03', + -0xfc: b'\x11\xff\x04', + -0xfb: b'\x11\xff\x05', + -0xfa: b'\x11\xff\x06', + -0xf9: b'\x11\xff\x07', + -0xf8: b'\x11\xff\x08', + -0xf7: b'\x11\xff\t', + -0xf6: b'\x11\xff\n', + -0xf5: b'\x11\xff\x0b', + -0xf4: b'\x11\xff\x0c', + -0xf3: b'\x11\xff\r', + -0xf2: b'\x11\xff\x0e', + -0xf1: b'\x11\xff\x0f', + -0xf0: b'\x11\xff\x10', + -0xef: b'\x11\xff\x11', + -0xee: b'\x11\xff\x12', + -0xed: b'\x11\xff\x13', + -0xec: b'\x11\xff\x14', + -0xeb: b'\x11\xff\x15', + -0xea: b'\x11\xff\x16', + -0xe9: b'\x11\xff\x17', + -0xe8: b'\x11\xff\x18', + -0xe7: b'\x11\xff\x19', + -0xe6: b'\x11\xff\x1a', + -0xe5: b'\x11\xff\x1b', + -0xe4: b'\x11\xff\x1c', + -0xe3: b'\x11\xff\x1d', + -0xe2: b'\x11\xff\x1e', + -0xe1: b'\x11\xff\x1f', + -0xe0: b'\x11\xff ', + -0xdf: b'\x11\xff!', + -0xde: b'\x11\xff"', + -0xdd: b'\x11\xff#', + -0xdc: b'\x11\xff$', + -0xdb: b'\x11\xff%', + -0xda: b'\x11\xff&', + -0xd9: b"\x11\xff'", + -0xd8: b'\x11\xff(', + -0xd7: b'\x11\xff)', + -0xd6: b'\x11\xff*', + -0xd5: b'\x11\xff+', + -0xd4: b'\x11\xff,', + -0xd3: b'\x11\xff-', + -0xd2: b'\x11\xff.', + -0xd1: b'\x11\xff/', + -0xd0: b'\x11\xff0', + -0xcf: b'\x11\xff1', + -0xce: b'\x11\xff2', + -0xcd: b'\x11\xff3', + -0xcc: b'\x11\xff4', + -0xcb: b'\x11\xff5', + -0xca: b'\x11\xff6', + -0xc9: b'\x11\xff7', + -0xc8: b'\x11\xff8', + -0xc7: b'\x11\xff9', + -0xc6: b'\x11\xff:', + -0xc5: b'\x11\xff;', + -0xc4: b'\x11\xff<', + -0xc3: b'\x11\xff=', + -0xc2: b'\x11\xff>', + -0xc1: b'\x11\xff?', + -0xc0: b'\x11\xff@', + -0xbf: b'\x11\xffA', + -0xbe: b'\x11\xffB', + -0xbd: b'\x11\xffC', + -0xbc: b'\x11\xffD', + -0xbb: b'\x11\xffE', + -0xba: b'\x11\xffF', + -0xb9: b'\x11\xffG', + -0xb8: b'\x11\xffH', + -0xb7: b'\x11\xffI', + -0xb6: b'\x11\xffJ', + -0xb5: b'\x11\xffK', + -0xb4: b'\x11\xffL', + -0xb3: b'\x11\xffM', + -0xb2: b'\x11\xffN', + -0xb1: b'\x11\xffO', + -0xb0: b'\x11\xffP', + -0xaf: b'\x11\xffQ', + -0xae: b'\x11\xffR', + -0xad: b'\x11\xffS', + -0xac: b'\x11\xffT', + -0xab: b'\x11\xffU', + -0xaa: b'\x11\xffV', + -0xa9: b'\x11\xffW', + -0xa8: b'\x11\xffX', + -0xa7: b'\x11\xffY', + -0xa6: b'\x11\xffZ', + -0xa5: b'\x11\xff[', + -0xa4: b'\x11\xff\\', + -0xa3: b'\x11\xff]', + -0xa2: b'\x11\xff^', + -0xa1: b'\x11\xff_', + -0xa0: b'\x11\xff`', + -0x9f: b'\x11\xffa', + -0x9e: b'\x11\xffb', + -0x9d: b'\x11\xffc', + -0x9c: b'\x11\xffd', + -0x9b: b'\x11\xffe', + -0x9a: b'\x11\xfff', + -0x99: b'\x11\xffg', + -0x98: b'\x11\xffh', + -0x97: b'\x11\xffi', + -0x96: b'\x11\xffj', + -0x95: b'\x11\xffk', + -0x94: b'\x11\xffl', + -0x93: b'\x11\xffm', + -0x92: b'\x11\xffn', + -0x91: b'\x11\xffo', + -0x90: b'\x11\xffp', + -0x8f: b'\x11\xffq', + -0x8e: b'\x11\xffr', + -0x8d: b'\x11\xffs', + -0x8c: b'\x11\xfft', + -0x8b: b'\x11\xffu', + -0x8a: b'\x11\xffv', + -0x89: b'\x11\xffw', + -0x88: b'\x11\xffx', + -0x87: b'\x11\xffy', + -0x86: b'\x11\xffz', + -0x85: b'\x11\xff{', + -0x84: b'\x11\xff|', + -0x83: b'\x11\xff}', + -0x82: b'\x11\xff~', + -0x81: b'\x11\xff\x7f', + -0x80: b'\x10\x80', + -0x7f: b'\x10\x81', + -0x7e: b'\x10\x82', + -0x7d: b'\x10\x83', + -0x7c: b'\x10\x84', + -0x7b: b'\x10\x85', + -0x7a: b'\x10\x86', + -0x79: b'\x10\x87', + -0x78: b'\x10\x88', + -0x77: b'\x10\x89', + -0x76: b'\x10\x8a', + -0x75: b'\x10\x8b', + -0x74: b'\x10\x8c', + -0x73: b'\x10\x8d', + -0x72: b'\x10\x8e', + -0x71: b'\x10\x8f', + -0x70: b'\x10\x90', + -0x6f: b'\x10\x91', + -0x6e: b'\x10\x92', + -0x6d: b'\x10\x93', + -0x6c: b'\x10\x94', + -0x6b: b'\x10\x95', + -0x6a: b'\x10\x96', + -0x69: b'\x10\x97', + -0x68: b'\x10\x98', + -0x67: b'\x10\x99', + -0x66: b'\x10\x9a', + -0x65: b'\x10\x9b', + -0x64: b'\x10\x9c', + -0x63: b'\x10\x9d', + -0x62: b'\x10\x9e', + -0x61: b'\x10\x9f', + -0x60: b'\x10\xa0', + -0x5f: b'\x10\xa1', + -0x5e: b'\x10\xa2', + -0x5d: b'\x10\xa3', + -0x5c: b'\x10\xa4', + -0x5b: b'\x10\xa5', + -0x5a: b'\x10\xa6', + -0x59: b'\x10\xa7', + -0x58: b'\x10\xa8', + -0x57: b'\x10\xa9', + -0x56: b'\x10\xaa', + -0x55: b'\x10\xab', + -0x54: b'\x10\xac', + -0x53: b'\x10\xad', + -0x52: b'\x10\xae', + -0x51: b'\x10\xaf', + -0x50: b'\x10\xb0', + -0x4f: b'\x10\xb1', + -0x4e: b'\x10\xb2', + -0x4d: b'\x10\xb3', + -0x4c: b'\x10\xb4', + -0x4b: b'\x10\xb5', + -0x4a: b'\x10\xb6', + -0x49: b'\x10\xb7', + -0x48: b'\x10\xb8', + -0x47: b'\x10\xb9', + -0x46: b'\x10\xba', + -0x45: b'\x10\xbb', + -0x44: b'\x10\xbc', + -0x43: b'\x10\xbd', + -0x42: b'\x10\xbe', + -0x41: b'\x10\xbf', + -0x40: b'\x10\xc0', + -0x3f: b'\x10\xc1', + -0x3e: b'\x10\xc2', + -0x3d: b'\x10\xc3', + -0x3c: b'\x10\xc4', + -0x3b: b'\x10\xc5', + -0x3a: b'\x10\xc6', + -0x39: b'\x10\xc7', + -0x38: b'\x10\xc8', + -0x37: b'\x10\xc9', + -0x36: b'\x10\xca', + -0x35: b'\x10\xcb', + -0x34: b'\x10\xcc', + -0x33: b'\x10\xcd', + -0x32: b'\x10\xce', + -0x31: b'\x10\xcf', + -0x30: b'\x10\xd0', + -0x2f: b'\x10\xd1', + -0x2e: b'\x10\xd2', + -0x2d: b'\x10\xd3', + -0x2c: b'\x10\xd4', + -0x2b: b'\x10\xd5', + -0x2a: b'\x10\xd6', + -0x29: b'\x10\xd7', + -0x28: b'\x10\xd8', + -0x27: b'\x10\xd9', + -0x26: b'\x10\xda', + -0x25: b'\x10\xdb', + -0x24: b'\x10\xdc', + -0x23: b'\x10\xdd', + -0x22: b'\x10\xde', + -0x21: b'\x10\xdf', + -0x20: b'\x10\xe0', + -0x1f: b'\x10\xe1', + -0x1e: b'\x10\xe2', + -0x1d: b'\x10\xe3', + -0x1c: b'\x10\xe4', + -0x1b: b'\x10\xe5', + -0x1a: b'\x10\xe6', + -0x19: b'\x10\xe7', + -0x18: b'\x10\xe8', + -0x17: b'\x10\xe9', + -0x16: b'\x10\xea', + -0x15: b'\x10\xeb', + -0x14: b'\x10\xec', + -0x13: b'\x10\xed', + -0x12: b'\x10\xee', + -0x11: b'\x10\xef', + -0x10: b'\x10\xf0', + -0xf: b'\x10\xf1', + -0xe: b'\x10\xf2', + -0xd: b'\x10\xf3', + -0xc: b'\x10\xf4', + -0xb: b'\x10\xf5', + -0xa: b'\x10\xf6', + -0x9: b'\x10\xf7', + -0x8: b'\x10\xf8', + -0x7: b'\x10\xf9', + -0x6: b'\x10\xfa', + -0x5: b'\x10\xfb', + -0x4: b'\x10\xfc', + -0x3: b'\x10\xfd', + -0x2: b'\x10\xfe', + -0x1: b'\x02', + 0x0: b'\x03', + 0x1: b'\x04', + 0x2: b'\x05', + 0x3: b'\x06', + 0x4: b'\x07', + 0x5: b'\x08', + 0x6: b'\x10\x06', + 0x7: b'\x10\x07', + 0x8: b'\x10\x08', + 0x9: b'\x10\t', + 0xa: b'\x10\n', + 0xb: b'\x10\x0b', + 0xc: b'\x10\x0c', + 0xd: b'\x10\r', + 0xe: b'\x10\x0e', + 0xf: b'\x10\x0f', + 0x10: b'\x10\x10', + 0x11: b'\x10\x11', + 0x12: b'\x10\x12', + 0x13: b'\x10\x13', + 0x14: b'\x10\x14', + 0x15: b'\x10\x15', + 0x16: b'\x10\x16', + 0x17: b'\x10\x17', + 0x18: b'\x10\x18', + 0x19: b'\x10\x19', + 0x1a: b'\x10\x1a', + 0x1b: b'\x10\x1b', + 0x1c: b'\x10\x1c', + 0x1d: b'\x10\x1d', + 0x1e: b'\x10\x1e', + 0x1f: b'\x10\x1f', + 0x20: b'\x10 ', + 0x21: b'\x10!', + 0x22: b'\x10"', + 0x23: b'\x10#', + 0x24: b'\x10$', + 0x25: b'\x10%', + 0x26: b'\x10&', + 0x27: b"\x10'", + 0x28: b'\x10(', + 0x29: b'\x10)', + 0x2a: b'\x10*', + 0x2b: b'\x10+', + 0x2c: b'\x10,', + 0x2d: b'\x10-', + 0x2e: b'\x10.', + 0x2f: b'\x10/', + 0x30: b'\x100', + 0x31: b'\x101', + 0x32: b'\x102', + 0x33: b'\x103', + 0x34: b'\x104', + 0x35: b'\x105', + 0x36: b'\x106', + 0x37: b'\x107', + 0x38: b'\x108', + 0x39: b'\x109', + 0x3a: b'\x10:', + 0x3b: b'\x10;', + 0x3c: b'\x10<', + 0x3d: b'\x10=', + 0x3e: b'\x10>', + 0x3f: b'\x10?', + 0x40: b'\x10@', + 0x41: b'\x10A', + 0x42: b'\x10B', + 0x43: b'\x10C', + 0x44: b'\x10D', + 0x45: b'\x10E', + 0x46: b'\x10F', + 0x47: b'\x10G', + 0x48: b'\x10H', + 0x49: b'\x10I', + 0x4a: b'\x10J', + 0x4b: b'\x10K', + 0x4c: b'\x10L', + 0x4d: b'\x10M', + 0x4e: b'\x10N', + 0x4f: b'\x10O', + 0x50: b'\x10P', + 0x51: b'\x10Q', + 0x52: b'\x10R', + 0x53: b'\x10S', + 0x54: b'\x10T', + 0x55: b'\x10U', + 0x56: b'\x10V', + 0x57: b'\x10W', + 0x58: b'\x10X', + 0x59: b'\x10Y', + 0x5a: b'\x10Z', + 0x5b: b'\x10[', + 0x5c: b'\x10\\', + 0x5d: b'\x10]', + 0x5e: b'\x10^', + 0x5f: b'\x10_', + 0x60: b'\x10`', + 0x61: b'\x10a', + 0x62: b'\x10b', + 0x63: b'\x10c', + 0x64: b'\x10d', + 0x65: b'\x10e', + 0x66: b'\x10f', + 0x67: b'\x10g', + 0x68: b'\x10h', + 0x69: b'\x10i', + 0x6a: b'\x10j', + 0x6b: b'\x10k', + 0x6c: b'\x10l', + 0x6d: b'\x10m', + 0x6e: b'\x10n', + 0x6f: b'\x10o', + 0x70: b'\x10p', + 0x71: b'\x10q', + 0x72: b'\x10r', + 0x73: b'\x10s', + 0x74: b'\x10t', + 0x75: b'\x10u', + 0x76: b'\x10v', + 0x77: b'\x10w', + 0x78: b'\x10x', + 0x79: b'\x10y', + 0x7a: b'\x10z', + 0x7b: b'\x10{', + 0x7c: b'\x10|', + 0x7d: b'\x10}', + 0x7e: b'\x10~', + 0x7f: b'\x10\x7f', + 0x80: b'\x11\x00\x80', + 0x81: b'\x11\x00\x81', + 0x82: b'\x11\x00\x82', + 0x83: b'\x11\x00\x83', + 0x84: b'\x11\x00\x84', + 0x85: b'\x11\x00\x85', + 0x86: b'\x11\x00\x86', + 0x87: b'\x11\x00\x87', + 0x88: b'\x11\x00\x88', + 0x89: b'\x11\x00\x89', + 0x8a: b'\x11\x00\x8a', + 0x8b: b'\x11\x00\x8b', + 0x8c: b'\x11\x00\x8c', + 0x8d: b'\x11\x00\x8d', + 0x8e: b'\x11\x00\x8e', + 0x8f: b'\x11\x00\x8f', + 0x90: b'\x11\x00\x90', + 0x91: b'\x11\x00\x91', + 0x92: b'\x11\x00\x92', + 0x93: b'\x11\x00\x93', + 0x94: b'\x11\x00\x94', + 0x95: b'\x11\x00\x95', + 0x96: b'\x11\x00\x96', + 0x97: b'\x11\x00\x97', + 0x98: b'\x11\x00\x98', + 0x99: b'\x11\x00\x99', + 0x9a: b'\x11\x00\x9a', + 0x9b: b'\x11\x00\x9b', + 0x9c: b'\x11\x00\x9c', + 0x9d: b'\x11\x00\x9d', + 0x9e: b'\x11\x00\x9e', + 0x9f: b'\x11\x00\x9f', + 0xa0: b'\x11\x00\xa0', + 0xa1: b'\x11\x00\xa1', + 0xa2: b'\x11\x00\xa2', + 0xa3: b'\x11\x00\xa3', + 0xa4: b'\x11\x00\xa4', + 0xa5: b'\x11\x00\xa5', + 0xa6: b'\x11\x00\xa6', + 0xa7: b'\x11\x00\xa7', + 0xa8: b'\x11\x00\xa8', + 0xa9: b'\x11\x00\xa9', + 0xaa: b'\x11\x00\xaa', + 0xab: b'\x11\x00\xab', + 0xac: b'\x11\x00\xac', + 0xad: b'\x11\x00\xad', + 0xae: b'\x11\x00\xae', + 0xaf: b'\x11\x00\xaf', + 0xb0: b'\x11\x00\xb0', + 0xb1: b'\x11\x00\xb1', + 0xb2: b'\x11\x00\xb2', + 0xb3: b'\x11\x00\xb3', + 0xb4: b'\x11\x00\xb4', + 0xb5: b'\x11\x00\xb5', + 0xb6: b'\x11\x00\xb6', + 0xb7: b'\x11\x00\xb7', + 0xb8: b'\x11\x00\xb8', + 0xb9: b'\x11\x00\xb9', + 0xba: b'\x11\x00\xba', + 0xbb: b'\x11\x00\xbb', + 0xbc: b'\x11\x00\xbc', + 0xbd: b'\x11\x00\xbd', + 0xbe: b'\x11\x00\xbe', + 0xbf: b'\x11\x00\xbf', + 0xc0: b'\x11\x00\xc0', + 0xc1: b'\x11\x00\xc1', + 0xc2: b'\x11\x00\xc2', + 0xc3: b'\x11\x00\xc3', + 0xc4: b'\x11\x00\xc4', + 0xc5: b'\x11\x00\xc5', + 0xc6: b'\x11\x00\xc6', + 0xc7: b'\x11\x00\xc7', + 0xc8: b'\x11\x00\xc8', + 0xc9: b'\x11\x00\xc9', + 0xca: b'\x11\x00\xca', + 0xcb: b'\x11\x00\xcb', + 0xcc: b'\x11\x00\xcc', + 0xcd: b'\x11\x00\xcd', + 0xce: b'\x11\x00\xce', + 0xcf: b'\x11\x00\xcf', + 0xd0: b'\x11\x00\xd0', + 0xd1: b'\x11\x00\xd1', + 0xd2: b'\x11\x00\xd2', + 0xd3: b'\x11\x00\xd3', + 0xd4: b'\x11\x00\xd4', + 0xd5: b'\x11\x00\xd5', + 0xd6: b'\x11\x00\xd6', + 0xd7: b'\x11\x00\xd7', + 0xd8: b'\x11\x00\xd8', + 0xd9: b'\x11\x00\xd9', + 0xda: b'\x11\x00\xda', + 0xdb: b'\x11\x00\xdb', + 0xdc: b'\x11\x00\xdc', + 0xdd: b'\x11\x00\xdd', + 0xde: b'\x11\x00\xde', + 0xdf: b'\x11\x00\xdf', + 0xe0: b'\x11\x00\xe0', + 0xe1: b'\x11\x00\xe1', + 0xe2: b'\x11\x00\xe2', + 0xe3: b'\x11\x00\xe3', + 0xe4: b'\x11\x00\xe4', + 0xe5: b'\x11\x00\xe5', + 0xe6: b'\x11\x00\xe6', + 0xe7: b'\x11\x00\xe7', + 0xe8: b'\x11\x00\xe8', + 0xe9: b'\x11\x00\xe9', + 0xea: b'\x11\x00\xea', + 0xeb: b'\x11\x00\xeb', + 0xec: b'\x11\x00\xec', + 0xed: b'\x11\x00\xed', + 0xee: b'\x11\x00\xee', + 0xef: b'\x11\x00\xef', + 0xf0: b'\x11\x00\xf0', + 0xf1: b'\x11\x00\xf1', + 0xf2: b'\x11\x00\xf2', + 0xf3: b'\x11\x00\xf3', + 0xf4: b'\x11\x00\xf4', + 0xf5: b'\x11\x00\xf5', + 0xf6: b'\x11\x00\xf6', + 0xf7: b'\x11\x00\xf7', + 0xf8: b'\x11\x00\xf8', + 0xf9: b'\x11\x00\xf9', + 0xfa: b'\x11\x00\xfa', + 0xfb: b'\x11\x00\xfb', + 0xfc: b'\x11\x00\xfc', + 0xfd: b'\x11\x00\xfd', + 0xfe: b'\x11\x00\xfe', + 0xff: b'\x11\x00\xff', + 0x100: b'\x11\x01\x00', + 0x101: b'\x11\x01\x01', + 0x102: b'\x11\x01\x02', + 0x103: b'\x11\x01\x03', + 0x104: b'\x11\x01\x04', + 0x105: b'\x11\x01\x05', + 0x106: b'\x11\x01\x06', + 0x107: b'\x11\x01\x07', + 0x108: b'\x11\x01\x08', + 0x109: b'\x11\x01\t', + 0x10a: b'\x11\x01\n', + 0x10b: b'\x11\x01\x0b', + 0x10c: b'\x11\x01\x0c', + 0x10d: b'\x11\x01\r', + 0x10e: b'\x11\x01\x0e', + 0x10f: b'\x11\x01\x0f', + 0x110: b'\x11\x01\x10', + 0x111: b'\x11\x01\x11', + 0x112: b'\x11\x01\x12', + 0x113: b'\x11\x01\x13', + 0x114: b'\x11\x01\x14', + 0x115: b'\x11\x01\x15', + 0x116: b'\x11\x01\x16', + 0x117: b'\x11\x01\x17', + 0x118: b'\x11\x01\x18', + 0x119: b'\x11\x01\x19', + 0x11a: b'\x11\x01\x1a', + 0x11b: b'\x11\x01\x1b', + 0x11c: b'\x11\x01\x1c', + 0x11d: b'\x11\x01\x1d', + 0x11e: b'\x11\x01\x1e', + 0x11f: b'\x11\x01\x1f', + 0x120: b'\x11\x01 ', + 0x121: b'\x11\x01!', + 0x122: b'\x11\x01"', + 0x123: b'\x11\x01#', + 0x124: b'\x11\x01$', + 0x125: b'\x11\x01%', + 0x126: b'\x11\x01&', + 0x127: b"\x11\x01'", + 0x128: b'\x11\x01(', + 0x129: b'\x11\x01)', + 0x12a: b'\x11\x01*', + 0x12b: b'\x11\x01+', + 0x12c: b'\x11\x01,', + 0x12d: b'\x11\x01-', + 0x12e: b'\x11\x01.', + 0x12f: b'\x11\x01/', + 0x130: b'\x11\x010', + 0x131: b'\x11\x011', + 0x132: b'\x11\x012', + 0x133: b'\x11\x013', + 0x134: b'\x11\x014', + 0x135: b'\x11\x015', + 0x136: b'\x11\x016', + 0x137: b'\x11\x017', + 0x138: b'\x11\x018', + 0x139: b'\x11\x019', + 0x13a: b'\x11\x01:', + 0x13b: b'\x11\x01;', + 0x13c: b'\x11\x01<', + 0x13d: b'\x11\x01=', + 0x13e: b'\x11\x01>', + 0x13f: b'\x11\x01?', + 0x140: b'\x11\x01@', + 0x141: b'\x11\x01A', + 0x142: b'\x11\x01B', + 0x143: b'\x11\x01C', + 0x144: b'\x11\x01D', + 0x145: b'\x11\x01E', + 0x146: b'\x11\x01F', + 0x147: b'\x11\x01G', + 0x148: b'\x11\x01H', + 0x149: b'\x11\x01I', + 0x14a: b'\x11\x01J', + 0x14b: b'\x11\x01K', + 0x14c: b'\x11\x01L', + 0x14d: b'\x11\x01M', + 0x14e: b'\x11\x01N', + 0x14f: b'\x11\x01O', + 0x150: b'\x11\x01P', + 0x151: b'\x11\x01Q', + 0x152: b'\x11\x01R', + 0x153: b'\x11\x01S', + 0x154: b'\x11\x01T', + 0x155: b'\x11\x01U', + 0x156: b'\x11\x01V', + 0x157: b'\x11\x01W', + 0x158: b'\x11\x01X', + 0x159: b'\x11\x01Y', + 0x15a: b'\x11\x01Z', + 0x15b: b'\x11\x01[', + 0x15c: b'\x11\x01\\', + 0x15d: b'\x11\x01]', + 0x15e: b'\x11\x01^', + 0x15f: b'\x11\x01_', + 0x160: b'\x11\x01`', + 0x161: b'\x11\x01a', + 0x162: b'\x11\x01b', + 0x163: b'\x11\x01c', + 0x164: b'\x11\x01d', + 0x165: b'\x11\x01e', + 0x166: b'\x11\x01f', + 0x167: b'\x11\x01g', + 0x168: b'\x11\x01h', + 0x169: b'\x11\x01i', + 0x16a: b'\x11\x01j', + 0x16b: b'\x11\x01k', + 0x16c: b'\x11\x01l', + 0x16d: b'\x11\x01m', + 0x16e: b'\x11\x01n', + 0x16f: b'\x11\x01o', + 0x170: b'\x11\x01p', + 0x171: b'\x11\x01q', + 0x172: b'\x11\x01r', + 0x173: b'\x11\x01s', + 0x174: b'\x11\x01t', + 0x175: b'\x11\x01u', + 0x176: b'\x11\x01v', + 0x177: b'\x11\x01w', + 0x178: b'\x11\x01x', + 0x179: b'\x11\x01y', + 0x17a: b'\x11\x01z', + 0x17b: b'\x11\x01{', + 0x17c: b'\x11\x01|', + 0x17d: b'\x11\x01}', + 0x17e: b'\x11\x01~', + 0x17f: b'\x11\x01\x7f', + 0x180: b'\x11\x01\x80', + 0x181: b'\x11\x01\x81', + 0x182: b'\x11\x01\x82', + 0x183: b'\x11\x01\x83', + 0x184: b'\x11\x01\x84', + 0x185: b'\x11\x01\x85', + 0x186: b'\x11\x01\x86', + 0x187: b'\x11\x01\x87', + 0x188: b'\x11\x01\x88', + 0x189: b'\x11\x01\x89', + 0x18a: b'\x11\x01\x8a', + 0x18b: b'\x11\x01\x8b', + 0x18c: b'\x11\x01\x8c', + 0x18d: b'\x11\x01\x8d', + 0x18e: b'\x11\x01\x8e', + 0x18f: b'\x11\x01\x8f', + 0x190: b'\x11\x01\x90', + 0x191: b'\x11\x01\x91', + 0x192: b'\x11\x01\x92', + 0x193: b'\x11\x01\x93', + 0x194: b'\x11\x01\x94', + 0x195: b'\x11\x01\x95', + 0x196: b'\x11\x01\x96', + 0x197: b'\x11\x01\x97', + 0x198: b'\x11\x01\x98', + 0x199: b'\x11\x01\x99', + 0x19a: b'\x11\x01\x9a', + 0x19b: b'\x11\x01\x9b', + 0x19c: b'\x11\x01\x9c', + 0x19d: b'\x11\x01\x9d', + 0x19e: b'\x11\x01\x9e', + 0x19f: b'\x11\x01\x9f', + 0x1a0: b'\x11\x01\xa0', + 0x1a1: b'\x11\x01\xa1', + 0x1a2: b'\x11\x01\xa2', + 0x1a3: b'\x11\x01\xa3', + 0x1a4: b'\x11\x01\xa4', + 0x1a5: b'\x11\x01\xa5', + 0x1a6: b'\x11\x01\xa6', + 0x1a7: b'\x11\x01\xa7', + 0x1a8: b'\x11\x01\xa8', + 0x1a9: b'\x11\x01\xa9', + 0x1aa: b'\x11\x01\xaa', + 0x1ab: b'\x11\x01\xab', + 0x1ac: b'\x11\x01\xac', + 0x1ad: b'\x11\x01\xad', + 0x1ae: b'\x11\x01\xae', + 0x1af: b'\x11\x01\xaf', + 0x1b0: b'\x11\x01\xb0', + 0x1b1: b'\x11\x01\xb1', + 0x1b2: b'\x11\x01\xb2', + 0x1b3: b'\x11\x01\xb3', + 0x1b4: b'\x11\x01\xb4', + 0x1b5: b'\x11\x01\xb5', + 0x1b6: b'\x11\x01\xb6', + 0x1b7: b'\x11\x01\xb7', + 0x1b8: b'\x11\x01\xb8', + 0x1b9: b'\x11\x01\xb9', + 0x1ba: b'\x11\x01\xba', + 0x1bb: b'\x11\x01\xbb', + 0x1bc: b'\x11\x01\xbc', + 0x1bd: b'\x11\x01\xbd', + 0x1be: b'\x11\x01\xbe', + 0x1bf: b'\x11\x01\xbf', + 0x1c0: b'\x11\x01\xc0', + 0x1c1: b'\x11\x01\xc1', + 0x1c2: b'\x11\x01\xc2', + 0x1c3: b'\x11\x01\xc3', + 0x1c4: b'\x11\x01\xc4', + 0x1c5: b'\x11\x01\xc5', + 0x1c6: b'\x11\x01\xc6', + 0x1c7: b'\x11\x01\xc7', + 0x1c8: b'\x11\x01\xc8', + 0x1c9: b'\x11\x01\xc9', + 0x1ca: b'\x11\x01\xca', + 0x1cb: b'\x11\x01\xcb', + 0x1cc: b'\x11\x01\xcc', + 0x1cd: b'\x11\x01\xcd', + 0x1ce: b'\x11\x01\xce', + 0x1cf: b'\x11\x01\xcf', + 0x1d0: b'\x11\x01\xd0', + 0x1d1: b'\x11\x01\xd1', + 0x1d2: b'\x11\x01\xd2', + 0x1d3: b'\x11\x01\xd3', + 0x1d4: b'\x11\x01\xd4', + 0x1d5: b'\x11\x01\xd5', + 0x1d6: b'\x11\x01\xd6', + 0x1d7: b'\x11\x01\xd7', + 0x1d8: b'\x11\x01\xd8', + 0x1d9: b'\x11\x01\xd9', + 0x1da: b'\x11\x01\xda', + 0x1db: b'\x11\x01\xdb', + 0x1dc: b'\x11\x01\xdc', + 0x1dd: b'\x11\x01\xdd', + 0x1de: b'\x11\x01\xde', + 0x1df: b'\x11\x01\xdf', + 0x1e0: b'\x11\x01\xe0', + 0x1e1: b'\x11\x01\xe1', + 0x1e2: b'\x11\x01\xe2', + 0x1e3: b'\x11\x01\xe3', + 0x1e4: b'\x11\x01\xe4', + 0x1e5: b'\x11\x01\xe5', + 0x1e6: b'\x11\x01\xe6', + 0x1e7: b'\x11\x01\xe7', + 0x1e8: b'\x11\x01\xe8', + 0x1e9: b'\x11\x01\xe9', + 0x1ea: b'\x11\x01\xea', + 0x1eb: b'\x11\x01\xeb', + 0x1ec: b'\x11\x01\xec', + 0x1ed: b'\x11\x01\xed', + 0x1ee: b'\x11\x01\xee', + 0x1ef: b'\x11\x01\xef', + 0x1f0: b'\x11\x01\xf0', + 0x1f1: b'\x11\x01\xf1', + 0x1f2: b'\x11\x01\xf2', + 0x1f3: b'\x11\x01\xf3', + 0x1f4: b'\x11\x01\xf4', + 0x1f5: b'\x11\x01\xf5', + 0x1f6: b'\x11\x01\xf6', + 0x1f7: b'\x11\x01\xf7', + 0x1f8: b'\x11\x01\xf8', + 0x1f9: b'\x11\x01\xf9', + 0x1fa: b'\x11\x01\xfa', + 0x1fb: b'\x11\x01\xfb', + 0x1fc: b'\x11\x01\xfc', + 0x1fd: b'\x11\x01\xfd', + 0x1fe: b'\x11\x01\xfe', + 0x1ff: b'\x11\x01\xff', + 0x200: b'\x11\x02\x00', + 0x201: b'\x11\x02\x01', + 0x202: b'\x11\x02\x02', + 0x203: b'\x11\x02\x03', + 0x204: b'\x11\x02\x04', + 0x205: b'\x11\x02\x05', + 0x206: b'\x11\x02\x06', + 0x207: b'\x11\x02\x07', + 0x208: b'\x11\x02\x08', + 0x209: b'\x11\x02\t', + 0x20a: b'\x11\x02\n', + 0x20b: b'\x11\x02\x0b', + 0x20c: b'\x11\x02\x0c', + 0x20d: b'\x11\x02\r', + 0x20e: b'\x11\x02\x0e', + 0x20f: b'\x11\x02\x0f', + 0x210: b'\x11\x02\x10', + 0x211: b'\x11\x02\x11', + 0x212: b'\x11\x02\x12', + 0x213: b'\x11\x02\x13', + 0x214: b'\x11\x02\x14', + 0x215: b'\x11\x02\x15', + 0x216: b'\x11\x02\x16', + 0x217: b'\x11\x02\x17', + 0x218: b'\x11\x02\x18', + 0x219: b'\x11\x02\x19', + 0x21a: b'\x11\x02\x1a', + 0x21b: b'\x11\x02\x1b', + 0x21c: b'\x11\x02\x1c', + 0x21d: b'\x11\x02\x1d', + 0x21e: b'\x11\x02\x1e', + 0x21f: b'\x11\x02\x1f', + 0x220: b'\x11\x02 ', + 0x221: b'\x11\x02!', + 0x222: b'\x11\x02"', + 0x223: b'\x11\x02#', + 0x224: b'\x11\x02$', + 0x225: b'\x11\x02%', + 0x226: b'\x11\x02&', + 0x227: b"\x11\x02'", + 0x228: b'\x11\x02(', + 0x229: b'\x11\x02)', + 0x22a: b'\x11\x02*', + 0x22b: b'\x11\x02+', + 0x22c: b'\x11\x02,', + 0x22d: b'\x11\x02-', + 0x22e: b'\x11\x02.', + 0x22f: b'\x11\x02/', + 0x230: b'\x11\x020', + 0x231: b'\x11\x021', + 0x232: b'\x11\x022', + 0x233: b'\x11\x023', + 0x234: b'\x11\x024', + 0x235: b'\x11\x025', + 0x236: b'\x11\x026', + 0x237: b'\x11\x027', + 0x238: b'\x11\x028', + 0x239: b'\x11\x029', + 0x23a: b'\x11\x02:', + 0x23b: b'\x11\x02;', + 0x23c: b'\x11\x02<', + 0x23d: b'\x11\x02=', + 0x23e: b'\x11\x02>', + 0x23f: b'\x11\x02?', + 0x240: b'\x11\x02@', + 0x241: b'\x11\x02A', + 0x242: b'\x11\x02B', + 0x243: b'\x11\x02C', + 0x244: b'\x11\x02D', + 0x245: b'\x11\x02E', + 0x246: b'\x11\x02F', + 0x247: b'\x11\x02G', + 0x248: b'\x11\x02H', + 0x249: b'\x11\x02I', + 0x24a: b'\x11\x02J', + 0x24b: b'\x11\x02K', + 0x24c: b'\x11\x02L', + 0x24d: b'\x11\x02M', + 0x24e: b'\x11\x02N', + 0x24f: b'\x11\x02O', + 0x250: b'\x11\x02P', + 0x251: b'\x11\x02Q', + 0x252: b'\x11\x02R', + 0x253: b'\x11\x02S', + 0x254: b'\x11\x02T', + 0x255: b'\x11\x02U', + 0x256: b'\x11\x02V', + 0x257: b'\x11\x02W', + 0x258: b'\x11\x02X', + 0x259: b'\x11\x02Y', + 0x25a: b'\x11\x02Z', + 0x25b: b'\x11\x02[', + 0x25c: b'\x11\x02\\', + 0x25d: b'\x11\x02]', + 0x25e: b'\x11\x02^', + 0x25f: b'\x11\x02_', + 0x260: b'\x11\x02`', + 0x261: b'\x11\x02a', + 0x262: b'\x11\x02b', + 0x263: b'\x11\x02c', + 0x264: b'\x11\x02d', + 0x265: b'\x11\x02e', + 0x266: b'\x11\x02f', + 0x267: b'\x11\x02g', + 0x268: b'\x11\x02h', + 0x269: b'\x11\x02i', + 0x26a: b'\x11\x02j', + 0x26b: b'\x11\x02k', + 0x26c: b'\x11\x02l', + 0x26d: b'\x11\x02m', + 0x26e: b'\x11\x02n', + 0x26f: b'\x11\x02o', + 0x270: b'\x11\x02p', + 0x271: b'\x11\x02q', + 0x272: b'\x11\x02r', + 0x273: b'\x11\x02s', + 0x274: b'\x11\x02t', + 0x275: b'\x11\x02u', + 0x276: b'\x11\x02v', + 0x277: b'\x11\x02w', + 0x278: b'\x11\x02x', + 0x279: b'\x11\x02y', + 0x27a: b'\x11\x02z', + 0x27b: b'\x11\x02{', + 0x27c: b'\x11\x02|', + 0x27d: b'\x11\x02}', + 0x27e: b'\x11\x02~', + 0x27f: b'\x11\x02\x7f', + 0x280: b'\x11\x02\x80', + 0x281: b'\x11\x02\x81', + 0x282: b'\x11\x02\x82', + 0x283: b'\x11\x02\x83', + 0x284: b'\x11\x02\x84', + 0x285: b'\x11\x02\x85', + 0x286: b'\x11\x02\x86', + 0x287: b'\x11\x02\x87', + 0x288: b'\x11\x02\x88', + 0x289: b'\x11\x02\x89', + 0x28a: b'\x11\x02\x8a', + 0x28b: b'\x11\x02\x8b', + 0x28c: b'\x11\x02\x8c', + 0x28d: b'\x11\x02\x8d', + 0x28e: b'\x11\x02\x8e', + 0x28f: b'\x11\x02\x8f', + 0x290: b'\x11\x02\x90', + 0x291: b'\x11\x02\x91', + 0x292: b'\x11\x02\x92', + 0x293: b'\x11\x02\x93', + 0x294: b'\x11\x02\x94', + 0x295: b'\x11\x02\x95', + 0x296: b'\x11\x02\x96', + 0x297: b'\x11\x02\x97', + 0x298: b'\x11\x02\x98', + 0x299: b'\x11\x02\x99', + 0x29a: b'\x11\x02\x9a', + 0x29b: b'\x11\x02\x9b', + 0x29c: b'\x11\x02\x9c', + 0x29d: b'\x11\x02\x9d', + 0x29e: b'\x11\x02\x9e', + 0x29f: b'\x11\x02\x9f', + 0x2a0: b'\x11\x02\xa0', + 0x2a1: b'\x11\x02\xa1', + 0x2a2: b'\x11\x02\xa2', + 0x2a3: b'\x11\x02\xa3', + 0x2a4: b'\x11\x02\xa4', + 0x2a5: b'\x11\x02\xa5', + 0x2a6: b'\x11\x02\xa6', + 0x2a7: b'\x11\x02\xa7', + 0x2a8: b'\x11\x02\xa8', + 0x2a9: b'\x11\x02\xa9', + 0x2aa: b'\x11\x02\xaa', + 0x2ab: b'\x11\x02\xab', + 0x2ac: b'\x11\x02\xac', + 0x2ad: b'\x11\x02\xad', + 0x2ae: b'\x11\x02\xae', + 0x2af: b'\x11\x02\xaf', + 0x2b0: b'\x11\x02\xb0', + 0x2b1: b'\x11\x02\xb1', + 0x2b2: b'\x11\x02\xb2', + 0x2b3: b'\x11\x02\xb3', + 0x2b4: b'\x11\x02\xb4', + 0x2b5: b'\x11\x02\xb5', + 0x2b6: b'\x11\x02\xb6', + 0x2b7: b'\x11\x02\xb7', + 0x2b8: b'\x11\x02\xb8', + 0x2b9: b'\x11\x02\xb9', + 0x2ba: b'\x11\x02\xba', + 0x2bb: b'\x11\x02\xbb', + 0x2bc: b'\x11\x02\xbc', + 0x2bd: b'\x11\x02\xbd', + 0x2be: b'\x11\x02\xbe', + 0x2bf: b'\x11\x02\xbf', + 0x2c0: b'\x11\x02\xc0', + 0x2c1: b'\x11\x02\xc1', + 0x2c2: b'\x11\x02\xc2', + 0x2c3: b'\x11\x02\xc3', + 0x2c4: b'\x11\x02\xc4', + 0x2c5: b'\x11\x02\xc5', + 0x2c6: b'\x11\x02\xc6', + 0x2c7: b'\x11\x02\xc7', + 0x2c8: b'\x11\x02\xc8', + 0x2c9: b'\x11\x02\xc9', + 0x2ca: b'\x11\x02\xca', + 0x2cb: b'\x11\x02\xcb', + 0x2cc: b'\x11\x02\xcc', + 0x2cd: b'\x11\x02\xcd', + 0x2ce: b'\x11\x02\xce', + 0x2cf: b'\x11\x02\xcf', + 0x2d0: b'\x11\x02\xd0', + 0x2d1: b'\x11\x02\xd1', + 0x2d2: b'\x11\x02\xd2', + 0x2d3: b'\x11\x02\xd3', + 0x2d4: b'\x11\x02\xd4', + 0x2d5: b'\x11\x02\xd5', + 0x2d6: b'\x11\x02\xd6', + 0x2d7: b'\x11\x02\xd7', + 0x2d8: b'\x11\x02\xd8', + 0x2d9: b'\x11\x02\xd9', + 0x2da: b'\x11\x02\xda', + 0x2db: b'\x11\x02\xdb', + 0x2dc: b'\x11\x02\xdc', + 0x2dd: b'\x11\x02\xdd', + 0x2de: b'\x11\x02\xde', + 0x2df: b'\x11\x02\xdf', + 0x2e0: b'\x11\x02\xe0', + 0x2e1: b'\x11\x02\xe1', + 0x2e2: b'\x11\x02\xe2', + 0x2e3: b'\x11\x02\xe3', + 0x2e4: b'\x11\x02\xe4', + 0x2e5: b'\x11\x02\xe5', + 0x2e6: b'\x11\x02\xe6', + 0x2e7: b'\x11\x02\xe7', + 0x2e8: b'\x11\x02\xe8', + 0x2e9: b'\x11\x02\xe9', + 0x2ea: b'\x11\x02\xea', + 0x2eb: b'\x11\x02\xeb', + 0x2ec: b'\x11\x02\xec', + 0x2ed: b'\x11\x02\xed', + 0x2ee: b'\x11\x02\xee', + 0x2ef: b'\x11\x02\xef', + 0x2f0: b'\x11\x02\xf0', + 0x2f1: b'\x11\x02\xf1', + 0x2f2: b'\x11\x02\xf2', + 0x2f3: b'\x11\x02\xf3', + 0x2f4: b'\x11\x02\xf4', + 0x2f5: b'\x11\x02\xf5', + 0x2f6: b'\x11\x02\xf6', + 0x2f7: b'\x11\x02\xf7', + 0x2f8: b'\x11\x02\xf8', + 0x2f9: b'\x11\x02\xf9', + 0x2fa: b'\x11\x02\xfa', + 0x2fb: b'\x11\x02\xfb', + 0x2fc: b'\x11\x02\xfc', + 0x2fd: b'\x11\x02\xfd', + 0x2fe: b'\x11\x02\xfe', + 0x2ff: b'\x11\x02\xff', + 0x300: b'\x11\x03\x00', + 0x301: b'\x11\x03\x01', + 0x302: b'\x11\x03\x02', + 0x303: b'\x11\x03\x03', + 0x304: b'\x11\x03\x04', + 0x305: b'\x11\x03\x05', + 0x306: b'\x11\x03\x06', + 0x307: b'\x11\x03\x07', + 0x308: b'\x11\x03\x08', + 0x309: b'\x11\x03\t', + 0x30a: b'\x11\x03\n', + 0x30b: b'\x11\x03\x0b', + 0x30c: b'\x11\x03\x0c', + 0x30d: b'\x11\x03\r', + 0x30e: b'\x11\x03\x0e', + 0x30f: b'\x11\x03\x0f', + 0x310: b'\x11\x03\x10', + 0x311: b'\x11\x03\x11', + 0x312: b'\x11\x03\x12', + 0x313: b'\x11\x03\x13', + 0x314: b'\x11\x03\x14', + 0x315: b'\x11\x03\x15', + 0x316: b'\x11\x03\x16', + 0x317: b'\x11\x03\x17', + 0x318: b'\x11\x03\x18', + 0x319: b'\x11\x03\x19', + 0x31a: b'\x11\x03\x1a', + 0x31b: b'\x11\x03\x1b', + 0x31c: b'\x11\x03\x1c', + 0x31d: b'\x11\x03\x1d', + 0x31e: b'\x11\x03\x1e', + 0x31f: b'\x11\x03\x1f', + 0x320: b'\x11\x03 ', + 0x321: b'\x11\x03!', + 0x322: b'\x11\x03"', + 0x323: b'\x11\x03#', + 0x324: b'\x11\x03$', + 0x325: b'\x11\x03%', + 0x326: b'\x11\x03&', + 0x327: b"\x11\x03'", + 0x328: b'\x11\x03(', + 0x329: b'\x11\x03)', + 0x32a: b'\x11\x03*', + 0x32b: b'\x11\x03+', + 0x32c: b'\x11\x03,', + 0x32d: b'\x11\x03-', + 0x32e: b'\x11\x03.', + 0x32f: b'\x11\x03/', + 0x330: b'\x11\x030', + 0x331: b'\x11\x031', + 0x332: b'\x11\x032', + 0x333: b'\x11\x033', + 0x334: b'\x11\x034', + 0x335: b'\x11\x035', + 0x336: b'\x11\x036', + 0x337: b'\x11\x037', + 0x338: b'\x11\x038', + 0x339: b'\x11\x039', + 0x33a: b'\x11\x03:', + 0x33b: b'\x11\x03;', + 0x33c: b'\x11\x03<', + 0x33d: b'\x11\x03=', + 0x33e: b'\x11\x03>', + 0x33f: b'\x11\x03?', + 0x340: b'\x11\x03@', + 0x341: b'\x11\x03A', + 0x342: b'\x11\x03B', + 0x343: b'\x11\x03C', + 0x344: b'\x11\x03D', + 0x345: b'\x11\x03E', + 0x346: b'\x11\x03F', + 0x347: b'\x11\x03G', + 0x348: b'\x11\x03H', + 0x349: b'\x11\x03I', + 0x34a: b'\x11\x03J', + 0x34b: b'\x11\x03K', + 0x34c: b'\x11\x03L', + 0x34d: b'\x11\x03M', + 0x34e: b'\x11\x03N', + 0x34f: b'\x11\x03O', + 0x350: b'\x11\x03P', + 0x351: b'\x11\x03Q', + 0x352: b'\x11\x03R', + 0x353: b'\x11\x03S', + 0x354: b'\x11\x03T', + 0x355: b'\x11\x03U', + 0x356: b'\x11\x03V', + 0x357: b'\x11\x03W', + 0x358: b'\x11\x03X', + 0x359: b'\x11\x03Y', + 0x35a: b'\x11\x03Z', + 0x35b: b'\x11\x03[', + 0x35c: b'\x11\x03\\', + 0x35d: b'\x11\x03]', + 0x35e: b'\x11\x03^', + 0x35f: b'\x11\x03_', + 0x360: b'\x11\x03`', + 0x361: b'\x11\x03a', + 0x362: b'\x11\x03b', + 0x363: b'\x11\x03c', + 0x364: b'\x11\x03d', + 0x365: b'\x11\x03e', + 0x366: b'\x11\x03f', + 0x367: b'\x11\x03g', + 0x368: b'\x11\x03h', + 0x369: b'\x11\x03i', + 0x36a: b'\x11\x03j', + 0x36b: b'\x11\x03k', + 0x36c: b'\x11\x03l', + 0x36d: b'\x11\x03m', + 0x36e: b'\x11\x03n', + 0x36f: b'\x11\x03o', + 0x370: b'\x11\x03p', + 0x371: b'\x11\x03q', + 0x372: b'\x11\x03r', + 0x373: b'\x11\x03s', + 0x374: b'\x11\x03t', + 0x375: b'\x11\x03u', + 0x376: b'\x11\x03v', + 0x377: b'\x11\x03w', + 0x378: b'\x11\x03x', + 0x379: b'\x11\x03y', + 0x37a: b'\x11\x03z', + 0x37b: b'\x11\x03{', + 0x37c: b'\x11\x03|', + 0x37d: b'\x11\x03}', + 0x37e: b'\x11\x03~', + 0x37f: b'\x11\x03\x7f', + 0x380: b'\x11\x03\x80', + 0x381: b'\x11\x03\x81', + 0x382: b'\x11\x03\x82', + 0x383: b'\x11\x03\x83', + 0x384: b'\x11\x03\x84', + 0x385: b'\x11\x03\x85', + 0x386: b'\x11\x03\x86', + 0x387: b'\x11\x03\x87', + 0x388: b'\x11\x03\x88', + 0x389: b'\x11\x03\x89', + 0x38a: b'\x11\x03\x8a', + 0x38b: b'\x11\x03\x8b', + 0x38c: b'\x11\x03\x8c', + 0x38d: b'\x11\x03\x8d', + 0x38e: b'\x11\x03\x8e', + 0x38f: b'\x11\x03\x8f', + 0x390: b'\x11\x03\x90', + 0x391: b'\x11\x03\x91', + 0x392: b'\x11\x03\x92', + 0x393: b'\x11\x03\x93', + 0x394: b'\x11\x03\x94', + 0x395: b'\x11\x03\x95', + 0x396: b'\x11\x03\x96', + 0x397: b'\x11\x03\x97', + 0x398: b'\x11\x03\x98', + 0x399: b'\x11\x03\x99', + 0x39a: b'\x11\x03\x9a', + 0x39b: b'\x11\x03\x9b', + 0x39c: b'\x11\x03\x9c', + 0x39d: b'\x11\x03\x9d', + 0x39e: b'\x11\x03\x9e', + 0x39f: b'\x11\x03\x9f', + 0x3a0: b'\x11\x03\xa0', + 0x3a1: b'\x11\x03\xa1', + 0x3a2: b'\x11\x03\xa2', + 0x3a3: b'\x11\x03\xa3', + 0x3a4: b'\x11\x03\xa4', + 0x3a5: b'\x11\x03\xa5', + 0x3a6: b'\x11\x03\xa6', + 0x3a7: b'\x11\x03\xa7', + 0x3a8: b'\x11\x03\xa8', + 0x3a9: b'\x11\x03\xa9', + 0x3aa: b'\x11\x03\xaa', + 0x3ab: b'\x11\x03\xab', + 0x3ac: b'\x11\x03\xac', + 0x3ad: b'\x11\x03\xad', + 0x3ae: b'\x11\x03\xae', + 0x3af: b'\x11\x03\xaf', + 0x3b0: b'\x11\x03\xb0', + 0x3b1: b'\x11\x03\xb1', + 0x3b2: b'\x11\x03\xb2', + 0x3b3: b'\x11\x03\xb3', + 0x3b4: b'\x11\x03\xb4', + 0x3b5: b'\x11\x03\xb5', + 0x3b6: b'\x11\x03\xb6', + 0x3b7: b'\x11\x03\xb7', + 0x3b8: b'\x11\x03\xb8', + 0x3b9: b'\x11\x03\xb9', + 0x3ba: b'\x11\x03\xba', + 0x3bb: b'\x11\x03\xbb', + 0x3bc: b'\x11\x03\xbc', + 0x3bd: b'\x11\x03\xbd', + 0x3be: b'\x11\x03\xbe', + 0x3bf: b'\x11\x03\xbf', + 0x3c0: b'\x11\x03\xc0', + 0x3c1: b'\x11\x03\xc1', + 0x3c2: b'\x11\x03\xc2', + 0x3c3: b'\x11\x03\xc3', + 0x3c4: b'\x11\x03\xc4', + 0x3c5: b'\x11\x03\xc5', + 0x3c6: b'\x11\x03\xc6', + 0x3c7: b'\x11\x03\xc7', + 0x3c8: b'\x11\x03\xc8', + 0x3c9: b'\x11\x03\xc9', + 0x3ca: b'\x11\x03\xca', + 0x3cb: b'\x11\x03\xcb', + 0x3cc: b'\x11\x03\xcc', + 0x3cd: b'\x11\x03\xcd', + 0x3ce: b'\x11\x03\xce', + 0x3cf: b'\x11\x03\xcf', + 0x3d0: b'\x11\x03\xd0', + 0x3d1: b'\x11\x03\xd1', + 0x3d2: b'\x11\x03\xd2', + 0x3d3: b'\x11\x03\xd3', + 0x3d4: b'\x11\x03\xd4', + 0x3d5: b'\x11\x03\xd5', + 0x3d6: b'\x11\x03\xd6', + 0x3d7: b'\x11\x03\xd7', + 0x3d8: b'\x11\x03\xd8', + 0x3d9: b'\x11\x03\xd9', + 0x3da: b'\x11\x03\xda', + 0x3db: b'\x11\x03\xdb', + 0x3dc: b'\x11\x03\xdc', + 0x3dd: b'\x11\x03\xdd', + 0x3de: b'\x11\x03\xde', + 0x3df: b'\x11\x03\xdf', + 0x3e0: b'\x11\x03\xe0', + 0x3e1: b'\x11\x03\xe1', + 0x3e2: b'\x11\x03\xe2', + 0x3e3: b'\x11\x03\xe3', + 0x3e4: b'\x11\x03\xe4', + 0x3e5: b'\x11\x03\xe5', + 0x3e6: b'\x11\x03\xe6', + 0x3e7: b'\x11\x03\xe7', + 0x3e8: b'\x11\x03\xe8', + 0x3e9: b'\x11\x03\xe9', + 0x3ea: b'\x11\x03\xea', + 0x3eb: b'\x11\x03\xeb', + 0x3ec: b'\x11\x03\xec', + 0x3ed: b'\x11\x03\xed', + 0x3ee: b'\x11\x03\xee', + 0x3ef: b'\x11\x03\xef', + 0x3f0: b'\x11\x03\xf0', + 0x3f1: b'\x11\x03\xf1', + 0x3f2: b'\x11\x03\xf2', + 0x3f3: b'\x11\x03\xf3', + 0x3f4: b'\x11\x03\xf4', + 0x3f5: b'\x11\x03\xf5', + 0x3f6: b'\x11\x03\xf6', + 0x3f7: b'\x11\x03\xf7', + 0x3f8: b'\x11\x03\xf8', + 0x3f9: b'\x11\x03\xf9', + 0x3fa: b'\x11\x03\xfa', + 0x3fb: b'\x11\x03\xfb', + 0x3fc: b'\x11\x03\xfc', + 0x3fd: b'\x11\x03\xfd', + 0x3fe: b'\x11\x03\xfe', + 0x3ff: b'\x11\x03\xff', + 0x400: b'\x11\x04\x00', + 0x401: b'\x11\x04\x01', + 0x402: b'\x11\x04\x02', + 0x403: b'\x11\x04\x03', + 0x404: b'\x11\x04\x04', + 0x405: b'\x11\x04\x05', + 0x406: b'\x11\x04\x06', + 0x407: b'\x11\x04\x07', + 0x408: b'\x11\x04\x08', + 0x409: b'\x11\x04\t', + 0x40a: b'\x11\x04\n', + 0x40b: b'\x11\x04\x0b', + 0x40c: b'\x11\x04\x0c', + 0x40d: b'\x11\x04\r', + 0x40e: b'\x11\x04\x0e', + 0x40f: b'\x11\x04\x0f', + 0x410: b'\x11\x04\x10', + 0x411: b'\x11\x04\x11', + 0x412: b'\x11\x04\x12', + 0x413: b'\x11\x04\x13', + 0x414: b'\x11\x04\x14', + 0x415: b'\x11\x04\x15', + 0x416: b'\x11\x04\x16', + 0x417: b'\x11\x04\x17', + 0x418: b'\x11\x04\x18', + 0x419: b'\x11\x04\x19', + 0x41a: b'\x11\x04\x1a', + 0x41b: b'\x11\x04\x1b', + 0x41c: b'\x11\x04\x1c', + 0x41d: b'\x11\x04\x1d', + 0x41e: b'\x11\x04\x1e', + 0x41f: b'\x11\x04\x1f', + 0x420: b'\x11\x04 ', + 0x421: b'\x11\x04!', + 0x422: b'\x11\x04"', + 0x423: b'\x11\x04#', + 0x424: b'\x11\x04$', + 0x425: b'\x11\x04%', + 0x426: b'\x11\x04&', + 0x427: b"\x11\x04'", + 0x428: b'\x11\x04(', + 0x429: b'\x11\x04)', + 0x42a: b'\x11\x04*', + 0x42b: b'\x11\x04+', + 0x42c: b'\x11\x04,', + 0x42d: b'\x11\x04-', + 0x42e: b'\x11\x04.', + 0x42f: b'\x11\x04/', + 0x430: b'\x11\x040', + 0x431: b'\x11\x041', + 0x432: b'\x11\x042', + 0x433: b'\x11\x043', + 0x434: b'\x11\x044', + 0x435: b'\x11\x045', + 0x436: b'\x11\x046', + 0x437: b'\x11\x047', + 0x438: b'\x11\x048', + 0x439: b'\x11\x049', + 0x43a: b'\x11\x04:', + 0x43b: b'\x11\x04;', + 0x43c: b'\x11\x04<', + 0x43d: b'\x11\x04=', + 0x43e: b'\x11\x04>', + 0x43f: b'\x11\x04?', + 0x440: b'\x11\x04@', + 0x441: b'\x11\x04A', + 0x442: b'\x11\x04B', + 0x443: b'\x11\x04C', + 0x444: b'\x11\x04D', + 0x445: b'\x11\x04E', + 0x446: b'\x11\x04F', + 0x447: b'\x11\x04G', + 0x448: b'\x11\x04H', + 0x449: b'\x11\x04I', + 0x44a: b'\x11\x04J', + 0x44b: b'\x11\x04K', + 0x44c: b'\x11\x04L', + 0x44d: b'\x11\x04M', + 0x44e: b'\x11\x04N', + 0x44f: b'\x11\x04O', + 0x450: b'\x11\x04P', + 0x451: b'\x11\x04Q', + 0x452: b'\x11\x04R', + 0x453: b'\x11\x04S', + 0x454: b'\x11\x04T', + 0x455: b'\x11\x04U', + 0x456: b'\x11\x04V', + 0x457: b'\x11\x04W', + 0x458: b'\x11\x04X', + 0x459: b'\x11\x04Y', + 0x45a: b'\x11\x04Z', + 0x45b: b'\x11\x04[', + 0x45c: b'\x11\x04\\', + 0x45d: b'\x11\x04]', + 0x45e: b'\x11\x04^', + 0x45f: b'\x11\x04_', + 0x460: b'\x11\x04`', + 0x461: b'\x11\x04a', + 0x462: b'\x11\x04b', + 0x463: b'\x11\x04c', + 0x464: b'\x11\x04d', + 0x465: b'\x11\x04e', + 0x466: b'\x11\x04f', + 0x467: b'\x11\x04g', + 0x468: b'\x11\x04h', + 0x469: b'\x11\x04i', + 0x46a: b'\x11\x04j', + 0x46b: b'\x11\x04k', + 0x46c: b'\x11\x04l', + 0x46d: b'\x11\x04m', + 0x46e: b'\x11\x04n', + 0x46f: b'\x11\x04o', + 0x470: b'\x11\x04p', + 0x471: b'\x11\x04q', + 0x472: b'\x11\x04r', + 0x473: b'\x11\x04s', + 0x474: b'\x11\x04t', + 0x475: b'\x11\x04u', + 0x476: b'\x11\x04v', + 0x477: b'\x11\x04w', + 0x478: b'\x11\x04x', + 0x479: b'\x11\x04y', + 0x47a: b'\x11\x04z', + 0x47b: b'\x11\x04{', + 0x47c: b'\x11\x04|', + 0x47d: b'\x11\x04}', + 0x47e: b'\x11\x04~', + 0x47f: b'\x11\x04\x7f', + 0x480: b'\x11\x04\x80', + 0x481: b'\x11\x04\x81', + 0x482: b'\x11\x04\x82', + 0x483: b'\x11\x04\x83', + 0x484: b'\x11\x04\x84', + 0x485: b'\x11\x04\x85', + 0x486: b'\x11\x04\x86', + 0x487: b'\x11\x04\x87', + 0x488: b'\x11\x04\x88', + 0x489: b'\x11\x04\x89', + 0x48a: b'\x11\x04\x8a', + 0x48b: b'\x11\x04\x8b', + 0x48c: b'\x11\x04\x8c', + 0x48d: b'\x11\x04\x8d', + 0x48e: b'\x11\x04\x8e', + 0x48f: b'\x11\x04\x8f', + 0x490: b'\x11\x04\x90', + 0x491: b'\x11\x04\x91', + 0x492: b'\x11\x04\x92', + 0x493: b'\x11\x04\x93', + 0x494: b'\x11\x04\x94', + 0x495: b'\x11\x04\x95', + 0x496: b'\x11\x04\x96', + 0x497: b'\x11\x04\x97', + 0x498: b'\x11\x04\x98', + 0x499: b'\x11\x04\x99', + 0x49a: b'\x11\x04\x9a', + 0x49b: b'\x11\x04\x9b', + 0x49c: b'\x11\x04\x9c', + 0x49d: b'\x11\x04\x9d', + 0x49e: b'\x11\x04\x9e', + 0x49f: b'\x11\x04\x9f', + 0x4a0: b'\x11\x04\xa0', + 0x4a1: b'\x11\x04\xa1', + 0x4a2: b'\x11\x04\xa2', + 0x4a3: b'\x11\x04\xa3', + 0x4a4: b'\x11\x04\xa4', + 0x4a5: b'\x11\x04\xa5', + 0x4a6: b'\x11\x04\xa6', + 0x4a7: b'\x11\x04\xa7', + 0x4a8: b'\x11\x04\xa8', + 0x4a9: b'\x11\x04\xa9', + 0x4aa: b'\x11\x04\xaa', + 0x4ab: b'\x11\x04\xab', + 0x4ac: b'\x11\x04\xac', + 0x4ad: b'\x11\x04\xad', + 0x4ae: b'\x11\x04\xae', + 0x4af: b'\x11\x04\xaf', + 0x4b0: b'\x11\x04\xb0', + 0x4b1: b'\x11\x04\xb1', + 0x4b2: b'\x11\x04\xb2', + 0x4b3: b'\x11\x04\xb3', + 0x4b4: b'\x11\x04\xb4', + 0x4b5: b'\x11\x04\xb5', + 0x4b6: b'\x11\x04\xb6', + 0x4b7: b'\x11\x04\xb7', + 0x4b8: b'\x11\x04\xb8', + 0x4b9: b'\x11\x04\xb9', + 0x4ba: b'\x11\x04\xba', + 0x4bb: b'\x11\x04\xbb', + 0x4bc: b'\x11\x04\xbc', + 0x4bd: b'\x11\x04\xbd', + 0x4be: b'\x11\x04\xbe', + 0x4bf: b'\x11\x04\xbf', + 0x4c0: b'\x11\x04\xc0', + 0x4c1: b'\x11\x04\xc1', + 0x4c2: b'\x11\x04\xc2', + 0x4c3: b'\x11\x04\xc3', + 0x4c4: b'\x11\x04\xc4', + 0x4c5: b'\x11\x04\xc5', + 0x4c6: b'\x11\x04\xc6', + 0x4c7: b'\x11\x04\xc7', + 0x4c8: b'\x11\x04\xc8', + 0x4c9: b'\x11\x04\xc9', + 0x4ca: b'\x11\x04\xca', + 0x4cb: b'\x11\x04\xcb', + 0x4cc: b'\x11\x04\xcc', + 0x4cd: b'\x11\x04\xcd', + 0x4ce: b'\x11\x04\xce', + 0x4cf: b'\x11\x04\xcf', + 0x4d0: b'\x11\x04\xd0', + 0x4d1: b'\x11\x04\xd1', + 0x4d2: b'\x11\x04\xd2', + 0x4d3: b'\x11\x04\xd3', + 0x4d4: b'\x11\x04\xd4', + 0x4d5: b'\x11\x04\xd5', + 0x4d6: b'\x11\x04\xd6', + 0x4d7: b'\x11\x04\xd7', + 0x4d8: b'\x11\x04\xd8', + 0x4d9: b'\x11\x04\xd9', + 0x4da: b'\x11\x04\xda', + 0x4db: b'\x11\x04\xdb', + 0x4dc: b'\x11\x04\xdc', + 0x4dd: b'\x11\x04\xdd', + 0x4de: b'\x11\x04\xde', + 0x4df: b'\x11\x04\xdf', + 0x4e0: b'\x11\x04\xe0', + 0x4e1: b'\x11\x04\xe1', + 0x4e2: b'\x11\x04\xe2', + 0x4e3: b'\x11\x04\xe3', + 0x4e4: b'\x11\x04\xe4', + 0x4e5: b'\x11\x04\xe5', + 0x4e6: b'\x11\x04\xe6', + 0x4e7: b'\x11\x04\xe7', + 0x4e8: b'\x11\x04\xe8', + 0x4e9: b'\x11\x04\xe9', + 0x4ea: b'\x11\x04\xea', + 0x4eb: b'\x11\x04\xeb', + 0x4ec: b'\x11\x04\xec', + 0x4ed: b'\x11\x04\xed', + 0x4ee: b'\x11\x04\xee', + 0x4ef: b'\x11\x04\xef', + 0x4f0: b'\x11\x04\xf0', + 0x4f1: b'\x11\x04\xf1', + 0x4f2: b'\x11\x04\xf2', + 0x4f3: b'\x11\x04\xf3', + 0x4f4: b'\x11\x04\xf4', + 0x4f5: b'\x11\x04\xf5', + 0x4f6: b'\x11\x04\xf6', + 0x4f7: b'\x11\x04\xf7', + 0x4f8: b'\x11\x04\xf8', + 0x4f9: b'\x11\x04\xf9', + 0x4fa: b'\x11\x04\xfa', + 0x4fb: b'\x11\x04\xfb', + 0x4fc: b'\x11\x04\xfc', + 0x4fd: b'\x11\x04\xfd', + 0x4fe: b'\x11\x04\xfe', + 0x4ff: b'\x11\x04\xff', + 0x500: b'\x11\x05\x00', + 0x501: b'\x11\x05\x01', + 0x502: b'\x11\x05\x02', + 0x503: b'\x11\x05\x03', + 0x504: b'\x11\x05\x04', + 0x505: b'\x11\x05\x05', + 0x506: b'\x11\x05\x06', + 0x507: b'\x11\x05\x07', + 0x508: b'\x11\x05\x08', + 0x509: b'\x11\x05\t', + 0x50a: b'\x11\x05\n', + 0x50b: b'\x11\x05\x0b', + 0x50c: b'\x11\x05\x0c', + 0x50d: b'\x11\x05\r', + 0x50e: b'\x11\x05\x0e', + 0x50f: b'\x11\x05\x0f', + 0x510: b'\x11\x05\x10', + 0x511: b'\x11\x05\x11', + 0x512: b'\x11\x05\x12', + 0x513: b'\x11\x05\x13', + 0x514: b'\x11\x05\x14', + 0x515: b'\x11\x05\x15', + 0x516: b'\x11\x05\x16', + 0x517: b'\x11\x05\x17', + 0x518: b'\x11\x05\x18', + 0x519: b'\x11\x05\x19', + 0x51a: b'\x11\x05\x1a', + 0x51b: b'\x11\x05\x1b', + 0x51c: b'\x11\x05\x1c', + 0x51d: b'\x11\x05\x1d', + 0x51e: b'\x11\x05\x1e', + 0x51f: b'\x11\x05\x1f', + 0x520: b'\x11\x05 ', + 0x521: b'\x11\x05!', + 0x522: b'\x11\x05"', + 0x523: b'\x11\x05#', + 0x524: b'\x11\x05$', + 0x525: b'\x11\x05%', + 0x526: b'\x11\x05&', + 0x527: b"\x11\x05'", + 0x528: b'\x11\x05(', + 0x529: b'\x11\x05)', + 0x52a: b'\x11\x05*', + 0x52b: b'\x11\x05+', + 0x52c: b'\x11\x05,', + 0x52d: b'\x11\x05-', + 0x52e: b'\x11\x05.', + 0x52f: b'\x11\x05/', + 0x530: b'\x11\x050', + 0x531: b'\x11\x051', + 0x532: b'\x11\x052', + 0x533: b'\x11\x053', + 0x534: b'\x11\x054', + 0x535: b'\x11\x055', + 0x536: b'\x11\x056', + 0x537: b'\x11\x057', + 0x538: b'\x11\x058', + 0x539: b'\x11\x059', + 0x53a: b'\x11\x05:', + 0x53b: b'\x11\x05;', + 0x53c: b'\x11\x05<', + 0x53d: b'\x11\x05=', + 0x53e: b'\x11\x05>', + 0x53f: b'\x11\x05?', + 0x540: b'\x11\x05@', + 0x541: b'\x11\x05A', + 0x542: b'\x11\x05B', + 0x543: b'\x11\x05C', + 0x544: b'\x11\x05D', + 0x545: b'\x11\x05E', + 0x546: b'\x11\x05F', + 0x547: b'\x11\x05G', + 0x548: b'\x11\x05H', + 0x549: b'\x11\x05I', + 0x54a: b'\x11\x05J', + 0x54b: b'\x11\x05K', + 0x54c: b'\x11\x05L', + 0x54d: b'\x11\x05M', + 0x54e: b'\x11\x05N', + 0x54f: b'\x11\x05O', + 0x550: b'\x11\x05P', + 0x551: b'\x11\x05Q', + 0x552: b'\x11\x05R', + 0x553: b'\x11\x05S', + 0x554: b'\x11\x05T', + 0x555: b'\x11\x05U', + 0x556: b'\x11\x05V', + 0x557: b'\x11\x05W', + 0x558: b'\x11\x05X', + 0x559: b'\x11\x05Y', + 0x55a: b'\x11\x05Z', + 0x55b: b'\x11\x05[', + 0x55c: b'\x11\x05\\', + 0x55d: b'\x11\x05]', + 0x55e: b'\x11\x05^', + 0x55f: b'\x11\x05_', + 0x560: b'\x11\x05`', + 0x561: b'\x11\x05a', + 0x562: b'\x11\x05b', + 0x563: b'\x11\x05c', + 0x564: b'\x11\x05d', + 0x565: b'\x11\x05e', + 0x566: b'\x11\x05f', + 0x567: b'\x11\x05g', + 0x568: b'\x11\x05h', + 0x569: b'\x11\x05i', + 0x56a: b'\x11\x05j', + 0x56b: b'\x11\x05k', + 0x56c: b'\x11\x05l', + 0x56d: b'\x11\x05m', + 0x56e: b'\x11\x05n', + 0x56f: b'\x11\x05o', + 0x570: b'\x11\x05p', + 0x571: b'\x11\x05q', + 0x572: b'\x11\x05r', + 0x573: b'\x11\x05s', + 0x574: b'\x11\x05t', + 0x575: b'\x11\x05u', + 0x576: b'\x11\x05v', + 0x577: b'\x11\x05w', + 0x578: b'\x11\x05x', + 0x579: b'\x11\x05y', + 0x57a: b'\x11\x05z', + 0x57b: b'\x11\x05{', + 0x57c: b'\x11\x05|', + 0x57d: b'\x11\x05}', + 0x57e: b'\x11\x05~', + 0x57f: b'\x11\x05\x7f', + 0x580: b'\x11\x05\x80', + 0x581: b'\x11\x05\x81', + 0x582: b'\x11\x05\x82', + 0x583: b'\x11\x05\x83', + 0x584: b'\x11\x05\x84', + 0x585: b'\x11\x05\x85', + 0x586: b'\x11\x05\x86', + 0x587: b'\x11\x05\x87', + 0x588: b'\x11\x05\x88', + 0x589: b'\x11\x05\x89', + 0x58a: b'\x11\x05\x8a', + 0x58b: b'\x11\x05\x8b', + 0x58c: b'\x11\x05\x8c', + 0x58d: b'\x11\x05\x8d', + 0x58e: b'\x11\x05\x8e', + 0x58f: b'\x11\x05\x8f', + 0x590: b'\x11\x05\x90', + 0x591: b'\x11\x05\x91', + 0x592: b'\x11\x05\x92', + 0x593: b'\x11\x05\x93', + 0x594: b'\x11\x05\x94', + 0x595: b'\x11\x05\x95', + 0x596: b'\x11\x05\x96', + 0x597: b'\x11\x05\x97', + 0x598: b'\x11\x05\x98', + 0x599: b'\x11\x05\x99', + 0x59a: b'\x11\x05\x9a', + 0x59b: b'\x11\x05\x9b', + 0x59c: b'\x11\x05\x9c', + 0x59d: b'\x11\x05\x9d', + 0x59e: b'\x11\x05\x9e', + 0x59f: b'\x11\x05\x9f', + 0x5a0: b'\x11\x05\xa0', + 0x5a1: b'\x11\x05\xa1', + 0x5a2: b'\x11\x05\xa2', + 0x5a3: b'\x11\x05\xa3', + 0x5a4: b'\x11\x05\xa4', + 0x5a5: b'\x11\x05\xa5', + 0x5a6: b'\x11\x05\xa6', + 0x5a7: b'\x11\x05\xa7', + 0x5a8: b'\x11\x05\xa8', + 0x5a9: b'\x11\x05\xa9', + 0x5aa: b'\x11\x05\xaa', + 0x5ab: b'\x11\x05\xab', + 0x5ac: b'\x11\x05\xac', + 0x5ad: b'\x11\x05\xad', + 0x5ae: b'\x11\x05\xae', + 0x5af: b'\x11\x05\xaf', + 0x5b0: b'\x11\x05\xb0', + 0x5b1: b'\x11\x05\xb1', + 0x5b2: b'\x11\x05\xb2', + 0x5b3: b'\x11\x05\xb3', + 0x5b4: b'\x11\x05\xb4', + 0x5b5: b'\x11\x05\xb5', + 0x5b6: b'\x11\x05\xb6', + 0x5b7: b'\x11\x05\xb7', + 0x5b8: b'\x11\x05\xb8', + 0x5b9: b'\x11\x05\xb9', + 0x5ba: b'\x11\x05\xba', + 0x5bb: b'\x11\x05\xbb', + 0x5bc: b'\x11\x05\xbc', + 0x5bd: b'\x11\x05\xbd', + 0x5be: b'\x11\x05\xbe', + 0x5bf: b'\x11\x05\xbf', + 0x5c0: b'\x11\x05\xc0', + 0x5c1: b'\x11\x05\xc1', + 0x5c2: b'\x11\x05\xc2', + 0x5c3: b'\x11\x05\xc3', + 0x5c4: b'\x11\x05\xc4', + 0x5c5: b'\x11\x05\xc5', + 0x5c6: b'\x11\x05\xc6', + 0x5c7: b'\x11\x05\xc7', + 0x5c8: b'\x11\x05\xc8', + 0x5c9: b'\x11\x05\xc9', + 0x5ca: b'\x11\x05\xca', + 0x5cb: b'\x11\x05\xcb', + 0x5cc: b'\x11\x05\xcc', + 0x5cd: b'\x11\x05\xcd', + 0x5ce: b'\x11\x05\xce', + 0x5cf: b'\x11\x05\xcf', + 0x5d0: b'\x11\x05\xd0', + 0x5d1: b'\x11\x05\xd1', + 0x5d2: b'\x11\x05\xd2', + 0x5d3: b'\x11\x05\xd3', + 0x5d4: b'\x11\x05\xd4', + 0x5d5: b'\x11\x05\xd5', + 0x5d6: b'\x11\x05\xd6', + 0x5d7: b'\x11\x05\xd7', + 0x5d8: b'\x11\x05\xd8', + 0x5d9: b'\x11\x05\xd9', + 0x5da: b'\x11\x05\xda', + 0x5db: b'\x11\x05\xdb', + 0x5dc: b'\x11\x05\xdc', + 0x5dd: b'\x11\x05\xdd', + 0x5de: b'\x11\x05\xde', + 0x5df: b'\x11\x05\xdf', + 0x5e0: b'\x11\x05\xe0', + 0x5e1: b'\x11\x05\xe1', + 0x5e2: b'\x11\x05\xe2', + 0x5e3: b'\x11\x05\xe3', + 0x5e4: b'\x11\x05\xe4', + 0x5e5: b'\x11\x05\xe5', + 0x5e6: b'\x11\x05\xe6', + 0x5e7: b'\x11\x05\xe7', + 0x5e8: b'\x11\x05\xe8', + 0x5e9: b'\x11\x05\xe9', + 0x5ea: b'\x11\x05\xea', + 0x5eb: b'\x11\x05\xeb', + 0x5ec: b'\x11\x05\xec', + 0x5ed: b'\x11\x05\xed', + 0x5ee: b'\x11\x05\xee', + 0x5ef: b'\x11\x05\xef', + 0x5f0: b'\x11\x05\xf0', + 0x5f1: b'\x11\x05\xf1', + 0x5f2: b'\x11\x05\xf2', + 0x5f3: b'\x11\x05\xf3', + 0x5f4: b'\x11\x05\xf4', + 0x5f5: b'\x11\x05\xf5', + 0x5f6: b'\x11\x05\xf6', + 0x5f7: b'\x11\x05\xf7', + 0x5f8: b'\x11\x05\xf8', + 0x5f9: b'\x11\x05\xf9', + 0x5fa: b'\x11\x05\xfa', + 0x5fb: b'\x11\x05\xfb', + 0x5fc: b'\x11\x05\xfc', + 0x5fd: b'\x11\x05\xfd', + 0x5fe: b'\x11\x05\xfe', + 0x5ff: b'\x11\x05\xff', + 0x600: b'\x11\x06\x00', + 0x601: b'\x11\x06\x01', + 0x602: b'\x11\x06\x02', + 0x603: b'\x11\x06\x03', + 0x604: b'\x11\x06\x04', + 0x605: b'\x11\x06\x05', + 0x606: b'\x11\x06\x06', + 0x607: b'\x11\x06\x07', + 0x608: b'\x11\x06\x08', + 0x609: b'\x11\x06\t', + 0x60a: b'\x11\x06\n', + 0x60b: b'\x11\x06\x0b', + 0x60c: b'\x11\x06\x0c', + 0x60d: b'\x11\x06\r', + 0x60e: b'\x11\x06\x0e', + 0x60f: b'\x11\x06\x0f', + 0x610: b'\x11\x06\x10', + 0x611: b'\x11\x06\x11', + 0x612: b'\x11\x06\x12', + 0x613: b'\x11\x06\x13', + 0x614: b'\x11\x06\x14', + 0x615: b'\x11\x06\x15', + 0x616: b'\x11\x06\x16', + 0x617: b'\x11\x06\x17', + 0x618: b'\x11\x06\x18', + 0x619: b'\x11\x06\x19', + 0x61a: b'\x11\x06\x1a', + 0x61b: b'\x11\x06\x1b', + 0x61c: b'\x11\x06\x1c', + 0x61d: b'\x11\x06\x1d', + 0x61e: b'\x11\x06\x1e', + 0x61f: b'\x11\x06\x1f', + 0x620: b'\x11\x06 ', + 0x621: b'\x11\x06!', + 0x622: b'\x11\x06"', + 0x623: b'\x11\x06#', + 0x624: b'\x11\x06$', + 0x625: b'\x11\x06%', + 0x626: b'\x11\x06&', + 0x627: b"\x11\x06'", + 0x628: b'\x11\x06(', + 0x629: b'\x11\x06)', + 0x62a: b'\x11\x06*', + 0x62b: b'\x11\x06+', + 0x62c: b'\x11\x06,', + 0x62d: b'\x11\x06-', + 0x62e: b'\x11\x06.', + 0x62f: b'\x11\x06/', + 0x630: b'\x11\x060', + 0x631: b'\x11\x061', + 0x632: b'\x11\x062', + 0x633: b'\x11\x063', + 0x634: b'\x11\x064', + 0x635: b'\x11\x065', + 0x636: b'\x11\x066', + 0x637: b'\x11\x067', + 0x638: b'\x11\x068', + 0x639: b'\x11\x069', + 0x63a: b'\x11\x06:', + 0x63b: b'\x11\x06;', + 0x63c: b'\x11\x06<', + 0x63d: b'\x11\x06=', + 0x63e: b'\x11\x06>', + 0x63f: b'\x11\x06?', + 0x640: b'\x11\x06@', + 0x641: b'\x11\x06A', + 0x642: b'\x11\x06B', + 0x643: b'\x11\x06C', + 0x644: b'\x11\x06D', + 0x645: b'\x11\x06E', + 0x646: b'\x11\x06F', + 0x647: b'\x11\x06G', + 0x648: b'\x11\x06H', + 0x649: b'\x11\x06I', + 0x64a: b'\x11\x06J', + 0x64b: b'\x11\x06K', + 0x64c: b'\x11\x06L', + 0x64d: b'\x11\x06M', + 0x64e: b'\x11\x06N', + 0x64f: b'\x11\x06O', + 0x650: b'\x11\x06P', + 0x651: b'\x11\x06Q', + 0x652: b'\x11\x06R', + 0x653: b'\x11\x06S', + 0x654: b'\x11\x06T', + 0x655: b'\x11\x06U', + 0x656: b'\x11\x06V', + 0x657: b'\x11\x06W', + 0x658: b'\x11\x06X', + 0x659: b'\x11\x06Y', + 0x65a: b'\x11\x06Z', + 0x65b: b'\x11\x06[', + 0x65c: b'\x11\x06\\', + 0x65d: b'\x11\x06]', + 0x65e: b'\x11\x06^', + 0x65f: b'\x11\x06_', + 0x660: b'\x11\x06`', + 0x661: b'\x11\x06a', + 0x662: b'\x11\x06b', + 0x663: b'\x11\x06c', + 0x664: b'\x11\x06d', + 0x665: b'\x11\x06e', + 0x666: b'\x11\x06f', + 0x667: b'\x11\x06g', + 0x668: b'\x11\x06h', + 0x669: b'\x11\x06i', + 0x66a: b'\x11\x06j', + 0x66b: b'\x11\x06k', + 0x66c: b'\x11\x06l', + 0x66d: b'\x11\x06m', + 0x66e: b'\x11\x06n', + 0x66f: b'\x11\x06o', + 0x670: b'\x11\x06p', + 0x671: b'\x11\x06q', + 0x672: b'\x11\x06r', + 0x673: b'\x11\x06s', + 0x674: b'\x11\x06t', + 0x675: b'\x11\x06u', + 0x676: b'\x11\x06v', + 0x677: b'\x11\x06w', + 0x678: b'\x11\x06x', + 0x679: b'\x11\x06y', + 0x67a: b'\x11\x06z', + 0x67b: b'\x11\x06{', + 0x67c: b'\x11\x06|', + 0x67d: b'\x11\x06}', + 0x67e: b'\x11\x06~', + 0x67f: b'\x11\x06\x7f', + 0x680: b'\x11\x06\x80', + 0x681: b'\x11\x06\x81', + 0x682: b'\x11\x06\x82', + 0x683: b'\x11\x06\x83', + 0x684: b'\x11\x06\x84', + 0x685: b'\x11\x06\x85', + 0x686: b'\x11\x06\x86', + 0x687: b'\x11\x06\x87', + 0x688: b'\x11\x06\x88', + 0x689: b'\x11\x06\x89', + 0x68a: b'\x11\x06\x8a', + 0x68b: b'\x11\x06\x8b', + 0x68c: b'\x11\x06\x8c', + 0x68d: b'\x11\x06\x8d', + 0x68e: b'\x11\x06\x8e', + 0x68f: b'\x11\x06\x8f', + 0x690: b'\x11\x06\x90', + 0x691: b'\x11\x06\x91', + 0x692: b'\x11\x06\x92', + 0x693: b'\x11\x06\x93', + 0x694: b'\x11\x06\x94', + 0x695: b'\x11\x06\x95', + 0x696: b'\x11\x06\x96', + 0x697: b'\x11\x06\x97', + 0x698: b'\x11\x06\x98', + 0x699: b'\x11\x06\x99', + 0x69a: b'\x11\x06\x9a', + 0x69b: b'\x11\x06\x9b', + 0x69c: b'\x11\x06\x9c', + 0x69d: b'\x11\x06\x9d', + 0x69e: b'\x11\x06\x9e', + 0x69f: b'\x11\x06\x9f', + 0x6a0: b'\x11\x06\xa0', + 0x6a1: b'\x11\x06\xa1', + 0x6a2: b'\x11\x06\xa2', + 0x6a3: b'\x11\x06\xa3', + 0x6a4: b'\x11\x06\xa4', + 0x6a5: b'\x11\x06\xa5', + 0x6a6: b'\x11\x06\xa6', + 0x6a7: b'\x11\x06\xa7', + 0x6a8: b'\x11\x06\xa8', + 0x6a9: b'\x11\x06\xa9', + 0x6aa: b'\x11\x06\xaa', + 0x6ab: b'\x11\x06\xab', + 0x6ac: b'\x11\x06\xac', + 0x6ad: b'\x11\x06\xad', + 0x6ae: b'\x11\x06\xae', + 0x6af: b'\x11\x06\xaf', + 0x6b0: b'\x11\x06\xb0', + 0x6b1: b'\x11\x06\xb1', + 0x6b2: b'\x11\x06\xb2', + 0x6b3: b'\x11\x06\xb3', + 0x6b4: b'\x11\x06\xb4', + 0x6b5: b'\x11\x06\xb5', + 0x6b6: b'\x11\x06\xb6', + 0x6b7: b'\x11\x06\xb7', + 0x6b8: b'\x11\x06\xb8', + 0x6b9: b'\x11\x06\xb9', + 0x6ba: b'\x11\x06\xba', + 0x6bb: b'\x11\x06\xbb', + 0x6bc: b'\x11\x06\xbc', + 0x6bd: b'\x11\x06\xbd', + 0x6be: b'\x11\x06\xbe', + 0x6bf: b'\x11\x06\xbf', + 0x6c0: b'\x11\x06\xc0', + 0x6c1: b'\x11\x06\xc1', + 0x6c2: b'\x11\x06\xc2', + 0x6c3: b'\x11\x06\xc3', + 0x6c4: b'\x11\x06\xc4', + 0x6c5: b'\x11\x06\xc5', + 0x6c6: b'\x11\x06\xc6', + 0x6c7: b'\x11\x06\xc7', + 0x6c8: b'\x11\x06\xc8', + 0x6c9: b'\x11\x06\xc9', + 0x6ca: b'\x11\x06\xca', + 0x6cb: b'\x11\x06\xcb', + 0x6cc: b'\x11\x06\xcc', + 0x6cd: b'\x11\x06\xcd', + 0x6ce: b'\x11\x06\xce', + 0x6cf: b'\x11\x06\xcf', + 0x6d0: b'\x11\x06\xd0', + 0x6d1: b'\x11\x06\xd1', + 0x6d2: b'\x11\x06\xd2', + 0x6d3: b'\x11\x06\xd3', + 0x6d4: b'\x11\x06\xd4', + 0x6d5: b'\x11\x06\xd5', + 0x6d6: b'\x11\x06\xd6', + 0x6d7: b'\x11\x06\xd7', + 0x6d8: b'\x11\x06\xd8', + 0x6d9: b'\x11\x06\xd9', + 0x6da: b'\x11\x06\xda', + 0x6db: b'\x11\x06\xdb', + 0x6dc: b'\x11\x06\xdc', + 0x6dd: b'\x11\x06\xdd', + 0x6de: b'\x11\x06\xde', + 0x6df: b'\x11\x06\xdf', + 0x6e0: b'\x11\x06\xe0', + 0x6e1: b'\x11\x06\xe1', + 0x6e2: b'\x11\x06\xe2', + 0x6e3: b'\x11\x06\xe3', + 0x6e4: b'\x11\x06\xe4', + 0x6e5: b'\x11\x06\xe5', + 0x6e6: b'\x11\x06\xe6', + 0x6e7: b'\x11\x06\xe7', + 0x6e8: b'\x11\x06\xe8', + 0x6e9: b'\x11\x06\xe9', + 0x6ea: b'\x11\x06\xea', + 0x6eb: b'\x11\x06\xeb', + 0x6ec: b'\x11\x06\xec', + 0x6ed: b'\x11\x06\xed', + 0x6ee: b'\x11\x06\xee', + 0x6ef: b'\x11\x06\xef', + 0x6f0: b'\x11\x06\xf0', + 0x6f1: b'\x11\x06\xf1', + 0x6f2: b'\x11\x06\xf2', + 0x6f3: b'\x11\x06\xf3', + 0x6f4: b'\x11\x06\xf4', + 0x6f5: b'\x11\x06\xf5', + 0x6f6: b'\x11\x06\xf6', + 0x6f7: b'\x11\x06\xf7', + 0x6f8: b'\x11\x06\xf8', + 0x6f9: b'\x11\x06\xf9', + 0x6fa: b'\x11\x06\xfa', + 0x6fb: b'\x11\x06\xfb', + 0x6fc: b'\x11\x06\xfc', + 0x6fd: b'\x11\x06\xfd', + 0x6fe: b'\x11\x06\xfe', + 0x6ff: b'\x11\x06\xff', + 0x700: b'\x11\x07\x00', + 0x701: b'\x11\x07\x01', + 0x702: b'\x11\x07\x02', + 0x703: b'\x11\x07\x03', + 0x704: b'\x11\x07\x04', + 0x705: b'\x11\x07\x05', + 0x706: b'\x11\x07\x06', + 0x707: b'\x11\x07\x07', + 0x708: b'\x11\x07\x08', + 0x709: b'\x11\x07\t', + 0x70a: b'\x11\x07\n', + 0x70b: b'\x11\x07\x0b', + 0x70c: b'\x11\x07\x0c', + 0x70d: b'\x11\x07\r', + 0x70e: b'\x11\x07\x0e', + 0x70f: b'\x11\x07\x0f', + 0x710: b'\x11\x07\x10', + 0x711: b'\x11\x07\x11', + 0x712: b'\x11\x07\x12', + 0x713: b'\x11\x07\x13', + 0x714: b'\x11\x07\x14', + 0x715: b'\x11\x07\x15', + 0x716: b'\x11\x07\x16', + 0x717: b'\x11\x07\x17', + 0x718: b'\x11\x07\x18', + 0x719: b'\x11\x07\x19', + 0x71a: b'\x11\x07\x1a', + 0x71b: b'\x11\x07\x1b', + 0x71c: b'\x11\x07\x1c', + 0x71d: b'\x11\x07\x1d', + 0x71e: b'\x11\x07\x1e', + 0x71f: b'\x11\x07\x1f', + 0x720: b'\x11\x07 ', + 0x721: b'\x11\x07!', + 0x722: b'\x11\x07"', + 0x723: b'\x11\x07#', + 0x724: b'\x11\x07$', + 0x725: b'\x11\x07%', + 0x726: b'\x11\x07&', + 0x727: b"\x11\x07'", + 0x728: b'\x11\x07(', + 0x729: b'\x11\x07)', + 0x72a: b'\x11\x07*', + 0x72b: b'\x11\x07+', + 0x72c: b'\x11\x07,', + 0x72d: b'\x11\x07-', + 0x72e: b'\x11\x07.', + 0x72f: b'\x11\x07/', + 0x730: b'\x11\x070', + 0x731: b'\x11\x071', + 0x732: b'\x11\x072', + 0x733: b'\x11\x073', + 0x734: b'\x11\x074', + 0x735: b'\x11\x075', + 0x736: b'\x11\x076', + 0x737: b'\x11\x077', + 0x738: b'\x11\x078', + 0x739: b'\x11\x079', + 0x73a: b'\x11\x07:', + 0x73b: b'\x11\x07;', + 0x73c: b'\x11\x07<', + 0x73d: b'\x11\x07=', + 0x73e: b'\x11\x07>', + 0x73f: b'\x11\x07?', + 0x740: b'\x11\x07@', + 0x741: b'\x11\x07A', + 0x742: b'\x11\x07B', + 0x743: b'\x11\x07C', + 0x744: b'\x11\x07D', + 0x745: b'\x11\x07E', + 0x746: b'\x11\x07F', + 0x747: b'\x11\x07G', + 0x748: b'\x11\x07H', + 0x749: b'\x11\x07I', + 0x74a: b'\x11\x07J', + 0x74b: b'\x11\x07K', + 0x74c: b'\x11\x07L', + 0x74d: b'\x11\x07M', + 0x74e: b'\x11\x07N', + 0x74f: b'\x11\x07O', + 0x750: b'\x11\x07P', + 0x751: b'\x11\x07Q', + 0x752: b'\x11\x07R', + 0x753: b'\x11\x07S', + 0x754: b'\x11\x07T', + 0x755: b'\x11\x07U', + 0x756: b'\x11\x07V', + 0x757: b'\x11\x07W', + 0x758: b'\x11\x07X', + 0x759: b'\x11\x07Y', + 0x75a: b'\x11\x07Z', + 0x75b: b'\x11\x07[', + 0x75c: b'\x11\x07\\', + 0x75d: b'\x11\x07]', + 0x75e: b'\x11\x07^', + 0x75f: b'\x11\x07_', + 0x760: b'\x11\x07`', + 0x761: b'\x11\x07a', + 0x762: b'\x11\x07b', + 0x763: b'\x11\x07c', + 0x764: b'\x11\x07d', + 0x765: b'\x11\x07e', + 0x766: b'\x11\x07f', + 0x767: b'\x11\x07g', + 0x768: b'\x11\x07h', + 0x769: b'\x11\x07i', + 0x76a: b'\x11\x07j', + 0x76b: b'\x11\x07k', + 0x76c: b'\x11\x07l', + 0x76d: b'\x11\x07m', + 0x76e: b'\x11\x07n', + 0x76f: b'\x11\x07o', + 0x770: b'\x11\x07p', + 0x771: b'\x11\x07q', + 0x772: b'\x11\x07r', + 0x773: b'\x11\x07s', + 0x774: b'\x11\x07t', + 0x775: b'\x11\x07u', + 0x776: b'\x11\x07v', + 0x777: b'\x11\x07w', + 0x778: b'\x11\x07x', + 0x779: b'\x11\x07y', + 0x77a: b'\x11\x07z', + 0x77b: b'\x11\x07{', + 0x77c: b'\x11\x07|', + 0x77d: b'\x11\x07}', + 0x77e: b'\x11\x07~', + 0x77f: b'\x11\x07\x7f', + 0x780: b'\x11\x07\x80', + 0x781: b'\x11\x07\x81', + 0x782: b'\x11\x07\x82', + 0x783: b'\x11\x07\x83', + 0x784: b'\x11\x07\x84', + 0x785: b'\x11\x07\x85', + 0x786: b'\x11\x07\x86', + 0x787: b'\x11\x07\x87', + 0x788: b'\x11\x07\x88', + 0x789: b'\x11\x07\x89', + 0x78a: b'\x11\x07\x8a', + 0x78b: b'\x11\x07\x8b', + 0x78c: b'\x11\x07\x8c', + 0x78d: b'\x11\x07\x8d', + 0x78e: b'\x11\x07\x8e', + 0x78f: b'\x11\x07\x8f', + 0x790: b'\x11\x07\x90', + 0x791: b'\x11\x07\x91', + 0x792: b'\x11\x07\x92', + 0x793: b'\x11\x07\x93', + 0x794: b'\x11\x07\x94', + 0x795: b'\x11\x07\x95', + 0x796: b'\x11\x07\x96', + 0x797: b'\x11\x07\x97', + 0x798: b'\x11\x07\x98', + 0x799: b'\x11\x07\x99', + 0x79a: b'\x11\x07\x9a', + 0x79b: b'\x11\x07\x9b', + 0x79c: b'\x11\x07\x9c', + 0x79d: b'\x11\x07\x9d', + 0x79e: b'\x11\x07\x9e', + 0x79f: b'\x11\x07\x9f', + 0x7a0: b'\x11\x07\xa0', + 0x7a1: b'\x11\x07\xa1', + 0x7a2: b'\x11\x07\xa2', + 0x7a3: b'\x11\x07\xa3', + 0x7a4: b'\x11\x07\xa4', + 0x7a5: b'\x11\x07\xa5', + 0x7a6: b'\x11\x07\xa6', + 0x7a7: b'\x11\x07\xa7', + 0x7a8: b'\x11\x07\xa8', + 0x7a9: b'\x11\x07\xa9', + 0x7aa: b'\x11\x07\xaa', + 0x7ab: b'\x11\x07\xab', + 0x7ac: b'\x11\x07\xac', + 0x7ad: b'\x11\x07\xad', + 0x7ae: b'\x11\x07\xae', + 0x7af: b'\x11\x07\xaf', + 0x7b0: b'\x11\x07\xb0', + 0x7b1: b'\x11\x07\xb1', + 0x7b2: b'\x11\x07\xb2', + 0x7b3: b'\x11\x07\xb3', + 0x7b4: b'\x11\x07\xb4', + 0x7b5: b'\x11\x07\xb5', + 0x7b6: b'\x11\x07\xb6', + 0x7b7: b'\x11\x07\xb7', + 0x7b8: b'\x11\x07\xb8', + 0x7b9: b'\x11\x07\xb9', + 0x7ba: b'\x11\x07\xba', + 0x7bb: b'\x11\x07\xbb', + 0x7bc: b'\x11\x07\xbc', + 0x7bd: b'\x11\x07\xbd', + 0x7be: b'\x11\x07\xbe', + 0x7bf: b'\x11\x07\xbf', + 0x7c0: b'\x11\x07\xc0', + 0x7c1: b'\x11\x07\xc1', + 0x7c2: b'\x11\x07\xc2', + 0x7c3: b'\x11\x07\xc3', + 0x7c4: b'\x11\x07\xc4', + 0x7c5: b'\x11\x07\xc5', + 0x7c6: b'\x11\x07\xc6', + 0x7c7: b'\x11\x07\xc7', + 0x7c8: b'\x11\x07\xc8', + 0x7c9: b'\x11\x07\xc9', + 0x7ca: b'\x11\x07\xca', + 0x7cb: b'\x11\x07\xcb', + 0x7cc: b'\x11\x07\xcc', + 0x7cd: b'\x11\x07\xcd', + 0x7ce: b'\x11\x07\xce', + 0x7cf: b'\x11\x07\xcf', + 0x7d0: b'\x11\x07\xd0', + 0x7d1: b'\x11\x07\xd1', + 0x7d2: b'\x11\x07\xd2', + 0x7d3: b'\x11\x07\xd3', + 0x7d4: b'\x11\x07\xd4', + 0x7d5: b'\x11\x07\xd5', + 0x7d6: b'\x11\x07\xd6', + 0x7d7: b'\x11\x07\xd7', + 0x7d8: b'\x11\x07\xd8', + 0x7d9: b'\x11\x07\xd9', + 0x7da: b'\x11\x07\xda', + 0x7db: b'\x11\x07\xdb', + 0x7dc: b'\x11\x07\xdc', + 0x7dd: b'\x11\x07\xdd', + 0x7de: b'\x11\x07\xde', + 0x7df: b'\x11\x07\xdf', + 0x7e0: b'\x11\x07\xe0', + 0x7e1: b'\x11\x07\xe1', + 0x7e2: b'\x11\x07\xe2', + 0x7e3: b'\x11\x07\xe3', + 0x7e4: b'\x11\x07\xe4', + 0x7e5: b'\x11\x07\xe5', + 0x7e6: b'\x11\x07\xe6', + 0x7e7: b'\x11\x07\xe7', + 0x7e8: b'\x11\x07\xe8', + 0x7e9: b'\x11\x07\xe9', + 0x7ea: b'\x11\x07\xea', + 0x7eb: b'\x11\x07\xeb', + 0x7ec: b'\x11\x07\xec', + 0x7ed: b'\x11\x07\xed', + 0x7ee: b'\x11\x07\xee', + 0x7ef: b'\x11\x07\xef', + 0x7f0: b'\x11\x07\xf0', + 0x7f1: b'\x11\x07\xf1', + 0x7f2: b'\x11\x07\xf2', + 0x7f3: b'\x11\x07\xf3', + 0x7f4: b'\x11\x07\xf4', + 0x7f5: b'\x11\x07\xf5', + 0x7f6: b'\x11\x07\xf6', + 0x7f7: b'\x11\x07\xf7', + 0x7f8: b'\x11\x07\xf8', + 0x7f9: b'\x11\x07\xf9', + 0x7fa: b'\x11\x07\xfa', + 0x7fb: b'\x11\x07\xfb', + 0x7fc: b'\x11\x07\xfc', + 0x7fd: b'\x11\x07\xfd', + 0x7fe: b'\x11\x07\xfe', + 0x7ff: b'\x11\x07\xff', + 0x800: b'\x11\x08\x00', + 0x801: b'\x11\x08\x01', + 0x802: b'\x11\x08\x02', + 0x803: b'\x11\x08\x03', + 0x804: b'\x11\x08\x04', + 0x805: b'\x11\x08\x05', + 0x806: b'\x11\x08\x06', + 0x807: b'\x11\x08\x07', + 0x808: b'\x11\x08\x08', + 0x809: b'\x11\x08\t', + 0x80a: b'\x11\x08\n', + 0x80b: b'\x11\x08\x0b', + 0x80c: b'\x11\x08\x0c', + 0x80d: b'\x11\x08\r', + 0x80e: b'\x11\x08\x0e', + 0x80f: b'\x11\x08\x0f', + 0x810: b'\x11\x08\x10', + 0x811: b'\x11\x08\x11', + 0x812: b'\x11\x08\x12', + 0x813: b'\x11\x08\x13', + 0x814: b'\x11\x08\x14', + 0x815: b'\x11\x08\x15', + 0x816: b'\x11\x08\x16', + 0x817: b'\x11\x08\x17', + 0x818: b'\x11\x08\x18', + 0x819: b'\x11\x08\x19', + 0x81a: b'\x11\x08\x1a', + 0x81b: b'\x11\x08\x1b', + 0x81c: b'\x11\x08\x1c', + 0x81d: b'\x11\x08\x1d', + 0x81e: b'\x11\x08\x1e', + 0x81f: b'\x11\x08\x1f', + 0x820: b'\x11\x08 ', + 0x821: b'\x11\x08!', + 0x822: b'\x11\x08"', + 0x823: b'\x11\x08#', + 0x824: b'\x11\x08$', + 0x825: b'\x11\x08%', + 0x826: b'\x11\x08&', + 0x827: b"\x11\x08'", + 0x828: b'\x11\x08(', + 0x829: b'\x11\x08)', + 0x82a: b'\x11\x08*', + 0x82b: b'\x11\x08+', + 0x82c: b'\x11\x08,', + 0x82d: b'\x11\x08-', + 0x82e: b'\x11\x08.', + 0x82f: b'\x11\x08/', + 0x830: b'\x11\x080', + 0x831: b'\x11\x081', + 0x832: b'\x11\x082', + 0x833: b'\x11\x083', + 0x834: b'\x11\x084', + 0x835: b'\x11\x085', + 0x836: b'\x11\x086', + 0x837: b'\x11\x087', + 0x838: b'\x11\x088', + 0x839: b'\x11\x089', + 0x83a: b'\x11\x08:', + 0x83b: b'\x11\x08;', + 0x83c: b'\x11\x08<', + 0x83d: b'\x11\x08=', + 0x83e: b'\x11\x08>', + 0x83f: b'\x11\x08?', + 0x840: b'\x11\x08@', + 0x841: b'\x11\x08A', + 0x842: b'\x11\x08B', + 0x843: b'\x11\x08C', + 0x844: b'\x11\x08D', + 0x845: b'\x11\x08E', + 0x846: b'\x11\x08F', + 0x847: b'\x11\x08G', + 0x848: b'\x11\x08H', + 0x849: b'\x11\x08I', + 0x84a: b'\x11\x08J', + 0x84b: b'\x11\x08K', + 0x84c: b'\x11\x08L', + 0x84d: b'\x11\x08M', + 0x84e: b'\x11\x08N', + 0x84f: b'\x11\x08O', + 0x850: b'\x11\x08P', + 0x851: b'\x11\x08Q', + 0x852: b'\x11\x08R', + 0x853: b'\x11\x08S', + 0x854: b'\x11\x08T', + 0x855: b'\x11\x08U', + 0x856: b'\x11\x08V', + 0x857: b'\x11\x08W', + 0x858: b'\x11\x08X', + 0x859: b'\x11\x08Y', + 0x85a: b'\x11\x08Z', + 0x85b: b'\x11\x08[', + 0x85c: b'\x11\x08\\', + 0x85d: b'\x11\x08]', + 0x85e: b'\x11\x08^', + 0x85f: b'\x11\x08_', + 0x860: b'\x11\x08`', + 0x861: b'\x11\x08a', + 0x862: b'\x11\x08b', + 0x863: b'\x11\x08c', + 0x864: b'\x11\x08d', + 0x865: b'\x11\x08e', + 0x866: b'\x11\x08f', + 0x867: b'\x11\x08g', + 0x868: b'\x11\x08h', + 0x869: b'\x11\x08i', + 0x86a: b'\x11\x08j', + 0x86b: b'\x11\x08k', + 0x86c: b'\x11\x08l', + 0x86d: b'\x11\x08m', + 0x86e: b'\x11\x08n', + 0x86f: b'\x11\x08o', + 0x870: b'\x11\x08p', + 0x871: b'\x11\x08q', + 0x872: b'\x11\x08r', + 0x873: b'\x11\x08s', + 0x874: b'\x11\x08t', + 0x875: b'\x11\x08u', + 0x876: b'\x11\x08v', + 0x877: b'\x11\x08w', + 0x878: b'\x11\x08x', + 0x879: b'\x11\x08y', + 0x87a: b'\x11\x08z', + 0x87b: b'\x11\x08{', + 0x87c: b'\x11\x08|', + 0x87d: b'\x11\x08}', + 0x87e: b'\x11\x08~', + 0x87f: b'\x11\x08\x7f', + 0x880: b'\x11\x08\x80', + 0x881: b'\x11\x08\x81', + 0x882: b'\x11\x08\x82', + 0x883: b'\x11\x08\x83', + 0x884: b'\x11\x08\x84', + 0x885: b'\x11\x08\x85', + 0x886: b'\x11\x08\x86', + 0x887: b'\x11\x08\x87', + 0x888: b'\x11\x08\x88', + 0x889: b'\x11\x08\x89', + 0x88a: b'\x11\x08\x8a', + 0x88b: b'\x11\x08\x8b', + 0x88c: b'\x11\x08\x8c', + 0x88d: b'\x11\x08\x8d', + 0x88e: b'\x11\x08\x8e', + 0x88f: b'\x11\x08\x8f', + 0x890: b'\x11\x08\x90', + 0x891: b'\x11\x08\x91', + 0x892: b'\x11\x08\x92', + 0x893: b'\x11\x08\x93', + 0x894: b'\x11\x08\x94', + 0x895: b'\x11\x08\x95', + 0x896: b'\x11\x08\x96', + 0x897: b'\x11\x08\x97', + 0x898: b'\x11\x08\x98', + 0x899: b'\x11\x08\x99', + 0x89a: b'\x11\x08\x9a', + 0x89b: b'\x11\x08\x9b', + 0x89c: b'\x11\x08\x9c', + 0x89d: b'\x11\x08\x9d', + 0x89e: b'\x11\x08\x9e', + 0x89f: b'\x11\x08\x9f', + 0x8a0: b'\x11\x08\xa0', + 0x8a1: b'\x11\x08\xa1', + 0x8a2: b'\x11\x08\xa2', + 0x8a3: b'\x11\x08\xa3', + 0x8a4: b'\x11\x08\xa4', + 0x8a5: b'\x11\x08\xa5', + 0x8a6: b'\x11\x08\xa6', + 0x8a7: b'\x11\x08\xa7', + 0x8a8: b'\x11\x08\xa8', + 0x8a9: b'\x11\x08\xa9', + 0x8aa: b'\x11\x08\xaa', + 0x8ab: b'\x11\x08\xab', + 0x8ac: b'\x11\x08\xac', + 0x8ad: b'\x11\x08\xad', + 0x8ae: b'\x11\x08\xae', + 0x8af: b'\x11\x08\xaf', + 0x8b0: b'\x11\x08\xb0', + 0x8b1: b'\x11\x08\xb1', + 0x8b2: b'\x11\x08\xb2', + 0x8b3: b'\x11\x08\xb3', + 0x8b4: b'\x11\x08\xb4', + 0x8b5: b'\x11\x08\xb5', + 0x8b6: b'\x11\x08\xb6', + 0x8b7: b'\x11\x08\xb7', + 0x8b8: b'\x11\x08\xb8', + 0x8b9: b'\x11\x08\xb9', + 0x8ba: b'\x11\x08\xba', + 0x8bb: b'\x11\x08\xbb', + 0x8bc: b'\x11\x08\xbc', + 0x8bd: b'\x11\x08\xbd', + 0x8be: b'\x11\x08\xbe', + 0x8bf: b'\x11\x08\xbf', + 0x8c0: b'\x11\x08\xc0', + 0x8c1: b'\x11\x08\xc1', + 0x8c2: b'\x11\x08\xc2', + 0x8c3: b'\x11\x08\xc3', + 0x8c4: b'\x11\x08\xc4', + 0x8c5: b'\x11\x08\xc5', + 0x8c6: b'\x11\x08\xc6', + 0x8c7: b'\x11\x08\xc7', + 0x8c8: b'\x11\x08\xc8', + 0x8c9: b'\x11\x08\xc9', + 0x8ca: b'\x11\x08\xca', + 0x8cb: b'\x11\x08\xcb', + 0x8cc: b'\x11\x08\xcc', + 0x8cd: b'\x11\x08\xcd', + 0x8ce: b'\x11\x08\xce', + 0x8cf: b'\x11\x08\xcf', + 0x8d0: b'\x11\x08\xd0', + 0x8d1: b'\x11\x08\xd1', + 0x8d2: b'\x11\x08\xd2', + 0x8d3: b'\x11\x08\xd3', + 0x8d4: b'\x11\x08\xd4', + 0x8d5: b'\x11\x08\xd5', + 0x8d6: b'\x11\x08\xd6', + 0x8d7: b'\x11\x08\xd7', + 0x8d8: b'\x11\x08\xd8', + 0x8d9: b'\x11\x08\xd9', + 0x8da: b'\x11\x08\xda', + 0x8db: b'\x11\x08\xdb', + 0x8dc: b'\x11\x08\xdc', + 0x8dd: b'\x11\x08\xdd', + 0x8de: b'\x11\x08\xde', + 0x8df: b'\x11\x08\xdf', + 0x8e0: b'\x11\x08\xe0', + 0x8e1: b'\x11\x08\xe1', + 0x8e2: b'\x11\x08\xe2', + 0x8e3: b'\x11\x08\xe3', + 0x8e4: b'\x11\x08\xe4', + 0x8e5: b'\x11\x08\xe5', + 0x8e6: b'\x11\x08\xe6', + 0x8e7: b'\x11\x08\xe7', + 0x8e8: b'\x11\x08\xe8', + 0x8e9: b'\x11\x08\xe9', + 0x8ea: b'\x11\x08\xea', + 0x8eb: b'\x11\x08\xeb', + 0x8ec: b'\x11\x08\xec', + 0x8ed: b'\x11\x08\xed', + 0x8ee: b'\x11\x08\xee', + 0x8ef: b'\x11\x08\xef', + 0x8f0: b'\x11\x08\xf0', + 0x8f1: b'\x11\x08\xf1', + 0x8f2: b'\x11\x08\xf2', + 0x8f3: b'\x11\x08\xf3', + 0x8f4: b'\x11\x08\xf4', + 0x8f5: b'\x11\x08\xf5', + 0x8f6: b'\x11\x08\xf6', + 0x8f7: b'\x11\x08\xf7', + 0x8f8: b'\x11\x08\xf8', + 0x8f9: b'\x11\x08\xf9', + 0x8fa: b'\x11\x08\xfa', + 0x8fb: b'\x11\x08\xfb', + 0x8fc: b'\x11\x08\xfc', + 0x8fd: b'\x11\x08\xfd', + 0x8fe: b'\x11\x08\xfe', + 0x8ff: b'\x11\x08\xff', + 0x900: b'\x11\t\x00', + 0x901: b'\x11\t\x01', + 0x902: b'\x11\t\x02', + 0x903: b'\x11\t\x03', + 0x904: b'\x11\t\x04', + 0x905: b'\x11\t\x05', + 0x906: b'\x11\t\x06', + 0x907: b'\x11\t\x07', + 0x908: b'\x11\t\x08', + 0x909: b'\x11\t\t', + 0x90a: b'\x11\t\n', + 0x90b: b'\x11\t\x0b', + 0x90c: b'\x11\t\x0c', + 0x90d: b'\x11\t\r', + 0x90e: b'\x11\t\x0e', + 0x90f: b'\x11\t\x0f', + 0x910: b'\x11\t\x10', + 0x911: b'\x11\t\x11', + 0x912: b'\x11\t\x12', + 0x913: b'\x11\t\x13', + 0x914: b'\x11\t\x14', + 0x915: b'\x11\t\x15', + 0x916: b'\x11\t\x16', + 0x917: b'\x11\t\x17', + 0x918: b'\x11\t\x18', + 0x919: b'\x11\t\x19', + 0x91a: b'\x11\t\x1a', + 0x91b: b'\x11\t\x1b', + 0x91c: b'\x11\t\x1c', + 0x91d: b'\x11\t\x1d', + 0x91e: b'\x11\t\x1e', + 0x91f: b'\x11\t\x1f', + 0x920: b'\x11\t ', + 0x921: b'\x11\t!', + 0x922: b'\x11\t"', + 0x923: b'\x11\t#', + 0x924: b'\x11\t$', + 0x925: b'\x11\t%', + 0x926: b'\x11\t&', + 0x927: b"\x11\t'", + 0x928: b'\x11\t(', + 0x929: b'\x11\t)', + 0x92a: b'\x11\t*', + 0x92b: b'\x11\t+', + 0x92c: b'\x11\t,', + 0x92d: b'\x11\t-', + 0x92e: b'\x11\t.', + 0x92f: b'\x11\t/', + 0x930: b'\x11\t0', + 0x931: b'\x11\t1', + 0x932: b'\x11\t2', + 0x933: b'\x11\t3', + 0x934: b'\x11\t4', + 0x935: b'\x11\t5', + 0x936: b'\x11\t6', + 0x937: b'\x11\t7', + 0x938: b'\x11\t8', + 0x939: b'\x11\t9', + 0x93a: b'\x11\t:', + 0x93b: b'\x11\t;', + 0x93c: b'\x11\t<', + 0x93d: b'\x11\t=', + 0x93e: b'\x11\t>', + 0x93f: b'\x11\t?', + 0x940: b'\x11\t@', + 0x941: b'\x11\tA', + 0x942: b'\x11\tB', + 0x943: b'\x11\tC', + 0x944: b'\x11\tD', + 0x945: b'\x11\tE', + 0x946: b'\x11\tF', + 0x947: b'\x11\tG', + 0x948: b'\x11\tH', + 0x949: b'\x11\tI', + 0x94a: b'\x11\tJ', + 0x94b: b'\x11\tK', + 0x94c: b'\x11\tL', + 0x94d: b'\x11\tM', + 0x94e: b'\x11\tN', + 0x94f: b'\x11\tO', + 0x950: b'\x11\tP', + 0x951: b'\x11\tQ', + 0x952: b'\x11\tR', + 0x953: b'\x11\tS', + 0x954: b'\x11\tT', + 0x955: b'\x11\tU', + 0x956: b'\x11\tV', + 0x957: b'\x11\tW', + 0x958: b'\x11\tX', + 0x959: b'\x11\tY', + 0x95a: b'\x11\tZ', + 0x95b: b'\x11\t[', + 0x95c: b'\x11\t\\', + 0x95d: b'\x11\t]', + 0x95e: b'\x11\t^', + 0x95f: b'\x11\t_', + 0x960: b'\x11\t`', + 0x961: b'\x11\ta', + 0x962: b'\x11\tb', + 0x963: b'\x11\tc', + 0x964: b'\x11\td', + 0x965: b'\x11\te', + 0x966: b'\x11\tf', + 0x967: b'\x11\tg', + 0x968: b'\x11\th', + 0x969: b'\x11\ti', + 0x96a: b'\x11\tj', + 0x96b: b'\x11\tk', + 0x96c: b'\x11\tl', + 0x96d: b'\x11\tm', + 0x96e: b'\x11\tn', + 0x96f: b'\x11\to', + 0x970: b'\x11\tp', + 0x971: b'\x11\tq', + 0x972: b'\x11\tr', + 0x973: b'\x11\ts', + 0x974: b'\x11\tt', + 0x975: b'\x11\tu', + 0x976: b'\x11\tv', + 0x977: b'\x11\tw', + 0x978: b'\x11\tx', + 0x979: b'\x11\ty', + 0x97a: b'\x11\tz', + 0x97b: b'\x11\t{', + 0x97c: b'\x11\t|', + 0x97d: b'\x11\t}', + 0x97e: b'\x11\t~', + 0x97f: b'\x11\t\x7f', + 0x980: b'\x11\t\x80', + 0x981: b'\x11\t\x81', + 0x982: b'\x11\t\x82', + 0x983: b'\x11\t\x83', + 0x984: b'\x11\t\x84', + 0x985: b'\x11\t\x85', + 0x986: b'\x11\t\x86', + 0x987: b'\x11\t\x87', + 0x988: b'\x11\t\x88', + 0x989: b'\x11\t\x89', + 0x98a: b'\x11\t\x8a', + 0x98b: b'\x11\t\x8b', + 0x98c: b'\x11\t\x8c', + 0x98d: b'\x11\t\x8d', + 0x98e: b'\x11\t\x8e', + 0x98f: b'\x11\t\x8f', + 0x990: b'\x11\t\x90', + 0x991: b'\x11\t\x91', + 0x992: b'\x11\t\x92', + 0x993: b'\x11\t\x93', + 0x994: b'\x11\t\x94', + 0x995: b'\x11\t\x95', + 0x996: b'\x11\t\x96', + 0x997: b'\x11\t\x97', + 0x998: b'\x11\t\x98', + 0x999: b'\x11\t\x99', + 0x99a: b'\x11\t\x9a', + 0x99b: b'\x11\t\x9b', + 0x99c: b'\x11\t\x9c', + 0x99d: b'\x11\t\x9d', + 0x99e: b'\x11\t\x9e', + 0x99f: b'\x11\t\x9f', + 0x9a0: b'\x11\t\xa0', + 0x9a1: b'\x11\t\xa1', + 0x9a2: b'\x11\t\xa2', + 0x9a3: b'\x11\t\xa3', + 0x9a4: b'\x11\t\xa4', + 0x9a5: b'\x11\t\xa5', + 0x9a6: b'\x11\t\xa6', + 0x9a7: b'\x11\t\xa7', + 0x9a8: b'\x11\t\xa8', + 0x9a9: b'\x11\t\xa9', + 0x9aa: b'\x11\t\xaa', + 0x9ab: b'\x11\t\xab', + 0x9ac: b'\x11\t\xac', + 0x9ad: b'\x11\t\xad', + 0x9ae: b'\x11\t\xae', + 0x9af: b'\x11\t\xaf', + 0x9b0: b'\x11\t\xb0', + 0x9b1: b'\x11\t\xb1', + 0x9b2: b'\x11\t\xb2', + 0x9b3: b'\x11\t\xb3', + 0x9b4: b'\x11\t\xb4', + 0x9b5: b'\x11\t\xb5', + 0x9b6: b'\x11\t\xb6', + 0x9b7: b'\x11\t\xb7', + 0x9b8: b'\x11\t\xb8', + 0x9b9: b'\x11\t\xb9', + 0x9ba: b'\x11\t\xba', + 0x9bb: b'\x11\t\xbb', + 0x9bc: b'\x11\t\xbc', + 0x9bd: b'\x11\t\xbd', + 0x9be: b'\x11\t\xbe', + 0x9bf: b'\x11\t\xbf', + 0x9c0: b'\x11\t\xc0', + 0x9c1: b'\x11\t\xc1', + 0x9c2: b'\x11\t\xc2', + 0x9c3: b'\x11\t\xc3', + 0x9c4: b'\x11\t\xc4', + 0x9c5: b'\x11\t\xc5', + 0x9c6: b'\x11\t\xc6', + 0x9c7: b'\x11\t\xc7', + 0x9c8: b'\x11\t\xc8', + 0x9c9: b'\x11\t\xc9', + 0x9ca: b'\x11\t\xca', + 0x9cb: b'\x11\t\xcb', + 0x9cc: b'\x11\t\xcc', + 0x9cd: b'\x11\t\xcd', + 0x9ce: b'\x11\t\xce', + 0x9cf: b'\x11\t\xcf', + 0x9d0: b'\x11\t\xd0', + 0x9d1: b'\x11\t\xd1', + 0x9d2: b'\x11\t\xd2', + 0x9d3: b'\x11\t\xd3', + 0x9d4: b'\x11\t\xd4', + 0x9d5: b'\x11\t\xd5', + 0x9d6: b'\x11\t\xd6', + 0x9d7: b'\x11\t\xd7', + 0x9d8: b'\x11\t\xd8', + 0x9d9: b'\x11\t\xd9', + 0x9da: b'\x11\t\xda', + 0x9db: b'\x11\t\xdb', + 0x9dc: b'\x11\t\xdc', + 0x9dd: b'\x11\t\xdd', + 0x9de: b'\x11\t\xde', + 0x9df: b'\x11\t\xdf', + 0x9e0: b'\x11\t\xe0', + 0x9e1: b'\x11\t\xe1', + 0x9e2: b'\x11\t\xe2', + 0x9e3: b'\x11\t\xe3', + 0x9e4: b'\x11\t\xe4', + 0x9e5: b'\x11\t\xe5', + 0x9e6: b'\x11\t\xe6', + 0x9e7: b'\x11\t\xe7', + 0x9e8: b'\x11\t\xe8', + 0x9e9: b'\x11\t\xe9', + 0x9ea: b'\x11\t\xea', + 0x9eb: b'\x11\t\xeb', + 0x9ec: b'\x11\t\xec', + 0x9ed: b'\x11\t\xed', + 0x9ee: b'\x11\t\xee', + 0x9ef: b'\x11\t\xef', + 0x9f0: b'\x11\t\xf0', + 0x9f1: b'\x11\t\xf1', + 0x9f2: b'\x11\t\xf2', + 0x9f3: b'\x11\t\xf3', + 0x9f4: b'\x11\t\xf4', + 0x9f5: b'\x11\t\xf5', + 0x9f6: b'\x11\t\xf6', + 0x9f7: b'\x11\t\xf7', + 0x9f8: b'\x11\t\xf8', + 0x9f9: b'\x11\t\xf9', + 0x9fa: b'\x11\t\xfa', + 0x9fb: b'\x11\t\xfb', + 0x9fc: b'\x11\t\xfc', + 0x9fd: b'\x11\t\xfd', + 0x9fe: b'\x11\t\xfe', + 0x9ff: b'\x11\t\xff', + 0xa00: b'\x11\n\x00', + 0xa01: b'\x11\n\x01', + 0xa02: b'\x11\n\x02', + 0xa03: b'\x11\n\x03', + 0xa04: b'\x11\n\x04', + 0xa05: b'\x11\n\x05', + 0xa06: b'\x11\n\x06', + 0xa07: b'\x11\n\x07', + 0xa08: b'\x11\n\x08', + 0xa09: b'\x11\n\t', + 0xa0a: b'\x11\n\n', + 0xa0b: b'\x11\n\x0b', + 0xa0c: b'\x11\n\x0c', + 0xa0d: b'\x11\n\r', + 0xa0e: b'\x11\n\x0e', + 0xa0f: b'\x11\n\x0f', + 0xa10: b'\x11\n\x10', + 0xa11: b'\x11\n\x11', + 0xa12: b'\x11\n\x12', + 0xa13: b'\x11\n\x13', + 0xa14: b'\x11\n\x14', + 0xa15: b'\x11\n\x15', + 0xa16: b'\x11\n\x16', + 0xa17: b'\x11\n\x17', + 0xa18: b'\x11\n\x18', + 0xa19: b'\x11\n\x19', + 0xa1a: b'\x11\n\x1a', + 0xa1b: b'\x11\n\x1b', + 0xa1c: b'\x11\n\x1c', + 0xa1d: b'\x11\n\x1d', + 0xa1e: b'\x11\n\x1e', + 0xa1f: b'\x11\n\x1f', + 0xa20: b'\x11\n ', + 0xa21: b'\x11\n!', + 0xa22: b'\x11\n"', + 0xa23: b'\x11\n#', + 0xa24: b'\x11\n$', + 0xa25: b'\x11\n%', + 0xa26: b'\x11\n&', + 0xa27: b"\x11\n'", + 0xa28: b'\x11\n(', + 0xa29: b'\x11\n)', + 0xa2a: b'\x11\n*', + 0xa2b: b'\x11\n+', + 0xa2c: b'\x11\n,', + 0xa2d: b'\x11\n-', + 0xa2e: b'\x11\n.', + 0xa2f: b'\x11\n/', + 0xa30: b'\x11\n0', + 0xa31: b'\x11\n1', + 0xa32: b'\x11\n2', + 0xa33: b'\x11\n3', + 0xa34: b'\x11\n4', + 0xa35: b'\x11\n5', + 0xa36: b'\x11\n6', + 0xa37: b'\x11\n7', + 0xa38: b'\x11\n8', + 0xa39: b'\x11\n9', + 0xa3a: b'\x11\n:', + 0xa3b: b'\x11\n;', + 0xa3c: b'\x11\n<', + 0xa3d: b'\x11\n=', + 0xa3e: b'\x11\n>', + 0xa3f: b'\x11\n?', + 0xa40: b'\x11\n@', + 0xa41: b'\x11\nA', + 0xa42: b'\x11\nB', + 0xa43: b'\x11\nC', + 0xa44: b'\x11\nD', + 0xa45: b'\x11\nE', + 0xa46: b'\x11\nF', + 0xa47: b'\x11\nG', + 0xa48: b'\x11\nH', + 0xa49: b'\x11\nI', + 0xa4a: b'\x11\nJ', + 0xa4b: b'\x11\nK', + 0xa4c: b'\x11\nL', + 0xa4d: b'\x11\nM', + 0xa4e: b'\x11\nN', + 0xa4f: b'\x11\nO', + 0xa50: b'\x11\nP', + 0xa51: b'\x11\nQ', + 0xa52: b'\x11\nR', + 0xa53: b'\x11\nS', + 0xa54: b'\x11\nT', + 0xa55: b'\x11\nU', + 0xa56: b'\x11\nV', + 0xa57: b'\x11\nW', + 0xa58: b'\x11\nX', + 0xa59: b'\x11\nY', + 0xa5a: b'\x11\nZ', + 0xa5b: b'\x11\n[', + 0xa5c: b'\x11\n\\', + 0xa5d: b'\x11\n]', + 0xa5e: b'\x11\n^', + 0xa5f: b'\x11\n_', + 0xa60: b'\x11\n`', + 0xa61: b'\x11\na', + 0xa62: b'\x11\nb', + 0xa63: b'\x11\nc', + 0xa64: b'\x11\nd', + 0xa65: b'\x11\ne', + 0xa66: b'\x11\nf', + 0xa67: b'\x11\ng', + 0xa68: b'\x11\nh', + 0xa69: b'\x11\ni', + 0xa6a: b'\x11\nj', + 0xa6b: b'\x11\nk', + 0xa6c: b'\x11\nl', + 0xa6d: b'\x11\nm', + 0xa6e: b'\x11\nn', + 0xa6f: b'\x11\no', + 0xa70: b'\x11\np', + 0xa71: b'\x11\nq', + 0xa72: b'\x11\nr', + 0xa73: b'\x11\ns', + 0xa74: b'\x11\nt', + 0xa75: b'\x11\nu', + 0xa76: b'\x11\nv', + 0xa77: b'\x11\nw', + 0xa78: b'\x11\nx', + 0xa79: b'\x11\ny', + 0xa7a: b'\x11\nz', + 0xa7b: b'\x11\n{', + 0xa7c: b'\x11\n|', + 0xa7d: b'\x11\n}', + 0xa7e: b'\x11\n~', + 0xa7f: b'\x11\n\x7f', + 0xa80: b'\x11\n\x80', + 0xa81: b'\x11\n\x81', + 0xa82: b'\x11\n\x82', + 0xa83: b'\x11\n\x83', + 0xa84: b'\x11\n\x84', + 0xa85: b'\x11\n\x85', + 0xa86: b'\x11\n\x86', + 0xa87: b'\x11\n\x87', + 0xa88: b'\x11\n\x88', + 0xa89: b'\x11\n\x89', + 0xa8a: b'\x11\n\x8a', + 0xa8b: b'\x11\n\x8b', + 0xa8c: b'\x11\n\x8c', + 0xa8d: b'\x11\n\x8d', + 0xa8e: b'\x11\n\x8e', + 0xa8f: b'\x11\n\x8f', + 0xa90: b'\x11\n\x90', + 0xa91: b'\x11\n\x91', + 0xa92: b'\x11\n\x92', + 0xa93: b'\x11\n\x93', + 0xa94: b'\x11\n\x94', + 0xa95: b'\x11\n\x95', + 0xa96: b'\x11\n\x96', + 0xa97: b'\x11\n\x97', + 0xa98: b'\x11\n\x98', + 0xa99: b'\x11\n\x99', + 0xa9a: b'\x11\n\x9a', + 0xa9b: b'\x11\n\x9b', + 0xa9c: b'\x11\n\x9c', + 0xa9d: b'\x11\n\x9d', + 0xa9e: b'\x11\n\x9e', + 0xa9f: b'\x11\n\x9f', + 0xaa0: b'\x11\n\xa0', + 0xaa1: b'\x11\n\xa1', + 0xaa2: b'\x11\n\xa2', + 0xaa3: b'\x11\n\xa3', + 0xaa4: b'\x11\n\xa4', + 0xaa5: b'\x11\n\xa5', + 0xaa6: b'\x11\n\xa6', + 0xaa7: b'\x11\n\xa7', + 0xaa8: b'\x11\n\xa8', + 0xaa9: b'\x11\n\xa9', + 0xaaa: b'\x11\n\xaa', + 0xaab: b'\x11\n\xab', + 0xaac: b'\x11\n\xac', + 0xaad: b'\x11\n\xad', + 0xaae: b'\x11\n\xae', + 0xaaf: b'\x11\n\xaf', + 0xab0: b'\x11\n\xb0', + 0xab1: b'\x11\n\xb1', + 0xab2: b'\x11\n\xb2', + 0xab3: b'\x11\n\xb3', + 0xab4: b'\x11\n\xb4', + 0xab5: b'\x11\n\xb5', + 0xab6: b'\x11\n\xb6', + 0xab7: b'\x11\n\xb7', + 0xab8: b'\x11\n\xb8', + 0xab9: b'\x11\n\xb9', + 0xaba: b'\x11\n\xba', + 0xabb: b'\x11\n\xbb', + 0xabc: b'\x11\n\xbc', + 0xabd: b'\x11\n\xbd', + 0xabe: b'\x11\n\xbe', + 0xabf: b'\x11\n\xbf', + 0xac0: b'\x11\n\xc0', + 0xac1: b'\x11\n\xc1', + 0xac2: b'\x11\n\xc2', + 0xac3: b'\x11\n\xc3', + 0xac4: b'\x11\n\xc4', + 0xac5: b'\x11\n\xc5', + 0xac6: b'\x11\n\xc6', + 0xac7: b'\x11\n\xc7', + 0xac8: b'\x11\n\xc8', + 0xac9: b'\x11\n\xc9', + 0xaca: b'\x11\n\xca', + 0xacb: b'\x11\n\xcb', + 0xacc: b'\x11\n\xcc', + 0xacd: b'\x11\n\xcd', + 0xace: b'\x11\n\xce', + 0xacf: b'\x11\n\xcf', + 0xad0: b'\x11\n\xd0', + 0xad1: b'\x11\n\xd1', + 0xad2: b'\x11\n\xd2', + 0xad3: b'\x11\n\xd3', + 0xad4: b'\x11\n\xd4', + 0xad5: b'\x11\n\xd5', + 0xad6: b'\x11\n\xd6', + 0xad7: b'\x11\n\xd7', + 0xad8: b'\x11\n\xd8', + 0xad9: b'\x11\n\xd9', + 0xada: b'\x11\n\xda', + 0xadb: b'\x11\n\xdb', + 0xadc: b'\x11\n\xdc', + 0xadd: b'\x11\n\xdd', + 0xade: b'\x11\n\xde', + 0xadf: b'\x11\n\xdf', + 0xae0: b'\x11\n\xe0', + 0xae1: b'\x11\n\xe1', + 0xae2: b'\x11\n\xe2', + 0xae3: b'\x11\n\xe3', + 0xae4: b'\x11\n\xe4', + 0xae5: b'\x11\n\xe5', + 0xae6: b'\x11\n\xe6', + 0xae7: b'\x11\n\xe7', + 0xae8: b'\x11\n\xe8', + 0xae9: b'\x11\n\xe9', + 0xaea: b'\x11\n\xea', + 0xaeb: b'\x11\n\xeb', + 0xaec: b'\x11\n\xec', + 0xaed: b'\x11\n\xed', + 0xaee: b'\x11\n\xee', + 0xaef: b'\x11\n\xef', + 0xaf0: b'\x11\n\xf0', + 0xaf1: b'\x11\n\xf1', + 0xaf2: b'\x11\n\xf2', + 0xaf3: b'\x11\n\xf3', + 0xaf4: b'\x11\n\xf4', + 0xaf5: b'\x11\n\xf5', + 0xaf6: b'\x11\n\xf6', + 0xaf7: b'\x11\n\xf7', + 0xaf8: b'\x11\n\xf8', + 0xaf9: b'\x11\n\xf9', + 0xafa: b'\x11\n\xfa', + 0xafb: b'\x11\n\xfb', + 0xafc: b'\x11\n\xfc', + 0xafd: b'\x11\n\xfd', + 0xafe: b'\x11\n\xfe', + 0xaff: b'\x11\n\xff', + 0xb00: b'\x11\x0b\x00', + 0xb01: b'\x11\x0b\x01', + 0xb02: b'\x11\x0b\x02', + 0xb03: b'\x11\x0b\x03', + 0xb04: b'\x11\x0b\x04', + 0xb05: b'\x11\x0b\x05', + 0xb06: b'\x11\x0b\x06', + 0xb07: b'\x11\x0b\x07', + 0xb08: b'\x11\x0b\x08', + 0xb09: b'\x11\x0b\t', + 0xb0a: b'\x11\x0b\n', + 0xb0b: b'\x11\x0b\x0b', + 0xb0c: b'\x11\x0b\x0c', + 0xb0d: b'\x11\x0b\r', + 0xb0e: b'\x11\x0b\x0e', + 0xb0f: b'\x11\x0b\x0f', + 0xb10: b'\x11\x0b\x10', + 0xb11: b'\x11\x0b\x11', + 0xb12: b'\x11\x0b\x12', + 0xb13: b'\x11\x0b\x13', + 0xb14: b'\x11\x0b\x14', + 0xb15: b'\x11\x0b\x15', + 0xb16: b'\x11\x0b\x16', + 0xb17: b'\x11\x0b\x17', + 0xb18: b'\x11\x0b\x18', + 0xb19: b'\x11\x0b\x19', + 0xb1a: b'\x11\x0b\x1a', + 0xb1b: b'\x11\x0b\x1b', + 0xb1c: b'\x11\x0b\x1c', + 0xb1d: b'\x11\x0b\x1d', + 0xb1e: b'\x11\x0b\x1e', + 0xb1f: b'\x11\x0b\x1f', + 0xb20: b'\x11\x0b ', + 0xb21: b'\x11\x0b!', + 0xb22: b'\x11\x0b"', + 0xb23: b'\x11\x0b#', + 0xb24: b'\x11\x0b$', + 0xb25: b'\x11\x0b%', + 0xb26: b'\x11\x0b&', + 0xb27: b"\x11\x0b'", + 0xb28: b'\x11\x0b(', + 0xb29: b'\x11\x0b)', + 0xb2a: b'\x11\x0b*', + 0xb2b: b'\x11\x0b+', + 0xb2c: b'\x11\x0b,', + 0xb2d: b'\x11\x0b-', + 0xb2e: b'\x11\x0b.', + 0xb2f: b'\x11\x0b/', + 0xb30: b'\x11\x0b0', + 0xb31: b'\x11\x0b1', + 0xb32: b'\x11\x0b2', + 0xb33: b'\x11\x0b3', + 0xb34: b'\x11\x0b4', + 0xb35: b'\x11\x0b5', + 0xb36: b'\x11\x0b6', + 0xb37: b'\x11\x0b7', + 0xb38: b'\x11\x0b8', + 0xb39: b'\x11\x0b9', + 0xb3a: b'\x11\x0b:', + 0xb3b: b'\x11\x0b;', + 0xb3c: b'\x11\x0b<', + 0xb3d: b'\x11\x0b=', + 0xb3e: b'\x11\x0b>', + 0xb3f: b'\x11\x0b?', + 0xb40: b'\x11\x0b@', + 0xb41: b'\x11\x0bA', + 0xb42: b'\x11\x0bB', + 0xb43: b'\x11\x0bC', + 0xb44: b'\x11\x0bD', + 0xb45: b'\x11\x0bE', + 0xb46: b'\x11\x0bF', + 0xb47: b'\x11\x0bG', + 0xb48: b'\x11\x0bH', + 0xb49: b'\x11\x0bI', + 0xb4a: b'\x11\x0bJ', + 0xb4b: b'\x11\x0bK', + 0xb4c: b'\x11\x0bL', + 0xb4d: b'\x11\x0bM', + 0xb4e: b'\x11\x0bN', + 0xb4f: b'\x11\x0bO', + 0xb50: b'\x11\x0bP', + 0xb51: b'\x11\x0bQ', + 0xb52: b'\x11\x0bR', + 0xb53: b'\x11\x0bS', + 0xb54: b'\x11\x0bT', + 0xb55: b'\x11\x0bU', + 0xb56: b'\x11\x0bV', + 0xb57: b'\x11\x0bW', + 0xb58: b'\x11\x0bX', + 0xb59: b'\x11\x0bY', + 0xb5a: b'\x11\x0bZ', + 0xb5b: b'\x11\x0b[', + 0xb5c: b'\x11\x0b\\', + 0xb5d: b'\x11\x0b]', + 0xb5e: b'\x11\x0b^', + 0xb5f: b'\x11\x0b_', + 0xb60: b'\x11\x0b`', + 0xb61: b'\x11\x0ba', + 0xb62: b'\x11\x0bb', + 0xb63: b'\x11\x0bc', + 0xb64: b'\x11\x0bd', + 0xb65: b'\x11\x0be', + 0xb66: b'\x11\x0bf', + 0xb67: b'\x11\x0bg', + 0xb68: b'\x11\x0bh', + 0xb69: b'\x11\x0bi', + 0xb6a: b'\x11\x0bj', + 0xb6b: b'\x11\x0bk', + 0xb6c: b'\x11\x0bl', + 0xb6d: b'\x11\x0bm', + 0xb6e: b'\x11\x0bn', + 0xb6f: b'\x11\x0bo', + 0xb70: b'\x11\x0bp', + 0xb71: b'\x11\x0bq', + 0xb72: b'\x11\x0br', + 0xb73: b'\x11\x0bs', + 0xb74: b'\x11\x0bt', + 0xb75: b'\x11\x0bu', + 0xb76: b'\x11\x0bv', + 0xb77: b'\x11\x0bw', + 0xb78: b'\x11\x0bx', + 0xb79: b'\x11\x0by', + 0xb7a: b'\x11\x0bz', + 0xb7b: b'\x11\x0b{', + 0xb7c: b'\x11\x0b|', + 0xb7d: b'\x11\x0b}', + 0xb7e: b'\x11\x0b~', + 0xb7f: b'\x11\x0b\x7f', + 0xb80: b'\x11\x0b\x80', + 0xb81: b'\x11\x0b\x81', + 0xb82: b'\x11\x0b\x82', + 0xb83: b'\x11\x0b\x83', + 0xb84: b'\x11\x0b\x84', + 0xb85: b'\x11\x0b\x85', + 0xb86: b'\x11\x0b\x86', + 0xb87: b'\x11\x0b\x87', + 0xb88: b'\x11\x0b\x88', + 0xb89: b'\x11\x0b\x89', + 0xb8a: b'\x11\x0b\x8a', + 0xb8b: b'\x11\x0b\x8b', + 0xb8c: b'\x11\x0b\x8c', + 0xb8d: b'\x11\x0b\x8d', + 0xb8e: b'\x11\x0b\x8e', + 0xb8f: b'\x11\x0b\x8f', + 0xb90: b'\x11\x0b\x90', + 0xb91: b'\x11\x0b\x91', + 0xb92: b'\x11\x0b\x92', + 0xb93: b'\x11\x0b\x93', + 0xb94: b'\x11\x0b\x94', + 0xb95: b'\x11\x0b\x95', + 0xb96: b'\x11\x0b\x96', + 0xb97: b'\x11\x0b\x97', + 0xb98: b'\x11\x0b\x98', + 0xb99: b'\x11\x0b\x99', + 0xb9a: b'\x11\x0b\x9a', + 0xb9b: b'\x11\x0b\x9b', + 0xb9c: b'\x11\x0b\x9c', + 0xb9d: b'\x11\x0b\x9d', + 0xb9e: b'\x11\x0b\x9e', + 0xb9f: b'\x11\x0b\x9f', + 0xba0: b'\x11\x0b\xa0', + 0xba1: b'\x11\x0b\xa1', + 0xba2: b'\x11\x0b\xa2', + 0xba3: b'\x11\x0b\xa3', + 0xba4: b'\x11\x0b\xa4', + 0xba5: b'\x11\x0b\xa5', + 0xba6: b'\x11\x0b\xa6', + 0xba7: b'\x11\x0b\xa7', + 0xba8: b'\x11\x0b\xa8', + 0xba9: b'\x11\x0b\xa9', + 0xbaa: b'\x11\x0b\xaa', + 0xbab: b'\x11\x0b\xab', + 0xbac: b'\x11\x0b\xac', + 0xbad: b'\x11\x0b\xad', + 0xbae: b'\x11\x0b\xae', + 0xbaf: b'\x11\x0b\xaf', + 0xbb0: b'\x11\x0b\xb0', + 0xbb1: b'\x11\x0b\xb1', + 0xbb2: b'\x11\x0b\xb2', + 0xbb3: b'\x11\x0b\xb3', + 0xbb4: b'\x11\x0b\xb4', + 0xbb5: b'\x11\x0b\xb5', + 0xbb6: b'\x11\x0b\xb6', + 0xbb7: b'\x11\x0b\xb7', + 0xbb8: b'\x11\x0b\xb8', + 0xbb9: b'\x11\x0b\xb9', + 0xbba: b'\x11\x0b\xba', + 0xbbb: b'\x11\x0b\xbb', + 0xbbc: b'\x11\x0b\xbc', + 0xbbd: b'\x11\x0b\xbd', + 0xbbe: b'\x11\x0b\xbe', + 0xbbf: b'\x11\x0b\xbf', + 0xbc0: b'\x11\x0b\xc0', + 0xbc1: b'\x11\x0b\xc1', + 0xbc2: b'\x11\x0b\xc2', + 0xbc3: b'\x11\x0b\xc3', + 0xbc4: b'\x11\x0b\xc4', + 0xbc5: b'\x11\x0b\xc5', + 0xbc6: b'\x11\x0b\xc6', + 0xbc7: b'\x11\x0b\xc7', + 0xbc8: b'\x11\x0b\xc8', + 0xbc9: b'\x11\x0b\xc9', + 0xbca: b'\x11\x0b\xca', + 0xbcb: b'\x11\x0b\xcb', + 0xbcc: b'\x11\x0b\xcc', + 0xbcd: b'\x11\x0b\xcd', + 0xbce: b'\x11\x0b\xce', + 0xbcf: b'\x11\x0b\xcf', + 0xbd0: b'\x11\x0b\xd0', + 0xbd1: b'\x11\x0b\xd1', + 0xbd2: b'\x11\x0b\xd2', + 0xbd3: b'\x11\x0b\xd3', + 0xbd4: b'\x11\x0b\xd4', + 0xbd5: b'\x11\x0b\xd5', + 0xbd6: b'\x11\x0b\xd6', + 0xbd7: b'\x11\x0b\xd7', + 0xbd8: b'\x11\x0b\xd8', + 0xbd9: b'\x11\x0b\xd9', + 0xbda: b'\x11\x0b\xda', + 0xbdb: b'\x11\x0b\xdb', + 0xbdc: b'\x11\x0b\xdc', + 0xbdd: b'\x11\x0b\xdd', + 0xbde: b'\x11\x0b\xde', + 0xbdf: b'\x11\x0b\xdf', + 0xbe0: b'\x11\x0b\xe0', + 0xbe1: b'\x11\x0b\xe1', + 0xbe2: b'\x11\x0b\xe2', + 0xbe3: b'\x11\x0b\xe3', + 0xbe4: b'\x11\x0b\xe4', + 0xbe5: b'\x11\x0b\xe5', + 0xbe6: b'\x11\x0b\xe6', + 0xbe7: b'\x11\x0b\xe7', + 0xbe8: b'\x11\x0b\xe8', + 0xbe9: b'\x11\x0b\xe9', + 0xbea: b'\x11\x0b\xea', + 0xbeb: b'\x11\x0b\xeb', + 0xbec: b'\x11\x0b\xec', + 0xbed: b'\x11\x0b\xed', + 0xbee: b'\x11\x0b\xee', + 0xbef: b'\x11\x0b\xef', + 0xbf0: b'\x11\x0b\xf0', + 0xbf1: b'\x11\x0b\xf1', + 0xbf2: b'\x11\x0b\xf2', + 0xbf3: b'\x11\x0b\xf3', + 0xbf4: b'\x11\x0b\xf4', + 0xbf5: b'\x11\x0b\xf5', + 0xbf6: b'\x11\x0b\xf6', + 0xbf7: b'\x11\x0b\xf7', + 0xbf8: b'\x11\x0b\xf8', + 0xbf9: b'\x11\x0b\xf9', + 0xbfa: b'\x11\x0b\xfa', + 0xbfb: b'\x11\x0b\xfb', + 0xbfc: b'\x11\x0b\xfc', + 0xbfd: b'\x11\x0b\xfd', + 0xbfe: b'\x11\x0b\xfe', + 0xbff: b'\x11\x0b\xff', + 0xc00: b'\x11\x0c\x00', + 0xc01: b'\x11\x0c\x01', + 0xc02: b'\x11\x0c\x02', + 0xc03: b'\x11\x0c\x03', + 0xc04: b'\x11\x0c\x04', + 0xc05: b'\x11\x0c\x05', + 0xc06: b'\x11\x0c\x06', + 0xc07: b'\x11\x0c\x07', + 0xc08: b'\x11\x0c\x08', + 0xc09: b'\x11\x0c\t', + 0xc0a: b'\x11\x0c\n', + 0xc0b: b'\x11\x0c\x0b', + 0xc0c: b'\x11\x0c\x0c', + 0xc0d: b'\x11\x0c\r', + 0xc0e: b'\x11\x0c\x0e', + 0xc0f: b'\x11\x0c\x0f', + 0xc10: b'\x11\x0c\x10', + 0xc11: b'\x11\x0c\x11', + 0xc12: b'\x11\x0c\x12', + 0xc13: b'\x11\x0c\x13', + 0xc14: b'\x11\x0c\x14', + 0xc15: b'\x11\x0c\x15', + 0xc16: b'\x11\x0c\x16', + 0xc17: b'\x11\x0c\x17', + 0xc18: b'\x11\x0c\x18', + 0xc19: b'\x11\x0c\x19', + 0xc1a: b'\x11\x0c\x1a', + 0xc1b: b'\x11\x0c\x1b', + 0xc1c: b'\x11\x0c\x1c', + 0xc1d: b'\x11\x0c\x1d', + 0xc1e: b'\x11\x0c\x1e', + 0xc1f: b'\x11\x0c\x1f', + 0xc20: b'\x11\x0c ', + 0xc21: b'\x11\x0c!', + 0xc22: b'\x11\x0c"', + 0xc23: b'\x11\x0c#', + 0xc24: b'\x11\x0c$', + 0xc25: b'\x11\x0c%', + 0xc26: b'\x11\x0c&', + 0xc27: b"\x11\x0c'", + 0xc28: b'\x11\x0c(', + 0xc29: b'\x11\x0c)', + 0xc2a: b'\x11\x0c*', + 0xc2b: b'\x11\x0c+', + 0xc2c: b'\x11\x0c,', + 0xc2d: b'\x11\x0c-', + 0xc2e: b'\x11\x0c.', + 0xc2f: b'\x11\x0c/', + 0xc30: b'\x11\x0c0', + 0xc31: b'\x11\x0c1', + 0xc32: b'\x11\x0c2', + 0xc33: b'\x11\x0c3', + 0xc34: b'\x11\x0c4', + 0xc35: b'\x11\x0c5', + 0xc36: b'\x11\x0c6', + 0xc37: b'\x11\x0c7', + 0xc38: b'\x11\x0c8', + 0xc39: b'\x11\x0c9', + 0xc3a: b'\x11\x0c:', + 0xc3b: b'\x11\x0c;', + 0xc3c: b'\x11\x0c<', + 0xc3d: b'\x11\x0c=', + 0xc3e: b'\x11\x0c>', + 0xc3f: b'\x11\x0c?', + 0xc40: b'\x11\x0c@', + 0xc41: b'\x11\x0cA', + 0xc42: b'\x11\x0cB', + 0xc43: b'\x11\x0cC', + 0xc44: b'\x11\x0cD', + 0xc45: b'\x11\x0cE', + 0xc46: b'\x11\x0cF', + 0xc47: b'\x11\x0cG', + 0xc48: b'\x11\x0cH', + 0xc49: b'\x11\x0cI', + 0xc4a: b'\x11\x0cJ', + 0xc4b: b'\x11\x0cK', + 0xc4c: b'\x11\x0cL', + 0xc4d: b'\x11\x0cM', + 0xc4e: b'\x11\x0cN', + 0xc4f: b'\x11\x0cO', + 0xc50: b'\x11\x0cP', + 0xc51: b'\x11\x0cQ', + 0xc52: b'\x11\x0cR', + 0xc53: b'\x11\x0cS', + 0xc54: b'\x11\x0cT', + 0xc55: b'\x11\x0cU', + 0xc56: b'\x11\x0cV', + 0xc57: b'\x11\x0cW', + 0xc58: b'\x11\x0cX', + 0xc59: b'\x11\x0cY', + 0xc5a: b'\x11\x0cZ', + 0xc5b: b'\x11\x0c[', + 0xc5c: b'\x11\x0c\\', + 0xc5d: b'\x11\x0c]', + 0xc5e: b'\x11\x0c^', + 0xc5f: b'\x11\x0c_', + 0xc60: b'\x11\x0c`', + 0xc61: b'\x11\x0ca', + 0xc62: b'\x11\x0cb', + 0xc63: b'\x11\x0cc', + 0xc64: b'\x11\x0cd', + 0xc65: b'\x11\x0ce', + 0xc66: b'\x11\x0cf', + 0xc67: b'\x11\x0cg', + 0xc68: b'\x11\x0ch', + 0xc69: b'\x11\x0ci', + 0xc6a: b'\x11\x0cj', + 0xc6b: b'\x11\x0ck', + 0xc6c: b'\x11\x0cl', + 0xc6d: b'\x11\x0cm', + 0xc6e: b'\x11\x0cn', + 0xc6f: b'\x11\x0co', + 0xc70: b'\x11\x0cp', + 0xc71: b'\x11\x0cq', + 0xc72: b'\x11\x0cr', + 0xc73: b'\x11\x0cs', + 0xc74: b'\x11\x0ct', + 0xc75: b'\x11\x0cu', + 0xc76: b'\x11\x0cv', + 0xc77: b'\x11\x0cw', + 0xc78: b'\x11\x0cx', + 0xc79: b'\x11\x0cy', + 0xc7a: b'\x11\x0cz', + 0xc7b: b'\x11\x0c{', + 0xc7c: b'\x11\x0c|', + 0xc7d: b'\x11\x0c}', + 0xc7e: b'\x11\x0c~', + 0xc7f: b'\x11\x0c\x7f', + 0xc80: b'\x11\x0c\x80', + 0xc81: b'\x11\x0c\x81', + 0xc82: b'\x11\x0c\x82', + 0xc83: b'\x11\x0c\x83', + 0xc84: b'\x11\x0c\x84', + 0xc85: b'\x11\x0c\x85', + 0xc86: b'\x11\x0c\x86', + 0xc87: b'\x11\x0c\x87', + 0xc88: b'\x11\x0c\x88', + 0xc89: b'\x11\x0c\x89', + 0xc8a: b'\x11\x0c\x8a', + 0xc8b: b'\x11\x0c\x8b', + 0xc8c: b'\x11\x0c\x8c', + 0xc8d: b'\x11\x0c\x8d', + 0xc8e: b'\x11\x0c\x8e', + 0xc8f: b'\x11\x0c\x8f', + 0xc90: b'\x11\x0c\x90', + 0xc91: b'\x11\x0c\x91', + 0xc92: b'\x11\x0c\x92', + 0xc93: b'\x11\x0c\x93', + 0xc94: b'\x11\x0c\x94', + 0xc95: b'\x11\x0c\x95', + 0xc96: b'\x11\x0c\x96', + 0xc97: b'\x11\x0c\x97', + 0xc98: b'\x11\x0c\x98', + 0xc99: b'\x11\x0c\x99', + 0xc9a: b'\x11\x0c\x9a', + 0xc9b: b'\x11\x0c\x9b', + 0xc9c: b'\x11\x0c\x9c', + 0xc9d: b'\x11\x0c\x9d', + 0xc9e: b'\x11\x0c\x9e', + 0xc9f: b'\x11\x0c\x9f', + 0xca0: b'\x11\x0c\xa0', + 0xca1: b'\x11\x0c\xa1', + 0xca2: b'\x11\x0c\xa2', + 0xca3: b'\x11\x0c\xa3', + 0xca4: b'\x11\x0c\xa4', + 0xca5: b'\x11\x0c\xa5', + 0xca6: b'\x11\x0c\xa6', + 0xca7: b'\x11\x0c\xa7', + 0xca8: b'\x11\x0c\xa8', + 0xca9: b'\x11\x0c\xa9', + 0xcaa: b'\x11\x0c\xaa', + 0xcab: b'\x11\x0c\xab', + 0xcac: b'\x11\x0c\xac', + 0xcad: b'\x11\x0c\xad', + 0xcae: b'\x11\x0c\xae', + 0xcaf: b'\x11\x0c\xaf', + 0xcb0: b'\x11\x0c\xb0', + 0xcb1: b'\x11\x0c\xb1', + 0xcb2: b'\x11\x0c\xb2', + 0xcb3: b'\x11\x0c\xb3', + 0xcb4: b'\x11\x0c\xb4', + 0xcb5: b'\x11\x0c\xb5', + 0xcb6: b'\x11\x0c\xb6', + 0xcb7: b'\x11\x0c\xb7', + 0xcb8: b'\x11\x0c\xb8', + 0xcb9: b'\x11\x0c\xb9', + 0xcba: b'\x11\x0c\xba', + 0xcbb: b'\x11\x0c\xbb', + 0xcbc: b'\x11\x0c\xbc', + 0xcbd: b'\x11\x0c\xbd', + 0xcbe: b'\x11\x0c\xbe', + 0xcbf: b'\x11\x0c\xbf', + 0xcc0: b'\x11\x0c\xc0', + 0xcc1: b'\x11\x0c\xc1', + 0xcc2: b'\x11\x0c\xc2', + 0xcc3: b'\x11\x0c\xc3', + 0xcc4: b'\x11\x0c\xc4', + 0xcc5: b'\x11\x0c\xc5', + 0xcc6: b'\x11\x0c\xc6', + 0xcc7: b'\x11\x0c\xc7', + 0xcc8: b'\x11\x0c\xc8', + 0xcc9: b'\x11\x0c\xc9', + 0xcca: b'\x11\x0c\xca', + 0xccb: b'\x11\x0c\xcb', + 0xccc: b'\x11\x0c\xcc', + 0xccd: b'\x11\x0c\xcd', + 0xcce: b'\x11\x0c\xce', + 0xccf: b'\x11\x0c\xcf', + 0xcd0: b'\x11\x0c\xd0', + 0xcd1: b'\x11\x0c\xd1', + 0xcd2: b'\x11\x0c\xd2', + 0xcd3: b'\x11\x0c\xd3', + 0xcd4: b'\x11\x0c\xd4', + 0xcd5: b'\x11\x0c\xd5', + 0xcd6: b'\x11\x0c\xd6', + 0xcd7: b'\x11\x0c\xd7', + 0xcd8: b'\x11\x0c\xd8', + 0xcd9: b'\x11\x0c\xd9', + 0xcda: b'\x11\x0c\xda', + 0xcdb: b'\x11\x0c\xdb', + 0xcdc: b'\x11\x0c\xdc', + 0xcdd: b'\x11\x0c\xdd', + 0xcde: b'\x11\x0c\xde', + 0xcdf: b'\x11\x0c\xdf', + 0xce0: b'\x11\x0c\xe0', + 0xce1: b'\x11\x0c\xe1', + 0xce2: b'\x11\x0c\xe2', + 0xce3: b'\x11\x0c\xe3', + 0xce4: b'\x11\x0c\xe4', + 0xce5: b'\x11\x0c\xe5', + 0xce6: b'\x11\x0c\xe6', + 0xce7: b'\x11\x0c\xe7', + 0xce8: b'\x11\x0c\xe8', + 0xce9: b'\x11\x0c\xe9', + 0xcea: b'\x11\x0c\xea', + 0xceb: b'\x11\x0c\xeb', + 0xcec: b'\x11\x0c\xec', + 0xced: b'\x11\x0c\xed', + 0xcee: b'\x11\x0c\xee', + 0xcef: b'\x11\x0c\xef', + 0xcf0: b'\x11\x0c\xf0', + 0xcf1: b'\x11\x0c\xf1', + 0xcf2: b'\x11\x0c\xf2', + 0xcf3: b'\x11\x0c\xf3', + 0xcf4: b'\x11\x0c\xf4', + 0xcf5: b'\x11\x0c\xf5', + 0xcf6: b'\x11\x0c\xf6', + 0xcf7: b'\x11\x0c\xf7', + 0xcf8: b'\x11\x0c\xf8', + 0xcf9: b'\x11\x0c\xf9', + 0xcfa: b'\x11\x0c\xfa', + 0xcfb: b'\x11\x0c\xfb', + 0xcfc: b'\x11\x0c\xfc', + 0xcfd: b'\x11\x0c\xfd', + 0xcfe: b'\x11\x0c\xfe', + 0xcff: b'\x11\x0c\xff', + 0xd00: b'\x11\r\x00', + 0xd01: b'\x11\r\x01', + 0xd02: b'\x11\r\x02', + 0xd03: b'\x11\r\x03', + 0xd04: b'\x11\r\x04', + 0xd05: b'\x11\r\x05', + 0xd06: b'\x11\r\x06', + 0xd07: b'\x11\r\x07', + 0xd08: b'\x11\r\x08', + 0xd09: b'\x11\r\t', + 0xd0a: b'\x11\r\n', + 0xd0b: b'\x11\r\x0b', + 0xd0c: b'\x11\r\x0c', + 0xd0d: b'\x11\r\r', + 0xd0e: b'\x11\r\x0e', + 0xd0f: b'\x11\r\x0f', + 0xd10: b'\x11\r\x10', + 0xd11: b'\x11\r\x11', + 0xd12: b'\x11\r\x12', + 0xd13: b'\x11\r\x13', + 0xd14: b'\x11\r\x14', + 0xd15: b'\x11\r\x15', + 0xd16: b'\x11\r\x16', + 0xd17: b'\x11\r\x17', + 0xd18: b'\x11\r\x18', + 0xd19: b'\x11\r\x19', + 0xd1a: b'\x11\r\x1a', + 0xd1b: b'\x11\r\x1b', + 0xd1c: b'\x11\r\x1c', + 0xd1d: b'\x11\r\x1d', + 0xd1e: b'\x11\r\x1e', + 0xd1f: b'\x11\r\x1f', + 0xd20: b'\x11\r ', + 0xd21: b'\x11\r!', + 0xd22: b'\x11\r"', + 0xd23: b'\x11\r#', + 0xd24: b'\x11\r$', + 0xd25: b'\x11\r%', + 0xd26: b'\x11\r&', + 0xd27: b"\x11\r'", + 0xd28: b'\x11\r(', + 0xd29: b'\x11\r)', + 0xd2a: b'\x11\r*', + 0xd2b: b'\x11\r+', + 0xd2c: b'\x11\r,', + 0xd2d: b'\x11\r-', + 0xd2e: b'\x11\r.', + 0xd2f: b'\x11\r/', + 0xd30: b'\x11\r0', + 0xd31: b'\x11\r1', + 0xd32: b'\x11\r2', + 0xd33: b'\x11\r3', + 0xd34: b'\x11\r4', + 0xd35: b'\x11\r5', + 0xd36: b'\x11\r6', + 0xd37: b'\x11\r7', + 0xd38: b'\x11\r8', + 0xd39: b'\x11\r9', + 0xd3a: b'\x11\r:', + 0xd3b: b'\x11\r;', + 0xd3c: b'\x11\r<', + 0xd3d: b'\x11\r=', + 0xd3e: b'\x11\r>', + 0xd3f: b'\x11\r?', + 0xd40: b'\x11\r@', + 0xd41: b'\x11\rA', + 0xd42: b'\x11\rB', + 0xd43: b'\x11\rC', + 0xd44: b'\x11\rD', + 0xd45: b'\x11\rE', + 0xd46: b'\x11\rF', + 0xd47: b'\x11\rG', + 0xd48: b'\x11\rH', + 0xd49: b'\x11\rI', + 0xd4a: b'\x11\rJ', + 0xd4b: b'\x11\rK', + 0xd4c: b'\x11\rL', + 0xd4d: b'\x11\rM', + 0xd4e: b'\x11\rN', + 0xd4f: b'\x11\rO', + 0xd50: b'\x11\rP', + 0xd51: b'\x11\rQ', + 0xd52: b'\x11\rR', + 0xd53: b'\x11\rS', + 0xd54: b'\x11\rT', + 0xd55: b'\x11\rU', + 0xd56: b'\x11\rV', + 0xd57: b'\x11\rW', + 0xd58: b'\x11\rX', + 0xd59: b'\x11\rY', + 0xd5a: b'\x11\rZ', + 0xd5b: b'\x11\r[', + 0xd5c: b'\x11\r\\', + 0xd5d: b'\x11\r]', + 0xd5e: b'\x11\r^', + 0xd5f: b'\x11\r_', + 0xd60: b'\x11\r`', + 0xd61: b'\x11\ra', + 0xd62: b'\x11\rb', + 0xd63: b'\x11\rc', + 0xd64: b'\x11\rd', + 0xd65: b'\x11\re', + 0xd66: b'\x11\rf', + 0xd67: b'\x11\rg', + 0xd68: b'\x11\rh', + 0xd69: b'\x11\ri', + 0xd6a: b'\x11\rj', + 0xd6b: b'\x11\rk', + 0xd6c: b'\x11\rl', + 0xd6d: b'\x11\rm', + 0xd6e: b'\x11\rn', + 0xd6f: b'\x11\ro', + 0xd70: b'\x11\rp', + 0xd71: b'\x11\rq', + 0xd72: b'\x11\rr', + 0xd73: b'\x11\rs', + 0xd74: b'\x11\rt', + 0xd75: b'\x11\ru', + 0xd76: b'\x11\rv', + 0xd77: b'\x11\rw', + 0xd78: b'\x11\rx', + 0xd79: b'\x11\ry', + 0xd7a: b'\x11\rz', + 0xd7b: b'\x11\r{', + 0xd7c: b'\x11\r|', + 0xd7d: b'\x11\r}', + 0xd7e: b'\x11\r~', + 0xd7f: b'\x11\r\x7f', + 0xd80: b'\x11\r\x80', + 0xd81: b'\x11\r\x81', + 0xd82: b'\x11\r\x82', + 0xd83: b'\x11\r\x83', + 0xd84: b'\x11\r\x84', + 0xd85: b'\x11\r\x85', + 0xd86: b'\x11\r\x86', + 0xd87: b'\x11\r\x87', + 0xd88: b'\x11\r\x88', + 0xd89: b'\x11\r\x89', + 0xd8a: b'\x11\r\x8a', + 0xd8b: b'\x11\r\x8b', + 0xd8c: b'\x11\r\x8c', + 0xd8d: b'\x11\r\x8d', + 0xd8e: b'\x11\r\x8e', + 0xd8f: b'\x11\r\x8f', + 0xd90: b'\x11\r\x90', + 0xd91: b'\x11\r\x91', + 0xd92: b'\x11\r\x92', + 0xd93: b'\x11\r\x93', + 0xd94: b'\x11\r\x94', + 0xd95: b'\x11\r\x95', + 0xd96: b'\x11\r\x96', + 0xd97: b'\x11\r\x97', + 0xd98: b'\x11\r\x98', + 0xd99: b'\x11\r\x99', + 0xd9a: b'\x11\r\x9a', + 0xd9b: b'\x11\r\x9b', + 0xd9c: b'\x11\r\x9c', + 0xd9d: b'\x11\r\x9d', + 0xd9e: b'\x11\r\x9e', + 0xd9f: b'\x11\r\x9f', + 0xda0: b'\x11\r\xa0', + 0xda1: b'\x11\r\xa1', + 0xda2: b'\x11\r\xa2', + 0xda3: b'\x11\r\xa3', + 0xda4: b'\x11\r\xa4', + 0xda5: b'\x11\r\xa5', + 0xda6: b'\x11\r\xa6', + 0xda7: b'\x11\r\xa7', + 0xda8: b'\x11\r\xa8', + 0xda9: b'\x11\r\xa9', + 0xdaa: b'\x11\r\xaa', + 0xdab: b'\x11\r\xab', + 0xdac: b'\x11\r\xac', + 0xdad: b'\x11\r\xad', + 0xdae: b'\x11\r\xae', + 0xdaf: b'\x11\r\xaf', + 0xdb0: b'\x11\r\xb0', + 0xdb1: b'\x11\r\xb1', + 0xdb2: b'\x11\r\xb2', + 0xdb3: b'\x11\r\xb3', + 0xdb4: b'\x11\r\xb4', + 0xdb5: b'\x11\r\xb5', + 0xdb6: b'\x11\r\xb6', + 0xdb7: b'\x11\r\xb7', + 0xdb8: b'\x11\r\xb8', + 0xdb9: b'\x11\r\xb9', + 0xdba: b'\x11\r\xba', + 0xdbb: b'\x11\r\xbb', + 0xdbc: b'\x11\r\xbc', + 0xdbd: b'\x11\r\xbd', + 0xdbe: b'\x11\r\xbe', + 0xdbf: b'\x11\r\xbf', + 0xdc0: b'\x11\r\xc0', + 0xdc1: b'\x11\r\xc1', + 0xdc2: b'\x11\r\xc2', + 0xdc3: b'\x11\r\xc3', + 0xdc4: b'\x11\r\xc4', + 0xdc5: b'\x11\r\xc5', + 0xdc6: b'\x11\r\xc6', + 0xdc7: b'\x11\r\xc7', + 0xdc8: b'\x11\r\xc8', + 0xdc9: b'\x11\r\xc9', + 0xdca: b'\x11\r\xca', + 0xdcb: b'\x11\r\xcb', + 0xdcc: b'\x11\r\xcc', + 0xdcd: b'\x11\r\xcd', + 0xdce: b'\x11\r\xce', + 0xdcf: b'\x11\r\xcf', + 0xdd0: b'\x11\r\xd0', + 0xdd1: b'\x11\r\xd1', + 0xdd2: b'\x11\r\xd2', + 0xdd3: b'\x11\r\xd3', + 0xdd4: b'\x11\r\xd4', + 0xdd5: b'\x11\r\xd5', + 0xdd6: b'\x11\r\xd6', + 0xdd7: b'\x11\r\xd7', + 0xdd8: b'\x11\r\xd8', + 0xdd9: b'\x11\r\xd9', + 0xdda: b'\x11\r\xda', + 0xddb: b'\x11\r\xdb', + 0xddc: b'\x11\r\xdc', + 0xddd: b'\x11\r\xdd', + 0xdde: b'\x11\r\xde', + 0xddf: b'\x11\r\xdf', + 0xde0: b'\x11\r\xe0', + 0xde1: b'\x11\r\xe1', + 0xde2: b'\x11\r\xe2', + 0xde3: b'\x11\r\xe3', + 0xde4: b'\x11\r\xe4', + 0xde5: b'\x11\r\xe5', + 0xde6: b'\x11\r\xe6', + 0xde7: b'\x11\r\xe7', + 0xde8: b'\x11\r\xe8', + 0xde9: b'\x11\r\xe9', + 0xdea: b'\x11\r\xea', + 0xdeb: b'\x11\r\xeb', + 0xdec: b'\x11\r\xec', + 0xded: b'\x11\r\xed', + 0xdee: b'\x11\r\xee', + 0xdef: b'\x11\r\xef', + 0xdf0: b'\x11\r\xf0', + 0xdf1: b'\x11\r\xf1', + 0xdf2: b'\x11\r\xf2', + 0xdf3: b'\x11\r\xf3', + 0xdf4: b'\x11\r\xf4', + 0xdf5: b'\x11\r\xf5', + 0xdf6: b'\x11\r\xf6', + 0xdf7: b'\x11\r\xf7', + 0xdf8: b'\x11\r\xf8', + 0xdf9: b'\x11\r\xf9', + 0xdfa: b'\x11\r\xfa', + 0xdfb: b'\x11\r\xfb', + 0xdfc: b'\x11\r\xfc', + 0xdfd: b'\x11\r\xfd', + 0xdfe: b'\x11\r\xfe', + 0xdff: b'\x11\r\xff', + 0xe00: b'\x11\x0e\x00', + 0xe01: b'\x11\x0e\x01', + 0xe02: b'\x11\x0e\x02', + 0xe03: b'\x11\x0e\x03', + 0xe04: b'\x11\x0e\x04', + 0xe05: b'\x11\x0e\x05', + 0xe06: b'\x11\x0e\x06', + 0xe07: b'\x11\x0e\x07', + 0xe08: b'\x11\x0e\x08', + 0xe09: b'\x11\x0e\t', + 0xe0a: b'\x11\x0e\n', + 0xe0b: b'\x11\x0e\x0b', + 0xe0c: b'\x11\x0e\x0c', + 0xe0d: b'\x11\x0e\r', + 0xe0e: b'\x11\x0e\x0e', + 0xe0f: b'\x11\x0e\x0f', + 0xe10: b'\x11\x0e\x10', + 0xe11: b'\x11\x0e\x11', + 0xe12: b'\x11\x0e\x12', + 0xe13: b'\x11\x0e\x13', + 0xe14: b'\x11\x0e\x14', + 0xe15: b'\x11\x0e\x15', + 0xe16: b'\x11\x0e\x16', + 0xe17: b'\x11\x0e\x17', + 0xe18: b'\x11\x0e\x18', + 0xe19: b'\x11\x0e\x19', + 0xe1a: b'\x11\x0e\x1a', + 0xe1b: b'\x11\x0e\x1b', + 0xe1c: b'\x11\x0e\x1c', + 0xe1d: b'\x11\x0e\x1d', + 0xe1e: b'\x11\x0e\x1e', + 0xe1f: b'\x11\x0e\x1f', + 0xe20: b'\x11\x0e ', + 0xe21: b'\x11\x0e!', + 0xe22: b'\x11\x0e"', + 0xe23: b'\x11\x0e#', + 0xe24: b'\x11\x0e$', + 0xe25: b'\x11\x0e%', + 0xe26: b'\x11\x0e&', + 0xe27: b"\x11\x0e'", + 0xe28: b'\x11\x0e(', + 0xe29: b'\x11\x0e)', + 0xe2a: b'\x11\x0e*', + 0xe2b: b'\x11\x0e+', + 0xe2c: b'\x11\x0e,', + 0xe2d: b'\x11\x0e-', + 0xe2e: b'\x11\x0e.', + 0xe2f: b'\x11\x0e/', + 0xe30: b'\x11\x0e0', + 0xe31: b'\x11\x0e1', + 0xe32: b'\x11\x0e2', + 0xe33: b'\x11\x0e3', + 0xe34: b'\x11\x0e4', + 0xe35: b'\x11\x0e5', + 0xe36: b'\x11\x0e6', + 0xe37: b'\x11\x0e7', + 0xe38: b'\x11\x0e8', + 0xe39: b'\x11\x0e9', + 0xe3a: b'\x11\x0e:', + 0xe3b: b'\x11\x0e;', + 0xe3c: b'\x11\x0e<', + 0xe3d: b'\x11\x0e=', + 0xe3e: b'\x11\x0e>', + 0xe3f: b'\x11\x0e?', + 0xe40: b'\x11\x0e@', + 0xe41: b'\x11\x0eA', + 0xe42: b'\x11\x0eB', + 0xe43: b'\x11\x0eC', + 0xe44: b'\x11\x0eD', + 0xe45: b'\x11\x0eE', + 0xe46: b'\x11\x0eF', + 0xe47: b'\x11\x0eG', + 0xe48: b'\x11\x0eH', + 0xe49: b'\x11\x0eI', + 0xe4a: b'\x11\x0eJ', + 0xe4b: b'\x11\x0eK', + 0xe4c: b'\x11\x0eL', + 0xe4d: b'\x11\x0eM', + 0xe4e: b'\x11\x0eN', + 0xe4f: b'\x11\x0eO', + 0xe50: b'\x11\x0eP', + 0xe51: b'\x11\x0eQ', + 0xe52: b'\x11\x0eR', + 0xe53: b'\x11\x0eS', + 0xe54: b'\x11\x0eT', + 0xe55: b'\x11\x0eU', + 0xe56: b'\x11\x0eV', + 0xe57: b'\x11\x0eW', + 0xe58: b'\x11\x0eX', + 0xe59: b'\x11\x0eY', + 0xe5a: b'\x11\x0eZ', + 0xe5b: b'\x11\x0e[', + 0xe5c: b'\x11\x0e\\', + 0xe5d: b'\x11\x0e]', + 0xe5e: b'\x11\x0e^', + 0xe5f: b'\x11\x0e_', + 0xe60: b'\x11\x0e`', + 0xe61: b'\x11\x0ea', + 0xe62: b'\x11\x0eb', + 0xe63: b'\x11\x0ec', + 0xe64: b'\x11\x0ed', + 0xe65: b'\x11\x0ee', + 0xe66: b'\x11\x0ef', + 0xe67: b'\x11\x0eg', + 0xe68: b'\x11\x0eh', + 0xe69: b'\x11\x0ei', + 0xe6a: b'\x11\x0ej', + 0xe6b: b'\x11\x0ek', + 0xe6c: b'\x11\x0el', + 0xe6d: b'\x11\x0em', + 0xe6e: b'\x11\x0en', + 0xe6f: b'\x11\x0eo', + 0xe70: b'\x11\x0ep', + 0xe71: b'\x11\x0eq', + 0xe72: b'\x11\x0er', + 0xe73: b'\x11\x0es', + 0xe74: b'\x11\x0et', + 0xe75: b'\x11\x0eu', + 0xe76: b'\x11\x0ev', + 0xe77: b'\x11\x0ew', + 0xe78: b'\x11\x0ex', + 0xe79: b'\x11\x0ey', + 0xe7a: b'\x11\x0ez', + 0xe7b: b'\x11\x0e{', + 0xe7c: b'\x11\x0e|', + 0xe7d: b'\x11\x0e}', + 0xe7e: b'\x11\x0e~', + 0xe7f: b'\x11\x0e\x7f', + 0xe80: b'\x11\x0e\x80', + 0xe81: b'\x11\x0e\x81', + 0xe82: b'\x11\x0e\x82', + 0xe83: b'\x11\x0e\x83', + 0xe84: b'\x11\x0e\x84', + 0xe85: b'\x11\x0e\x85', + 0xe86: b'\x11\x0e\x86', + 0xe87: b'\x11\x0e\x87', + 0xe88: b'\x11\x0e\x88', + 0xe89: b'\x11\x0e\x89', + 0xe8a: b'\x11\x0e\x8a', + 0xe8b: b'\x11\x0e\x8b', + 0xe8c: b'\x11\x0e\x8c', + 0xe8d: b'\x11\x0e\x8d', + 0xe8e: b'\x11\x0e\x8e', + 0xe8f: b'\x11\x0e\x8f', + 0xe90: b'\x11\x0e\x90', + 0xe91: b'\x11\x0e\x91', + 0xe92: b'\x11\x0e\x92', + 0xe93: b'\x11\x0e\x93', + 0xe94: b'\x11\x0e\x94', + 0xe95: b'\x11\x0e\x95', + 0xe96: b'\x11\x0e\x96', + 0xe97: b'\x11\x0e\x97', + 0xe98: b'\x11\x0e\x98', + 0xe99: b'\x11\x0e\x99', + 0xe9a: b'\x11\x0e\x9a', + 0xe9b: b'\x11\x0e\x9b', + 0xe9c: b'\x11\x0e\x9c', + 0xe9d: b'\x11\x0e\x9d', + 0xe9e: b'\x11\x0e\x9e', + 0xe9f: b'\x11\x0e\x9f', + 0xea0: b'\x11\x0e\xa0', + 0xea1: b'\x11\x0e\xa1', + 0xea2: b'\x11\x0e\xa2', + 0xea3: b'\x11\x0e\xa3', + 0xea4: b'\x11\x0e\xa4', + 0xea5: b'\x11\x0e\xa5', + 0xea6: b'\x11\x0e\xa6', + 0xea7: b'\x11\x0e\xa7', + 0xea8: b'\x11\x0e\xa8', + 0xea9: b'\x11\x0e\xa9', + 0xeaa: b'\x11\x0e\xaa', + 0xeab: b'\x11\x0e\xab', + 0xeac: b'\x11\x0e\xac', + 0xead: b'\x11\x0e\xad', + 0xeae: b'\x11\x0e\xae', + 0xeaf: b'\x11\x0e\xaf', + 0xeb0: b'\x11\x0e\xb0', + 0xeb1: b'\x11\x0e\xb1', + 0xeb2: b'\x11\x0e\xb2', + 0xeb3: b'\x11\x0e\xb3', + 0xeb4: b'\x11\x0e\xb4', + 0xeb5: b'\x11\x0e\xb5', + 0xeb6: b'\x11\x0e\xb6', + 0xeb7: b'\x11\x0e\xb7', + 0xeb8: b'\x11\x0e\xb8', + 0xeb9: b'\x11\x0e\xb9', + 0xeba: b'\x11\x0e\xba', + 0xebb: b'\x11\x0e\xbb', + 0xebc: b'\x11\x0e\xbc', + 0xebd: b'\x11\x0e\xbd', + 0xebe: b'\x11\x0e\xbe', + 0xebf: b'\x11\x0e\xbf', + 0xec0: b'\x11\x0e\xc0', + 0xec1: b'\x11\x0e\xc1', + 0xec2: b'\x11\x0e\xc2', + 0xec3: b'\x11\x0e\xc3', + 0xec4: b'\x11\x0e\xc4', + 0xec5: b'\x11\x0e\xc5', + 0xec6: b'\x11\x0e\xc6', + 0xec7: b'\x11\x0e\xc7', + 0xec8: b'\x11\x0e\xc8', + 0xec9: b'\x11\x0e\xc9', + 0xeca: b'\x11\x0e\xca', + 0xecb: b'\x11\x0e\xcb', + 0xecc: b'\x11\x0e\xcc', + 0xecd: b'\x11\x0e\xcd', + 0xece: b'\x11\x0e\xce', + 0xecf: b'\x11\x0e\xcf', + 0xed0: b'\x11\x0e\xd0', + 0xed1: b'\x11\x0e\xd1', + 0xed2: b'\x11\x0e\xd2', + 0xed3: b'\x11\x0e\xd3', + 0xed4: b'\x11\x0e\xd4', + 0xed5: b'\x11\x0e\xd5', + 0xed6: b'\x11\x0e\xd6', + 0xed7: b'\x11\x0e\xd7', + 0xed8: b'\x11\x0e\xd8', + 0xed9: b'\x11\x0e\xd9', + 0xeda: b'\x11\x0e\xda', + 0xedb: b'\x11\x0e\xdb', + 0xedc: b'\x11\x0e\xdc', + 0xedd: b'\x11\x0e\xdd', + 0xede: b'\x11\x0e\xde', + 0xedf: b'\x11\x0e\xdf', + 0xee0: b'\x11\x0e\xe0', + 0xee1: b'\x11\x0e\xe1', + 0xee2: b'\x11\x0e\xe2', + 0xee3: b'\x11\x0e\xe3', + 0xee4: b'\x11\x0e\xe4', + 0xee5: b'\x11\x0e\xe5', + 0xee6: b'\x11\x0e\xe6', + 0xee7: b'\x11\x0e\xe7', + 0xee8: b'\x11\x0e\xe8', + 0xee9: b'\x11\x0e\xe9', + 0xeea: b'\x11\x0e\xea', + 0xeeb: b'\x11\x0e\xeb', + 0xeec: b'\x11\x0e\xec', + 0xeed: b'\x11\x0e\xed', + 0xeee: b'\x11\x0e\xee', + 0xeef: b'\x11\x0e\xef', + 0xef0: b'\x11\x0e\xf0', + 0xef1: b'\x11\x0e\xf1', + 0xef2: b'\x11\x0e\xf2', + 0xef3: b'\x11\x0e\xf3', + 0xef4: b'\x11\x0e\xf4', + 0xef5: b'\x11\x0e\xf5', + 0xef6: b'\x11\x0e\xf6', + 0xef7: b'\x11\x0e\xf7', + 0xef8: b'\x11\x0e\xf8', + 0xef9: b'\x11\x0e\xf9', + 0xefa: b'\x11\x0e\xfa', + 0xefb: b'\x11\x0e\xfb', + 0xefc: b'\x11\x0e\xfc', + 0xefd: b'\x11\x0e\xfd', + 0xefe: b'\x11\x0e\xfe', + 0xeff: b'\x11\x0e\xff', + 0xf00: b'\x11\x0f\x00', + 0xf01: b'\x11\x0f\x01', + 0xf02: b'\x11\x0f\x02', + 0xf03: b'\x11\x0f\x03', + 0xf04: b'\x11\x0f\x04', + 0xf05: b'\x11\x0f\x05', + 0xf06: b'\x11\x0f\x06', + 0xf07: b'\x11\x0f\x07', + 0xf08: b'\x11\x0f\x08', + 0xf09: b'\x11\x0f\t', + 0xf0a: b'\x11\x0f\n', + 0xf0b: b'\x11\x0f\x0b', + 0xf0c: b'\x11\x0f\x0c', + 0xf0d: b'\x11\x0f\r', + 0xf0e: b'\x11\x0f\x0e', + 0xf0f: b'\x11\x0f\x0f', + 0xf10: b'\x11\x0f\x10', + 0xf11: b'\x11\x0f\x11', + 0xf12: b'\x11\x0f\x12', + 0xf13: b'\x11\x0f\x13', + 0xf14: b'\x11\x0f\x14', + 0xf15: b'\x11\x0f\x15', + 0xf16: b'\x11\x0f\x16', + 0xf17: b'\x11\x0f\x17', + 0xf18: b'\x11\x0f\x18', + 0xf19: b'\x11\x0f\x19', + 0xf1a: b'\x11\x0f\x1a', + 0xf1b: b'\x11\x0f\x1b', + 0xf1c: b'\x11\x0f\x1c', + 0xf1d: b'\x11\x0f\x1d', + 0xf1e: b'\x11\x0f\x1e', + 0xf1f: b'\x11\x0f\x1f', + 0xf20: b'\x11\x0f ', + 0xf21: b'\x11\x0f!', + 0xf22: b'\x11\x0f"', + 0xf23: b'\x11\x0f#', + 0xf24: b'\x11\x0f$', + 0xf25: b'\x11\x0f%', + 0xf26: b'\x11\x0f&', + 0xf27: b"\x11\x0f'", + 0xf28: b'\x11\x0f(', + 0xf29: b'\x11\x0f)', + 0xf2a: b'\x11\x0f*', + 0xf2b: b'\x11\x0f+', + 0xf2c: b'\x11\x0f,', + 0xf2d: b'\x11\x0f-', + 0xf2e: b'\x11\x0f.', + 0xf2f: b'\x11\x0f/', + 0xf30: b'\x11\x0f0', + 0xf31: b'\x11\x0f1', + 0xf32: b'\x11\x0f2', + 0xf33: b'\x11\x0f3', + 0xf34: b'\x11\x0f4', + 0xf35: b'\x11\x0f5', + 0xf36: b'\x11\x0f6', + 0xf37: b'\x11\x0f7', + 0xf38: b'\x11\x0f8', + 0xf39: b'\x11\x0f9', + 0xf3a: b'\x11\x0f:', + 0xf3b: b'\x11\x0f;', + 0xf3c: b'\x11\x0f<', + 0xf3d: b'\x11\x0f=', + 0xf3e: b'\x11\x0f>', + 0xf3f: b'\x11\x0f?', + 0xf40: b'\x11\x0f@', + 0xf41: b'\x11\x0fA', + 0xf42: b'\x11\x0fB', + 0xf43: b'\x11\x0fC', + 0xf44: b'\x11\x0fD', + 0xf45: b'\x11\x0fE', + 0xf46: b'\x11\x0fF', + 0xf47: b'\x11\x0fG', + 0xf48: b'\x11\x0fH', + 0xf49: b'\x11\x0fI', + 0xf4a: b'\x11\x0fJ', + 0xf4b: b'\x11\x0fK', + 0xf4c: b'\x11\x0fL', + 0xf4d: b'\x11\x0fM', + 0xf4e: b'\x11\x0fN', + 0xf4f: b'\x11\x0fO', + 0xf50: b'\x11\x0fP', + 0xf51: b'\x11\x0fQ', + 0xf52: b'\x11\x0fR', + 0xf53: b'\x11\x0fS', + 0xf54: b'\x11\x0fT', + 0xf55: b'\x11\x0fU', + 0xf56: b'\x11\x0fV', + 0xf57: b'\x11\x0fW', + 0xf58: b'\x11\x0fX', + 0xf59: b'\x11\x0fY', + 0xf5a: b'\x11\x0fZ', + 0xf5b: b'\x11\x0f[', + 0xf5c: b'\x11\x0f\\', + 0xf5d: b'\x11\x0f]', + 0xf5e: b'\x11\x0f^', + 0xf5f: b'\x11\x0f_', + 0xf60: b'\x11\x0f`', + 0xf61: b'\x11\x0fa', + 0xf62: b'\x11\x0fb', + 0xf63: b'\x11\x0fc', + 0xf64: b'\x11\x0fd', + 0xf65: b'\x11\x0fe', + 0xf66: b'\x11\x0ff', + 0xf67: b'\x11\x0fg', + 0xf68: b'\x11\x0fh', + 0xf69: b'\x11\x0fi', + 0xf6a: b'\x11\x0fj', + 0xf6b: b'\x11\x0fk', + 0xf6c: b'\x11\x0fl', + 0xf6d: b'\x11\x0fm', + 0xf6e: b'\x11\x0fn', + 0xf6f: b'\x11\x0fo', + 0xf70: b'\x11\x0fp', + 0xf71: b'\x11\x0fq', + 0xf72: b'\x11\x0fr', + 0xf73: b'\x11\x0fs', + 0xf74: b'\x11\x0ft', + 0xf75: b'\x11\x0fu', + 0xf76: b'\x11\x0fv', + 0xf77: b'\x11\x0fw', + 0xf78: b'\x11\x0fx', + 0xf79: b'\x11\x0fy', + 0xf7a: b'\x11\x0fz', + 0xf7b: b'\x11\x0f{', + 0xf7c: b'\x11\x0f|', + 0xf7d: b'\x11\x0f}', + 0xf7e: b'\x11\x0f~', + 0xf7f: b'\x11\x0f\x7f', + 0xf80: b'\x11\x0f\x80', + 0xf81: b'\x11\x0f\x81', + 0xf82: b'\x11\x0f\x82', + 0xf83: b'\x11\x0f\x83', + 0xf84: b'\x11\x0f\x84', + 0xf85: b'\x11\x0f\x85', + 0xf86: b'\x11\x0f\x86', + 0xf87: b'\x11\x0f\x87', + 0xf88: b'\x11\x0f\x88', + 0xf89: b'\x11\x0f\x89', + 0xf8a: b'\x11\x0f\x8a', + 0xf8b: b'\x11\x0f\x8b', + 0xf8c: b'\x11\x0f\x8c', + 0xf8d: b'\x11\x0f\x8d', + 0xf8e: b'\x11\x0f\x8e', + 0xf8f: b'\x11\x0f\x8f', + 0xf90: b'\x11\x0f\x90', + 0xf91: b'\x11\x0f\x91', + 0xf92: b'\x11\x0f\x92', + 0xf93: b'\x11\x0f\x93', + 0xf94: b'\x11\x0f\x94', + 0xf95: b'\x11\x0f\x95', + 0xf96: b'\x11\x0f\x96', + 0xf97: b'\x11\x0f\x97', + 0xf98: b'\x11\x0f\x98', + 0xf99: b'\x11\x0f\x99', + 0xf9a: b'\x11\x0f\x9a', + 0xf9b: b'\x11\x0f\x9b', + 0xf9c: b'\x11\x0f\x9c', + 0xf9d: b'\x11\x0f\x9d', + 0xf9e: b'\x11\x0f\x9e', + 0xf9f: b'\x11\x0f\x9f', + 0xfa0: b'\x11\x0f\xa0', + 0xfa1: b'\x11\x0f\xa1', + 0xfa2: b'\x11\x0f\xa2', + 0xfa3: b'\x11\x0f\xa3', + 0xfa4: b'\x11\x0f\xa4', + 0xfa5: b'\x11\x0f\xa5', + 0xfa6: b'\x11\x0f\xa6', + 0xfa7: b'\x11\x0f\xa7', + 0xfa8: b'\x11\x0f\xa8', + 0xfa9: b'\x11\x0f\xa9', + 0xfaa: b'\x11\x0f\xaa', + 0xfab: b'\x11\x0f\xab', + 0xfac: b'\x11\x0f\xac', + 0xfad: b'\x11\x0f\xad', + 0xfae: b'\x11\x0f\xae', + 0xfaf: b'\x11\x0f\xaf', + 0xfb0: b'\x11\x0f\xb0', + 0xfb1: b'\x11\x0f\xb1', + 0xfb2: b'\x11\x0f\xb2', + 0xfb3: b'\x11\x0f\xb3', + 0xfb4: b'\x11\x0f\xb4', + 0xfb5: b'\x11\x0f\xb5', + 0xfb6: b'\x11\x0f\xb6', + 0xfb7: b'\x11\x0f\xb7', + 0xfb8: b'\x11\x0f\xb8', + 0xfb9: b'\x11\x0f\xb9', + 0xfba: b'\x11\x0f\xba', + 0xfbb: b'\x11\x0f\xbb', + 0xfbc: b'\x11\x0f\xbc', + 0xfbd: b'\x11\x0f\xbd', + 0xfbe: b'\x11\x0f\xbe', + 0xfbf: b'\x11\x0f\xbf', + 0xfc0: b'\x11\x0f\xc0', + 0xfc1: b'\x11\x0f\xc1', + 0xfc2: b'\x11\x0f\xc2', + 0xfc3: b'\x11\x0f\xc3', + 0xfc4: b'\x11\x0f\xc4', + 0xfc5: b'\x11\x0f\xc5', + 0xfc6: b'\x11\x0f\xc6', + 0xfc7: b'\x11\x0f\xc7', + 0xfc8: b'\x11\x0f\xc8', + 0xfc9: b'\x11\x0f\xc9', + 0xfca: b'\x11\x0f\xca', + 0xfcb: b'\x11\x0f\xcb', + 0xfcc: b'\x11\x0f\xcc', + 0xfcd: b'\x11\x0f\xcd', + 0xfce: b'\x11\x0f\xce', + 0xfcf: b'\x11\x0f\xcf', + 0xfd0: b'\x11\x0f\xd0', + 0xfd1: b'\x11\x0f\xd1', + 0xfd2: b'\x11\x0f\xd2', + 0xfd3: b'\x11\x0f\xd3', + 0xfd4: b'\x11\x0f\xd4', + 0xfd5: b'\x11\x0f\xd5', + 0xfd6: b'\x11\x0f\xd6', + 0xfd7: b'\x11\x0f\xd7', + 0xfd8: b'\x11\x0f\xd8', + 0xfd9: b'\x11\x0f\xd9', + 0xfda: b'\x11\x0f\xda', + 0xfdb: b'\x11\x0f\xdb', + 0xfdc: b'\x11\x0f\xdc', + 0xfdd: b'\x11\x0f\xdd', + 0xfde: b'\x11\x0f\xde', + 0xfdf: b'\x11\x0f\xdf', + 0xfe0: b'\x11\x0f\xe0', + 0xfe1: b'\x11\x0f\xe1', + 0xfe2: b'\x11\x0f\xe2', + 0xfe3: b'\x11\x0f\xe3', + 0xfe4: b'\x11\x0f\xe4', + 0xfe5: b'\x11\x0f\xe5', + 0xfe6: b'\x11\x0f\xe6', + 0xfe7: b'\x11\x0f\xe7', + 0xfe8: b'\x11\x0f\xe8', + 0xfe9: b'\x11\x0f\xe9', + 0xfea: b'\x11\x0f\xea', + 0xfeb: b'\x11\x0f\xeb', + 0xfec: b'\x11\x0f\xec', + 0xfed: b'\x11\x0f\xed', + 0xfee: b'\x11\x0f\xee', + 0xfef: b'\x11\x0f\xef', + 0xff0: b'\x11\x0f\xf0', + 0xff1: b'\x11\x0f\xf1', + 0xff2: b'\x11\x0f\xf2', + 0xff3: b'\x11\x0f\xf3', + 0xff4: b'\x11\x0f\xf4', + 0xff5: b'\x11\x0f\xf5', + 0xff6: b'\x11\x0f\xf6', + 0xff7: b'\x11\x0f\xf7', + 0xff8: b'\x11\x0f\xf8', + 0xff9: b'\x11\x0f\xf9', + 0xffa: b'\x11\x0f\xfa', + 0xffb: b'\x11\x0f\xfb', + 0xffc: b'\x11\x0f\xfc', + 0xffd: b'\x11\x0f\xfd', + 0xffe: b'\x11\x0f\xfe', + 0xfff: b'\x11\x0f\xff', + 0x1000: b'\x11\x10\x00', + 0x1001: b'\x11\x10\x01', + 0x1002: b'\x11\x10\x02', + 0x1003: b'\x11\x10\x03', + 0x1004: b'\x11\x10\x04', + 0x1005: b'\x11\x10\x05', + 0x1006: b'\x11\x10\x06', + 0x1007: b'\x11\x10\x07', + 0x1008: b'\x11\x10\x08', + 0x1009: b'\x11\x10\t', + 0x100a: b'\x11\x10\n', + 0x100b: b'\x11\x10\x0b', + 0x100c: b'\x11\x10\x0c', + 0x100d: b'\x11\x10\r', + 0x100e: b'\x11\x10\x0e', + 0x100f: b'\x11\x10\x0f', + 0x1010: b'\x11\x10\x10', + 0x1011: b'\x11\x10\x11', + 0x1012: b'\x11\x10\x12', + 0x1013: b'\x11\x10\x13', + 0x1014: b'\x11\x10\x14', + 0x1015: b'\x11\x10\x15', + 0x1016: b'\x11\x10\x16', + 0x1017: b'\x11\x10\x17', + 0x1018: b'\x11\x10\x18', + 0x1019: b'\x11\x10\x19', + 0x101a: b'\x11\x10\x1a', + 0x101b: b'\x11\x10\x1b', + 0x101c: b'\x11\x10\x1c', + 0x101d: b'\x11\x10\x1d', + 0x101e: b'\x11\x10\x1e', + 0x101f: b'\x11\x10\x1f', + 0x1020: b'\x11\x10 ', + 0x1021: b'\x11\x10!', + 0x1022: b'\x11\x10"', + 0x1023: b'\x11\x10#', + 0x1024: b'\x11\x10$', + 0x1025: b'\x11\x10%', + 0x1026: b'\x11\x10&', + 0x1027: b"\x11\x10'", + 0x1028: b'\x11\x10(', + 0x1029: b'\x11\x10)', + 0x102a: b'\x11\x10*', + 0x102b: b'\x11\x10+', + 0x102c: b'\x11\x10,', + 0x102d: b'\x11\x10-', + 0x102e: b'\x11\x10.', + 0x102f: b'\x11\x10/', + 0x1030: b'\x11\x100', + 0x1031: b'\x11\x101', + 0x1032: b'\x11\x102', + 0x1033: b'\x11\x103', + 0x1034: b'\x11\x104', + 0x1035: b'\x11\x105', + 0x1036: b'\x11\x106', + 0x1037: b'\x11\x107', + 0x1038: b'\x11\x108', + 0x1039: b'\x11\x109', + 0x103a: b'\x11\x10:', + 0x103b: b'\x11\x10;', + 0x103c: b'\x11\x10<', + 0x103d: b'\x11\x10=', + 0x103e: b'\x11\x10>', + 0x103f: b'\x11\x10?', + 0x1040: b'\x11\x10@', + 0x1041: b'\x11\x10A', + 0x1042: b'\x11\x10B', + 0x1043: b'\x11\x10C', + 0x1044: b'\x11\x10D', + 0x1045: b'\x11\x10E', + 0x1046: b'\x11\x10F', + 0x1047: b'\x11\x10G', + 0x1048: b'\x11\x10H', + 0x1049: b'\x11\x10I', + 0x104a: b'\x11\x10J', + 0x104b: b'\x11\x10K', + 0x104c: b'\x11\x10L', + 0x104d: b'\x11\x10M', + 0x104e: b'\x11\x10N', + 0x104f: b'\x11\x10O', + 0x1050: b'\x11\x10P', + 0x1051: b'\x11\x10Q', + 0x1052: b'\x11\x10R', + 0x1053: b'\x11\x10S', + 0x1054: b'\x11\x10T', + 0x1055: b'\x11\x10U', + 0x1056: b'\x11\x10V', + 0x1057: b'\x11\x10W', + 0x1058: b'\x11\x10X', + 0x1059: b'\x11\x10Y', + 0x105a: b'\x11\x10Z', + 0x105b: b'\x11\x10[', + 0x105c: b'\x11\x10\\', + 0x105d: b'\x11\x10]', + 0x105e: b'\x11\x10^', + 0x105f: b'\x11\x10_', + 0x1060: b'\x11\x10`', + 0x1061: b'\x11\x10a', + 0x1062: b'\x11\x10b', + 0x1063: b'\x11\x10c', + 0x1064: b'\x11\x10d', + 0x1065: b'\x11\x10e', + 0x1066: b'\x11\x10f', + 0x1067: b'\x11\x10g', + 0x1068: b'\x11\x10h', + 0x1069: b'\x11\x10i', + 0x106a: b'\x11\x10j', + 0x106b: b'\x11\x10k', + 0x106c: b'\x11\x10l', + 0x106d: b'\x11\x10m', + 0x106e: b'\x11\x10n', + 0x106f: b'\x11\x10o', + 0x1070: b'\x11\x10p', + 0x1071: b'\x11\x10q', + 0x1072: b'\x11\x10r', + 0x1073: b'\x11\x10s', + 0x1074: b'\x11\x10t', + 0x1075: b'\x11\x10u', + 0x1076: b'\x11\x10v', + 0x1077: b'\x11\x10w', + 0x1078: b'\x11\x10x', + 0x1079: b'\x11\x10y', + 0x107a: b'\x11\x10z', + 0x107b: b'\x11\x10{', + 0x107c: b'\x11\x10|', + 0x107d: b'\x11\x10}', + 0x107e: b'\x11\x10~', + 0x107f: b'\x11\x10\x7f', + 0x1080: b'\x11\x10\x80', + 0x1081: b'\x11\x10\x81', + 0x1082: b'\x11\x10\x82', + 0x1083: b'\x11\x10\x83', + 0x1084: b'\x11\x10\x84', + 0x1085: b'\x11\x10\x85', + 0x1086: b'\x11\x10\x86', + 0x1087: b'\x11\x10\x87', + 0x1088: b'\x11\x10\x88', + 0x1089: b'\x11\x10\x89', + 0x108a: b'\x11\x10\x8a', + 0x108b: b'\x11\x10\x8b', + 0x108c: b'\x11\x10\x8c', + 0x108d: b'\x11\x10\x8d', + 0x108e: b'\x11\x10\x8e', + 0x108f: b'\x11\x10\x8f', + 0x1090: b'\x11\x10\x90', + 0x1091: b'\x11\x10\x91', + 0x1092: b'\x11\x10\x92', + 0x1093: b'\x11\x10\x93', + 0x1094: b'\x11\x10\x94', + 0x1095: b'\x11\x10\x95', + 0x1096: b'\x11\x10\x96', + 0x1097: b'\x11\x10\x97', + 0x1098: b'\x11\x10\x98', + 0x1099: b'\x11\x10\x99', + 0x109a: b'\x11\x10\x9a', + 0x109b: b'\x11\x10\x9b', + 0x109c: b'\x11\x10\x9c', + 0x109d: b'\x11\x10\x9d', + 0x109e: b'\x11\x10\x9e', + 0x109f: b'\x11\x10\x9f', + 0x10a0: b'\x11\x10\xa0', + 0x10a1: b'\x11\x10\xa1', + 0x10a2: b'\x11\x10\xa2', + 0x10a3: b'\x11\x10\xa3', + 0x10a4: b'\x11\x10\xa4', + 0x10a5: b'\x11\x10\xa5', + 0x10a6: b'\x11\x10\xa6', + 0x10a7: b'\x11\x10\xa7', + 0x10a8: b'\x11\x10\xa8', + 0x10a9: b'\x11\x10\xa9', + 0x10aa: b'\x11\x10\xaa', + 0x10ab: b'\x11\x10\xab', + 0x10ac: b'\x11\x10\xac', + 0x10ad: b'\x11\x10\xad', + 0x10ae: b'\x11\x10\xae', + 0x10af: b'\x11\x10\xaf', + 0x10b0: b'\x11\x10\xb0', + 0x10b1: b'\x11\x10\xb1', + 0x10b2: b'\x11\x10\xb2', + 0x10b3: b'\x11\x10\xb3', + 0x10b4: b'\x11\x10\xb4', + 0x10b5: b'\x11\x10\xb5', + 0x10b6: b'\x11\x10\xb6', + 0x10b7: b'\x11\x10\xb7', + 0x10b8: b'\x11\x10\xb8', + 0x10b9: b'\x11\x10\xb9', + 0x10ba: b'\x11\x10\xba', + 0x10bb: b'\x11\x10\xbb', + 0x10bc: b'\x11\x10\xbc', + 0x10bd: b'\x11\x10\xbd', + 0x10be: b'\x11\x10\xbe', + 0x10bf: b'\x11\x10\xbf', + 0x10c0: b'\x11\x10\xc0', + 0x10c1: b'\x11\x10\xc1', + 0x10c2: b'\x11\x10\xc2', + 0x10c3: b'\x11\x10\xc3', + 0x10c4: b'\x11\x10\xc4', + 0x10c5: b'\x11\x10\xc5', + 0x10c6: b'\x11\x10\xc6', + 0x10c7: b'\x11\x10\xc7', + 0x10c8: b'\x11\x10\xc8', + 0x10c9: b'\x11\x10\xc9', + 0x10ca: b'\x11\x10\xca', + 0x10cb: b'\x11\x10\xcb', + 0x10cc: b'\x11\x10\xcc', + 0x10cd: b'\x11\x10\xcd', + 0x10ce: b'\x11\x10\xce', + 0x10cf: b'\x11\x10\xcf', + 0x10d0: b'\x11\x10\xd0', + 0x10d1: b'\x11\x10\xd1', + 0x10d2: b'\x11\x10\xd2', + 0x10d3: b'\x11\x10\xd3', + 0x10d4: b'\x11\x10\xd4', + 0x10d5: b'\x11\x10\xd5', + 0x10d6: b'\x11\x10\xd6', + 0x10d7: b'\x11\x10\xd7', + 0x10d8: b'\x11\x10\xd8', + 0x10d9: b'\x11\x10\xd9', + 0x10da: b'\x11\x10\xda', + 0x10db: b'\x11\x10\xdb', + 0x10dc: b'\x11\x10\xdc', + 0x10dd: b'\x11\x10\xdd', + 0x10de: b'\x11\x10\xde', + 0x10df: b'\x11\x10\xdf', + 0x10e0: b'\x11\x10\xe0', + 0x10e1: b'\x11\x10\xe1', + 0x10e2: b'\x11\x10\xe2', + 0x10e3: b'\x11\x10\xe3', + 0x10e4: b'\x11\x10\xe4', + 0x10e5: b'\x11\x10\xe5', + 0x10e6: b'\x11\x10\xe6', + 0x10e7: b'\x11\x10\xe7', + 0x10e8: b'\x11\x10\xe8', + 0x10e9: b'\x11\x10\xe9', + 0x10ea: b'\x11\x10\xea', + 0x10eb: b'\x11\x10\xeb', + 0x10ec: b'\x11\x10\xec', + 0x10ed: b'\x11\x10\xed', + 0x10ee: b'\x11\x10\xee', + 0x10ef: b'\x11\x10\xef', + 0x10f0: b'\x11\x10\xf0', + 0x10f1: b'\x11\x10\xf1', + 0x10f2: b'\x11\x10\xf2', + 0x10f3: b'\x11\x10\xf3', + 0x10f4: b'\x11\x10\xf4', + 0x10f5: b'\x11\x10\xf5', + 0x10f6: b'\x11\x10\xf6', + 0x10f7: b'\x11\x10\xf7', + 0x10f8: b'\x11\x10\xf8', + 0x10f9: b'\x11\x10\xf9', + 0x10fa: b'\x11\x10\xfa', + 0x10fb: b'\x11\x10\xfb', + 0x10fc: b'\x11\x10\xfc', + 0x10fd: b'\x11\x10\xfd', + 0x10fe: b'\x11\x10\xfe', + 0x10ff: b'\x11\x10\xff', + 0x1100: b'\x11\x11\x00', + 0x1101: b'\x11\x11\x01', + 0x1102: b'\x11\x11\x02', + 0x1103: b'\x11\x11\x03', + 0x1104: b'\x11\x11\x04', + 0x1105: b'\x11\x11\x05', + 0x1106: b'\x11\x11\x06', + 0x1107: b'\x11\x11\x07', + 0x1108: b'\x11\x11\x08', + 0x1109: b'\x11\x11\t', + 0x110a: b'\x11\x11\n', + 0x110b: b'\x11\x11\x0b', + 0x110c: b'\x11\x11\x0c', + 0x110d: b'\x11\x11\r', + 0x110e: b'\x11\x11\x0e', + 0x110f: b'\x11\x11\x0f', + 0x1110: b'\x11\x11\x10', + 0x1111: b'\x11\x11\x11', + 0x1112: b'\x11\x11\x12', + 0x1113: b'\x11\x11\x13', + 0x1114: b'\x11\x11\x14', + 0x1115: b'\x11\x11\x15', + 0x1116: b'\x11\x11\x16', + 0x1117: b'\x11\x11\x17', + 0x1118: b'\x11\x11\x18', + 0x1119: b'\x11\x11\x19', + 0x111a: b'\x11\x11\x1a', + 0x111b: b'\x11\x11\x1b', + 0x111c: b'\x11\x11\x1c', + 0x111d: b'\x11\x11\x1d', + 0x111e: b'\x11\x11\x1e', + 0x111f: b'\x11\x11\x1f', + 0x1120: b'\x11\x11 ', + 0x1121: b'\x11\x11!', + 0x1122: b'\x11\x11"', + 0x1123: b'\x11\x11#', + 0x1124: b'\x11\x11$', + 0x1125: b'\x11\x11%', + 0x1126: b'\x11\x11&', + 0x1127: b"\x11\x11'", + 0x1128: b'\x11\x11(', + 0x1129: b'\x11\x11)', + 0x112a: b'\x11\x11*', + 0x112b: b'\x11\x11+', + 0x112c: b'\x11\x11,', + 0x112d: b'\x11\x11-', + 0x112e: b'\x11\x11.', + 0x112f: b'\x11\x11/', + 0x1130: b'\x11\x110', + 0x1131: b'\x11\x111', + 0x1132: b'\x11\x112', + 0x1133: b'\x11\x113', + 0x1134: b'\x11\x114', + 0x1135: b'\x11\x115', + 0x1136: b'\x11\x116', + 0x1137: b'\x11\x117', + 0x1138: b'\x11\x118', + 0x1139: b'\x11\x119', + 0x113a: b'\x11\x11:', + 0x113b: b'\x11\x11;', + 0x113c: b'\x11\x11<', + 0x113d: b'\x11\x11=', + 0x113e: b'\x11\x11>', + 0x113f: b'\x11\x11?', + 0x1140: b'\x11\x11@', + 0x1141: b'\x11\x11A', + 0x1142: b'\x11\x11B', + 0x1143: b'\x11\x11C', + 0x1144: b'\x11\x11D', + 0x1145: b'\x11\x11E', + 0x1146: b'\x11\x11F', + 0x1147: b'\x11\x11G', + 0x1148: b'\x11\x11H', + 0x1149: b'\x11\x11I', + 0x114a: b'\x11\x11J', + 0x114b: b'\x11\x11K', + 0x114c: b'\x11\x11L', + 0x114d: b'\x11\x11M', + 0x114e: b'\x11\x11N', + 0x114f: b'\x11\x11O', + 0x1150: b'\x11\x11P', + 0x1151: b'\x11\x11Q', + 0x1152: b'\x11\x11R', + 0x1153: b'\x11\x11S', + 0x1154: b'\x11\x11T', + 0x1155: b'\x11\x11U', + 0x1156: b'\x11\x11V', + 0x1157: b'\x11\x11W', + 0x1158: b'\x11\x11X', + 0x1159: b'\x11\x11Y', + 0x115a: b'\x11\x11Z', + 0x115b: b'\x11\x11[', + 0x115c: b'\x11\x11\\', + 0x115d: b'\x11\x11]', + 0x115e: b'\x11\x11^', + 0x115f: b'\x11\x11_', + 0x1160: b'\x11\x11`', + 0x1161: b'\x11\x11a', + 0x1162: b'\x11\x11b', + 0x1163: b'\x11\x11c', + 0x1164: b'\x11\x11d', + 0x1165: b'\x11\x11e', + 0x1166: b'\x11\x11f', + 0x1167: b'\x11\x11g', + 0x1168: b'\x11\x11h', + 0x1169: b'\x11\x11i', + 0x116a: b'\x11\x11j', + 0x116b: b'\x11\x11k', + 0x116c: b'\x11\x11l', + 0x116d: b'\x11\x11m', + 0x116e: b'\x11\x11n', + 0x116f: b'\x11\x11o', + 0x1170: b'\x11\x11p', + 0x1171: b'\x11\x11q', + 0x1172: b'\x11\x11r', + 0x1173: b'\x11\x11s', + 0x1174: b'\x11\x11t', + 0x1175: b'\x11\x11u', + 0x1176: b'\x11\x11v', + 0x1177: b'\x11\x11w', + 0x1178: b'\x11\x11x', + 0x1179: b'\x11\x11y', + 0x117a: b'\x11\x11z', + 0x117b: b'\x11\x11{', + 0x117c: b'\x11\x11|', + 0x117d: b'\x11\x11}', + 0x117e: b'\x11\x11~', + 0x117f: b'\x11\x11\x7f', + 0x1180: b'\x11\x11\x80', + 0x1181: b'\x11\x11\x81', + 0x1182: b'\x11\x11\x82', + 0x1183: b'\x11\x11\x83', + 0x1184: b'\x11\x11\x84', + 0x1185: b'\x11\x11\x85', + 0x1186: b'\x11\x11\x86', + 0x1187: b'\x11\x11\x87', + 0x1188: b'\x11\x11\x88', + 0x1189: b'\x11\x11\x89', + 0x118a: b'\x11\x11\x8a', + 0x118b: b'\x11\x11\x8b', + 0x118c: b'\x11\x11\x8c', + 0x118d: b'\x11\x11\x8d', + 0x118e: b'\x11\x11\x8e', + 0x118f: b'\x11\x11\x8f', + 0x1190: b'\x11\x11\x90', + 0x1191: b'\x11\x11\x91', + 0x1192: b'\x11\x11\x92', + 0x1193: b'\x11\x11\x93', + 0x1194: b'\x11\x11\x94', + 0x1195: b'\x11\x11\x95', + 0x1196: b'\x11\x11\x96', + 0x1197: b'\x11\x11\x97', + 0x1198: b'\x11\x11\x98', + 0x1199: b'\x11\x11\x99', + 0x119a: b'\x11\x11\x9a', + 0x119b: b'\x11\x11\x9b', + 0x119c: b'\x11\x11\x9c', + 0x119d: b'\x11\x11\x9d', + 0x119e: b'\x11\x11\x9e', + 0x119f: b'\x11\x11\x9f', + 0x11a0: b'\x11\x11\xa0', + 0x11a1: b'\x11\x11\xa1', + 0x11a2: b'\x11\x11\xa2', + 0x11a3: b'\x11\x11\xa3', + 0x11a4: b'\x11\x11\xa4', + 0x11a5: b'\x11\x11\xa5', + 0x11a6: b'\x11\x11\xa6', + 0x11a7: b'\x11\x11\xa7', + 0x11a8: b'\x11\x11\xa8', + 0x11a9: b'\x11\x11\xa9', + 0x11aa: b'\x11\x11\xaa', + 0x11ab: b'\x11\x11\xab', + 0x11ac: b'\x11\x11\xac', + 0x11ad: b'\x11\x11\xad', + 0x11ae: b'\x11\x11\xae', + 0x11af: b'\x11\x11\xaf', + 0x11b0: b'\x11\x11\xb0', + 0x11b1: b'\x11\x11\xb1', + 0x11b2: b'\x11\x11\xb2', + 0x11b3: b'\x11\x11\xb3', + 0x11b4: b'\x11\x11\xb4', + 0x11b5: b'\x11\x11\xb5', + 0x11b6: b'\x11\x11\xb6', + 0x11b7: b'\x11\x11\xb7', + 0x11b8: b'\x11\x11\xb8', + 0x11b9: b'\x11\x11\xb9', + 0x11ba: b'\x11\x11\xba', + 0x11bb: b'\x11\x11\xbb', + 0x11bc: b'\x11\x11\xbc', + 0x11bd: b'\x11\x11\xbd', + 0x11be: b'\x11\x11\xbe', + 0x11bf: b'\x11\x11\xbf', + 0x11c0: b'\x11\x11\xc0', + 0x11c1: b'\x11\x11\xc1', + 0x11c2: b'\x11\x11\xc2', + 0x11c3: b'\x11\x11\xc3', + 0x11c4: b'\x11\x11\xc4', + 0x11c5: b'\x11\x11\xc5', + 0x11c6: b'\x11\x11\xc6', + 0x11c7: b'\x11\x11\xc7', + 0x11c8: b'\x11\x11\xc8', + 0x11c9: b'\x11\x11\xc9', + 0x11ca: b'\x11\x11\xca', + 0x11cb: b'\x11\x11\xcb', + 0x11cc: b'\x11\x11\xcc', + 0x11cd: b'\x11\x11\xcd', + 0x11ce: b'\x11\x11\xce', + 0x11cf: b'\x11\x11\xcf', + 0x11d0: b'\x11\x11\xd0', + 0x11d1: b'\x11\x11\xd1', + 0x11d2: b'\x11\x11\xd2', + 0x11d3: b'\x11\x11\xd3', + 0x11d4: b'\x11\x11\xd4', + 0x11d5: b'\x11\x11\xd5', + 0x11d6: b'\x11\x11\xd6', + 0x11d7: b'\x11\x11\xd7', + 0x11d8: b'\x11\x11\xd8', + 0x11d9: b'\x11\x11\xd9', + 0x11da: b'\x11\x11\xda', + 0x11db: b'\x11\x11\xdb', + 0x11dc: b'\x11\x11\xdc', + 0x11dd: b'\x11\x11\xdd', + 0x11de: b'\x11\x11\xde', + 0x11df: b'\x11\x11\xdf', + 0x11e0: b'\x11\x11\xe0', + 0x11e1: b'\x11\x11\xe1', + 0x11e2: b'\x11\x11\xe2', + 0x11e3: b'\x11\x11\xe3', + 0x11e4: b'\x11\x11\xe4', + 0x11e5: b'\x11\x11\xe5', + 0x11e6: b'\x11\x11\xe6', + 0x11e7: b'\x11\x11\xe7', + 0x11e8: b'\x11\x11\xe8', + 0x11e9: b'\x11\x11\xe9', + 0x11ea: b'\x11\x11\xea', + 0x11eb: b'\x11\x11\xeb', + 0x11ec: b'\x11\x11\xec', + 0x11ed: b'\x11\x11\xed', + 0x11ee: b'\x11\x11\xee', + 0x11ef: b'\x11\x11\xef', + 0x11f0: b'\x11\x11\xf0', + 0x11f1: b'\x11\x11\xf1', + 0x11f2: b'\x11\x11\xf2', + 0x11f3: b'\x11\x11\xf3', + 0x11f4: b'\x11\x11\xf4', + 0x11f5: b'\x11\x11\xf5', + 0x11f6: b'\x11\x11\xf6', + 0x11f7: b'\x11\x11\xf7', + 0x11f8: b'\x11\x11\xf8', + 0x11f9: b'\x11\x11\xf9', + 0x11fa: b'\x11\x11\xfa', + 0x11fb: b'\x11\x11\xfb', + 0x11fc: b'\x11\x11\xfc', + 0x11fd: b'\x11\x11\xfd', + 0x11fe: b'\x11\x11\xfe', + 0x11ff: b'\x11\x11\xff', + 0x1200: b'\x11\x12\x00', + 0x1201: b'\x11\x12\x01', + 0x1202: b'\x11\x12\x02', + 0x1203: b'\x11\x12\x03', + 0x1204: b'\x11\x12\x04', + 0x1205: b'\x11\x12\x05', + 0x1206: b'\x11\x12\x06', + 0x1207: b'\x11\x12\x07', + 0x1208: b'\x11\x12\x08', + 0x1209: b'\x11\x12\t', + 0x120a: b'\x11\x12\n', + 0x120b: b'\x11\x12\x0b', + 0x120c: b'\x11\x12\x0c', + 0x120d: b'\x11\x12\r', + 0x120e: b'\x11\x12\x0e', + 0x120f: b'\x11\x12\x0f', + 0x1210: b'\x11\x12\x10', + 0x1211: b'\x11\x12\x11', + 0x1212: b'\x11\x12\x12', + 0x1213: b'\x11\x12\x13', + 0x1214: b'\x11\x12\x14', + 0x1215: b'\x11\x12\x15', + 0x1216: b'\x11\x12\x16', + 0x1217: b'\x11\x12\x17', + 0x1218: b'\x11\x12\x18', + 0x1219: b'\x11\x12\x19', + 0x121a: b'\x11\x12\x1a', + 0x121b: b'\x11\x12\x1b', + 0x121c: b'\x11\x12\x1c', + 0x121d: b'\x11\x12\x1d', + 0x121e: b'\x11\x12\x1e', + 0x121f: b'\x11\x12\x1f', + 0x1220: b'\x11\x12 ', + 0x1221: b'\x11\x12!', + 0x1222: b'\x11\x12"', + 0x1223: b'\x11\x12#', + 0x1224: b'\x11\x12$', + 0x1225: b'\x11\x12%', + 0x1226: b'\x11\x12&', + 0x1227: b"\x11\x12'", + 0x1228: b'\x11\x12(', + 0x1229: b'\x11\x12)', + 0x122a: b'\x11\x12*', + 0x122b: b'\x11\x12+', + 0x122c: b'\x11\x12,', + 0x122d: b'\x11\x12-', + 0x122e: b'\x11\x12.', + 0x122f: b'\x11\x12/', + 0x1230: b'\x11\x120', + 0x1231: b'\x11\x121', + 0x1232: b'\x11\x122', + 0x1233: b'\x11\x123', + 0x1234: b'\x11\x124', + 0x1235: b'\x11\x125', + 0x1236: b'\x11\x126', + 0x1237: b'\x11\x127', + 0x1238: b'\x11\x128', + 0x1239: b'\x11\x129', + 0x123a: b'\x11\x12:', + 0x123b: b'\x11\x12;', + 0x123c: b'\x11\x12<', + 0x123d: b'\x11\x12=', + 0x123e: b'\x11\x12>', + 0x123f: b'\x11\x12?', + 0x1240: b'\x11\x12@', + 0x1241: b'\x11\x12A', + 0x1242: b'\x11\x12B', + 0x1243: b'\x11\x12C', + 0x1244: b'\x11\x12D', + 0x1245: b'\x11\x12E', + 0x1246: b'\x11\x12F', + 0x1247: b'\x11\x12G', + 0x1248: b'\x11\x12H', + 0x1249: b'\x11\x12I', + 0x124a: b'\x11\x12J', + 0x124b: b'\x11\x12K', + 0x124c: b'\x11\x12L', + 0x124d: b'\x11\x12M', + 0x124e: b'\x11\x12N', + 0x124f: b'\x11\x12O', + 0x1250: b'\x11\x12P', + 0x1251: b'\x11\x12Q', + 0x1252: b'\x11\x12R', + 0x1253: b'\x11\x12S', + 0x1254: b'\x11\x12T', + 0x1255: b'\x11\x12U', + 0x1256: b'\x11\x12V', + 0x1257: b'\x11\x12W', + 0x1258: b'\x11\x12X', + 0x1259: b'\x11\x12Y', + 0x125a: b'\x11\x12Z', + 0x125b: b'\x11\x12[', + 0x125c: b'\x11\x12\\', + 0x125d: b'\x11\x12]', + 0x125e: b'\x11\x12^', + 0x125f: b'\x11\x12_', + 0x1260: b'\x11\x12`', + 0x1261: b'\x11\x12a', + 0x1262: b'\x11\x12b', + 0x1263: b'\x11\x12c', + 0x1264: b'\x11\x12d', + 0x1265: b'\x11\x12e', + 0x1266: b'\x11\x12f', + 0x1267: b'\x11\x12g', + 0x1268: b'\x11\x12h', + 0x1269: b'\x11\x12i', + 0x126a: b'\x11\x12j', + 0x126b: b'\x11\x12k', + 0x126c: b'\x11\x12l', + 0x126d: b'\x11\x12m', + 0x126e: b'\x11\x12n', + 0x126f: b'\x11\x12o', + 0x1270: b'\x11\x12p', + 0x1271: b'\x11\x12q', + 0x1272: b'\x11\x12r', + 0x1273: b'\x11\x12s', + 0x1274: b'\x11\x12t', + 0x1275: b'\x11\x12u', + 0x1276: b'\x11\x12v', + 0x1277: b'\x11\x12w', + 0x1278: b'\x11\x12x', + 0x1279: b'\x11\x12y', + 0x127a: b'\x11\x12z', + 0x127b: b'\x11\x12{', + 0x127c: b'\x11\x12|', + 0x127d: b'\x11\x12}', + 0x127e: b'\x11\x12~', + 0x127f: b'\x11\x12\x7f', + 0x1280: b'\x11\x12\x80', + 0x1281: b'\x11\x12\x81', + 0x1282: b'\x11\x12\x82', + 0x1283: b'\x11\x12\x83', + 0x1284: b'\x11\x12\x84', + 0x1285: b'\x11\x12\x85', + 0x1286: b'\x11\x12\x86', + 0x1287: b'\x11\x12\x87', + 0x1288: b'\x11\x12\x88', + 0x1289: b'\x11\x12\x89', + 0x128a: b'\x11\x12\x8a', + 0x128b: b'\x11\x12\x8b', + 0x128c: b'\x11\x12\x8c', + 0x128d: b'\x11\x12\x8d', + 0x128e: b'\x11\x12\x8e', + 0x128f: b'\x11\x12\x8f', + 0x1290: b'\x11\x12\x90', + 0x1291: b'\x11\x12\x91', + 0x1292: b'\x11\x12\x92', + 0x1293: b'\x11\x12\x93', + 0x1294: b'\x11\x12\x94', + 0x1295: b'\x11\x12\x95', + 0x1296: b'\x11\x12\x96', + 0x1297: b'\x11\x12\x97', + 0x1298: b'\x11\x12\x98', + 0x1299: b'\x11\x12\x99', + 0x129a: b'\x11\x12\x9a', + 0x129b: b'\x11\x12\x9b', + 0x129c: b'\x11\x12\x9c', + 0x129d: b'\x11\x12\x9d', + 0x129e: b'\x11\x12\x9e', + 0x129f: b'\x11\x12\x9f', + 0x12a0: b'\x11\x12\xa0', + 0x12a1: b'\x11\x12\xa1', + 0x12a2: b'\x11\x12\xa2', + 0x12a3: b'\x11\x12\xa3', + 0x12a4: b'\x11\x12\xa4', + 0x12a5: b'\x11\x12\xa5', + 0x12a6: b'\x11\x12\xa6', + 0x12a7: b'\x11\x12\xa7', + 0x12a8: b'\x11\x12\xa8', + 0x12a9: b'\x11\x12\xa9', + 0x12aa: b'\x11\x12\xaa', + 0x12ab: b'\x11\x12\xab', + 0x12ac: b'\x11\x12\xac', + 0x12ad: b'\x11\x12\xad', + 0x12ae: b'\x11\x12\xae', + 0x12af: b'\x11\x12\xaf', + 0x12b0: b'\x11\x12\xb0', + 0x12b1: b'\x11\x12\xb1', + 0x12b2: b'\x11\x12\xb2', + 0x12b3: b'\x11\x12\xb3', + 0x12b4: b'\x11\x12\xb4', + 0x12b5: b'\x11\x12\xb5', + 0x12b6: b'\x11\x12\xb6', + 0x12b7: b'\x11\x12\xb7', + 0x12b8: b'\x11\x12\xb8', + 0x12b9: b'\x11\x12\xb9', + 0x12ba: b'\x11\x12\xba', + 0x12bb: b'\x11\x12\xbb', + 0x12bc: b'\x11\x12\xbc', + 0x12bd: b'\x11\x12\xbd', + 0x12be: b'\x11\x12\xbe', + 0x12bf: b'\x11\x12\xbf', + 0x12c0: b'\x11\x12\xc0', + 0x12c1: b'\x11\x12\xc1', + 0x12c2: b'\x11\x12\xc2', + 0x12c3: b'\x11\x12\xc3', + 0x12c4: b'\x11\x12\xc4', + 0x12c5: b'\x11\x12\xc5', + 0x12c6: b'\x11\x12\xc6', + 0x12c7: b'\x11\x12\xc7', + 0x12c8: b'\x11\x12\xc8', + 0x12c9: b'\x11\x12\xc9', + 0x12ca: b'\x11\x12\xca', + 0x12cb: b'\x11\x12\xcb', + 0x12cc: b'\x11\x12\xcc', + 0x12cd: b'\x11\x12\xcd', + 0x12ce: b'\x11\x12\xce', + 0x12cf: b'\x11\x12\xcf', + 0x12d0: b'\x11\x12\xd0', + 0x12d1: b'\x11\x12\xd1', + 0x12d2: b'\x11\x12\xd2', + 0x12d3: b'\x11\x12\xd3', + 0x12d4: b'\x11\x12\xd4', + 0x12d5: b'\x11\x12\xd5', + 0x12d6: b'\x11\x12\xd6', + 0x12d7: b'\x11\x12\xd7', + 0x12d8: b'\x11\x12\xd8', + 0x12d9: b'\x11\x12\xd9', + 0x12da: b'\x11\x12\xda', + 0x12db: b'\x11\x12\xdb', + 0x12dc: b'\x11\x12\xdc', + 0x12dd: b'\x11\x12\xdd', + 0x12de: b'\x11\x12\xde', + 0x12df: b'\x11\x12\xdf', + 0x12e0: b'\x11\x12\xe0', + 0x12e1: b'\x11\x12\xe1', + 0x12e2: b'\x11\x12\xe2', + 0x12e3: b'\x11\x12\xe3', + 0x12e4: b'\x11\x12\xe4', + 0x12e5: b'\x11\x12\xe5', + 0x12e6: b'\x11\x12\xe6', + 0x12e7: b'\x11\x12\xe7', + 0x12e8: b'\x11\x12\xe8', + 0x12e9: b'\x11\x12\xe9', + 0x12ea: b'\x11\x12\xea', + 0x12eb: b'\x11\x12\xeb', + 0x12ec: b'\x11\x12\xec', + 0x12ed: b'\x11\x12\xed', + 0x12ee: b'\x11\x12\xee', + 0x12ef: b'\x11\x12\xef', + 0x12f0: b'\x11\x12\xf0', + 0x12f1: b'\x11\x12\xf1', + 0x12f2: b'\x11\x12\xf2', + 0x12f3: b'\x11\x12\xf3', + 0x12f4: b'\x11\x12\xf4', + 0x12f5: b'\x11\x12\xf5', + 0x12f6: b'\x11\x12\xf6', + 0x12f7: b'\x11\x12\xf7', + 0x12f8: b'\x11\x12\xf8', + 0x12f9: b'\x11\x12\xf9', + 0x12fa: b'\x11\x12\xfa', + 0x12fb: b'\x11\x12\xfb', + 0x12fc: b'\x11\x12\xfc', + 0x12fd: b'\x11\x12\xfd', + 0x12fe: b'\x11\x12\xfe', + 0x12ff: b'\x11\x12\xff', + 0x1300: b'\x11\x13\x00', + 0x1301: b'\x11\x13\x01', + 0x1302: b'\x11\x13\x02', + 0x1303: b'\x11\x13\x03', + 0x1304: b'\x11\x13\x04', + 0x1305: b'\x11\x13\x05', + 0x1306: b'\x11\x13\x06', + 0x1307: b'\x11\x13\x07', + 0x1308: b'\x11\x13\x08', + 0x1309: b'\x11\x13\t', + 0x130a: b'\x11\x13\n', + 0x130b: b'\x11\x13\x0b', + 0x130c: b'\x11\x13\x0c', + 0x130d: b'\x11\x13\r', + 0x130e: b'\x11\x13\x0e', + 0x130f: b'\x11\x13\x0f', + 0x1310: b'\x11\x13\x10', + 0x1311: b'\x11\x13\x11', + 0x1312: b'\x11\x13\x12', + 0x1313: b'\x11\x13\x13', + 0x1314: b'\x11\x13\x14', + 0x1315: b'\x11\x13\x15', + 0x1316: b'\x11\x13\x16', + 0x1317: b'\x11\x13\x17', + 0x1318: b'\x11\x13\x18', + 0x1319: b'\x11\x13\x19', + 0x131a: b'\x11\x13\x1a', + 0x131b: b'\x11\x13\x1b', + 0x131c: b'\x11\x13\x1c', + 0x131d: b'\x11\x13\x1d', + 0x131e: b'\x11\x13\x1e', + 0x131f: b'\x11\x13\x1f', + 0x1320: b'\x11\x13 ', + 0x1321: b'\x11\x13!', + 0x1322: b'\x11\x13"', + 0x1323: b'\x11\x13#', + 0x1324: b'\x11\x13$', + 0x1325: b'\x11\x13%', + 0x1326: b'\x11\x13&', + 0x1327: b"\x11\x13'", + 0x1328: b'\x11\x13(', + 0x1329: b'\x11\x13)', + 0x132a: b'\x11\x13*', + 0x132b: b'\x11\x13+', + 0x132c: b'\x11\x13,', + 0x132d: b'\x11\x13-', + 0x132e: b'\x11\x13.', + 0x132f: b'\x11\x13/', + 0x1330: b'\x11\x130', + 0x1331: b'\x11\x131', + 0x1332: b'\x11\x132', + 0x1333: b'\x11\x133', + 0x1334: b'\x11\x134', + 0x1335: b'\x11\x135', + 0x1336: b'\x11\x136', + 0x1337: b'\x11\x137', + 0x1338: b'\x11\x138', + 0x1339: b'\x11\x139', + 0x133a: b'\x11\x13:', + 0x133b: b'\x11\x13;', + 0x133c: b'\x11\x13<', + 0x133d: b'\x11\x13=', + 0x133e: b'\x11\x13>', + 0x133f: b'\x11\x13?', + 0x1340: b'\x11\x13@', + 0x1341: b'\x11\x13A', + 0x1342: b'\x11\x13B', + 0x1343: b'\x11\x13C', + 0x1344: b'\x11\x13D', + 0x1345: b'\x11\x13E', + 0x1346: b'\x11\x13F', + 0x1347: b'\x11\x13G', + 0x1348: b'\x11\x13H', + 0x1349: b'\x11\x13I', + 0x134a: b'\x11\x13J', + 0x134b: b'\x11\x13K', + 0x134c: b'\x11\x13L', + 0x134d: b'\x11\x13M', + 0x134e: b'\x11\x13N', + 0x134f: b'\x11\x13O', + 0x1350: b'\x11\x13P', + 0x1351: b'\x11\x13Q', + 0x1352: b'\x11\x13R', + 0x1353: b'\x11\x13S', + 0x1354: b'\x11\x13T', + 0x1355: b'\x11\x13U', + 0x1356: b'\x11\x13V', + 0x1357: b'\x11\x13W', + 0x1358: b'\x11\x13X', + 0x1359: b'\x11\x13Y', + 0x135a: b'\x11\x13Z', + 0x135b: b'\x11\x13[', + 0x135c: b'\x11\x13\\', + 0x135d: b'\x11\x13]', + 0x135e: b'\x11\x13^', + 0x135f: b'\x11\x13_', + 0x1360: b'\x11\x13`', + 0x1361: b'\x11\x13a', + 0x1362: b'\x11\x13b', + 0x1363: b'\x11\x13c', + 0x1364: b'\x11\x13d', + 0x1365: b'\x11\x13e', + 0x1366: b'\x11\x13f', + 0x1367: b'\x11\x13g', + 0x1368: b'\x11\x13h', + 0x1369: b'\x11\x13i', + 0x136a: b'\x11\x13j', + 0x136b: b'\x11\x13k', + 0x136c: b'\x11\x13l', + 0x136d: b'\x11\x13m', + 0x136e: b'\x11\x13n', + 0x136f: b'\x11\x13o', + 0x1370: b'\x11\x13p', + 0x1371: b'\x11\x13q', + 0x1372: b'\x11\x13r', + 0x1373: b'\x11\x13s', + 0x1374: b'\x11\x13t', + 0x1375: b'\x11\x13u', + 0x1376: b'\x11\x13v', + 0x1377: b'\x11\x13w', + 0x1378: b'\x11\x13x', + 0x1379: b'\x11\x13y', + 0x137a: b'\x11\x13z', + 0x137b: b'\x11\x13{', + 0x137c: b'\x11\x13|', + 0x137d: b'\x11\x13}', + 0x137e: b'\x11\x13~', + 0x137f: b'\x11\x13\x7f', + 0x1380: b'\x11\x13\x80', + 0x1381: b'\x11\x13\x81', + 0x1382: b'\x11\x13\x82', + 0x1383: b'\x11\x13\x83', + 0x1384: b'\x11\x13\x84', + 0x1385: b'\x11\x13\x85', + 0x1386: b'\x11\x13\x86', + 0x1387: b'\x11\x13\x87', + 0x1388: b'\x11\x13\x88', + 0x1389: b'\x11\x13\x89', + 0x138a: b'\x11\x13\x8a', + 0x138b: b'\x11\x13\x8b', + 0x138c: b'\x11\x13\x8c', + 0x138d: b'\x11\x13\x8d', + 0x138e: b'\x11\x13\x8e', + 0x138f: b'\x11\x13\x8f', + 0x1390: b'\x11\x13\x90', + 0x1391: b'\x11\x13\x91', + 0x1392: b'\x11\x13\x92', + 0x1393: b'\x11\x13\x93', + 0x1394: b'\x11\x13\x94', + 0x1395: b'\x11\x13\x95', + 0x1396: b'\x11\x13\x96', + 0x1397: b'\x11\x13\x97', + 0x1398: b'\x11\x13\x98', + 0x1399: b'\x11\x13\x99', + 0x139a: b'\x11\x13\x9a', + 0x139b: b'\x11\x13\x9b', + 0x139c: b'\x11\x13\x9c', + 0x139d: b'\x11\x13\x9d', + 0x139e: b'\x11\x13\x9e', + 0x139f: b'\x11\x13\x9f', + 0x13a0: b'\x11\x13\xa0', + 0x13a1: b'\x11\x13\xa1', + 0x13a2: b'\x11\x13\xa2', + 0x13a3: b'\x11\x13\xa3', + 0x13a4: b'\x11\x13\xa4', + 0x13a5: b'\x11\x13\xa5', + 0x13a6: b'\x11\x13\xa6', + 0x13a7: b'\x11\x13\xa7', + 0x13a8: b'\x11\x13\xa8', + 0x13a9: b'\x11\x13\xa9', + 0x13aa: b'\x11\x13\xaa', + 0x13ab: b'\x11\x13\xab', + 0x13ac: b'\x11\x13\xac', + 0x13ad: b'\x11\x13\xad', + 0x13ae: b'\x11\x13\xae', + 0x13af: b'\x11\x13\xaf', + 0x13b0: b'\x11\x13\xb0', + 0x13b1: b'\x11\x13\xb1', + 0x13b2: b'\x11\x13\xb2', + 0x13b3: b'\x11\x13\xb3', + 0x13b4: b'\x11\x13\xb4', + 0x13b5: b'\x11\x13\xb5', + 0x13b6: b'\x11\x13\xb6', + 0x13b7: b'\x11\x13\xb7', + 0x13b8: b'\x11\x13\xb8', + 0x13b9: b'\x11\x13\xb9', + 0x13ba: b'\x11\x13\xba', + 0x13bb: b'\x11\x13\xbb', + 0x13bc: b'\x11\x13\xbc', + 0x13bd: b'\x11\x13\xbd', + 0x13be: b'\x11\x13\xbe', + 0x13bf: b'\x11\x13\xbf', + 0x13c0: b'\x11\x13\xc0', + 0x13c1: b'\x11\x13\xc1', + 0x13c2: b'\x11\x13\xc2', + 0x13c3: b'\x11\x13\xc3', + 0x13c4: b'\x11\x13\xc4', + 0x13c5: b'\x11\x13\xc5', + 0x13c6: b'\x11\x13\xc6', + 0x13c7: b'\x11\x13\xc7', + 0x13c8: b'\x11\x13\xc8', + 0x13c9: b'\x11\x13\xc9', + 0x13ca: b'\x11\x13\xca', + 0x13cb: b'\x11\x13\xcb', + 0x13cc: b'\x11\x13\xcc', + 0x13cd: b'\x11\x13\xcd', + 0x13ce: b'\x11\x13\xce', + 0x13cf: b'\x11\x13\xcf', + 0x13d0: b'\x11\x13\xd0', + 0x13d1: b'\x11\x13\xd1', + 0x13d2: b'\x11\x13\xd2', + 0x13d3: b'\x11\x13\xd3', + 0x13d4: b'\x11\x13\xd4', + 0x13d5: b'\x11\x13\xd5', + 0x13d6: b'\x11\x13\xd6', + 0x13d7: b'\x11\x13\xd7', + 0x13d8: b'\x11\x13\xd8', + 0x13d9: b'\x11\x13\xd9', + 0x13da: b'\x11\x13\xda', + 0x13db: b'\x11\x13\xdb', + 0x13dc: b'\x11\x13\xdc', + 0x13dd: b'\x11\x13\xdd', + 0x13de: b'\x11\x13\xde', + 0x13df: b'\x11\x13\xdf', + 0x13e0: b'\x11\x13\xe0', + 0x13e1: b'\x11\x13\xe1', + 0x13e2: b'\x11\x13\xe2', + 0x13e3: b'\x11\x13\xe3', + 0x13e4: b'\x11\x13\xe4', + 0x13e5: b'\x11\x13\xe5', + 0x13e6: b'\x11\x13\xe6', + 0x13e7: b'\x11\x13\xe7', + 0x13e8: b'\x11\x13\xe8', + 0x13e9: b'\x11\x13\xe9', + 0x13ea: b'\x11\x13\xea', + 0x13eb: b'\x11\x13\xeb', + 0x13ec: b'\x11\x13\xec', + 0x13ed: b'\x11\x13\xed', + 0x13ee: b'\x11\x13\xee', + 0x13ef: b'\x11\x13\xef', + 0x13f0: b'\x11\x13\xf0', + 0x13f1: b'\x11\x13\xf1', + 0x13f2: b'\x11\x13\xf2', + 0x13f3: b'\x11\x13\xf3', + 0x13f4: b'\x11\x13\xf4', + 0x13f5: b'\x11\x13\xf5', + 0x13f6: b'\x11\x13\xf6', + 0x13f7: b'\x11\x13\xf7', + 0x13f8: b'\x11\x13\xf8', + 0x13f9: b'\x11\x13\xf9', + 0x13fa: b'\x11\x13\xfa', + 0x13fb: b'\x11\x13\xfb', + 0x13fc: b'\x11\x13\xfc', + 0x13fd: b'\x11\x13\xfd', + 0x13fe: b'\x11\x13\xfe', + 0x13ff: b'\x11\x13\xff', + 0x1400: b'\x11\x14\x00', + 0x1401: b'\x11\x14\x01', + 0x1402: b'\x11\x14\x02', + 0x1403: b'\x11\x14\x03', + 0x1404: b'\x11\x14\x04', + 0x1405: b'\x11\x14\x05', + 0x1406: b'\x11\x14\x06', + 0x1407: b'\x11\x14\x07', + 0x1408: b'\x11\x14\x08', + 0x1409: b'\x11\x14\t', + 0x140a: b'\x11\x14\n', + 0x140b: b'\x11\x14\x0b', + 0x140c: b'\x11\x14\x0c', + 0x140d: b'\x11\x14\r', + 0x140e: b'\x11\x14\x0e', + 0x140f: b'\x11\x14\x0f', + 0x1410: b'\x11\x14\x10', + 0x1411: b'\x11\x14\x11', + 0x1412: b'\x11\x14\x12', + 0x1413: b'\x11\x14\x13', + 0x1414: b'\x11\x14\x14', + 0x1415: b'\x11\x14\x15', + 0x1416: b'\x11\x14\x16', + 0x1417: b'\x11\x14\x17', + 0x1418: b'\x11\x14\x18', + 0x1419: b'\x11\x14\x19', + 0x141a: b'\x11\x14\x1a', + 0x141b: b'\x11\x14\x1b', + 0x141c: b'\x11\x14\x1c', + 0x141d: b'\x11\x14\x1d', + 0x141e: b'\x11\x14\x1e', + 0x141f: b'\x11\x14\x1f', + 0x1420: b'\x11\x14 ', + 0x1421: b'\x11\x14!', + 0x1422: b'\x11\x14"', + 0x1423: b'\x11\x14#', + 0x1424: b'\x11\x14$', + 0x1425: b'\x11\x14%', + 0x1426: b'\x11\x14&', + 0x1427: b"\x11\x14'", + 0x1428: b'\x11\x14(', + 0x1429: b'\x11\x14)', + 0x142a: b'\x11\x14*', + 0x142b: b'\x11\x14+', + 0x142c: b'\x11\x14,', + 0x142d: b'\x11\x14-', + 0x142e: b'\x11\x14.', + 0x142f: b'\x11\x14/', + 0x1430: b'\x11\x140', + 0x1431: b'\x11\x141', + 0x1432: b'\x11\x142', + 0x1433: b'\x11\x143', + 0x1434: b'\x11\x144', + 0x1435: b'\x11\x145', + 0x1436: b'\x11\x146', + 0x1437: b'\x11\x147', + 0x1438: b'\x11\x148', + 0x1439: b'\x11\x149', + 0x143a: b'\x11\x14:', + 0x143b: b'\x11\x14;', + 0x143c: b'\x11\x14<', + 0x143d: b'\x11\x14=', + 0x143e: b'\x11\x14>', + 0x143f: b'\x11\x14?', + 0x1440: b'\x11\x14@', + 0x1441: b'\x11\x14A', + 0x1442: b'\x11\x14B', + 0x1443: b'\x11\x14C', + 0x1444: b'\x11\x14D', + 0x1445: b'\x11\x14E', + 0x1446: b'\x11\x14F', + 0x1447: b'\x11\x14G', + 0x1448: b'\x11\x14H', + 0x1449: b'\x11\x14I', + 0x144a: b'\x11\x14J', + 0x144b: b'\x11\x14K', + 0x144c: b'\x11\x14L', + 0x144d: b'\x11\x14M', + 0x144e: b'\x11\x14N', + 0x144f: b'\x11\x14O', + 0x1450: b'\x11\x14P', + 0x1451: b'\x11\x14Q', + 0x1452: b'\x11\x14R', + 0x1453: b'\x11\x14S', + 0x1454: b'\x11\x14T', + 0x1455: b'\x11\x14U', + 0x1456: b'\x11\x14V', + 0x1457: b'\x11\x14W', + 0x1458: b'\x11\x14X', + 0x1459: b'\x11\x14Y', + 0x145a: b'\x11\x14Z', + 0x145b: b'\x11\x14[', + 0x145c: b'\x11\x14\\', + 0x145d: b'\x11\x14]', + 0x145e: b'\x11\x14^', + 0x145f: b'\x11\x14_', + 0x1460: b'\x11\x14`', + 0x1461: b'\x11\x14a', + 0x1462: b'\x11\x14b', + 0x1463: b'\x11\x14c', + 0x1464: b'\x11\x14d', + 0x1465: b'\x11\x14e', + 0x1466: b'\x11\x14f', + 0x1467: b'\x11\x14g', + 0x1468: b'\x11\x14h', + 0x1469: b'\x11\x14i', + 0x146a: b'\x11\x14j', + 0x146b: b'\x11\x14k', + 0x146c: b'\x11\x14l', + 0x146d: b'\x11\x14m', + 0x146e: b'\x11\x14n', + 0x146f: b'\x11\x14o', + 0x1470: b'\x11\x14p', + 0x1471: b'\x11\x14q', + 0x1472: b'\x11\x14r', + 0x1473: b'\x11\x14s', + 0x1474: b'\x11\x14t', + 0x1475: b'\x11\x14u', + 0x1476: b'\x11\x14v', + 0x1477: b'\x11\x14w', + 0x1478: b'\x11\x14x', + 0x1479: b'\x11\x14y', + 0x147a: b'\x11\x14z', + 0x147b: b'\x11\x14{', + 0x147c: b'\x11\x14|', + 0x147d: b'\x11\x14}', + 0x147e: b'\x11\x14~', + 0x147f: b'\x11\x14\x7f', + 0x1480: b'\x11\x14\x80', + 0x1481: b'\x11\x14\x81', + 0x1482: b'\x11\x14\x82', + 0x1483: b'\x11\x14\x83', + 0x1484: b'\x11\x14\x84', + 0x1485: b'\x11\x14\x85', + 0x1486: b'\x11\x14\x86', + 0x1487: b'\x11\x14\x87', + 0x1488: b'\x11\x14\x88', + 0x1489: b'\x11\x14\x89', + 0x148a: b'\x11\x14\x8a', + 0x148b: b'\x11\x14\x8b', + 0x148c: b'\x11\x14\x8c', + 0x148d: b'\x11\x14\x8d', + 0x148e: b'\x11\x14\x8e', + 0x148f: b'\x11\x14\x8f', + 0x1490: b'\x11\x14\x90', + 0x1491: b'\x11\x14\x91', + 0x1492: b'\x11\x14\x92', + 0x1493: b'\x11\x14\x93', + 0x1494: b'\x11\x14\x94', + 0x1495: b'\x11\x14\x95', + 0x1496: b'\x11\x14\x96', + 0x1497: b'\x11\x14\x97', + 0x1498: b'\x11\x14\x98', + 0x1499: b'\x11\x14\x99', + 0x149a: b'\x11\x14\x9a', + 0x149b: b'\x11\x14\x9b', + 0x149c: b'\x11\x14\x9c', + 0x149d: b'\x11\x14\x9d', + 0x149e: b'\x11\x14\x9e', + 0x149f: b'\x11\x14\x9f', + 0x14a0: b'\x11\x14\xa0', + 0x14a1: b'\x11\x14\xa1', + 0x14a2: b'\x11\x14\xa2', + 0x14a3: b'\x11\x14\xa3', + 0x14a4: b'\x11\x14\xa4', + 0x14a5: b'\x11\x14\xa5', + 0x14a6: b'\x11\x14\xa6', + 0x14a7: b'\x11\x14\xa7', + 0x14a8: b'\x11\x14\xa8', + 0x14a9: b'\x11\x14\xa9', + 0x14aa: b'\x11\x14\xaa', + 0x14ab: b'\x11\x14\xab', + 0x14ac: b'\x11\x14\xac', + 0x14ad: b'\x11\x14\xad', + 0x14ae: b'\x11\x14\xae', + 0x14af: b'\x11\x14\xaf', + 0x14b0: b'\x11\x14\xb0', + 0x14b1: b'\x11\x14\xb1', + 0x14b2: b'\x11\x14\xb2', + 0x14b3: b'\x11\x14\xb3', + 0x14b4: b'\x11\x14\xb4', + 0x14b5: b'\x11\x14\xb5', + 0x14b6: b'\x11\x14\xb6', + 0x14b7: b'\x11\x14\xb7', + 0x14b8: b'\x11\x14\xb8', + 0x14b9: b'\x11\x14\xb9', + 0x14ba: b'\x11\x14\xba', + 0x14bb: b'\x11\x14\xbb', + 0x14bc: b'\x11\x14\xbc', + 0x14bd: b'\x11\x14\xbd', + 0x14be: b'\x11\x14\xbe', + 0x14bf: b'\x11\x14\xbf', + 0x14c0: b'\x11\x14\xc0', + 0x14c1: b'\x11\x14\xc1', + 0x14c2: b'\x11\x14\xc2', + 0x14c3: b'\x11\x14\xc3', + 0x14c4: b'\x11\x14\xc4', + 0x14c5: b'\x11\x14\xc5', + 0x14c6: b'\x11\x14\xc6', + 0x14c7: b'\x11\x14\xc7', + 0x14c8: b'\x11\x14\xc8', + 0x14c9: b'\x11\x14\xc9', + 0x14ca: b'\x11\x14\xca', + 0x14cb: b'\x11\x14\xcb', + 0x14cc: b'\x11\x14\xcc', + 0x14cd: b'\x11\x14\xcd', + 0x14ce: b'\x11\x14\xce', + 0x14cf: b'\x11\x14\xcf', + 0x14d0: b'\x11\x14\xd0', + 0x14d1: b'\x11\x14\xd1', + 0x14d2: b'\x11\x14\xd2', + 0x14d3: b'\x11\x14\xd3', + 0x14d4: b'\x11\x14\xd4', + 0x14d5: b'\x11\x14\xd5', + 0x14d6: b'\x11\x14\xd6', + 0x14d7: b'\x11\x14\xd7', + 0x14d8: b'\x11\x14\xd8', + 0x14d9: b'\x11\x14\xd9', + 0x14da: b'\x11\x14\xda', + 0x14db: b'\x11\x14\xdb', + 0x14dc: b'\x11\x14\xdc', + 0x14dd: b'\x11\x14\xdd', + 0x14de: b'\x11\x14\xde', + 0x14df: b'\x11\x14\xdf', + 0x14e0: b'\x11\x14\xe0', + 0x14e1: b'\x11\x14\xe1', + 0x14e2: b'\x11\x14\xe2', + 0x14e3: b'\x11\x14\xe3', + 0x14e4: b'\x11\x14\xe4', + 0x14e5: b'\x11\x14\xe5', + 0x14e6: b'\x11\x14\xe6', + 0x14e7: b'\x11\x14\xe7', + 0x14e8: b'\x11\x14\xe8', + 0x14e9: b'\x11\x14\xe9', + 0x14ea: b'\x11\x14\xea', + 0x14eb: b'\x11\x14\xeb', + 0x14ec: b'\x11\x14\xec', + 0x14ed: b'\x11\x14\xed', + 0x14ee: b'\x11\x14\xee', + 0x14ef: b'\x11\x14\xef', + 0x14f0: b'\x11\x14\xf0', + 0x14f1: b'\x11\x14\xf1', + 0x14f2: b'\x11\x14\xf2', + 0x14f3: b'\x11\x14\xf3', + 0x14f4: b'\x11\x14\xf4', + 0x14f5: b'\x11\x14\xf5', + 0x14f6: b'\x11\x14\xf6', + 0x14f7: b'\x11\x14\xf7', + 0x14f8: b'\x11\x14\xf8', + 0x14f9: b'\x11\x14\xf9', + 0x14fa: b'\x11\x14\xfa', + 0x14fb: b'\x11\x14\xfb', + 0x14fc: b'\x11\x14\xfc', + 0x14fd: b'\x11\x14\xfd', + 0x14fe: b'\x11\x14\xfe', + 0x14ff: b'\x11\x14\xff', + 0x1500: b'\x11\x15\x00', + 0x1501: b'\x11\x15\x01', + 0x1502: b'\x11\x15\x02', + 0x1503: b'\x11\x15\x03', + 0x1504: b'\x11\x15\x04', + 0x1505: b'\x11\x15\x05', + 0x1506: b'\x11\x15\x06', + 0x1507: b'\x11\x15\x07', + 0x1508: b'\x11\x15\x08', + 0x1509: b'\x11\x15\t', + 0x150a: b'\x11\x15\n', + 0x150b: b'\x11\x15\x0b', + 0x150c: b'\x11\x15\x0c', + 0x150d: b'\x11\x15\r', + 0x150e: b'\x11\x15\x0e', + 0x150f: b'\x11\x15\x0f', + 0x1510: b'\x11\x15\x10', + 0x1511: b'\x11\x15\x11', + 0x1512: b'\x11\x15\x12', + 0x1513: b'\x11\x15\x13', + 0x1514: b'\x11\x15\x14', + 0x1515: b'\x11\x15\x15', + 0x1516: b'\x11\x15\x16', + 0x1517: b'\x11\x15\x17', + 0x1518: b'\x11\x15\x18', + 0x1519: b'\x11\x15\x19', + 0x151a: b'\x11\x15\x1a', + 0x151b: b'\x11\x15\x1b', + 0x151c: b'\x11\x15\x1c', + 0x151d: b'\x11\x15\x1d', + 0x151e: b'\x11\x15\x1e', + 0x151f: b'\x11\x15\x1f', + 0x1520: b'\x11\x15 ', + 0x1521: b'\x11\x15!', + 0x1522: b'\x11\x15"', + 0x1523: b'\x11\x15#', + 0x1524: b'\x11\x15$', + 0x1525: b'\x11\x15%', + 0x1526: b'\x11\x15&', + 0x1527: b"\x11\x15'", + 0x1528: b'\x11\x15(', + 0x1529: b'\x11\x15)', + 0x152a: b'\x11\x15*', + 0x152b: b'\x11\x15+', + 0x152c: b'\x11\x15,', + 0x152d: b'\x11\x15-', + 0x152e: b'\x11\x15.', + 0x152f: b'\x11\x15/', + 0x1530: b'\x11\x150', + 0x1531: b'\x11\x151', + 0x1532: b'\x11\x152', + 0x1533: b'\x11\x153', + 0x1534: b'\x11\x154', + 0x1535: b'\x11\x155', + 0x1536: b'\x11\x156', + 0x1537: b'\x11\x157', + 0x1538: b'\x11\x158', + 0x1539: b'\x11\x159', + 0x153a: b'\x11\x15:', + 0x153b: b'\x11\x15;', + 0x153c: b'\x11\x15<', + 0x153d: b'\x11\x15=', + 0x153e: b'\x11\x15>', + 0x153f: b'\x11\x15?', + 0x1540: b'\x11\x15@', + 0x1541: b'\x11\x15A', + 0x1542: b'\x11\x15B', + 0x1543: b'\x11\x15C', + 0x1544: b'\x11\x15D', + 0x1545: b'\x11\x15E', + 0x1546: b'\x11\x15F', + 0x1547: b'\x11\x15G', + 0x1548: b'\x11\x15H', + 0x1549: b'\x11\x15I', + 0x154a: b'\x11\x15J', + 0x154b: b'\x11\x15K', + 0x154c: b'\x11\x15L', + 0x154d: b'\x11\x15M', + 0x154e: b'\x11\x15N', + 0x154f: b'\x11\x15O', + 0x1550: b'\x11\x15P', + 0x1551: b'\x11\x15Q', + 0x1552: b'\x11\x15R', + 0x1553: b'\x11\x15S', + 0x1554: b'\x11\x15T', + 0x1555: b'\x11\x15U', + 0x1556: b'\x11\x15V', + 0x1557: b'\x11\x15W', + 0x1558: b'\x11\x15X', + 0x1559: b'\x11\x15Y', + 0x155a: b'\x11\x15Z', + 0x155b: b'\x11\x15[', + 0x155c: b'\x11\x15\\', + 0x155d: b'\x11\x15]', + 0x155e: b'\x11\x15^', + 0x155f: b'\x11\x15_', + 0x1560: b'\x11\x15`', + 0x1561: b'\x11\x15a', + 0x1562: b'\x11\x15b', + 0x1563: b'\x11\x15c', + 0x1564: b'\x11\x15d', + 0x1565: b'\x11\x15e', + 0x1566: b'\x11\x15f', + 0x1567: b'\x11\x15g', + 0x1568: b'\x11\x15h', + 0x1569: b'\x11\x15i', + 0x156a: b'\x11\x15j', + 0x156b: b'\x11\x15k', + 0x156c: b'\x11\x15l', + 0x156d: b'\x11\x15m', + 0x156e: b'\x11\x15n', + 0x156f: b'\x11\x15o', + 0x1570: b'\x11\x15p', + 0x1571: b'\x11\x15q', + 0x1572: b'\x11\x15r', + 0x1573: b'\x11\x15s', + 0x1574: b'\x11\x15t', + 0x1575: b'\x11\x15u', + 0x1576: b'\x11\x15v', + 0x1577: b'\x11\x15w', + 0x1578: b'\x11\x15x', + 0x1579: b'\x11\x15y', + 0x157a: b'\x11\x15z', + 0x157b: b'\x11\x15{', + 0x157c: b'\x11\x15|', + 0x157d: b'\x11\x15}', + 0x157e: b'\x11\x15~', + 0x157f: b'\x11\x15\x7f', + 0x1580: b'\x11\x15\x80', + 0x1581: b'\x11\x15\x81', + 0x1582: b'\x11\x15\x82', + 0x1583: b'\x11\x15\x83', + 0x1584: b'\x11\x15\x84', + 0x1585: b'\x11\x15\x85', + 0x1586: b'\x11\x15\x86', + 0x1587: b'\x11\x15\x87', + 0x1588: b'\x11\x15\x88', + 0x1589: b'\x11\x15\x89', + 0x158a: b'\x11\x15\x8a', + 0x158b: b'\x11\x15\x8b', + 0x158c: b'\x11\x15\x8c', + 0x158d: b'\x11\x15\x8d', + 0x158e: b'\x11\x15\x8e', + 0x158f: b'\x11\x15\x8f', + 0x1590: b'\x11\x15\x90', + 0x1591: b'\x11\x15\x91', + 0x1592: b'\x11\x15\x92', + 0x1593: b'\x11\x15\x93', + 0x1594: b'\x11\x15\x94', + 0x1595: b'\x11\x15\x95', + 0x1596: b'\x11\x15\x96', + 0x1597: b'\x11\x15\x97', + 0x1598: b'\x11\x15\x98', + 0x1599: b'\x11\x15\x99', + 0x159a: b'\x11\x15\x9a', + 0x159b: b'\x11\x15\x9b', + 0x159c: b'\x11\x15\x9c', + 0x159d: b'\x11\x15\x9d', + 0x159e: b'\x11\x15\x9e', + 0x159f: b'\x11\x15\x9f', + 0x15a0: b'\x11\x15\xa0', + 0x15a1: b'\x11\x15\xa1', + 0x15a2: b'\x11\x15\xa2', + 0x15a3: b'\x11\x15\xa3', + 0x15a4: b'\x11\x15\xa4', + 0x15a5: b'\x11\x15\xa5', + 0x15a6: b'\x11\x15\xa6', + 0x15a7: b'\x11\x15\xa7', + 0x15a8: b'\x11\x15\xa8', + 0x15a9: b'\x11\x15\xa9', + 0x15aa: b'\x11\x15\xaa', + 0x15ab: b'\x11\x15\xab', + 0x15ac: b'\x11\x15\xac', + 0x15ad: b'\x11\x15\xad', + 0x15ae: b'\x11\x15\xae', + 0x15af: b'\x11\x15\xaf', + 0x15b0: b'\x11\x15\xb0', + 0x15b1: b'\x11\x15\xb1', + 0x15b2: b'\x11\x15\xb2', + 0x15b3: b'\x11\x15\xb3', + 0x15b4: b'\x11\x15\xb4', + 0x15b5: b'\x11\x15\xb5', + 0x15b6: b'\x11\x15\xb6', + 0x15b7: b'\x11\x15\xb7', + 0x15b8: b'\x11\x15\xb8', + 0x15b9: b'\x11\x15\xb9', + 0x15ba: b'\x11\x15\xba', + 0x15bb: b'\x11\x15\xbb', + 0x15bc: b'\x11\x15\xbc', + 0x15bd: b'\x11\x15\xbd', + 0x15be: b'\x11\x15\xbe', + 0x15bf: b'\x11\x15\xbf', + 0x15c0: b'\x11\x15\xc0', + 0x15c1: b'\x11\x15\xc1', + 0x15c2: b'\x11\x15\xc2', + 0x15c3: b'\x11\x15\xc3', + 0x15c4: b'\x11\x15\xc4', + 0x15c5: b'\x11\x15\xc5', + 0x15c6: b'\x11\x15\xc6', + 0x15c7: b'\x11\x15\xc7', + 0x15c8: b'\x11\x15\xc8', + 0x15c9: b'\x11\x15\xc9', + 0x15ca: b'\x11\x15\xca', + 0x15cb: b'\x11\x15\xcb', + 0x15cc: b'\x11\x15\xcc', + 0x15cd: b'\x11\x15\xcd', + 0x15ce: b'\x11\x15\xce', + 0x15cf: b'\x11\x15\xcf', + 0x15d0: b'\x11\x15\xd0', + 0x15d1: b'\x11\x15\xd1', + 0x15d2: b'\x11\x15\xd2', + 0x15d3: b'\x11\x15\xd3', + 0x15d4: b'\x11\x15\xd4', + 0x15d5: b'\x11\x15\xd5', + 0x15d6: b'\x11\x15\xd6', + 0x15d7: b'\x11\x15\xd7', + 0x15d8: b'\x11\x15\xd8', + 0x15d9: b'\x11\x15\xd9', + 0x15da: b'\x11\x15\xda', + 0x15db: b'\x11\x15\xdb', + 0x15dc: b'\x11\x15\xdc', + 0x15dd: b'\x11\x15\xdd', + 0x15de: b'\x11\x15\xde', + 0x15df: b'\x11\x15\xdf', + 0x15e0: b'\x11\x15\xe0', + 0x15e1: b'\x11\x15\xe1', + 0x15e2: b'\x11\x15\xe2', + 0x15e3: b'\x11\x15\xe3', + 0x15e4: b'\x11\x15\xe4', + 0x15e5: b'\x11\x15\xe5', + 0x15e6: b'\x11\x15\xe6', + 0x15e7: b'\x11\x15\xe7', + 0x15e8: b'\x11\x15\xe8', + 0x15e9: b'\x11\x15\xe9', + 0x15ea: b'\x11\x15\xea', + 0x15eb: b'\x11\x15\xeb', + 0x15ec: b'\x11\x15\xec', + 0x15ed: b'\x11\x15\xed', + 0x15ee: b'\x11\x15\xee', + 0x15ef: b'\x11\x15\xef', + 0x15f0: b'\x11\x15\xf0', + 0x15f1: b'\x11\x15\xf1', + 0x15f2: b'\x11\x15\xf2', + 0x15f3: b'\x11\x15\xf3', + 0x15f4: b'\x11\x15\xf4', + 0x15f5: b'\x11\x15\xf5', + 0x15f6: b'\x11\x15\xf6', + 0x15f7: b'\x11\x15\xf7', + 0x15f8: b'\x11\x15\xf8', + 0x15f9: b'\x11\x15\xf9', + 0x15fa: b'\x11\x15\xfa', + 0x15fb: b'\x11\x15\xfb', + 0x15fc: b'\x11\x15\xfc', + 0x15fd: b'\x11\x15\xfd', + 0x15fe: b'\x11\x15\xfe', + 0x15ff: b'\x11\x15\xff', + 0x1600: b'\x11\x16\x00', + 0x1601: b'\x11\x16\x01', + 0x1602: b'\x11\x16\x02', + 0x1603: b'\x11\x16\x03', + 0x1604: b'\x11\x16\x04', + 0x1605: b'\x11\x16\x05', + 0x1606: b'\x11\x16\x06', + 0x1607: b'\x11\x16\x07', + 0x1608: b'\x11\x16\x08', + 0x1609: b'\x11\x16\t', + 0x160a: b'\x11\x16\n', + 0x160b: b'\x11\x16\x0b', + 0x160c: b'\x11\x16\x0c', + 0x160d: b'\x11\x16\r', + 0x160e: b'\x11\x16\x0e', + 0x160f: b'\x11\x16\x0f', + 0x1610: b'\x11\x16\x10', + 0x1611: b'\x11\x16\x11', + 0x1612: b'\x11\x16\x12', + 0x1613: b'\x11\x16\x13', + 0x1614: b'\x11\x16\x14', + 0x1615: b'\x11\x16\x15', + 0x1616: b'\x11\x16\x16', + 0x1617: b'\x11\x16\x17', + 0x1618: b'\x11\x16\x18', + 0x1619: b'\x11\x16\x19', + 0x161a: b'\x11\x16\x1a', + 0x161b: b'\x11\x16\x1b', + 0x161c: b'\x11\x16\x1c', + 0x161d: b'\x11\x16\x1d', + 0x161e: b'\x11\x16\x1e', + 0x161f: b'\x11\x16\x1f', + 0x1620: b'\x11\x16 ', + 0x1621: b'\x11\x16!', + 0x1622: b'\x11\x16"', + 0x1623: b'\x11\x16#', + 0x1624: b'\x11\x16$', + 0x1625: b'\x11\x16%', + 0x1626: b'\x11\x16&', + 0x1627: b"\x11\x16'", + 0x1628: b'\x11\x16(', + 0x1629: b'\x11\x16)', + 0x162a: b'\x11\x16*', + 0x162b: b'\x11\x16+', + 0x162c: b'\x11\x16,', + 0x162d: b'\x11\x16-', + 0x162e: b'\x11\x16.', + 0x162f: b'\x11\x16/', + 0x1630: b'\x11\x160', + 0x1631: b'\x11\x161', + 0x1632: b'\x11\x162', + 0x1633: b'\x11\x163', + 0x1634: b'\x11\x164', + 0x1635: b'\x11\x165', + 0x1636: b'\x11\x166', + 0x1637: b'\x11\x167', + 0x1638: b'\x11\x168', + 0x1639: b'\x11\x169', + 0x163a: b'\x11\x16:', + 0x163b: b'\x11\x16;', + 0x163c: b'\x11\x16<', + 0x163d: b'\x11\x16=', + 0x163e: b'\x11\x16>', + 0x163f: b'\x11\x16?', + 0x1640: b'\x11\x16@', + 0x1641: b'\x11\x16A', + 0x1642: b'\x11\x16B', + 0x1643: b'\x11\x16C', + 0x1644: b'\x11\x16D', + 0x1645: b'\x11\x16E', + 0x1646: b'\x11\x16F', + 0x1647: b'\x11\x16G', + 0x1648: b'\x11\x16H', + 0x1649: b'\x11\x16I', + 0x164a: b'\x11\x16J', + 0x164b: b'\x11\x16K', + 0x164c: b'\x11\x16L', + 0x164d: b'\x11\x16M', + 0x164e: b'\x11\x16N', + 0x164f: b'\x11\x16O', + 0x1650: b'\x11\x16P', + 0x1651: b'\x11\x16Q', + 0x1652: b'\x11\x16R', + 0x1653: b'\x11\x16S', + 0x1654: b'\x11\x16T', + 0x1655: b'\x11\x16U', + 0x1656: b'\x11\x16V', + 0x1657: b'\x11\x16W', + 0x1658: b'\x11\x16X', + 0x1659: b'\x11\x16Y', + 0x165a: b'\x11\x16Z', + 0x165b: b'\x11\x16[', + 0x165c: b'\x11\x16\\', + 0x165d: b'\x11\x16]', + 0x165e: b'\x11\x16^', + 0x165f: b'\x11\x16_', + 0x1660: b'\x11\x16`', + 0x1661: b'\x11\x16a', + 0x1662: b'\x11\x16b', + 0x1663: b'\x11\x16c', + 0x1664: b'\x11\x16d', + 0x1665: b'\x11\x16e', + 0x1666: b'\x11\x16f', + 0x1667: b'\x11\x16g', + 0x1668: b'\x11\x16h', + 0x1669: b'\x11\x16i', + 0x166a: b'\x11\x16j', + 0x166b: b'\x11\x16k', + 0x166c: b'\x11\x16l', + 0x166d: b'\x11\x16m', + 0x166e: b'\x11\x16n', + 0x166f: b'\x11\x16o', + 0x1670: b'\x11\x16p', + 0x1671: b'\x11\x16q', + 0x1672: b'\x11\x16r', + 0x1673: b'\x11\x16s', + 0x1674: b'\x11\x16t', + 0x1675: b'\x11\x16u', + 0x1676: b'\x11\x16v', + 0x1677: b'\x11\x16w', + 0x1678: b'\x11\x16x', + 0x1679: b'\x11\x16y', + 0x167a: b'\x11\x16z', + 0x167b: b'\x11\x16{', + 0x167c: b'\x11\x16|', + 0x167d: b'\x11\x16}', + 0x167e: b'\x11\x16~', + 0x167f: b'\x11\x16\x7f', + 0x1680: b'\x11\x16\x80', + 0x1681: b'\x11\x16\x81', + 0x1682: b'\x11\x16\x82', + 0x1683: b'\x11\x16\x83', + 0x1684: b'\x11\x16\x84', + 0x1685: b'\x11\x16\x85', + 0x1686: b'\x11\x16\x86', + 0x1687: b'\x11\x16\x87', + 0x1688: b'\x11\x16\x88', + 0x1689: b'\x11\x16\x89', + 0x168a: b'\x11\x16\x8a', + 0x168b: b'\x11\x16\x8b', + 0x168c: b'\x11\x16\x8c', + 0x168d: b'\x11\x16\x8d', + 0x168e: b'\x11\x16\x8e', + 0x168f: b'\x11\x16\x8f', + 0x1690: b'\x11\x16\x90', + 0x1691: b'\x11\x16\x91', + 0x1692: b'\x11\x16\x92', + 0x1693: b'\x11\x16\x93', + 0x1694: b'\x11\x16\x94', + 0x1695: b'\x11\x16\x95', + 0x1696: b'\x11\x16\x96', + 0x1697: b'\x11\x16\x97', + 0x1698: b'\x11\x16\x98', + 0x1699: b'\x11\x16\x99', + 0x169a: b'\x11\x16\x9a', + 0x169b: b'\x11\x16\x9b', + 0x169c: b'\x11\x16\x9c', + 0x169d: b'\x11\x16\x9d', + 0x169e: b'\x11\x16\x9e', + 0x169f: b'\x11\x16\x9f', + 0x16a0: b'\x11\x16\xa0', + 0x16a1: b'\x11\x16\xa1', + 0x16a2: b'\x11\x16\xa2', + 0x16a3: b'\x11\x16\xa3', + 0x16a4: b'\x11\x16\xa4', + 0x16a5: b'\x11\x16\xa5', + 0x16a6: b'\x11\x16\xa6', + 0x16a7: b'\x11\x16\xa7', + 0x16a8: b'\x11\x16\xa8', + 0x16a9: b'\x11\x16\xa9', + 0x16aa: b'\x11\x16\xaa', + 0x16ab: b'\x11\x16\xab', + 0x16ac: b'\x11\x16\xac', + 0x16ad: b'\x11\x16\xad', + 0x16ae: b'\x11\x16\xae', + 0x16af: b'\x11\x16\xaf', + 0x16b0: b'\x11\x16\xb0', + 0x16b1: b'\x11\x16\xb1', + 0x16b2: b'\x11\x16\xb2', + 0x16b3: b'\x11\x16\xb3', + 0x16b4: b'\x11\x16\xb4', + 0x16b5: b'\x11\x16\xb5', + 0x16b6: b'\x11\x16\xb6', + 0x16b7: b'\x11\x16\xb7', + 0x16b8: b'\x11\x16\xb8', + 0x16b9: b'\x11\x16\xb9', + 0x16ba: b'\x11\x16\xba', + 0x16bb: b'\x11\x16\xbb', + 0x16bc: b'\x11\x16\xbc', + 0x16bd: b'\x11\x16\xbd', + 0x16be: b'\x11\x16\xbe', + 0x16bf: b'\x11\x16\xbf', + 0x16c0: b'\x11\x16\xc0', + 0x16c1: b'\x11\x16\xc1', + 0x16c2: b'\x11\x16\xc2', + 0x16c3: b'\x11\x16\xc3', + 0x16c4: b'\x11\x16\xc4', + 0x16c5: b'\x11\x16\xc5', + 0x16c6: b'\x11\x16\xc6', + 0x16c7: b'\x11\x16\xc7', + 0x16c8: b'\x11\x16\xc8', + 0x16c9: b'\x11\x16\xc9', + 0x16ca: b'\x11\x16\xca', + 0x16cb: b'\x11\x16\xcb', + 0x16cc: b'\x11\x16\xcc', + 0x16cd: b'\x11\x16\xcd', + 0x16ce: b'\x11\x16\xce', + 0x16cf: b'\x11\x16\xcf', + 0x16d0: b'\x11\x16\xd0', + 0x16d1: b'\x11\x16\xd1', + 0x16d2: b'\x11\x16\xd2', + 0x16d3: b'\x11\x16\xd3', + 0x16d4: b'\x11\x16\xd4', + 0x16d5: b'\x11\x16\xd5', + 0x16d6: b'\x11\x16\xd6', + 0x16d7: b'\x11\x16\xd7', + 0x16d8: b'\x11\x16\xd8', + 0x16d9: b'\x11\x16\xd9', + 0x16da: b'\x11\x16\xda', + 0x16db: b'\x11\x16\xdb', + 0x16dc: b'\x11\x16\xdc', + 0x16dd: b'\x11\x16\xdd', + 0x16de: b'\x11\x16\xde', + 0x16df: b'\x11\x16\xdf', + 0x16e0: b'\x11\x16\xe0', + 0x16e1: b'\x11\x16\xe1', + 0x16e2: b'\x11\x16\xe2', + 0x16e3: b'\x11\x16\xe3', + 0x16e4: b'\x11\x16\xe4', + 0x16e5: b'\x11\x16\xe5', + 0x16e6: b'\x11\x16\xe6', + 0x16e7: b'\x11\x16\xe7', + 0x16e8: b'\x11\x16\xe8', + 0x16e9: b'\x11\x16\xe9', + 0x16ea: b'\x11\x16\xea', + 0x16eb: b'\x11\x16\xeb', + 0x16ec: b'\x11\x16\xec', + 0x16ed: b'\x11\x16\xed', + 0x16ee: b'\x11\x16\xee', + 0x16ef: b'\x11\x16\xef', + 0x16f0: b'\x11\x16\xf0', + 0x16f1: b'\x11\x16\xf1', + 0x16f2: b'\x11\x16\xf2', + 0x16f3: b'\x11\x16\xf3', + 0x16f4: b'\x11\x16\xf4', + 0x16f5: b'\x11\x16\xf5', + 0x16f6: b'\x11\x16\xf6', + 0x16f7: b'\x11\x16\xf7', + 0x16f8: b'\x11\x16\xf8', + 0x16f9: b'\x11\x16\xf9', + 0x16fa: b'\x11\x16\xfa', + 0x16fb: b'\x11\x16\xfb', + 0x16fc: b'\x11\x16\xfc', + 0x16fd: b'\x11\x16\xfd', + 0x16fe: b'\x11\x16\xfe', + 0x16ff: b'\x11\x16\xff', + 0x1700: b'\x11\x17\x00', + 0x1701: b'\x11\x17\x01', + 0x1702: b'\x11\x17\x02', + 0x1703: b'\x11\x17\x03', + 0x1704: b'\x11\x17\x04', + 0x1705: b'\x11\x17\x05', + 0x1706: b'\x11\x17\x06', + 0x1707: b'\x11\x17\x07', + 0x1708: b'\x11\x17\x08', + 0x1709: b'\x11\x17\t', + 0x170a: b'\x11\x17\n', + 0x170b: b'\x11\x17\x0b', + 0x170c: b'\x11\x17\x0c', + 0x170d: b'\x11\x17\r', + 0x170e: b'\x11\x17\x0e', + 0x170f: b'\x11\x17\x0f', + 0x1710: b'\x11\x17\x10', + 0x1711: b'\x11\x17\x11', + 0x1712: b'\x11\x17\x12', + 0x1713: b'\x11\x17\x13', + 0x1714: b'\x11\x17\x14', + 0x1715: b'\x11\x17\x15', + 0x1716: b'\x11\x17\x16', + 0x1717: b'\x11\x17\x17', + 0x1718: b'\x11\x17\x18', + 0x1719: b'\x11\x17\x19', + 0x171a: b'\x11\x17\x1a', + 0x171b: b'\x11\x17\x1b', + 0x171c: b'\x11\x17\x1c', + 0x171d: b'\x11\x17\x1d', + 0x171e: b'\x11\x17\x1e', + 0x171f: b'\x11\x17\x1f', + 0x1720: b'\x11\x17 ', + 0x1721: b'\x11\x17!', + 0x1722: b'\x11\x17"', + 0x1723: b'\x11\x17#', + 0x1724: b'\x11\x17$', + 0x1725: b'\x11\x17%', + 0x1726: b'\x11\x17&', + 0x1727: b"\x11\x17'", + 0x1728: b'\x11\x17(', + 0x1729: b'\x11\x17)', + 0x172a: b'\x11\x17*', + 0x172b: b'\x11\x17+', + 0x172c: b'\x11\x17,', + 0x172d: b'\x11\x17-', + 0x172e: b'\x11\x17.', + 0x172f: b'\x11\x17/', + 0x1730: b'\x11\x170', + 0x1731: b'\x11\x171', + 0x1732: b'\x11\x172', + 0x1733: b'\x11\x173', + 0x1734: b'\x11\x174', + 0x1735: b'\x11\x175', + 0x1736: b'\x11\x176', + 0x1737: b'\x11\x177', + 0x1738: b'\x11\x178', + 0x1739: b'\x11\x179', + 0x173a: b'\x11\x17:', + 0x173b: b'\x11\x17;', + 0x173c: b'\x11\x17<', + 0x173d: b'\x11\x17=', + 0x173e: b'\x11\x17>', + 0x173f: b'\x11\x17?', + 0x1740: b'\x11\x17@', + 0x1741: b'\x11\x17A', + 0x1742: b'\x11\x17B', + 0x1743: b'\x11\x17C', + 0x1744: b'\x11\x17D', + 0x1745: b'\x11\x17E', + 0x1746: b'\x11\x17F', + 0x1747: b'\x11\x17G', + 0x1748: b'\x11\x17H', + 0x1749: b'\x11\x17I', + 0x174a: b'\x11\x17J', + 0x174b: b'\x11\x17K', + 0x174c: b'\x11\x17L', + 0x174d: b'\x11\x17M', + 0x174e: b'\x11\x17N', + 0x174f: b'\x11\x17O', + 0x1750: b'\x11\x17P', + 0x1751: b'\x11\x17Q', + 0x1752: b'\x11\x17R', + 0x1753: b'\x11\x17S', + 0x1754: b'\x11\x17T', + 0x1755: b'\x11\x17U', + 0x1756: b'\x11\x17V', + 0x1757: b'\x11\x17W', + 0x1758: b'\x11\x17X', + 0x1759: b'\x11\x17Y', + 0x175a: b'\x11\x17Z', + 0x175b: b'\x11\x17[', + 0x175c: b'\x11\x17\\', + 0x175d: b'\x11\x17]', + 0x175e: b'\x11\x17^', + 0x175f: b'\x11\x17_', + 0x1760: b'\x11\x17`', + 0x1761: b'\x11\x17a', + 0x1762: b'\x11\x17b', + 0x1763: b'\x11\x17c', + 0x1764: b'\x11\x17d', + 0x1765: b'\x11\x17e', + 0x1766: b'\x11\x17f', + 0x1767: b'\x11\x17g', + 0x1768: b'\x11\x17h', + 0x1769: b'\x11\x17i', + 0x176a: b'\x11\x17j', + 0x176b: b'\x11\x17k', + 0x176c: b'\x11\x17l', + 0x176d: b'\x11\x17m', + 0x176e: b'\x11\x17n', + 0x176f: b'\x11\x17o', + 0x1770: b'\x11\x17p', + 0x1771: b'\x11\x17q', + 0x1772: b'\x11\x17r', + 0x1773: b'\x11\x17s', + 0x1774: b'\x11\x17t', + 0x1775: b'\x11\x17u', + 0x1776: b'\x11\x17v', + 0x1777: b'\x11\x17w', + 0x1778: b'\x11\x17x', + 0x1779: b'\x11\x17y', + 0x177a: b'\x11\x17z', + 0x177b: b'\x11\x17{', + 0x177c: b'\x11\x17|', + 0x177d: b'\x11\x17}', + 0x177e: b'\x11\x17~', + 0x177f: b'\x11\x17\x7f', + 0x1780: b'\x11\x17\x80', + 0x1781: b'\x11\x17\x81', + 0x1782: b'\x11\x17\x82', + 0x1783: b'\x11\x17\x83', + 0x1784: b'\x11\x17\x84', + 0x1785: b'\x11\x17\x85', + 0x1786: b'\x11\x17\x86', + 0x1787: b'\x11\x17\x87', + 0x1788: b'\x11\x17\x88', + 0x1789: b'\x11\x17\x89', + 0x178a: b'\x11\x17\x8a', + 0x178b: b'\x11\x17\x8b', + 0x178c: b'\x11\x17\x8c', + 0x178d: b'\x11\x17\x8d', + 0x178e: b'\x11\x17\x8e', + 0x178f: b'\x11\x17\x8f', + 0x1790: b'\x11\x17\x90', + 0x1791: b'\x11\x17\x91', + 0x1792: b'\x11\x17\x92', + 0x1793: b'\x11\x17\x93', + 0x1794: b'\x11\x17\x94', + 0x1795: b'\x11\x17\x95', + 0x1796: b'\x11\x17\x96', + 0x1797: b'\x11\x17\x97', + 0x1798: b'\x11\x17\x98', + 0x1799: b'\x11\x17\x99', + 0x179a: b'\x11\x17\x9a', + 0x179b: b'\x11\x17\x9b', + 0x179c: b'\x11\x17\x9c', + 0x179d: b'\x11\x17\x9d', + 0x179e: b'\x11\x17\x9e', + 0x179f: b'\x11\x17\x9f', + 0x17a0: b'\x11\x17\xa0', + 0x17a1: b'\x11\x17\xa1', + 0x17a2: b'\x11\x17\xa2', + 0x17a3: b'\x11\x17\xa3', + 0x17a4: b'\x11\x17\xa4', + 0x17a5: b'\x11\x17\xa5', + 0x17a6: b'\x11\x17\xa6', + 0x17a7: b'\x11\x17\xa7', + 0x17a8: b'\x11\x17\xa8', + 0x17a9: b'\x11\x17\xa9', + 0x17aa: b'\x11\x17\xaa', + 0x17ab: b'\x11\x17\xab', + 0x17ac: b'\x11\x17\xac', + 0x17ad: b'\x11\x17\xad', + 0x17ae: b'\x11\x17\xae', + 0x17af: b'\x11\x17\xaf', + 0x17b0: b'\x11\x17\xb0', + 0x17b1: b'\x11\x17\xb1', + 0x17b2: b'\x11\x17\xb2', + 0x17b3: b'\x11\x17\xb3', + 0x17b4: b'\x11\x17\xb4', + 0x17b5: b'\x11\x17\xb5', + 0x17b6: b'\x11\x17\xb6', + 0x17b7: b'\x11\x17\xb7', + 0x17b8: b'\x11\x17\xb8', + 0x17b9: b'\x11\x17\xb9', + 0x17ba: b'\x11\x17\xba', + 0x17bb: b'\x11\x17\xbb', + 0x17bc: b'\x11\x17\xbc', + 0x17bd: b'\x11\x17\xbd', + 0x17be: b'\x11\x17\xbe', + 0x17bf: b'\x11\x17\xbf', + 0x17c0: b'\x11\x17\xc0', + 0x17c1: b'\x11\x17\xc1', + 0x17c2: b'\x11\x17\xc2', + 0x17c3: b'\x11\x17\xc3', + 0x17c4: b'\x11\x17\xc4', + 0x17c5: b'\x11\x17\xc5', + 0x17c6: b'\x11\x17\xc6', + 0x17c7: b'\x11\x17\xc7', + 0x17c8: b'\x11\x17\xc8', + 0x17c9: b'\x11\x17\xc9', + 0x17ca: b'\x11\x17\xca', + 0x17cb: b'\x11\x17\xcb', + 0x17cc: b'\x11\x17\xcc', + 0x17cd: b'\x11\x17\xcd', + 0x17ce: b'\x11\x17\xce', + 0x17cf: b'\x11\x17\xcf', + 0x17d0: b'\x11\x17\xd0', + 0x17d1: b'\x11\x17\xd1', + 0x17d2: b'\x11\x17\xd2', + 0x17d3: b'\x11\x17\xd3', + 0x17d4: b'\x11\x17\xd4', + 0x17d5: b'\x11\x17\xd5', + 0x17d6: b'\x11\x17\xd6', + 0x17d7: b'\x11\x17\xd7', + 0x17d8: b'\x11\x17\xd8', + 0x17d9: b'\x11\x17\xd9', + 0x17da: b'\x11\x17\xda', + 0x17db: b'\x11\x17\xdb', + 0x17dc: b'\x11\x17\xdc', + 0x17dd: b'\x11\x17\xdd', + 0x17de: b'\x11\x17\xde', + 0x17df: b'\x11\x17\xdf', + 0x17e0: b'\x11\x17\xe0', + 0x17e1: b'\x11\x17\xe1', + 0x17e2: b'\x11\x17\xe2', + 0x17e3: b'\x11\x17\xe3', + 0x17e4: b'\x11\x17\xe4', + 0x17e5: b'\x11\x17\xe5', + 0x17e6: b'\x11\x17\xe6', + 0x17e7: b'\x11\x17\xe7', + 0x17e8: b'\x11\x17\xe8', + 0x17e9: b'\x11\x17\xe9', + 0x17ea: b'\x11\x17\xea', + 0x17eb: b'\x11\x17\xeb', + 0x17ec: b'\x11\x17\xec', + 0x17ed: b'\x11\x17\xed', + 0x17ee: b'\x11\x17\xee', + 0x17ef: b'\x11\x17\xef', + 0x17f0: b'\x11\x17\xf0', + 0x17f1: b'\x11\x17\xf1', + 0x17f2: b'\x11\x17\xf2', + 0x17f3: b'\x11\x17\xf3', + 0x17f4: b'\x11\x17\xf4', + 0x17f5: b'\x11\x17\xf5', + 0x17f6: b'\x11\x17\xf6', + 0x17f7: b'\x11\x17\xf7', + 0x17f8: b'\x11\x17\xf8', + 0x17f9: b'\x11\x17\xf9', + 0x17fa: b'\x11\x17\xfa', + 0x17fb: b'\x11\x17\xfb', + 0x17fc: b'\x11\x17\xfc', + 0x17fd: b'\x11\x17\xfd', + 0x17fe: b'\x11\x17\xfe', + 0x17ff: b'\x11\x17\xff', + 0x1800: b'\x11\x18\x00', + 0x1801: b'\x11\x18\x01', + 0x1802: b'\x11\x18\x02', + 0x1803: b'\x11\x18\x03', + 0x1804: b'\x11\x18\x04', + 0x1805: b'\x11\x18\x05', + 0x1806: b'\x11\x18\x06', + 0x1807: b'\x11\x18\x07', + 0x1808: b'\x11\x18\x08', + 0x1809: b'\x11\x18\t', + 0x180a: b'\x11\x18\n', + 0x180b: b'\x11\x18\x0b', + 0x180c: b'\x11\x18\x0c', + 0x180d: b'\x11\x18\r', + 0x180e: b'\x11\x18\x0e', + 0x180f: b'\x11\x18\x0f', + 0x1810: b'\x11\x18\x10', + 0x1811: b'\x11\x18\x11', + 0x1812: b'\x11\x18\x12', + 0x1813: b'\x11\x18\x13', + 0x1814: b'\x11\x18\x14', + 0x1815: b'\x11\x18\x15', + 0x1816: b'\x11\x18\x16', + 0x1817: b'\x11\x18\x17', + 0x1818: b'\x11\x18\x18', + 0x1819: b'\x11\x18\x19', + 0x181a: b'\x11\x18\x1a', + 0x181b: b'\x11\x18\x1b', + 0x181c: b'\x11\x18\x1c', + 0x181d: b'\x11\x18\x1d', + 0x181e: b'\x11\x18\x1e', + 0x181f: b'\x11\x18\x1f', + 0x1820: b'\x11\x18 ', + 0x1821: b'\x11\x18!', + 0x1822: b'\x11\x18"', + 0x1823: b'\x11\x18#', + 0x1824: b'\x11\x18$', + 0x1825: b'\x11\x18%', + 0x1826: b'\x11\x18&', + 0x1827: b"\x11\x18'", + 0x1828: b'\x11\x18(', + 0x1829: b'\x11\x18)', + 0x182a: b'\x11\x18*', + 0x182b: b'\x11\x18+', + 0x182c: b'\x11\x18,', + 0x182d: b'\x11\x18-', + 0x182e: b'\x11\x18.', + 0x182f: b'\x11\x18/', + 0x1830: b'\x11\x180', + 0x1831: b'\x11\x181', + 0x1832: b'\x11\x182', + 0x1833: b'\x11\x183', + 0x1834: b'\x11\x184', + 0x1835: b'\x11\x185', + 0x1836: b'\x11\x186', + 0x1837: b'\x11\x187', + 0x1838: b'\x11\x188', + 0x1839: b'\x11\x189', + 0x183a: b'\x11\x18:', + 0x183b: b'\x11\x18;', + 0x183c: b'\x11\x18<', + 0x183d: b'\x11\x18=', + 0x183e: b'\x11\x18>', + 0x183f: b'\x11\x18?', + 0x1840: b'\x11\x18@', + 0x1841: b'\x11\x18A', + 0x1842: b'\x11\x18B', + 0x1843: b'\x11\x18C', + 0x1844: b'\x11\x18D', + 0x1845: b'\x11\x18E', + 0x1846: b'\x11\x18F', + 0x1847: b'\x11\x18G', + 0x1848: b'\x11\x18H', + 0x1849: b'\x11\x18I', + 0x184a: b'\x11\x18J', + 0x184b: b'\x11\x18K', + 0x184c: b'\x11\x18L', + 0x184d: b'\x11\x18M', + 0x184e: b'\x11\x18N', + 0x184f: b'\x11\x18O', + 0x1850: b'\x11\x18P', + 0x1851: b'\x11\x18Q', + 0x1852: b'\x11\x18R', + 0x1853: b'\x11\x18S', + 0x1854: b'\x11\x18T', + 0x1855: b'\x11\x18U', + 0x1856: b'\x11\x18V', + 0x1857: b'\x11\x18W', + 0x1858: b'\x11\x18X', + 0x1859: b'\x11\x18Y', + 0x185a: b'\x11\x18Z', + 0x185b: b'\x11\x18[', + 0x185c: b'\x11\x18\\', + 0x185d: b'\x11\x18]', + 0x185e: b'\x11\x18^', + 0x185f: b'\x11\x18_', + 0x1860: b'\x11\x18`', + 0x1861: b'\x11\x18a', + 0x1862: b'\x11\x18b', + 0x1863: b'\x11\x18c', + 0x1864: b'\x11\x18d', + 0x1865: b'\x11\x18e', + 0x1866: b'\x11\x18f', + 0x1867: b'\x11\x18g', + 0x1868: b'\x11\x18h', + 0x1869: b'\x11\x18i', + 0x186a: b'\x11\x18j', + 0x186b: b'\x11\x18k', + 0x186c: b'\x11\x18l', + 0x186d: b'\x11\x18m', + 0x186e: b'\x11\x18n', + 0x186f: b'\x11\x18o', + 0x1870: b'\x11\x18p', + 0x1871: b'\x11\x18q', + 0x1872: b'\x11\x18r', + 0x1873: b'\x11\x18s', + 0x1874: b'\x11\x18t', + 0x1875: b'\x11\x18u', + 0x1876: b'\x11\x18v', + 0x1877: b'\x11\x18w', + 0x1878: b'\x11\x18x', + 0x1879: b'\x11\x18y', + 0x187a: b'\x11\x18z', + 0x187b: b'\x11\x18{', + 0x187c: b'\x11\x18|', + 0x187d: b'\x11\x18}', + 0x187e: b'\x11\x18~', + 0x187f: b'\x11\x18\x7f', + 0x1880: b'\x11\x18\x80', + 0x1881: b'\x11\x18\x81', + 0x1882: b'\x11\x18\x82', + 0x1883: b'\x11\x18\x83', + 0x1884: b'\x11\x18\x84', + 0x1885: b'\x11\x18\x85', + 0x1886: b'\x11\x18\x86', + 0x1887: b'\x11\x18\x87', + 0x1888: b'\x11\x18\x88', + 0x1889: b'\x11\x18\x89', + 0x188a: b'\x11\x18\x8a', + 0x188b: b'\x11\x18\x8b', + 0x188c: b'\x11\x18\x8c', + 0x188d: b'\x11\x18\x8d', + 0x188e: b'\x11\x18\x8e', + 0x188f: b'\x11\x18\x8f', + 0x1890: b'\x11\x18\x90', + 0x1891: b'\x11\x18\x91', + 0x1892: b'\x11\x18\x92', + 0x1893: b'\x11\x18\x93', + 0x1894: b'\x11\x18\x94', + 0x1895: b'\x11\x18\x95', + 0x1896: b'\x11\x18\x96', + 0x1897: b'\x11\x18\x97', + 0x1898: b'\x11\x18\x98', + 0x1899: b'\x11\x18\x99', + 0x189a: b'\x11\x18\x9a', + 0x189b: b'\x11\x18\x9b', + 0x189c: b'\x11\x18\x9c', + 0x189d: b'\x11\x18\x9d', + 0x189e: b'\x11\x18\x9e', + 0x189f: b'\x11\x18\x9f', + 0x18a0: b'\x11\x18\xa0', + 0x18a1: b'\x11\x18\xa1', + 0x18a2: b'\x11\x18\xa2', + 0x18a3: b'\x11\x18\xa3', + 0x18a4: b'\x11\x18\xa4', + 0x18a5: b'\x11\x18\xa5', + 0x18a6: b'\x11\x18\xa6', + 0x18a7: b'\x11\x18\xa7', + 0x18a8: b'\x11\x18\xa8', + 0x18a9: b'\x11\x18\xa9', + 0x18aa: b'\x11\x18\xaa', + 0x18ab: b'\x11\x18\xab', + 0x18ac: b'\x11\x18\xac', + 0x18ad: b'\x11\x18\xad', + 0x18ae: b'\x11\x18\xae', + 0x18af: b'\x11\x18\xaf', + 0x18b0: b'\x11\x18\xb0', + 0x18b1: b'\x11\x18\xb1', + 0x18b2: b'\x11\x18\xb2', + 0x18b3: b'\x11\x18\xb3', + 0x18b4: b'\x11\x18\xb4', + 0x18b5: b'\x11\x18\xb5', + 0x18b6: b'\x11\x18\xb6', + 0x18b7: b'\x11\x18\xb7', + 0x18b8: b'\x11\x18\xb8', + 0x18b9: b'\x11\x18\xb9', + 0x18ba: b'\x11\x18\xba', + 0x18bb: b'\x11\x18\xbb', + 0x18bc: b'\x11\x18\xbc', + 0x18bd: b'\x11\x18\xbd', + 0x18be: b'\x11\x18\xbe', + 0x18bf: b'\x11\x18\xbf', + 0x18c0: b'\x11\x18\xc0', + 0x18c1: b'\x11\x18\xc1', + 0x18c2: b'\x11\x18\xc2', + 0x18c3: b'\x11\x18\xc3', + 0x18c4: b'\x11\x18\xc4', + 0x18c5: b'\x11\x18\xc5', + 0x18c6: b'\x11\x18\xc6', + 0x18c7: b'\x11\x18\xc7', + 0x18c8: b'\x11\x18\xc8', + 0x18c9: b'\x11\x18\xc9', + 0x18ca: b'\x11\x18\xca', + 0x18cb: b'\x11\x18\xcb', + 0x18cc: b'\x11\x18\xcc', + 0x18cd: b'\x11\x18\xcd', + 0x18ce: b'\x11\x18\xce', + 0x18cf: b'\x11\x18\xcf', + 0x18d0: b'\x11\x18\xd0', + 0x18d1: b'\x11\x18\xd1', + 0x18d2: b'\x11\x18\xd2', + 0x18d3: b'\x11\x18\xd3', + 0x18d4: b'\x11\x18\xd4', + 0x18d5: b'\x11\x18\xd5', + 0x18d6: b'\x11\x18\xd6', + 0x18d7: b'\x11\x18\xd7', + 0x18d8: b'\x11\x18\xd8', + 0x18d9: b'\x11\x18\xd9', + 0x18da: b'\x11\x18\xda', + 0x18db: b'\x11\x18\xdb', + 0x18dc: b'\x11\x18\xdc', + 0x18dd: b'\x11\x18\xdd', + 0x18de: b'\x11\x18\xde', + 0x18df: b'\x11\x18\xdf', + 0x18e0: b'\x11\x18\xe0', + 0x18e1: b'\x11\x18\xe1', + 0x18e2: b'\x11\x18\xe2', + 0x18e3: b'\x11\x18\xe3', + 0x18e4: b'\x11\x18\xe4', + 0x18e5: b'\x11\x18\xe5', + 0x18e6: b'\x11\x18\xe6', + 0x18e7: b'\x11\x18\xe7', + 0x18e8: b'\x11\x18\xe8', + 0x18e9: b'\x11\x18\xe9', + 0x18ea: b'\x11\x18\xea', + 0x18eb: b'\x11\x18\xeb', + 0x18ec: b'\x11\x18\xec', + 0x18ed: b'\x11\x18\xed', + 0x18ee: b'\x11\x18\xee', + 0x18ef: b'\x11\x18\xef', + 0x18f0: b'\x11\x18\xf0', + 0x18f1: b'\x11\x18\xf1', + 0x18f2: b'\x11\x18\xf2', + 0x18f3: b'\x11\x18\xf3', + 0x18f4: b'\x11\x18\xf4', + 0x18f5: b'\x11\x18\xf5', + 0x18f6: b'\x11\x18\xf6', + 0x18f7: b'\x11\x18\xf7', + 0x18f8: b'\x11\x18\xf8', + 0x18f9: b'\x11\x18\xf9', + 0x18fa: b'\x11\x18\xfa', + 0x18fb: b'\x11\x18\xfb', + 0x18fc: b'\x11\x18\xfc', + 0x18fd: b'\x11\x18\xfd', + 0x18fe: b'\x11\x18\xfe', + 0x18ff: b'\x11\x18\xff', + 0x1900: b'\x11\x19\x00', + 0x1901: b'\x11\x19\x01', + 0x1902: b'\x11\x19\x02', + 0x1903: b'\x11\x19\x03', + 0x1904: b'\x11\x19\x04', + 0x1905: b'\x11\x19\x05', + 0x1906: b'\x11\x19\x06', + 0x1907: b'\x11\x19\x07', + 0x1908: b'\x11\x19\x08', + 0x1909: b'\x11\x19\t', + 0x190a: b'\x11\x19\n', + 0x190b: b'\x11\x19\x0b', + 0x190c: b'\x11\x19\x0c', + 0x190d: b'\x11\x19\r', + 0x190e: b'\x11\x19\x0e', + 0x190f: b'\x11\x19\x0f', + 0x1910: b'\x11\x19\x10', + 0x1911: b'\x11\x19\x11', + 0x1912: b'\x11\x19\x12', + 0x1913: b'\x11\x19\x13', + 0x1914: b'\x11\x19\x14', + 0x1915: b'\x11\x19\x15', + 0x1916: b'\x11\x19\x16', + 0x1917: b'\x11\x19\x17', + 0x1918: b'\x11\x19\x18', + 0x1919: b'\x11\x19\x19', + 0x191a: b'\x11\x19\x1a', + 0x191b: b'\x11\x19\x1b', + 0x191c: b'\x11\x19\x1c', + 0x191d: b'\x11\x19\x1d', + 0x191e: b'\x11\x19\x1e', + 0x191f: b'\x11\x19\x1f', + 0x1920: b'\x11\x19 ', + 0x1921: b'\x11\x19!', + 0x1922: b'\x11\x19"', + 0x1923: b'\x11\x19#', + 0x1924: b'\x11\x19$', + 0x1925: b'\x11\x19%', + 0x1926: b'\x11\x19&', + 0x1927: b"\x11\x19'", + 0x1928: b'\x11\x19(', + 0x1929: b'\x11\x19)', + 0x192a: b'\x11\x19*', + 0x192b: b'\x11\x19+', + 0x192c: b'\x11\x19,', + 0x192d: b'\x11\x19-', + 0x192e: b'\x11\x19.', + 0x192f: b'\x11\x19/', + 0x1930: b'\x11\x190', + 0x1931: b'\x11\x191', + 0x1932: b'\x11\x192', + 0x1933: b'\x11\x193', + 0x1934: b'\x11\x194', + 0x1935: b'\x11\x195', + 0x1936: b'\x11\x196', + 0x1937: b'\x11\x197', + 0x1938: b'\x11\x198', + 0x1939: b'\x11\x199', + 0x193a: b'\x11\x19:', + 0x193b: b'\x11\x19;', + 0x193c: b'\x11\x19<', + 0x193d: b'\x11\x19=', + 0x193e: b'\x11\x19>', + 0x193f: b'\x11\x19?', + 0x1940: b'\x11\x19@', + 0x1941: b'\x11\x19A', + 0x1942: b'\x11\x19B', + 0x1943: b'\x11\x19C', + 0x1944: b'\x11\x19D', + 0x1945: b'\x11\x19E', + 0x1946: b'\x11\x19F', + 0x1947: b'\x11\x19G', + 0x1948: b'\x11\x19H', + 0x1949: b'\x11\x19I', + 0x194a: b'\x11\x19J', + 0x194b: b'\x11\x19K', + 0x194c: b'\x11\x19L', + 0x194d: b'\x11\x19M', + 0x194e: b'\x11\x19N', + 0x194f: b'\x11\x19O', + 0x1950: b'\x11\x19P', + 0x1951: b'\x11\x19Q', + 0x1952: b'\x11\x19R', + 0x1953: b'\x11\x19S', + 0x1954: b'\x11\x19T', + 0x1955: b'\x11\x19U', + 0x1956: b'\x11\x19V', + 0x1957: b'\x11\x19W', + 0x1958: b'\x11\x19X', + 0x1959: b'\x11\x19Y', + 0x195a: b'\x11\x19Z', + 0x195b: b'\x11\x19[', + 0x195c: b'\x11\x19\\', + 0x195d: b'\x11\x19]', + 0x195e: b'\x11\x19^', + 0x195f: b'\x11\x19_', + 0x1960: b'\x11\x19`', + 0x1961: b'\x11\x19a', + 0x1962: b'\x11\x19b', + 0x1963: b'\x11\x19c', + 0x1964: b'\x11\x19d', + 0x1965: b'\x11\x19e', + 0x1966: b'\x11\x19f', + 0x1967: b'\x11\x19g', + 0x1968: b'\x11\x19h', + 0x1969: b'\x11\x19i', + 0x196a: b'\x11\x19j', + 0x196b: b'\x11\x19k', + 0x196c: b'\x11\x19l', + 0x196d: b'\x11\x19m', + 0x196e: b'\x11\x19n', + 0x196f: b'\x11\x19o', + 0x1970: b'\x11\x19p', + 0x1971: b'\x11\x19q', + 0x1972: b'\x11\x19r', + 0x1973: b'\x11\x19s', + 0x1974: b'\x11\x19t', + 0x1975: b'\x11\x19u', + 0x1976: b'\x11\x19v', + 0x1977: b'\x11\x19w', + 0x1978: b'\x11\x19x', + 0x1979: b'\x11\x19y', + 0x197a: b'\x11\x19z', + 0x197b: b'\x11\x19{', + 0x197c: b'\x11\x19|', + 0x197d: b'\x11\x19}', + 0x197e: b'\x11\x19~', + 0x197f: b'\x11\x19\x7f', + 0x1980: b'\x11\x19\x80', + 0x1981: b'\x11\x19\x81', + 0x1982: b'\x11\x19\x82', + 0x1983: b'\x11\x19\x83', + 0x1984: b'\x11\x19\x84', + 0x1985: b'\x11\x19\x85', + 0x1986: b'\x11\x19\x86', + 0x1987: b'\x11\x19\x87', + 0x1988: b'\x11\x19\x88', + 0x1989: b'\x11\x19\x89', + 0x198a: b'\x11\x19\x8a', + 0x198b: b'\x11\x19\x8b', + 0x198c: b'\x11\x19\x8c', + 0x198d: b'\x11\x19\x8d', + 0x198e: b'\x11\x19\x8e', + 0x198f: b'\x11\x19\x8f', + 0x1990: b'\x11\x19\x90', + 0x1991: b'\x11\x19\x91', + 0x1992: b'\x11\x19\x92', + 0x1993: b'\x11\x19\x93', + 0x1994: b'\x11\x19\x94', + 0x1995: b'\x11\x19\x95', + 0x1996: b'\x11\x19\x96', + 0x1997: b'\x11\x19\x97', + 0x1998: b'\x11\x19\x98', + 0x1999: b'\x11\x19\x99', + 0x199a: b'\x11\x19\x9a', + 0x199b: b'\x11\x19\x9b', + 0x199c: b'\x11\x19\x9c', + 0x199d: b'\x11\x19\x9d', + 0x199e: b'\x11\x19\x9e', + 0x199f: b'\x11\x19\x9f', + 0x19a0: b'\x11\x19\xa0', + 0x19a1: b'\x11\x19\xa1', + 0x19a2: b'\x11\x19\xa2', + 0x19a3: b'\x11\x19\xa3', + 0x19a4: b'\x11\x19\xa4', + 0x19a5: b'\x11\x19\xa5', + 0x19a6: b'\x11\x19\xa6', + 0x19a7: b'\x11\x19\xa7', + 0x19a8: b'\x11\x19\xa8', + 0x19a9: b'\x11\x19\xa9', + 0x19aa: b'\x11\x19\xaa', + 0x19ab: b'\x11\x19\xab', + 0x19ac: b'\x11\x19\xac', + 0x19ad: b'\x11\x19\xad', + 0x19ae: b'\x11\x19\xae', + 0x19af: b'\x11\x19\xaf', + 0x19b0: b'\x11\x19\xb0', + 0x19b1: b'\x11\x19\xb1', + 0x19b2: b'\x11\x19\xb2', + 0x19b3: b'\x11\x19\xb3', + 0x19b4: b'\x11\x19\xb4', + 0x19b5: b'\x11\x19\xb5', + 0x19b6: b'\x11\x19\xb6', + 0x19b7: b'\x11\x19\xb7', + 0x19b8: b'\x11\x19\xb8', + 0x19b9: b'\x11\x19\xb9', + 0x19ba: b'\x11\x19\xba', + 0x19bb: b'\x11\x19\xbb', + 0x19bc: b'\x11\x19\xbc', + 0x19bd: b'\x11\x19\xbd', + 0x19be: b'\x11\x19\xbe', + 0x19bf: b'\x11\x19\xbf', + 0x19c0: b'\x11\x19\xc0', + 0x19c1: b'\x11\x19\xc1', + 0x19c2: b'\x11\x19\xc2', + 0x19c3: b'\x11\x19\xc3', + 0x19c4: b'\x11\x19\xc4', + 0x19c5: b'\x11\x19\xc5', + 0x19c6: b'\x11\x19\xc6', + 0x19c7: b'\x11\x19\xc7', + 0x19c8: b'\x11\x19\xc8', + 0x19c9: b'\x11\x19\xc9', + 0x19ca: b'\x11\x19\xca', + 0x19cb: b'\x11\x19\xcb', + 0x19cc: b'\x11\x19\xcc', + 0x19cd: b'\x11\x19\xcd', + 0x19ce: b'\x11\x19\xce', + 0x19cf: b'\x11\x19\xcf', + 0x19d0: b'\x11\x19\xd0', + 0x19d1: b'\x11\x19\xd1', + 0x19d2: b'\x11\x19\xd2', + 0x19d3: b'\x11\x19\xd3', + 0x19d4: b'\x11\x19\xd4', + 0x19d5: b'\x11\x19\xd5', + 0x19d6: b'\x11\x19\xd6', + 0x19d7: b'\x11\x19\xd7', + 0x19d8: b'\x11\x19\xd8', + 0x19d9: b'\x11\x19\xd9', + 0x19da: b'\x11\x19\xda', + 0x19db: b'\x11\x19\xdb', + 0x19dc: b'\x11\x19\xdc', + 0x19dd: b'\x11\x19\xdd', + 0x19de: b'\x11\x19\xde', + 0x19df: b'\x11\x19\xdf', + 0x19e0: b'\x11\x19\xe0', + 0x19e1: b'\x11\x19\xe1', + 0x19e2: b'\x11\x19\xe2', + 0x19e3: b'\x11\x19\xe3', + 0x19e4: b'\x11\x19\xe4', + 0x19e5: b'\x11\x19\xe5', + 0x19e6: b'\x11\x19\xe6', + 0x19e7: b'\x11\x19\xe7', + 0x19e8: b'\x11\x19\xe8', + 0x19e9: b'\x11\x19\xe9', + 0x19ea: b'\x11\x19\xea', + 0x19eb: b'\x11\x19\xeb', + 0x19ec: b'\x11\x19\xec', + 0x19ed: b'\x11\x19\xed', + 0x19ee: b'\x11\x19\xee', + 0x19ef: b'\x11\x19\xef', + 0x19f0: b'\x11\x19\xf0', + 0x19f1: b'\x11\x19\xf1', + 0x19f2: b'\x11\x19\xf2', + 0x19f3: b'\x11\x19\xf3', + 0x19f4: b'\x11\x19\xf4', + 0x19f5: b'\x11\x19\xf5', + 0x19f6: b'\x11\x19\xf6', + 0x19f7: b'\x11\x19\xf7', + 0x19f8: b'\x11\x19\xf8', + 0x19f9: b'\x11\x19\xf9', + 0x19fa: b'\x11\x19\xfa', + 0x19fb: b'\x11\x19\xfb', + 0x19fc: b'\x11\x19\xfc', + 0x19fd: b'\x11\x19\xfd', + 0x19fe: b'\x11\x19\xfe', + 0x19ff: b'\x11\x19\xff', + 0x1a00: b'\x11\x1a\x00', + 0x1a01: b'\x11\x1a\x01', + 0x1a02: b'\x11\x1a\x02', + 0x1a03: b'\x11\x1a\x03', + 0x1a04: b'\x11\x1a\x04', + 0x1a05: b'\x11\x1a\x05', + 0x1a06: b'\x11\x1a\x06', + 0x1a07: b'\x11\x1a\x07', + 0x1a08: b'\x11\x1a\x08', + 0x1a09: b'\x11\x1a\t', + 0x1a0a: b'\x11\x1a\n', + 0x1a0b: b'\x11\x1a\x0b', + 0x1a0c: b'\x11\x1a\x0c', + 0x1a0d: b'\x11\x1a\r', + 0x1a0e: b'\x11\x1a\x0e', + 0x1a0f: b'\x11\x1a\x0f', + 0x1a10: b'\x11\x1a\x10', + 0x1a11: b'\x11\x1a\x11', + 0x1a12: b'\x11\x1a\x12', + 0x1a13: b'\x11\x1a\x13', + 0x1a14: b'\x11\x1a\x14', + 0x1a15: b'\x11\x1a\x15', + 0x1a16: b'\x11\x1a\x16', + 0x1a17: b'\x11\x1a\x17', + 0x1a18: b'\x11\x1a\x18', + 0x1a19: b'\x11\x1a\x19', + 0x1a1a: b'\x11\x1a\x1a', + 0x1a1b: b'\x11\x1a\x1b', + 0x1a1c: b'\x11\x1a\x1c', + 0x1a1d: b'\x11\x1a\x1d', + 0x1a1e: b'\x11\x1a\x1e', + 0x1a1f: b'\x11\x1a\x1f', + 0x1a20: b'\x11\x1a ', + 0x1a21: b'\x11\x1a!', + 0x1a22: b'\x11\x1a"', + 0x1a23: b'\x11\x1a#', + 0x1a24: b'\x11\x1a$', + 0x1a25: b'\x11\x1a%', + 0x1a26: b'\x11\x1a&', + 0x1a27: b"\x11\x1a'", + 0x1a28: b'\x11\x1a(', + 0x1a29: b'\x11\x1a)', + 0x1a2a: b'\x11\x1a*', + 0x1a2b: b'\x11\x1a+', + 0x1a2c: b'\x11\x1a,', + 0x1a2d: b'\x11\x1a-', + 0x1a2e: b'\x11\x1a.', + 0x1a2f: b'\x11\x1a/', + 0x1a30: b'\x11\x1a0', + 0x1a31: b'\x11\x1a1', + 0x1a32: b'\x11\x1a2', + 0x1a33: b'\x11\x1a3', + 0x1a34: b'\x11\x1a4', + 0x1a35: b'\x11\x1a5', + 0x1a36: b'\x11\x1a6', + 0x1a37: b'\x11\x1a7', + 0x1a38: b'\x11\x1a8', + 0x1a39: b'\x11\x1a9', + 0x1a3a: b'\x11\x1a:', + 0x1a3b: b'\x11\x1a;', + 0x1a3c: b'\x11\x1a<', + 0x1a3d: b'\x11\x1a=', + 0x1a3e: b'\x11\x1a>', + 0x1a3f: b'\x11\x1a?', + 0x1a40: b'\x11\x1a@', + 0x1a41: b'\x11\x1aA', + 0x1a42: b'\x11\x1aB', + 0x1a43: b'\x11\x1aC', + 0x1a44: b'\x11\x1aD', + 0x1a45: b'\x11\x1aE', + 0x1a46: b'\x11\x1aF', + 0x1a47: b'\x11\x1aG', + 0x1a48: b'\x11\x1aH', + 0x1a49: b'\x11\x1aI', + 0x1a4a: b'\x11\x1aJ', + 0x1a4b: b'\x11\x1aK', + 0x1a4c: b'\x11\x1aL', + 0x1a4d: b'\x11\x1aM', + 0x1a4e: b'\x11\x1aN', + 0x1a4f: b'\x11\x1aO', + 0x1a50: b'\x11\x1aP', + 0x1a51: b'\x11\x1aQ', + 0x1a52: b'\x11\x1aR', + 0x1a53: b'\x11\x1aS', + 0x1a54: b'\x11\x1aT', + 0x1a55: b'\x11\x1aU', + 0x1a56: b'\x11\x1aV', + 0x1a57: b'\x11\x1aW', + 0x1a58: b'\x11\x1aX', + 0x1a59: b'\x11\x1aY', + 0x1a5a: b'\x11\x1aZ', + 0x1a5b: b'\x11\x1a[', + 0x1a5c: b'\x11\x1a\\', + 0x1a5d: b'\x11\x1a]', + 0x1a5e: b'\x11\x1a^', + 0x1a5f: b'\x11\x1a_', + 0x1a60: b'\x11\x1a`', + 0x1a61: b'\x11\x1aa', + 0x1a62: b'\x11\x1ab', + 0x1a63: b'\x11\x1ac', + 0x1a64: b'\x11\x1ad', + 0x1a65: b'\x11\x1ae', + 0x1a66: b'\x11\x1af', + 0x1a67: b'\x11\x1ag', + 0x1a68: b'\x11\x1ah', + 0x1a69: b'\x11\x1ai', + 0x1a6a: b'\x11\x1aj', + 0x1a6b: b'\x11\x1ak', + 0x1a6c: b'\x11\x1al', + 0x1a6d: b'\x11\x1am', + 0x1a6e: b'\x11\x1an', + 0x1a6f: b'\x11\x1ao', + 0x1a70: b'\x11\x1ap', + 0x1a71: b'\x11\x1aq', + 0x1a72: b'\x11\x1ar', + 0x1a73: b'\x11\x1as', + 0x1a74: b'\x11\x1at', + 0x1a75: b'\x11\x1au', + 0x1a76: b'\x11\x1av', + 0x1a77: b'\x11\x1aw', + 0x1a78: b'\x11\x1ax', + 0x1a79: b'\x11\x1ay', + 0x1a7a: b'\x11\x1az', + 0x1a7b: b'\x11\x1a{', + 0x1a7c: b'\x11\x1a|', + 0x1a7d: b'\x11\x1a}', + 0x1a7e: b'\x11\x1a~', + 0x1a7f: b'\x11\x1a\x7f', + 0x1a80: b'\x11\x1a\x80', + 0x1a81: b'\x11\x1a\x81', + 0x1a82: b'\x11\x1a\x82', + 0x1a83: b'\x11\x1a\x83', + 0x1a84: b'\x11\x1a\x84', + 0x1a85: b'\x11\x1a\x85', + 0x1a86: b'\x11\x1a\x86', + 0x1a87: b'\x11\x1a\x87', + 0x1a88: b'\x11\x1a\x88', + 0x1a89: b'\x11\x1a\x89', + 0x1a8a: b'\x11\x1a\x8a', + 0x1a8b: b'\x11\x1a\x8b', + 0x1a8c: b'\x11\x1a\x8c', + 0x1a8d: b'\x11\x1a\x8d', + 0x1a8e: b'\x11\x1a\x8e', + 0x1a8f: b'\x11\x1a\x8f', + 0x1a90: b'\x11\x1a\x90', + 0x1a91: b'\x11\x1a\x91', + 0x1a92: b'\x11\x1a\x92', + 0x1a93: b'\x11\x1a\x93', + 0x1a94: b'\x11\x1a\x94', + 0x1a95: b'\x11\x1a\x95', + 0x1a96: b'\x11\x1a\x96', + 0x1a97: b'\x11\x1a\x97', + 0x1a98: b'\x11\x1a\x98', + 0x1a99: b'\x11\x1a\x99', + 0x1a9a: b'\x11\x1a\x9a', + 0x1a9b: b'\x11\x1a\x9b', + 0x1a9c: b'\x11\x1a\x9c', + 0x1a9d: b'\x11\x1a\x9d', + 0x1a9e: b'\x11\x1a\x9e', + 0x1a9f: b'\x11\x1a\x9f', + 0x1aa0: b'\x11\x1a\xa0', + 0x1aa1: b'\x11\x1a\xa1', + 0x1aa2: b'\x11\x1a\xa2', + 0x1aa3: b'\x11\x1a\xa3', + 0x1aa4: b'\x11\x1a\xa4', + 0x1aa5: b'\x11\x1a\xa5', + 0x1aa6: b'\x11\x1a\xa6', + 0x1aa7: b'\x11\x1a\xa7', + 0x1aa8: b'\x11\x1a\xa8', + 0x1aa9: b'\x11\x1a\xa9', + 0x1aaa: b'\x11\x1a\xaa', + 0x1aab: b'\x11\x1a\xab', + 0x1aac: b'\x11\x1a\xac', + 0x1aad: b'\x11\x1a\xad', + 0x1aae: b'\x11\x1a\xae', + 0x1aaf: b'\x11\x1a\xaf', + 0x1ab0: b'\x11\x1a\xb0', + 0x1ab1: b'\x11\x1a\xb1', + 0x1ab2: b'\x11\x1a\xb2', + 0x1ab3: b'\x11\x1a\xb3', + 0x1ab4: b'\x11\x1a\xb4', + 0x1ab5: b'\x11\x1a\xb5', + 0x1ab6: b'\x11\x1a\xb6', + 0x1ab7: b'\x11\x1a\xb7', + 0x1ab8: b'\x11\x1a\xb8', + 0x1ab9: b'\x11\x1a\xb9', + 0x1aba: b'\x11\x1a\xba', + 0x1abb: b'\x11\x1a\xbb', + 0x1abc: b'\x11\x1a\xbc', + 0x1abd: b'\x11\x1a\xbd', + 0x1abe: b'\x11\x1a\xbe', + 0x1abf: b'\x11\x1a\xbf', + 0x1ac0: b'\x11\x1a\xc0', + 0x1ac1: b'\x11\x1a\xc1', + 0x1ac2: b'\x11\x1a\xc2', + 0x1ac3: b'\x11\x1a\xc3', + 0x1ac4: b'\x11\x1a\xc4', + 0x1ac5: b'\x11\x1a\xc5', + 0x1ac6: b'\x11\x1a\xc6', + 0x1ac7: b'\x11\x1a\xc7', + 0x1ac8: b'\x11\x1a\xc8', + 0x1ac9: b'\x11\x1a\xc9', + 0x1aca: b'\x11\x1a\xca', + 0x1acb: b'\x11\x1a\xcb', + 0x1acc: b'\x11\x1a\xcc', + 0x1acd: b'\x11\x1a\xcd', + 0x1ace: b'\x11\x1a\xce', + 0x1acf: b'\x11\x1a\xcf', + 0x1ad0: b'\x11\x1a\xd0', + 0x1ad1: b'\x11\x1a\xd1', + 0x1ad2: b'\x11\x1a\xd2', + 0x1ad3: b'\x11\x1a\xd3', + 0x1ad4: b'\x11\x1a\xd4', + 0x1ad5: b'\x11\x1a\xd5', + 0x1ad6: b'\x11\x1a\xd6', + 0x1ad7: b'\x11\x1a\xd7', + 0x1ad8: b'\x11\x1a\xd8', + 0x1ad9: b'\x11\x1a\xd9', + 0x1ada: b'\x11\x1a\xda', + 0x1adb: b'\x11\x1a\xdb', + 0x1adc: b'\x11\x1a\xdc', + 0x1add: b'\x11\x1a\xdd', + 0x1ade: b'\x11\x1a\xde', + 0x1adf: b'\x11\x1a\xdf', + 0x1ae0: b'\x11\x1a\xe0', + 0x1ae1: b'\x11\x1a\xe1', + 0x1ae2: b'\x11\x1a\xe2', + 0x1ae3: b'\x11\x1a\xe3', + 0x1ae4: b'\x11\x1a\xe4', + 0x1ae5: b'\x11\x1a\xe5', + 0x1ae6: b'\x11\x1a\xe6', + 0x1ae7: b'\x11\x1a\xe7', + 0x1ae8: b'\x11\x1a\xe8', + 0x1ae9: b'\x11\x1a\xe9', + 0x1aea: b'\x11\x1a\xea', + 0x1aeb: b'\x11\x1a\xeb', + 0x1aec: b'\x11\x1a\xec', + 0x1aed: b'\x11\x1a\xed', + 0x1aee: b'\x11\x1a\xee', + 0x1aef: b'\x11\x1a\xef', + 0x1af0: b'\x11\x1a\xf0', + 0x1af1: b'\x11\x1a\xf1', + 0x1af2: b'\x11\x1a\xf2', + 0x1af3: b'\x11\x1a\xf3', + 0x1af4: b'\x11\x1a\xf4', + 0x1af5: b'\x11\x1a\xf5', + 0x1af6: b'\x11\x1a\xf6', + 0x1af7: b'\x11\x1a\xf7', + 0x1af8: b'\x11\x1a\xf8', + 0x1af9: b'\x11\x1a\xf9', + 0x1afa: b'\x11\x1a\xfa', + 0x1afb: b'\x11\x1a\xfb', + 0x1afc: b'\x11\x1a\xfc', + 0x1afd: b'\x11\x1a\xfd', + 0x1afe: b'\x11\x1a\xfe', + 0x1aff: b'\x11\x1a\xff', + 0x1b00: b'\x11\x1b\x00', + 0x1b01: b'\x11\x1b\x01', + 0x1b02: b'\x11\x1b\x02', + 0x1b03: b'\x11\x1b\x03', + 0x1b04: b'\x11\x1b\x04', + 0x1b05: b'\x11\x1b\x05', + 0x1b06: b'\x11\x1b\x06', + 0x1b07: b'\x11\x1b\x07', + 0x1b08: b'\x11\x1b\x08', + 0x1b09: b'\x11\x1b\t', + 0x1b0a: b'\x11\x1b\n', + 0x1b0b: b'\x11\x1b\x0b', + 0x1b0c: b'\x11\x1b\x0c', + 0x1b0d: b'\x11\x1b\r', + 0x1b0e: b'\x11\x1b\x0e', + 0x1b0f: b'\x11\x1b\x0f', + 0x1b10: b'\x11\x1b\x10', + 0x1b11: b'\x11\x1b\x11', + 0x1b12: b'\x11\x1b\x12', + 0x1b13: b'\x11\x1b\x13', + 0x1b14: b'\x11\x1b\x14', + 0x1b15: b'\x11\x1b\x15', + 0x1b16: b'\x11\x1b\x16', + 0x1b17: b'\x11\x1b\x17', + 0x1b18: b'\x11\x1b\x18', + 0x1b19: b'\x11\x1b\x19', + 0x1b1a: b'\x11\x1b\x1a', + 0x1b1b: b'\x11\x1b\x1b', + 0x1b1c: b'\x11\x1b\x1c', + 0x1b1d: b'\x11\x1b\x1d', + 0x1b1e: b'\x11\x1b\x1e', + 0x1b1f: b'\x11\x1b\x1f', + 0x1b20: b'\x11\x1b ', + 0x1b21: b'\x11\x1b!', + 0x1b22: b'\x11\x1b"', + 0x1b23: b'\x11\x1b#', + 0x1b24: b'\x11\x1b$', + 0x1b25: b'\x11\x1b%', + 0x1b26: b'\x11\x1b&', + 0x1b27: b"\x11\x1b'", + 0x1b28: b'\x11\x1b(', + 0x1b29: b'\x11\x1b)', + 0x1b2a: b'\x11\x1b*', + 0x1b2b: b'\x11\x1b+', + 0x1b2c: b'\x11\x1b,', + 0x1b2d: b'\x11\x1b-', + 0x1b2e: b'\x11\x1b.', + 0x1b2f: b'\x11\x1b/', + 0x1b30: b'\x11\x1b0', + 0x1b31: b'\x11\x1b1', + 0x1b32: b'\x11\x1b2', + 0x1b33: b'\x11\x1b3', + 0x1b34: b'\x11\x1b4', + 0x1b35: b'\x11\x1b5', + 0x1b36: b'\x11\x1b6', + 0x1b37: b'\x11\x1b7', + 0x1b38: b'\x11\x1b8', + 0x1b39: b'\x11\x1b9', + 0x1b3a: b'\x11\x1b:', + 0x1b3b: b'\x11\x1b;', + 0x1b3c: b'\x11\x1b<', + 0x1b3d: b'\x11\x1b=', + 0x1b3e: b'\x11\x1b>', + 0x1b3f: b'\x11\x1b?', + 0x1b40: b'\x11\x1b@', + 0x1b41: b'\x11\x1bA', + 0x1b42: b'\x11\x1bB', + 0x1b43: b'\x11\x1bC', + 0x1b44: b'\x11\x1bD', + 0x1b45: b'\x11\x1bE', + 0x1b46: b'\x11\x1bF', + 0x1b47: b'\x11\x1bG', + 0x1b48: b'\x11\x1bH', + 0x1b49: b'\x11\x1bI', + 0x1b4a: b'\x11\x1bJ', + 0x1b4b: b'\x11\x1bK', + 0x1b4c: b'\x11\x1bL', + 0x1b4d: b'\x11\x1bM', + 0x1b4e: b'\x11\x1bN', + 0x1b4f: b'\x11\x1bO', + 0x1b50: b'\x11\x1bP', + 0x1b51: b'\x11\x1bQ', + 0x1b52: b'\x11\x1bR', + 0x1b53: b'\x11\x1bS', + 0x1b54: b'\x11\x1bT', + 0x1b55: b'\x11\x1bU', + 0x1b56: b'\x11\x1bV', + 0x1b57: b'\x11\x1bW', + 0x1b58: b'\x11\x1bX', + 0x1b59: b'\x11\x1bY', + 0x1b5a: b'\x11\x1bZ', + 0x1b5b: b'\x11\x1b[', + 0x1b5c: b'\x11\x1b\\', + 0x1b5d: b'\x11\x1b]', + 0x1b5e: b'\x11\x1b^', + 0x1b5f: b'\x11\x1b_', + 0x1b60: b'\x11\x1b`', + 0x1b61: b'\x11\x1ba', + 0x1b62: b'\x11\x1bb', + 0x1b63: b'\x11\x1bc', + 0x1b64: b'\x11\x1bd', + 0x1b65: b'\x11\x1be', + 0x1b66: b'\x11\x1bf', + 0x1b67: b'\x11\x1bg', + 0x1b68: b'\x11\x1bh', + 0x1b69: b'\x11\x1bi', + 0x1b6a: b'\x11\x1bj', + 0x1b6b: b'\x11\x1bk', + 0x1b6c: b'\x11\x1bl', + 0x1b6d: b'\x11\x1bm', + 0x1b6e: b'\x11\x1bn', + 0x1b6f: b'\x11\x1bo', + 0x1b70: b'\x11\x1bp', + 0x1b71: b'\x11\x1bq', + 0x1b72: b'\x11\x1br', + 0x1b73: b'\x11\x1bs', + 0x1b74: b'\x11\x1bt', + 0x1b75: b'\x11\x1bu', + 0x1b76: b'\x11\x1bv', + 0x1b77: b'\x11\x1bw', + 0x1b78: b'\x11\x1bx', + 0x1b79: b'\x11\x1by', + 0x1b7a: b'\x11\x1bz', + 0x1b7b: b'\x11\x1b{', + 0x1b7c: b'\x11\x1b|', + 0x1b7d: b'\x11\x1b}', + 0x1b7e: b'\x11\x1b~', + 0x1b7f: b'\x11\x1b\x7f', + 0x1b80: b'\x11\x1b\x80', + 0x1b81: b'\x11\x1b\x81', + 0x1b82: b'\x11\x1b\x82', + 0x1b83: b'\x11\x1b\x83', + 0x1b84: b'\x11\x1b\x84', + 0x1b85: b'\x11\x1b\x85', + 0x1b86: b'\x11\x1b\x86', + 0x1b87: b'\x11\x1b\x87', + 0x1b88: b'\x11\x1b\x88', + 0x1b89: b'\x11\x1b\x89', + 0x1b8a: b'\x11\x1b\x8a', + 0x1b8b: b'\x11\x1b\x8b', + 0x1b8c: b'\x11\x1b\x8c', + 0x1b8d: b'\x11\x1b\x8d', + 0x1b8e: b'\x11\x1b\x8e', + 0x1b8f: b'\x11\x1b\x8f', + 0x1b90: b'\x11\x1b\x90', + 0x1b91: b'\x11\x1b\x91', + 0x1b92: b'\x11\x1b\x92', + 0x1b93: b'\x11\x1b\x93', + 0x1b94: b'\x11\x1b\x94', + 0x1b95: b'\x11\x1b\x95', + 0x1b96: b'\x11\x1b\x96', + 0x1b97: b'\x11\x1b\x97', + 0x1b98: b'\x11\x1b\x98', + 0x1b99: b'\x11\x1b\x99', + 0x1b9a: b'\x11\x1b\x9a', + 0x1b9b: b'\x11\x1b\x9b', + 0x1b9c: b'\x11\x1b\x9c', + 0x1b9d: b'\x11\x1b\x9d', + 0x1b9e: b'\x11\x1b\x9e', + 0x1b9f: b'\x11\x1b\x9f', + 0x1ba0: b'\x11\x1b\xa0', + 0x1ba1: b'\x11\x1b\xa1', + 0x1ba2: b'\x11\x1b\xa2', + 0x1ba3: b'\x11\x1b\xa3', + 0x1ba4: b'\x11\x1b\xa4', + 0x1ba5: b'\x11\x1b\xa5', + 0x1ba6: b'\x11\x1b\xa6', + 0x1ba7: b'\x11\x1b\xa7', + 0x1ba8: b'\x11\x1b\xa8', + 0x1ba9: b'\x11\x1b\xa9', + 0x1baa: b'\x11\x1b\xaa', + 0x1bab: b'\x11\x1b\xab', + 0x1bac: b'\x11\x1b\xac', + 0x1bad: b'\x11\x1b\xad', + 0x1bae: b'\x11\x1b\xae', + 0x1baf: b'\x11\x1b\xaf', + 0x1bb0: b'\x11\x1b\xb0', + 0x1bb1: b'\x11\x1b\xb1', + 0x1bb2: b'\x11\x1b\xb2', + 0x1bb3: b'\x11\x1b\xb3', + 0x1bb4: b'\x11\x1b\xb4', + 0x1bb5: b'\x11\x1b\xb5', + 0x1bb6: b'\x11\x1b\xb6', + 0x1bb7: b'\x11\x1b\xb7', + 0x1bb8: b'\x11\x1b\xb8', + 0x1bb9: b'\x11\x1b\xb9', + 0x1bba: b'\x11\x1b\xba', + 0x1bbb: b'\x11\x1b\xbb', + 0x1bbc: b'\x11\x1b\xbc', + 0x1bbd: b'\x11\x1b\xbd', + 0x1bbe: b'\x11\x1b\xbe', + 0x1bbf: b'\x11\x1b\xbf', + 0x1bc0: b'\x11\x1b\xc0', + 0x1bc1: b'\x11\x1b\xc1', + 0x1bc2: b'\x11\x1b\xc2', + 0x1bc3: b'\x11\x1b\xc3', + 0x1bc4: b'\x11\x1b\xc4', + 0x1bc5: b'\x11\x1b\xc5', + 0x1bc6: b'\x11\x1b\xc6', + 0x1bc7: b'\x11\x1b\xc7', + 0x1bc8: b'\x11\x1b\xc8', + 0x1bc9: b'\x11\x1b\xc9', + 0x1bca: b'\x11\x1b\xca', + 0x1bcb: b'\x11\x1b\xcb', + 0x1bcc: b'\x11\x1b\xcc', + 0x1bcd: b'\x11\x1b\xcd', + 0x1bce: b'\x11\x1b\xce', + 0x1bcf: b'\x11\x1b\xcf', + 0x1bd0: b'\x11\x1b\xd0', + 0x1bd1: b'\x11\x1b\xd1', + 0x1bd2: b'\x11\x1b\xd2', + 0x1bd3: b'\x11\x1b\xd3', + 0x1bd4: b'\x11\x1b\xd4', + 0x1bd5: b'\x11\x1b\xd5', + 0x1bd6: b'\x11\x1b\xd6', + 0x1bd7: b'\x11\x1b\xd7', + 0x1bd8: b'\x11\x1b\xd8', + 0x1bd9: b'\x11\x1b\xd9', + 0x1bda: b'\x11\x1b\xda', + 0x1bdb: b'\x11\x1b\xdb', + 0x1bdc: b'\x11\x1b\xdc', + 0x1bdd: b'\x11\x1b\xdd', + 0x1bde: b'\x11\x1b\xde', + 0x1bdf: b'\x11\x1b\xdf', + 0x1be0: b'\x11\x1b\xe0', + 0x1be1: b'\x11\x1b\xe1', + 0x1be2: b'\x11\x1b\xe2', + 0x1be3: b'\x11\x1b\xe3', + 0x1be4: b'\x11\x1b\xe4', + 0x1be5: b'\x11\x1b\xe5', + 0x1be6: b'\x11\x1b\xe6', + 0x1be7: b'\x11\x1b\xe7', + 0x1be8: b'\x11\x1b\xe8', + 0x1be9: b'\x11\x1b\xe9', + 0x1bea: b'\x11\x1b\xea', + 0x1beb: b'\x11\x1b\xeb', + 0x1bec: b'\x11\x1b\xec', + 0x1bed: b'\x11\x1b\xed', + 0x1bee: b'\x11\x1b\xee', + 0x1bef: b'\x11\x1b\xef', + 0x1bf0: b'\x11\x1b\xf0', + 0x1bf1: b'\x11\x1b\xf1', + 0x1bf2: b'\x11\x1b\xf2', + 0x1bf3: b'\x11\x1b\xf3', + 0x1bf4: b'\x11\x1b\xf4', + 0x1bf5: b'\x11\x1b\xf5', + 0x1bf6: b'\x11\x1b\xf6', + 0x1bf7: b'\x11\x1b\xf7', + 0x1bf8: b'\x11\x1b\xf8', + 0x1bf9: b'\x11\x1b\xf9', + 0x1bfa: b'\x11\x1b\xfa', + 0x1bfb: b'\x11\x1b\xfb', + 0x1bfc: b'\x11\x1b\xfc', + 0x1bfd: b'\x11\x1b\xfd', + 0x1bfe: b'\x11\x1b\xfe', + 0x1bff: b'\x11\x1b\xff', + 0x1c00: b'\x11\x1c\x00', + 0x1c01: b'\x11\x1c\x01', + 0x1c02: b'\x11\x1c\x02', + 0x1c03: b'\x11\x1c\x03', + 0x1c04: b'\x11\x1c\x04', + 0x1c05: b'\x11\x1c\x05', + 0x1c06: b'\x11\x1c\x06', + 0x1c07: b'\x11\x1c\x07', + 0x1c08: b'\x11\x1c\x08', + 0x1c09: b'\x11\x1c\t', + 0x1c0a: b'\x11\x1c\n', + 0x1c0b: b'\x11\x1c\x0b', + 0x1c0c: b'\x11\x1c\x0c', + 0x1c0d: b'\x11\x1c\r', + 0x1c0e: b'\x11\x1c\x0e', + 0x1c0f: b'\x11\x1c\x0f', + 0x1c10: b'\x11\x1c\x10', + 0x1c11: b'\x11\x1c\x11', + 0x1c12: b'\x11\x1c\x12', + 0x1c13: b'\x11\x1c\x13', + 0x1c14: b'\x11\x1c\x14', + 0x1c15: b'\x11\x1c\x15', + 0x1c16: b'\x11\x1c\x16', + 0x1c17: b'\x11\x1c\x17', + 0x1c18: b'\x11\x1c\x18', + 0x1c19: b'\x11\x1c\x19', + 0x1c1a: b'\x11\x1c\x1a', + 0x1c1b: b'\x11\x1c\x1b', + 0x1c1c: b'\x11\x1c\x1c', + 0x1c1d: b'\x11\x1c\x1d', + 0x1c1e: b'\x11\x1c\x1e', + 0x1c1f: b'\x11\x1c\x1f', + 0x1c20: b'\x11\x1c ', + 0x1c21: b'\x11\x1c!', + 0x1c22: b'\x11\x1c"', + 0x1c23: b'\x11\x1c#', + 0x1c24: b'\x11\x1c$', + 0x1c25: b'\x11\x1c%', + 0x1c26: b'\x11\x1c&', + 0x1c27: b"\x11\x1c'", + 0x1c28: b'\x11\x1c(', + 0x1c29: b'\x11\x1c)', + 0x1c2a: b'\x11\x1c*', + 0x1c2b: b'\x11\x1c+', + 0x1c2c: b'\x11\x1c,', + 0x1c2d: b'\x11\x1c-', + 0x1c2e: b'\x11\x1c.', + 0x1c2f: b'\x11\x1c/', + 0x1c30: b'\x11\x1c0', + 0x1c31: b'\x11\x1c1', + 0x1c32: b'\x11\x1c2', + 0x1c33: b'\x11\x1c3', + 0x1c34: b'\x11\x1c4', + 0x1c35: b'\x11\x1c5', + 0x1c36: b'\x11\x1c6', + 0x1c37: b'\x11\x1c7', + 0x1c38: b'\x11\x1c8', + 0x1c39: b'\x11\x1c9', + 0x1c3a: b'\x11\x1c:', + 0x1c3b: b'\x11\x1c;', + 0x1c3c: b'\x11\x1c<', + 0x1c3d: b'\x11\x1c=', + 0x1c3e: b'\x11\x1c>', + 0x1c3f: b'\x11\x1c?', + 0x1c40: b'\x11\x1c@', + 0x1c41: b'\x11\x1cA', + 0x1c42: b'\x11\x1cB', + 0x1c43: b'\x11\x1cC', + 0x1c44: b'\x11\x1cD', + 0x1c45: b'\x11\x1cE', + 0x1c46: b'\x11\x1cF', + 0x1c47: b'\x11\x1cG', + 0x1c48: b'\x11\x1cH', + 0x1c49: b'\x11\x1cI', + 0x1c4a: b'\x11\x1cJ', + 0x1c4b: b'\x11\x1cK', + 0x1c4c: b'\x11\x1cL', + 0x1c4d: b'\x11\x1cM', + 0x1c4e: b'\x11\x1cN', + 0x1c4f: b'\x11\x1cO', + 0x1c50: b'\x11\x1cP', + 0x1c51: b'\x11\x1cQ', + 0x1c52: b'\x11\x1cR', + 0x1c53: b'\x11\x1cS', + 0x1c54: b'\x11\x1cT', + 0x1c55: b'\x11\x1cU', + 0x1c56: b'\x11\x1cV', + 0x1c57: b'\x11\x1cW', + 0x1c58: b'\x11\x1cX', + 0x1c59: b'\x11\x1cY', + 0x1c5a: b'\x11\x1cZ', + 0x1c5b: b'\x11\x1c[', + 0x1c5c: b'\x11\x1c\\', + 0x1c5d: b'\x11\x1c]', + 0x1c5e: b'\x11\x1c^', + 0x1c5f: b'\x11\x1c_', + 0x1c60: b'\x11\x1c`', + 0x1c61: b'\x11\x1ca', + 0x1c62: b'\x11\x1cb', + 0x1c63: b'\x11\x1cc', + 0x1c64: b'\x11\x1cd', + 0x1c65: b'\x11\x1ce', + 0x1c66: b'\x11\x1cf', + 0x1c67: b'\x11\x1cg', + 0x1c68: b'\x11\x1ch', + 0x1c69: b'\x11\x1ci', + 0x1c6a: b'\x11\x1cj', + 0x1c6b: b'\x11\x1ck', + 0x1c6c: b'\x11\x1cl', + 0x1c6d: b'\x11\x1cm', + 0x1c6e: b'\x11\x1cn', + 0x1c6f: b'\x11\x1co', + 0x1c70: b'\x11\x1cp', + 0x1c71: b'\x11\x1cq', + 0x1c72: b'\x11\x1cr', + 0x1c73: b'\x11\x1cs', + 0x1c74: b'\x11\x1ct', + 0x1c75: b'\x11\x1cu', + 0x1c76: b'\x11\x1cv', + 0x1c77: b'\x11\x1cw', + 0x1c78: b'\x11\x1cx', + 0x1c79: b'\x11\x1cy', + 0x1c7a: b'\x11\x1cz', + 0x1c7b: b'\x11\x1c{', + 0x1c7c: b'\x11\x1c|', + 0x1c7d: b'\x11\x1c}', + 0x1c7e: b'\x11\x1c~', + 0x1c7f: b'\x11\x1c\x7f', + 0x1c80: b'\x11\x1c\x80', + 0x1c81: b'\x11\x1c\x81', + 0x1c82: b'\x11\x1c\x82', + 0x1c83: b'\x11\x1c\x83', + 0x1c84: b'\x11\x1c\x84', + 0x1c85: b'\x11\x1c\x85', + 0x1c86: b'\x11\x1c\x86', + 0x1c87: b'\x11\x1c\x87', + 0x1c88: b'\x11\x1c\x88', + 0x1c89: b'\x11\x1c\x89', + 0x1c8a: b'\x11\x1c\x8a', + 0x1c8b: b'\x11\x1c\x8b', + 0x1c8c: b'\x11\x1c\x8c', + 0x1c8d: b'\x11\x1c\x8d', + 0x1c8e: b'\x11\x1c\x8e', + 0x1c8f: b'\x11\x1c\x8f', + 0x1c90: b'\x11\x1c\x90', + 0x1c91: b'\x11\x1c\x91', + 0x1c92: b'\x11\x1c\x92', + 0x1c93: b'\x11\x1c\x93', + 0x1c94: b'\x11\x1c\x94', + 0x1c95: b'\x11\x1c\x95', + 0x1c96: b'\x11\x1c\x96', + 0x1c97: b'\x11\x1c\x97', + 0x1c98: b'\x11\x1c\x98', + 0x1c99: b'\x11\x1c\x99', + 0x1c9a: b'\x11\x1c\x9a', + 0x1c9b: b'\x11\x1c\x9b', + 0x1c9c: b'\x11\x1c\x9c', + 0x1c9d: b'\x11\x1c\x9d', + 0x1c9e: b'\x11\x1c\x9e', + 0x1c9f: b'\x11\x1c\x9f', + 0x1ca0: b'\x11\x1c\xa0', + 0x1ca1: b'\x11\x1c\xa1', + 0x1ca2: b'\x11\x1c\xa2', + 0x1ca3: b'\x11\x1c\xa3', + 0x1ca4: b'\x11\x1c\xa4', + 0x1ca5: b'\x11\x1c\xa5', + 0x1ca6: b'\x11\x1c\xa6', + 0x1ca7: b'\x11\x1c\xa7', + 0x1ca8: b'\x11\x1c\xa8', + 0x1ca9: b'\x11\x1c\xa9', + 0x1caa: b'\x11\x1c\xaa', + 0x1cab: b'\x11\x1c\xab', + 0x1cac: b'\x11\x1c\xac', + 0x1cad: b'\x11\x1c\xad', + 0x1cae: b'\x11\x1c\xae', + 0x1caf: b'\x11\x1c\xaf', + 0x1cb0: b'\x11\x1c\xb0', + 0x1cb1: b'\x11\x1c\xb1', + 0x1cb2: b'\x11\x1c\xb2', + 0x1cb3: b'\x11\x1c\xb3', + 0x1cb4: b'\x11\x1c\xb4', + 0x1cb5: b'\x11\x1c\xb5', + 0x1cb6: b'\x11\x1c\xb6', + 0x1cb7: b'\x11\x1c\xb7', + 0x1cb8: b'\x11\x1c\xb8', + 0x1cb9: b'\x11\x1c\xb9', + 0x1cba: b'\x11\x1c\xba', + 0x1cbb: b'\x11\x1c\xbb', + 0x1cbc: b'\x11\x1c\xbc', + 0x1cbd: b'\x11\x1c\xbd', + 0x1cbe: b'\x11\x1c\xbe', + 0x1cbf: b'\x11\x1c\xbf', + 0x1cc0: b'\x11\x1c\xc0', + 0x1cc1: b'\x11\x1c\xc1', + 0x1cc2: b'\x11\x1c\xc2', + 0x1cc3: b'\x11\x1c\xc3', + 0x1cc4: b'\x11\x1c\xc4', + 0x1cc5: b'\x11\x1c\xc5', + 0x1cc6: b'\x11\x1c\xc6', + 0x1cc7: b'\x11\x1c\xc7', + 0x1cc8: b'\x11\x1c\xc8', + 0x1cc9: b'\x11\x1c\xc9', + 0x1cca: b'\x11\x1c\xca', + 0x1ccb: b'\x11\x1c\xcb', + 0x1ccc: b'\x11\x1c\xcc', + 0x1ccd: b'\x11\x1c\xcd', + 0x1cce: b'\x11\x1c\xce', + 0x1ccf: b'\x11\x1c\xcf', + 0x1cd0: b'\x11\x1c\xd0', + 0x1cd1: b'\x11\x1c\xd1', + 0x1cd2: b'\x11\x1c\xd2', + 0x1cd3: b'\x11\x1c\xd3', + 0x1cd4: b'\x11\x1c\xd4', + 0x1cd5: b'\x11\x1c\xd5', + 0x1cd6: b'\x11\x1c\xd6', + 0x1cd7: b'\x11\x1c\xd7', + 0x1cd8: b'\x11\x1c\xd8', + 0x1cd9: b'\x11\x1c\xd9', + 0x1cda: b'\x11\x1c\xda', + 0x1cdb: b'\x11\x1c\xdb', + 0x1cdc: b'\x11\x1c\xdc', + 0x1cdd: b'\x11\x1c\xdd', + 0x1cde: b'\x11\x1c\xde', + 0x1cdf: b'\x11\x1c\xdf', + 0x1ce0: b'\x11\x1c\xe0', + 0x1ce1: b'\x11\x1c\xe1', + 0x1ce2: b'\x11\x1c\xe2', + 0x1ce3: b'\x11\x1c\xe3', + 0x1ce4: b'\x11\x1c\xe4', + 0x1ce5: b'\x11\x1c\xe5', + 0x1ce6: b'\x11\x1c\xe6', + 0x1ce7: b'\x11\x1c\xe7', + 0x1ce8: b'\x11\x1c\xe8', + 0x1ce9: b'\x11\x1c\xe9', + 0x1cea: b'\x11\x1c\xea', + 0x1ceb: b'\x11\x1c\xeb', + 0x1cec: b'\x11\x1c\xec', + 0x1ced: b'\x11\x1c\xed', + 0x1cee: b'\x11\x1c\xee', + 0x1cef: b'\x11\x1c\xef', + 0x1cf0: b'\x11\x1c\xf0', + 0x1cf1: b'\x11\x1c\xf1', + 0x1cf2: b'\x11\x1c\xf2', + 0x1cf3: b'\x11\x1c\xf3', + 0x1cf4: b'\x11\x1c\xf4', + 0x1cf5: b'\x11\x1c\xf5', + 0x1cf6: b'\x11\x1c\xf6', + 0x1cf7: b'\x11\x1c\xf7', + 0x1cf8: b'\x11\x1c\xf8', + 0x1cf9: b'\x11\x1c\xf9', + 0x1cfa: b'\x11\x1c\xfa', + 0x1cfb: b'\x11\x1c\xfb', + 0x1cfc: b'\x11\x1c\xfc', + 0x1cfd: b'\x11\x1c\xfd', + 0x1cfe: b'\x11\x1c\xfe', + 0x1cff: b'\x11\x1c\xff', + 0x1d00: b'\x11\x1d\x00', + 0x1d01: b'\x11\x1d\x01', + 0x1d02: b'\x11\x1d\x02', + 0x1d03: b'\x11\x1d\x03', + 0x1d04: b'\x11\x1d\x04', + 0x1d05: b'\x11\x1d\x05', + 0x1d06: b'\x11\x1d\x06', + 0x1d07: b'\x11\x1d\x07', + 0x1d08: b'\x11\x1d\x08', + 0x1d09: b'\x11\x1d\t', + 0x1d0a: b'\x11\x1d\n', + 0x1d0b: b'\x11\x1d\x0b', + 0x1d0c: b'\x11\x1d\x0c', + 0x1d0d: b'\x11\x1d\r', + 0x1d0e: b'\x11\x1d\x0e', + 0x1d0f: b'\x11\x1d\x0f', + 0x1d10: b'\x11\x1d\x10', + 0x1d11: b'\x11\x1d\x11', + 0x1d12: b'\x11\x1d\x12', + 0x1d13: b'\x11\x1d\x13', + 0x1d14: b'\x11\x1d\x14', + 0x1d15: b'\x11\x1d\x15', + 0x1d16: b'\x11\x1d\x16', + 0x1d17: b'\x11\x1d\x17', + 0x1d18: b'\x11\x1d\x18', + 0x1d19: b'\x11\x1d\x19', + 0x1d1a: b'\x11\x1d\x1a', + 0x1d1b: b'\x11\x1d\x1b', + 0x1d1c: b'\x11\x1d\x1c', + 0x1d1d: b'\x11\x1d\x1d', + 0x1d1e: b'\x11\x1d\x1e', + 0x1d1f: b'\x11\x1d\x1f', + 0x1d20: b'\x11\x1d ', + 0x1d21: b'\x11\x1d!', + 0x1d22: b'\x11\x1d"', + 0x1d23: b'\x11\x1d#', + 0x1d24: b'\x11\x1d$', + 0x1d25: b'\x11\x1d%', + 0x1d26: b'\x11\x1d&', + 0x1d27: b"\x11\x1d'", + 0x1d28: b'\x11\x1d(', + 0x1d29: b'\x11\x1d)', + 0x1d2a: b'\x11\x1d*', + 0x1d2b: b'\x11\x1d+', + 0x1d2c: b'\x11\x1d,', + 0x1d2d: b'\x11\x1d-', + 0x1d2e: b'\x11\x1d.', + 0x1d2f: b'\x11\x1d/', + 0x1d30: b'\x11\x1d0', + 0x1d31: b'\x11\x1d1', + 0x1d32: b'\x11\x1d2', + 0x1d33: b'\x11\x1d3', + 0x1d34: b'\x11\x1d4', + 0x1d35: b'\x11\x1d5', + 0x1d36: b'\x11\x1d6', + 0x1d37: b'\x11\x1d7', + 0x1d38: b'\x11\x1d8', + 0x1d39: b'\x11\x1d9', + 0x1d3a: b'\x11\x1d:', + 0x1d3b: b'\x11\x1d;', + 0x1d3c: b'\x11\x1d<', + 0x1d3d: b'\x11\x1d=', + 0x1d3e: b'\x11\x1d>', + 0x1d3f: b'\x11\x1d?', + 0x1d40: b'\x11\x1d@', + 0x1d41: b'\x11\x1dA', + 0x1d42: b'\x11\x1dB', + 0x1d43: b'\x11\x1dC', + 0x1d44: b'\x11\x1dD', + 0x1d45: b'\x11\x1dE', + 0x1d46: b'\x11\x1dF', + 0x1d47: b'\x11\x1dG', + 0x1d48: b'\x11\x1dH', + 0x1d49: b'\x11\x1dI', + 0x1d4a: b'\x11\x1dJ', + 0x1d4b: b'\x11\x1dK', + 0x1d4c: b'\x11\x1dL', + 0x1d4d: b'\x11\x1dM', + 0x1d4e: b'\x11\x1dN', + 0x1d4f: b'\x11\x1dO', + 0x1d50: b'\x11\x1dP', + 0x1d51: b'\x11\x1dQ', + 0x1d52: b'\x11\x1dR', + 0x1d53: b'\x11\x1dS', + 0x1d54: b'\x11\x1dT', + 0x1d55: b'\x11\x1dU', + 0x1d56: b'\x11\x1dV', + 0x1d57: b'\x11\x1dW', + 0x1d58: b'\x11\x1dX', + 0x1d59: b'\x11\x1dY', + 0x1d5a: b'\x11\x1dZ', + 0x1d5b: b'\x11\x1d[', + 0x1d5c: b'\x11\x1d\\', + 0x1d5d: b'\x11\x1d]', + 0x1d5e: b'\x11\x1d^', + 0x1d5f: b'\x11\x1d_', + 0x1d60: b'\x11\x1d`', + 0x1d61: b'\x11\x1da', + 0x1d62: b'\x11\x1db', + 0x1d63: b'\x11\x1dc', + 0x1d64: b'\x11\x1dd', + 0x1d65: b'\x11\x1de', + 0x1d66: b'\x11\x1df', + 0x1d67: b'\x11\x1dg', + 0x1d68: b'\x11\x1dh', + 0x1d69: b'\x11\x1di', + 0x1d6a: b'\x11\x1dj', + 0x1d6b: b'\x11\x1dk', + 0x1d6c: b'\x11\x1dl', + 0x1d6d: b'\x11\x1dm', + 0x1d6e: b'\x11\x1dn', + 0x1d6f: b'\x11\x1do', + 0x1d70: b'\x11\x1dp', + 0x1d71: b'\x11\x1dq', + 0x1d72: b'\x11\x1dr', + 0x1d73: b'\x11\x1ds', + 0x1d74: b'\x11\x1dt', + 0x1d75: b'\x11\x1du', + 0x1d76: b'\x11\x1dv', + 0x1d77: b'\x11\x1dw', + 0x1d78: b'\x11\x1dx', + 0x1d79: b'\x11\x1dy', + 0x1d7a: b'\x11\x1dz', + 0x1d7b: b'\x11\x1d{', + 0x1d7c: b'\x11\x1d|', + 0x1d7d: b'\x11\x1d}', + 0x1d7e: b'\x11\x1d~', + 0x1d7f: b'\x11\x1d\x7f', + 0x1d80: b'\x11\x1d\x80', + 0x1d81: b'\x11\x1d\x81', + 0x1d82: b'\x11\x1d\x82', + 0x1d83: b'\x11\x1d\x83', + 0x1d84: b'\x11\x1d\x84', + 0x1d85: b'\x11\x1d\x85', + 0x1d86: b'\x11\x1d\x86', + 0x1d87: b'\x11\x1d\x87', + 0x1d88: b'\x11\x1d\x88', + 0x1d89: b'\x11\x1d\x89', + 0x1d8a: b'\x11\x1d\x8a', + 0x1d8b: b'\x11\x1d\x8b', + 0x1d8c: b'\x11\x1d\x8c', + 0x1d8d: b'\x11\x1d\x8d', + 0x1d8e: b'\x11\x1d\x8e', + 0x1d8f: b'\x11\x1d\x8f', + 0x1d90: b'\x11\x1d\x90', + 0x1d91: b'\x11\x1d\x91', + 0x1d92: b'\x11\x1d\x92', + 0x1d93: b'\x11\x1d\x93', + 0x1d94: b'\x11\x1d\x94', + 0x1d95: b'\x11\x1d\x95', + 0x1d96: b'\x11\x1d\x96', + 0x1d97: b'\x11\x1d\x97', + 0x1d98: b'\x11\x1d\x98', + 0x1d99: b'\x11\x1d\x99', + 0x1d9a: b'\x11\x1d\x9a', + 0x1d9b: b'\x11\x1d\x9b', + 0x1d9c: b'\x11\x1d\x9c', + 0x1d9d: b'\x11\x1d\x9d', + 0x1d9e: b'\x11\x1d\x9e', + 0x1d9f: b'\x11\x1d\x9f', + 0x1da0: b'\x11\x1d\xa0', + 0x1da1: b'\x11\x1d\xa1', + 0x1da2: b'\x11\x1d\xa2', + 0x1da3: b'\x11\x1d\xa3', + 0x1da4: b'\x11\x1d\xa4', + 0x1da5: b'\x11\x1d\xa5', + 0x1da6: b'\x11\x1d\xa6', + 0x1da7: b'\x11\x1d\xa7', + 0x1da8: b'\x11\x1d\xa8', + 0x1da9: b'\x11\x1d\xa9', + 0x1daa: b'\x11\x1d\xaa', + 0x1dab: b'\x11\x1d\xab', + 0x1dac: b'\x11\x1d\xac', + 0x1dad: b'\x11\x1d\xad', + 0x1dae: b'\x11\x1d\xae', + 0x1daf: b'\x11\x1d\xaf', + 0x1db0: b'\x11\x1d\xb0', + 0x1db1: b'\x11\x1d\xb1', + 0x1db2: b'\x11\x1d\xb2', + 0x1db3: b'\x11\x1d\xb3', + 0x1db4: b'\x11\x1d\xb4', + 0x1db5: b'\x11\x1d\xb5', + 0x1db6: b'\x11\x1d\xb6', + 0x1db7: b'\x11\x1d\xb7', + 0x1db8: b'\x11\x1d\xb8', + 0x1db9: b'\x11\x1d\xb9', + 0x1dba: b'\x11\x1d\xba', + 0x1dbb: b'\x11\x1d\xbb', + 0x1dbc: b'\x11\x1d\xbc', + 0x1dbd: b'\x11\x1d\xbd', + 0x1dbe: b'\x11\x1d\xbe', + 0x1dbf: b'\x11\x1d\xbf', + 0x1dc0: b'\x11\x1d\xc0', + 0x1dc1: b'\x11\x1d\xc1', + 0x1dc2: b'\x11\x1d\xc2', + 0x1dc3: b'\x11\x1d\xc3', + 0x1dc4: b'\x11\x1d\xc4', + 0x1dc5: b'\x11\x1d\xc5', + 0x1dc6: b'\x11\x1d\xc6', + 0x1dc7: b'\x11\x1d\xc7', + 0x1dc8: b'\x11\x1d\xc8', + 0x1dc9: b'\x11\x1d\xc9', + 0x1dca: b'\x11\x1d\xca', + 0x1dcb: b'\x11\x1d\xcb', + 0x1dcc: b'\x11\x1d\xcc', + 0x1dcd: b'\x11\x1d\xcd', + 0x1dce: b'\x11\x1d\xce', + 0x1dcf: b'\x11\x1d\xcf', + 0x1dd0: b'\x11\x1d\xd0', + 0x1dd1: b'\x11\x1d\xd1', + 0x1dd2: b'\x11\x1d\xd2', + 0x1dd3: b'\x11\x1d\xd3', + 0x1dd4: b'\x11\x1d\xd4', + 0x1dd5: b'\x11\x1d\xd5', + 0x1dd6: b'\x11\x1d\xd6', + 0x1dd7: b'\x11\x1d\xd7', + 0x1dd8: b'\x11\x1d\xd8', + 0x1dd9: b'\x11\x1d\xd9', + 0x1dda: b'\x11\x1d\xda', + 0x1ddb: b'\x11\x1d\xdb', + 0x1ddc: b'\x11\x1d\xdc', + 0x1ddd: b'\x11\x1d\xdd', + 0x1dde: b'\x11\x1d\xde', + 0x1ddf: b'\x11\x1d\xdf', + 0x1de0: b'\x11\x1d\xe0', + 0x1de1: b'\x11\x1d\xe1', + 0x1de2: b'\x11\x1d\xe2', + 0x1de3: b'\x11\x1d\xe3', + 0x1de4: b'\x11\x1d\xe4', + 0x1de5: b'\x11\x1d\xe5', + 0x1de6: b'\x11\x1d\xe6', + 0x1de7: b'\x11\x1d\xe7', + 0x1de8: b'\x11\x1d\xe8', + 0x1de9: b'\x11\x1d\xe9', + 0x1dea: b'\x11\x1d\xea', + 0x1deb: b'\x11\x1d\xeb', + 0x1dec: b'\x11\x1d\xec', + 0x1ded: b'\x11\x1d\xed', + 0x1dee: b'\x11\x1d\xee', + 0x1def: b'\x11\x1d\xef', + 0x1df0: b'\x11\x1d\xf0', + 0x1df1: b'\x11\x1d\xf1', + 0x1df2: b'\x11\x1d\xf2', + 0x1df3: b'\x11\x1d\xf3', + 0x1df4: b'\x11\x1d\xf4', + 0x1df5: b'\x11\x1d\xf5', + 0x1df6: b'\x11\x1d\xf6', + 0x1df7: b'\x11\x1d\xf7', + 0x1df8: b'\x11\x1d\xf8', + 0x1df9: b'\x11\x1d\xf9', + 0x1dfa: b'\x11\x1d\xfa', + 0x1dfb: b'\x11\x1d\xfb', + 0x1dfc: b'\x11\x1d\xfc', + 0x1dfd: b'\x11\x1d\xfd', + 0x1dfe: b'\x11\x1d\xfe', + 0x1dff: b'\x11\x1d\xff', + 0x1e00: b'\x11\x1e\x00', + 0x1e01: b'\x11\x1e\x01', + 0x1e02: b'\x11\x1e\x02', + 0x1e03: b'\x11\x1e\x03', + 0x1e04: b'\x11\x1e\x04', + 0x1e05: b'\x11\x1e\x05', + 0x1e06: b'\x11\x1e\x06', + 0x1e07: b'\x11\x1e\x07', + 0x1e08: b'\x11\x1e\x08', + 0x1e09: b'\x11\x1e\t', + 0x1e0a: b'\x11\x1e\n', + 0x1e0b: b'\x11\x1e\x0b', + 0x1e0c: b'\x11\x1e\x0c', + 0x1e0d: b'\x11\x1e\r', + 0x1e0e: b'\x11\x1e\x0e', + 0x1e0f: b'\x11\x1e\x0f', + 0x1e10: b'\x11\x1e\x10', + 0x1e11: b'\x11\x1e\x11', + 0x1e12: b'\x11\x1e\x12', + 0x1e13: b'\x11\x1e\x13', + 0x1e14: b'\x11\x1e\x14', + 0x1e15: b'\x11\x1e\x15', + 0x1e16: b'\x11\x1e\x16', + 0x1e17: b'\x11\x1e\x17', + 0x1e18: b'\x11\x1e\x18', + 0x1e19: b'\x11\x1e\x19', + 0x1e1a: b'\x11\x1e\x1a', + 0x1e1b: b'\x11\x1e\x1b', + 0x1e1c: b'\x11\x1e\x1c', + 0x1e1d: b'\x11\x1e\x1d', + 0x1e1e: b'\x11\x1e\x1e', + 0x1e1f: b'\x11\x1e\x1f', + 0x1e20: b'\x11\x1e ', + 0x1e21: b'\x11\x1e!', + 0x1e22: b'\x11\x1e"', + 0x1e23: b'\x11\x1e#', + 0x1e24: b'\x11\x1e$', + 0x1e25: b'\x11\x1e%', + 0x1e26: b'\x11\x1e&', + 0x1e27: b"\x11\x1e'", + 0x1e28: b'\x11\x1e(', + 0x1e29: b'\x11\x1e)', + 0x1e2a: b'\x11\x1e*', + 0x1e2b: b'\x11\x1e+', + 0x1e2c: b'\x11\x1e,', + 0x1e2d: b'\x11\x1e-', + 0x1e2e: b'\x11\x1e.', + 0x1e2f: b'\x11\x1e/', + 0x1e30: b'\x11\x1e0', + 0x1e31: b'\x11\x1e1', + 0x1e32: b'\x11\x1e2', + 0x1e33: b'\x11\x1e3', + 0x1e34: b'\x11\x1e4', + 0x1e35: b'\x11\x1e5', + 0x1e36: b'\x11\x1e6', + 0x1e37: b'\x11\x1e7', + 0x1e38: b'\x11\x1e8', + 0x1e39: b'\x11\x1e9', + 0x1e3a: b'\x11\x1e:', + 0x1e3b: b'\x11\x1e;', + 0x1e3c: b'\x11\x1e<', + 0x1e3d: b'\x11\x1e=', + 0x1e3e: b'\x11\x1e>', + 0x1e3f: b'\x11\x1e?', + 0x1e40: b'\x11\x1e@', + 0x1e41: b'\x11\x1eA', + 0x1e42: b'\x11\x1eB', + 0x1e43: b'\x11\x1eC', + 0x1e44: b'\x11\x1eD', + 0x1e45: b'\x11\x1eE', + 0x1e46: b'\x11\x1eF', + 0x1e47: b'\x11\x1eG', + 0x1e48: b'\x11\x1eH', + 0x1e49: b'\x11\x1eI', + 0x1e4a: b'\x11\x1eJ', + 0x1e4b: b'\x11\x1eK', + 0x1e4c: b'\x11\x1eL', + 0x1e4d: b'\x11\x1eM', + 0x1e4e: b'\x11\x1eN', + 0x1e4f: b'\x11\x1eO', + 0x1e50: b'\x11\x1eP', + 0x1e51: b'\x11\x1eQ', + 0x1e52: b'\x11\x1eR', + 0x1e53: b'\x11\x1eS', + 0x1e54: b'\x11\x1eT', + 0x1e55: b'\x11\x1eU', + 0x1e56: b'\x11\x1eV', + 0x1e57: b'\x11\x1eW', + 0x1e58: b'\x11\x1eX', + 0x1e59: b'\x11\x1eY', + 0x1e5a: b'\x11\x1eZ', + 0x1e5b: b'\x11\x1e[', + 0x1e5c: b'\x11\x1e\\', + 0x1e5d: b'\x11\x1e]', + 0x1e5e: b'\x11\x1e^', + 0x1e5f: b'\x11\x1e_', + 0x1e60: b'\x11\x1e`', + 0x1e61: b'\x11\x1ea', + 0x1e62: b'\x11\x1eb', + 0x1e63: b'\x11\x1ec', + 0x1e64: b'\x11\x1ed', + 0x1e65: b'\x11\x1ee', + 0x1e66: b'\x11\x1ef', + 0x1e67: b'\x11\x1eg', + 0x1e68: b'\x11\x1eh', + 0x1e69: b'\x11\x1ei', + 0x1e6a: b'\x11\x1ej', + 0x1e6b: b'\x11\x1ek', + 0x1e6c: b'\x11\x1el', + 0x1e6d: b'\x11\x1em', + 0x1e6e: b'\x11\x1en', + 0x1e6f: b'\x11\x1eo', + 0x1e70: b'\x11\x1ep', + 0x1e71: b'\x11\x1eq', + 0x1e72: b'\x11\x1er', + 0x1e73: b'\x11\x1es', + 0x1e74: b'\x11\x1et', + 0x1e75: b'\x11\x1eu', + 0x1e76: b'\x11\x1ev', + 0x1e77: b'\x11\x1ew', + 0x1e78: b'\x11\x1ex', + 0x1e79: b'\x11\x1ey', + 0x1e7a: b'\x11\x1ez', + 0x1e7b: b'\x11\x1e{', + 0x1e7c: b'\x11\x1e|', + 0x1e7d: b'\x11\x1e}', + 0x1e7e: b'\x11\x1e~', + 0x1e7f: b'\x11\x1e\x7f', + 0x1e80: b'\x11\x1e\x80', + 0x1e81: b'\x11\x1e\x81', + 0x1e82: b'\x11\x1e\x82', + 0x1e83: b'\x11\x1e\x83', + 0x1e84: b'\x11\x1e\x84', + 0x1e85: b'\x11\x1e\x85', + 0x1e86: b'\x11\x1e\x86', + 0x1e87: b'\x11\x1e\x87', + 0x1e88: b'\x11\x1e\x88', + 0x1e89: b'\x11\x1e\x89', + 0x1e8a: b'\x11\x1e\x8a', + 0x1e8b: b'\x11\x1e\x8b', + 0x1e8c: b'\x11\x1e\x8c', + 0x1e8d: b'\x11\x1e\x8d', + 0x1e8e: b'\x11\x1e\x8e', + 0x1e8f: b'\x11\x1e\x8f', + 0x1e90: b'\x11\x1e\x90', + 0x1e91: b'\x11\x1e\x91', + 0x1e92: b'\x11\x1e\x92', + 0x1e93: b'\x11\x1e\x93', + 0x1e94: b'\x11\x1e\x94', + 0x1e95: b'\x11\x1e\x95', + 0x1e96: b'\x11\x1e\x96', + 0x1e97: b'\x11\x1e\x97', + 0x1e98: b'\x11\x1e\x98', + 0x1e99: b'\x11\x1e\x99', + 0x1e9a: b'\x11\x1e\x9a', + 0x1e9b: b'\x11\x1e\x9b', + 0x1e9c: b'\x11\x1e\x9c', + 0x1e9d: b'\x11\x1e\x9d', + 0x1e9e: b'\x11\x1e\x9e', + 0x1e9f: b'\x11\x1e\x9f', + 0x1ea0: b'\x11\x1e\xa0', + 0x1ea1: b'\x11\x1e\xa1', + 0x1ea2: b'\x11\x1e\xa2', + 0x1ea3: b'\x11\x1e\xa3', + 0x1ea4: b'\x11\x1e\xa4', + 0x1ea5: b'\x11\x1e\xa5', + 0x1ea6: b'\x11\x1e\xa6', + 0x1ea7: b'\x11\x1e\xa7', + 0x1ea8: b'\x11\x1e\xa8', + 0x1ea9: b'\x11\x1e\xa9', + 0x1eaa: b'\x11\x1e\xaa', + 0x1eab: b'\x11\x1e\xab', + 0x1eac: b'\x11\x1e\xac', + 0x1ead: b'\x11\x1e\xad', + 0x1eae: b'\x11\x1e\xae', + 0x1eaf: b'\x11\x1e\xaf', + 0x1eb0: b'\x11\x1e\xb0', + 0x1eb1: b'\x11\x1e\xb1', + 0x1eb2: b'\x11\x1e\xb2', + 0x1eb3: b'\x11\x1e\xb3', + 0x1eb4: b'\x11\x1e\xb4', + 0x1eb5: b'\x11\x1e\xb5', + 0x1eb6: b'\x11\x1e\xb6', + 0x1eb7: b'\x11\x1e\xb7', + 0x1eb8: b'\x11\x1e\xb8', + 0x1eb9: b'\x11\x1e\xb9', + 0x1eba: b'\x11\x1e\xba', + 0x1ebb: b'\x11\x1e\xbb', + 0x1ebc: b'\x11\x1e\xbc', + 0x1ebd: b'\x11\x1e\xbd', + 0x1ebe: b'\x11\x1e\xbe', + 0x1ebf: b'\x11\x1e\xbf', + 0x1ec0: b'\x11\x1e\xc0', + 0x1ec1: b'\x11\x1e\xc1', + 0x1ec2: b'\x11\x1e\xc2', + 0x1ec3: b'\x11\x1e\xc3', + 0x1ec4: b'\x11\x1e\xc4', + 0x1ec5: b'\x11\x1e\xc5', + 0x1ec6: b'\x11\x1e\xc6', + 0x1ec7: b'\x11\x1e\xc7', + 0x1ec8: b'\x11\x1e\xc8', + 0x1ec9: b'\x11\x1e\xc9', + 0x1eca: b'\x11\x1e\xca', + 0x1ecb: b'\x11\x1e\xcb', + 0x1ecc: b'\x11\x1e\xcc', + 0x1ecd: b'\x11\x1e\xcd', + 0x1ece: b'\x11\x1e\xce', + 0x1ecf: b'\x11\x1e\xcf', + 0x1ed0: b'\x11\x1e\xd0', + 0x1ed1: b'\x11\x1e\xd1', + 0x1ed2: b'\x11\x1e\xd2', + 0x1ed3: b'\x11\x1e\xd3', + 0x1ed4: b'\x11\x1e\xd4', + 0x1ed5: b'\x11\x1e\xd5', + 0x1ed6: b'\x11\x1e\xd6', + 0x1ed7: b'\x11\x1e\xd7', + 0x1ed8: b'\x11\x1e\xd8', + 0x1ed9: b'\x11\x1e\xd9', + 0x1eda: b'\x11\x1e\xda', + 0x1edb: b'\x11\x1e\xdb', + 0x1edc: b'\x11\x1e\xdc', + 0x1edd: b'\x11\x1e\xdd', + 0x1ede: b'\x11\x1e\xde', + 0x1edf: b'\x11\x1e\xdf', + 0x1ee0: b'\x11\x1e\xe0', + 0x1ee1: b'\x11\x1e\xe1', + 0x1ee2: b'\x11\x1e\xe2', + 0x1ee3: b'\x11\x1e\xe3', + 0x1ee4: b'\x11\x1e\xe4', + 0x1ee5: b'\x11\x1e\xe5', + 0x1ee6: b'\x11\x1e\xe6', + 0x1ee7: b'\x11\x1e\xe7', + 0x1ee8: b'\x11\x1e\xe8', + 0x1ee9: b'\x11\x1e\xe9', + 0x1eea: b'\x11\x1e\xea', + 0x1eeb: b'\x11\x1e\xeb', + 0x1eec: b'\x11\x1e\xec', + 0x1eed: b'\x11\x1e\xed', + 0x1eee: b'\x11\x1e\xee', + 0x1eef: b'\x11\x1e\xef', + 0x1ef0: b'\x11\x1e\xf0', + 0x1ef1: b'\x11\x1e\xf1', + 0x1ef2: b'\x11\x1e\xf2', + 0x1ef3: b'\x11\x1e\xf3', + 0x1ef4: b'\x11\x1e\xf4', + 0x1ef5: b'\x11\x1e\xf5', + 0x1ef6: b'\x11\x1e\xf6', + 0x1ef7: b'\x11\x1e\xf7', + 0x1ef8: b'\x11\x1e\xf8', + 0x1ef9: b'\x11\x1e\xf9', + 0x1efa: b'\x11\x1e\xfa', + 0x1efb: b'\x11\x1e\xfb', + 0x1efc: b'\x11\x1e\xfc', + 0x1efd: b'\x11\x1e\xfd', + 0x1efe: b'\x11\x1e\xfe', + 0x1eff: b'\x11\x1e\xff', + 0x1f00: b'\x11\x1f\x00', + 0x1f01: b'\x11\x1f\x01', + 0x1f02: b'\x11\x1f\x02', + 0x1f03: b'\x11\x1f\x03', + 0x1f04: b'\x11\x1f\x04', + 0x1f05: b'\x11\x1f\x05', + 0x1f06: b'\x11\x1f\x06', + 0x1f07: b'\x11\x1f\x07', + 0x1f08: b'\x11\x1f\x08', + 0x1f09: b'\x11\x1f\t', + 0x1f0a: b'\x11\x1f\n', + 0x1f0b: b'\x11\x1f\x0b', + 0x1f0c: b'\x11\x1f\x0c', + 0x1f0d: b'\x11\x1f\r', + 0x1f0e: b'\x11\x1f\x0e', + 0x1f0f: b'\x11\x1f\x0f', + 0x1f10: b'\x11\x1f\x10', + 0x1f11: b'\x11\x1f\x11', + 0x1f12: b'\x11\x1f\x12', + 0x1f13: b'\x11\x1f\x13', + 0x1f14: b'\x11\x1f\x14', + 0x1f15: b'\x11\x1f\x15', + 0x1f16: b'\x11\x1f\x16', + 0x1f17: b'\x11\x1f\x17', + 0x1f18: b'\x11\x1f\x18', + 0x1f19: b'\x11\x1f\x19', + 0x1f1a: b'\x11\x1f\x1a', + 0x1f1b: b'\x11\x1f\x1b', + 0x1f1c: b'\x11\x1f\x1c', + 0x1f1d: b'\x11\x1f\x1d', + 0x1f1e: b'\x11\x1f\x1e', + 0x1f1f: b'\x11\x1f\x1f', + 0x1f20: b'\x11\x1f ', + 0x1f21: b'\x11\x1f!', + 0x1f22: b'\x11\x1f"', + 0x1f23: b'\x11\x1f#', + 0x1f24: b'\x11\x1f$', + 0x1f25: b'\x11\x1f%', + 0x1f26: b'\x11\x1f&', + 0x1f27: b"\x11\x1f'", + 0x1f28: b'\x11\x1f(', + 0x1f29: b'\x11\x1f)', + 0x1f2a: b'\x11\x1f*', + 0x1f2b: b'\x11\x1f+', + 0x1f2c: b'\x11\x1f,', + 0x1f2d: b'\x11\x1f-', + 0x1f2e: b'\x11\x1f.', + 0x1f2f: b'\x11\x1f/', + 0x1f30: b'\x11\x1f0', + 0x1f31: b'\x11\x1f1', + 0x1f32: b'\x11\x1f2', + 0x1f33: b'\x11\x1f3', + 0x1f34: b'\x11\x1f4', + 0x1f35: b'\x11\x1f5', + 0x1f36: b'\x11\x1f6', + 0x1f37: b'\x11\x1f7', + 0x1f38: b'\x11\x1f8', + 0x1f39: b'\x11\x1f9', + 0x1f3a: b'\x11\x1f:', + 0x1f3b: b'\x11\x1f;', + 0x1f3c: b'\x11\x1f<', + 0x1f3d: b'\x11\x1f=', + 0x1f3e: b'\x11\x1f>', + 0x1f3f: b'\x11\x1f?', + 0x1f40: b'\x11\x1f@', + 0x1f41: b'\x11\x1fA', + 0x1f42: b'\x11\x1fB', + 0x1f43: b'\x11\x1fC', + 0x1f44: b'\x11\x1fD', + 0x1f45: b'\x11\x1fE', + 0x1f46: b'\x11\x1fF', + 0x1f47: b'\x11\x1fG', + 0x1f48: b'\x11\x1fH', + 0x1f49: b'\x11\x1fI', + 0x1f4a: b'\x11\x1fJ', + 0x1f4b: b'\x11\x1fK', + 0x1f4c: b'\x11\x1fL', + 0x1f4d: b'\x11\x1fM', + 0x1f4e: b'\x11\x1fN', + 0x1f4f: b'\x11\x1fO', + 0x1f50: b'\x11\x1fP', + 0x1f51: b'\x11\x1fQ', + 0x1f52: b'\x11\x1fR', + 0x1f53: b'\x11\x1fS', + 0x1f54: b'\x11\x1fT', + 0x1f55: b'\x11\x1fU', + 0x1f56: b'\x11\x1fV', + 0x1f57: b'\x11\x1fW', + 0x1f58: b'\x11\x1fX', + 0x1f59: b'\x11\x1fY', + 0x1f5a: b'\x11\x1fZ', + 0x1f5b: b'\x11\x1f[', + 0x1f5c: b'\x11\x1f\\', + 0x1f5d: b'\x11\x1f]', + 0x1f5e: b'\x11\x1f^', + 0x1f5f: b'\x11\x1f_', + 0x1f60: b'\x11\x1f`', + 0x1f61: b'\x11\x1fa', + 0x1f62: b'\x11\x1fb', + 0x1f63: b'\x11\x1fc', + 0x1f64: b'\x11\x1fd', + 0x1f65: b'\x11\x1fe', + 0x1f66: b'\x11\x1ff', + 0x1f67: b'\x11\x1fg', + 0x1f68: b'\x11\x1fh', + 0x1f69: b'\x11\x1fi', + 0x1f6a: b'\x11\x1fj', + 0x1f6b: b'\x11\x1fk', + 0x1f6c: b'\x11\x1fl', + 0x1f6d: b'\x11\x1fm', + 0x1f6e: b'\x11\x1fn', + 0x1f6f: b'\x11\x1fo', + 0x1f70: b'\x11\x1fp', + 0x1f71: b'\x11\x1fq', + 0x1f72: b'\x11\x1fr', + 0x1f73: b'\x11\x1fs', + 0x1f74: b'\x11\x1ft', + 0x1f75: b'\x11\x1fu', + 0x1f76: b'\x11\x1fv', + 0x1f77: b'\x11\x1fw', + 0x1f78: b'\x11\x1fx', + 0x1f79: b'\x11\x1fy', + 0x1f7a: b'\x11\x1fz', + 0x1f7b: b'\x11\x1f{', + 0x1f7c: b'\x11\x1f|', + 0x1f7d: b'\x11\x1f}', + 0x1f7e: b'\x11\x1f~', + 0x1f7f: b'\x11\x1f\x7f', + 0x1f80: b'\x11\x1f\x80', + 0x1f81: b'\x11\x1f\x81', + 0x1f82: b'\x11\x1f\x82', + 0x1f83: b'\x11\x1f\x83', + 0x1f84: b'\x11\x1f\x84', + 0x1f85: b'\x11\x1f\x85', + 0x1f86: b'\x11\x1f\x86', + 0x1f87: b'\x11\x1f\x87', + 0x1f88: b'\x11\x1f\x88', + 0x1f89: b'\x11\x1f\x89', + 0x1f8a: b'\x11\x1f\x8a', + 0x1f8b: b'\x11\x1f\x8b', + 0x1f8c: b'\x11\x1f\x8c', + 0x1f8d: b'\x11\x1f\x8d', + 0x1f8e: b'\x11\x1f\x8e', + 0x1f8f: b'\x11\x1f\x8f', + 0x1f90: b'\x11\x1f\x90', + 0x1f91: b'\x11\x1f\x91', + 0x1f92: b'\x11\x1f\x92', + 0x1f93: b'\x11\x1f\x93', + 0x1f94: b'\x11\x1f\x94', + 0x1f95: b'\x11\x1f\x95', + 0x1f96: b'\x11\x1f\x96', + 0x1f97: b'\x11\x1f\x97', + 0x1f98: b'\x11\x1f\x98', + 0x1f99: b'\x11\x1f\x99', + 0x1f9a: b'\x11\x1f\x9a', + 0x1f9b: b'\x11\x1f\x9b', + 0x1f9c: b'\x11\x1f\x9c', + 0x1f9d: b'\x11\x1f\x9d', + 0x1f9e: b'\x11\x1f\x9e', + 0x1f9f: b'\x11\x1f\x9f', + 0x1fa0: b'\x11\x1f\xa0', + 0x1fa1: b'\x11\x1f\xa1', + 0x1fa2: b'\x11\x1f\xa2', + 0x1fa3: b'\x11\x1f\xa3', + 0x1fa4: b'\x11\x1f\xa4', + 0x1fa5: b'\x11\x1f\xa5', + 0x1fa6: b'\x11\x1f\xa6', + 0x1fa7: b'\x11\x1f\xa7', + 0x1fa8: b'\x11\x1f\xa8', + 0x1fa9: b'\x11\x1f\xa9', + 0x1faa: b'\x11\x1f\xaa', + 0x1fab: b'\x11\x1f\xab', + 0x1fac: b'\x11\x1f\xac', + 0x1fad: b'\x11\x1f\xad', + 0x1fae: b'\x11\x1f\xae', + 0x1faf: b'\x11\x1f\xaf', + 0x1fb0: b'\x11\x1f\xb0', + 0x1fb1: b'\x11\x1f\xb1', + 0x1fb2: b'\x11\x1f\xb2', + 0x1fb3: b'\x11\x1f\xb3', + 0x1fb4: b'\x11\x1f\xb4', + 0x1fb5: b'\x11\x1f\xb5', + 0x1fb6: b'\x11\x1f\xb6', + 0x1fb7: b'\x11\x1f\xb7', + 0x1fb8: b'\x11\x1f\xb8', + 0x1fb9: b'\x11\x1f\xb9', + 0x1fba: b'\x11\x1f\xba', + 0x1fbb: b'\x11\x1f\xbb', + 0x1fbc: b'\x11\x1f\xbc', + 0x1fbd: b'\x11\x1f\xbd', + 0x1fbe: b'\x11\x1f\xbe', + 0x1fbf: b'\x11\x1f\xbf', + 0x1fc0: b'\x11\x1f\xc0', + 0x1fc1: b'\x11\x1f\xc1', + 0x1fc2: b'\x11\x1f\xc2', + 0x1fc3: b'\x11\x1f\xc3', + 0x1fc4: b'\x11\x1f\xc4', + 0x1fc5: b'\x11\x1f\xc5', + 0x1fc6: b'\x11\x1f\xc6', + 0x1fc7: b'\x11\x1f\xc7', + 0x1fc8: b'\x11\x1f\xc8', + 0x1fc9: b'\x11\x1f\xc9', + 0x1fca: b'\x11\x1f\xca', + 0x1fcb: b'\x11\x1f\xcb', + 0x1fcc: b'\x11\x1f\xcc', + 0x1fcd: b'\x11\x1f\xcd', + 0x1fce: b'\x11\x1f\xce', + 0x1fcf: b'\x11\x1f\xcf', + 0x1fd0: b'\x11\x1f\xd0', + 0x1fd1: b'\x11\x1f\xd1', + 0x1fd2: b'\x11\x1f\xd2', + 0x1fd3: b'\x11\x1f\xd3', + 0x1fd4: b'\x11\x1f\xd4', + 0x1fd5: b'\x11\x1f\xd5', + 0x1fd6: b'\x11\x1f\xd6', + 0x1fd7: b'\x11\x1f\xd7', + 0x1fd8: b'\x11\x1f\xd8', + 0x1fd9: b'\x11\x1f\xd9', + 0x1fda: b'\x11\x1f\xda', + 0x1fdb: b'\x11\x1f\xdb', + 0x1fdc: b'\x11\x1f\xdc', + 0x1fdd: b'\x11\x1f\xdd', + 0x1fde: b'\x11\x1f\xde', + 0x1fdf: b'\x11\x1f\xdf', + 0x1fe0: b'\x11\x1f\xe0', + 0x1fe1: b'\x11\x1f\xe1', + 0x1fe2: b'\x11\x1f\xe2', + 0x1fe3: b'\x11\x1f\xe3', + 0x1fe4: b'\x11\x1f\xe4', + 0x1fe5: b'\x11\x1f\xe5', + 0x1fe6: b'\x11\x1f\xe6', + 0x1fe7: b'\x11\x1f\xe7', + 0x1fe8: b'\x11\x1f\xe8', + 0x1fe9: b'\x11\x1f\xe9', + 0x1fea: b'\x11\x1f\xea', + 0x1feb: b'\x11\x1f\xeb', + 0x1fec: b'\x11\x1f\xec', + 0x1fed: b'\x11\x1f\xed', + 0x1fee: b'\x11\x1f\xee', + 0x1fef: b'\x11\x1f\xef', + 0x1ff0: b'\x11\x1f\xf0', + 0x1ff1: b'\x11\x1f\xf1', + 0x1ff2: b'\x11\x1f\xf2', + 0x1ff3: b'\x11\x1f\xf3', + 0x1ff4: b'\x11\x1f\xf4', + 0x1ff5: b'\x11\x1f\xf5', + 0x1ff6: b'\x11\x1f\xf6', + 0x1ff7: b'\x11\x1f\xf7', + 0x1ff8: b'\x11\x1f\xf8', + 0x1ff9: b'\x11\x1f\xf9', + 0x1ffa: b'\x11\x1f\xfa', + 0x1ffb: b'\x11\x1f\xfb', + 0x1ffc: b'\x11\x1f\xfc', + 0x1ffd: b'\x11\x1f\xfd', + 0x1ffe: b'\x11\x1f\xfe', + 0x1fff: b'\x11\x1f\xff', + 0x2000: b'\x11 \x00', + 0x2001: b'\x11 \x01', + 0x2002: b'\x11 \x02', + 0x2003: b'\x11 \x03', + 0x2004: b'\x11 \x04', + 0x2005: b'\x11 \x05', + 0x2006: b'\x11 \x06', + 0x2007: b'\x11 \x07', + 0x2008: b'\x11 \x08', + 0x2009: b'\x11 \t', + 0x200a: b'\x11 \n', + 0x200b: b'\x11 \x0b', + 0x200c: b'\x11 \x0c', + 0x200d: b'\x11 \r', + 0x200e: b'\x11 \x0e', + 0x200f: b'\x11 \x0f', + 0x2010: b'\x11 \x10', + 0x2011: b'\x11 \x11', + 0x2012: b'\x11 \x12', + 0x2013: b'\x11 \x13', + 0x2014: b'\x11 \x14', + 0x2015: b'\x11 \x15', + 0x2016: b'\x11 \x16', + 0x2017: b'\x11 \x17', + 0x2018: b'\x11 \x18', + 0x2019: b'\x11 \x19', + 0x201a: b'\x11 \x1a', + 0x201b: b'\x11 \x1b', + 0x201c: b'\x11 \x1c', + 0x201d: b'\x11 \x1d', + 0x201e: b'\x11 \x1e', + 0x201f: b'\x11 \x1f', + 0x2020: b'\x11 ', + 0x2021: b'\x11 !', + 0x2022: b'\x11 "', + 0x2023: b'\x11 #', + 0x2024: b'\x11 $', + 0x2025: b'\x11 %', + 0x2026: b'\x11 &', + 0x2027: b"\x11 '", + 0x2028: b'\x11 (', + 0x2029: b'\x11 )', + 0x202a: b'\x11 *', + 0x202b: b'\x11 +', + 0x202c: b'\x11 ,', + 0x202d: b'\x11 -', + 0x202e: b'\x11 .', + 0x202f: b'\x11 /', + 0x2030: b'\x11 0', + 0x2031: b'\x11 1', + 0x2032: b'\x11 2', + 0x2033: b'\x11 3', + 0x2034: b'\x11 4', + 0x2035: b'\x11 5', + 0x2036: b'\x11 6', + 0x2037: b'\x11 7', + 0x2038: b'\x11 8', + 0x2039: b'\x11 9', + 0x203a: b'\x11 :', + 0x203b: b'\x11 ;', + 0x203c: b'\x11 <', + 0x203d: b'\x11 =', + 0x203e: b'\x11 >', + 0x203f: b'\x11 ?', + 0x2040: b'\x11 @', + 0x2041: b'\x11 A', + 0x2042: b'\x11 B', + 0x2043: b'\x11 C', + 0x2044: b'\x11 D', + 0x2045: b'\x11 E', + 0x2046: b'\x11 F', + 0x2047: b'\x11 G', + 0x2048: b'\x11 H', + 0x2049: b'\x11 I', + 0x204a: b'\x11 J', + 0x204b: b'\x11 K', + 0x204c: b'\x11 L', + 0x204d: b'\x11 M', + 0x204e: b'\x11 N', + 0x204f: b'\x11 O', + 0x2050: b'\x11 P', + 0x2051: b'\x11 Q', + 0x2052: b'\x11 R', + 0x2053: b'\x11 S', + 0x2054: b'\x11 T', + 0x2055: b'\x11 U', + 0x2056: b'\x11 V', + 0x2057: b'\x11 W', + 0x2058: b'\x11 X', + 0x2059: b'\x11 Y', + 0x205a: b'\x11 Z', + 0x205b: b'\x11 [', + 0x205c: b'\x11 \\', + 0x205d: b'\x11 ]', + 0x205e: b'\x11 ^', + 0x205f: b'\x11 _', + 0x2060: b'\x11 `', + 0x2061: b'\x11 a', + 0x2062: b'\x11 b', + 0x2063: b'\x11 c', + 0x2064: b'\x11 d', + 0x2065: b'\x11 e', + 0x2066: b'\x11 f', + 0x2067: b'\x11 g', + 0x2068: b'\x11 h', + 0x2069: b'\x11 i', + 0x206a: b'\x11 j', + 0x206b: b'\x11 k', + 0x206c: b'\x11 l', + 0x206d: b'\x11 m', + 0x206e: b'\x11 n', + 0x206f: b'\x11 o', + 0x2070: b'\x11 p', + 0x2071: b'\x11 q', + 0x2072: b'\x11 r', + 0x2073: b'\x11 s', + 0x2074: b'\x11 t', + 0x2075: b'\x11 u', + 0x2076: b'\x11 v', + 0x2077: b'\x11 w', + 0x2078: b'\x11 x', + 0x2079: b'\x11 y', + 0x207a: b'\x11 z', + 0x207b: b'\x11 {', + 0x207c: b'\x11 |', + 0x207d: b'\x11 }', + 0x207e: b'\x11 ~', + 0x207f: b'\x11 \x7f', + 0x2080: b'\x11 \x80', + 0x2081: b'\x11 \x81', + 0x2082: b'\x11 \x82', + 0x2083: b'\x11 \x83', + 0x2084: b'\x11 \x84', + 0x2085: b'\x11 \x85', + 0x2086: b'\x11 \x86', + 0x2087: b'\x11 \x87', + 0x2088: b'\x11 \x88', + 0x2089: b'\x11 \x89', + 0x208a: b'\x11 \x8a', + 0x208b: b'\x11 \x8b', + 0x208c: b'\x11 \x8c', + 0x208d: b'\x11 \x8d', + 0x208e: b'\x11 \x8e', + 0x208f: b'\x11 \x8f', + 0x2090: b'\x11 \x90', + 0x2091: b'\x11 \x91', + 0x2092: b'\x11 \x92', + 0x2093: b'\x11 \x93', + 0x2094: b'\x11 \x94', + 0x2095: b'\x11 \x95', + 0x2096: b'\x11 \x96', + 0x2097: b'\x11 \x97', + 0x2098: b'\x11 \x98', + 0x2099: b'\x11 \x99', + 0x209a: b'\x11 \x9a', + 0x209b: b'\x11 \x9b', + 0x209c: b'\x11 \x9c', + 0x209d: b'\x11 \x9d', + 0x209e: b'\x11 \x9e', + 0x209f: b'\x11 \x9f', + 0x20a0: b'\x11 \xa0', + 0x20a1: b'\x11 \xa1', + 0x20a2: b'\x11 \xa2', + 0x20a3: b'\x11 \xa3', + 0x20a4: b'\x11 \xa4', + 0x20a5: b'\x11 \xa5', + 0x20a6: b'\x11 \xa6', + 0x20a7: b'\x11 \xa7', + 0x20a8: b'\x11 \xa8', + 0x20a9: b'\x11 \xa9', + 0x20aa: b'\x11 \xaa', + 0x20ab: b'\x11 \xab', + 0x20ac: b'\x11 \xac', + 0x20ad: b'\x11 \xad', + 0x20ae: b'\x11 \xae', + 0x20af: b'\x11 \xaf', + 0x20b0: b'\x11 \xb0', + 0x20b1: b'\x11 \xb1', + 0x20b2: b'\x11 \xb2', + 0x20b3: b'\x11 \xb3', + 0x20b4: b'\x11 \xb4', + 0x20b5: b'\x11 \xb5', + 0x20b6: b'\x11 \xb6', + 0x20b7: b'\x11 \xb7', + 0x20b8: b'\x11 \xb8', + 0x20b9: b'\x11 \xb9', + 0x20ba: b'\x11 \xba', + 0x20bb: b'\x11 \xbb', + 0x20bc: b'\x11 \xbc', + 0x20bd: b'\x11 \xbd', + 0x20be: b'\x11 \xbe', + 0x20bf: b'\x11 \xbf', + 0x20c0: b'\x11 \xc0', + 0x20c1: b'\x11 \xc1', + 0x20c2: b'\x11 \xc2', + 0x20c3: b'\x11 \xc3', + 0x20c4: b'\x11 \xc4', + 0x20c5: b'\x11 \xc5', + 0x20c6: b'\x11 \xc6', + 0x20c7: b'\x11 \xc7', + 0x20c8: b'\x11 \xc8', + 0x20c9: b'\x11 \xc9', + 0x20ca: b'\x11 \xca', + 0x20cb: b'\x11 \xcb', + 0x20cc: b'\x11 \xcc', + 0x20cd: b'\x11 \xcd', + 0x20ce: b'\x11 \xce', + 0x20cf: b'\x11 \xcf', + 0x20d0: b'\x11 \xd0', + 0x20d1: b'\x11 \xd1', + 0x20d2: b'\x11 \xd2', + 0x20d3: b'\x11 \xd3', + 0x20d4: b'\x11 \xd4', + 0x20d5: b'\x11 \xd5', + 0x20d6: b'\x11 \xd6', + 0x20d7: b'\x11 \xd7', + 0x20d8: b'\x11 \xd8', + 0x20d9: b'\x11 \xd9', + 0x20da: b'\x11 \xda', + 0x20db: b'\x11 \xdb', + 0x20dc: b'\x11 \xdc', + 0x20dd: b'\x11 \xdd', + 0x20de: b'\x11 \xde', + 0x20df: b'\x11 \xdf', + 0x20e0: b'\x11 \xe0', + 0x20e1: b'\x11 \xe1', + 0x20e2: b'\x11 \xe2', + 0x20e3: b'\x11 \xe3', + 0x20e4: b'\x11 \xe4', + 0x20e5: b'\x11 \xe5', + 0x20e6: b'\x11 \xe6', + 0x20e7: b'\x11 \xe7', + 0x20e8: b'\x11 \xe8', + 0x20e9: b'\x11 \xe9', + 0x20ea: b'\x11 \xea', + 0x20eb: b'\x11 \xeb', + 0x20ec: b'\x11 \xec', + 0x20ed: b'\x11 \xed', + 0x20ee: b'\x11 \xee', + 0x20ef: b'\x11 \xef', + 0x20f0: b'\x11 \xf0', + 0x20f1: b'\x11 \xf1', + 0x20f2: b'\x11 \xf2', + 0x20f3: b'\x11 \xf3', + 0x20f4: b'\x11 \xf4', + 0x20f5: b'\x11 \xf5', + 0x20f6: b'\x11 \xf6', + 0x20f7: b'\x11 \xf7', + 0x20f8: b'\x11 \xf8', + 0x20f9: b'\x11 \xf9', + 0x20fa: b'\x11 \xfa', + 0x20fb: b'\x11 \xfb', + 0x20fc: b'\x11 \xfc', + 0x20fd: b'\x11 \xfd', + 0x20fe: b'\x11 \xfe', + 0x20ff: b'\x11 \xff', + 0x2100: b'\x11!\x00', + 0x2101: b'\x11!\x01', + 0x2102: b'\x11!\x02', + 0x2103: b'\x11!\x03', + 0x2104: b'\x11!\x04', + 0x2105: b'\x11!\x05', + 0x2106: b'\x11!\x06', + 0x2107: b'\x11!\x07', + 0x2108: b'\x11!\x08', + 0x2109: b'\x11!\t', + 0x210a: b'\x11!\n', + 0x210b: b'\x11!\x0b', + 0x210c: b'\x11!\x0c', + 0x210d: b'\x11!\r', + 0x210e: b'\x11!\x0e', + 0x210f: b'\x11!\x0f', + 0x2110: b'\x11!\x10', + 0x2111: b'\x11!\x11', + 0x2112: b'\x11!\x12', + 0x2113: b'\x11!\x13', + 0x2114: b'\x11!\x14', + 0x2115: b'\x11!\x15', + 0x2116: b'\x11!\x16', + 0x2117: b'\x11!\x17', + 0x2118: b'\x11!\x18', + 0x2119: b'\x11!\x19', + 0x211a: b'\x11!\x1a', + 0x211b: b'\x11!\x1b', + 0x211c: b'\x11!\x1c', + 0x211d: b'\x11!\x1d', + 0x211e: b'\x11!\x1e', + 0x211f: b'\x11!\x1f', + 0x2120: b'\x11! ', + 0x2121: b'\x11!!', + 0x2122: b'\x11!"', + 0x2123: b'\x11!#', + 0x2124: b'\x11!$', + 0x2125: b'\x11!%', + 0x2126: b'\x11!&', + 0x2127: b"\x11!'", + 0x2128: b'\x11!(', + 0x2129: b'\x11!)', + 0x212a: b'\x11!*', + 0x212b: b'\x11!+', + 0x212c: b'\x11!,', + 0x212d: b'\x11!-', + 0x212e: b'\x11!.', + 0x212f: b'\x11!/', + 0x2130: b'\x11!0', + 0x2131: b'\x11!1', + 0x2132: b'\x11!2', + 0x2133: b'\x11!3', + 0x2134: b'\x11!4', + 0x2135: b'\x11!5', + 0x2136: b'\x11!6', + 0x2137: b'\x11!7', + 0x2138: b'\x11!8', + 0x2139: b'\x11!9', + 0x213a: b'\x11!:', + 0x213b: b'\x11!;', + 0x213c: b'\x11!<', + 0x213d: b'\x11!=', + 0x213e: b'\x11!>', + 0x213f: b'\x11!?', + 0x2140: b'\x11!@', + 0x2141: b'\x11!A', + 0x2142: b'\x11!B', + 0x2143: b'\x11!C', + 0x2144: b'\x11!D', + 0x2145: b'\x11!E', + 0x2146: b'\x11!F', + 0x2147: b'\x11!G', + 0x2148: b'\x11!H', + 0x2149: b'\x11!I', + 0x214a: b'\x11!J', + 0x214b: b'\x11!K', + 0x214c: b'\x11!L', + 0x214d: b'\x11!M', + 0x214e: b'\x11!N', + 0x214f: b'\x11!O', + 0x2150: b'\x11!P', + 0x2151: b'\x11!Q', + 0x2152: b'\x11!R', + 0x2153: b'\x11!S', + 0x2154: b'\x11!T', + 0x2155: b'\x11!U', + 0x2156: b'\x11!V', + 0x2157: b'\x11!W', + 0x2158: b'\x11!X', + 0x2159: b'\x11!Y', + 0x215a: b'\x11!Z', + 0x215b: b'\x11![', + 0x215c: b'\x11!\\', + 0x215d: b'\x11!]', + 0x215e: b'\x11!^', + 0x215f: b'\x11!_', + 0x2160: b'\x11!`', + 0x2161: b'\x11!a', + 0x2162: b'\x11!b', + 0x2163: b'\x11!c', + 0x2164: b'\x11!d', + 0x2165: b'\x11!e', + 0x2166: b'\x11!f', + 0x2167: b'\x11!g', + 0x2168: b'\x11!h', + 0x2169: b'\x11!i', + 0x216a: b'\x11!j', + 0x216b: b'\x11!k', + 0x216c: b'\x11!l', + 0x216d: b'\x11!m', + 0x216e: b'\x11!n', + 0x216f: b'\x11!o', + 0x2170: b'\x11!p', + 0x2171: b'\x11!q', + 0x2172: b'\x11!r', + 0x2173: b'\x11!s', + 0x2174: b'\x11!t', + 0x2175: b'\x11!u', + 0x2176: b'\x11!v', + 0x2177: b'\x11!w', + 0x2178: b'\x11!x', + 0x2179: b'\x11!y', + 0x217a: b'\x11!z', + 0x217b: b'\x11!{', + 0x217c: b'\x11!|', + 0x217d: b'\x11!}', + 0x217e: b'\x11!~', + 0x217f: b'\x11!\x7f', + 0x2180: b'\x11!\x80', + 0x2181: b'\x11!\x81', + 0x2182: b'\x11!\x82', + 0x2183: b'\x11!\x83', + 0x2184: b'\x11!\x84', + 0x2185: b'\x11!\x85', + 0x2186: b'\x11!\x86', + 0x2187: b'\x11!\x87', + 0x2188: b'\x11!\x88', + 0x2189: b'\x11!\x89', + 0x218a: b'\x11!\x8a', + 0x218b: b'\x11!\x8b', + 0x218c: b'\x11!\x8c', + 0x218d: b'\x11!\x8d', + 0x218e: b'\x11!\x8e', + 0x218f: b'\x11!\x8f', + 0x2190: b'\x11!\x90', + 0x2191: b'\x11!\x91', + 0x2192: b'\x11!\x92', + 0x2193: b'\x11!\x93', + 0x2194: b'\x11!\x94', + 0x2195: b'\x11!\x95', + 0x2196: b'\x11!\x96', + 0x2197: b'\x11!\x97', + 0x2198: b'\x11!\x98', + 0x2199: b'\x11!\x99', + 0x219a: b'\x11!\x9a', + 0x219b: b'\x11!\x9b', + 0x219c: b'\x11!\x9c', + 0x219d: b'\x11!\x9d', + 0x219e: b'\x11!\x9e', + 0x219f: b'\x11!\x9f', + 0x21a0: b'\x11!\xa0', + 0x21a1: b'\x11!\xa1', + 0x21a2: b'\x11!\xa2', + 0x21a3: b'\x11!\xa3', + 0x21a4: b'\x11!\xa4', + 0x21a5: b'\x11!\xa5', + 0x21a6: b'\x11!\xa6', + 0x21a7: b'\x11!\xa7', + 0x21a8: b'\x11!\xa8', + 0x21a9: b'\x11!\xa9', + 0x21aa: b'\x11!\xaa', + 0x21ab: b'\x11!\xab', + 0x21ac: b'\x11!\xac', + 0x21ad: b'\x11!\xad', + 0x21ae: b'\x11!\xae', + 0x21af: b'\x11!\xaf', + 0x21b0: b'\x11!\xb0', + 0x21b1: b'\x11!\xb1', + 0x21b2: b'\x11!\xb2', + 0x21b3: b'\x11!\xb3', + 0x21b4: b'\x11!\xb4', + 0x21b5: b'\x11!\xb5', + 0x21b6: b'\x11!\xb6', + 0x21b7: b'\x11!\xb7', + 0x21b8: b'\x11!\xb8', + 0x21b9: b'\x11!\xb9', + 0x21ba: b'\x11!\xba', + 0x21bb: b'\x11!\xbb', + 0x21bc: b'\x11!\xbc', + 0x21bd: b'\x11!\xbd', + 0x21be: b'\x11!\xbe', + 0x21bf: b'\x11!\xbf', + 0x21c0: b'\x11!\xc0', + 0x21c1: b'\x11!\xc1', + 0x21c2: b'\x11!\xc2', + 0x21c3: b'\x11!\xc3', + 0x21c4: b'\x11!\xc4', + 0x21c5: b'\x11!\xc5', + 0x21c6: b'\x11!\xc6', + 0x21c7: b'\x11!\xc7', + 0x21c8: b'\x11!\xc8', + 0x21c9: b'\x11!\xc9', + 0x21ca: b'\x11!\xca', + 0x21cb: b'\x11!\xcb', + 0x21cc: b'\x11!\xcc', + 0x21cd: b'\x11!\xcd', + 0x21ce: b'\x11!\xce', + 0x21cf: b'\x11!\xcf', + 0x21d0: b'\x11!\xd0', + 0x21d1: b'\x11!\xd1', + 0x21d2: b'\x11!\xd2', + 0x21d3: b'\x11!\xd3', + 0x21d4: b'\x11!\xd4', + 0x21d5: b'\x11!\xd5', + 0x21d6: b'\x11!\xd6', + 0x21d7: b'\x11!\xd7', + 0x21d8: b'\x11!\xd8', + 0x21d9: b'\x11!\xd9', + 0x21da: b'\x11!\xda', + 0x21db: b'\x11!\xdb', + 0x21dc: b'\x11!\xdc', + 0x21dd: b'\x11!\xdd', + 0x21de: b'\x11!\xde', + 0x21df: b'\x11!\xdf', + 0x21e0: b'\x11!\xe0', + 0x21e1: b'\x11!\xe1', + 0x21e2: b'\x11!\xe2', + 0x21e3: b'\x11!\xe3', + 0x21e4: b'\x11!\xe4', + 0x21e5: b'\x11!\xe5', + 0x21e6: b'\x11!\xe6', + 0x21e7: b'\x11!\xe7', + 0x21e8: b'\x11!\xe8', + 0x21e9: b'\x11!\xe9', + 0x21ea: b'\x11!\xea', + 0x21eb: b'\x11!\xeb', + 0x21ec: b'\x11!\xec', + 0x21ed: b'\x11!\xed', + 0x21ee: b'\x11!\xee', + 0x21ef: b'\x11!\xef', + 0x21f0: b'\x11!\xf0', + 0x21f1: b'\x11!\xf1', + 0x21f2: b'\x11!\xf2', + 0x21f3: b'\x11!\xf3', + 0x21f4: b'\x11!\xf4', + 0x21f5: b'\x11!\xf5', + 0x21f6: b'\x11!\xf6', + 0x21f7: b'\x11!\xf7', + 0x21f8: b'\x11!\xf8', + 0x21f9: b'\x11!\xf9', + 0x21fa: b'\x11!\xfa', + 0x21fb: b'\x11!\xfb', + 0x21fc: b'\x11!\xfc', + 0x21fd: b'\x11!\xfd', + 0x21fe: b'\x11!\xfe', + 0x21ff: b'\x11!\xff', + 0x2200: b'\x11"\x00', + 0x2201: b'\x11"\x01', + 0x2202: b'\x11"\x02', + 0x2203: b'\x11"\x03', + 0x2204: b'\x11"\x04', + 0x2205: b'\x11"\x05', + 0x2206: b'\x11"\x06', + 0x2207: b'\x11"\x07', + 0x2208: b'\x11"\x08', + 0x2209: b'\x11"\t', + 0x220a: b'\x11"\n', + 0x220b: b'\x11"\x0b', + 0x220c: b'\x11"\x0c', + 0x220d: b'\x11"\r', + 0x220e: b'\x11"\x0e', + 0x220f: b'\x11"\x0f', + 0x2210: b'\x11"\x10', + 0x2211: b'\x11"\x11', + 0x2212: b'\x11"\x12', + 0x2213: b'\x11"\x13', + 0x2214: b'\x11"\x14', + 0x2215: b'\x11"\x15', + 0x2216: b'\x11"\x16', + 0x2217: b'\x11"\x17', + 0x2218: b'\x11"\x18', + 0x2219: b'\x11"\x19', + 0x221a: b'\x11"\x1a', + 0x221b: b'\x11"\x1b', + 0x221c: b'\x11"\x1c', + 0x221d: b'\x11"\x1d', + 0x221e: b'\x11"\x1e', + 0x221f: b'\x11"\x1f', + 0x2220: b'\x11" ', + 0x2221: b'\x11"!', + 0x2222: b'\x11""', + 0x2223: b'\x11"#', + 0x2224: b'\x11"$', + 0x2225: b'\x11"%', + 0x2226: b'\x11"&', + 0x2227: b'\x11"\'', + 0x2228: b'\x11"(', + 0x2229: b'\x11")', + 0x222a: b'\x11"*', + 0x222b: b'\x11"+', + 0x222c: b'\x11",', + 0x222d: b'\x11"-', + 0x222e: b'\x11".', + 0x222f: b'\x11"/', + 0x2230: b'\x11"0', + 0x2231: b'\x11"1', + 0x2232: b'\x11"2', + 0x2233: b'\x11"3', + 0x2234: b'\x11"4', + 0x2235: b'\x11"5', + 0x2236: b'\x11"6', + 0x2237: b'\x11"7', + 0x2238: b'\x11"8', + 0x2239: b'\x11"9', + 0x223a: b'\x11":', + 0x223b: b'\x11";', + 0x223c: b'\x11"<', + 0x223d: b'\x11"=', + 0x223e: b'\x11">', + 0x223f: b'\x11"?', + 0x2240: b'\x11"@', + 0x2241: b'\x11"A', + 0x2242: b'\x11"B', + 0x2243: b'\x11"C', + 0x2244: b'\x11"D', + 0x2245: b'\x11"E', + 0x2246: b'\x11"F', + 0x2247: b'\x11"G', + 0x2248: b'\x11"H', + 0x2249: b'\x11"I', + 0x224a: b'\x11"J', + 0x224b: b'\x11"K', + 0x224c: b'\x11"L', + 0x224d: b'\x11"M', + 0x224e: b'\x11"N', + 0x224f: b'\x11"O', + 0x2250: b'\x11"P', + 0x2251: b'\x11"Q', + 0x2252: b'\x11"R', + 0x2253: b'\x11"S', + 0x2254: b'\x11"T', + 0x2255: b'\x11"U', + 0x2256: b'\x11"V', + 0x2257: b'\x11"W', + 0x2258: b'\x11"X', + 0x2259: b'\x11"Y', + 0x225a: b'\x11"Z', + 0x225b: b'\x11"[', + 0x225c: b'\x11"\\', + 0x225d: b'\x11"]', + 0x225e: b'\x11"^', + 0x225f: b'\x11"_', + 0x2260: b'\x11"`', + 0x2261: b'\x11"a', + 0x2262: b'\x11"b', + 0x2263: b'\x11"c', + 0x2264: b'\x11"d', + 0x2265: b'\x11"e', + 0x2266: b'\x11"f', + 0x2267: b'\x11"g', + 0x2268: b'\x11"h', + 0x2269: b'\x11"i', + 0x226a: b'\x11"j', + 0x226b: b'\x11"k', + 0x226c: b'\x11"l', + 0x226d: b'\x11"m', + 0x226e: b'\x11"n', + 0x226f: b'\x11"o', + 0x2270: b'\x11"p', + 0x2271: b'\x11"q', + 0x2272: b'\x11"r', + 0x2273: b'\x11"s', + 0x2274: b'\x11"t', + 0x2275: b'\x11"u', + 0x2276: b'\x11"v', + 0x2277: b'\x11"w', + 0x2278: b'\x11"x', + 0x2279: b'\x11"y', + 0x227a: b'\x11"z', + 0x227b: b'\x11"{', + 0x227c: b'\x11"|', + 0x227d: b'\x11"}', + 0x227e: b'\x11"~', + 0x227f: b'\x11"\x7f', + 0x2280: b'\x11"\x80', + 0x2281: b'\x11"\x81', + 0x2282: b'\x11"\x82', + 0x2283: b'\x11"\x83', + 0x2284: b'\x11"\x84', + 0x2285: b'\x11"\x85', + 0x2286: b'\x11"\x86', + 0x2287: b'\x11"\x87', + 0x2288: b'\x11"\x88', + 0x2289: b'\x11"\x89', + 0x228a: b'\x11"\x8a', + 0x228b: b'\x11"\x8b', + 0x228c: b'\x11"\x8c', + 0x228d: b'\x11"\x8d', + 0x228e: b'\x11"\x8e', + 0x228f: b'\x11"\x8f', + 0x2290: b'\x11"\x90', + 0x2291: b'\x11"\x91', + 0x2292: b'\x11"\x92', + 0x2293: b'\x11"\x93', + 0x2294: b'\x11"\x94', + 0x2295: b'\x11"\x95', + 0x2296: b'\x11"\x96', + 0x2297: b'\x11"\x97', + 0x2298: b'\x11"\x98', + 0x2299: b'\x11"\x99', + 0x229a: b'\x11"\x9a', + 0x229b: b'\x11"\x9b', + 0x229c: b'\x11"\x9c', + 0x229d: b'\x11"\x9d', + 0x229e: b'\x11"\x9e', + 0x229f: b'\x11"\x9f', + 0x22a0: b'\x11"\xa0', + 0x22a1: b'\x11"\xa1', + 0x22a2: b'\x11"\xa2', + 0x22a3: b'\x11"\xa3', + 0x22a4: b'\x11"\xa4', + 0x22a5: b'\x11"\xa5', + 0x22a6: b'\x11"\xa6', + 0x22a7: b'\x11"\xa7', + 0x22a8: b'\x11"\xa8', + 0x22a9: b'\x11"\xa9', + 0x22aa: b'\x11"\xaa', + 0x22ab: b'\x11"\xab', + 0x22ac: b'\x11"\xac', + 0x22ad: b'\x11"\xad', + 0x22ae: b'\x11"\xae', + 0x22af: b'\x11"\xaf', + 0x22b0: b'\x11"\xb0', + 0x22b1: b'\x11"\xb1', + 0x22b2: b'\x11"\xb2', + 0x22b3: b'\x11"\xb3', + 0x22b4: b'\x11"\xb4', + 0x22b5: b'\x11"\xb5', + 0x22b6: b'\x11"\xb6', + 0x22b7: b'\x11"\xb7', + 0x22b8: b'\x11"\xb8', + 0x22b9: b'\x11"\xb9', + 0x22ba: b'\x11"\xba', + 0x22bb: b'\x11"\xbb', + 0x22bc: b'\x11"\xbc', + 0x22bd: b'\x11"\xbd', + 0x22be: b'\x11"\xbe', + 0x22bf: b'\x11"\xbf', + 0x22c0: b'\x11"\xc0', + 0x22c1: b'\x11"\xc1', + 0x22c2: b'\x11"\xc2', + 0x22c3: b'\x11"\xc3', + 0x22c4: b'\x11"\xc4', + 0x22c5: b'\x11"\xc5', + 0x22c6: b'\x11"\xc6', + 0x22c7: b'\x11"\xc7', + 0x22c8: b'\x11"\xc8', + 0x22c9: b'\x11"\xc9', + 0x22ca: b'\x11"\xca', + 0x22cb: b'\x11"\xcb', + 0x22cc: b'\x11"\xcc', + 0x22cd: b'\x11"\xcd', + 0x22ce: b'\x11"\xce', + 0x22cf: b'\x11"\xcf', + 0x22d0: b'\x11"\xd0', + 0x22d1: b'\x11"\xd1', + 0x22d2: b'\x11"\xd2', + 0x22d3: b'\x11"\xd3', + 0x22d4: b'\x11"\xd4', + 0x22d5: b'\x11"\xd5', + 0x22d6: b'\x11"\xd6', + 0x22d7: b'\x11"\xd7', + 0x22d8: b'\x11"\xd8', + 0x22d9: b'\x11"\xd9', + 0x22da: b'\x11"\xda', + 0x22db: b'\x11"\xdb', + 0x22dc: b'\x11"\xdc', + 0x22dd: b'\x11"\xdd', + 0x22de: b'\x11"\xde', + 0x22df: b'\x11"\xdf', + 0x22e0: b'\x11"\xe0', + 0x22e1: b'\x11"\xe1', + 0x22e2: b'\x11"\xe2', + 0x22e3: b'\x11"\xe3', + 0x22e4: b'\x11"\xe4', + 0x22e5: b'\x11"\xe5', + 0x22e6: b'\x11"\xe6', + 0x22e7: b'\x11"\xe7', + 0x22e8: b'\x11"\xe8', + 0x22e9: b'\x11"\xe9', + 0x22ea: b'\x11"\xea', + 0x22eb: b'\x11"\xeb', + 0x22ec: b'\x11"\xec', + 0x22ed: b'\x11"\xed', + 0x22ee: b'\x11"\xee', + 0x22ef: b'\x11"\xef', + 0x22f0: b'\x11"\xf0', + 0x22f1: b'\x11"\xf1', + 0x22f2: b'\x11"\xf2', + 0x22f3: b'\x11"\xf3', + 0x22f4: b'\x11"\xf4', + 0x22f5: b'\x11"\xf5', + 0x22f6: b'\x11"\xf6', + 0x22f7: b'\x11"\xf7', + 0x22f8: b'\x11"\xf8', + 0x22f9: b'\x11"\xf9', + 0x22fa: b'\x11"\xfa', + 0x22fb: b'\x11"\xfb', + 0x22fc: b'\x11"\xfc', + 0x22fd: b'\x11"\xfd', + 0x22fe: b'\x11"\xfe', + 0x22ff: b'\x11"\xff', + 0x2300: b'\x11#\x00', + 0x2301: b'\x11#\x01', + 0x2302: b'\x11#\x02', + 0x2303: b'\x11#\x03', + 0x2304: b'\x11#\x04', + 0x2305: b'\x11#\x05', + 0x2306: b'\x11#\x06', + 0x2307: b'\x11#\x07', + 0x2308: b'\x11#\x08', + 0x2309: b'\x11#\t', + 0x230a: b'\x11#\n', + 0x230b: b'\x11#\x0b', + 0x230c: b'\x11#\x0c', + 0x230d: b'\x11#\r', + 0x230e: b'\x11#\x0e', + 0x230f: b'\x11#\x0f', + 0x2310: b'\x11#\x10', + 0x2311: b'\x11#\x11', + 0x2312: b'\x11#\x12', + 0x2313: b'\x11#\x13', + 0x2314: b'\x11#\x14', + 0x2315: b'\x11#\x15', + 0x2316: b'\x11#\x16', + 0x2317: b'\x11#\x17', + 0x2318: b'\x11#\x18', + 0x2319: b'\x11#\x19', + 0x231a: b'\x11#\x1a', + 0x231b: b'\x11#\x1b', + 0x231c: b'\x11#\x1c', + 0x231d: b'\x11#\x1d', + 0x231e: b'\x11#\x1e', + 0x231f: b'\x11#\x1f', + 0x2320: b'\x11# ', + 0x2321: b'\x11#!', + 0x2322: b'\x11#"', + 0x2323: b'\x11##', + 0x2324: b'\x11#$', + 0x2325: b'\x11#%', + 0x2326: b'\x11#&', + 0x2327: b"\x11#'", + 0x2328: b'\x11#(', + 0x2329: b'\x11#)', + 0x232a: b'\x11#*', + 0x232b: b'\x11#+', + 0x232c: b'\x11#,', + 0x232d: b'\x11#-', + 0x232e: b'\x11#.', + 0x232f: b'\x11#/', + 0x2330: b'\x11#0', + 0x2331: b'\x11#1', + 0x2332: b'\x11#2', + 0x2333: b'\x11#3', + 0x2334: b'\x11#4', + 0x2335: b'\x11#5', + 0x2336: b'\x11#6', + 0x2337: b'\x11#7', + 0x2338: b'\x11#8', + 0x2339: b'\x11#9', + 0x233a: b'\x11#:', + 0x233b: b'\x11#;', + 0x233c: b'\x11#<', + 0x233d: b'\x11#=', + 0x233e: b'\x11#>', + 0x233f: b'\x11#?', + 0x2340: b'\x11#@', + 0x2341: b'\x11#A', + 0x2342: b'\x11#B', + 0x2343: b'\x11#C', + 0x2344: b'\x11#D', + 0x2345: b'\x11#E', + 0x2346: b'\x11#F', + 0x2347: b'\x11#G', + 0x2348: b'\x11#H', + 0x2349: b'\x11#I', + 0x234a: b'\x11#J', + 0x234b: b'\x11#K', + 0x234c: b'\x11#L', + 0x234d: b'\x11#M', + 0x234e: b'\x11#N', + 0x234f: b'\x11#O', + 0x2350: b'\x11#P', + 0x2351: b'\x11#Q', + 0x2352: b'\x11#R', + 0x2353: b'\x11#S', + 0x2354: b'\x11#T', + 0x2355: b'\x11#U', + 0x2356: b'\x11#V', + 0x2357: b'\x11#W', + 0x2358: b'\x11#X', + 0x2359: b'\x11#Y', + 0x235a: b'\x11#Z', + 0x235b: b'\x11#[', + 0x235c: b'\x11#\\', + 0x235d: b'\x11#]', + 0x235e: b'\x11#^', + 0x235f: b'\x11#_', + 0x2360: b'\x11#`', + 0x2361: b'\x11#a', + 0x2362: b'\x11#b', + 0x2363: b'\x11#c', + 0x2364: b'\x11#d', + 0x2365: b'\x11#e', + 0x2366: b'\x11#f', + 0x2367: b'\x11#g', + 0x2368: b'\x11#h', + 0x2369: b'\x11#i', + 0x236a: b'\x11#j', + 0x236b: b'\x11#k', + 0x236c: b'\x11#l', + 0x236d: b'\x11#m', + 0x236e: b'\x11#n', + 0x236f: b'\x11#o', + 0x2370: b'\x11#p', + 0x2371: b'\x11#q', + 0x2372: b'\x11#r', + 0x2373: b'\x11#s', + 0x2374: b'\x11#t', + 0x2375: b'\x11#u', + 0x2376: b'\x11#v', + 0x2377: b'\x11#w', + 0x2378: b'\x11#x', + 0x2379: b'\x11#y', + 0x237a: b'\x11#z', + 0x237b: b'\x11#{', + 0x237c: b'\x11#|', + 0x237d: b'\x11#}', + 0x237e: b'\x11#~', + 0x237f: b'\x11#\x7f', + 0x2380: b'\x11#\x80', + 0x2381: b'\x11#\x81', + 0x2382: b'\x11#\x82', + 0x2383: b'\x11#\x83', + 0x2384: b'\x11#\x84', + 0x2385: b'\x11#\x85', + 0x2386: b'\x11#\x86', + 0x2387: b'\x11#\x87', + 0x2388: b'\x11#\x88', + 0x2389: b'\x11#\x89', + 0x238a: b'\x11#\x8a', + 0x238b: b'\x11#\x8b', + 0x238c: b'\x11#\x8c', + 0x238d: b'\x11#\x8d', + 0x238e: b'\x11#\x8e', + 0x238f: b'\x11#\x8f', + 0x2390: b'\x11#\x90', + 0x2391: b'\x11#\x91', + 0x2392: b'\x11#\x92', + 0x2393: b'\x11#\x93', + 0x2394: b'\x11#\x94', + 0x2395: b'\x11#\x95', + 0x2396: b'\x11#\x96', + 0x2397: b'\x11#\x97', + 0x2398: b'\x11#\x98', + 0x2399: b'\x11#\x99', + 0x239a: b'\x11#\x9a', + 0x239b: b'\x11#\x9b', + 0x239c: b'\x11#\x9c', + 0x239d: b'\x11#\x9d', + 0x239e: b'\x11#\x9e', + 0x239f: b'\x11#\x9f', + 0x23a0: b'\x11#\xa0', + 0x23a1: b'\x11#\xa1', + 0x23a2: b'\x11#\xa2', + 0x23a3: b'\x11#\xa3', + 0x23a4: b'\x11#\xa4', + 0x23a5: b'\x11#\xa5', + 0x23a6: b'\x11#\xa6', + 0x23a7: b'\x11#\xa7', + 0x23a8: b'\x11#\xa8', + 0x23a9: b'\x11#\xa9', + 0x23aa: b'\x11#\xaa', + 0x23ab: b'\x11#\xab', + 0x23ac: b'\x11#\xac', + 0x23ad: b'\x11#\xad', + 0x23ae: b'\x11#\xae', + 0x23af: b'\x11#\xaf', + 0x23b0: b'\x11#\xb0', + 0x23b1: b'\x11#\xb1', + 0x23b2: b'\x11#\xb2', + 0x23b3: b'\x11#\xb3', + 0x23b4: b'\x11#\xb4', + 0x23b5: b'\x11#\xb5', + 0x23b6: b'\x11#\xb6', + 0x23b7: b'\x11#\xb7', + 0x23b8: b'\x11#\xb8', + 0x23b9: b'\x11#\xb9', + 0x23ba: b'\x11#\xba', + 0x23bb: b'\x11#\xbb', + 0x23bc: b'\x11#\xbc', + 0x23bd: b'\x11#\xbd', + 0x23be: b'\x11#\xbe', + 0x23bf: b'\x11#\xbf', + 0x23c0: b'\x11#\xc0', + 0x23c1: b'\x11#\xc1', + 0x23c2: b'\x11#\xc2', + 0x23c3: b'\x11#\xc3', + 0x23c4: b'\x11#\xc4', + 0x23c5: b'\x11#\xc5', + 0x23c6: b'\x11#\xc6', + 0x23c7: b'\x11#\xc7', + 0x23c8: b'\x11#\xc8', + 0x23c9: b'\x11#\xc9', + 0x23ca: b'\x11#\xca', + 0x23cb: b'\x11#\xcb', + 0x23cc: b'\x11#\xcc', + 0x23cd: b'\x11#\xcd', + 0x23ce: b'\x11#\xce', + 0x23cf: b'\x11#\xcf', + 0x23d0: b'\x11#\xd0', + 0x23d1: b'\x11#\xd1', + 0x23d2: b'\x11#\xd2', + 0x23d3: b'\x11#\xd3', + 0x23d4: b'\x11#\xd4', + 0x23d5: b'\x11#\xd5', + 0x23d6: b'\x11#\xd6', + 0x23d7: b'\x11#\xd7', + 0x23d8: b'\x11#\xd8', + 0x23d9: b'\x11#\xd9', + 0x23da: b'\x11#\xda', + 0x23db: b'\x11#\xdb', + 0x23dc: b'\x11#\xdc', + 0x23dd: b'\x11#\xdd', + 0x23de: b'\x11#\xde', + 0x23df: b'\x11#\xdf', + 0x23e0: b'\x11#\xe0', + 0x23e1: b'\x11#\xe1', + 0x23e2: b'\x11#\xe2', + 0x23e3: b'\x11#\xe3', + 0x23e4: b'\x11#\xe4', + 0x23e5: b'\x11#\xe5', + 0x23e6: b'\x11#\xe6', + 0x23e7: b'\x11#\xe7', + 0x23e8: b'\x11#\xe8', + 0x23e9: b'\x11#\xe9', + 0x23ea: b'\x11#\xea', + 0x23eb: b'\x11#\xeb', + 0x23ec: b'\x11#\xec', + 0x23ed: b'\x11#\xed', + 0x23ee: b'\x11#\xee', + 0x23ef: b'\x11#\xef', + 0x23f0: b'\x11#\xf0', + 0x23f1: b'\x11#\xf1', + 0x23f2: b'\x11#\xf2', + 0x23f3: b'\x11#\xf3', + 0x23f4: b'\x11#\xf4', + 0x23f5: b'\x11#\xf5', + 0x23f6: b'\x11#\xf6', + 0x23f7: b'\x11#\xf7', + 0x23f8: b'\x11#\xf8', + 0x23f9: b'\x11#\xf9', + 0x23fa: b'\x11#\xfa', + 0x23fb: b'\x11#\xfb', + 0x23fc: b'\x11#\xfc', + 0x23fd: b'\x11#\xfd', + 0x23fe: b'\x11#\xfe', + 0x23ff: b'\x11#\xff', + 0x2400: b'\x11$\x00', + 0x2401: b'\x11$\x01', + 0x2402: b'\x11$\x02', + 0x2403: b'\x11$\x03', + 0x2404: b'\x11$\x04', + 0x2405: b'\x11$\x05', + 0x2406: b'\x11$\x06', + 0x2407: b'\x11$\x07', + 0x2408: b'\x11$\x08', + 0x2409: b'\x11$\t', + 0x240a: b'\x11$\n', + 0x240b: b'\x11$\x0b', + 0x240c: b'\x11$\x0c', + 0x240d: b'\x11$\r', + 0x240e: b'\x11$\x0e', + 0x240f: b'\x11$\x0f', + 0x2410: b'\x11$\x10', + 0x2411: b'\x11$\x11', + 0x2412: b'\x11$\x12', + 0x2413: b'\x11$\x13', + 0x2414: b'\x11$\x14', + 0x2415: b'\x11$\x15', + 0x2416: b'\x11$\x16', + 0x2417: b'\x11$\x17', + 0x2418: b'\x11$\x18', + 0x2419: b'\x11$\x19', + 0x241a: b'\x11$\x1a', + 0x241b: b'\x11$\x1b', + 0x241c: b'\x11$\x1c', + 0x241d: b'\x11$\x1d', + 0x241e: b'\x11$\x1e', + 0x241f: b'\x11$\x1f', + 0x2420: b'\x11$ ', + 0x2421: b'\x11$!', + 0x2422: b'\x11$"', + 0x2423: b'\x11$#', + 0x2424: b'\x11$$', + 0x2425: b'\x11$%', + 0x2426: b'\x11$&', + 0x2427: b"\x11$'", + 0x2428: b'\x11$(', + 0x2429: b'\x11$)', + 0x242a: b'\x11$*', + 0x242b: b'\x11$+', + 0x242c: b'\x11$,', + 0x242d: b'\x11$-', + 0x242e: b'\x11$.', + 0x242f: b'\x11$/', + 0x2430: b'\x11$0', + 0x2431: b'\x11$1', + 0x2432: b'\x11$2', + 0x2433: b'\x11$3', + 0x2434: b'\x11$4', + 0x2435: b'\x11$5', + 0x2436: b'\x11$6', + 0x2437: b'\x11$7', + 0x2438: b'\x11$8', + 0x2439: b'\x11$9', + 0x243a: b'\x11$:', + 0x243b: b'\x11$;', + 0x243c: b'\x11$<', + 0x243d: b'\x11$=', + 0x243e: b'\x11$>', + 0x243f: b'\x11$?', + 0x2440: b'\x11$@', + 0x2441: b'\x11$A', + 0x2442: b'\x11$B', + 0x2443: b'\x11$C', + 0x2444: b'\x11$D', + 0x2445: b'\x11$E', + 0x2446: b'\x11$F', + 0x2447: b'\x11$G', + 0x2448: b'\x11$H', + 0x2449: b'\x11$I', + 0x244a: b'\x11$J', + 0x244b: b'\x11$K', + 0x244c: b'\x11$L', + 0x244d: b'\x11$M', + 0x244e: b'\x11$N', + 0x244f: b'\x11$O', + 0x2450: b'\x11$P', + 0x2451: b'\x11$Q', + 0x2452: b'\x11$R', + 0x2453: b'\x11$S', + 0x2454: b'\x11$T', + 0x2455: b'\x11$U', + 0x2456: b'\x11$V', + 0x2457: b'\x11$W', + 0x2458: b'\x11$X', + 0x2459: b'\x11$Y', + 0x245a: b'\x11$Z', + 0x245b: b'\x11$[', + 0x245c: b'\x11$\\', + 0x245d: b'\x11$]', + 0x245e: b'\x11$^', + 0x245f: b'\x11$_', + 0x2460: b'\x11$`', + 0x2461: b'\x11$a', + 0x2462: b'\x11$b', + 0x2463: b'\x11$c', + 0x2464: b'\x11$d', + 0x2465: b'\x11$e', + 0x2466: b'\x11$f', + 0x2467: b'\x11$g', + 0x2468: b'\x11$h', + 0x2469: b'\x11$i', + 0x246a: b'\x11$j', + 0x246b: b'\x11$k', + 0x246c: b'\x11$l', + 0x246d: b'\x11$m', + 0x246e: b'\x11$n', + 0x246f: b'\x11$o', + 0x2470: b'\x11$p', + 0x2471: b'\x11$q', + 0x2472: b'\x11$r', + 0x2473: b'\x11$s', + 0x2474: b'\x11$t', + 0x2475: b'\x11$u', + 0x2476: b'\x11$v', + 0x2477: b'\x11$w', + 0x2478: b'\x11$x', + 0x2479: b'\x11$y', + 0x247a: b'\x11$z', + 0x247b: b'\x11${', + 0x247c: b'\x11$|', + 0x247d: b'\x11$}', + 0x247e: b'\x11$~', + 0x247f: b'\x11$\x7f', + 0x2480: b'\x11$\x80', + 0x2481: b'\x11$\x81', + 0x2482: b'\x11$\x82', + 0x2483: b'\x11$\x83', + 0x2484: b'\x11$\x84', + 0x2485: b'\x11$\x85', + 0x2486: b'\x11$\x86', + 0x2487: b'\x11$\x87', + 0x2488: b'\x11$\x88', + 0x2489: b'\x11$\x89', + 0x248a: b'\x11$\x8a', + 0x248b: b'\x11$\x8b', + 0x248c: b'\x11$\x8c', + 0x248d: b'\x11$\x8d', + 0x248e: b'\x11$\x8e', + 0x248f: b'\x11$\x8f', + 0x2490: b'\x11$\x90', + 0x2491: b'\x11$\x91', + 0x2492: b'\x11$\x92', + 0x2493: b'\x11$\x93', + 0x2494: b'\x11$\x94', + 0x2495: b'\x11$\x95', + 0x2496: b'\x11$\x96', + 0x2497: b'\x11$\x97', + 0x2498: b'\x11$\x98', + 0x2499: b'\x11$\x99', + 0x249a: b'\x11$\x9a', + 0x249b: b'\x11$\x9b', + 0x249c: b'\x11$\x9c', + 0x249d: b'\x11$\x9d', + 0x249e: b'\x11$\x9e', + 0x249f: b'\x11$\x9f', + 0x24a0: b'\x11$\xa0', + 0x24a1: b'\x11$\xa1', + 0x24a2: b'\x11$\xa2', + 0x24a3: b'\x11$\xa3', + 0x24a4: b'\x11$\xa4', + 0x24a5: b'\x11$\xa5', + 0x24a6: b'\x11$\xa6', + 0x24a7: b'\x11$\xa7', + 0x24a8: b'\x11$\xa8', + 0x24a9: b'\x11$\xa9', + 0x24aa: b'\x11$\xaa', + 0x24ab: b'\x11$\xab', + 0x24ac: b'\x11$\xac', + 0x24ad: b'\x11$\xad', + 0x24ae: b'\x11$\xae', + 0x24af: b'\x11$\xaf', + 0x24b0: b'\x11$\xb0', + 0x24b1: b'\x11$\xb1', + 0x24b2: b'\x11$\xb2', + 0x24b3: b'\x11$\xb3', + 0x24b4: b'\x11$\xb4', + 0x24b5: b'\x11$\xb5', + 0x24b6: b'\x11$\xb6', + 0x24b7: b'\x11$\xb7', + 0x24b8: b'\x11$\xb8', + 0x24b9: b'\x11$\xb9', + 0x24ba: b'\x11$\xba', + 0x24bb: b'\x11$\xbb', + 0x24bc: b'\x11$\xbc', + 0x24bd: b'\x11$\xbd', + 0x24be: b'\x11$\xbe', + 0x24bf: b'\x11$\xbf', + 0x24c0: b'\x11$\xc0', + 0x24c1: b'\x11$\xc1', + 0x24c2: b'\x11$\xc2', + 0x24c3: b'\x11$\xc3', + 0x24c4: b'\x11$\xc4', + 0x24c5: b'\x11$\xc5', + 0x24c6: b'\x11$\xc6', + 0x24c7: b'\x11$\xc7', + 0x24c8: b'\x11$\xc8', + 0x24c9: b'\x11$\xc9', + 0x24ca: b'\x11$\xca', + 0x24cb: b'\x11$\xcb', + 0x24cc: b'\x11$\xcc', + 0x24cd: b'\x11$\xcd', + 0x24ce: b'\x11$\xce', + 0x24cf: b'\x11$\xcf', + 0x24d0: b'\x11$\xd0', + 0x24d1: b'\x11$\xd1', + 0x24d2: b'\x11$\xd2', + 0x24d3: b'\x11$\xd3', + 0x24d4: b'\x11$\xd4', + 0x24d5: b'\x11$\xd5', + 0x24d6: b'\x11$\xd6', + 0x24d7: b'\x11$\xd7', + 0x24d8: b'\x11$\xd8', + 0x24d9: b'\x11$\xd9', + 0x24da: b'\x11$\xda', + 0x24db: b'\x11$\xdb', + 0x24dc: b'\x11$\xdc', + 0x24dd: b'\x11$\xdd', + 0x24de: b'\x11$\xde', + 0x24df: b'\x11$\xdf', + 0x24e0: b'\x11$\xe0', + 0x24e1: b'\x11$\xe1', + 0x24e2: b'\x11$\xe2', + 0x24e3: b'\x11$\xe3', + 0x24e4: b'\x11$\xe4', + 0x24e5: b'\x11$\xe5', + 0x24e6: b'\x11$\xe6', + 0x24e7: b'\x11$\xe7', + 0x24e8: b'\x11$\xe8', + 0x24e9: b'\x11$\xe9', + 0x24ea: b'\x11$\xea', + 0x24eb: b'\x11$\xeb', + 0x24ec: b'\x11$\xec', + 0x24ed: b'\x11$\xed', + 0x24ee: b'\x11$\xee', + 0x24ef: b'\x11$\xef', + 0x24f0: b'\x11$\xf0', + 0x24f1: b'\x11$\xf1', + 0x24f2: b'\x11$\xf2', + 0x24f3: b'\x11$\xf3', + 0x24f4: b'\x11$\xf4', + 0x24f5: b'\x11$\xf5', + 0x24f6: b'\x11$\xf6', + 0x24f7: b'\x11$\xf7', + 0x24f8: b'\x11$\xf8', + 0x24f9: b'\x11$\xf9', + 0x24fa: b'\x11$\xfa', + 0x24fb: b'\x11$\xfb', + 0x24fc: b'\x11$\xfc', + 0x24fd: b'\x11$\xfd', + 0x24fe: b'\x11$\xfe', + 0x24ff: b'\x11$\xff', + 0x2500: b'\x11%\x00', + 0x2501: b'\x11%\x01', + 0x2502: b'\x11%\x02', + 0x2503: b'\x11%\x03', + 0x2504: b'\x11%\x04', + 0x2505: b'\x11%\x05', + 0x2506: b'\x11%\x06', + 0x2507: b'\x11%\x07', + 0x2508: b'\x11%\x08', + 0x2509: b'\x11%\t', + 0x250a: b'\x11%\n', + 0x250b: b'\x11%\x0b', + 0x250c: b'\x11%\x0c', + 0x250d: b'\x11%\r', + 0x250e: b'\x11%\x0e', + 0x250f: b'\x11%\x0f', + 0x2510: b'\x11%\x10', + 0x2511: b'\x11%\x11', + 0x2512: b'\x11%\x12', + 0x2513: b'\x11%\x13', + 0x2514: b'\x11%\x14', + 0x2515: b'\x11%\x15', + 0x2516: b'\x11%\x16', + 0x2517: b'\x11%\x17', + 0x2518: b'\x11%\x18', + 0x2519: b'\x11%\x19', + 0x251a: b'\x11%\x1a', + 0x251b: b'\x11%\x1b', + 0x251c: b'\x11%\x1c', + 0x251d: b'\x11%\x1d', + 0x251e: b'\x11%\x1e', + 0x251f: b'\x11%\x1f', + 0x2520: b'\x11% ', + 0x2521: b'\x11%!', + 0x2522: b'\x11%"', + 0x2523: b'\x11%#', + 0x2524: b'\x11%$', + 0x2525: b'\x11%%', + 0x2526: b'\x11%&', + 0x2527: b"\x11%'", + 0x2528: b'\x11%(', + 0x2529: b'\x11%)', + 0x252a: b'\x11%*', + 0x252b: b'\x11%+', + 0x252c: b'\x11%,', + 0x252d: b'\x11%-', + 0x252e: b'\x11%.', + 0x252f: b'\x11%/', + 0x2530: b'\x11%0', + 0x2531: b'\x11%1', + 0x2532: b'\x11%2', + 0x2533: b'\x11%3', + 0x2534: b'\x11%4', + 0x2535: b'\x11%5', + 0x2536: b'\x11%6', + 0x2537: b'\x11%7', + 0x2538: b'\x11%8', + 0x2539: b'\x11%9', + 0x253a: b'\x11%:', + 0x253b: b'\x11%;', + 0x253c: b'\x11%<', + 0x253d: b'\x11%=', + 0x253e: b'\x11%>', + 0x253f: b'\x11%?', + 0x2540: b'\x11%@', + 0x2541: b'\x11%A', + 0x2542: b'\x11%B', + 0x2543: b'\x11%C', + 0x2544: b'\x11%D', + 0x2545: b'\x11%E', + 0x2546: b'\x11%F', + 0x2547: b'\x11%G', + 0x2548: b'\x11%H', + 0x2549: b'\x11%I', + 0x254a: b'\x11%J', + 0x254b: b'\x11%K', + 0x254c: b'\x11%L', + 0x254d: b'\x11%M', + 0x254e: b'\x11%N', + 0x254f: b'\x11%O', + 0x2550: b'\x11%P', + 0x2551: b'\x11%Q', + 0x2552: b'\x11%R', + 0x2553: b'\x11%S', + 0x2554: b'\x11%T', + 0x2555: b'\x11%U', + 0x2556: b'\x11%V', + 0x2557: b'\x11%W', + 0x2558: b'\x11%X', + 0x2559: b'\x11%Y', + 0x255a: b'\x11%Z', + 0x255b: b'\x11%[', + 0x255c: b'\x11%\\', + 0x255d: b'\x11%]', + 0x255e: b'\x11%^', + 0x255f: b'\x11%_', + 0x2560: b'\x11%`', + 0x2561: b'\x11%a', + 0x2562: b'\x11%b', + 0x2563: b'\x11%c', + 0x2564: b'\x11%d', + 0x2565: b'\x11%e', + 0x2566: b'\x11%f', + 0x2567: b'\x11%g', + 0x2568: b'\x11%h', + 0x2569: b'\x11%i', + 0x256a: b'\x11%j', + 0x256b: b'\x11%k', + 0x256c: b'\x11%l', + 0x256d: b'\x11%m', + 0x256e: b'\x11%n', + 0x256f: b'\x11%o', + 0x2570: b'\x11%p', + 0x2571: b'\x11%q', + 0x2572: b'\x11%r', + 0x2573: b'\x11%s', + 0x2574: b'\x11%t', + 0x2575: b'\x11%u', + 0x2576: b'\x11%v', + 0x2577: b'\x11%w', + 0x2578: b'\x11%x', + 0x2579: b'\x11%y', + 0x257a: b'\x11%z', + 0x257b: b'\x11%{', + 0x257c: b'\x11%|', + 0x257d: b'\x11%}', + 0x257e: b'\x11%~', + 0x257f: b'\x11%\x7f', + 0x2580: b'\x11%\x80', + 0x2581: b'\x11%\x81', + 0x2582: b'\x11%\x82', + 0x2583: b'\x11%\x83', + 0x2584: b'\x11%\x84', + 0x2585: b'\x11%\x85', + 0x2586: b'\x11%\x86', + 0x2587: b'\x11%\x87', + 0x2588: b'\x11%\x88', + 0x2589: b'\x11%\x89', + 0x258a: b'\x11%\x8a', + 0x258b: b'\x11%\x8b', + 0x258c: b'\x11%\x8c', + 0x258d: b'\x11%\x8d', + 0x258e: b'\x11%\x8e', + 0x258f: b'\x11%\x8f', + 0x2590: b'\x11%\x90', + 0x2591: b'\x11%\x91', + 0x2592: b'\x11%\x92', + 0x2593: b'\x11%\x93', + 0x2594: b'\x11%\x94', + 0x2595: b'\x11%\x95', + 0x2596: b'\x11%\x96', + 0x2597: b'\x11%\x97', + 0x2598: b'\x11%\x98', + 0x2599: b'\x11%\x99', + 0x259a: b'\x11%\x9a', + 0x259b: b'\x11%\x9b', + 0x259c: b'\x11%\x9c', + 0x259d: b'\x11%\x9d', + 0x259e: b'\x11%\x9e', + 0x259f: b'\x11%\x9f', + 0x25a0: b'\x11%\xa0', + 0x25a1: b'\x11%\xa1', + 0x25a2: b'\x11%\xa2', + 0x25a3: b'\x11%\xa3', + 0x25a4: b'\x11%\xa4', + 0x25a5: b'\x11%\xa5', + 0x25a6: b'\x11%\xa6', + 0x25a7: b'\x11%\xa7', + 0x25a8: b'\x11%\xa8', + 0x25a9: b'\x11%\xa9', + 0x25aa: b'\x11%\xaa', + 0x25ab: b'\x11%\xab', + 0x25ac: b'\x11%\xac', + 0x25ad: b'\x11%\xad', + 0x25ae: b'\x11%\xae', + 0x25af: b'\x11%\xaf', + 0x25b0: b'\x11%\xb0', + 0x25b1: b'\x11%\xb1', + 0x25b2: b'\x11%\xb2', + 0x25b3: b'\x11%\xb3', + 0x25b4: b'\x11%\xb4', + 0x25b5: b'\x11%\xb5', + 0x25b6: b'\x11%\xb6', + 0x25b7: b'\x11%\xb7', + 0x25b8: b'\x11%\xb8', + 0x25b9: b'\x11%\xb9', + 0x25ba: b'\x11%\xba', + 0x25bb: b'\x11%\xbb', + 0x25bc: b'\x11%\xbc', + 0x25bd: b'\x11%\xbd', + 0x25be: b'\x11%\xbe', + 0x25bf: b'\x11%\xbf', + 0x25c0: b'\x11%\xc0', + 0x25c1: b'\x11%\xc1', + 0x25c2: b'\x11%\xc2', + 0x25c3: b'\x11%\xc3', + 0x25c4: b'\x11%\xc4', + 0x25c5: b'\x11%\xc5', + 0x25c6: b'\x11%\xc6', + 0x25c7: b'\x11%\xc7', + 0x25c8: b'\x11%\xc8', + 0x25c9: b'\x11%\xc9', + 0x25ca: b'\x11%\xca', + 0x25cb: b'\x11%\xcb', + 0x25cc: b'\x11%\xcc', + 0x25cd: b'\x11%\xcd', + 0x25ce: b'\x11%\xce', + 0x25cf: b'\x11%\xcf', + 0x25d0: b'\x11%\xd0', + 0x25d1: b'\x11%\xd1', + 0x25d2: b'\x11%\xd2', + 0x25d3: b'\x11%\xd3', + 0x25d4: b'\x11%\xd4', + 0x25d5: b'\x11%\xd5', + 0x25d6: b'\x11%\xd6', + 0x25d7: b'\x11%\xd7', + 0x25d8: b'\x11%\xd8', + 0x25d9: b'\x11%\xd9', + 0x25da: b'\x11%\xda', + 0x25db: b'\x11%\xdb', + 0x25dc: b'\x11%\xdc', + 0x25dd: b'\x11%\xdd', + 0x25de: b'\x11%\xde', + 0x25df: b'\x11%\xdf', + 0x25e0: b'\x11%\xe0', + 0x25e1: b'\x11%\xe1', + 0x25e2: b'\x11%\xe2', + 0x25e3: b'\x11%\xe3', + 0x25e4: b'\x11%\xe4', + 0x25e5: b'\x11%\xe5', + 0x25e6: b'\x11%\xe6', + 0x25e7: b'\x11%\xe7', + 0x25e8: b'\x11%\xe8', + 0x25e9: b'\x11%\xe9', + 0x25ea: b'\x11%\xea', + 0x25eb: b'\x11%\xeb', + 0x25ec: b'\x11%\xec', + 0x25ed: b'\x11%\xed', + 0x25ee: b'\x11%\xee', + 0x25ef: b'\x11%\xef', + 0x25f0: b'\x11%\xf0', + 0x25f1: b'\x11%\xf1', + 0x25f2: b'\x11%\xf2', + 0x25f3: b'\x11%\xf3', + 0x25f4: b'\x11%\xf4', + 0x25f5: b'\x11%\xf5', + 0x25f6: b'\x11%\xf6', + 0x25f7: b'\x11%\xf7', + 0x25f8: b'\x11%\xf8', + 0x25f9: b'\x11%\xf9', + 0x25fa: b'\x11%\xfa', + 0x25fb: b'\x11%\xfb', + 0x25fc: b'\x11%\xfc', + 0x25fd: b'\x11%\xfd', + 0x25fe: b'\x11%\xfe', + 0x25ff: b'\x11%\xff', + 0x2600: b'\x11&\x00', + 0x2601: b'\x11&\x01', + 0x2602: b'\x11&\x02', + 0x2603: b'\x11&\x03', + 0x2604: b'\x11&\x04', + 0x2605: b'\x11&\x05', + 0x2606: b'\x11&\x06', + 0x2607: b'\x11&\x07', + 0x2608: b'\x11&\x08', + 0x2609: b'\x11&\t', + 0x260a: b'\x11&\n', + 0x260b: b'\x11&\x0b', + 0x260c: b'\x11&\x0c', + 0x260d: b'\x11&\r', + 0x260e: b'\x11&\x0e', + 0x260f: b'\x11&\x0f', + 0x2610: b'\x11&\x10', + 0x2611: b'\x11&\x11', + 0x2612: b'\x11&\x12', + 0x2613: b'\x11&\x13', + 0x2614: b'\x11&\x14', + 0x2615: b'\x11&\x15', + 0x2616: b'\x11&\x16', + 0x2617: b'\x11&\x17', + 0x2618: b'\x11&\x18', + 0x2619: b'\x11&\x19', + 0x261a: b'\x11&\x1a', + 0x261b: b'\x11&\x1b', + 0x261c: b'\x11&\x1c', + 0x261d: b'\x11&\x1d', + 0x261e: b'\x11&\x1e', + 0x261f: b'\x11&\x1f', + 0x2620: b'\x11& ', + 0x2621: b'\x11&!', + 0x2622: b'\x11&"', + 0x2623: b'\x11&#', + 0x2624: b'\x11&$', + 0x2625: b'\x11&%', + 0x2626: b'\x11&&', + 0x2627: b"\x11&'", + 0x2628: b'\x11&(', + 0x2629: b'\x11&)', + 0x262a: b'\x11&*', + 0x262b: b'\x11&+', + 0x262c: b'\x11&,', + 0x262d: b'\x11&-', + 0x262e: b'\x11&.', + 0x262f: b'\x11&/', + 0x2630: b'\x11&0', + 0x2631: b'\x11&1', + 0x2632: b'\x11&2', + 0x2633: b'\x11&3', + 0x2634: b'\x11&4', + 0x2635: b'\x11&5', + 0x2636: b'\x11&6', + 0x2637: b'\x11&7', + 0x2638: b'\x11&8', + 0x2639: b'\x11&9', + 0x263a: b'\x11&:', + 0x263b: b'\x11&;', + 0x263c: b'\x11&<', + 0x263d: b'\x11&=', + 0x263e: b'\x11&>', + 0x263f: b'\x11&?', + 0x2640: b'\x11&@', + 0x2641: b'\x11&A', + 0x2642: b'\x11&B', + 0x2643: b'\x11&C', + 0x2644: b'\x11&D', + 0x2645: b'\x11&E', + 0x2646: b'\x11&F', + 0x2647: b'\x11&G', + 0x2648: b'\x11&H', + 0x2649: b'\x11&I', + 0x264a: b'\x11&J', + 0x264b: b'\x11&K', + 0x264c: b'\x11&L', + 0x264d: b'\x11&M', + 0x264e: b'\x11&N', + 0x264f: b'\x11&O', + 0x2650: b'\x11&P', + 0x2651: b'\x11&Q', + 0x2652: b'\x11&R', + 0x2653: b'\x11&S', + 0x2654: b'\x11&T', + 0x2655: b'\x11&U', + 0x2656: b'\x11&V', + 0x2657: b'\x11&W', + 0x2658: b'\x11&X', + 0x2659: b'\x11&Y', + 0x265a: b'\x11&Z', + 0x265b: b'\x11&[', + 0x265c: b'\x11&\\', + 0x265d: b'\x11&]', + 0x265e: b'\x11&^', + 0x265f: b'\x11&_', + 0x2660: b'\x11&`', + 0x2661: b'\x11&a', + 0x2662: b'\x11&b', + 0x2663: b'\x11&c', + 0x2664: b'\x11&d', + 0x2665: b'\x11&e', + 0x2666: b'\x11&f', + 0x2667: b'\x11&g', + 0x2668: b'\x11&h', + 0x2669: b'\x11&i', + 0x266a: b'\x11&j', + 0x266b: b'\x11&k', + 0x266c: b'\x11&l', + 0x266d: b'\x11&m', + 0x266e: b'\x11&n', + 0x266f: b'\x11&o', + 0x2670: b'\x11&p', + 0x2671: b'\x11&q', + 0x2672: b'\x11&r', + 0x2673: b'\x11&s', + 0x2674: b'\x11&t', + 0x2675: b'\x11&u', + 0x2676: b'\x11&v', + 0x2677: b'\x11&w', + 0x2678: b'\x11&x', + 0x2679: b'\x11&y', + 0x267a: b'\x11&z', + 0x267b: b'\x11&{', + 0x267c: b'\x11&|', + 0x267d: b'\x11&}', + 0x267e: b'\x11&~', + 0x267f: b'\x11&\x7f', + 0x2680: b'\x11&\x80', + 0x2681: b'\x11&\x81', + 0x2682: b'\x11&\x82', + 0x2683: b'\x11&\x83', + 0x2684: b'\x11&\x84', + 0x2685: b'\x11&\x85', + 0x2686: b'\x11&\x86', + 0x2687: b'\x11&\x87', + 0x2688: b'\x11&\x88', + 0x2689: b'\x11&\x89', + 0x268a: b'\x11&\x8a', + 0x268b: b'\x11&\x8b', + 0x268c: b'\x11&\x8c', + 0x268d: b'\x11&\x8d', + 0x268e: b'\x11&\x8e', + 0x268f: b'\x11&\x8f', + 0x2690: b'\x11&\x90', + 0x2691: b'\x11&\x91', + 0x2692: b'\x11&\x92', + 0x2693: b'\x11&\x93', + 0x2694: b'\x11&\x94', + 0x2695: b'\x11&\x95', + 0x2696: b'\x11&\x96', + 0x2697: b'\x11&\x97', + 0x2698: b'\x11&\x98', + 0x2699: b'\x11&\x99', + 0x269a: b'\x11&\x9a', + 0x269b: b'\x11&\x9b', + 0x269c: b'\x11&\x9c', + 0x269d: b'\x11&\x9d', + 0x269e: b'\x11&\x9e', + 0x269f: b'\x11&\x9f', + 0x26a0: b'\x11&\xa0', + 0x26a1: b'\x11&\xa1', + 0x26a2: b'\x11&\xa2', + 0x26a3: b'\x11&\xa3', + 0x26a4: b'\x11&\xa4', + 0x26a5: b'\x11&\xa5', + 0x26a6: b'\x11&\xa6', + 0x26a7: b'\x11&\xa7', + 0x26a8: b'\x11&\xa8', + 0x26a9: b'\x11&\xa9', + 0x26aa: b'\x11&\xaa', + 0x26ab: b'\x11&\xab', + 0x26ac: b'\x11&\xac', + 0x26ad: b'\x11&\xad', + 0x26ae: b'\x11&\xae', + 0x26af: b'\x11&\xaf', + 0x26b0: b'\x11&\xb0', + 0x26b1: b'\x11&\xb1', + 0x26b2: b'\x11&\xb2', + 0x26b3: b'\x11&\xb3', + 0x26b4: b'\x11&\xb4', + 0x26b5: b'\x11&\xb5', + 0x26b6: b'\x11&\xb6', + 0x26b7: b'\x11&\xb7', + 0x26b8: b'\x11&\xb8', + 0x26b9: b'\x11&\xb9', + 0x26ba: b'\x11&\xba', + 0x26bb: b'\x11&\xbb', + 0x26bc: b'\x11&\xbc', + 0x26bd: b'\x11&\xbd', + 0x26be: b'\x11&\xbe', + 0x26bf: b'\x11&\xbf', + 0x26c0: b'\x11&\xc0', + 0x26c1: b'\x11&\xc1', + 0x26c2: b'\x11&\xc2', + 0x26c3: b'\x11&\xc3', + 0x26c4: b'\x11&\xc4', + 0x26c5: b'\x11&\xc5', + 0x26c6: b'\x11&\xc6', + 0x26c7: b'\x11&\xc7', + 0x26c8: b'\x11&\xc8', + 0x26c9: b'\x11&\xc9', + 0x26ca: b'\x11&\xca', + 0x26cb: b'\x11&\xcb', + 0x26cc: b'\x11&\xcc', + 0x26cd: b'\x11&\xcd', + 0x26ce: b'\x11&\xce', + 0x26cf: b'\x11&\xcf', + 0x26d0: b'\x11&\xd0', + 0x26d1: b'\x11&\xd1', + 0x26d2: b'\x11&\xd2', + 0x26d3: b'\x11&\xd3', + 0x26d4: b'\x11&\xd4', + 0x26d5: b'\x11&\xd5', + 0x26d6: b'\x11&\xd6', + 0x26d7: b'\x11&\xd7', + 0x26d8: b'\x11&\xd8', + 0x26d9: b'\x11&\xd9', + 0x26da: b'\x11&\xda', + 0x26db: b'\x11&\xdb', + 0x26dc: b'\x11&\xdc', + 0x26dd: b'\x11&\xdd', + 0x26de: b'\x11&\xde', + 0x26df: b'\x11&\xdf', + 0x26e0: b'\x11&\xe0', + 0x26e1: b'\x11&\xe1', + 0x26e2: b'\x11&\xe2', + 0x26e3: b'\x11&\xe3', + 0x26e4: b'\x11&\xe4', + 0x26e5: b'\x11&\xe5', + 0x26e6: b'\x11&\xe6', + 0x26e7: b'\x11&\xe7', + 0x26e8: b'\x11&\xe8', + 0x26e9: b'\x11&\xe9', + 0x26ea: b'\x11&\xea', + 0x26eb: b'\x11&\xeb', + 0x26ec: b'\x11&\xec', + 0x26ed: b'\x11&\xed', + 0x26ee: b'\x11&\xee', + 0x26ef: b'\x11&\xef', + 0x26f0: b'\x11&\xf0', + 0x26f1: b'\x11&\xf1', + 0x26f2: b'\x11&\xf2', + 0x26f3: b'\x11&\xf3', + 0x26f4: b'\x11&\xf4', + 0x26f5: b'\x11&\xf5', + 0x26f6: b'\x11&\xf6', + 0x26f7: b'\x11&\xf7', + 0x26f8: b'\x11&\xf8', + 0x26f9: b'\x11&\xf9', + 0x26fa: b'\x11&\xfa', + 0x26fb: b'\x11&\xfb', + 0x26fc: b'\x11&\xfc', + 0x26fd: b'\x11&\xfd', + 0x26fe: b'\x11&\xfe', + 0x26ff: b'\x11&\xff', + 0x2700: b"\x11'\x00", + 0x2701: b"\x11'\x01", + 0x2702: b"\x11'\x02", + 0x2703: b"\x11'\x03", + 0x2704: b"\x11'\x04", + 0x2705: b"\x11'\x05", + 0x2706: b"\x11'\x06", + 0x2707: b"\x11'\x07", + 0x2708: b"\x11'\x08", + 0x2709: b"\x11'\t", + 0x270a: b"\x11'\n", + 0x270b: b"\x11'\x0b", + 0x270c: b"\x11'\x0c", + 0x270d: b"\x11'\r", + 0x270e: b"\x11'\x0e", + 0x270f: b"\x11'\x0f", + 0x2710: b"\x11'\x10", + 0x2711: b"\x11'\x11", + 0x2712: b"\x11'\x12", + 0x2713: b"\x11'\x13", + 0x2714: b"\x11'\x14", + 0x2715: b"\x11'\x15", + 0x2716: b"\x11'\x16", + 0x2717: b"\x11'\x17", + 0x2718: b"\x11'\x18", + 0x2719: b"\x11'\x19", + 0x271a: b"\x11'\x1a", + 0x271b: b"\x11'\x1b", + 0x271c: b"\x11'\x1c", + 0x271d: b"\x11'\x1d", + 0x271e: b"\x11'\x1e", + 0x271f: b"\x11'\x1f", + 0x2720: b"\x11' ", + 0x2721: b"\x11'!", + 0x2722: b'\x11\'"', + 0x2723: b"\x11'#", + 0x2724: b"\x11'$", + 0x2725: b"\x11'%", + 0x2726: b"\x11'&", + 0x2727: b"\x11''", + 0x2728: b"\x11'(", + 0x2729: b"\x11')", + 0x272a: b"\x11'*", + 0x272b: b"\x11'+", + 0x272c: b"\x11',", + 0x272d: b"\x11'-", + 0x272e: b"\x11'.", + 0x272f: b"\x11'/", + 0x2730: b"\x11'0", + 0x2731: b"\x11'1", + 0x2732: b"\x11'2", + 0x2733: b"\x11'3", + 0x2734: b"\x11'4", + 0x2735: b"\x11'5", + 0x2736: b"\x11'6", + 0x2737: b"\x11'7", + 0x2738: b"\x11'8", + 0x2739: b"\x11'9", + 0x273a: b"\x11':", + 0x273b: b"\x11';", + 0x273c: b"\x11'<", + 0x273d: b"\x11'=", + 0x273e: b"\x11'>", + 0x273f: b"\x11'?", + 0x2740: b"\x11'@", + 0x2741: b"\x11'A", + 0x2742: b"\x11'B", + 0x2743: b"\x11'C", + 0x2744: b"\x11'D", + 0x2745: b"\x11'E", + 0x2746: b"\x11'F", + 0x2747: b"\x11'G", + 0x2748: b"\x11'H", + 0x2749: b"\x11'I", + 0x274a: b"\x11'J", + 0x274b: b"\x11'K", + 0x274c: b"\x11'L", + 0x274d: b"\x11'M", + 0x274e: b"\x11'N", + 0x274f: b"\x11'O", + 0x2750: b"\x11'P", + 0x2751: b"\x11'Q", + 0x2752: b"\x11'R", + 0x2753: b"\x11'S", + 0x2754: b"\x11'T", + 0x2755: b"\x11'U", + 0x2756: b"\x11'V", + 0x2757: b"\x11'W", + 0x2758: b"\x11'X", + 0x2759: b"\x11'Y", + 0x275a: b"\x11'Z", + 0x275b: b"\x11'[", + 0x275c: b"\x11'\\", + 0x275d: b"\x11']", + 0x275e: b"\x11'^", + 0x275f: b"\x11'_", + 0x2760: b"\x11'`", + 0x2761: b"\x11'a", + 0x2762: b"\x11'b", + 0x2763: b"\x11'c", + 0x2764: b"\x11'd", + 0x2765: b"\x11'e", + 0x2766: b"\x11'f", + 0x2767: b"\x11'g", + 0x2768: b"\x11'h", + 0x2769: b"\x11'i", + 0x276a: b"\x11'j", + 0x276b: b"\x11'k", + 0x276c: b"\x11'l", + 0x276d: b"\x11'm", + 0x276e: b"\x11'n", + 0x276f: b"\x11'o", + 0x2770: b"\x11'p", + 0x2771: b"\x11'q", + 0x2772: b"\x11'r", + 0x2773: b"\x11's", + 0x2774: b"\x11't", + 0x2775: b"\x11'u", + 0x2776: b"\x11'v", + 0x2777: b"\x11'w", + 0x2778: b"\x11'x", + 0x2779: b"\x11'y", + 0x277a: b"\x11'z", + 0x277b: b"\x11'{", + 0x277c: b"\x11'|", + 0x277d: b"\x11'}", + 0x277e: b"\x11'~", + 0x277f: b"\x11'\x7f", + 0x2780: b"\x11'\x80", + 0x2781: b"\x11'\x81", + 0x2782: b"\x11'\x82", + 0x2783: b"\x11'\x83", + 0x2784: b"\x11'\x84", + 0x2785: b"\x11'\x85", + 0x2786: b"\x11'\x86", + 0x2787: b"\x11'\x87", + 0x2788: b"\x11'\x88", + 0x2789: b"\x11'\x89", + 0x278a: b"\x11'\x8a", + 0x278b: b"\x11'\x8b", + 0x278c: b"\x11'\x8c", + 0x278d: b"\x11'\x8d", + 0x278e: b"\x11'\x8e", + 0x278f: b"\x11'\x8f", + 0x2790: b"\x11'\x90", + 0x2791: b"\x11'\x91", + 0x2792: b"\x11'\x92", + 0x2793: b"\x11'\x93", + 0x2794: b"\x11'\x94", + 0x2795: b"\x11'\x95", + 0x2796: b"\x11'\x96", + 0x2797: b"\x11'\x97", + 0x2798: b"\x11'\x98", + 0x2799: b"\x11'\x99", + 0x279a: b"\x11'\x9a", + 0x279b: b"\x11'\x9b", + 0x279c: b"\x11'\x9c", + 0x279d: b"\x11'\x9d", + 0x279e: b"\x11'\x9e", + 0x279f: b"\x11'\x9f", + 0x27a0: b"\x11'\xa0", + 0x27a1: b"\x11'\xa1", + 0x27a2: b"\x11'\xa2", + 0x27a3: b"\x11'\xa3", + 0x27a4: b"\x11'\xa4", + 0x27a5: b"\x11'\xa5", + 0x27a6: b"\x11'\xa6", + 0x27a7: b"\x11'\xa7", + 0x27a8: b"\x11'\xa8", + 0x27a9: b"\x11'\xa9", + 0x27aa: b"\x11'\xaa", + 0x27ab: b"\x11'\xab", + 0x27ac: b"\x11'\xac", + 0x27ad: b"\x11'\xad", + 0x27ae: b"\x11'\xae", + 0x27af: b"\x11'\xaf", + 0x27b0: b"\x11'\xb0", + 0x27b1: b"\x11'\xb1", + 0x27b2: b"\x11'\xb2", + 0x27b3: b"\x11'\xb3", + 0x27b4: b"\x11'\xb4", + 0x27b5: b"\x11'\xb5", + 0x27b6: b"\x11'\xb6", + 0x27b7: b"\x11'\xb7", + 0x27b8: b"\x11'\xb8", + 0x27b9: b"\x11'\xb9", + 0x27ba: b"\x11'\xba", + 0x27bb: b"\x11'\xbb", + 0x27bc: b"\x11'\xbc", + 0x27bd: b"\x11'\xbd", + 0x27be: b"\x11'\xbe", + 0x27bf: b"\x11'\xbf", + 0x27c0: b"\x11'\xc0", + 0x27c1: b"\x11'\xc1", + 0x27c2: b"\x11'\xc2", + 0x27c3: b"\x11'\xc3", + 0x27c4: b"\x11'\xc4", + 0x27c5: b"\x11'\xc5", + 0x27c6: b"\x11'\xc6", + 0x27c7: b"\x11'\xc7", + 0x27c8: b"\x11'\xc8", + 0x27c9: b"\x11'\xc9", + 0x27ca: b"\x11'\xca", + 0x27cb: b"\x11'\xcb", + 0x27cc: b"\x11'\xcc", + 0x27cd: b"\x11'\xcd", + 0x27ce: b"\x11'\xce", + 0x27cf: b"\x11'\xcf", + 0x27d0: b"\x11'\xd0", + 0x27d1: b"\x11'\xd1", + 0x27d2: b"\x11'\xd2", + 0x27d3: b"\x11'\xd3", + 0x27d4: b"\x11'\xd4", + 0x27d5: b"\x11'\xd5", + 0x27d6: b"\x11'\xd6", + 0x27d7: b"\x11'\xd7", + 0x27d8: b"\x11'\xd8", + 0x27d9: b"\x11'\xd9", + 0x27da: b"\x11'\xda", + 0x27db: b"\x11'\xdb", + 0x27dc: b"\x11'\xdc", + 0x27dd: b"\x11'\xdd", + 0x27de: b"\x11'\xde", + 0x27df: b"\x11'\xdf", + 0x27e0: b"\x11'\xe0", + 0x27e1: b"\x11'\xe1", + 0x27e2: b"\x11'\xe2", + 0x27e3: b"\x11'\xe3", + 0x27e4: b"\x11'\xe4", + 0x27e5: b"\x11'\xe5", + 0x27e6: b"\x11'\xe6", + 0x27e7: b"\x11'\xe7", + 0x27e8: b"\x11'\xe8", + 0x27e9: b"\x11'\xe9", + 0x27ea: b"\x11'\xea", + 0x27eb: b"\x11'\xeb", + 0x27ec: b"\x11'\xec", + 0x27ed: b"\x11'\xed", + 0x27ee: b"\x11'\xee", + 0x27ef: b"\x11'\xef", + 0x27f0: b"\x11'\xf0", + 0x27f1: b"\x11'\xf1", + 0x27f2: b"\x11'\xf2", + 0x27f3: b"\x11'\xf3", + 0x27f4: b"\x11'\xf4", + 0x27f5: b"\x11'\xf5", + 0x27f6: b"\x11'\xf6", + 0x27f7: b"\x11'\xf7", + 0x27f8: b"\x11'\xf8", + 0x27f9: b"\x11'\xf9", + 0x27fa: b"\x11'\xfa", + 0x27fb: b"\x11'\xfb", + 0x27fc: b"\x11'\xfc", + 0x27fd: b"\x11'\xfd", + 0x27fe: b"\x11'\xfe", + 0x27ff: b"\x11'\xff", + 0x2800: b'\x11(\x00', + 0x2801: b'\x11(\x01', + 0x2802: b'\x11(\x02', + 0x2803: b'\x11(\x03', + 0x2804: b'\x11(\x04', + 0x2805: b'\x11(\x05', + 0x2806: b'\x11(\x06', + 0x2807: b'\x11(\x07', + 0x2808: b'\x11(\x08', + 0x2809: b'\x11(\t', + 0x280a: b'\x11(\n', + 0x280b: b'\x11(\x0b', + 0x280c: b'\x11(\x0c', + 0x280d: b'\x11(\r', + 0x280e: b'\x11(\x0e', + 0x280f: b'\x11(\x0f', + 0x2810: b'\x11(\x10', + 0x2811: b'\x11(\x11', + 0x2812: b'\x11(\x12', + 0x2813: b'\x11(\x13', + 0x2814: b'\x11(\x14', + 0x2815: b'\x11(\x15', + 0x2816: b'\x11(\x16', + 0x2817: b'\x11(\x17', + 0x2818: b'\x11(\x18', + 0x2819: b'\x11(\x19', + 0x281a: b'\x11(\x1a', + 0x281b: b'\x11(\x1b', + 0x281c: b'\x11(\x1c', + 0x281d: b'\x11(\x1d', + 0x281e: b'\x11(\x1e', + 0x281f: b'\x11(\x1f', + 0x2820: b'\x11( ', + 0x2821: b'\x11(!', + 0x2822: b'\x11("', + 0x2823: b'\x11(#', + 0x2824: b'\x11($', + 0x2825: b'\x11(%', + 0x2826: b'\x11(&', + 0x2827: b"\x11('", + 0x2828: b'\x11((', + 0x2829: b'\x11()', + 0x282a: b'\x11(*', + 0x282b: b'\x11(+', + 0x282c: b'\x11(,', + 0x282d: b'\x11(-', + 0x282e: b'\x11(.', + 0x282f: b'\x11(/', + 0x2830: b'\x11(0', + 0x2831: b'\x11(1', + 0x2832: b'\x11(2', + 0x2833: b'\x11(3', + 0x2834: b'\x11(4', + 0x2835: b'\x11(5', + 0x2836: b'\x11(6', + 0x2837: b'\x11(7', + 0x2838: b'\x11(8', + 0x2839: b'\x11(9', + 0x283a: b'\x11(:', + 0x283b: b'\x11(;', + 0x283c: b'\x11(<', + 0x283d: b'\x11(=', + 0x283e: b'\x11(>', + 0x283f: b'\x11(?', + 0x2840: b'\x11(@', + 0x2841: b'\x11(A', + 0x2842: b'\x11(B', + 0x2843: b'\x11(C', + 0x2844: b'\x11(D', + 0x2845: b'\x11(E', + 0x2846: b'\x11(F', + 0x2847: b'\x11(G', + 0x2848: b'\x11(H', + 0x2849: b'\x11(I', + 0x284a: b'\x11(J', + 0x284b: b'\x11(K', + 0x284c: b'\x11(L', + 0x284d: b'\x11(M', + 0x284e: b'\x11(N', + 0x284f: b'\x11(O', + 0x2850: b'\x11(P', + 0x2851: b'\x11(Q', + 0x2852: b'\x11(R', + 0x2853: b'\x11(S', + 0x2854: b'\x11(T', + 0x2855: b'\x11(U', + 0x2856: b'\x11(V', + 0x2857: b'\x11(W', + 0x2858: b'\x11(X', + 0x2859: b'\x11(Y', + 0x285a: b'\x11(Z', + 0x285b: b'\x11([', + 0x285c: b'\x11(\\', + 0x285d: b'\x11(]', + 0x285e: b'\x11(^', + 0x285f: b'\x11(_', + 0x2860: b'\x11(`', + 0x2861: b'\x11(a', + 0x2862: b'\x11(b', + 0x2863: b'\x11(c', + 0x2864: b'\x11(d', + 0x2865: b'\x11(e', + 0x2866: b'\x11(f', + 0x2867: b'\x11(g', + 0x2868: b'\x11(h', + 0x2869: b'\x11(i', + 0x286a: b'\x11(j', + 0x286b: b'\x11(k', + 0x286c: b'\x11(l', + 0x286d: b'\x11(m', + 0x286e: b'\x11(n', + 0x286f: b'\x11(o', + 0x2870: b'\x11(p', + 0x2871: b'\x11(q', + 0x2872: b'\x11(r', + 0x2873: b'\x11(s', + 0x2874: b'\x11(t', + 0x2875: b'\x11(u', + 0x2876: b'\x11(v', + 0x2877: b'\x11(w', + 0x2878: b'\x11(x', + 0x2879: b'\x11(y', + 0x287a: b'\x11(z', + 0x287b: b'\x11({', + 0x287c: b'\x11(|', + 0x287d: b'\x11(}', + 0x287e: b'\x11(~', + 0x287f: b'\x11(\x7f', + 0x2880: b'\x11(\x80', + 0x2881: b'\x11(\x81', + 0x2882: b'\x11(\x82', + 0x2883: b'\x11(\x83', + 0x2884: b'\x11(\x84', + 0x2885: b'\x11(\x85', + 0x2886: b'\x11(\x86', + 0x2887: b'\x11(\x87', + 0x2888: b'\x11(\x88', + 0x2889: b'\x11(\x89', + 0x288a: b'\x11(\x8a', + 0x288b: b'\x11(\x8b', + 0x288c: b'\x11(\x8c', + 0x288d: b'\x11(\x8d', + 0x288e: b'\x11(\x8e', + 0x288f: b'\x11(\x8f', + 0x2890: b'\x11(\x90', + 0x2891: b'\x11(\x91', + 0x2892: b'\x11(\x92', + 0x2893: b'\x11(\x93', + 0x2894: b'\x11(\x94', + 0x2895: b'\x11(\x95', + 0x2896: b'\x11(\x96', + 0x2897: b'\x11(\x97', + 0x2898: b'\x11(\x98', + 0x2899: b'\x11(\x99', + 0x289a: b'\x11(\x9a', + 0x289b: b'\x11(\x9b', + 0x289c: b'\x11(\x9c', + 0x289d: b'\x11(\x9d', + 0x289e: b'\x11(\x9e', + 0x289f: b'\x11(\x9f', + 0x28a0: b'\x11(\xa0', + 0x28a1: b'\x11(\xa1', + 0x28a2: b'\x11(\xa2', + 0x28a3: b'\x11(\xa3', + 0x28a4: b'\x11(\xa4', + 0x28a5: b'\x11(\xa5', + 0x28a6: b'\x11(\xa6', + 0x28a7: b'\x11(\xa7', + 0x28a8: b'\x11(\xa8', + 0x28a9: b'\x11(\xa9', + 0x28aa: b'\x11(\xaa', + 0x28ab: b'\x11(\xab', + 0x28ac: b'\x11(\xac', + 0x28ad: b'\x11(\xad', + 0x28ae: b'\x11(\xae', + 0x28af: b'\x11(\xaf', + 0x28b0: b'\x11(\xb0', + 0x28b1: b'\x11(\xb1', + 0x28b2: b'\x11(\xb2', + 0x28b3: b'\x11(\xb3', + 0x28b4: b'\x11(\xb4', + 0x28b5: b'\x11(\xb5', + 0x28b6: b'\x11(\xb6', + 0x28b7: b'\x11(\xb7', + 0x28b8: b'\x11(\xb8', + 0x28b9: b'\x11(\xb9', + 0x28ba: b'\x11(\xba', + 0x28bb: b'\x11(\xbb', + 0x28bc: b'\x11(\xbc', + 0x28bd: b'\x11(\xbd', + 0x28be: b'\x11(\xbe', + 0x28bf: b'\x11(\xbf', + 0x28c0: b'\x11(\xc0', + 0x28c1: b'\x11(\xc1', + 0x28c2: b'\x11(\xc2', + 0x28c3: b'\x11(\xc3', + 0x28c4: b'\x11(\xc4', + 0x28c5: b'\x11(\xc5', + 0x28c6: b'\x11(\xc6', + 0x28c7: b'\x11(\xc7', + 0x28c8: b'\x11(\xc8', + 0x28c9: b'\x11(\xc9', + 0x28ca: b'\x11(\xca', + 0x28cb: b'\x11(\xcb', + 0x28cc: b'\x11(\xcc', + 0x28cd: b'\x11(\xcd', + 0x28ce: b'\x11(\xce', + 0x28cf: b'\x11(\xcf', + 0x28d0: b'\x11(\xd0', + 0x28d1: b'\x11(\xd1', + 0x28d2: b'\x11(\xd2', + 0x28d3: b'\x11(\xd3', + 0x28d4: b'\x11(\xd4', + 0x28d5: b'\x11(\xd5', + 0x28d6: b'\x11(\xd6', + 0x28d7: b'\x11(\xd7', + 0x28d8: b'\x11(\xd8', + 0x28d9: b'\x11(\xd9', + 0x28da: b'\x11(\xda', + 0x28db: b'\x11(\xdb', + 0x28dc: b'\x11(\xdc', + 0x28dd: b'\x11(\xdd', + 0x28de: b'\x11(\xde', + 0x28df: b'\x11(\xdf', + 0x28e0: b'\x11(\xe0', + 0x28e1: b'\x11(\xe1', + 0x28e2: b'\x11(\xe2', + 0x28e3: b'\x11(\xe3', + 0x28e4: b'\x11(\xe4', + 0x28e5: b'\x11(\xe5', + 0x28e6: b'\x11(\xe6', + 0x28e7: b'\x11(\xe7', + 0x28e8: b'\x11(\xe8', + 0x28e9: b'\x11(\xe9', + 0x28ea: b'\x11(\xea', + 0x28eb: b'\x11(\xeb', + 0x28ec: b'\x11(\xec', + 0x28ed: b'\x11(\xed', + 0x28ee: b'\x11(\xee', + 0x28ef: b'\x11(\xef', + 0x28f0: b'\x11(\xf0', + 0x28f1: b'\x11(\xf1', + 0x28f2: b'\x11(\xf2', + 0x28f3: b'\x11(\xf3', + 0x28f4: b'\x11(\xf4', + 0x28f5: b'\x11(\xf5', + 0x28f6: b'\x11(\xf6', + 0x28f7: b'\x11(\xf7', + 0x28f8: b'\x11(\xf8', + 0x28f9: b'\x11(\xf9', + 0x28fa: b'\x11(\xfa', + 0x28fb: b'\x11(\xfb', + 0x28fc: b'\x11(\xfc', + 0x28fd: b'\x11(\xfd', + 0x28fe: b'\x11(\xfe', + 0x28ff: b'\x11(\xff', + 0x2900: b'\x11)\x00', + 0x2901: b'\x11)\x01', + 0x2902: b'\x11)\x02', + 0x2903: b'\x11)\x03', + 0x2904: b'\x11)\x04', + 0x2905: b'\x11)\x05', + 0x2906: b'\x11)\x06', + 0x2907: b'\x11)\x07', + 0x2908: b'\x11)\x08', + 0x2909: b'\x11)\t', + 0x290a: b'\x11)\n', + 0x290b: b'\x11)\x0b', + 0x290c: b'\x11)\x0c', + 0x290d: b'\x11)\r', + 0x290e: b'\x11)\x0e', + 0x290f: b'\x11)\x0f', + 0x2910: b'\x11)\x10', + 0x2911: b'\x11)\x11', + 0x2912: b'\x11)\x12', + 0x2913: b'\x11)\x13', + 0x2914: b'\x11)\x14', + 0x2915: b'\x11)\x15', + 0x2916: b'\x11)\x16', + 0x2917: b'\x11)\x17', + 0x2918: b'\x11)\x18', + 0x2919: b'\x11)\x19', + 0x291a: b'\x11)\x1a', + 0x291b: b'\x11)\x1b', + 0x291c: b'\x11)\x1c', + 0x291d: b'\x11)\x1d', + 0x291e: b'\x11)\x1e', + 0x291f: b'\x11)\x1f', + 0x2920: b'\x11) ', + 0x2921: b'\x11)!', + 0x2922: b'\x11)"', + 0x2923: b'\x11)#', + 0x2924: b'\x11)$', + 0x2925: b'\x11)%', + 0x2926: b'\x11)&', + 0x2927: b"\x11)'", + 0x2928: b'\x11)(', + 0x2929: b'\x11))', + 0x292a: b'\x11)*', + 0x292b: b'\x11)+', + 0x292c: b'\x11),', + 0x292d: b'\x11)-', + 0x292e: b'\x11).', + 0x292f: b'\x11)/', + 0x2930: b'\x11)0', + 0x2931: b'\x11)1', + 0x2932: b'\x11)2', + 0x2933: b'\x11)3', + 0x2934: b'\x11)4', + 0x2935: b'\x11)5', + 0x2936: b'\x11)6', + 0x2937: b'\x11)7', + 0x2938: b'\x11)8', + 0x2939: b'\x11)9', + 0x293a: b'\x11):', + 0x293b: b'\x11);', + 0x293c: b'\x11)<', + 0x293d: b'\x11)=', + 0x293e: b'\x11)>', + 0x293f: b'\x11)?', + 0x2940: b'\x11)@', + 0x2941: b'\x11)A', + 0x2942: b'\x11)B', + 0x2943: b'\x11)C', + 0x2944: b'\x11)D', + 0x2945: b'\x11)E', + 0x2946: b'\x11)F', + 0x2947: b'\x11)G', + 0x2948: b'\x11)H', + 0x2949: b'\x11)I', + 0x294a: b'\x11)J', + 0x294b: b'\x11)K', + 0x294c: b'\x11)L', + 0x294d: b'\x11)M', + 0x294e: b'\x11)N', + 0x294f: b'\x11)O', + 0x2950: b'\x11)P', + 0x2951: b'\x11)Q', + 0x2952: b'\x11)R', + 0x2953: b'\x11)S', + 0x2954: b'\x11)T', + 0x2955: b'\x11)U', + 0x2956: b'\x11)V', + 0x2957: b'\x11)W', + 0x2958: b'\x11)X', + 0x2959: b'\x11)Y', + 0x295a: b'\x11)Z', + 0x295b: b'\x11)[', + 0x295c: b'\x11)\\', + 0x295d: b'\x11)]', + 0x295e: b'\x11)^', + 0x295f: b'\x11)_', + 0x2960: b'\x11)`', + 0x2961: b'\x11)a', + 0x2962: b'\x11)b', + 0x2963: b'\x11)c', + 0x2964: b'\x11)d', + 0x2965: b'\x11)e', + 0x2966: b'\x11)f', + 0x2967: b'\x11)g', + 0x2968: b'\x11)h', + 0x2969: b'\x11)i', + 0x296a: b'\x11)j', + 0x296b: b'\x11)k', + 0x296c: b'\x11)l', + 0x296d: b'\x11)m', + 0x296e: b'\x11)n', + 0x296f: b'\x11)o', + 0x2970: b'\x11)p', + 0x2971: b'\x11)q', + 0x2972: b'\x11)r', + 0x2973: b'\x11)s', + 0x2974: b'\x11)t', + 0x2975: b'\x11)u', + 0x2976: b'\x11)v', + 0x2977: b'\x11)w', + 0x2978: b'\x11)x', + 0x2979: b'\x11)y', + 0x297a: b'\x11)z', + 0x297b: b'\x11){', + 0x297c: b'\x11)|', + 0x297d: b'\x11)}', + 0x297e: b'\x11)~', + 0x297f: b'\x11)\x7f', + 0x2980: b'\x11)\x80', + 0x2981: b'\x11)\x81', + 0x2982: b'\x11)\x82', + 0x2983: b'\x11)\x83', + 0x2984: b'\x11)\x84', + 0x2985: b'\x11)\x85', + 0x2986: b'\x11)\x86', + 0x2987: b'\x11)\x87', + 0x2988: b'\x11)\x88', + 0x2989: b'\x11)\x89', + 0x298a: b'\x11)\x8a', + 0x298b: b'\x11)\x8b', + 0x298c: b'\x11)\x8c', + 0x298d: b'\x11)\x8d', + 0x298e: b'\x11)\x8e', + 0x298f: b'\x11)\x8f', + 0x2990: b'\x11)\x90', + 0x2991: b'\x11)\x91', + 0x2992: b'\x11)\x92', + 0x2993: b'\x11)\x93', + 0x2994: b'\x11)\x94', + 0x2995: b'\x11)\x95', + 0x2996: b'\x11)\x96', + 0x2997: b'\x11)\x97', + 0x2998: b'\x11)\x98', + 0x2999: b'\x11)\x99', + 0x299a: b'\x11)\x9a', + 0x299b: b'\x11)\x9b', + 0x299c: b'\x11)\x9c', + 0x299d: b'\x11)\x9d', + 0x299e: b'\x11)\x9e', + 0x299f: b'\x11)\x9f', + 0x29a0: b'\x11)\xa0', + 0x29a1: b'\x11)\xa1', + 0x29a2: b'\x11)\xa2', + 0x29a3: b'\x11)\xa3', + 0x29a4: b'\x11)\xa4', + 0x29a5: b'\x11)\xa5', + 0x29a6: b'\x11)\xa6', + 0x29a7: b'\x11)\xa7', + 0x29a8: b'\x11)\xa8', + 0x29a9: b'\x11)\xa9', + 0x29aa: b'\x11)\xaa', + 0x29ab: b'\x11)\xab', + 0x29ac: b'\x11)\xac', + 0x29ad: b'\x11)\xad', + 0x29ae: b'\x11)\xae', + 0x29af: b'\x11)\xaf', + 0x29b0: b'\x11)\xb0', + 0x29b1: b'\x11)\xb1', + 0x29b2: b'\x11)\xb2', + 0x29b3: b'\x11)\xb3', + 0x29b4: b'\x11)\xb4', + 0x29b5: b'\x11)\xb5', + 0x29b6: b'\x11)\xb6', + 0x29b7: b'\x11)\xb7', + 0x29b8: b'\x11)\xb8', + 0x29b9: b'\x11)\xb9', + 0x29ba: b'\x11)\xba', + 0x29bb: b'\x11)\xbb', + 0x29bc: b'\x11)\xbc', + 0x29bd: b'\x11)\xbd', + 0x29be: b'\x11)\xbe', + 0x29bf: b'\x11)\xbf', + 0x29c0: b'\x11)\xc0', + 0x29c1: b'\x11)\xc1', + 0x29c2: b'\x11)\xc2', + 0x29c3: b'\x11)\xc3', + 0x29c4: b'\x11)\xc4', + 0x29c5: b'\x11)\xc5', + 0x29c6: b'\x11)\xc6', + 0x29c7: b'\x11)\xc7', + 0x29c8: b'\x11)\xc8', + 0x29c9: b'\x11)\xc9', + 0x29ca: b'\x11)\xca', + 0x29cb: b'\x11)\xcb', + 0x29cc: b'\x11)\xcc', + 0x29cd: b'\x11)\xcd', + 0x29ce: b'\x11)\xce', + 0x29cf: b'\x11)\xcf', + 0x29d0: b'\x11)\xd0', + 0x29d1: b'\x11)\xd1', + 0x29d2: b'\x11)\xd2', + 0x29d3: b'\x11)\xd3', + 0x29d4: b'\x11)\xd4', + 0x29d5: b'\x11)\xd5', + 0x29d6: b'\x11)\xd6', + 0x29d7: b'\x11)\xd7', + 0x29d8: b'\x11)\xd8', + 0x29d9: b'\x11)\xd9', + 0x29da: b'\x11)\xda', + 0x29db: b'\x11)\xdb', + 0x29dc: b'\x11)\xdc', + 0x29dd: b'\x11)\xdd', + 0x29de: b'\x11)\xde', + 0x29df: b'\x11)\xdf', + 0x29e0: b'\x11)\xe0', + 0x29e1: b'\x11)\xe1', + 0x29e2: b'\x11)\xe2', + 0x29e3: b'\x11)\xe3', + 0x29e4: b'\x11)\xe4', + 0x29e5: b'\x11)\xe5', + 0x29e6: b'\x11)\xe6', + 0x29e7: b'\x11)\xe7', + 0x29e8: b'\x11)\xe8', + 0x29e9: b'\x11)\xe9', + 0x29ea: b'\x11)\xea', + 0x29eb: b'\x11)\xeb', + 0x29ec: b'\x11)\xec', + 0x29ed: b'\x11)\xed', + 0x29ee: b'\x11)\xee', + 0x29ef: b'\x11)\xef', + 0x29f0: b'\x11)\xf0', + 0x29f1: b'\x11)\xf1', + 0x29f2: b'\x11)\xf2', + 0x29f3: b'\x11)\xf3', + 0x29f4: b'\x11)\xf4', + 0x29f5: b'\x11)\xf5', + 0x29f6: b'\x11)\xf6', + 0x29f7: b'\x11)\xf7', + 0x29f8: b'\x11)\xf8', + 0x29f9: b'\x11)\xf9', + 0x29fa: b'\x11)\xfa', + 0x29fb: b'\x11)\xfb', + 0x29fc: b'\x11)\xfc', + 0x29fd: b'\x11)\xfd', + 0x29fe: b'\x11)\xfe', + 0x29ff: b'\x11)\xff', + 0x2a00: b'\x11*\x00', + 0x2a01: b'\x11*\x01', + 0x2a02: b'\x11*\x02', + 0x2a03: b'\x11*\x03', + 0x2a04: b'\x11*\x04', + 0x2a05: b'\x11*\x05', + 0x2a06: b'\x11*\x06', + 0x2a07: b'\x11*\x07', + 0x2a08: b'\x11*\x08', + 0x2a09: b'\x11*\t', + 0x2a0a: b'\x11*\n', + 0x2a0b: b'\x11*\x0b', + 0x2a0c: b'\x11*\x0c', + 0x2a0d: b'\x11*\r', + 0x2a0e: b'\x11*\x0e', + 0x2a0f: b'\x11*\x0f', + 0x2a10: b'\x11*\x10', + 0x2a11: b'\x11*\x11', + 0x2a12: b'\x11*\x12', + 0x2a13: b'\x11*\x13', + 0x2a14: b'\x11*\x14', + 0x2a15: b'\x11*\x15', + 0x2a16: b'\x11*\x16', + 0x2a17: b'\x11*\x17', + 0x2a18: b'\x11*\x18', + 0x2a19: b'\x11*\x19', + 0x2a1a: b'\x11*\x1a', + 0x2a1b: b'\x11*\x1b', + 0x2a1c: b'\x11*\x1c', + 0x2a1d: b'\x11*\x1d', + 0x2a1e: b'\x11*\x1e', + 0x2a1f: b'\x11*\x1f', + 0x2a20: b'\x11* ', + 0x2a21: b'\x11*!', + 0x2a22: b'\x11*"', + 0x2a23: b'\x11*#', + 0x2a24: b'\x11*$', + 0x2a25: b'\x11*%', + 0x2a26: b'\x11*&', + 0x2a27: b"\x11*'", + 0x2a28: b'\x11*(', + 0x2a29: b'\x11*)', + 0x2a2a: b'\x11**', + 0x2a2b: b'\x11*+', + 0x2a2c: b'\x11*,', + 0x2a2d: b'\x11*-', + 0x2a2e: b'\x11*.', + 0x2a2f: b'\x11*/', + 0x2a30: b'\x11*0', + 0x2a31: b'\x11*1', + 0x2a32: b'\x11*2', + 0x2a33: b'\x11*3', + 0x2a34: b'\x11*4', + 0x2a35: b'\x11*5', + 0x2a36: b'\x11*6', + 0x2a37: b'\x11*7', + 0x2a38: b'\x11*8', + 0x2a39: b'\x11*9', + 0x2a3a: b'\x11*:', + 0x2a3b: b'\x11*;', + 0x2a3c: b'\x11*<', + 0x2a3d: b'\x11*=', + 0x2a3e: b'\x11*>', + 0x2a3f: b'\x11*?', + 0x2a40: b'\x11*@', + 0x2a41: b'\x11*A', + 0x2a42: b'\x11*B', + 0x2a43: b'\x11*C', + 0x2a44: b'\x11*D', + 0x2a45: b'\x11*E', + 0x2a46: b'\x11*F', + 0x2a47: b'\x11*G', + 0x2a48: b'\x11*H', + 0x2a49: b'\x11*I', + 0x2a4a: b'\x11*J', + 0x2a4b: b'\x11*K', + 0x2a4c: b'\x11*L', + 0x2a4d: b'\x11*M', + 0x2a4e: b'\x11*N', + 0x2a4f: b'\x11*O', + 0x2a50: b'\x11*P', + 0x2a51: b'\x11*Q', + 0x2a52: b'\x11*R', + 0x2a53: b'\x11*S', + 0x2a54: b'\x11*T', + 0x2a55: b'\x11*U', + 0x2a56: b'\x11*V', + 0x2a57: b'\x11*W', + 0x2a58: b'\x11*X', + 0x2a59: b'\x11*Y', + 0x2a5a: b'\x11*Z', + 0x2a5b: b'\x11*[', + 0x2a5c: b'\x11*\\', + 0x2a5d: b'\x11*]', + 0x2a5e: b'\x11*^', + 0x2a5f: b'\x11*_', + 0x2a60: b'\x11*`', + 0x2a61: b'\x11*a', + 0x2a62: b'\x11*b', + 0x2a63: b'\x11*c', + 0x2a64: b'\x11*d', + 0x2a65: b'\x11*e', + 0x2a66: b'\x11*f', + 0x2a67: b'\x11*g', + 0x2a68: b'\x11*h', + 0x2a69: b'\x11*i', + 0x2a6a: b'\x11*j', + 0x2a6b: b'\x11*k', + 0x2a6c: b'\x11*l', + 0x2a6d: b'\x11*m', + 0x2a6e: b'\x11*n', + 0x2a6f: b'\x11*o', + 0x2a70: b'\x11*p', + 0x2a71: b'\x11*q', + 0x2a72: b'\x11*r', + 0x2a73: b'\x11*s', + 0x2a74: b'\x11*t', + 0x2a75: b'\x11*u', + 0x2a76: b'\x11*v', + 0x2a77: b'\x11*w', + 0x2a78: b'\x11*x', + 0x2a79: b'\x11*y', + 0x2a7a: b'\x11*z', + 0x2a7b: b'\x11*{', + 0x2a7c: b'\x11*|', + 0x2a7d: b'\x11*}', + 0x2a7e: b'\x11*~', + 0x2a7f: b'\x11*\x7f', + 0x2a80: b'\x11*\x80', + 0x2a81: b'\x11*\x81', + 0x2a82: b'\x11*\x82', + 0x2a83: b'\x11*\x83', + 0x2a84: b'\x11*\x84', + 0x2a85: b'\x11*\x85', + 0x2a86: b'\x11*\x86', + 0x2a87: b'\x11*\x87', + 0x2a88: b'\x11*\x88', + 0x2a89: b'\x11*\x89', + 0x2a8a: b'\x11*\x8a', + 0x2a8b: b'\x11*\x8b', + 0x2a8c: b'\x11*\x8c', + 0x2a8d: b'\x11*\x8d', + 0x2a8e: b'\x11*\x8e', + 0x2a8f: b'\x11*\x8f', + 0x2a90: b'\x11*\x90', + 0x2a91: b'\x11*\x91', + 0x2a92: b'\x11*\x92', + 0x2a93: b'\x11*\x93', + 0x2a94: b'\x11*\x94', + 0x2a95: b'\x11*\x95', + 0x2a96: b'\x11*\x96', + 0x2a97: b'\x11*\x97', + 0x2a98: b'\x11*\x98', + 0x2a99: b'\x11*\x99', + 0x2a9a: b'\x11*\x9a', + 0x2a9b: b'\x11*\x9b', + 0x2a9c: b'\x11*\x9c', + 0x2a9d: b'\x11*\x9d', + 0x2a9e: b'\x11*\x9e', + 0x2a9f: b'\x11*\x9f', + 0x2aa0: b'\x11*\xa0', + 0x2aa1: b'\x11*\xa1', + 0x2aa2: b'\x11*\xa2', + 0x2aa3: b'\x11*\xa3', + 0x2aa4: b'\x11*\xa4', + 0x2aa5: b'\x11*\xa5', + 0x2aa6: b'\x11*\xa6', + 0x2aa7: b'\x11*\xa7', + 0x2aa8: b'\x11*\xa8', + 0x2aa9: b'\x11*\xa9', + 0x2aaa: b'\x11*\xaa', + 0x2aab: b'\x11*\xab', + 0x2aac: b'\x11*\xac', + 0x2aad: b'\x11*\xad', + 0x2aae: b'\x11*\xae', + 0x2aaf: b'\x11*\xaf', + 0x2ab0: b'\x11*\xb0', + 0x2ab1: b'\x11*\xb1', + 0x2ab2: b'\x11*\xb2', + 0x2ab3: b'\x11*\xb3', + 0x2ab4: b'\x11*\xb4', + 0x2ab5: b'\x11*\xb5', + 0x2ab6: b'\x11*\xb6', + 0x2ab7: b'\x11*\xb7', + 0x2ab8: b'\x11*\xb8', + 0x2ab9: b'\x11*\xb9', + 0x2aba: b'\x11*\xba', + 0x2abb: b'\x11*\xbb', + 0x2abc: b'\x11*\xbc', + 0x2abd: b'\x11*\xbd', + 0x2abe: b'\x11*\xbe', + 0x2abf: b'\x11*\xbf', + 0x2ac0: b'\x11*\xc0', + 0x2ac1: b'\x11*\xc1', + 0x2ac2: b'\x11*\xc2', + 0x2ac3: b'\x11*\xc3', + 0x2ac4: b'\x11*\xc4', + 0x2ac5: b'\x11*\xc5', + 0x2ac6: b'\x11*\xc6', + 0x2ac7: b'\x11*\xc7', + 0x2ac8: b'\x11*\xc8', + 0x2ac9: b'\x11*\xc9', + 0x2aca: b'\x11*\xca', + 0x2acb: b'\x11*\xcb', + 0x2acc: b'\x11*\xcc', + 0x2acd: b'\x11*\xcd', + 0x2ace: b'\x11*\xce', + 0x2acf: b'\x11*\xcf', + 0x2ad0: b'\x11*\xd0', + 0x2ad1: b'\x11*\xd1', + 0x2ad2: b'\x11*\xd2', + 0x2ad3: b'\x11*\xd3', + 0x2ad4: b'\x11*\xd4', + 0x2ad5: b'\x11*\xd5', + 0x2ad6: b'\x11*\xd6', + 0x2ad7: b'\x11*\xd7', + 0x2ad8: b'\x11*\xd8', + 0x2ad9: b'\x11*\xd9', + 0x2ada: b'\x11*\xda', + 0x2adb: b'\x11*\xdb', + 0x2adc: b'\x11*\xdc', + 0x2add: b'\x11*\xdd', + 0x2ade: b'\x11*\xde', + 0x2adf: b'\x11*\xdf', + 0x2ae0: b'\x11*\xe0', + 0x2ae1: b'\x11*\xe1', + 0x2ae2: b'\x11*\xe2', + 0x2ae3: b'\x11*\xe3', + 0x2ae4: b'\x11*\xe4', + 0x2ae5: b'\x11*\xe5', + 0x2ae6: b'\x11*\xe6', + 0x2ae7: b'\x11*\xe7', + 0x2ae8: b'\x11*\xe8', + 0x2ae9: b'\x11*\xe9', + 0x2aea: b'\x11*\xea', + 0x2aeb: b'\x11*\xeb', + 0x2aec: b'\x11*\xec', + 0x2aed: b'\x11*\xed', + 0x2aee: b'\x11*\xee', + 0x2aef: b'\x11*\xef', + 0x2af0: b'\x11*\xf0', + 0x2af1: b'\x11*\xf1', + 0x2af2: b'\x11*\xf2', + 0x2af3: b'\x11*\xf3', + 0x2af4: b'\x11*\xf4', + 0x2af5: b'\x11*\xf5', + 0x2af6: b'\x11*\xf6', + 0x2af7: b'\x11*\xf7', + 0x2af8: b'\x11*\xf8', + 0x2af9: b'\x11*\xf9', + 0x2afa: b'\x11*\xfa', + 0x2afb: b'\x11*\xfb', + 0x2afc: b'\x11*\xfc', + 0x2afd: b'\x11*\xfd', + 0x2afe: b'\x11*\xfe', + 0x2aff: b'\x11*\xff', + 0x2b00: b'\x11+\x00', + 0x2b01: b'\x11+\x01', + 0x2b02: b'\x11+\x02', + 0x2b03: b'\x11+\x03', + 0x2b04: b'\x11+\x04', + 0x2b05: b'\x11+\x05', + 0x2b06: b'\x11+\x06', + 0x2b07: b'\x11+\x07', + 0x2b08: b'\x11+\x08', + 0x2b09: b'\x11+\t', + 0x2b0a: b'\x11+\n', + 0x2b0b: b'\x11+\x0b', + 0x2b0c: b'\x11+\x0c', + 0x2b0d: b'\x11+\r', + 0x2b0e: b'\x11+\x0e', + 0x2b0f: b'\x11+\x0f', + 0x2b10: b'\x11+\x10', + 0x2b11: b'\x11+\x11', + 0x2b12: b'\x11+\x12', + 0x2b13: b'\x11+\x13', + 0x2b14: b'\x11+\x14', + 0x2b15: b'\x11+\x15', + 0x2b16: b'\x11+\x16', + 0x2b17: b'\x11+\x17', + 0x2b18: b'\x11+\x18', + 0x2b19: b'\x11+\x19', + 0x2b1a: b'\x11+\x1a', + 0x2b1b: b'\x11+\x1b', + 0x2b1c: b'\x11+\x1c', + 0x2b1d: b'\x11+\x1d', + 0x2b1e: b'\x11+\x1e', + 0x2b1f: b'\x11+\x1f', + 0x2b20: b'\x11+ ', + 0x2b21: b'\x11+!', + 0x2b22: b'\x11+"', + 0x2b23: b'\x11+#', + 0x2b24: b'\x11+$', + 0x2b25: b'\x11+%', + 0x2b26: b'\x11+&', + 0x2b27: b"\x11+'", + 0x2b28: b'\x11+(', + 0x2b29: b'\x11+)', + 0x2b2a: b'\x11+*', + 0x2b2b: b'\x11++', + 0x2b2c: b'\x11+,', + 0x2b2d: b'\x11+-', + 0x2b2e: b'\x11+.', + 0x2b2f: b'\x11+/', + 0x2b30: b'\x11+0', + 0x2b31: b'\x11+1', + 0x2b32: b'\x11+2', + 0x2b33: b'\x11+3', + 0x2b34: b'\x11+4', + 0x2b35: b'\x11+5', + 0x2b36: b'\x11+6', + 0x2b37: b'\x11+7', + 0x2b38: b'\x11+8', + 0x2b39: b'\x11+9', + 0x2b3a: b'\x11+:', + 0x2b3b: b'\x11+;', + 0x2b3c: b'\x11+<', + 0x2b3d: b'\x11+=', + 0x2b3e: b'\x11+>', + 0x2b3f: b'\x11+?', + 0x2b40: b'\x11+@', + 0x2b41: b'\x11+A', + 0x2b42: b'\x11+B', + 0x2b43: b'\x11+C', + 0x2b44: b'\x11+D', + 0x2b45: b'\x11+E', + 0x2b46: b'\x11+F', + 0x2b47: b'\x11+G', + 0x2b48: b'\x11+H', + 0x2b49: b'\x11+I', + 0x2b4a: b'\x11+J', + 0x2b4b: b'\x11+K', + 0x2b4c: b'\x11+L', + 0x2b4d: b'\x11+M', + 0x2b4e: b'\x11+N', + 0x2b4f: b'\x11+O', + 0x2b50: b'\x11+P', + 0x2b51: b'\x11+Q', + 0x2b52: b'\x11+R', + 0x2b53: b'\x11+S', + 0x2b54: b'\x11+T', + 0x2b55: b'\x11+U', + 0x2b56: b'\x11+V', + 0x2b57: b'\x11+W', + 0x2b58: b'\x11+X', + 0x2b59: b'\x11+Y', + 0x2b5a: b'\x11+Z', + 0x2b5b: b'\x11+[', + 0x2b5c: b'\x11+\\', + 0x2b5d: b'\x11+]', + 0x2b5e: b'\x11+^', + 0x2b5f: b'\x11+_', + 0x2b60: b'\x11+`', + 0x2b61: b'\x11+a', + 0x2b62: b'\x11+b', + 0x2b63: b'\x11+c', + 0x2b64: b'\x11+d', + 0x2b65: b'\x11+e', + 0x2b66: b'\x11+f', + 0x2b67: b'\x11+g', + 0x2b68: b'\x11+h', + 0x2b69: b'\x11+i', + 0x2b6a: b'\x11+j', + 0x2b6b: b'\x11+k', + 0x2b6c: b'\x11+l', + 0x2b6d: b'\x11+m', + 0x2b6e: b'\x11+n', + 0x2b6f: b'\x11+o', + 0x2b70: b'\x11+p', + 0x2b71: b'\x11+q', + 0x2b72: b'\x11+r', + 0x2b73: b'\x11+s', + 0x2b74: b'\x11+t', + 0x2b75: b'\x11+u', + 0x2b76: b'\x11+v', + 0x2b77: b'\x11+w', + 0x2b78: b'\x11+x', + 0x2b79: b'\x11+y', + 0x2b7a: b'\x11+z', + 0x2b7b: b'\x11+{', + 0x2b7c: b'\x11+|', + 0x2b7d: b'\x11+}', + 0x2b7e: b'\x11+~', + 0x2b7f: b'\x11+\x7f', + 0x2b80: b'\x11+\x80', + 0x2b81: b'\x11+\x81', + 0x2b82: b'\x11+\x82', + 0x2b83: b'\x11+\x83', + 0x2b84: b'\x11+\x84', + 0x2b85: b'\x11+\x85', + 0x2b86: b'\x11+\x86', + 0x2b87: b'\x11+\x87', + 0x2b88: b'\x11+\x88', + 0x2b89: b'\x11+\x89', + 0x2b8a: b'\x11+\x8a', + 0x2b8b: b'\x11+\x8b', + 0x2b8c: b'\x11+\x8c', + 0x2b8d: b'\x11+\x8d', + 0x2b8e: b'\x11+\x8e', + 0x2b8f: b'\x11+\x8f', + 0x2b90: b'\x11+\x90', + 0x2b91: b'\x11+\x91', + 0x2b92: b'\x11+\x92', + 0x2b93: b'\x11+\x93', + 0x2b94: b'\x11+\x94', + 0x2b95: b'\x11+\x95', + 0x2b96: b'\x11+\x96', + 0x2b97: b'\x11+\x97', + 0x2b98: b'\x11+\x98', + 0x2b99: b'\x11+\x99', + 0x2b9a: b'\x11+\x9a', + 0x2b9b: b'\x11+\x9b', + 0x2b9c: b'\x11+\x9c', + 0x2b9d: b'\x11+\x9d', + 0x2b9e: b'\x11+\x9e', + 0x2b9f: b'\x11+\x9f', + 0x2ba0: b'\x11+\xa0', + 0x2ba1: b'\x11+\xa1', + 0x2ba2: b'\x11+\xa2', + 0x2ba3: b'\x11+\xa3', + 0x2ba4: b'\x11+\xa4', + 0x2ba5: b'\x11+\xa5', + 0x2ba6: b'\x11+\xa6', + 0x2ba7: b'\x11+\xa7', + 0x2ba8: b'\x11+\xa8', + 0x2ba9: b'\x11+\xa9', + 0x2baa: b'\x11+\xaa', + 0x2bab: b'\x11+\xab', + 0x2bac: b'\x11+\xac', + 0x2bad: b'\x11+\xad', + 0x2bae: b'\x11+\xae', + 0x2baf: b'\x11+\xaf', + 0x2bb0: b'\x11+\xb0', + 0x2bb1: b'\x11+\xb1', + 0x2bb2: b'\x11+\xb2', + 0x2bb3: b'\x11+\xb3', + 0x2bb4: b'\x11+\xb4', + 0x2bb5: b'\x11+\xb5', + 0x2bb6: b'\x11+\xb6', + 0x2bb7: b'\x11+\xb7', + 0x2bb8: b'\x11+\xb8', + 0x2bb9: b'\x11+\xb9', + 0x2bba: b'\x11+\xba', + 0x2bbb: b'\x11+\xbb', + 0x2bbc: b'\x11+\xbc', + 0x2bbd: b'\x11+\xbd', + 0x2bbe: b'\x11+\xbe', + 0x2bbf: b'\x11+\xbf', + 0x2bc0: b'\x11+\xc0', + 0x2bc1: b'\x11+\xc1', + 0x2bc2: b'\x11+\xc2', + 0x2bc3: b'\x11+\xc3', + 0x2bc4: b'\x11+\xc4', + 0x2bc5: b'\x11+\xc5', + 0x2bc6: b'\x11+\xc6', + 0x2bc7: b'\x11+\xc7', + 0x2bc8: b'\x11+\xc8', + 0x2bc9: b'\x11+\xc9', + 0x2bca: b'\x11+\xca', + 0x2bcb: b'\x11+\xcb', + 0x2bcc: b'\x11+\xcc', + 0x2bcd: b'\x11+\xcd', + 0x2bce: b'\x11+\xce', + 0x2bcf: b'\x11+\xcf', + 0x2bd0: b'\x11+\xd0', + 0x2bd1: b'\x11+\xd1', + 0x2bd2: b'\x11+\xd2', + 0x2bd3: b'\x11+\xd3', + 0x2bd4: b'\x11+\xd4', + 0x2bd5: b'\x11+\xd5', + 0x2bd6: b'\x11+\xd6', + 0x2bd7: b'\x11+\xd7', + 0x2bd8: b'\x11+\xd8', + 0x2bd9: b'\x11+\xd9', + 0x2bda: b'\x11+\xda', + 0x2bdb: b'\x11+\xdb', + 0x2bdc: b'\x11+\xdc', + 0x2bdd: b'\x11+\xdd', + 0x2bde: b'\x11+\xde', + 0x2bdf: b'\x11+\xdf', + 0x2be0: b'\x11+\xe0', + 0x2be1: b'\x11+\xe1', + 0x2be2: b'\x11+\xe2', + 0x2be3: b'\x11+\xe3', + 0x2be4: b'\x11+\xe4', + 0x2be5: b'\x11+\xe5', + 0x2be6: b'\x11+\xe6', + 0x2be7: b'\x11+\xe7', + 0x2be8: b'\x11+\xe8', + 0x2be9: b'\x11+\xe9', + 0x2bea: b'\x11+\xea', + 0x2beb: b'\x11+\xeb', + 0x2bec: b'\x11+\xec', + 0x2bed: b'\x11+\xed', + 0x2bee: b'\x11+\xee', + 0x2bef: b'\x11+\xef', + 0x2bf0: b'\x11+\xf0', + 0x2bf1: b'\x11+\xf1', + 0x2bf2: b'\x11+\xf2', + 0x2bf3: b'\x11+\xf3', + 0x2bf4: b'\x11+\xf4', + 0x2bf5: b'\x11+\xf5', + 0x2bf6: b'\x11+\xf6', + 0x2bf7: b'\x11+\xf7', + 0x2bf8: b'\x11+\xf8', + 0x2bf9: b'\x11+\xf9', + 0x2bfa: b'\x11+\xfa', + 0x2bfb: b'\x11+\xfb', + 0x2bfc: b'\x11+\xfc', + 0x2bfd: b'\x11+\xfd', + 0x2bfe: b'\x11+\xfe', + 0x2bff: b'\x11+\xff', + 0x2c00: b'\x11,\x00', + 0x2c01: b'\x11,\x01', + 0x2c02: b'\x11,\x02', + 0x2c03: b'\x11,\x03', + 0x2c04: b'\x11,\x04', + 0x2c05: b'\x11,\x05', + 0x2c06: b'\x11,\x06', + 0x2c07: b'\x11,\x07', + 0x2c08: b'\x11,\x08', + 0x2c09: b'\x11,\t', + 0x2c0a: b'\x11,\n', + 0x2c0b: b'\x11,\x0b', + 0x2c0c: b'\x11,\x0c', + 0x2c0d: b'\x11,\r', + 0x2c0e: b'\x11,\x0e', + 0x2c0f: b'\x11,\x0f', + 0x2c10: b'\x11,\x10', + 0x2c11: b'\x11,\x11', + 0x2c12: b'\x11,\x12', + 0x2c13: b'\x11,\x13', + 0x2c14: b'\x11,\x14', + 0x2c15: b'\x11,\x15', + 0x2c16: b'\x11,\x16', + 0x2c17: b'\x11,\x17', + 0x2c18: b'\x11,\x18', + 0x2c19: b'\x11,\x19', + 0x2c1a: b'\x11,\x1a', + 0x2c1b: b'\x11,\x1b', + 0x2c1c: b'\x11,\x1c', + 0x2c1d: b'\x11,\x1d', + 0x2c1e: b'\x11,\x1e', + 0x2c1f: b'\x11,\x1f', + 0x2c20: b'\x11, ', + 0x2c21: b'\x11,!', + 0x2c22: b'\x11,"', + 0x2c23: b'\x11,#', + 0x2c24: b'\x11,$', + 0x2c25: b'\x11,%', + 0x2c26: b'\x11,&', + 0x2c27: b"\x11,'", + 0x2c28: b'\x11,(', + 0x2c29: b'\x11,)', + 0x2c2a: b'\x11,*', + 0x2c2b: b'\x11,+', + 0x2c2c: b'\x11,,', + 0x2c2d: b'\x11,-', + 0x2c2e: b'\x11,.', + 0x2c2f: b'\x11,/', + 0x2c30: b'\x11,0', + 0x2c31: b'\x11,1', + 0x2c32: b'\x11,2', + 0x2c33: b'\x11,3', + 0x2c34: b'\x11,4', + 0x2c35: b'\x11,5', + 0x2c36: b'\x11,6', + 0x2c37: b'\x11,7', + 0x2c38: b'\x11,8', + 0x2c39: b'\x11,9', + 0x2c3a: b'\x11,:', + 0x2c3b: b'\x11,;', + 0x2c3c: b'\x11,<', + 0x2c3d: b'\x11,=', + 0x2c3e: b'\x11,>', + 0x2c3f: b'\x11,?', + 0x2c40: b'\x11,@', + 0x2c41: b'\x11,A', + 0x2c42: b'\x11,B', + 0x2c43: b'\x11,C', + 0x2c44: b'\x11,D', + 0x2c45: b'\x11,E', + 0x2c46: b'\x11,F', + 0x2c47: b'\x11,G', + 0x2c48: b'\x11,H', + 0x2c49: b'\x11,I', + 0x2c4a: b'\x11,J', + 0x2c4b: b'\x11,K', + 0x2c4c: b'\x11,L', + 0x2c4d: b'\x11,M', + 0x2c4e: b'\x11,N', + 0x2c4f: b'\x11,O', + 0x2c50: b'\x11,P', + 0x2c51: b'\x11,Q', + 0x2c52: b'\x11,R', + 0x2c53: b'\x11,S', + 0x2c54: b'\x11,T', + 0x2c55: b'\x11,U', + 0x2c56: b'\x11,V', + 0x2c57: b'\x11,W', + 0x2c58: b'\x11,X', + 0x2c59: b'\x11,Y', + 0x2c5a: b'\x11,Z', + 0x2c5b: b'\x11,[', + 0x2c5c: b'\x11,\\', + 0x2c5d: b'\x11,]', + 0x2c5e: b'\x11,^', + 0x2c5f: b'\x11,_', + 0x2c60: b'\x11,`', + 0x2c61: b'\x11,a', + 0x2c62: b'\x11,b', + 0x2c63: b'\x11,c', + 0x2c64: b'\x11,d', + 0x2c65: b'\x11,e', + 0x2c66: b'\x11,f', + 0x2c67: b'\x11,g', + 0x2c68: b'\x11,h', + 0x2c69: b'\x11,i', + 0x2c6a: b'\x11,j', + 0x2c6b: b'\x11,k', + 0x2c6c: b'\x11,l', + 0x2c6d: b'\x11,m', + 0x2c6e: b'\x11,n', + 0x2c6f: b'\x11,o', + 0x2c70: b'\x11,p', + 0x2c71: b'\x11,q', + 0x2c72: b'\x11,r', + 0x2c73: b'\x11,s', + 0x2c74: b'\x11,t', + 0x2c75: b'\x11,u', + 0x2c76: b'\x11,v', + 0x2c77: b'\x11,w', + 0x2c78: b'\x11,x', + 0x2c79: b'\x11,y', + 0x2c7a: b'\x11,z', + 0x2c7b: b'\x11,{', + 0x2c7c: b'\x11,|', + 0x2c7d: b'\x11,}', + 0x2c7e: b'\x11,~', + 0x2c7f: b'\x11,\x7f', + 0x2c80: b'\x11,\x80', + 0x2c81: b'\x11,\x81', + 0x2c82: b'\x11,\x82', + 0x2c83: b'\x11,\x83', + 0x2c84: b'\x11,\x84', + 0x2c85: b'\x11,\x85', + 0x2c86: b'\x11,\x86', + 0x2c87: b'\x11,\x87', + 0x2c88: b'\x11,\x88', + 0x2c89: b'\x11,\x89', + 0x2c8a: b'\x11,\x8a', + 0x2c8b: b'\x11,\x8b', + 0x2c8c: b'\x11,\x8c', + 0x2c8d: b'\x11,\x8d', + 0x2c8e: b'\x11,\x8e', + 0x2c8f: b'\x11,\x8f', + 0x2c90: b'\x11,\x90', + 0x2c91: b'\x11,\x91', + 0x2c92: b'\x11,\x92', + 0x2c93: b'\x11,\x93', + 0x2c94: b'\x11,\x94', + 0x2c95: b'\x11,\x95', + 0x2c96: b'\x11,\x96', + 0x2c97: b'\x11,\x97', + 0x2c98: b'\x11,\x98', + 0x2c99: b'\x11,\x99', + 0x2c9a: b'\x11,\x9a', + 0x2c9b: b'\x11,\x9b', + 0x2c9c: b'\x11,\x9c', + 0x2c9d: b'\x11,\x9d', + 0x2c9e: b'\x11,\x9e', + 0x2c9f: b'\x11,\x9f', + 0x2ca0: b'\x11,\xa0', + 0x2ca1: b'\x11,\xa1', + 0x2ca2: b'\x11,\xa2', + 0x2ca3: b'\x11,\xa3', + 0x2ca4: b'\x11,\xa4', + 0x2ca5: b'\x11,\xa5', + 0x2ca6: b'\x11,\xa6', + 0x2ca7: b'\x11,\xa7', + 0x2ca8: b'\x11,\xa8', + 0x2ca9: b'\x11,\xa9', + 0x2caa: b'\x11,\xaa', + 0x2cab: b'\x11,\xab', + 0x2cac: b'\x11,\xac', + 0x2cad: b'\x11,\xad', + 0x2cae: b'\x11,\xae', + 0x2caf: b'\x11,\xaf', + 0x2cb0: b'\x11,\xb0', + 0x2cb1: b'\x11,\xb1', + 0x2cb2: b'\x11,\xb2', + 0x2cb3: b'\x11,\xb3', + 0x2cb4: b'\x11,\xb4', + 0x2cb5: b'\x11,\xb5', + 0x2cb6: b'\x11,\xb6', + 0x2cb7: b'\x11,\xb7', + 0x2cb8: b'\x11,\xb8', + 0x2cb9: b'\x11,\xb9', + 0x2cba: b'\x11,\xba', + 0x2cbb: b'\x11,\xbb', + 0x2cbc: b'\x11,\xbc', + 0x2cbd: b'\x11,\xbd', + 0x2cbe: b'\x11,\xbe', + 0x2cbf: b'\x11,\xbf', + 0x2cc0: b'\x11,\xc0', + 0x2cc1: b'\x11,\xc1', + 0x2cc2: b'\x11,\xc2', + 0x2cc3: b'\x11,\xc3', + 0x2cc4: b'\x11,\xc4', + 0x2cc5: b'\x11,\xc5', + 0x2cc6: b'\x11,\xc6', + 0x2cc7: b'\x11,\xc7', + 0x2cc8: b'\x11,\xc8', + 0x2cc9: b'\x11,\xc9', + 0x2cca: b'\x11,\xca', + 0x2ccb: b'\x11,\xcb', + 0x2ccc: b'\x11,\xcc', + 0x2ccd: b'\x11,\xcd', + 0x2cce: b'\x11,\xce', + 0x2ccf: b'\x11,\xcf', + 0x2cd0: b'\x11,\xd0', + 0x2cd1: b'\x11,\xd1', + 0x2cd2: b'\x11,\xd2', + 0x2cd3: b'\x11,\xd3', + 0x2cd4: b'\x11,\xd4', + 0x2cd5: b'\x11,\xd5', + 0x2cd6: b'\x11,\xd6', + 0x2cd7: b'\x11,\xd7', + 0x2cd8: b'\x11,\xd8', + 0x2cd9: b'\x11,\xd9', + 0x2cda: b'\x11,\xda', + 0x2cdb: b'\x11,\xdb', + 0x2cdc: b'\x11,\xdc', + 0x2cdd: b'\x11,\xdd', + 0x2cde: b'\x11,\xde', + 0x2cdf: b'\x11,\xdf', + 0x2ce0: b'\x11,\xe0', + 0x2ce1: b'\x11,\xe1', + 0x2ce2: b'\x11,\xe2', + 0x2ce3: b'\x11,\xe3', + 0x2ce4: b'\x11,\xe4', + 0x2ce5: b'\x11,\xe5', + 0x2ce6: b'\x11,\xe6', + 0x2ce7: b'\x11,\xe7', + 0x2ce8: b'\x11,\xe8', + 0x2ce9: b'\x11,\xe9', + 0x2cea: b'\x11,\xea', + 0x2ceb: b'\x11,\xeb', + 0x2cec: b'\x11,\xec', + 0x2ced: b'\x11,\xed', + 0x2cee: b'\x11,\xee', + 0x2cef: b'\x11,\xef', + 0x2cf0: b'\x11,\xf0', + 0x2cf1: b'\x11,\xf1', + 0x2cf2: b'\x11,\xf2', + 0x2cf3: b'\x11,\xf3', + 0x2cf4: b'\x11,\xf4', + 0x2cf5: b'\x11,\xf5', + 0x2cf6: b'\x11,\xf6', + 0x2cf7: b'\x11,\xf7', + 0x2cf8: b'\x11,\xf8', + 0x2cf9: b'\x11,\xf9', + 0x2cfa: b'\x11,\xfa', + 0x2cfb: b'\x11,\xfb', + 0x2cfc: b'\x11,\xfc', + 0x2cfd: b'\x11,\xfd', + 0x2cfe: b'\x11,\xfe', + 0x2cff: b'\x11,\xff', + 0x2d00: b'\x11-\x00', + 0x2d01: b'\x11-\x01', + 0x2d02: b'\x11-\x02', + 0x2d03: b'\x11-\x03', + 0x2d04: b'\x11-\x04', + 0x2d05: b'\x11-\x05', + 0x2d06: b'\x11-\x06', + 0x2d07: b'\x11-\x07', + 0x2d08: b'\x11-\x08', + 0x2d09: b'\x11-\t', + 0x2d0a: b'\x11-\n', + 0x2d0b: b'\x11-\x0b', + 0x2d0c: b'\x11-\x0c', + 0x2d0d: b'\x11-\r', + 0x2d0e: b'\x11-\x0e', + 0x2d0f: b'\x11-\x0f', + 0x2d10: b'\x11-\x10', + 0x2d11: b'\x11-\x11', + 0x2d12: b'\x11-\x12', + 0x2d13: b'\x11-\x13', + 0x2d14: b'\x11-\x14', + 0x2d15: b'\x11-\x15', + 0x2d16: b'\x11-\x16', + 0x2d17: b'\x11-\x17', + 0x2d18: b'\x11-\x18', + 0x2d19: b'\x11-\x19', + 0x2d1a: b'\x11-\x1a', + 0x2d1b: b'\x11-\x1b', + 0x2d1c: b'\x11-\x1c', + 0x2d1d: b'\x11-\x1d', + 0x2d1e: b'\x11-\x1e', + 0x2d1f: b'\x11-\x1f', + 0x2d20: b'\x11- ', + 0x2d21: b'\x11-!', + 0x2d22: b'\x11-"', + 0x2d23: b'\x11-#', + 0x2d24: b'\x11-$', + 0x2d25: b'\x11-%', + 0x2d26: b'\x11-&', + 0x2d27: b"\x11-'", + 0x2d28: b'\x11-(', + 0x2d29: b'\x11-)', + 0x2d2a: b'\x11-*', + 0x2d2b: b'\x11-+', + 0x2d2c: b'\x11-,', + 0x2d2d: b'\x11--', + 0x2d2e: b'\x11-.', + 0x2d2f: b'\x11-/', + 0x2d30: b'\x11-0', + 0x2d31: b'\x11-1', + 0x2d32: b'\x11-2', + 0x2d33: b'\x11-3', + 0x2d34: b'\x11-4', + 0x2d35: b'\x11-5', + 0x2d36: b'\x11-6', + 0x2d37: b'\x11-7', + 0x2d38: b'\x11-8', + 0x2d39: b'\x11-9', + 0x2d3a: b'\x11-:', + 0x2d3b: b'\x11-;', + 0x2d3c: b'\x11-<', + 0x2d3d: b'\x11-=', + 0x2d3e: b'\x11->', + 0x2d3f: b'\x11-?', + 0x2d40: b'\x11-@', + 0x2d41: b'\x11-A', + 0x2d42: b'\x11-B', + 0x2d43: b'\x11-C', + 0x2d44: b'\x11-D', + 0x2d45: b'\x11-E', + 0x2d46: b'\x11-F', + 0x2d47: b'\x11-G', + 0x2d48: b'\x11-H', + 0x2d49: b'\x11-I', + 0x2d4a: b'\x11-J', + 0x2d4b: b'\x11-K', + 0x2d4c: b'\x11-L', + 0x2d4d: b'\x11-M', + 0x2d4e: b'\x11-N', + 0x2d4f: b'\x11-O', + 0x2d50: b'\x11-P', + 0x2d51: b'\x11-Q', + 0x2d52: b'\x11-R', + 0x2d53: b'\x11-S', + 0x2d54: b'\x11-T', + 0x2d55: b'\x11-U', + 0x2d56: b'\x11-V', + 0x2d57: b'\x11-W', + 0x2d58: b'\x11-X', + 0x2d59: b'\x11-Y', + 0x2d5a: b'\x11-Z', + 0x2d5b: b'\x11-[', + 0x2d5c: b'\x11-\\', + 0x2d5d: b'\x11-]', + 0x2d5e: b'\x11-^', + 0x2d5f: b'\x11-_', + 0x2d60: b'\x11-`', + 0x2d61: b'\x11-a', + 0x2d62: b'\x11-b', + 0x2d63: b'\x11-c', + 0x2d64: b'\x11-d', + 0x2d65: b'\x11-e', + 0x2d66: b'\x11-f', + 0x2d67: b'\x11-g', + 0x2d68: b'\x11-h', + 0x2d69: b'\x11-i', + 0x2d6a: b'\x11-j', + 0x2d6b: b'\x11-k', + 0x2d6c: b'\x11-l', + 0x2d6d: b'\x11-m', + 0x2d6e: b'\x11-n', + 0x2d6f: b'\x11-o', + 0x2d70: b'\x11-p', + 0x2d71: b'\x11-q', + 0x2d72: b'\x11-r', + 0x2d73: b'\x11-s', + 0x2d74: b'\x11-t', + 0x2d75: b'\x11-u', + 0x2d76: b'\x11-v', + 0x2d77: b'\x11-w', + 0x2d78: b'\x11-x', + 0x2d79: b'\x11-y', + 0x2d7a: b'\x11-z', + 0x2d7b: b'\x11-{', + 0x2d7c: b'\x11-|', + 0x2d7d: b'\x11-}', + 0x2d7e: b'\x11-~', + 0x2d7f: b'\x11-\x7f', + 0x2d80: b'\x11-\x80', + 0x2d81: b'\x11-\x81', + 0x2d82: b'\x11-\x82', + 0x2d83: b'\x11-\x83', + 0x2d84: b'\x11-\x84', + 0x2d85: b'\x11-\x85', + 0x2d86: b'\x11-\x86', + 0x2d87: b'\x11-\x87', + 0x2d88: b'\x11-\x88', + 0x2d89: b'\x11-\x89', + 0x2d8a: b'\x11-\x8a', + 0x2d8b: b'\x11-\x8b', + 0x2d8c: b'\x11-\x8c', + 0x2d8d: b'\x11-\x8d', + 0x2d8e: b'\x11-\x8e', + 0x2d8f: b'\x11-\x8f', + 0x2d90: b'\x11-\x90', + 0x2d91: b'\x11-\x91', + 0x2d92: b'\x11-\x92', + 0x2d93: b'\x11-\x93', + 0x2d94: b'\x11-\x94', + 0x2d95: b'\x11-\x95', + 0x2d96: b'\x11-\x96', + 0x2d97: b'\x11-\x97', + 0x2d98: b'\x11-\x98', + 0x2d99: b'\x11-\x99', + 0x2d9a: b'\x11-\x9a', + 0x2d9b: b'\x11-\x9b', + 0x2d9c: b'\x11-\x9c', + 0x2d9d: b'\x11-\x9d', + 0x2d9e: b'\x11-\x9e', + 0x2d9f: b'\x11-\x9f', + 0x2da0: b'\x11-\xa0', + 0x2da1: b'\x11-\xa1', + 0x2da2: b'\x11-\xa2', + 0x2da3: b'\x11-\xa3', + 0x2da4: b'\x11-\xa4', + 0x2da5: b'\x11-\xa5', + 0x2da6: b'\x11-\xa6', + 0x2da7: b'\x11-\xa7', + 0x2da8: b'\x11-\xa8', + 0x2da9: b'\x11-\xa9', + 0x2daa: b'\x11-\xaa', + 0x2dab: b'\x11-\xab', + 0x2dac: b'\x11-\xac', + 0x2dad: b'\x11-\xad', + 0x2dae: b'\x11-\xae', + 0x2daf: b'\x11-\xaf', + 0x2db0: b'\x11-\xb0', + 0x2db1: b'\x11-\xb1', + 0x2db2: b'\x11-\xb2', + 0x2db3: b'\x11-\xb3', + 0x2db4: b'\x11-\xb4', + 0x2db5: b'\x11-\xb5', + 0x2db6: b'\x11-\xb6', + 0x2db7: b'\x11-\xb7', + 0x2db8: b'\x11-\xb8', + 0x2db9: b'\x11-\xb9', + 0x2dba: b'\x11-\xba', + 0x2dbb: b'\x11-\xbb', + 0x2dbc: b'\x11-\xbc', + 0x2dbd: b'\x11-\xbd', + 0x2dbe: b'\x11-\xbe', + 0x2dbf: b'\x11-\xbf', + 0x2dc0: b'\x11-\xc0', + 0x2dc1: b'\x11-\xc1', + 0x2dc2: b'\x11-\xc2', + 0x2dc3: b'\x11-\xc3', + 0x2dc4: b'\x11-\xc4', + 0x2dc5: b'\x11-\xc5', + 0x2dc6: b'\x11-\xc6', + 0x2dc7: b'\x11-\xc7', + 0x2dc8: b'\x11-\xc8', + 0x2dc9: b'\x11-\xc9', + 0x2dca: b'\x11-\xca', + 0x2dcb: b'\x11-\xcb', + 0x2dcc: b'\x11-\xcc', + 0x2dcd: b'\x11-\xcd', + 0x2dce: b'\x11-\xce', + 0x2dcf: b'\x11-\xcf', + 0x2dd0: b'\x11-\xd0', + 0x2dd1: b'\x11-\xd1', + 0x2dd2: b'\x11-\xd2', + 0x2dd3: b'\x11-\xd3', + 0x2dd4: b'\x11-\xd4', + 0x2dd5: b'\x11-\xd5', + 0x2dd6: b'\x11-\xd6', + 0x2dd7: b'\x11-\xd7', + 0x2dd8: b'\x11-\xd8', + 0x2dd9: b'\x11-\xd9', + 0x2dda: b'\x11-\xda', + 0x2ddb: b'\x11-\xdb', + 0x2ddc: b'\x11-\xdc', + 0x2ddd: b'\x11-\xdd', + 0x2dde: b'\x11-\xde', + 0x2ddf: b'\x11-\xdf', + 0x2de0: b'\x11-\xe0', + 0x2de1: b'\x11-\xe1', + 0x2de2: b'\x11-\xe2', + 0x2de3: b'\x11-\xe3', + 0x2de4: b'\x11-\xe4', + 0x2de5: b'\x11-\xe5', + 0x2de6: b'\x11-\xe6', + 0x2de7: b'\x11-\xe7', + 0x2de8: b'\x11-\xe8', + 0x2de9: b'\x11-\xe9', + 0x2dea: b'\x11-\xea', + 0x2deb: b'\x11-\xeb', + 0x2dec: b'\x11-\xec', + 0x2ded: b'\x11-\xed', + 0x2dee: b'\x11-\xee', + 0x2def: b'\x11-\xef', + 0x2df0: b'\x11-\xf0', + 0x2df1: b'\x11-\xf1', + 0x2df2: b'\x11-\xf2', + 0x2df3: b'\x11-\xf3', + 0x2df4: b'\x11-\xf4', + 0x2df5: b'\x11-\xf5', + 0x2df6: b'\x11-\xf6', + 0x2df7: b'\x11-\xf7', + 0x2df8: b'\x11-\xf8', + 0x2df9: b'\x11-\xf9', + 0x2dfa: b'\x11-\xfa', + 0x2dfb: b'\x11-\xfb', + 0x2dfc: b'\x11-\xfc', + 0x2dfd: b'\x11-\xfd', + 0x2dfe: b'\x11-\xfe', + 0x2dff: b'\x11-\xff', + 0x2e00: b'\x11.\x00', + 0x2e01: b'\x11.\x01', + 0x2e02: b'\x11.\x02', + 0x2e03: b'\x11.\x03', + 0x2e04: b'\x11.\x04', + 0x2e05: b'\x11.\x05', + 0x2e06: b'\x11.\x06', + 0x2e07: b'\x11.\x07', + 0x2e08: b'\x11.\x08', + 0x2e09: b'\x11.\t', + 0x2e0a: b'\x11.\n', + 0x2e0b: b'\x11.\x0b', + 0x2e0c: b'\x11.\x0c', + 0x2e0d: b'\x11.\r', + 0x2e0e: b'\x11.\x0e', + 0x2e0f: b'\x11.\x0f', + 0x2e10: b'\x11.\x10', + 0x2e11: b'\x11.\x11', + 0x2e12: b'\x11.\x12', + 0x2e13: b'\x11.\x13', + 0x2e14: b'\x11.\x14', + 0x2e15: b'\x11.\x15', + 0x2e16: b'\x11.\x16', + 0x2e17: b'\x11.\x17', + 0x2e18: b'\x11.\x18', + 0x2e19: b'\x11.\x19', + 0x2e1a: b'\x11.\x1a', + 0x2e1b: b'\x11.\x1b', + 0x2e1c: b'\x11.\x1c', + 0x2e1d: b'\x11.\x1d', + 0x2e1e: b'\x11.\x1e', + 0x2e1f: b'\x11.\x1f', + 0x2e20: b'\x11. ', + 0x2e21: b'\x11.!', + 0x2e22: b'\x11."', + 0x2e23: b'\x11.#', + 0x2e24: b'\x11.$', + 0x2e25: b'\x11.%', + 0x2e26: b'\x11.&', + 0x2e27: b"\x11.'", + 0x2e28: b'\x11.(', + 0x2e29: b'\x11.)', + 0x2e2a: b'\x11.*', + 0x2e2b: b'\x11.+', + 0x2e2c: b'\x11.,', + 0x2e2d: b'\x11.-', + 0x2e2e: b'\x11..', + 0x2e2f: b'\x11./', + 0x2e30: b'\x11.0', + 0x2e31: b'\x11.1', + 0x2e32: b'\x11.2', + 0x2e33: b'\x11.3', + 0x2e34: b'\x11.4', + 0x2e35: b'\x11.5', + 0x2e36: b'\x11.6', + 0x2e37: b'\x11.7', + 0x2e38: b'\x11.8', + 0x2e39: b'\x11.9', + 0x2e3a: b'\x11.:', + 0x2e3b: b'\x11.;', + 0x2e3c: b'\x11.<', + 0x2e3d: b'\x11.=', + 0x2e3e: b'\x11.>', + 0x2e3f: b'\x11.?', + 0x2e40: b'\x11.@', + 0x2e41: b'\x11.A', + 0x2e42: b'\x11.B', + 0x2e43: b'\x11.C', + 0x2e44: b'\x11.D', + 0x2e45: b'\x11.E', + 0x2e46: b'\x11.F', + 0x2e47: b'\x11.G', + 0x2e48: b'\x11.H', + 0x2e49: b'\x11.I', + 0x2e4a: b'\x11.J', + 0x2e4b: b'\x11.K', + 0x2e4c: b'\x11.L', + 0x2e4d: b'\x11.M', + 0x2e4e: b'\x11.N', + 0x2e4f: b'\x11.O', + 0x2e50: b'\x11.P', + 0x2e51: b'\x11.Q', + 0x2e52: b'\x11.R', + 0x2e53: b'\x11.S', + 0x2e54: b'\x11.T', + 0x2e55: b'\x11.U', + 0x2e56: b'\x11.V', + 0x2e57: b'\x11.W', + 0x2e58: b'\x11.X', + 0x2e59: b'\x11.Y', + 0x2e5a: b'\x11.Z', + 0x2e5b: b'\x11.[', + 0x2e5c: b'\x11.\\', + 0x2e5d: b'\x11.]', + 0x2e5e: b'\x11.^', + 0x2e5f: b'\x11._', + 0x2e60: b'\x11.`', + 0x2e61: b'\x11.a', + 0x2e62: b'\x11.b', + 0x2e63: b'\x11.c', + 0x2e64: b'\x11.d', + 0x2e65: b'\x11.e', + 0x2e66: b'\x11.f', + 0x2e67: b'\x11.g', + 0x2e68: b'\x11.h', + 0x2e69: b'\x11.i', + 0x2e6a: b'\x11.j', + 0x2e6b: b'\x11.k', + 0x2e6c: b'\x11.l', + 0x2e6d: b'\x11.m', + 0x2e6e: b'\x11.n', + 0x2e6f: b'\x11.o', + 0x2e70: b'\x11.p', + 0x2e71: b'\x11.q', + 0x2e72: b'\x11.r', + 0x2e73: b'\x11.s', + 0x2e74: b'\x11.t', + 0x2e75: b'\x11.u', + 0x2e76: b'\x11.v', + 0x2e77: b'\x11.w', + 0x2e78: b'\x11.x', + 0x2e79: b'\x11.y', + 0x2e7a: b'\x11.z', + 0x2e7b: b'\x11.{', + 0x2e7c: b'\x11.|', + 0x2e7d: b'\x11.}', + 0x2e7e: b'\x11.~', + 0x2e7f: b'\x11.\x7f', + 0x2e80: b'\x11.\x80', + 0x2e81: b'\x11.\x81', + 0x2e82: b'\x11.\x82', + 0x2e83: b'\x11.\x83', + 0x2e84: b'\x11.\x84', + 0x2e85: b'\x11.\x85', + 0x2e86: b'\x11.\x86', + 0x2e87: b'\x11.\x87', + 0x2e88: b'\x11.\x88', + 0x2e89: b'\x11.\x89', + 0x2e8a: b'\x11.\x8a', + 0x2e8b: b'\x11.\x8b', + 0x2e8c: b'\x11.\x8c', + 0x2e8d: b'\x11.\x8d', + 0x2e8e: b'\x11.\x8e', + 0x2e8f: b'\x11.\x8f', + 0x2e90: b'\x11.\x90', + 0x2e91: b'\x11.\x91', + 0x2e92: b'\x11.\x92', + 0x2e93: b'\x11.\x93', + 0x2e94: b'\x11.\x94', + 0x2e95: b'\x11.\x95', + 0x2e96: b'\x11.\x96', + 0x2e97: b'\x11.\x97', + 0x2e98: b'\x11.\x98', + 0x2e99: b'\x11.\x99', + 0x2e9a: b'\x11.\x9a', + 0x2e9b: b'\x11.\x9b', + 0x2e9c: b'\x11.\x9c', + 0x2e9d: b'\x11.\x9d', + 0x2e9e: b'\x11.\x9e', + 0x2e9f: b'\x11.\x9f', + 0x2ea0: b'\x11.\xa0', + 0x2ea1: b'\x11.\xa1', + 0x2ea2: b'\x11.\xa2', + 0x2ea3: b'\x11.\xa3', + 0x2ea4: b'\x11.\xa4', + 0x2ea5: b'\x11.\xa5', + 0x2ea6: b'\x11.\xa6', + 0x2ea7: b'\x11.\xa7', + 0x2ea8: b'\x11.\xa8', + 0x2ea9: b'\x11.\xa9', + 0x2eaa: b'\x11.\xaa', + 0x2eab: b'\x11.\xab', + 0x2eac: b'\x11.\xac', + 0x2ead: b'\x11.\xad', + 0x2eae: b'\x11.\xae', + 0x2eaf: b'\x11.\xaf', + 0x2eb0: b'\x11.\xb0', + 0x2eb1: b'\x11.\xb1', + 0x2eb2: b'\x11.\xb2', + 0x2eb3: b'\x11.\xb3', + 0x2eb4: b'\x11.\xb4', + 0x2eb5: b'\x11.\xb5', + 0x2eb6: b'\x11.\xb6', + 0x2eb7: b'\x11.\xb7', + 0x2eb8: b'\x11.\xb8', + 0x2eb9: b'\x11.\xb9', + 0x2eba: b'\x11.\xba', + 0x2ebb: b'\x11.\xbb', + 0x2ebc: b'\x11.\xbc', + 0x2ebd: b'\x11.\xbd', + 0x2ebe: b'\x11.\xbe', + 0x2ebf: b'\x11.\xbf', + 0x2ec0: b'\x11.\xc0', + 0x2ec1: b'\x11.\xc1', + 0x2ec2: b'\x11.\xc2', + 0x2ec3: b'\x11.\xc3', + 0x2ec4: b'\x11.\xc4', + 0x2ec5: b'\x11.\xc5', + 0x2ec6: b'\x11.\xc6', + 0x2ec7: b'\x11.\xc7', + 0x2ec8: b'\x11.\xc8', + 0x2ec9: b'\x11.\xc9', + 0x2eca: b'\x11.\xca', + 0x2ecb: b'\x11.\xcb', + 0x2ecc: b'\x11.\xcc', + 0x2ecd: b'\x11.\xcd', + 0x2ece: b'\x11.\xce', + 0x2ecf: b'\x11.\xcf', + 0x2ed0: b'\x11.\xd0', + 0x2ed1: b'\x11.\xd1', + 0x2ed2: b'\x11.\xd2', + 0x2ed3: b'\x11.\xd3', + 0x2ed4: b'\x11.\xd4', + 0x2ed5: b'\x11.\xd5', + 0x2ed6: b'\x11.\xd6', + 0x2ed7: b'\x11.\xd7', + 0x2ed8: b'\x11.\xd8', + 0x2ed9: b'\x11.\xd9', + 0x2eda: b'\x11.\xda', + 0x2edb: b'\x11.\xdb', + 0x2edc: b'\x11.\xdc', + 0x2edd: b'\x11.\xdd', + 0x2ede: b'\x11.\xde', + 0x2edf: b'\x11.\xdf', + 0x2ee0: b'\x11.\xe0', + 0x2ee1: b'\x11.\xe1', + 0x2ee2: b'\x11.\xe2', + 0x2ee3: b'\x11.\xe3', + 0x2ee4: b'\x11.\xe4', + 0x2ee5: b'\x11.\xe5', + 0x2ee6: b'\x11.\xe6', + 0x2ee7: b'\x11.\xe7', + 0x2ee8: b'\x11.\xe8', + 0x2ee9: b'\x11.\xe9', + 0x2eea: b'\x11.\xea', + 0x2eeb: b'\x11.\xeb', + 0x2eec: b'\x11.\xec', + 0x2eed: b'\x11.\xed', + 0x2eee: b'\x11.\xee', + 0x2eef: b'\x11.\xef', + 0x2ef0: b'\x11.\xf0', + 0x2ef1: b'\x11.\xf1', + 0x2ef2: b'\x11.\xf2', + 0x2ef3: b'\x11.\xf3', + 0x2ef4: b'\x11.\xf4', + 0x2ef5: b'\x11.\xf5', + 0x2ef6: b'\x11.\xf6', + 0x2ef7: b'\x11.\xf7', + 0x2ef8: b'\x11.\xf8', + 0x2ef9: b'\x11.\xf9', + 0x2efa: b'\x11.\xfa', + 0x2efb: b'\x11.\xfb', + 0x2efc: b'\x11.\xfc', + 0x2efd: b'\x11.\xfd', + 0x2efe: b'\x11.\xfe', + 0x2eff: b'\x11.\xff', + 0x2f00: b'\x11/\x00', + 0x2f01: b'\x11/\x01', + 0x2f02: b'\x11/\x02', + 0x2f03: b'\x11/\x03', + 0x2f04: b'\x11/\x04', + 0x2f05: b'\x11/\x05', + 0x2f06: b'\x11/\x06', + 0x2f07: b'\x11/\x07', + 0x2f08: b'\x11/\x08', + 0x2f09: b'\x11/\t', + 0x2f0a: b'\x11/\n', + 0x2f0b: b'\x11/\x0b', + 0x2f0c: b'\x11/\x0c', + 0x2f0d: b'\x11/\r', + 0x2f0e: b'\x11/\x0e', + 0x2f0f: b'\x11/\x0f', + 0x2f10: b'\x11/\x10', + 0x2f11: b'\x11/\x11', + 0x2f12: b'\x11/\x12', + 0x2f13: b'\x11/\x13', + 0x2f14: b'\x11/\x14', + 0x2f15: b'\x11/\x15', + 0x2f16: b'\x11/\x16', + 0x2f17: b'\x11/\x17', + 0x2f18: b'\x11/\x18', + 0x2f19: b'\x11/\x19', + 0x2f1a: b'\x11/\x1a', + 0x2f1b: b'\x11/\x1b', + 0x2f1c: b'\x11/\x1c', + 0x2f1d: b'\x11/\x1d', + 0x2f1e: b'\x11/\x1e', + 0x2f1f: b'\x11/\x1f', + 0x2f20: b'\x11/ ', + 0x2f21: b'\x11/!', + 0x2f22: b'\x11/"', + 0x2f23: b'\x11/#', + 0x2f24: b'\x11/$', + 0x2f25: b'\x11/%', + 0x2f26: b'\x11/&', + 0x2f27: b"\x11/'", + 0x2f28: b'\x11/(', + 0x2f29: b'\x11/)', + 0x2f2a: b'\x11/*', + 0x2f2b: b'\x11/+', + 0x2f2c: b'\x11/,', + 0x2f2d: b'\x11/-', + 0x2f2e: b'\x11/.', + 0x2f2f: b'\x11//', + 0x2f30: b'\x11/0', + 0x2f31: b'\x11/1', + 0x2f32: b'\x11/2', + 0x2f33: b'\x11/3', + 0x2f34: b'\x11/4', + 0x2f35: b'\x11/5', + 0x2f36: b'\x11/6', + 0x2f37: b'\x11/7', + 0x2f38: b'\x11/8', + 0x2f39: b'\x11/9', + 0x2f3a: b'\x11/:', + 0x2f3b: b'\x11/;', + 0x2f3c: b'\x11/<', + 0x2f3d: b'\x11/=', + 0x2f3e: b'\x11/>', + 0x2f3f: b'\x11/?', + 0x2f40: b'\x11/@', + 0x2f41: b'\x11/A', + 0x2f42: b'\x11/B', + 0x2f43: b'\x11/C', + 0x2f44: b'\x11/D', + 0x2f45: b'\x11/E', + 0x2f46: b'\x11/F', + 0x2f47: b'\x11/G', + 0x2f48: b'\x11/H', + 0x2f49: b'\x11/I', + 0x2f4a: b'\x11/J', + 0x2f4b: b'\x11/K', + 0x2f4c: b'\x11/L', + 0x2f4d: b'\x11/M', + 0x2f4e: b'\x11/N', + 0x2f4f: b'\x11/O', + 0x2f50: b'\x11/P', + 0x2f51: b'\x11/Q', + 0x2f52: b'\x11/R', + 0x2f53: b'\x11/S', + 0x2f54: b'\x11/T', + 0x2f55: b'\x11/U', + 0x2f56: b'\x11/V', + 0x2f57: b'\x11/W', + 0x2f58: b'\x11/X', + 0x2f59: b'\x11/Y', + 0x2f5a: b'\x11/Z', + 0x2f5b: b'\x11/[', + 0x2f5c: b'\x11/\\', + 0x2f5d: b'\x11/]', + 0x2f5e: b'\x11/^', + 0x2f5f: b'\x11/_', + 0x2f60: b'\x11/`', + 0x2f61: b'\x11/a', + 0x2f62: b'\x11/b', + 0x2f63: b'\x11/c', + 0x2f64: b'\x11/d', + 0x2f65: b'\x11/e', + 0x2f66: b'\x11/f', + 0x2f67: b'\x11/g', + 0x2f68: b'\x11/h', + 0x2f69: b'\x11/i', + 0x2f6a: b'\x11/j', + 0x2f6b: b'\x11/k', + 0x2f6c: b'\x11/l', + 0x2f6d: b'\x11/m', + 0x2f6e: b'\x11/n', + 0x2f6f: b'\x11/o', + 0x2f70: b'\x11/p', + 0x2f71: b'\x11/q', + 0x2f72: b'\x11/r', + 0x2f73: b'\x11/s', + 0x2f74: b'\x11/t', + 0x2f75: b'\x11/u', + 0x2f76: b'\x11/v', + 0x2f77: b'\x11/w', + 0x2f78: b'\x11/x', + 0x2f79: b'\x11/y', + 0x2f7a: b'\x11/z', + 0x2f7b: b'\x11/{', + 0x2f7c: b'\x11/|', + 0x2f7d: b'\x11/}', + 0x2f7e: b'\x11/~', + 0x2f7f: b'\x11/\x7f', + 0x2f80: b'\x11/\x80', + 0x2f81: b'\x11/\x81', + 0x2f82: b'\x11/\x82', + 0x2f83: b'\x11/\x83', + 0x2f84: b'\x11/\x84', + 0x2f85: b'\x11/\x85', + 0x2f86: b'\x11/\x86', + 0x2f87: b'\x11/\x87', + 0x2f88: b'\x11/\x88', + 0x2f89: b'\x11/\x89', + 0x2f8a: b'\x11/\x8a', + 0x2f8b: b'\x11/\x8b', + 0x2f8c: b'\x11/\x8c', + 0x2f8d: b'\x11/\x8d', + 0x2f8e: b'\x11/\x8e', + 0x2f8f: b'\x11/\x8f', + 0x2f90: b'\x11/\x90', + 0x2f91: b'\x11/\x91', + 0x2f92: b'\x11/\x92', + 0x2f93: b'\x11/\x93', + 0x2f94: b'\x11/\x94', + 0x2f95: b'\x11/\x95', + 0x2f96: b'\x11/\x96', + 0x2f97: b'\x11/\x97', + 0x2f98: b'\x11/\x98', + 0x2f99: b'\x11/\x99', + 0x2f9a: b'\x11/\x9a', + 0x2f9b: b'\x11/\x9b', + 0x2f9c: b'\x11/\x9c', + 0x2f9d: b'\x11/\x9d', + 0x2f9e: b'\x11/\x9e', + 0x2f9f: b'\x11/\x9f', + 0x2fa0: b'\x11/\xa0', + 0x2fa1: b'\x11/\xa1', + 0x2fa2: b'\x11/\xa2', + 0x2fa3: b'\x11/\xa3', + 0x2fa4: b'\x11/\xa4', + 0x2fa5: b'\x11/\xa5', + 0x2fa6: b'\x11/\xa6', + 0x2fa7: b'\x11/\xa7', + 0x2fa8: b'\x11/\xa8', + 0x2fa9: b'\x11/\xa9', + 0x2faa: b'\x11/\xaa', + 0x2fab: b'\x11/\xab', + 0x2fac: b'\x11/\xac', + 0x2fad: b'\x11/\xad', + 0x2fae: b'\x11/\xae', + 0x2faf: b'\x11/\xaf', + 0x2fb0: b'\x11/\xb0', + 0x2fb1: b'\x11/\xb1', + 0x2fb2: b'\x11/\xb2', + 0x2fb3: b'\x11/\xb3', + 0x2fb4: b'\x11/\xb4', + 0x2fb5: b'\x11/\xb5', + 0x2fb6: b'\x11/\xb6', + 0x2fb7: b'\x11/\xb7', + 0x2fb8: b'\x11/\xb8', + 0x2fb9: b'\x11/\xb9', + 0x2fba: b'\x11/\xba', + 0x2fbb: b'\x11/\xbb', + 0x2fbc: b'\x11/\xbc', + 0x2fbd: b'\x11/\xbd', + 0x2fbe: b'\x11/\xbe', + 0x2fbf: b'\x11/\xbf', + 0x2fc0: b'\x11/\xc0', + 0x2fc1: b'\x11/\xc1', + 0x2fc2: b'\x11/\xc2', + 0x2fc3: b'\x11/\xc3', + 0x2fc4: b'\x11/\xc4', + 0x2fc5: b'\x11/\xc5', + 0x2fc6: b'\x11/\xc6', + 0x2fc7: b'\x11/\xc7', + 0x2fc8: b'\x11/\xc8', + 0x2fc9: b'\x11/\xc9', + 0x2fca: b'\x11/\xca', + 0x2fcb: b'\x11/\xcb', + 0x2fcc: b'\x11/\xcc', + 0x2fcd: b'\x11/\xcd', + 0x2fce: b'\x11/\xce', + 0x2fcf: b'\x11/\xcf', + 0x2fd0: b'\x11/\xd0', + 0x2fd1: b'\x11/\xd1', + 0x2fd2: b'\x11/\xd2', + 0x2fd3: b'\x11/\xd3', + 0x2fd4: b'\x11/\xd4', + 0x2fd5: b'\x11/\xd5', + 0x2fd6: b'\x11/\xd6', + 0x2fd7: b'\x11/\xd7', + 0x2fd8: b'\x11/\xd8', + 0x2fd9: b'\x11/\xd9', + 0x2fda: b'\x11/\xda', + 0x2fdb: b'\x11/\xdb', + 0x2fdc: b'\x11/\xdc', + 0x2fdd: b'\x11/\xdd', + 0x2fde: b'\x11/\xde', + 0x2fdf: b'\x11/\xdf', + 0x2fe0: b'\x11/\xe0', + 0x2fe1: b'\x11/\xe1', + 0x2fe2: b'\x11/\xe2', + 0x2fe3: b'\x11/\xe3', + 0x2fe4: b'\x11/\xe4', + 0x2fe5: b'\x11/\xe5', + 0x2fe6: b'\x11/\xe6', + 0x2fe7: b'\x11/\xe7', + 0x2fe8: b'\x11/\xe8', + 0x2fe9: b'\x11/\xe9', + 0x2fea: b'\x11/\xea', + 0x2feb: b'\x11/\xeb', + 0x2fec: b'\x11/\xec', + 0x2fed: b'\x11/\xed', + 0x2fee: b'\x11/\xee', + 0x2fef: b'\x11/\xef', + 0x2ff0: b'\x11/\xf0', + 0x2ff1: b'\x11/\xf1', + 0x2ff2: b'\x11/\xf2', + 0x2ff3: b'\x11/\xf3', + 0x2ff4: b'\x11/\xf4', + 0x2ff5: b'\x11/\xf5', + 0x2ff6: b'\x11/\xf6', + 0x2ff7: b'\x11/\xf7', + 0x2ff8: b'\x11/\xf8', + 0x2ff9: b'\x11/\xf9', + 0x2ffa: b'\x11/\xfa', + 0x2ffb: b'\x11/\xfb', + 0x2ffc: b'\x11/\xfc', + 0x2ffd: b'\x11/\xfd', + 0x2ffe: b'\x11/\xfe', + 0x2fff: b'\x11/\xff', + 0x3000: b'\x110\x00', + 0x3001: b'\x110\x01', + 0x3002: b'\x110\x02', + 0x3003: b'\x110\x03', + 0x3004: b'\x110\x04', + 0x3005: b'\x110\x05', + 0x3006: b'\x110\x06', + 0x3007: b'\x110\x07', + 0x3008: b'\x110\x08', + 0x3009: b'\x110\t', + 0x300a: b'\x110\n', + 0x300b: b'\x110\x0b', + 0x300c: b'\x110\x0c', + 0x300d: b'\x110\r', + 0x300e: b'\x110\x0e', + 0x300f: b'\x110\x0f', + 0x3010: b'\x110\x10', + 0x3011: b'\x110\x11', + 0x3012: b'\x110\x12', + 0x3013: b'\x110\x13', + 0x3014: b'\x110\x14', + 0x3015: b'\x110\x15', + 0x3016: b'\x110\x16', + 0x3017: b'\x110\x17', + 0x3018: b'\x110\x18', + 0x3019: b'\x110\x19', + 0x301a: b'\x110\x1a', + 0x301b: b'\x110\x1b', + 0x301c: b'\x110\x1c', + 0x301d: b'\x110\x1d', + 0x301e: b'\x110\x1e', + 0x301f: b'\x110\x1f', + 0x3020: b'\x110 ', + 0x3021: b'\x110!', + 0x3022: b'\x110"', + 0x3023: b'\x110#', + 0x3024: b'\x110$', + 0x3025: b'\x110%', + 0x3026: b'\x110&', + 0x3027: b"\x110'", + 0x3028: b'\x110(', + 0x3029: b'\x110)', + 0x302a: b'\x110*', + 0x302b: b'\x110+', + 0x302c: b'\x110,', + 0x302d: b'\x110-', + 0x302e: b'\x110.', + 0x302f: b'\x110/', + 0x3030: b'\x1100', + 0x3031: b'\x1101', + 0x3032: b'\x1102', + 0x3033: b'\x1103', + 0x3034: b'\x1104', + 0x3035: b'\x1105', + 0x3036: b'\x1106', + 0x3037: b'\x1107', + 0x3038: b'\x1108', + 0x3039: b'\x1109', + 0x303a: b'\x110:', + 0x303b: b'\x110;', + 0x303c: b'\x110<', + 0x303d: b'\x110=', + 0x303e: b'\x110>', + 0x303f: b'\x110?', + 0x3040: b'\x110@', + 0x3041: b'\x110A', + 0x3042: b'\x110B', + 0x3043: b'\x110C', + 0x3044: b'\x110D', + 0x3045: b'\x110E', + 0x3046: b'\x110F', + 0x3047: b'\x110G', + 0x3048: b'\x110H', + 0x3049: b'\x110I', + 0x304a: b'\x110J', + 0x304b: b'\x110K', + 0x304c: b'\x110L', + 0x304d: b'\x110M', + 0x304e: b'\x110N', + 0x304f: b'\x110O', + 0x3050: b'\x110P', + 0x3051: b'\x110Q', + 0x3052: b'\x110R', + 0x3053: b'\x110S', + 0x3054: b'\x110T', + 0x3055: b'\x110U', + 0x3056: b'\x110V', + 0x3057: b'\x110W', + 0x3058: b'\x110X', + 0x3059: b'\x110Y', + 0x305a: b'\x110Z', + 0x305b: b'\x110[', + 0x305c: b'\x110\\', + 0x305d: b'\x110]', + 0x305e: b'\x110^', + 0x305f: b'\x110_', + 0x3060: b'\x110`', + 0x3061: b'\x110a', + 0x3062: b'\x110b', + 0x3063: b'\x110c', + 0x3064: b'\x110d', + 0x3065: b'\x110e', + 0x3066: b'\x110f', + 0x3067: b'\x110g', + 0x3068: b'\x110h', + 0x3069: b'\x110i', + 0x306a: b'\x110j', + 0x306b: b'\x110k', + 0x306c: b'\x110l', + 0x306d: b'\x110m', + 0x306e: b'\x110n', + 0x306f: b'\x110o', + 0x3070: b'\x110p', + 0x3071: b'\x110q', + 0x3072: b'\x110r', + 0x3073: b'\x110s', + 0x3074: b'\x110t', + 0x3075: b'\x110u', + 0x3076: b'\x110v', + 0x3077: b'\x110w', + 0x3078: b'\x110x', + 0x3079: b'\x110y', + 0x307a: b'\x110z', + 0x307b: b'\x110{', + 0x307c: b'\x110|', + 0x307d: b'\x110}', + 0x307e: b'\x110~', + 0x307f: b'\x110\x7f', + 0x3080: b'\x110\x80', + 0x3081: b'\x110\x81', + 0x3082: b'\x110\x82', + 0x3083: b'\x110\x83', + 0x3084: b'\x110\x84', + 0x3085: b'\x110\x85', + 0x3086: b'\x110\x86', + 0x3087: b'\x110\x87', + 0x3088: b'\x110\x88', + 0x3089: b'\x110\x89', + 0x308a: b'\x110\x8a', + 0x308b: b'\x110\x8b', + 0x308c: b'\x110\x8c', + 0x308d: b'\x110\x8d', + 0x308e: b'\x110\x8e', + 0x308f: b'\x110\x8f', + 0x3090: b'\x110\x90', + 0x3091: b'\x110\x91', + 0x3092: b'\x110\x92', + 0x3093: b'\x110\x93', + 0x3094: b'\x110\x94', + 0x3095: b'\x110\x95', + 0x3096: b'\x110\x96', + 0x3097: b'\x110\x97', + 0x3098: b'\x110\x98', + 0x3099: b'\x110\x99', + 0x309a: b'\x110\x9a', + 0x309b: b'\x110\x9b', + 0x309c: b'\x110\x9c', + 0x309d: b'\x110\x9d', + 0x309e: b'\x110\x9e', + 0x309f: b'\x110\x9f', + 0x30a0: b'\x110\xa0', + 0x30a1: b'\x110\xa1', + 0x30a2: b'\x110\xa2', + 0x30a3: b'\x110\xa3', + 0x30a4: b'\x110\xa4', + 0x30a5: b'\x110\xa5', + 0x30a6: b'\x110\xa6', + 0x30a7: b'\x110\xa7', + 0x30a8: b'\x110\xa8', + 0x30a9: b'\x110\xa9', + 0x30aa: b'\x110\xaa', + 0x30ab: b'\x110\xab', + 0x30ac: b'\x110\xac', + 0x30ad: b'\x110\xad', + 0x30ae: b'\x110\xae', + 0x30af: b'\x110\xaf', + 0x30b0: b'\x110\xb0', + 0x30b1: b'\x110\xb1', + 0x30b2: b'\x110\xb2', + 0x30b3: b'\x110\xb3', + 0x30b4: b'\x110\xb4', + 0x30b5: b'\x110\xb5', + 0x30b6: b'\x110\xb6', + 0x30b7: b'\x110\xb7', + 0x30b8: b'\x110\xb8', + 0x30b9: b'\x110\xb9', + 0x30ba: b'\x110\xba', + 0x30bb: b'\x110\xbb', + 0x30bc: b'\x110\xbc', + 0x30bd: b'\x110\xbd', + 0x30be: b'\x110\xbe', + 0x30bf: b'\x110\xbf', + 0x30c0: b'\x110\xc0', + 0x30c1: b'\x110\xc1', + 0x30c2: b'\x110\xc2', + 0x30c3: b'\x110\xc3', + 0x30c4: b'\x110\xc4', + 0x30c5: b'\x110\xc5', + 0x30c6: b'\x110\xc6', + 0x30c7: b'\x110\xc7', + 0x30c8: b'\x110\xc8', + 0x30c9: b'\x110\xc9', + 0x30ca: b'\x110\xca', + 0x30cb: b'\x110\xcb', + 0x30cc: b'\x110\xcc', + 0x30cd: b'\x110\xcd', + 0x30ce: b'\x110\xce', + 0x30cf: b'\x110\xcf', + 0x30d0: b'\x110\xd0', + 0x30d1: b'\x110\xd1', + 0x30d2: b'\x110\xd2', + 0x30d3: b'\x110\xd3', + 0x30d4: b'\x110\xd4', + 0x30d5: b'\x110\xd5', + 0x30d6: b'\x110\xd6', + 0x30d7: b'\x110\xd7', + 0x30d8: b'\x110\xd8', + 0x30d9: b'\x110\xd9', + 0x30da: b'\x110\xda', + 0x30db: b'\x110\xdb', + 0x30dc: b'\x110\xdc', + 0x30dd: b'\x110\xdd', + 0x30de: b'\x110\xde', + 0x30df: b'\x110\xdf', + 0x30e0: b'\x110\xe0', + 0x30e1: b'\x110\xe1', + 0x30e2: b'\x110\xe2', + 0x30e3: b'\x110\xe3', + 0x30e4: b'\x110\xe4', + 0x30e5: b'\x110\xe5', + 0x30e6: b'\x110\xe6', + 0x30e7: b'\x110\xe7', + 0x30e8: b'\x110\xe8', + 0x30e9: b'\x110\xe9', + 0x30ea: b'\x110\xea', + 0x30eb: b'\x110\xeb', + 0x30ec: b'\x110\xec', + 0x30ed: b'\x110\xed', + 0x30ee: b'\x110\xee', + 0x30ef: b'\x110\xef', + 0x30f0: b'\x110\xf0', + 0x30f1: b'\x110\xf1', + 0x30f2: b'\x110\xf2', + 0x30f3: b'\x110\xf3', + 0x30f4: b'\x110\xf4', + 0x30f5: b'\x110\xf5', + 0x30f6: b'\x110\xf6', + 0x30f7: b'\x110\xf7', + 0x30f8: b'\x110\xf8', + 0x30f9: b'\x110\xf9', + 0x30fa: b'\x110\xfa', + 0x30fb: b'\x110\xfb', + 0x30fc: b'\x110\xfc', + 0x30fd: b'\x110\xfd', + 0x30fe: b'\x110\xfe', + 0x30ff: b'\x110\xff', + 0x3100: b'\x111\x00', + 0x3101: b'\x111\x01', + 0x3102: b'\x111\x02', + 0x3103: b'\x111\x03', + 0x3104: b'\x111\x04', + 0x3105: b'\x111\x05', + 0x3106: b'\x111\x06', + 0x3107: b'\x111\x07', + 0x3108: b'\x111\x08', + 0x3109: b'\x111\t', + 0x310a: b'\x111\n', + 0x310b: b'\x111\x0b', + 0x310c: b'\x111\x0c', + 0x310d: b'\x111\r', + 0x310e: b'\x111\x0e', + 0x310f: b'\x111\x0f', + 0x3110: b'\x111\x10', + 0x3111: b'\x111\x11', + 0x3112: b'\x111\x12', + 0x3113: b'\x111\x13', + 0x3114: b'\x111\x14', + 0x3115: b'\x111\x15', + 0x3116: b'\x111\x16', + 0x3117: b'\x111\x17', + 0x3118: b'\x111\x18', + 0x3119: b'\x111\x19', + 0x311a: b'\x111\x1a', + 0x311b: b'\x111\x1b', + 0x311c: b'\x111\x1c', + 0x311d: b'\x111\x1d', + 0x311e: b'\x111\x1e', + 0x311f: b'\x111\x1f', + 0x3120: b'\x111 ', + 0x3121: b'\x111!', + 0x3122: b'\x111"', + 0x3123: b'\x111#', + 0x3124: b'\x111$', + 0x3125: b'\x111%', + 0x3126: b'\x111&', + 0x3127: b"\x111'", + 0x3128: b'\x111(', + 0x3129: b'\x111)', + 0x312a: b'\x111*', + 0x312b: b'\x111+', + 0x312c: b'\x111,', + 0x312d: b'\x111-', + 0x312e: b'\x111.', + 0x312f: b'\x111/', + 0x3130: b'\x1110', + 0x3131: b'\x1111', + 0x3132: b'\x1112', + 0x3133: b'\x1113', + 0x3134: b'\x1114', + 0x3135: b'\x1115', + 0x3136: b'\x1116', + 0x3137: b'\x1117', + 0x3138: b'\x1118', + 0x3139: b'\x1119', + 0x313a: b'\x111:', + 0x313b: b'\x111;', + 0x313c: b'\x111<', + 0x313d: b'\x111=', + 0x313e: b'\x111>', + 0x313f: b'\x111?', + 0x3140: b'\x111@', + 0x3141: b'\x111A', + 0x3142: b'\x111B', + 0x3143: b'\x111C', + 0x3144: b'\x111D', + 0x3145: b'\x111E', + 0x3146: b'\x111F', + 0x3147: b'\x111G', + 0x3148: b'\x111H', + 0x3149: b'\x111I', + 0x314a: b'\x111J', + 0x314b: b'\x111K', + 0x314c: b'\x111L', + 0x314d: b'\x111M', + 0x314e: b'\x111N', + 0x314f: b'\x111O', + 0x3150: b'\x111P', + 0x3151: b'\x111Q', + 0x3152: b'\x111R', + 0x3153: b'\x111S', + 0x3154: b'\x111T', + 0x3155: b'\x111U', + 0x3156: b'\x111V', + 0x3157: b'\x111W', + 0x3158: b'\x111X', + 0x3159: b'\x111Y', + 0x315a: b'\x111Z', + 0x315b: b'\x111[', + 0x315c: b'\x111\\', + 0x315d: b'\x111]', + 0x315e: b'\x111^', + 0x315f: b'\x111_', + 0x3160: b'\x111`', + 0x3161: b'\x111a', + 0x3162: b'\x111b', + 0x3163: b'\x111c', + 0x3164: b'\x111d', + 0x3165: b'\x111e', + 0x3166: b'\x111f', + 0x3167: b'\x111g', + 0x3168: b'\x111h', + 0x3169: b'\x111i', + 0x316a: b'\x111j', + 0x316b: b'\x111k', + 0x316c: b'\x111l', + 0x316d: b'\x111m', + 0x316e: b'\x111n', + 0x316f: b'\x111o', + 0x3170: b'\x111p', + 0x3171: b'\x111q', + 0x3172: b'\x111r', + 0x3173: b'\x111s', + 0x3174: b'\x111t', + 0x3175: b'\x111u', + 0x3176: b'\x111v', + 0x3177: b'\x111w', + 0x3178: b'\x111x', + 0x3179: b'\x111y', + 0x317a: b'\x111z', + 0x317b: b'\x111{', + 0x317c: b'\x111|', + 0x317d: b'\x111}', + 0x317e: b'\x111~', + 0x317f: b'\x111\x7f', + 0x3180: b'\x111\x80', + 0x3181: b'\x111\x81', + 0x3182: b'\x111\x82', + 0x3183: b'\x111\x83', + 0x3184: b'\x111\x84', + 0x3185: b'\x111\x85', + 0x3186: b'\x111\x86', + 0x3187: b'\x111\x87', + 0x3188: b'\x111\x88', + 0x3189: b'\x111\x89', + 0x318a: b'\x111\x8a', + 0x318b: b'\x111\x8b', + 0x318c: b'\x111\x8c', + 0x318d: b'\x111\x8d', + 0x318e: b'\x111\x8e', + 0x318f: b'\x111\x8f', + 0x3190: b'\x111\x90', + 0x3191: b'\x111\x91', + 0x3192: b'\x111\x92', + 0x3193: b'\x111\x93', + 0x3194: b'\x111\x94', + 0x3195: b'\x111\x95', + 0x3196: b'\x111\x96', + 0x3197: b'\x111\x97', + 0x3198: b'\x111\x98', + 0x3199: b'\x111\x99', + 0x319a: b'\x111\x9a', + 0x319b: b'\x111\x9b', + 0x319c: b'\x111\x9c', + 0x319d: b'\x111\x9d', + 0x319e: b'\x111\x9e', + 0x319f: b'\x111\x9f', + 0x31a0: b'\x111\xa0', + 0x31a1: b'\x111\xa1', + 0x31a2: b'\x111\xa2', + 0x31a3: b'\x111\xa3', + 0x31a4: b'\x111\xa4', + 0x31a5: b'\x111\xa5', + 0x31a6: b'\x111\xa6', + 0x31a7: b'\x111\xa7', + 0x31a8: b'\x111\xa8', + 0x31a9: b'\x111\xa9', + 0x31aa: b'\x111\xaa', + 0x31ab: b'\x111\xab', + 0x31ac: b'\x111\xac', + 0x31ad: b'\x111\xad', + 0x31ae: b'\x111\xae', + 0x31af: b'\x111\xaf', + 0x31b0: b'\x111\xb0', + 0x31b1: b'\x111\xb1', + 0x31b2: b'\x111\xb2', + 0x31b3: b'\x111\xb3', + 0x31b4: b'\x111\xb4', + 0x31b5: b'\x111\xb5', + 0x31b6: b'\x111\xb6', + 0x31b7: b'\x111\xb7', + 0x31b8: b'\x111\xb8', + 0x31b9: b'\x111\xb9', + 0x31ba: b'\x111\xba', + 0x31bb: b'\x111\xbb', + 0x31bc: b'\x111\xbc', + 0x31bd: b'\x111\xbd', + 0x31be: b'\x111\xbe', + 0x31bf: b'\x111\xbf', + 0x31c0: b'\x111\xc0', + 0x31c1: b'\x111\xc1', + 0x31c2: b'\x111\xc2', + 0x31c3: b'\x111\xc3', + 0x31c4: b'\x111\xc4', + 0x31c5: b'\x111\xc5', + 0x31c6: b'\x111\xc6', + 0x31c7: b'\x111\xc7', + 0x31c8: b'\x111\xc8', + 0x31c9: b'\x111\xc9', + 0x31ca: b'\x111\xca', + 0x31cb: b'\x111\xcb', + 0x31cc: b'\x111\xcc', + 0x31cd: b'\x111\xcd', + 0x31ce: b'\x111\xce', + 0x31cf: b'\x111\xcf', + 0x31d0: b'\x111\xd0', + 0x31d1: b'\x111\xd1', + 0x31d2: b'\x111\xd2', + 0x31d3: b'\x111\xd3', + 0x31d4: b'\x111\xd4', + 0x31d5: b'\x111\xd5', + 0x31d6: b'\x111\xd6', + 0x31d7: b'\x111\xd7', + 0x31d8: b'\x111\xd8', + 0x31d9: b'\x111\xd9', + 0x31da: b'\x111\xda', + 0x31db: b'\x111\xdb', + 0x31dc: b'\x111\xdc', + 0x31dd: b'\x111\xdd', + 0x31de: b'\x111\xde', + 0x31df: b'\x111\xdf', + 0x31e0: b'\x111\xe0', + 0x31e1: b'\x111\xe1', + 0x31e2: b'\x111\xe2', + 0x31e3: b'\x111\xe3', + 0x31e4: b'\x111\xe4', + 0x31e5: b'\x111\xe5', + 0x31e6: b'\x111\xe6', + 0x31e7: b'\x111\xe7', + 0x31e8: b'\x111\xe8', + 0x31e9: b'\x111\xe9', + 0x31ea: b'\x111\xea', + 0x31eb: b'\x111\xeb', + 0x31ec: b'\x111\xec', + 0x31ed: b'\x111\xed', + 0x31ee: b'\x111\xee', + 0x31ef: b'\x111\xef', + 0x31f0: b'\x111\xf0', + 0x31f1: b'\x111\xf1', + 0x31f2: b'\x111\xf2', + 0x31f3: b'\x111\xf3', + 0x31f4: b'\x111\xf4', + 0x31f5: b'\x111\xf5', + 0x31f6: b'\x111\xf6', + 0x31f7: b'\x111\xf7', + 0x31f8: b'\x111\xf8', + 0x31f9: b'\x111\xf9', + 0x31fa: b'\x111\xfa', + 0x31fb: b'\x111\xfb', + 0x31fc: b'\x111\xfc', + 0x31fd: b'\x111\xfd', + 0x31fe: b'\x111\xfe', + 0x31ff: b'\x111\xff', + 0x3200: b'\x112\x00', + 0x3201: b'\x112\x01', + 0x3202: b'\x112\x02', + 0x3203: b'\x112\x03', + 0x3204: b'\x112\x04', + 0x3205: b'\x112\x05', + 0x3206: b'\x112\x06', + 0x3207: b'\x112\x07', + 0x3208: b'\x112\x08', + 0x3209: b'\x112\t', + 0x320a: b'\x112\n', + 0x320b: b'\x112\x0b', + 0x320c: b'\x112\x0c', + 0x320d: b'\x112\r', + 0x320e: b'\x112\x0e', + 0x320f: b'\x112\x0f', + 0x3210: b'\x112\x10', + 0x3211: b'\x112\x11', + 0x3212: b'\x112\x12', + 0x3213: b'\x112\x13', + 0x3214: b'\x112\x14', + 0x3215: b'\x112\x15', + 0x3216: b'\x112\x16', + 0x3217: b'\x112\x17', + 0x3218: b'\x112\x18', + 0x3219: b'\x112\x19', + 0x321a: b'\x112\x1a', + 0x321b: b'\x112\x1b', + 0x321c: b'\x112\x1c', + 0x321d: b'\x112\x1d', + 0x321e: b'\x112\x1e', + 0x321f: b'\x112\x1f', + 0x3220: b'\x112 ', + 0x3221: b'\x112!', + 0x3222: b'\x112"', + 0x3223: b'\x112#', + 0x3224: b'\x112$', + 0x3225: b'\x112%', + 0x3226: b'\x112&', + 0x3227: b"\x112'", + 0x3228: b'\x112(', + 0x3229: b'\x112)', + 0x322a: b'\x112*', + 0x322b: b'\x112+', + 0x322c: b'\x112,', + 0x322d: b'\x112-', + 0x322e: b'\x112.', + 0x322f: b'\x112/', + 0x3230: b'\x1120', + 0x3231: b'\x1121', + 0x3232: b'\x1122', + 0x3233: b'\x1123', + 0x3234: b'\x1124', + 0x3235: b'\x1125', + 0x3236: b'\x1126', + 0x3237: b'\x1127', + 0x3238: b'\x1128', + 0x3239: b'\x1129', + 0x323a: b'\x112:', + 0x323b: b'\x112;', + 0x323c: b'\x112<', + 0x323d: b'\x112=', + 0x323e: b'\x112>', + 0x323f: b'\x112?', + 0x3240: b'\x112@', + 0x3241: b'\x112A', + 0x3242: b'\x112B', + 0x3243: b'\x112C', + 0x3244: b'\x112D', + 0x3245: b'\x112E', + 0x3246: b'\x112F', + 0x3247: b'\x112G', + 0x3248: b'\x112H', + 0x3249: b'\x112I', + 0x324a: b'\x112J', + 0x324b: b'\x112K', + 0x324c: b'\x112L', + 0x324d: b'\x112M', + 0x324e: b'\x112N', + 0x324f: b'\x112O', + 0x3250: b'\x112P', + 0x3251: b'\x112Q', + 0x3252: b'\x112R', + 0x3253: b'\x112S', + 0x3254: b'\x112T', + 0x3255: b'\x112U', + 0x3256: b'\x112V', + 0x3257: b'\x112W', + 0x3258: b'\x112X', + 0x3259: b'\x112Y', + 0x325a: b'\x112Z', + 0x325b: b'\x112[', + 0x325c: b'\x112\\', + 0x325d: b'\x112]', + 0x325e: b'\x112^', + 0x325f: b'\x112_', + 0x3260: b'\x112`', + 0x3261: b'\x112a', + 0x3262: b'\x112b', + 0x3263: b'\x112c', + 0x3264: b'\x112d', + 0x3265: b'\x112e', + 0x3266: b'\x112f', + 0x3267: b'\x112g', + 0x3268: b'\x112h', + 0x3269: b'\x112i', + 0x326a: b'\x112j', + 0x326b: b'\x112k', + 0x326c: b'\x112l', + 0x326d: b'\x112m', + 0x326e: b'\x112n', + 0x326f: b'\x112o', + 0x3270: b'\x112p', + 0x3271: b'\x112q', + 0x3272: b'\x112r', + 0x3273: b'\x112s', + 0x3274: b'\x112t', + 0x3275: b'\x112u', + 0x3276: b'\x112v', + 0x3277: b'\x112w', + 0x3278: b'\x112x', + 0x3279: b'\x112y', + 0x327a: b'\x112z', + 0x327b: b'\x112{', + 0x327c: b'\x112|', + 0x327d: b'\x112}', + 0x327e: b'\x112~', + 0x327f: b'\x112\x7f', + 0x3280: b'\x112\x80', + 0x3281: b'\x112\x81', + 0x3282: b'\x112\x82', + 0x3283: b'\x112\x83', + 0x3284: b'\x112\x84', + 0x3285: b'\x112\x85', + 0x3286: b'\x112\x86', + 0x3287: b'\x112\x87', + 0x3288: b'\x112\x88', + 0x3289: b'\x112\x89', + 0x328a: b'\x112\x8a', + 0x328b: b'\x112\x8b', + 0x328c: b'\x112\x8c', + 0x328d: b'\x112\x8d', + 0x328e: b'\x112\x8e', + 0x328f: b'\x112\x8f', + 0x3290: b'\x112\x90', + 0x3291: b'\x112\x91', + 0x3292: b'\x112\x92', + 0x3293: b'\x112\x93', + 0x3294: b'\x112\x94', + 0x3295: b'\x112\x95', + 0x3296: b'\x112\x96', + 0x3297: b'\x112\x97', + 0x3298: b'\x112\x98', + 0x3299: b'\x112\x99', + 0x329a: b'\x112\x9a', + 0x329b: b'\x112\x9b', + 0x329c: b'\x112\x9c', + 0x329d: b'\x112\x9d', + 0x329e: b'\x112\x9e', + 0x329f: b'\x112\x9f', + 0x32a0: b'\x112\xa0', + 0x32a1: b'\x112\xa1', + 0x32a2: b'\x112\xa2', + 0x32a3: b'\x112\xa3', + 0x32a4: b'\x112\xa4', + 0x32a5: b'\x112\xa5', + 0x32a6: b'\x112\xa6', + 0x32a7: b'\x112\xa7', + 0x32a8: b'\x112\xa8', + 0x32a9: b'\x112\xa9', + 0x32aa: b'\x112\xaa', + 0x32ab: b'\x112\xab', + 0x32ac: b'\x112\xac', + 0x32ad: b'\x112\xad', + 0x32ae: b'\x112\xae', + 0x32af: b'\x112\xaf', + 0x32b0: b'\x112\xb0', + 0x32b1: b'\x112\xb1', + 0x32b2: b'\x112\xb2', + 0x32b3: b'\x112\xb3', + 0x32b4: b'\x112\xb4', + 0x32b5: b'\x112\xb5', + 0x32b6: b'\x112\xb6', + 0x32b7: b'\x112\xb7', + 0x32b8: b'\x112\xb8', + 0x32b9: b'\x112\xb9', + 0x32ba: b'\x112\xba', + 0x32bb: b'\x112\xbb', + 0x32bc: b'\x112\xbc', + 0x32bd: b'\x112\xbd', + 0x32be: b'\x112\xbe', + 0x32bf: b'\x112\xbf', + 0x32c0: b'\x112\xc0', + 0x32c1: b'\x112\xc1', + 0x32c2: b'\x112\xc2', + 0x32c3: b'\x112\xc3', + 0x32c4: b'\x112\xc4', + 0x32c5: b'\x112\xc5', + 0x32c6: b'\x112\xc6', + 0x32c7: b'\x112\xc7', + 0x32c8: b'\x112\xc8', + 0x32c9: b'\x112\xc9', + 0x32ca: b'\x112\xca', + 0x32cb: b'\x112\xcb', + 0x32cc: b'\x112\xcc', + 0x32cd: b'\x112\xcd', + 0x32ce: b'\x112\xce', + 0x32cf: b'\x112\xcf', + 0x32d0: b'\x112\xd0', + 0x32d1: b'\x112\xd1', + 0x32d2: b'\x112\xd2', + 0x32d3: b'\x112\xd3', + 0x32d4: b'\x112\xd4', + 0x32d5: b'\x112\xd5', + 0x32d6: b'\x112\xd6', + 0x32d7: b'\x112\xd7', + 0x32d8: b'\x112\xd8', + 0x32d9: b'\x112\xd9', + 0x32da: b'\x112\xda', + 0x32db: b'\x112\xdb', + 0x32dc: b'\x112\xdc', + 0x32dd: b'\x112\xdd', + 0x32de: b'\x112\xde', + 0x32df: b'\x112\xdf', + 0x32e0: b'\x112\xe0', + 0x32e1: b'\x112\xe1', + 0x32e2: b'\x112\xe2', + 0x32e3: b'\x112\xe3', + 0x32e4: b'\x112\xe4', + 0x32e5: b'\x112\xe5', + 0x32e6: b'\x112\xe6', + 0x32e7: b'\x112\xe7', + 0x32e8: b'\x112\xe8', + 0x32e9: b'\x112\xe9', + 0x32ea: b'\x112\xea', + 0x32eb: b'\x112\xeb', + 0x32ec: b'\x112\xec', + 0x32ed: b'\x112\xed', + 0x32ee: b'\x112\xee', + 0x32ef: b'\x112\xef', + 0x32f0: b'\x112\xf0', + 0x32f1: b'\x112\xf1', + 0x32f2: b'\x112\xf2', + 0x32f3: b'\x112\xf3', + 0x32f4: b'\x112\xf4', + 0x32f5: b'\x112\xf5', + 0x32f6: b'\x112\xf6', + 0x32f7: b'\x112\xf7', + 0x32f8: b'\x112\xf8', + 0x32f9: b'\x112\xf9', + 0x32fa: b'\x112\xfa', + 0x32fb: b'\x112\xfb', + 0x32fc: b'\x112\xfc', + 0x32fd: b'\x112\xfd', + 0x32fe: b'\x112\xfe', + 0x32ff: b'\x112\xff', + 0x3300: b'\x113\x00', + 0x3301: b'\x113\x01', + 0x3302: b'\x113\x02', + 0x3303: b'\x113\x03', + 0x3304: b'\x113\x04', + 0x3305: b'\x113\x05', + 0x3306: b'\x113\x06', + 0x3307: b'\x113\x07', + 0x3308: b'\x113\x08', + 0x3309: b'\x113\t', + 0x330a: b'\x113\n', + 0x330b: b'\x113\x0b', + 0x330c: b'\x113\x0c', + 0x330d: b'\x113\r', + 0x330e: b'\x113\x0e', + 0x330f: b'\x113\x0f', + 0x3310: b'\x113\x10', + 0x3311: b'\x113\x11', + 0x3312: b'\x113\x12', + 0x3313: b'\x113\x13', + 0x3314: b'\x113\x14', + 0x3315: b'\x113\x15', + 0x3316: b'\x113\x16', + 0x3317: b'\x113\x17', + 0x3318: b'\x113\x18', + 0x3319: b'\x113\x19', + 0x331a: b'\x113\x1a', + 0x331b: b'\x113\x1b', + 0x331c: b'\x113\x1c', + 0x331d: b'\x113\x1d', + 0x331e: b'\x113\x1e', + 0x331f: b'\x113\x1f', + 0x3320: b'\x113 ', + 0x3321: b'\x113!', + 0x3322: b'\x113"', + 0x3323: b'\x113#', + 0x3324: b'\x113$', + 0x3325: b'\x113%', + 0x3326: b'\x113&', + 0x3327: b"\x113'", + 0x3328: b'\x113(', + 0x3329: b'\x113)', + 0x332a: b'\x113*', + 0x332b: b'\x113+', + 0x332c: b'\x113,', + 0x332d: b'\x113-', + 0x332e: b'\x113.', + 0x332f: b'\x113/', + 0x3330: b'\x1130', + 0x3331: b'\x1131', + 0x3332: b'\x1132', + 0x3333: b'\x1133', + 0x3334: b'\x1134', + 0x3335: b'\x1135', + 0x3336: b'\x1136', + 0x3337: b'\x1137', + 0x3338: b'\x1138', + 0x3339: b'\x1139', + 0x333a: b'\x113:', + 0x333b: b'\x113;', + 0x333c: b'\x113<', + 0x333d: b'\x113=', + 0x333e: b'\x113>', + 0x333f: b'\x113?', + 0x3340: b'\x113@', + 0x3341: b'\x113A', + 0x3342: b'\x113B', + 0x3343: b'\x113C', + 0x3344: b'\x113D', + 0x3345: b'\x113E', + 0x3346: b'\x113F', + 0x3347: b'\x113G', + 0x3348: b'\x113H', + 0x3349: b'\x113I', + 0x334a: b'\x113J', + 0x334b: b'\x113K', + 0x334c: b'\x113L', + 0x334d: b'\x113M', + 0x334e: b'\x113N', + 0x334f: b'\x113O', + 0x3350: b'\x113P', + 0x3351: b'\x113Q', + 0x3352: b'\x113R', + 0x3353: b'\x113S', + 0x3354: b'\x113T', + 0x3355: b'\x113U', + 0x3356: b'\x113V', + 0x3357: b'\x113W', + 0x3358: b'\x113X', + 0x3359: b'\x113Y', + 0x335a: b'\x113Z', + 0x335b: b'\x113[', + 0x335c: b'\x113\\', + 0x335d: b'\x113]', + 0x335e: b'\x113^', + 0x335f: b'\x113_', + 0x3360: b'\x113`', + 0x3361: b'\x113a', + 0x3362: b'\x113b', + 0x3363: b'\x113c', + 0x3364: b'\x113d', + 0x3365: b'\x113e', + 0x3366: b'\x113f', + 0x3367: b'\x113g', + 0x3368: b'\x113h', + 0x3369: b'\x113i', + 0x336a: b'\x113j', + 0x336b: b'\x113k', + 0x336c: b'\x113l', + 0x336d: b'\x113m', + 0x336e: b'\x113n', + 0x336f: b'\x113o', + 0x3370: b'\x113p', + 0x3371: b'\x113q', + 0x3372: b'\x113r', + 0x3373: b'\x113s', + 0x3374: b'\x113t', + 0x3375: b'\x113u', + 0x3376: b'\x113v', + 0x3377: b'\x113w', + 0x3378: b'\x113x', + 0x3379: b'\x113y', + 0x337a: b'\x113z', + 0x337b: b'\x113{', + 0x337c: b'\x113|', + 0x337d: b'\x113}', + 0x337e: b'\x113~', + 0x337f: b'\x113\x7f', + 0x3380: b'\x113\x80', + 0x3381: b'\x113\x81', + 0x3382: b'\x113\x82', + 0x3383: b'\x113\x83', + 0x3384: b'\x113\x84', + 0x3385: b'\x113\x85', + 0x3386: b'\x113\x86', + 0x3387: b'\x113\x87', + 0x3388: b'\x113\x88', + 0x3389: b'\x113\x89', + 0x338a: b'\x113\x8a', + 0x338b: b'\x113\x8b', + 0x338c: b'\x113\x8c', + 0x338d: b'\x113\x8d', + 0x338e: b'\x113\x8e', + 0x338f: b'\x113\x8f', + 0x3390: b'\x113\x90', + 0x3391: b'\x113\x91', + 0x3392: b'\x113\x92', + 0x3393: b'\x113\x93', + 0x3394: b'\x113\x94', + 0x3395: b'\x113\x95', + 0x3396: b'\x113\x96', + 0x3397: b'\x113\x97', + 0x3398: b'\x113\x98', + 0x3399: b'\x113\x99', + 0x339a: b'\x113\x9a', + 0x339b: b'\x113\x9b', + 0x339c: b'\x113\x9c', + 0x339d: b'\x113\x9d', + 0x339e: b'\x113\x9e', + 0x339f: b'\x113\x9f', + 0x33a0: b'\x113\xa0', + 0x33a1: b'\x113\xa1', + 0x33a2: b'\x113\xa2', + 0x33a3: b'\x113\xa3', + 0x33a4: b'\x113\xa4', + 0x33a5: b'\x113\xa5', + 0x33a6: b'\x113\xa6', + 0x33a7: b'\x113\xa7', + 0x33a8: b'\x113\xa8', + 0x33a9: b'\x113\xa9', + 0x33aa: b'\x113\xaa', + 0x33ab: b'\x113\xab', + 0x33ac: b'\x113\xac', + 0x33ad: b'\x113\xad', + 0x33ae: b'\x113\xae', + 0x33af: b'\x113\xaf', + 0x33b0: b'\x113\xb0', + 0x33b1: b'\x113\xb1', + 0x33b2: b'\x113\xb2', + 0x33b3: b'\x113\xb3', + 0x33b4: b'\x113\xb4', + 0x33b5: b'\x113\xb5', + 0x33b6: b'\x113\xb6', + 0x33b7: b'\x113\xb7', + 0x33b8: b'\x113\xb8', + 0x33b9: b'\x113\xb9', + 0x33ba: b'\x113\xba', + 0x33bb: b'\x113\xbb', + 0x33bc: b'\x113\xbc', + 0x33bd: b'\x113\xbd', + 0x33be: b'\x113\xbe', + 0x33bf: b'\x113\xbf', + 0x33c0: b'\x113\xc0', + 0x33c1: b'\x113\xc1', + 0x33c2: b'\x113\xc2', + 0x33c3: b'\x113\xc3', + 0x33c4: b'\x113\xc4', + 0x33c5: b'\x113\xc5', + 0x33c6: b'\x113\xc6', + 0x33c7: b'\x113\xc7', + 0x33c8: b'\x113\xc8', + 0x33c9: b'\x113\xc9', + 0x33ca: b'\x113\xca', + 0x33cb: b'\x113\xcb', + 0x33cc: b'\x113\xcc', + 0x33cd: b'\x113\xcd', + 0x33ce: b'\x113\xce', + 0x33cf: b'\x113\xcf', + 0x33d0: b'\x113\xd0', + 0x33d1: b'\x113\xd1', + 0x33d2: b'\x113\xd2', + 0x33d3: b'\x113\xd3', + 0x33d4: b'\x113\xd4', + 0x33d5: b'\x113\xd5', + 0x33d6: b'\x113\xd6', + 0x33d7: b'\x113\xd7', + 0x33d8: b'\x113\xd8', + 0x33d9: b'\x113\xd9', + 0x33da: b'\x113\xda', + 0x33db: b'\x113\xdb', + 0x33dc: b'\x113\xdc', + 0x33dd: b'\x113\xdd', + 0x33de: b'\x113\xde', + 0x33df: b'\x113\xdf', + 0x33e0: b'\x113\xe0', + 0x33e1: b'\x113\xe1', + 0x33e2: b'\x113\xe2', + 0x33e3: b'\x113\xe3', + 0x33e4: b'\x113\xe4', + 0x33e5: b'\x113\xe5', + 0x33e6: b'\x113\xe6', + 0x33e7: b'\x113\xe7', + 0x33e8: b'\x113\xe8', + 0x33e9: b'\x113\xe9', + 0x33ea: b'\x113\xea', + 0x33eb: b'\x113\xeb', + 0x33ec: b'\x113\xec', + 0x33ed: b'\x113\xed', + 0x33ee: b'\x113\xee', + 0x33ef: b'\x113\xef', + 0x33f0: b'\x113\xf0', + 0x33f1: b'\x113\xf1', + 0x33f2: b'\x113\xf2', + 0x33f3: b'\x113\xf3', + 0x33f4: b'\x113\xf4', + 0x33f5: b'\x113\xf5', + 0x33f6: b'\x113\xf6', + 0x33f7: b'\x113\xf7', + 0x33f8: b'\x113\xf8', + 0x33f9: b'\x113\xf9', + 0x33fa: b'\x113\xfa', + 0x33fb: b'\x113\xfb', + 0x33fc: b'\x113\xfc', + 0x33fd: b'\x113\xfd', + 0x33fe: b'\x113\xfe', + 0x33ff: b'\x113\xff', + 0x3400: b'\x114\x00', + 0x3401: b'\x114\x01', + 0x3402: b'\x114\x02', + 0x3403: b'\x114\x03', + 0x3404: b'\x114\x04', + 0x3405: b'\x114\x05', + 0x3406: b'\x114\x06', + 0x3407: b'\x114\x07', + 0x3408: b'\x114\x08', + 0x3409: b'\x114\t', + 0x340a: b'\x114\n', + 0x340b: b'\x114\x0b', + 0x340c: b'\x114\x0c', + 0x340d: b'\x114\r', + 0x340e: b'\x114\x0e', + 0x340f: b'\x114\x0f', + 0x3410: b'\x114\x10', + 0x3411: b'\x114\x11', + 0x3412: b'\x114\x12', + 0x3413: b'\x114\x13', + 0x3414: b'\x114\x14', + 0x3415: b'\x114\x15', + 0x3416: b'\x114\x16', + 0x3417: b'\x114\x17', + 0x3418: b'\x114\x18', + 0x3419: b'\x114\x19', + 0x341a: b'\x114\x1a', + 0x341b: b'\x114\x1b', + 0x341c: b'\x114\x1c', + 0x341d: b'\x114\x1d', + 0x341e: b'\x114\x1e', + 0x341f: b'\x114\x1f', + 0x3420: b'\x114 ', + 0x3421: b'\x114!', + 0x3422: b'\x114"', + 0x3423: b'\x114#', + 0x3424: b'\x114$', + 0x3425: b'\x114%', + 0x3426: b'\x114&', + 0x3427: b"\x114'", + 0x3428: b'\x114(', + 0x3429: b'\x114)', + 0x342a: b'\x114*', + 0x342b: b'\x114+', + 0x342c: b'\x114,', + 0x342d: b'\x114-', + 0x342e: b'\x114.', + 0x342f: b'\x114/', + 0x3430: b'\x1140', + 0x3431: b'\x1141', + 0x3432: b'\x1142', + 0x3433: b'\x1143', + 0x3434: b'\x1144', + 0x3435: b'\x1145', + 0x3436: b'\x1146', + 0x3437: b'\x1147', + 0x3438: b'\x1148', + 0x3439: b'\x1149', + 0x343a: b'\x114:', + 0x343b: b'\x114;', + 0x343c: b'\x114<', + 0x343d: b'\x114=', + 0x343e: b'\x114>', + 0x343f: b'\x114?', + 0x3440: b'\x114@', + 0x3441: b'\x114A', + 0x3442: b'\x114B', + 0x3443: b'\x114C', + 0x3444: b'\x114D', + 0x3445: b'\x114E', + 0x3446: b'\x114F', + 0x3447: b'\x114G', + 0x3448: b'\x114H', + 0x3449: b'\x114I', + 0x344a: b'\x114J', + 0x344b: b'\x114K', + 0x344c: b'\x114L', + 0x344d: b'\x114M', + 0x344e: b'\x114N', + 0x344f: b'\x114O', + 0x3450: b'\x114P', + 0x3451: b'\x114Q', + 0x3452: b'\x114R', + 0x3453: b'\x114S', + 0x3454: b'\x114T', + 0x3455: b'\x114U', + 0x3456: b'\x114V', + 0x3457: b'\x114W', + 0x3458: b'\x114X', + 0x3459: b'\x114Y', + 0x345a: b'\x114Z', + 0x345b: b'\x114[', + 0x345c: b'\x114\\', + 0x345d: b'\x114]', + 0x345e: b'\x114^', + 0x345f: b'\x114_', + 0x3460: b'\x114`', + 0x3461: b'\x114a', + 0x3462: b'\x114b', + 0x3463: b'\x114c', + 0x3464: b'\x114d', + 0x3465: b'\x114e', + 0x3466: b'\x114f', + 0x3467: b'\x114g', + 0x3468: b'\x114h', + 0x3469: b'\x114i', + 0x346a: b'\x114j', + 0x346b: b'\x114k', + 0x346c: b'\x114l', + 0x346d: b'\x114m', + 0x346e: b'\x114n', + 0x346f: b'\x114o', + 0x3470: b'\x114p', + 0x3471: b'\x114q', + 0x3472: b'\x114r', + 0x3473: b'\x114s', + 0x3474: b'\x114t', + 0x3475: b'\x114u', + 0x3476: b'\x114v', + 0x3477: b'\x114w', + 0x3478: b'\x114x', + 0x3479: b'\x114y', + 0x347a: b'\x114z', + 0x347b: b'\x114{', + 0x347c: b'\x114|', + 0x347d: b'\x114}', + 0x347e: b'\x114~', + 0x347f: b'\x114\x7f', + 0x3480: b'\x114\x80', + 0x3481: b'\x114\x81', + 0x3482: b'\x114\x82', + 0x3483: b'\x114\x83', + 0x3484: b'\x114\x84', + 0x3485: b'\x114\x85', + 0x3486: b'\x114\x86', + 0x3487: b'\x114\x87', + 0x3488: b'\x114\x88', + 0x3489: b'\x114\x89', + 0x348a: b'\x114\x8a', + 0x348b: b'\x114\x8b', + 0x348c: b'\x114\x8c', + 0x348d: b'\x114\x8d', + 0x348e: b'\x114\x8e', + 0x348f: b'\x114\x8f', + 0x3490: b'\x114\x90', + 0x3491: b'\x114\x91', + 0x3492: b'\x114\x92', + 0x3493: b'\x114\x93', + 0x3494: b'\x114\x94', + 0x3495: b'\x114\x95', + 0x3496: b'\x114\x96', + 0x3497: b'\x114\x97', + 0x3498: b'\x114\x98', + 0x3499: b'\x114\x99', + 0x349a: b'\x114\x9a', + 0x349b: b'\x114\x9b', + 0x349c: b'\x114\x9c', + 0x349d: b'\x114\x9d', + 0x349e: b'\x114\x9e', + 0x349f: b'\x114\x9f', + 0x34a0: b'\x114\xa0', + 0x34a1: b'\x114\xa1', + 0x34a2: b'\x114\xa2', + 0x34a3: b'\x114\xa3', + 0x34a4: b'\x114\xa4', + 0x34a5: b'\x114\xa5', + 0x34a6: b'\x114\xa6', + 0x34a7: b'\x114\xa7', + 0x34a8: b'\x114\xa8', + 0x34a9: b'\x114\xa9', + 0x34aa: b'\x114\xaa', + 0x34ab: b'\x114\xab', + 0x34ac: b'\x114\xac', + 0x34ad: b'\x114\xad', + 0x34ae: b'\x114\xae', + 0x34af: b'\x114\xaf', + 0x34b0: b'\x114\xb0', + 0x34b1: b'\x114\xb1', + 0x34b2: b'\x114\xb2', + 0x34b3: b'\x114\xb3', + 0x34b4: b'\x114\xb4', + 0x34b5: b'\x114\xb5', + 0x34b6: b'\x114\xb6', + 0x34b7: b'\x114\xb7', + 0x34b8: b'\x114\xb8', + 0x34b9: b'\x114\xb9', + 0x34ba: b'\x114\xba', + 0x34bb: b'\x114\xbb', + 0x34bc: b'\x114\xbc', + 0x34bd: b'\x114\xbd', + 0x34be: b'\x114\xbe', + 0x34bf: b'\x114\xbf', + 0x34c0: b'\x114\xc0', + 0x34c1: b'\x114\xc1', + 0x34c2: b'\x114\xc2', + 0x34c3: b'\x114\xc3', + 0x34c4: b'\x114\xc4', + 0x34c5: b'\x114\xc5', + 0x34c6: b'\x114\xc6', + 0x34c7: b'\x114\xc7', + 0x34c8: b'\x114\xc8', + 0x34c9: b'\x114\xc9', + 0x34ca: b'\x114\xca', + 0x34cb: b'\x114\xcb', + 0x34cc: b'\x114\xcc', + 0x34cd: b'\x114\xcd', + 0x34ce: b'\x114\xce', + 0x34cf: b'\x114\xcf', + 0x34d0: b'\x114\xd0', + 0x34d1: b'\x114\xd1', + 0x34d2: b'\x114\xd2', + 0x34d3: b'\x114\xd3', + 0x34d4: b'\x114\xd4', + 0x34d5: b'\x114\xd5', + 0x34d6: b'\x114\xd6', + 0x34d7: b'\x114\xd7', + 0x34d8: b'\x114\xd8', + 0x34d9: b'\x114\xd9', + 0x34da: b'\x114\xda', + 0x34db: b'\x114\xdb', + 0x34dc: b'\x114\xdc', + 0x34dd: b'\x114\xdd', + 0x34de: b'\x114\xde', + 0x34df: b'\x114\xdf', + 0x34e0: b'\x114\xe0', + 0x34e1: b'\x114\xe1', + 0x34e2: b'\x114\xe2', + 0x34e3: b'\x114\xe3', + 0x34e4: b'\x114\xe4', + 0x34e5: b'\x114\xe5', + 0x34e6: b'\x114\xe6', + 0x34e7: b'\x114\xe7', + 0x34e8: b'\x114\xe8', + 0x34e9: b'\x114\xe9', + 0x34ea: b'\x114\xea', + 0x34eb: b'\x114\xeb', + 0x34ec: b'\x114\xec', + 0x34ed: b'\x114\xed', + 0x34ee: b'\x114\xee', + 0x34ef: b'\x114\xef', + 0x34f0: b'\x114\xf0', + 0x34f1: b'\x114\xf1', + 0x34f2: b'\x114\xf2', + 0x34f3: b'\x114\xf3', + 0x34f4: b'\x114\xf4', + 0x34f5: b'\x114\xf5', + 0x34f6: b'\x114\xf6', + 0x34f7: b'\x114\xf7', + 0x34f8: b'\x114\xf8', + 0x34f9: b'\x114\xf9', + 0x34fa: b'\x114\xfa', + 0x34fb: b'\x114\xfb', + 0x34fc: b'\x114\xfc', + 0x34fd: b'\x114\xfd', + 0x34fe: b'\x114\xfe', + 0x34ff: b'\x114\xff', + 0x3500: b'\x115\x00', + 0x3501: b'\x115\x01', + 0x3502: b'\x115\x02', + 0x3503: b'\x115\x03', + 0x3504: b'\x115\x04', + 0x3505: b'\x115\x05', + 0x3506: b'\x115\x06', + 0x3507: b'\x115\x07', + 0x3508: b'\x115\x08', + 0x3509: b'\x115\t', + 0x350a: b'\x115\n', + 0x350b: b'\x115\x0b', + 0x350c: b'\x115\x0c', + 0x350d: b'\x115\r', + 0x350e: b'\x115\x0e', + 0x350f: b'\x115\x0f', + 0x3510: b'\x115\x10', + 0x3511: b'\x115\x11', + 0x3512: b'\x115\x12', + 0x3513: b'\x115\x13', + 0x3514: b'\x115\x14', + 0x3515: b'\x115\x15', + 0x3516: b'\x115\x16', + 0x3517: b'\x115\x17', + 0x3518: b'\x115\x18', + 0x3519: b'\x115\x19', + 0x351a: b'\x115\x1a', + 0x351b: b'\x115\x1b', + 0x351c: b'\x115\x1c', + 0x351d: b'\x115\x1d', + 0x351e: b'\x115\x1e', + 0x351f: b'\x115\x1f', + 0x3520: b'\x115 ', + 0x3521: b'\x115!', + 0x3522: b'\x115"', + 0x3523: b'\x115#', + 0x3524: b'\x115$', + 0x3525: b'\x115%', + 0x3526: b'\x115&', + 0x3527: b"\x115'", + 0x3528: b'\x115(', + 0x3529: b'\x115)', + 0x352a: b'\x115*', + 0x352b: b'\x115+', + 0x352c: b'\x115,', + 0x352d: b'\x115-', + 0x352e: b'\x115.', + 0x352f: b'\x115/', + 0x3530: b'\x1150', + 0x3531: b'\x1151', + 0x3532: b'\x1152', + 0x3533: b'\x1153', + 0x3534: b'\x1154', + 0x3535: b'\x1155', + 0x3536: b'\x1156', + 0x3537: b'\x1157', + 0x3538: b'\x1158', + 0x3539: b'\x1159', + 0x353a: b'\x115:', + 0x353b: b'\x115;', + 0x353c: b'\x115<', + 0x353d: b'\x115=', + 0x353e: b'\x115>', + 0x353f: b'\x115?', + 0x3540: b'\x115@', + 0x3541: b'\x115A', + 0x3542: b'\x115B', + 0x3543: b'\x115C', + 0x3544: b'\x115D', + 0x3545: b'\x115E', + 0x3546: b'\x115F', + 0x3547: b'\x115G', + 0x3548: b'\x115H', + 0x3549: b'\x115I', + 0x354a: b'\x115J', + 0x354b: b'\x115K', + 0x354c: b'\x115L', + 0x354d: b'\x115M', + 0x354e: b'\x115N', + 0x354f: b'\x115O', + 0x3550: b'\x115P', + 0x3551: b'\x115Q', + 0x3552: b'\x115R', + 0x3553: b'\x115S', + 0x3554: b'\x115T', + 0x3555: b'\x115U', + 0x3556: b'\x115V', + 0x3557: b'\x115W', + 0x3558: b'\x115X', + 0x3559: b'\x115Y', + 0x355a: b'\x115Z', + 0x355b: b'\x115[', + 0x355c: b'\x115\\', + 0x355d: b'\x115]', + 0x355e: b'\x115^', + 0x355f: b'\x115_', + 0x3560: b'\x115`', + 0x3561: b'\x115a', + 0x3562: b'\x115b', + 0x3563: b'\x115c', + 0x3564: b'\x115d', + 0x3565: b'\x115e', + 0x3566: b'\x115f', + 0x3567: b'\x115g', + 0x3568: b'\x115h', + 0x3569: b'\x115i', + 0x356a: b'\x115j', + 0x356b: b'\x115k', + 0x356c: b'\x115l', + 0x356d: b'\x115m', + 0x356e: b'\x115n', + 0x356f: b'\x115o', + 0x3570: b'\x115p', + 0x3571: b'\x115q', + 0x3572: b'\x115r', + 0x3573: b'\x115s', + 0x3574: b'\x115t', + 0x3575: b'\x115u', + 0x3576: b'\x115v', + 0x3577: b'\x115w', + 0x3578: b'\x115x', + 0x3579: b'\x115y', + 0x357a: b'\x115z', + 0x357b: b'\x115{', + 0x357c: b'\x115|', + 0x357d: b'\x115}', + 0x357e: b'\x115~', + 0x357f: b'\x115\x7f', + 0x3580: b'\x115\x80', + 0x3581: b'\x115\x81', + 0x3582: b'\x115\x82', + 0x3583: b'\x115\x83', + 0x3584: b'\x115\x84', + 0x3585: b'\x115\x85', + 0x3586: b'\x115\x86', + 0x3587: b'\x115\x87', + 0x3588: b'\x115\x88', + 0x3589: b'\x115\x89', + 0x358a: b'\x115\x8a', + 0x358b: b'\x115\x8b', + 0x358c: b'\x115\x8c', + 0x358d: b'\x115\x8d', + 0x358e: b'\x115\x8e', + 0x358f: b'\x115\x8f', + 0x3590: b'\x115\x90', + 0x3591: b'\x115\x91', + 0x3592: b'\x115\x92', + 0x3593: b'\x115\x93', + 0x3594: b'\x115\x94', + 0x3595: b'\x115\x95', + 0x3596: b'\x115\x96', + 0x3597: b'\x115\x97', + 0x3598: b'\x115\x98', + 0x3599: b'\x115\x99', + 0x359a: b'\x115\x9a', + 0x359b: b'\x115\x9b', + 0x359c: b'\x115\x9c', + 0x359d: b'\x115\x9d', + 0x359e: b'\x115\x9e', + 0x359f: b'\x115\x9f', + 0x35a0: b'\x115\xa0', + 0x35a1: b'\x115\xa1', + 0x35a2: b'\x115\xa2', + 0x35a3: b'\x115\xa3', + 0x35a4: b'\x115\xa4', + 0x35a5: b'\x115\xa5', + 0x35a6: b'\x115\xa6', + 0x35a7: b'\x115\xa7', + 0x35a8: b'\x115\xa8', + 0x35a9: b'\x115\xa9', + 0x35aa: b'\x115\xaa', + 0x35ab: b'\x115\xab', + 0x35ac: b'\x115\xac', + 0x35ad: b'\x115\xad', + 0x35ae: b'\x115\xae', + 0x35af: b'\x115\xaf', + 0x35b0: b'\x115\xb0', + 0x35b1: b'\x115\xb1', + 0x35b2: b'\x115\xb2', + 0x35b3: b'\x115\xb3', + 0x35b4: b'\x115\xb4', + 0x35b5: b'\x115\xb5', + 0x35b6: b'\x115\xb6', + 0x35b7: b'\x115\xb7', + 0x35b8: b'\x115\xb8', + 0x35b9: b'\x115\xb9', + 0x35ba: b'\x115\xba', + 0x35bb: b'\x115\xbb', + 0x35bc: b'\x115\xbc', + 0x35bd: b'\x115\xbd', + 0x35be: b'\x115\xbe', + 0x35bf: b'\x115\xbf', + 0x35c0: b'\x115\xc0', + 0x35c1: b'\x115\xc1', + 0x35c2: b'\x115\xc2', + 0x35c3: b'\x115\xc3', + 0x35c4: b'\x115\xc4', + 0x35c5: b'\x115\xc5', + 0x35c6: b'\x115\xc6', + 0x35c7: b'\x115\xc7', + 0x35c8: b'\x115\xc8', + 0x35c9: b'\x115\xc9', + 0x35ca: b'\x115\xca', + 0x35cb: b'\x115\xcb', + 0x35cc: b'\x115\xcc', + 0x35cd: b'\x115\xcd', + 0x35ce: b'\x115\xce', + 0x35cf: b'\x115\xcf', + 0x35d0: b'\x115\xd0', + 0x35d1: b'\x115\xd1', + 0x35d2: b'\x115\xd2', + 0x35d3: b'\x115\xd3', + 0x35d4: b'\x115\xd4', + 0x35d5: b'\x115\xd5', + 0x35d6: b'\x115\xd6', + 0x35d7: b'\x115\xd7', + 0x35d8: b'\x115\xd8', + 0x35d9: b'\x115\xd9', + 0x35da: b'\x115\xda', + 0x35db: b'\x115\xdb', + 0x35dc: b'\x115\xdc', + 0x35dd: b'\x115\xdd', + 0x35de: b'\x115\xde', + 0x35df: b'\x115\xdf', + 0x35e0: b'\x115\xe0', + 0x35e1: b'\x115\xe1', + 0x35e2: b'\x115\xe2', + 0x35e3: b'\x115\xe3', + 0x35e4: b'\x115\xe4', + 0x35e5: b'\x115\xe5', + 0x35e6: b'\x115\xe6', + 0x35e7: b'\x115\xe7', + 0x35e8: b'\x115\xe8', + 0x35e9: b'\x115\xe9', + 0x35ea: b'\x115\xea', + 0x35eb: b'\x115\xeb', + 0x35ec: b'\x115\xec', + 0x35ed: b'\x115\xed', + 0x35ee: b'\x115\xee', + 0x35ef: b'\x115\xef', + 0x35f0: b'\x115\xf0', + 0x35f1: b'\x115\xf1', + 0x35f2: b'\x115\xf2', + 0x35f3: b'\x115\xf3', + 0x35f4: b'\x115\xf4', + 0x35f5: b'\x115\xf5', + 0x35f6: b'\x115\xf6', + 0x35f7: b'\x115\xf7', + 0x35f8: b'\x115\xf8', + 0x35f9: b'\x115\xf9', + 0x35fa: b'\x115\xfa', + 0x35fb: b'\x115\xfb', + 0x35fc: b'\x115\xfc', + 0x35fd: b'\x115\xfd', + 0x35fe: b'\x115\xfe', + 0x35ff: b'\x115\xff', + 0x3600: b'\x116\x00', + 0x3601: b'\x116\x01', + 0x3602: b'\x116\x02', + 0x3603: b'\x116\x03', + 0x3604: b'\x116\x04', + 0x3605: b'\x116\x05', + 0x3606: b'\x116\x06', + 0x3607: b'\x116\x07', + 0x3608: b'\x116\x08', + 0x3609: b'\x116\t', + 0x360a: b'\x116\n', + 0x360b: b'\x116\x0b', + 0x360c: b'\x116\x0c', + 0x360d: b'\x116\r', + 0x360e: b'\x116\x0e', + 0x360f: b'\x116\x0f', + 0x3610: b'\x116\x10', + 0x3611: b'\x116\x11', + 0x3612: b'\x116\x12', + 0x3613: b'\x116\x13', + 0x3614: b'\x116\x14', + 0x3615: b'\x116\x15', + 0x3616: b'\x116\x16', + 0x3617: b'\x116\x17', + 0x3618: b'\x116\x18', + 0x3619: b'\x116\x19', + 0x361a: b'\x116\x1a', + 0x361b: b'\x116\x1b', + 0x361c: b'\x116\x1c', + 0x361d: b'\x116\x1d', + 0x361e: b'\x116\x1e', + 0x361f: b'\x116\x1f', + 0x3620: b'\x116 ', + 0x3621: b'\x116!', + 0x3622: b'\x116"', + 0x3623: b'\x116#', + 0x3624: b'\x116$', + 0x3625: b'\x116%', + 0x3626: b'\x116&', + 0x3627: b"\x116'", + 0x3628: b'\x116(', + 0x3629: b'\x116)', + 0x362a: b'\x116*', + 0x362b: b'\x116+', + 0x362c: b'\x116,', + 0x362d: b'\x116-', + 0x362e: b'\x116.', + 0x362f: b'\x116/', + 0x3630: b'\x1160', + 0x3631: b'\x1161', + 0x3632: b'\x1162', + 0x3633: b'\x1163', + 0x3634: b'\x1164', + 0x3635: b'\x1165', + 0x3636: b'\x1166', + 0x3637: b'\x1167', + 0x3638: b'\x1168', + 0x3639: b'\x1169', + 0x363a: b'\x116:', + 0x363b: b'\x116;', + 0x363c: b'\x116<', + 0x363d: b'\x116=', + 0x363e: b'\x116>', + 0x363f: b'\x116?', + 0x3640: b'\x116@', + 0x3641: b'\x116A', + 0x3642: b'\x116B', + 0x3643: b'\x116C', + 0x3644: b'\x116D', + 0x3645: b'\x116E', + 0x3646: b'\x116F', + 0x3647: b'\x116G', + 0x3648: b'\x116H', + 0x3649: b'\x116I', + 0x364a: b'\x116J', + 0x364b: b'\x116K', + 0x364c: b'\x116L', + 0x364d: b'\x116M', + 0x364e: b'\x116N', + 0x364f: b'\x116O', + 0x3650: b'\x116P', + 0x3651: b'\x116Q', + 0x3652: b'\x116R', + 0x3653: b'\x116S', + 0x3654: b'\x116T', + 0x3655: b'\x116U', + 0x3656: b'\x116V', + 0x3657: b'\x116W', + 0x3658: b'\x116X', + 0x3659: b'\x116Y', + 0x365a: b'\x116Z', + 0x365b: b'\x116[', + 0x365c: b'\x116\\', + 0x365d: b'\x116]', + 0x365e: b'\x116^', + 0x365f: b'\x116_', + 0x3660: b'\x116`', + 0x3661: b'\x116a', + 0x3662: b'\x116b', + 0x3663: b'\x116c', + 0x3664: b'\x116d', + 0x3665: b'\x116e', + 0x3666: b'\x116f', + 0x3667: b'\x116g', + 0x3668: b'\x116h', + 0x3669: b'\x116i', + 0x366a: b'\x116j', + 0x366b: b'\x116k', + 0x366c: b'\x116l', + 0x366d: b'\x116m', + 0x366e: b'\x116n', + 0x366f: b'\x116o', + 0x3670: b'\x116p', + 0x3671: b'\x116q', + 0x3672: b'\x116r', + 0x3673: b'\x116s', + 0x3674: b'\x116t', + 0x3675: b'\x116u', + 0x3676: b'\x116v', + 0x3677: b'\x116w', + 0x3678: b'\x116x', + 0x3679: b'\x116y', + 0x367a: b'\x116z', + 0x367b: b'\x116{', + 0x367c: b'\x116|', + 0x367d: b'\x116}', + 0x367e: b'\x116~', + 0x367f: b'\x116\x7f', + 0x3680: b'\x116\x80', + 0x3681: b'\x116\x81', + 0x3682: b'\x116\x82', + 0x3683: b'\x116\x83', + 0x3684: b'\x116\x84', + 0x3685: b'\x116\x85', + 0x3686: b'\x116\x86', + 0x3687: b'\x116\x87', + 0x3688: b'\x116\x88', + 0x3689: b'\x116\x89', + 0x368a: b'\x116\x8a', + 0x368b: b'\x116\x8b', + 0x368c: b'\x116\x8c', + 0x368d: b'\x116\x8d', + 0x368e: b'\x116\x8e', + 0x368f: b'\x116\x8f', + 0x3690: b'\x116\x90', + 0x3691: b'\x116\x91', + 0x3692: b'\x116\x92', + 0x3693: b'\x116\x93', + 0x3694: b'\x116\x94', + 0x3695: b'\x116\x95', + 0x3696: b'\x116\x96', + 0x3697: b'\x116\x97', + 0x3698: b'\x116\x98', + 0x3699: b'\x116\x99', + 0x369a: b'\x116\x9a', + 0x369b: b'\x116\x9b', + 0x369c: b'\x116\x9c', + 0x369d: b'\x116\x9d', + 0x369e: b'\x116\x9e', + 0x369f: b'\x116\x9f', + 0x36a0: b'\x116\xa0', + 0x36a1: b'\x116\xa1', + 0x36a2: b'\x116\xa2', + 0x36a3: b'\x116\xa3', + 0x36a4: b'\x116\xa4', + 0x36a5: b'\x116\xa5', + 0x36a6: b'\x116\xa6', + 0x36a7: b'\x116\xa7', + 0x36a8: b'\x116\xa8', + 0x36a9: b'\x116\xa9', + 0x36aa: b'\x116\xaa', + 0x36ab: b'\x116\xab', + 0x36ac: b'\x116\xac', + 0x36ad: b'\x116\xad', + 0x36ae: b'\x116\xae', + 0x36af: b'\x116\xaf', + 0x36b0: b'\x116\xb0', + 0x36b1: b'\x116\xb1', + 0x36b2: b'\x116\xb2', + 0x36b3: b'\x116\xb3', + 0x36b4: b'\x116\xb4', + 0x36b5: b'\x116\xb5', + 0x36b6: b'\x116\xb6', + 0x36b7: b'\x116\xb7', + 0x36b8: b'\x116\xb8', + 0x36b9: b'\x116\xb9', + 0x36ba: b'\x116\xba', + 0x36bb: b'\x116\xbb', + 0x36bc: b'\x116\xbc', + 0x36bd: b'\x116\xbd', + 0x36be: b'\x116\xbe', + 0x36bf: b'\x116\xbf', + 0x36c0: b'\x116\xc0', + 0x36c1: b'\x116\xc1', + 0x36c2: b'\x116\xc2', + 0x36c3: b'\x116\xc3', + 0x36c4: b'\x116\xc4', + 0x36c5: b'\x116\xc5', + 0x36c6: b'\x116\xc6', + 0x36c7: b'\x116\xc7', + 0x36c8: b'\x116\xc8', + 0x36c9: b'\x116\xc9', + 0x36ca: b'\x116\xca', + 0x36cb: b'\x116\xcb', + 0x36cc: b'\x116\xcc', + 0x36cd: b'\x116\xcd', + 0x36ce: b'\x116\xce', + 0x36cf: b'\x116\xcf', + 0x36d0: b'\x116\xd0', + 0x36d1: b'\x116\xd1', + 0x36d2: b'\x116\xd2', + 0x36d3: b'\x116\xd3', + 0x36d4: b'\x116\xd4', + 0x36d5: b'\x116\xd5', + 0x36d6: b'\x116\xd6', + 0x36d7: b'\x116\xd7', + 0x36d8: b'\x116\xd8', + 0x36d9: b'\x116\xd9', + 0x36da: b'\x116\xda', + 0x36db: b'\x116\xdb', + 0x36dc: b'\x116\xdc', + 0x36dd: b'\x116\xdd', + 0x36de: b'\x116\xde', + 0x36df: b'\x116\xdf', + 0x36e0: b'\x116\xe0', + 0x36e1: b'\x116\xe1', + 0x36e2: b'\x116\xe2', + 0x36e3: b'\x116\xe3', + 0x36e4: b'\x116\xe4', + 0x36e5: b'\x116\xe5', + 0x36e6: b'\x116\xe6', + 0x36e7: b'\x116\xe7', + 0x36e8: b'\x116\xe8', + 0x36e9: b'\x116\xe9', + 0x36ea: b'\x116\xea', + 0x36eb: b'\x116\xeb', + 0x36ec: b'\x116\xec', + 0x36ed: b'\x116\xed', + 0x36ee: b'\x116\xee', + 0x36ef: b'\x116\xef', + 0x36f0: b'\x116\xf0', + 0x36f1: b'\x116\xf1', + 0x36f2: b'\x116\xf2', + 0x36f3: b'\x116\xf3', + 0x36f4: b'\x116\xf4', + 0x36f5: b'\x116\xf5', + 0x36f6: b'\x116\xf6', + 0x36f7: b'\x116\xf7', + 0x36f8: b'\x116\xf8', + 0x36f9: b'\x116\xf9', + 0x36fa: b'\x116\xfa', + 0x36fb: b'\x116\xfb', + 0x36fc: b'\x116\xfc', + 0x36fd: b'\x116\xfd', + 0x36fe: b'\x116\xfe', + 0x36ff: b'\x116\xff', + 0x3700: b'\x117\x00', + 0x3701: b'\x117\x01', + 0x3702: b'\x117\x02', + 0x3703: b'\x117\x03', + 0x3704: b'\x117\x04', + 0x3705: b'\x117\x05', + 0x3706: b'\x117\x06', + 0x3707: b'\x117\x07', + 0x3708: b'\x117\x08', + 0x3709: b'\x117\t', + 0x370a: b'\x117\n', + 0x370b: b'\x117\x0b', + 0x370c: b'\x117\x0c', + 0x370d: b'\x117\r', + 0x370e: b'\x117\x0e', + 0x370f: b'\x117\x0f', + 0x3710: b'\x117\x10', + 0x3711: b'\x117\x11', + 0x3712: b'\x117\x12', + 0x3713: b'\x117\x13', + 0x3714: b'\x117\x14', + 0x3715: b'\x117\x15', + 0x3716: b'\x117\x16', + 0x3717: b'\x117\x17', + 0x3718: b'\x117\x18', + 0x3719: b'\x117\x19', + 0x371a: b'\x117\x1a', + 0x371b: b'\x117\x1b', + 0x371c: b'\x117\x1c', + 0x371d: b'\x117\x1d', + 0x371e: b'\x117\x1e', + 0x371f: b'\x117\x1f', + 0x3720: b'\x117 ', + 0x3721: b'\x117!', + 0x3722: b'\x117"', + 0x3723: b'\x117#', + 0x3724: b'\x117$', + 0x3725: b'\x117%', + 0x3726: b'\x117&', + 0x3727: b"\x117'", + 0x3728: b'\x117(', + 0x3729: b'\x117)', + 0x372a: b'\x117*', + 0x372b: b'\x117+', + 0x372c: b'\x117,', + 0x372d: b'\x117-', + 0x372e: b'\x117.', + 0x372f: b'\x117/', + 0x3730: b'\x1170', + 0x3731: b'\x1171', + 0x3732: b'\x1172', + 0x3733: b'\x1173', + 0x3734: b'\x1174', + 0x3735: b'\x1175', + 0x3736: b'\x1176', + 0x3737: b'\x1177', + 0x3738: b'\x1178', + 0x3739: b'\x1179', + 0x373a: b'\x117:', + 0x373b: b'\x117;', + 0x373c: b'\x117<', + 0x373d: b'\x117=', + 0x373e: b'\x117>', + 0x373f: b'\x117?', + 0x3740: b'\x117@', + 0x3741: b'\x117A', + 0x3742: b'\x117B', + 0x3743: b'\x117C', + 0x3744: b'\x117D', + 0x3745: b'\x117E', + 0x3746: b'\x117F', + 0x3747: b'\x117G', + 0x3748: b'\x117H', + 0x3749: b'\x117I', + 0x374a: b'\x117J', + 0x374b: b'\x117K', + 0x374c: b'\x117L', + 0x374d: b'\x117M', + 0x374e: b'\x117N', + 0x374f: b'\x117O', + 0x3750: b'\x117P', + 0x3751: b'\x117Q', + 0x3752: b'\x117R', + 0x3753: b'\x117S', + 0x3754: b'\x117T', + 0x3755: b'\x117U', + 0x3756: b'\x117V', + 0x3757: b'\x117W', + 0x3758: b'\x117X', + 0x3759: b'\x117Y', + 0x375a: b'\x117Z', + 0x375b: b'\x117[', + 0x375c: b'\x117\\', + 0x375d: b'\x117]', + 0x375e: b'\x117^', + 0x375f: b'\x117_', + 0x3760: b'\x117`', + 0x3761: b'\x117a', + 0x3762: b'\x117b', + 0x3763: b'\x117c', + 0x3764: b'\x117d', + 0x3765: b'\x117e', + 0x3766: b'\x117f', + 0x3767: b'\x117g', + 0x3768: b'\x117h', + 0x3769: b'\x117i', + 0x376a: b'\x117j', + 0x376b: b'\x117k', + 0x376c: b'\x117l', + 0x376d: b'\x117m', + 0x376e: b'\x117n', + 0x376f: b'\x117o', + 0x3770: b'\x117p', + 0x3771: b'\x117q', + 0x3772: b'\x117r', + 0x3773: b'\x117s', + 0x3774: b'\x117t', + 0x3775: b'\x117u', + 0x3776: b'\x117v', + 0x3777: b'\x117w', + 0x3778: b'\x117x', + 0x3779: b'\x117y', + 0x377a: b'\x117z', + 0x377b: b'\x117{', + 0x377c: b'\x117|', + 0x377d: b'\x117}', + 0x377e: b'\x117~', + 0x377f: b'\x117\x7f', + 0x3780: b'\x117\x80', + 0x3781: b'\x117\x81', + 0x3782: b'\x117\x82', + 0x3783: b'\x117\x83', + 0x3784: b'\x117\x84', + 0x3785: b'\x117\x85', + 0x3786: b'\x117\x86', + 0x3787: b'\x117\x87', + 0x3788: b'\x117\x88', + 0x3789: b'\x117\x89', + 0x378a: b'\x117\x8a', + 0x378b: b'\x117\x8b', + 0x378c: b'\x117\x8c', + 0x378d: b'\x117\x8d', + 0x378e: b'\x117\x8e', + 0x378f: b'\x117\x8f', + 0x3790: b'\x117\x90', + 0x3791: b'\x117\x91', + 0x3792: b'\x117\x92', + 0x3793: b'\x117\x93', + 0x3794: b'\x117\x94', + 0x3795: b'\x117\x95', + 0x3796: b'\x117\x96', + 0x3797: b'\x117\x97', + 0x3798: b'\x117\x98', + 0x3799: b'\x117\x99', + 0x379a: b'\x117\x9a', + 0x379b: b'\x117\x9b', + 0x379c: b'\x117\x9c', + 0x379d: b'\x117\x9d', + 0x379e: b'\x117\x9e', + 0x379f: b'\x117\x9f', + 0x37a0: b'\x117\xa0', + 0x37a1: b'\x117\xa1', + 0x37a2: b'\x117\xa2', + 0x37a3: b'\x117\xa3', + 0x37a4: b'\x117\xa4', + 0x37a5: b'\x117\xa5', + 0x37a6: b'\x117\xa6', + 0x37a7: b'\x117\xa7', + 0x37a8: b'\x117\xa8', + 0x37a9: b'\x117\xa9', + 0x37aa: b'\x117\xaa', + 0x37ab: b'\x117\xab', + 0x37ac: b'\x117\xac', + 0x37ad: b'\x117\xad', + 0x37ae: b'\x117\xae', + 0x37af: b'\x117\xaf', + 0x37b0: b'\x117\xb0', + 0x37b1: b'\x117\xb1', + 0x37b2: b'\x117\xb2', + 0x37b3: b'\x117\xb3', + 0x37b4: b'\x117\xb4', + 0x37b5: b'\x117\xb5', + 0x37b6: b'\x117\xb6', + 0x37b7: b'\x117\xb7', + 0x37b8: b'\x117\xb8', + 0x37b9: b'\x117\xb9', + 0x37ba: b'\x117\xba', + 0x37bb: b'\x117\xbb', + 0x37bc: b'\x117\xbc', + 0x37bd: b'\x117\xbd', + 0x37be: b'\x117\xbe', + 0x37bf: b'\x117\xbf', + 0x37c0: b'\x117\xc0', + 0x37c1: b'\x117\xc1', + 0x37c2: b'\x117\xc2', + 0x37c3: b'\x117\xc3', + 0x37c4: b'\x117\xc4', + 0x37c5: b'\x117\xc5', + 0x37c6: b'\x117\xc6', + 0x37c7: b'\x117\xc7', + 0x37c8: b'\x117\xc8', + 0x37c9: b'\x117\xc9', + 0x37ca: b'\x117\xca', + 0x37cb: b'\x117\xcb', + 0x37cc: b'\x117\xcc', + 0x37cd: b'\x117\xcd', + 0x37ce: b'\x117\xce', + 0x37cf: b'\x117\xcf', + 0x37d0: b'\x117\xd0', + 0x37d1: b'\x117\xd1', + 0x37d2: b'\x117\xd2', + 0x37d3: b'\x117\xd3', + 0x37d4: b'\x117\xd4', + 0x37d5: b'\x117\xd5', + 0x37d6: b'\x117\xd6', + 0x37d7: b'\x117\xd7', + 0x37d8: b'\x117\xd8', + 0x37d9: b'\x117\xd9', + 0x37da: b'\x117\xda', + 0x37db: b'\x117\xdb', + 0x37dc: b'\x117\xdc', + 0x37dd: b'\x117\xdd', + 0x37de: b'\x117\xde', + 0x37df: b'\x117\xdf', + 0x37e0: b'\x117\xe0', + 0x37e1: b'\x117\xe1', + 0x37e2: b'\x117\xe2', + 0x37e3: b'\x117\xe3', + 0x37e4: b'\x117\xe4', + 0x37e5: b'\x117\xe5', + 0x37e6: b'\x117\xe6', + 0x37e7: b'\x117\xe7', + 0x37e8: b'\x117\xe8', + 0x37e9: b'\x117\xe9', + 0x37ea: b'\x117\xea', + 0x37eb: b'\x117\xeb', + 0x37ec: b'\x117\xec', + 0x37ed: b'\x117\xed', + 0x37ee: b'\x117\xee', + 0x37ef: b'\x117\xef', + 0x37f0: b'\x117\xf0', + 0x37f1: b'\x117\xf1', + 0x37f2: b'\x117\xf2', + 0x37f3: b'\x117\xf3', + 0x37f4: b'\x117\xf4', + 0x37f5: b'\x117\xf5', + 0x37f6: b'\x117\xf6', + 0x37f7: b'\x117\xf7', + 0x37f8: b'\x117\xf8', + 0x37f9: b'\x117\xf9', + 0x37fa: b'\x117\xfa', + 0x37fb: b'\x117\xfb', + 0x37fc: b'\x117\xfc', + 0x37fd: b'\x117\xfd', + 0x37fe: b'\x117\xfe', + 0x37ff: b'\x117\xff', + 0x3800: b'\x118\x00', + 0x3801: b'\x118\x01', + 0x3802: b'\x118\x02', + 0x3803: b'\x118\x03', + 0x3804: b'\x118\x04', + 0x3805: b'\x118\x05', + 0x3806: b'\x118\x06', + 0x3807: b'\x118\x07', + 0x3808: b'\x118\x08', + 0x3809: b'\x118\t', + 0x380a: b'\x118\n', + 0x380b: b'\x118\x0b', + 0x380c: b'\x118\x0c', + 0x380d: b'\x118\r', + 0x380e: b'\x118\x0e', + 0x380f: b'\x118\x0f', + 0x3810: b'\x118\x10', + 0x3811: b'\x118\x11', + 0x3812: b'\x118\x12', + 0x3813: b'\x118\x13', + 0x3814: b'\x118\x14', + 0x3815: b'\x118\x15', + 0x3816: b'\x118\x16', + 0x3817: b'\x118\x17', + 0x3818: b'\x118\x18', + 0x3819: b'\x118\x19', + 0x381a: b'\x118\x1a', + 0x381b: b'\x118\x1b', + 0x381c: b'\x118\x1c', + 0x381d: b'\x118\x1d', + 0x381e: b'\x118\x1e', + 0x381f: b'\x118\x1f', + 0x3820: b'\x118 ', + 0x3821: b'\x118!', + 0x3822: b'\x118"', + 0x3823: b'\x118#', + 0x3824: b'\x118$', + 0x3825: b'\x118%', + 0x3826: b'\x118&', + 0x3827: b"\x118'", + 0x3828: b'\x118(', + 0x3829: b'\x118)', + 0x382a: b'\x118*', + 0x382b: b'\x118+', + 0x382c: b'\x118,', + 0x382d: b'\x118-', + 0x382e: b'\x118.', + 0x382f: b'\x118/', + 0x3830: b'\x1180', + 0x3831: b'\x1181', + 0x3832: b'\x1182', + 0x3833: b'\x1183', + 0x3834: b'\x1184', + 0x3835: b'\x1185', + 0x3836: b'\x1186', + 0x3837: b'\x1187', + 0x3838: b'\x1188', + 0x3839: b'\x1189', + 0x383a: b'\x118:', + 0x383b: b'\x118;', + 0x383c: b'\x118<', + 0x383d: b'\x118=', + 0x383e: b'\x118>', + 0x383f: b'\x118?', + 0x3840: b'\x118@', + 0x3841: b'\x118A', + 0x3842: b'\x118B', + 0x3843: b'\x118C', + 0x3844: b'\x118D', + 0x3845: b'\x118E', + 0x3846: b'\x118F', + 0x3847: b'\x118G', + 0x3848: b'\x118H', + 0x3849: b'\x118I', + 0x384a: b'\x118J', + 0x384b: b'\x118K', + 0x384c: b'\x118L', + 0x384d: b'\x118M', + 0x384e: b'\x118N', + 0x384f: b'\x118O', + 0x3850: b'\x118P', + 0x3851: b'\x118Q', + 0x3852: b'\x118R', + 0x3853: b'\x118S', + 0x3854: b'\x118T', + 0x3855: b'\x118U', + 0x3856: b'\x118V', + 0x3857: b'\x118W', + 0x3858: b'\x118X', + 0x3859: b'\x118Y', + 0x385a: b'\x118Z', + 0x385b: b'\x118[', + 0x385c: b'\x118\\', + 0x385d: b'\x118]', + 0x385e: b'\x118^', + 0x385f: b'\x118_', + 0x3860: b'\x118`', + 0x3861: b'\x118a', + 0x3862: b'\x118b', + 0x3863: b'\x118c', + 0x3864: b'\x118d', + 0x3865: b'\x118e', + 0x3866: b'\x118f', + 0x3867: b'\x118g', + 0x3868: b'\x118h', + 0x3869: b'\x118i', + 0x386a: b'\x118j', + 0x386b: b'\x118k', + 0x386c: b'\x118l', + 0x386d: b'\x118m', + 0x386e: b'\x118n', + 0x386f: b'\x118o', + 0x3870: b'\x118p', + 0x3871: b'\x118q', + 0x3872: b'\x118r', + 0x3873: b'\x118s', + 0x3874: b'\x118t', + 0x3875: b'\x118u', + 0x3876: b'\x118v', + 0x3877: b'\x118w', + 0x3878: b'\x118x', + 0x3879: b'\x118y', + 0x387a: b'\x118z', + 0x387b: b'\x118{', + 0x387c: b'\x118|', + 0x387d: b'\x118}', + 0x387e: b'\x118~', + 0x387f: b'\x118\x7f', + 0x3880: b'\x118\x80', + 0x3881: b'\x118\x81', + 0x3882: b'\x118\x82', + 0x3883: b'\x118\x83', + 0x3884: b'\x118\x84', + 0x3885: b'\x118\x85', + 0x3886: b'\x118\x86', + 0x3887: b'\x118\x87', + 0x3888: b'\x118\x88', + 0x3889: b'\x118\x89', + 0x388a: b'\x118\x8a', + 0x388b: b'\x118\x8b', + 0x388c: b'\x118\x8c', + 0x388d: b'\x118\x8d', + 0x388e: b'\x118\x8e', + 0x388f: b'\x118\x8f', + 0x3890: b'\x118\x90', + 0x3891: b'\x118\x91', + 0x3892: b'\x118\x92', + 0x3893: b'\x118\x93', + 0x3894: b'\x118\x94', + 0x3895: b'\x118\x95', + 0x3896: b'\x118\x96', + 0x3897: b'\x118\x97', + 0x3898: b'\x118\x98', + 0x3899: b'\x118\x99', + 0x389a: b'\x118\x9a', + 0x389b: b'\x118\x9b', + 0x389c: b'\x118\x9c', + 0x389d: b'\x118\x9d', + 0x389e: b'\x118\x9e', + 0x389f: b'\x118\x9f', + 0x38a0: b'\x118\xa0', + 0x38a1: b'\x118\xa1', + 0x38a2: b'\x118\xa2', + 0x38a3: b'\x118\xa3', + 0x38a4: b'\x118\xa4', + 0x38a5: b'\x118\xa5', + 0x38a6: b'\x118\xa6', + 0x38a7: b'\x118\xa7', + 0x38a8: b'\x118\xa8', + 0x38a9: b'\x118\xa9', + 0x38aa: b'\x118\xaa', + 0x38ab: b'\x118\xab', + 0x38ac: b'\x118\xac', + 0x38ad: b'\x118\xad', + 0x38ae: b'\x118\xae', + 0x38af: b'\x118\xaf', + 0x38b0: b'\x118\xb0', + 0x38b1: b'\x118\xb1', + 0x38b2: b'\x118\xb2', + 0x38b3: b'\x118\xb3', + 0x38b4: b'\x118\xb4', + 0x38b5: b'\x118\xb5', + 0x38b6: b'\x118\xb6', + 0x38b7: b'\x118\xb7', + 0x38b8: b'\x118\xb8', + 0x38b9: b'\x118\xb9', + 0x38ba: b'\x118\xba', + 0x38bb: b'\x118\xbb', + 0x38bc: b'\x118\xbc', + 0x38bd: b'\x118\xbd', + 0x38be: b'\x118\xbe', + 0x38bf: b'\x118\xbf', + 0x38c0: b'\x118\xc0', + 0x38c1: b'\x118\xc1', + 0x38c2: b'\x118\xc2', + 0x38c3: b'\x118\xc3', + 0x38c4: b'\x118\xc4', + 0x38c5: b'\x118\xc5', + 0x38c6: b'\x118\xc6', + 0x38c7: b'\x118\xc7', + 0x38c8: b'\x118\xc8', + 0x38c9: b'\x118\xc9', + 0x38ca: b'\x118\xca', + 0x38cb: b'\x118\xcb', + 0x38cc: b'\x118\xcc', + 0x38cd: b'\x118\xcd', + 0x38ce: b'\x118\xce', + 0x38cf: b'\x118\xcf', + 0x38d0: b'\x118\xd0', + 0x38d1: b'\x118\xd1', + 0x38d2: b'\x118\xd2', + 0x38d3: b'\x118\xd3', + 0x38d4: b'\x118\xd4', + 0x38d5: b'\x118\xd5', + 0x38d6: b'\x118\xd6', + 0x38d7: b'\x118\xd7', + 0x38d8: b'\x118\xd8', + 0x38d9: b'\x118\xd9', + 0x38da: b'\x118\xda', + 0x38db: b'\x118\xdb', + 0x38dc: b'\x118\xdc', + 0x38dd: b'\x118\xdd', + 0x38de: b'\x118\xde', + 0x38df: b'\x118\xdf', + 0x38e0: b'\x118\xe0', + 0x38e1: b'\x118\xe1', + 0x38e2: b'\x118\xe2', + 0x38e3: b'\x118\xe3', + 0x38e4: b'\x118\xe4', + 0x38e5: b'\x118\xe5', + 0x38e6: b'\x118\xe6', + 0x38e7: b'\x118\xe7', + 0x38e8: b'\x118\xe8', + 0x38e9: b'\x118\xe9', + 0x38ea: b'\x118\xea', + 0x38eb: b'\x118\xeb', + 0x38ec: b'\x118\xec', + 0x38ed: b'\x118\xed', + 0x38ee: b'\x118\xee', + 0x38ef: b'\x118\xef', + 0x38f0: b'\x118\xf0', + 0x38f1: b'\x118\xf1', + 0x38f2: b'\x118\xf2', + 0x38f3: b'\x118\xf3', + 0x38f4: b'\x118\xf4', + 0x38f5: b'\x118\xf5', + 0x38f6: b'\x118\xf6', + 0x38f7: b'\x118\xf7', + 0x38f8: b'\x118\xf8', + 0x38f9: b'\x118\xf9', + 0x38fa: b'\x118\xfa', + 0x38fb: b'\x118\xfb', + 0x38fc: b'\x118\xfc', + 0x38fd: b'\x118\xfd', + 0x38fe: b'\x118\xfe', + 0x38ff: b'\x118\xff', + 0x3900: b'\x119\x00', + 0x3901: b'\x119\x01', + 0x3902: b'\x119\x02', + 0x3903: b'\x119\x03', + 0x3904: b'\x119\x04', + 0x3905: b'\x119\x05', + 0x3906: b'\x119\x06', + 0x3907: b'\x119\x07', + 0x3908: b'\x119\x08', + 0x3909: b'\x119\t', + 0x390a: b'\x119\n', + 0x390b: b'\x119\x0b', + 0x390c: b'\x119\x0c', + 0x390d: b'\x119\r', + 0x390e: b'\x119\x0e', + 0x390f: b'\x119\x0f', + 0x3910: b'\x119\x10', + 0x3911: b'\x119\x11', + 0x3912: b'\x119\x12', + 0x3913: b'\x119\x13', + 0x3914: b'\x119\x14', + 0x3915: b'\x119\x15', + 0x3916: b'\x119\x16', + 0x3917: b'\x119\x17', + 0x3918: b'\x119\x18', + 0x3919: b'\x119\x19', + 0x391a: b'\x119\x1a', + 0x391b: b'\x119\x1b', + 0x391c: b'\x119\x1c', + 0x391d: b'\x119\x1d', + 0x391e: b'\x119\x1e', + 0x391f: b'\x119\x1f', + 0x3920: b'\x119 ', + 0x3921: b'\x119!', + 0x3922: b'\x119"', + 0x3923: b'\x119#', + 0x3924: b'\x119$', + 0x3925: b'\x119%', + 0x3926: b'\x119&', + 0x3927: b"\x119'", + 0x3928: b'\x119(', + 0x3929: b'\x119)', + 0x392a: b'\x119*', + 0x392b: b'\x119+', + 0x392c: b'\x119,', + 0x392d: b'\x119-', + 0x392e: b'\x119.', + 0x392f: b'\x119/', + 0x3930: b'\x1190', + 0x3931: b'\x1191', + 0x3932: b'\x1192', + 0x3933: b'\x1193', + 0x3934: b'\x1194', + 0x3935: b'\x1195', + 0x3936: b'\x1196', + 0x3937: b'\x1197', + 0x3938: b'\x1198', + 0x3939: b'\x1199', + 0x393a: b'\x119:', + 0x393b: b'\x119;', + 0x393c: b'\x119<', + 0x393d: b'\x119=', + 0x393e: b'\x119>', + 0x393f: b'\x119?', + 0x3940: b'\x119@', + 0x3941: b'\x119A', + 0x3942: b'\x119B', + 0x3943: b'\x119C', + 0x3944: b'\x119D', + 0x3945: b'\x119E', + 0x3946: b'\x119F', + 0x3947: b'\x119G', + 0x3948: b'\x119H', + 0x3949: b'\x119I', + 0x394a: b'\x119J', + 0x394b: b'\x119K', + 0x394c: b'\x119L', + 0x394d: b'\x119M', + 0x394e: b'\x119N', + 0x394f: b'\x119O', + 0x3950: b'\x119P', + 0x3951: b'\x119Q', + 0x3952: b'\x119R', + 0x3953: b'\x119S', + 0x3954: b'\x119T', + 0x3955: b'\x119U', + 0x3956: b'\x119V', + 0x3957: b'\x119W', + 0x3958: b'\x119X', + 0x3959: b'\x119Y', + 0x395a: b'\x119Z', + 0x395b: b'\x119[', + 0x395c: b'\x119\\', + 0x395d: b'\x119]', + 0x395e: b'\x119^', + 0x395f: b'\x119_', + 0x3960: b'\x119`', + 0x3961: b'\x119a', + 0x3962: b'\x119b', + 0x3963: b'\x119c', + 0x3964: b'\x119d', + 0x3965: b'\x119e', + 0x3966: b'\x119f', + 0x3967: b'\x119g', + 0x3968: b'\x119h', + 0x3969: b'\x119i', + 0x396a: b'\x119j', + 0x396b: b'\x119k', + 0x396c: b'\x119l', + 0x396d: b'\x119m', + 0x396e: b'\x119n', + 0x396f: b'\x119o', + 0x3970: b'\x119p', + 0x3971: b'\x119q', + 0x3972: b'\x119r', + 0x3973: b'\x119s', + 0x3974: b'\x119t', + 0x3975: b'\x119u', + 0x3976: b'\x119v', + 0x3977: b'\x119w', + 0x3978: b'\x119x', + 0x3979: b'\x119y', + 0x397a: b'\x119z', + 0x397b: b'\x119{', + 0x397c: b'\x119|', + 0x397d: b'\x119}', + 0x397e: b'\x119~', + 0x397f: b'\x119\x7f', + 0x3980: b'\x119\x80', + 0x3981: b'\x119\x81', + 0x3982: b'\x119\x82', + 0x3983: b'\x119\x83', + 0x3984: b'\x119\x84', + 0x3985: b'\x119\x85', + 0x3986: b'\x119\x86', + 0x3987: b'\x119\x87', + 0x3988: b'\x119\x88', + 0x3989: b'\x119\x89', + 0x398a: b'\x119\x8a', + 0x398b: b'\x119\x8b', + 0x398c: b'\x119\x8c', + 0x398d: b'\x119\x8d', + 0x398e: b'\x119\x8e', + 0x398f: b'\x119\x8f', + 0x3990: b'\x119\x90', + 0x3991: b'\x119\x91', + 0x3992: b'\x119\x92', + 0x3993: b'\x119\x93', + 0x3994: b'\x119\x94', + 0x3995: b'\x119\x95', + 0x3996: b'\x119\x96', + 0x3997: b'\x119\x97', + 0x3998: b'\x119\x98', + 0x3999: b'\x119\x99', + 0x399a: b'\x119\x9a', + 0x399b: b'\x119\x9b', + 0x399c: b'\x119\x9c', + 0x399d: b'\x119\x9d', + 0x399e: b'\x119\x9e', + 0x399f: b'\x119\x9f', + 0x39a0: b'\x119\xa0', + 0x39a1: b'\x119\xa1', + 0x39a2: b'\x119\xa2', + 0x39a3: b'\x119\xa3', + 0x39a4: b'\x119\xa4', + 0x39a5: b'\x119\xa5', + 0x39a6: b'\x119\xa6', + 0x39a7: b'\x119\xa7', + 0x39a8: b'\x119\xa8', + 0x39a9: b'\x119\xa9', + 0x39aa: b'\x119\xaa', + 0x39ab: b'\x119\xab', + 0x39ac: b'\x119\xac', + 0x39ad: b'\x119\xad', + 0x39ae: b'\x119\xae', + 0x39af: b'\x119\xaf', + 0x39b0: b'\x119\xb0', + 0x39b1: b'\x119\xb1', + 0x39b2: b'\x119\xb2', + 0x39b3: b'\x119\xb3', + 0x39b4: b'\x119\xb4', + 0x39b5: b'\x119\xb5', + 0x39b6: b'\x119\xb6', + 0x39b7: b'\x119\xb7', + 0x39b8: b'\x119\xb8', + 0x39b9: b'\x119\xb9', + 0x39ba: b'\x119\xba', + 0x39bb: b'\x119\xbb', + 0x39bc: b'\x119\xbc', + 0x39bd: b'\x119\xbd', + 0x39be: b'\x119\xbe', + 0x39bf: b'\x119\xbf', + 0x39c0: b'\x119\xc0', + 0x39c1: b'\x119\xc1', + 0x39c2: b'\x119\xc2', + 0x39c3: b'\x119\xc3', + 0x39c4: b'\x119\xc4', + 0x39c5: b'\x119\xc5', + 0x39c6: b'\x119\xc6', + 0x39c7: b'\x119\xc7', + 0x39c8: b'\x119\xc8', + 0x39c9: b'\x119\xc9', + 0x39ca: b'\x119\xca', + 0x39cb: b'\x119\xcb', + 0x39cc: b'\x119\xcc', + 0x39cd: b'\x119\xcd', + 0x39ce: b'\x119\xce', + 0x39cf: b'\x119\xcf', + 0x39d0: b'\x119\xd0', + 0x39d1: b'\x119\xd1', + 0x39d2: b'\x119\xd2', + 0x39d3: b'\x119\xd3', + 0x39d4: b'\x119\xd4', + 0x39d5: b'\x119\xd5', + 0x39d6: b'\x119\xd6', + 0x39d7: b'\x119\xd7', + 0x39d8: b'\x119\xd8', + 0x39d9: b'\x119\xd9', + 0x39da: b'\x119\xda', + 0x39db: b'\x119\xdb', + 0x39dc: b'\x119\xdc', + 0x39dd: b'\x119\xdd', + 0x39de: b'\x119\xde', + 0x39df: b'\x119\xdf', + 0x39e0: b'\x119\xe0', + 0x39e1: b'\x119\xe1', + 0x39e2: b'\x119\xe2', + 0x39e3: b'\x119\xe3', + 0x39e4: b'\x119\xe4', + 0x39e5: b'\x119\xe5', + 0x39e6: b'\x119\xe6', + 0x39e7: b'\x119\xe7', + 0x39e8: b'\x119\xe8', + 0x39e9: b'\x119\xe9', + 0x39ea: b'\x119\xea', + 0x39eb: b'\x119\xeb', + 0x39ec: b'\x119\xec', + 0x39ed: b'\x119\xed', + 0x39ee: b'\x119\xee', + 0x39ef: b'\x119\xef', + 0x39f0: b'\x119\xf0', + 0x39f1: b'\x119\xf1', + 0x39f2: b'\x119\xf2', + 0x39f3: b'\x119\xf3', + 0x39f4: b'\x119\xf4', + 0x39f5: b'\x119\xf5', + 0x39f6: b'\x119\xf6', + 0x39f7: b'\x119\xf7', + 0x39f8: b'\x119\xf8', + 0x39f9: b'\x119\xf9', + 0x39fa: b'\x119\xfa', + 0x39fb: b'\x119\xfb', + 0x39fc: b'\x119\xfc', + 0x39fd: b'\x119\xfd', + 0x39fe: b'\x119\xfe', + 0x39ff: b'\x119\xff', + 0x3a00: b'\x11:\x00', + 0x3a01: b'\x11:\x01', + 0x3a02: b'\x11:\x02', + 0x3a03: b'\x11:\x03', + 0x3a04: b'\x11:\x04', + 0x3a05: b'\x11:\x05', + 0x3a06: b'\x11:\x06', + 0x3a07: b'\x11:\x07', + 0x3a08: b'\x11:\x08', + 0x3a09: b'\x11:\t', + 0x3a0a: b'\x11:\n', + 0x3a0b: b'\x11:\x0b', + 0x3a0c: b'\x11:\x0c', + 0x3a0d: b'\x11:\r', + 0x3a0e: b'\x11:\x0e', + 0x3a0f: b'\x11:\x0f', + 0x3a10: b'\x11:\x10', + 0x3a11: b'\x11:\x11', + 0x3a12: b'\x11:\x12', + 0x3a13: b'\x11:\x13', + 0x3a14: b'\x11:\x14', + 0x3a15: b'\x11:\x15', + 0x3a16: b'\x11:\x16', + 0x3a17: b'\x11:\x17', + 0x3a18: b'\x11:\x18', + 0x3a19: b'\x11:\x19', + 0x3a1a: b'\x11:\x1a', + 0x3a1b: b'\x11:\x1b', + 0x3a1c: b'\x11:\x1c', + 0x3a1d: b'\x11:\x1d', + 0x3a1e: b'\x11:\x1e', + 0x3a1f: b'\x11:\x1f', + 0x3a20: b'\x11: ', + 0x3a21: b'\x11:!', + 0x3a22: b'\x11:"', + 0x3a23: b'\x11:#', + 0x3a24: b'\x11:$', + 0x3a25: b'\x11:%', + 0x3a26: b'\x11:&', + 0x3a27: b"\x11:'", + 0x3a28: b'\x11:(', + 0x3a29: b'\x11:)', + 0x3a2a: b'\x11:*', + 0x3a2b: b'\x11:+', + 0x3a2c: b'\x11:,', + 0x3a2d: b'\x11:-', + 0x3a2e: b'\x11:.', + 0x3a2f: b'\x11:/', + 0x3a30: b'\x11:0', + 0x3a31: b'\x11:1', + 0x3a32: b'\x11:2', + 0x3a33: b'\x11:3', + 0x3a34: b'\x11:4', + 0x3a35: b'\x11:5', + 0x3a36: b'\x11:6', + 0x3a37: b'\x11:7', + 0x3a38: b'\x11:8', + 0x3a39: b'\x11:9', + 0x3a3a: b'\x11::', + 0x3a3b: b'\x11:;', + 0x3a3c: b'\x11:<', + 0x3a3d: b'\x11:=', + 0x3a3e: b'\x11:>', + 0x3a3f: b'\x11:?', + 0x3a40: b'\x11:@', + 0x3a41: b'\x11:A', + 0x3a42: b'\x11:B', + 0x3a43: b'\x11:C', + 0x3a44: b'\x11:D', + 0x3a45: b'\x11:E', + 0x3a46: b'\x11:F', + 0x3a47: b'\x11:G', + 0x3a48: b'\x11:H', + 0x3a49: b'\x11:I', + 0x3a4a: b'\x11:J', + 0x3a4b: b'\x11:K', + 0x3a4c: b'\x11:L', + 0x3a4d: b'\x11:M', + 0x3a4e: b'\x11:N', + 0x3a4f: b'\x11:O', + 0x3a50: b'\x11:P', + 0x3a51: b'\x11:Q', + 0x3a52: b'\x11:R', + 0x3a53: b'\x11:S', + 0x3a54: b'\x11:T', + 0x3a55: b'\x11:U', + 0x3a56: b'\x11:V', + 0x3a57: b'\x11:W', + 0x3a58: b'\x11:X', + 0x3a59: b'\x11:Y', + 0x3a5a: b'\x11:Z', + 0x3a5b: b'\x11:[', + 0x3a5c: b'\x11:\\', + 0x3a5d: b'\x11:]', + 0x3a5e: b'\x11:^', + 0x3a5f: b'\x11:_', + 0x3a60: b'\x11:`', + 0x3a61: b'\x11:a', + 0x3a62: b'\x11:b', + 0x3a63: b'\x11:c', + 0x3a64: b'\x11:d', + 0x3a65: b'\x11:e', + 0x3a66: b'\x11:f', + 0x3a67: b'\x11:g', + 0x3a68: b'\x11:h', + 0x3a69: b'\x11:i', + 0x3a6a: b'\x11:j', + 0x3a6b: b'\x11:k', + 0x3a6c: b'\x11:l', + 0x3a6d: b'\x11:m', + 0x3a6e: b'\x11:n', + 0x3a6f: b'\x11:o', + 0x3a70: b'\x11:p', + 0x3a71: b'\x11:q', + 0x3a72: b'\x11:r', + 0x3a73: b'\x11:s', + 0x3a74: b'\x11:t', + 0x3a75: b'\x11:u', + 0x3a76: b'\x11:v', + 0x3a77: b'\x11:w', + 0x3a78: b'\x11:x', + 0x3a79: b'\x11:y', + 0x3a7a: b'\x11:z', + 0x3a7b: b'\x11:{', + 0x3a7c: b'\x11:|', + 0x3a7d: b'\x11:}', + 0x3a7e: b'\x11:~', + 0x3a7f: b'\x11:\x7f', + 0x3a80: b'\x11:\x80', + 0x3a81: b'\x11:\x81', + 0x3a82: b'\x11:\x82', + 0x3a83: b'\x11:\x83', + 0x3a84: b'\x11:\x84', + 0x3a85: b'\x11:\x85', + 0x3a86: b'\x11:\x86', + 0x3a87: b'\x11:\x87', + 0x3a88: b'\x11:\x88', + 0x3a89: b'\x11:\x89', + 0x3a8a: b'\x11:\x8a', + 0x3a8b: b'\x11:\x8b', + 0x3a8c: b'\x11:\x8c', + 0x3a8d: b'\x11:\x8d', + 0x3a8e: b'\x11:\x8e', + 0x3a8f: b'\x11:\x8f', + 0x3a90: b'\x11:\x90', + 0x3a91: b'\x11:\x91', + 0x3a92: b'\x11:\x92', + 0x3a93: b'\x11:\x93', + 0x3a94: b'\x11:\x94', + 0x3a95: b'\x11:\x95', + 0x3a96: b'\x11:\x96', + 0x3a97: b'\x11:\x97', + 0x3a98: b'\x11:\x98', + 0x3a99: b'\x11:\x99', + 0x3a9a: b'\x11:\x9a', + 0x3a9b: b'\x11:\x9b', + 0x3a9c: b'\x11:\x9c', + 0x3a9d: b'\x11:\x9d', + 0x3a9e: b'\x11:\x9e', + 0x3a9f: b'\x11:\x9f', + 0x3aa0: b'\x11:\xa0', + 0x3aa1: b'\x11:\xa1', + 0x3aa2: b'\x11:\xa2', + 0x3aa3: b'\x11:\xa3', + 0x3aa4: b'\x11:\xa4', + 0x3aa5: b'\x11:\xa5', + 0x3aa6: b'\x11:\xa6', + 0x3aa7: b'\x11:\xa7', + 0x3aa8: b'\x11:\xa8', + 0x3aa9: b'\x11:\xa9', + 0x3aaa: b'\x11:\xaa', + 0x3aab: b'\x11:\xab', + 0x3aac: b'\x11:\xac', + 0x3aad: b'\x11:\xad', + 0x3aae: b'\x11:\xae', + 0x3aaf: b'\x11:\xaf', + 0x3ab0: b'\x11:\xb0', + 0x3ab1: b'\x11:\xb1', + 0x3ab2: b'\x11:\xb2', + 0x3ab3: b'\x11:\xb3', + 0x3ab4: b'\x11:\xb4', + 0x3ab5: b'\x11:\xb5', + 0x3ab6: b'\x11:\xb6', + 0x3ab7: b'\x11:\xb7', + 0x3ab8: b'\x11:\xb8', + 0x3ab9: b'\x11:\xb9', + 0x3aba: b'\x11:\xba', + 0x3abb: b'\x11:\xbb', + 0x3abc: b'\x11:\xbc', + 0x3abd: b'\x11:\xbd', + 0x3abe: b'\x11:\xbe', + 0x3abf: b'\x11:\xbf', + 0x3ac0: b'\x11:\xc0', + 0x3ac1: b'\x11:\xc1', + 0x3ac2: b'\x11:\xc2', + 0x3ac3: b'\x11:\xc3', + 0x3ac4: b'\x11:\xc4', + 0x3ac5: b'\x11:\xc5', + 0x3ac6: b'\x11:\xc6', + 0x3ac7: b'\x11:\xc7', + 0x3ac8: b'\x11:\xc8', + 0x3ac9: b'\x11:\xc9', + 0x3aca: b'\x11:\xca', + 0x3acb: b'\x11:\xcb', + 0x3acc: b'\x11:\xcc', + 0x3acd: b'\x11:\xcd', + 0x3ace: b'\x11:\xce', + 0x3acf: b'\x11:\xcf', + 0x3ad0: b'\x11:\xd0', + 0x3ad1: b'\x11:\xd1', + 0x3ad2: b'\x11:\xd2', + 0x3ad3: b'\x11:\xd3', + 0x3ad4: b'\x11:\xd4', + 0x3ad5: b'\x11:\xd5', + 0x3ad6: b'\x11:\xd6', + 0x3ad7: b'\x11:\xd7', + 0x3ad8: b'\x11:\xd8', + 0x3ad9: b'\x11:\xd9', + 0x3ada: b'\x11:\xda', + 0x3adb: b'\x11:\xdb', + 0x3adc: b'\x11:\xdc', + 0x3add: b'\x11:\xdd', + 0x3ade: b'\x11:\xde', + 0x3adf: b'\x11:\xdf', + 0x3ae0: b'\x11:\xe0', + 0x3ae1: b'\x11:\xe1', + 0x3ae2: b'\x11:\xe2', + 0x3ae3: b'\x11:\xe3', + 0x3ae4: b'\x11:\xe4', + 0x3ae5: b'\x11:\xe5', + 0x3ae6: b'\x11:\xe6', + 0x3ae7: b'\x11:\xe7', + 0x3ae8: b'\x11:\xe8', + 0x3ae9: b'\x11:\xe9', + 0x3aea: b'\x11:\xea', + 0x3aeb: b'\x11:\xeb', + 0x3aec: b'\x11:\xec', + 0x3aed: b'\x11:\xed', + 0x3aee: b'\x11:\xee', + 0x3aef: b'\x11:\xef', + 0x3af0: b'\x11:\xf0', + 0x3af1: b'\x11:\xf1', + 0x3af2: b'\x11:\xf2', + 0x3af3: b'\x11:\xf3', + 0x3af4: b'\x11:\xf4', + 0x3af5: b'\x11:\xf5', + 0x3af6: b'\x11:\xf6', + 0x3af7: b'\x11:\xf7', + 0x3af8: b'\x11:\xf8', + 0x3af9: b'\x11:\xf9', + 0x3afa: b'\x11:\xfa', + 0x3afb: b'\x11:\xfb', + 0x3afc: b'\x11:\xfc', + 0x3afd: b'\x11:\xfd', + 0x3afe: b'\x11:\xfe', + 0x3aff: b'\x11:\xff', + 0x3b00: b'\x11;\x00', + 0x3b01: b'\x11;\x01', + 0x3b02: b'\x11;\x02', + 0x3b03: b'\x11;\x03', + 0x3b04: b'\x11;\x04', + 0x3b05: b'\x11;\x05', + 0x3b06: b'\x11;\x06', + 0x3b07: b'\x11;\x07', + 0x3b08: b'\x11;\x08', + 0x3b09: b'\x11;\t', + 0x3b0a: b'\x11;\n', + 0x3b0b: b'\x11;\x0b', + 0x3b0c: b'\x11;\x0c', + 0x3b0d: b'\x11;\r', + 0x3b0e: b'\x11;\x0e', + 0x3b0f: b'\x11;\x0f', + 0x3b10: b'\x11;\x10', + 0x3b11: b'\x11;\x11', + 0x3b12: b'\x11;\x12', + 0x3b13: b'\x11;\x13', + 0x3b14: b'\x11;\x14', + 0x3b15: b'\x11;\x15', + 0x3b16: b'\x11;\x16', + 0x3b17: b'\x11;\x17', + 0x3b18: b'\x11;\x18', + 0x3b19: b'\x11;\x19', + 0x3b1a: b'\x11;\x1a', + 0x3b1b: b'\x11;\x1b', + 0x3b1c: b'\x11;\x1c', + 0x3b1d: b'\x11;\x1d', + 0x3b1e: b'\x11;\x1e', + 0x3b1f: b'\x11;\x1f', + 0x3b20: b'\x11; ', + 0x3b21: b'\x11;!', + 0x3b22: b'\x11;"', + 0x3b23: b'\x11;#', + 0x3b24: b'\x11;$', + 0x3b25: b'\x11;%', + 0x3b26: b'\x11;&', + 0x3b27: b"\x11;'", + 0x3b28: b'\x11;(', + 0x3b29: b'\x11;)', + 0x3b2a: b'\x11;*', + 0x3b2b: b'\x11;+', + 0x3b2c: b'\x11;,', + 0x3b2d: b'\x11;-', + 0x3b2e: b'\x11;.', + 0x3b2f: b'\x11;/', + 0x3b30: b'\x11;0', + 0x3b31: b'\x11;1', + 0x3b32: b'\x11;2', + 0x3b33: b'\x11;3', + 0x3b34: b'\x11;4', + 0x3b35: b'\x11;5', + 0x3b36: b'\x11;6', + 0x3b37: b'\x11;7', + 0x3b38: b'\x11;8', + 0x3b39: b'\x11;9', + 0x3b3a: b'\x11;:', + 0x3b3b: b'\x11;;', + 0x3b3c: b'\x11;<', + 0x3b3d: b'\x11;=', + 0x3b3e: b'\x11;>', + 0x3b3f: b'\x11;?', + 0x3b40: b'\x11;@', + 0x3b41: b'\x11;A', + 0x3b42: b'\x11;B', + 0x3b43: b'\x11;C', + 0x3b44: b'\x11;D', + 0x3b45: b'\x11;E', + 0x3b46: b'\x11;F', + 0x3b47: b'\x11;G', + 0x3b48: b'\x11;H', + 0x3b49: b'\x11;I', + 0x3b4a: b'\x11;J', + 0x3b4b: b'\x11;K', + 0x3b4c: b'\x11;L', + 0x3b4d: b'\x11;M', + 0x3b4e: b'\x11;N', + 0x3b4f: b'\x11;O', + 0x3b50: b'\x11;P', + 0x3b51: b'\x11;Q', + 0x3b52: b'\x11;R', + 0x3b53: b'\x11;S', + 0x3b54: b'\x11;T', + 0x3b55: b'\x11;U', + 0x3b56: b'\x11;V', + 0x3b57: b'\x11;W', + 0x3b58: b'\x11;X', + 0x3b59: b'\x11;Y', + 0x3b5a: b'\x11;Z', + 0x3b5b: b'\x11;[', + 0x3b5c: b'\x11;\\', + 0x3b5d: b'\x11;]', + 0x3b5e: b'\x11;^', + 0x3b5f: b'\x11;_', + 0x3b60: b'\x11;`', + 0x3b61: b'\x11;a', + 0x3b62: b'\x11;b', + 0x3b63: b'\x11;c', + 0x3b64: b'\x11;d', + 0x3b65: b'\x11;e', + 0x3b66: b'\x11;f', + 0x3b67: b'\x11;g', + 0x3b68: b'\x11;h', + 0x3b69: b'\x11;i', + 0x3b6a: b'\x11;j', + 0x3b6b: b'\x11;k', + 0x3b6c: b'\x11;l', + 0x3b6d: b'\x11;m', + 0x3b6e: b'\x11;n', + 0x3b6f: b'\x11;o', + 0x3b70: b'\x11;p', + 0x3b71: b'\x11;q', + 0x3b72: b'\x11;r', + 0x3b73: b'\x11;s', + 0x3b74: b'\x11;t', + 0x3b75: b'\x11;u', + 0x3b76: b'\x11;v', + 0x3b77: b'\x11;w', + 0x3b78: b'\x11;x', + 0x3b79: b'\x11;y', + 0x3b7a: b'\x11;z', + 0x3b7b: b'\x11;{', + 0x3b7c: b'\x11;|', + 0x3b7d: b'\x11;}', + 0x3b7e: b'\x11;~', + 0x3b7f: b'\x11;\x7f', + 0x3b80: b'\x11;\x80', + 0x3b81: b'\x11;\x81', + 0x3b82: b'\x11;\x82', + 0x3b83: b'\x11;\x83', + 0x3b84: b'\x11;\x84', + 0x3b85: b'\x11;\x85', + 0x3b86: b'\x11;\x86', + 0x3b87: b'\x11;\x87', + 0x3b88: b'\x11;\x88', + 0x3b89: b'\x11;\x89', + 0x3b8a: b'\x11;\x8a', + 0x3b8b: b'\x11;\x8b', + 0x3b8c: b'\x11;\x8c', + 0x3b8d: b'\x11;\x8d', + 0x3b8e: b'\x11;\x8e', + 0x3b8f: b'\x11;\x8f', + 0x3b90: b'\x11;\x90', + 0x3b91: b'\x11;\x91', + 0x3b92: b'\x11;\x92', + 0x3b93: b'\x11;\x93', + 0x3b94: b'\x11;\x94', + 0x3b95: b'\x11;\x95', + 0x3b96: b'\x11;\x96', + 0x3b97: b'\x11;\x97', + 0x3b98: b'\x11;\x98', + 0x3b99: b'\x11;\x99', + 0x3b9a: b'\x11;\x9a', + 0x3b9b: b'\x11;\x9b', + 0x3b9c: b'\x11;\x9c', + 0x3b9d: b'\x11;\x9d', + 0x3b9e: b'\x11;\x9e', + 0x3b9f: b'\x11;\x9f', + 0x3ba0: b'\x11;\xa0', + 0x3ba1: b'\x11;\xa1', + 0x3ba2: b'\x11;\xa2', + 0x3ba3: b'\x11;\xa3', + 0x3ba4: b'\x11;\xa4', + 0x3ba5: b'\x11;\xa5', + 0x3ba6: b'\x11;\xa6', + 0x3ba7: b'\x11;\xa7', + 0x3ba8: b'\x11;\xa8', + 0x3ba9: b'\x11;\xa9', + 0x3baa: b'\x11;\xaa', + 0x3bab: b'\x11;\xab', + 0x3bac: b'\x11;\xac', + 0x3bad: b'\x11;\xad', + 0x3bae: b'\x11;\xae', + 0x3baf: b'\x11;\xaf', + 0x3bb0: b'\x11;\xb0', + 0x3bb1: b'\x11;\xb1', + 0x3bb2: b'\x11;\xb2', + 0x3bb3: b'\x11;\xb3', + 0x3bb4: b'\x11;\xb4', + 0x3bb5: b'\x11;\xb5', + 0x3bb6: b'\x11;\xb6', + 0x3bb7: b'\x11;\xb7', + 0x3bb8: b'\x11;\xb8', + 0x3bb9: b'\x11;\xb9', + 0x3bba: b'\x11;\xba', + 0x3bbb: b'\x11;\xbb', + 0x3bbc: b'\x11;\xbc', + 0x3bbd: b'\x11;\xbd', + 0x3bbe: b'\x11;\xbe', + 0x3bbf: b'\x11;\xbf', + 0x3bc0: b'\x11;\xc0', + 0x3bc1: b'\x11;\xc1', + 0x3bc2: b'\x11;\xc2', + 0x3bc3: b'\x11;\xc3', + 0x3bc4: b'\x11;\xc4', + 0x3bc5: b'\x11;\xc5', + 0x3bc6: b'\x11;\xc6', + 0x3bc7: b'\x11;\xc7', + 0x3bc8: b'\x11;\xc8', + 0x3bc9: b'\x11;\xc9', + 0x3bca: b'\x11;\xca', + 0x3bcb: b'\x11;\xcb', + 0x3bcc: b'\x11;\xcc', + 0x3bcd: b'\x11;\xcd', + 0x3bce: b'\x11;\xce', + 0x3bcf: b'\x11;\xcf', + 0x3bd0: b'\x11;\xd0', + 0x3bd1: b'\x11;\xd1', + 0x3bd2: b'\x11;\xd2', + 0x3bd3: b'\x11;\xd3', + 0x3bd4: b'\x11;\xd4', + 0x3bd5: b'\x11;\xd5', + 0x3bd6: b'\x11;\xd6', + 0x3bd7: b'\x11;\xd7', + 0x3bd8: b'\x11;\xd8', + 0x3bd9: b'\x11;\xd9', + 0x3bda: b'\x11;\xda', + 0x3bdb: b'\x11;\xdb', + 0x3bdc: b'\x11;\xdc', + 0x3bdd: b'\x11;\xdd', + 0x3bde: b'\x11;\xde', + 0x3bdf: b'\x11;\xdf', + 0x3be0: b'\x11;\xe0', + 0x3be1: b'\x11;\xe1', + 0x3be2: b'\x11;\xe2', + 0x3be3: b'\x11;\xe3', + 0x3be4: b'\x11;\xe4', + 0x3be5: b'\x11;\xe5', + 0x3be6: b'\x11;\xe6', + 0x3be7: b'\x11;\xe7', + 0x3be8: b'\x11;\xe8', + 0x3be9: b'\x11;\xe9', + 0x3bea: b'\x11;\xea', + 0x3beb: b'\x11;\xeb', + 0x3bec: b'\x11;\xec', + 0x3bed: b'\x11;\xed', + 0x3bee: b'\x11;\xee', + 0x3bef: b'\x11;\xef', + 0x3bf0: b'\x11;\xf0', + 0x3bf1: b'\x11;\xf1', + 0x3bf2: b'\x11;\xf2', + 0x3bf3: b'\x11;\xf3', + 0x3bf4: b'\x11;\xf4', + 0x3bf5: b'\x11;\xf5', + 0x3bf6: b'\x11;\xf6', + 0x3bf7: b'\x11;\xf7', + 0x3bf8: b'\x11;\xf8', + 0x3bf9: b'\x11;\xf9', + 0x3bfa: b'\x11;\xfa', + 0x3bfb: b'\x11;\xfb', + 0x3bfc: b'\x11;\xfc', + 0x3bfd: b'\x11;\xfd', + 0x3bfe: b'\x11;\xfe', + 0x3bff: b'\x11;\xff', + 0x3c00: b'\x11<\x00', + 0x3c01: b'\x11<\x01', + 0x3c02: b'\x11<\x02', + 0x3c03: b'\x11<\x03', + 0x3c04: b'\x11<\x04', + 0x3c05: b'\x11<\x05', + 0x3c06: b'\x11<\x06', + 0x3c07: b'\x11<\x07', + 0x3c08: b'\x11<\x08', + 0x3c09: b'\x11<\t', + 0x3c0a: b'\x11<\n', + 0x3c0b: b'\x11<\x0b', + 0x3c0c: b'\x11<\x0c', + 0x3c0d: b'\x11<\r', + 0x3c0e: b'\x11<\x0e', + 0x3c0f: b'\x11<\x0f', + 0x3c10: b'\x11<\x10', + 0x3c11: b'\x11<\x11', + 0x3c12: b'\x11<\x12', + 0x3c13: b'\x11<\x13', + 0x3c14: b'\x11<\x14', + 0x3c15: b'\x11<\x15', + 0x3c16: b'\x11<\x16', + 0x3c17: b'\x11<\x17', + 0x3c18: b'\x11<\x18', + 0x3c19: b'\x11<\x19', + 0x3c1a: b'\x11<\x1a', + 0x3c1b: b'\x11<\x1b', + 0x3c1c: b'\x11<\x1c', + 0x3c1d: b'\x11<\x1d', + 0x3c1e: b'\x11<\x1e', + 0x3c1f: b'\x11<\x1f', + 0x3c20: b'\x11< ', + 0x3c21: b'\x11', + 0x3c3f: b'\x11', + 0x3d3f: b'\x11=?', + 0x3d40: b'\x11=@', + 0x3d41: b'\x11=A', + 0x3d42: b'\x11=B', + 0x3d43: b'\x11=C', + 0x3d44: b'\x11=D', + 0x3d45: b'\x11=E', + 0x3d46: b'\x11=F', + 0x3d47: b'\x11=G', + 0x3d48: b'\x11=H', + 0x3d49: b'\x11=I', + 0x3d4a: b'\x11=J', + 0x3d4b: b'\x11=K', + 0x3d4c: b'\x11=L', + 0x3d4d: b'\x11=M', + 0x3d4e: b'\x11=N', + 0x3d4f: b'\x11=O', + 0x3d50: b'\x11=P', + 0x3d51: b'\x11=Q', + 0x3d52: b'\x11=R', + 0x3d53: b'\x11=S', + 0x3d54: b'\x11=T', + 0x3d55: b'\x11=U', + 0x3d56: b'\x11=V', + 0x3d57: b'\x11=W', + 0x3d58: b'\x11=X', + 0x3d59: b'\x11=Y', + 0x3d5a: b'\x11=Z', + 0x3d5b: b'\x11=[', + 0x3d5c: b'\x11=\\', + 0x3d5d: b'\x11=]', + 0x3d5e: b'\x11=^', + 0x3d5f: b'\x11=_', + 0x3d60: b'\x11=`', + 0x3d61: b'\x11=a', + 0x3d62: b'\x11=b', + 0x3d63: b'\x11=c', + 0x3d64: b'\x11=d', + 0x3d65: b'\x11=e', + 0x3d66: b'\x11=f', + 0x3d67: b'\x11=g', + 0x3d68: b'\x11=h', + 0x3d69: b'\x11=i', + 0x3d6a: b'\x11=j', + 0x3d6b: b'\x11=k', + 0x3d6c: b'\x11=l', + 0x3d6d: b'\x11=m', + 0x3d6e: b'\x11=n', + 0x3d6f: b'\x11=o', + 0x3d70: b'\x11=p', + 0x3d71: b'\x11=q', + 0x3d72: b'\x11=r', + 0x3d73: b'\x11=s', + 0x3d74: b'\x11=t', + 0x3d75: b'\x11=u', + 0x3d76: b'\x11=v', + 0x3d77: b'\x11=w', + 0x3d78: b'\x11=x', + 0x3d79: b'\x11=y', + 0x3d7a: b'\x11=z', + 0x3d7b: b'\x11={', + 0x3d7c: b'\x11=|', + 0x3d7d: b'\x11=}', + 0x3d7e: b'\x11=~', + 0x3d7f: b'\x11=\x7f', + 0x3d80: b'\x11=\x80', + 0x3d81: b'\x11=\x81', + 0x3d82: b'\x11=\x82', + 0x3d83: b'\x11=\x83', + 0x3d84: b'\x11=\x84', + 0x3d85: b'\x11=\x85', + 0x3d86: b'\x11=\x86', + 0x3d87: b'\x11=\x87', + 0x3d88: b'\x11=\x88', + 0x3d89: b'\x11=\x89', + 0x3d8a: b'\x11=\x8a', + 0x3d8b: b'\x11=\x8b', + 0x3d8c: b'\x11=\x8c', + 0x3d8d: b'\x11=\x8d', + 0x3d8e: b'\x11=\x8e', + 0x3d8f: b'\x11=\x8f', + 0x3d90: b'\x11=\x90', + 0x3d91: b'\x11=\x91', + 0x3d92: b'\x11=\x92', + 0x3d93: b'\x11=\x93', + 0x3d94: b'\x11=\x94', + 0x3d95: b'\x11=\x95', + 0x3d96: b'\x11=\x96', + 0x3d97: b'\x11=\x97', + 0x3d98: b'\x11=\x98', + 0x3d99: b'\x11=\x99', + 0x3d9a: b'\x11=\x9a', + 0x3d9b: b'\x11=\x9b', + 0x3d9c: b'\x11=\x9c', + 0x3d9d: b'\x11=\x9d', + 0x3d9e: b'\x11=\x9e', + 0x3d9f: b'\x11=\x9f', + 0x3da0: b'\x11=\xa0', + 0x3da1: b'\x11=\xa1', + 0x3da2: b'\x11=\xa2', + 0x3da3: b'\x11=\xa3', + 0x3da4: b'\x11=\xa4', + 0x3da5: b'\x11=\xa5', + 0x3da6: b'\x11=\xa6', + 0x3da7: b'\x11=\xa7', + 0x3da8: b'\x11=\xa8', + 0x3da9: b'\x11=\xa9', + 0x3daa: b'\x11=\xaa', + 0x3dab: b'\x11=\xab', + 0x3dac: b'\x11=\xac', + 0x3dad: b'\x11=\xad', + 0x3dae: b'\x11=\xae', + 0x3daf: b'\x11=\xaf', + 0x3db0: b'\x11=\xb0', + 0x3db1: b'\x11=\xb1', + 0x3db2: b'\x11=\xb2', + 0x3db3: b'\x11=\xb3', + 0x3db4: b'\x11=\xb4', + 0x3db5: b'\x11=\xb5', + 0x3db6: b'\x11=\xb6', + 0x3db7: b'\x11=\xb7', + 0x3db8: b'\x11=\xb8', + 0x3db9: b'\x11=\xb9', + 0x3dba: b'\x11=\xba', + 0x3dbb: b'\x11=\xbb', + 0x3dbc: b'\x11=\xbc', + 0x3dbd: b'\x11=\xbd', + 0x3dbe: b'\x11=\xbe', + 0x3dbf: b'\x11=\xbf', + 0x3dc0: b'\x11=\xc0', + 0x3dc1: b'\x11=\xc1', + 0x3dc2: b'\x11=\xc2', + 0x3dc3: b'\x11=\xc3', + 0x3dc4: b'\x11=\xc4', + 0x3dc5: b'\x11=\xc5', + 0x3dc6: b'\x11=\xc6', + 0x3dc7: b'\x11=\xc7', + 0x3dc8: b'\x11=\xc8', + 0x3dc9: b'\x11=\xc9', + 0x3dca: b'\x11=\xca', + 0x3dcb: b'\x11=\xcb', + 0x3dcc: b'\x11=\xcc', + 0x3dcd: b'\x11=\xcd', + 0x3dce: b'\x11=\xce', + 0x3dcf: b'\x11=\xcf', + 0x3dd0: b'\x11=\xd0', + 0x3dd1: b'\x11=\xd1', + 0x3dd2: b'\x11=\xd2', + 0x3dd3: b'\x11=\xd3', + 0x3dd4: b'\x11=\xd4', + 0x3dd5: b'\x11=\xd5', + 0x3dd6: b'\x11=\xd6', + 0x3dd7: b'\x11=\xd7', + 0x3dd8: b'\x11=\xd8', + 0x3dd9: b'\x11=\xd9', + 0x3dda: b'\x11=\xda', + 0x3ddb: b'\x11=\xdb', + 0x3ddc: b'\x11=\xdc', + 0x3ddd: b'\x11=\xdd', + 0x3dde: b'\x11=\xde', + 0x3ddf: b'\x11=\xdf', + 0x3de0: b'\x11=\xe0', + 0x3de1: b'\x11=\xe1', + 0x3de2: b'\x11=\xe2', + 0x3de3: b'\x11=\xe3', + 0x3de4: b'\x11=\xe4', + 0x3de5: b'\x11=\xe5', + 0x3de6: b'\x11=\xe6', + 0x3de7: b'\x11=\xe7', + 0x3de8: b'\x11=\xe8', + 0x3de9: b'\x11=\xe9', + 0x3dea: b'\x11=\xea', + 0x3deb: b'\x11=\xeb', + 0x3dec: b'\x11=\xec', + 0x3ded: b'\x11=\xed', + 0x3dee: b'\x11=\xee', + 0x3def: b'\x11=\xef', + 0x3df0: b'\x11=\xf0', + 0x3df1: b'\x11=\xf1', + 0x3df2: b'\x11=\xf2', + 0x3df3: b'\x11=\xf3', + 0x3df4: b'\x11=\xf4', + 0x3df5: b'\x11=\xf5', + 0x3df6: b'\x11=\xf6', + 0x3df7: b'\x11=\xf7', + 0x3df8: b'\x11=\xf8', + 0x3df9: b'\x11=\xf9', + 0x3dfa: b'\x11=\xfa', + 0x3dfb: b'\x11=\xfb', + 0x3dfc: b'\x11=\xfc', + 0x3dfd: b'\x11=\xfd', + 0x3dfe: b'\x11=\xfe', + 0x3dff: b'\x11=\xff', + 0x3e00: b'\x11>\x00', + 0x3e01: b'\x11>\x01', + 0x3e02: b'\x11>\x02', + 0x3e03: b'\x11>\x03', + 0x3e04: b'\x11>\x04', + 0x3e05: b'\x11>\x05', + 0x3e06: b'\x11>\x06', + 0x3e07: b'\x11>\x07', + 0x3e08: b'\x11>\x08', + 0x3e09: b'\x11>\t', + 0x3e0a: b'\x11>\n', + 0x3e0b: b'\x11>\x0b', + 0x3e0c: b'\x11>\x0c', + 0x3e0d: b'\x11>\r', + 0x3e0e: b'\x11>\x0e', + 0x3e0f: b'\x11>\x0f', + 0x3e10: b'\x11>\x10', + 0x3e11: b'\x11>\x11', + 0x3e12: b'\x11>\x12', + 0x3e13: b'\x11>\x13', + 0x3e14: b'\x11>\x14', + 0x3e15: b'\x11>\x15', + 0x3e16: b'\x11>\x16', + 0x3e17: b'\x11>\x17', + 0x3e18: b'\x11>\x18', + 0x3e19: b'\x11>\x19', + 0x3e1a: b'\x11>\x1a', + 0x3e1b: b'\x11>\x1b', + 0x3e1c: b'\x11>\x1c', + 0x3e1d: b'\x11>\x1d', + 0x3e1e: b'\x11>\x1e', + 0x3e1f: b'\x11>\x1f', + 0x3e20: b'\x11> ', + 0x3e21: b'\x11>!', + 0x3e22: b'\x11>"', + 0x3e23: b'\x11>#', + 0x3e24: b'\x11>$', + 0x3e25: b'\x11>%', + 0x3e26: b'\x11>&', + 0x3e27: b"\x11>'", + 0x3e28: b'\x11>(', + 0x3e29: b'\x11>)', + 0x3e2a: b'\x11>*', + 0x3e2b: b'\x11>+', + 0x3e2c: b'\x11>,', + 0x3e2d: b'\x11>-', + 0x3e2e: b'\x11>.', + 0x3e2f: b'\x11>/', + 0x3e30: b'\x11>0', + 0x3e31: b'\x11>1', + 0x3e32: b'\x11>2', + 0x3e33: b'\x11>3', + 0x3e34: b'\x11>4', + 0x3e35: b'\x11>5', + 0x3e36: b'\x11>6', + 0x3e37: b'\x11>7', + 0x3e38: b'\x11>8', + 0x3e39: b'\x11>9', + 0x3e3a: b'\x11>:', + 0x3e3b: b'\x11>;', + 0x3e3c: b'\x11><', + 0x3e3d: b'\x11>=', + 0x3e3e: b'\x11>>', + 0x3e3f: b'\x11>?', + 0x3e40: b'\x11>@', + 0x3e41: b'\x11>A', + 0x3e42: b'\x11>B', + 0x3e43: b'\x11>C', + 0x3e44: b'\x11>D', + 0x3e45: b'\x11>E', + 0x3e46: b'\x11>F', + 0x3e47: b'\x11>G', + 0x3e48: b'\x11>H', + 0x3e49: b'\x11>I', + 0x3e4a: b'\x11>J', + 0x3e4b: b'\x11>K', + 0x3e4c: b'\x11>L', + 0x3e4d: b'\x11>M', + 0x3e4e: b'\x11>N', + 0x3e4f: b'\x11>O', + 0x3e50: b'\x11>P', + 0x3e51: b'\x11>Q', + 0x3e52: b'\x11>R', + 0x3e53: b'\x11>S', + 0x3e54: b'\x11>T', + 0x3e55: b'\x11>U', + 0x3e56: b'\x11>V', + 0x3e57: b'\x11>W', + 0x3e58: b'\x11>X', + 0x3e59: b'\x11>Y', + 0x3e5a: b'\x11>Z', + 0x3e5b: b'\x11>[', + 0x3e5c: b'\x11>\\', + 0x3e5d: b'\x11>]', + 0x3e5e: b'\x11>^', + 0x3e5f: b'\x11>_', + 0x3e60: b'\x11>`', + 0x3e61: b'\x11>a', + 0x3e62: b'\x11>b', + 0x3e63: b'\x11>c', + 0x3e64: b'\x11>d', + 0x3e65: b'\x11>e', + 0x3e66: b'\x11>f', + 0x3e67: b'\x11>g', + 0x3e68: b'\x11>h', + 0x3e69: b'\x11>i', + 0x3e6a: b'\x11>j', + 0x3e6b: b'\x11>k', + 0x3e6c: b'\x11>l', + 0x3e6d: b'\x11>m', + 0x3e6e: b'\x11>n', + 0x3e6f: b'\x11>o', + 0x3e70: b'\x11>p', + 0x3e71: b'\x11>q', + 0x3e72: b'\x11>r', + 0x3e73: b'\x11>s', + 0x3e74: b'\x11>t', + 0x3e75: b'\x11>u', + 0x3e76: b'\x11>v', + 0x3e77: b'\x11>w', + 0x3e78: b'\x11>x', + 0x3e79: b'\x11>y', + 0x3e7a: b'\x11>z', + 0x3e7b: b'\x11>{', + 0x3e7c: b'\x11>|', + 0x3e7d: b'\x11>}', + 0x3e7e: b'\x11>~', + 0x3e7f: b'\x11>\x7f', + 0x3e80: b'\x11>\x80', + 0x3e81: b'\x11>\x81', + 0x3e82: b'\x11>\x82', + 0x3e83: b'\x11>\x83', + 0x3e84: b'\x11>\x84', + 0x3e85: b'\x11>\x85', + 0x3e86: b'\x11>\x86', + 0x3e87: b'\x11>\x87', + 0x3e88: b'\x11>\x88', + 0x3e89: b'\x11>\x89', + 0x3e8a: b'\x11>\x8a', + 0x3e8b: b'\x11>\x8b', + 0x3e8c: b'\x11>\x8c', + 0x3e8d: b'\x11>\x8d', + 0x3e8e: b'\x11>\x8e', + 0x3e8f: b'\x11>\x8f', + 0x3e90: b'\x11>\x90', + 0x3e91: b'\x11>\x91', + 0x3e92: b'\x11>\x92', + 0x3e93: b'\x11>\x93', + 0x3e94: b'\x11>\x94', + 0x3e95: b'\x11>\x95', + 0x3e96: b'\x11>\x96', + 0x3e97: b'\x11>\x97', + 0x3e98: b'\x11>\x98', + 0x3e99: b'\x11>\x99', + 0x3e9a: b'\x11>\x9a', + 0x3e9b: b'\x11>\x9b', + 0x3e9c: b'\x11>\x9c', + 0x3e9d: b'\x11>\x9d', + 0x3e9e: b'\x11>\x9e', + 0x3e9f: b'\x11>\x9f', + 0x3ea0: b'\x11>\xa0', + 0x3ea1: b'\x11>\xa1', + 0x3ea2: b'\x11>\xa2', + 0x3ea3: b'\x11>\xa3', + 0x3ea4: b'\x11>\xa4', + 0x3ea5: b'\x11>\xa5', + 0x3ea6: b'\x11>\xa6', + 0x3ea7: b'\x11>\xa7', + 0x3ea8: b'\x11>\xa8', + 0x3ea9: b'\x11>\xa9', + 0x3eaa: b'\x11>\xaa', + 0x3eab: b'\x11>\xab', + 0x3eac: b'\x11>\xac', + 0x3ead: b'\x11>\xad', + 0x3eae: b'\x11>\xae', + 0x3eaf: b'\x11>\xaf', + 0x3eb0: b'\x11>\xb0', + 0x3eb1: b'\x11>\xb1', + 0x3eb2: b'\x11>\xb2', + 0x3eb3: b'\x11>\xb3', + 0x3eb4: b'\x11>\xb4', + 0x3eb5: b'\x11>\xb5', + 0x3eb6: b'\x11>\xb6', + 0x3eb7: b'\x11>\xb7', + 0x3eb8: b'\x11>\xb8', + 0x3eb9: b'\x11>\xb9', + 0x3eba: b'\x11>\xba', + 0x3ebb: b'\x11>\xbb', + 0x3ebc: b'\x11>\xbc', + 0x3ebd: b'\x11>\xbd', + 0x3ebe: b'\x11>\xbe', + 0x3ebf: b'\x11>\xbf', + 0x3ec0: b'\x11>\xc0', + 0x3ec1: b'\x11>\xc1', + 0x3ec2: b'\x11>\xc2', + 0x3ec3: b'\x11>\xc3', + 0x3ec4: b'\x11>\xc4', + 0x3ec5: b'\x11>\xc5', + 0x3ec6: b'\x11>\xc6', + 0x3ec7: b'\x11>\xc7', + 0x3ec8: b'\x11>\xc8', + 0x3ec9: b'\x11>\xc9', + 0x3eca: b'\x11>\xca', + 0x3ecb: b'\x11>\xcb', + 0x3ecc: b'\x11>\xcc', + 0x3ecd: b'\x11>\xcd', + 0x3ece: b'\x11>\xce', + 0x3ecf: b'\x11>\xcf', + 0x3ed0: b'\x11>\xd0', + 0x3ed1: b'\x11>\xd1', + 0x3ed2: b'\x11>\xd2', + 0x3ed3: b'\x11>\xd3', + 0x3ed4: b'\x11>\xd4', + 0x3ed5: b'\x11>\xd5', + 0x3ed6: b'\x11>\xd6', + 0x3ed7: b'\x11>\xd7', + 0x3ed8: b'\x11>\xd8', + 0x3ed9: b'\x11>\xd9', + 0x3eda: b'\x11>\xda', + 0x3edb: b'\x11>\xdb', + 0x3edc: b'\x11>\xdc', + 0x3edd: b'\x11>\xdd', + 0x3ede: b'\x11>\xde', + 0x3edf: b'\x11>\xdf', + 0x3ee0: b'\x11>\xe0', + 0x3ee1: b'\x11>\xe1', + 0x3ee2: b'\x11>\xe2', + 0x3ee3: b'\x11>\xe3', + 0x3ee4: b'\x11>\xe4', + 0x3ee5: b'\x11>\xe5', + 0x3ee6: b'\x11>\xe6', + 0x3ee7: b'\x11>\xe7', + 0x3ee8: b'\x11>\xe8', + 0x3ee9: b'\x11>\xe9', + 0x3eea: b'\x11>\xea', + 0x3eeb: b'\x11>\xeb', + 0x3eec: b'\x11>\xec', + 0x3eed: b'\x11>\xed', + 0x3eee: b'\x11>\xee', + 0x3eef: b'\x11>\xef', + 0x3ef0: b'\x11>\xf0', + 0x3ef1: b'\x11>\xf1', + 0x3ef2: b'\x11>\xf2', + 0x3ef3: b'\x11>\xf3', + 0x3ef4: b'\x11>\xf4', + 0x3ef5: b'\x11>\xf5', + 0x3ef6: b'\x11>\xf6', + 0x3ef7: b'\x11>\xf7', + 0x3ef8: b'\x11>\xf8', + 0x3ef9: b'\x11>\xf9', + 0x3efa: b'\x11>\xfa', + 0x3efb: b'\x11>\xfb', + 0x3efc: b'\x11>\xfc', + 0x3efd: b'\x11>\xfd', + 0x3efe: b'\x11>\xfe', + 0x3eff: b'\x11>\xff', + 0x3f00: b'\x11?\x00', + 0x3f01: b'\x11?\x01', + 0x3f02: b'\x11?\x02', + 0x3f03: b'\x11?\x03', + 0x3f04: b'\x11?\x04', + 0x3f05: b'\x11?\x05', + 0x3f06: b'\x11?\x06', + 0x3f07: b'\x11?\x07', + 0x3f08: b'\x11?\x08', + 0x3f09: b'\x11?\t', + 0x3f0a: b'\x11?\n', + 0x3f0b: b'\x11?\x0b', + 0x3f0c: b'\x11?\x0c', + 0x3f0d: b'\x11?\r', + 0x3f0e: b'\x11?\x0e', + 0x3f0f: b'\x11?\x0f', + 0x3f10: b'\x11?\x10', + 0x3f11: b'\x11?\x11', + 0x3f12: b'\x11?\x12', + 0x3f13: b'\x11?\x13', + 0x3f14: b'\x11?\x14', + 0x3f15: b'\x11?\x15', + 0x3f16: b'\x11?\x16', + 0x3f17: b'\x11?\x17', + 0x3f18: b'\x11?\x18', + 0x3f19: b'\x11?\x19', + 0x3f1a: b'\x11?\x1a', + 0x3f1b: b'\x11?\x1b', + 0x3f1c: b'\x11?\x1c', + 0x3f1d: b'\x11?\x1d', + 0x3f1e: b'\x11?\x1e', + 0x3f1f: b'\x11?\x1f', + 0x3f20: b'\x11? ', + 0x3f21: b'\x11?!', + 0x3f22: b'\x11?"', + 0x3f23: b'\x11?#', + 0x3f24: b'\x11?$', + 0x3f25: b'\x11?%', + 0x3f26: b'\x11?&', + 0x3f27: b"\x11?'", + 0x3f28: b'\x11?(', + 0x3f29: b'\x11?)', + 0x3f2a: b'\x11?*', + 0x3f2b: b'\x11?+', + 0x3f2c: b'\x11?,', + 0x3f2d: b'\x11?-', + 0x3f2e: b'\x11?.', + 0x3f2f: b'\x11?/', + 0x3f30: b'\x11?0', + 0x3f31: b'\x11?1', + 0x3f32: b'\x11?2', + 0x3f33: b'\x11?3', + 0x3f34: b'\x11?4', + 0x3f35: b'\x11?5', + 0x3f36: b'\x11?6', + 0x3f37: b'\x11?7', + 0x3f38: b'\x11?8', + 0x3f39: b'\x11?9', + 0x3f3a: b'\x11?:', + 0x3f3b: b'\x11?;', + 0x3f3c: b'\x11?<', + 0x3f3d: b'\x11?=', + 0x3f3e: b'\x11?>', + 0x3f3f: b'\x11??', + 0x3f40: b'\x11?@', + 0x3f41: b'\x11?A', + 0x3f42: b'\x11?B', + 0x3f43: b'\x11?C', + 0x3f44: b'\x11?D', + 0x3f45: b'\x11?E', + 0x3f46: b'\x11?F', + 0x3f47: b'\x11?G', + 0x3f48: b'\x11?H', + 0x3f49: b'\x11?I', + 0x3f4a: b'\x11?J', + 0x3f4b: b'\x11?K', + 0x3f4c: b'\x11?L', + 0x3f4d: b'\x11?M', + 0x3f4e: b'\x11?N', + 0x3f4f: b'\x11?O', + 0x3f50: b'\x11?P', + 0x3f51: b'\x11?Q', + 0x3f52: b'\x11?R', + 0x3f53: b'\x11?S', + 0x3f54: b'\x11?T', + 0x3f55: b'\x11?U', + 0x3f56: b'\x11?V', + 0x3f57: b'\x11?W', + 0x3f58: b'\x11?X', + 0x3f59: b'\x11?Y', + 0x3f5a: b'\x11?Z', + 0x3f5b: b'\x11?[', + 0x3f5c: b'\x11?\\', + 0x3f5d: b'\x11?]', + 0x3f5e: b'\x11?^', + 0x3f5f: b'\x11?_', + 0x3f60: b'\x11?`', + 0x3f61: b'\x11?a', + 0x3f62: b'\x11?b', + 0x3f63: b'\x11?c', + 0x3f64: b'\x11?d', + 0x3f65: b'\x11?e', + 0x3f66: b'\x11?f', + 0x3f67: b'\x11?g', + 0x3f68: b'\x11?h', + 0x3f69: b'\x11?i', + 0x3f6a: b'\x11?j', + 0x3f6b: b'\x11?k', + 0x3f6c: b'\x11?l', + 0x3f6d: b'\x11?m', + 0x3f6e: b'\x11?n', + 0x3f6f: b'\x11?o', + 0x3f70: b'\x11?p', + 0x3f71: b'\x11?q', + 0x3f72: b'\x11?r', + 0x3f73: b'\x11?s', + 0x3f74: b'\x11?t', + 0x3f75: b'\x11?u', + 0x3f76: b'\x11?v', + 0x3f77: b'\x11?w', + 0x3f78: b'\x11?x', + 0x3f79: b'\x11?y', + 0x3f7a: b'\x11?z', + 0x3f7b: b'\x11?{', + 0x3f7c: b'\x11?|', + 0x3f7d: b'\x11?}', + 0x3f7e: b'\x11?~', + 0x3f7f: b'\x11?\x7f', + 0x3f80: b'\x11?\x80', + 0x3f81: b'\x11?\x81', + 0x3f82: b'\x11?\x82', + 0x3f83: b'\x11?\x83', + 0x3f84: b'\x11?\x84', + 0x3f85: b'\x11?\x85', + 0x3f86: b'\x11?\x86', + 0x3f87: b'\x11?\x87', + 0x3f88: b'\x11?\x88', + 0x3f89: b'\x11?\x89', + 0x3f8a: b'\x11?\x8a', + 0x3f8b: b'\x11?\x8b', + 0x3f8c: b'\x11?\x8c', + 0x3f8d: b'\x11?\x8d', + 0x3f8e: b'\x11?\x8e', + 0x3f8f: b'\x11?\x8f', + 0x3f90: b'\x11?\x90', + 0x3f91: b'\x11?\x91', + 0x3f92: b'\x11?\x92', + 0x3f93: b'\x11?\x93', + 0x3f94: b'\x11?\x94', + 0x3f95: b'\x11?\x95', + 0x3f96: b'\x11?\x96', + 0x3f97: b'\x11?\x97', + 0x3f98: b'\x11?\x98', + 0x3f99: b'\x11?\x99', + 0x3f9a: b'\x11?\x9a', + 0x3f9b: b'\x11?\x9b', + 0x3f9c: b'\x11?\x9c', + 0x3f9d: b'\x11?\x9d', + 0x3f9e: b'\x11?\x9e', + 0x3f9f: b'\x11?\x9f', + 0x3fa0: b'\x11?\xa0', + 0x3fa1: b'\x11?\xa1', + 0x3fa2: b'\x11?\xa2', + 0x3fa3: b'\x11?\xa3', + 0x3fa4: b'\x11?\xa4', + 0x3fa5: b'\x11?\xa5', + 0x3fa6: b'\x11?\xa6', + 0x3fa7: b'\x11?\xa7', + 0x3fa8: b'\x11?\xa8', + 0x3fa9: b'\x11?\xa9', + 0x3faa: b'\x11?\xaa', + 0x3fab: b'\x11?\xab', + 0x3fac: b'\x11?\xac', + 0x3fad: b'\x11?\xad', + 0x3fae: b'\x11?\xae', + 0x3faf: b'\x11?\xaf', + 0x3fb0: b'\x11?\xb0', + 0x3fb1: b'\x11?\xb1', + 0x3fb2: b'\x11?\xb2', + 0x3fb3: b'\x11?\xb3', + 0x3fb4: b'\x11?\xb4', + 0x3fb5: b'\x11?\xb5', + 0x3fb6: b'\x11?\xb6', + 0x3fb7: b'\x11?\xb7', + 0x3fb8: b'\x11?\xb8', + 0x3fb9: b'\x11?\xb9', + 0x3fba: b'\x11?\xba', + 0x3fbb: b'\x11?\xbb', + 0x3fbc: b'\x11?\xbc', + 0x3fbd: b'\x11?\xbd', + 0x3fbe: b'\x11?\xbe', + 0x3fbf: b'\x11?\xbf', + 0x3fc0: b'\x11?\xc0', + 0x3fc1: b'\x11?\xc1', + 0x3fc2: b'\x11?\xc2', + 0x3fc3: b'\x11?\xc3', + 0x3fc4: b'\x11?\xc4', + 0x3fc5: b'\x11?\xc5', + 0x3fc6: b'\x11?\xc6', + 0x3fc7: b'\x11?\xc7', + 0x3fc8: b'\x11?\xc8', + 0x3fc9: b'\x11?\xc9', + 0x3fca: b'\x11?\xca', + 0x3fcb: b'\x11?\xcb', + 0x3fcc: b'\x11?\xcc', + 0x3fcd: b'\x11?\xcd', + 0x3fce: b'\x11?\xce', + 0x3fcf: b'\x11?\xcf', + 0x3fd0: b'\x11?\xd0', + 0x3fd1: b'\x11?\xd1', + 0x3fd2: b'\x11?\xd2', + 0x3fd3: b'\x11?\xd3', + 0x3fd4: b'\x11?\xd4', + 0x3fd5: b'\x11?\xd5', + 0x3fd6: b'\x11?\xd6', + 0x3fd7: b'\x11?\xd7', + 0x3fd8: b'\x11?\xd8', + 0x3fd9: b'\x11?\xd9', + 0x3fda: b'\x11?\xda', + 0x3fdb: b'\x11?\xdb', + 0x3fdc: b'\x11?\xdc', + 0x3fdd: b'\x11?\xdd', + 0x3fde: b'\x11?\xde', + 0x3fdf: b'\x11?\xdf', + 0x3fe0: b'\x11?\xe0', + 0x3fe1: b'\x11?\xe1', + 0x3fe2: b'\x11?\xe2', + 0x3fe3: b'\x11?\xe3', + 0x3fe4: b'\x11?\xe4', + 0x3fe5: b'\x11?\xe5', + 0x3fe6: b'\x11?\xe6', + 0x3fe7: b'\x11?\xe7', + 0x3fe8: b'\x11?\xe8', + 0x3fe9: b'\x11?\xe9', + 0x3fea: b'\x11?\xea', + 0x3feb: b'\x11?\xeb', + 0x3fec: b'\x11?\xec', + 0x3fed: b'\x11?\xed', + 0x3fee: b'\x11?\xee', + 0x3fef: b'\x11?\xef', + 0x3ff0: b'\x11?\xf0', + 0x3ff1: b'\x11?\xf1', + 0x3ff2: b'\x11?\xf2', + 0x3ff3: b'\x11?\xf3', + 0x3ff4: b'\x11?\xf4', + 0x3ff5: b'\x11?\xf5', + 0x3ff6: b'\x11?\xf6', + 0x3ff7: b'\x11?\xf7', + 0x3ff8: b'\x11?\xf8', + 0x3ff9: b'\x11?\xf9', + 0x3ffa: b'\x11?\xfa', + 0x3ffb: b'\x11?\xfb', + 0x3ffc: b'\x11?\xfc', + 0x3ffd: b'\x11?\xfd', + 0x3ffe: b'\x11?\xfe', + 0x3fff: b'\x11?\xff', + 0x4000: b'\x11@\x00', + 0x4001: b'\x11@\x01', + 0x4002: b'\x11@\x02', + 0x4003: b'\x11@\x03', + 0x4004: b'\x11@\x04', + 0x4005: b'\x11@\x05', + 0x4006: b'\x11@\x06', + 0x4007: b'\x11@\x07', + 0x4008: b'\x11@\x08', + 0x4009: b'\x11@\t', + 0x400a: b'\x11@\n', + 0x400b: b'\x11@\x0b', + 0x400c: b'\x11@\x0c', + 0x400d: b'\x11@\r', + 0x400e: b'\x11@\x0e', + 0x400f: b'\x11@\x0f', + 0x4010: b'\x11@\x10', + 0x4011: b'\x11@\x11', + 0x4012: b'\x11@\x12', + 0x4013: b'\x11@\x13', + 0x4014: b'\x11@\x14', + 0x4015: b'\x11@\x15', + 0x4016: b'\x11@\x16', + 0x4017: b'\x11@\x17', + 0x4018: b'\x11@\x18', + 0x4019: b'\x11@\x19', + 0x401a: b'\x11@\x1a', + 0x401b: b'\x11@\x1b', + 0x401c: b'\x11@\x1c', + 0x401d: b'\x11@\x1d', + 0x401e: b'\x11@\x1e', + 0x401f: b'\x11@\x1f', + 0x4020: b'\x11@ ', + 0x4021: b'\x11@!', + 0x4022: b'\x11@"', + 0x4023: b'\x11@#', + 0x4024: b'\x11@$', + 0x4025: b'\x11@%', + 0x4026: b'\x11@&', + 0x4027: b"\x11@'", + 0x4028: b'\x11@(', + 0x4029: b'\x11@)', + 0x402a: b'\x11@*', + 0x402b: b'\x11@+', + 0x402c: b'\x11@,', + 0x402d: b'\x11@-', + 0x402e: b'\x11@.', + 0x402f: b'\x11@/', + 0x4030: b'\x11@0', + 0x4031: b'\x11@1', + 0x4032: b'\x11@2', + 0x4033: b'\x11@3', + 0x4034: b'\x11@4', + 0x4035: b'\x11@5', + 0x4036: b'\x11@6', + 0x4037: b'\x11@7', + 0x4038: b'\x11@8', + 0x4039: b'\x11@9', + 0x403a: b'\x11@:', + 0x403b: b'\x11@;', + 0x403c: b'\x11@<', + 0x403d: b'\x11@=', + 0x403e: b'\x11@>', + 0x403f: b'\x11@?', + 0x4040: b'\x11@@', + 0x4041: b'\x11@A', + 0x4042: b'\x11@B', + 0x4043: b'\x11@C', + 0x4044: b'\x11@D', + 0x4045: b'\x11@E', + 0x4046: b'\x11@F', + 0x4047: b'\x11@G', + 0x4048: b'\x11@H', + 0x4049: b'\x11@I', + 0x404a: b'\x11@J', + 0x404b: b'\x11@K', + 0x404c: b'\x11@L', + 0x404d: b'\x11@M', + 0x404e: b'\x11@N', + 0x404f: b'\x11@O', + 0x4050: b'\x11@P', + 0x4051: b'\x11@Q', + 0x4052: b'\x11@R', + 0x4053: b'\x11@S', + 0x4054: b'\x11@T', + 0x4055: b'\x11@U', + 0x4056: b'\x11@V', + 0x4057: b'\x11@W', + 0x4058: b'\x11@X', + 0x4059: b'\x11@Y', + 0x405a: b'\x11@Z', + 0x405b: b'\x11@[', + 0x405c: b'\x11@\\', + 0x405d: b'\x11@]', + 0x405e: b'\x11@^', + 0x405f: b'\x11@_', + 0x4060: b'\x11@`', + 0x4061: b'\x11@a', + 0x4062: b'\x11@b', + 0x4063: b'\x11@c', + 0x4064: b'\x11@d', + 0x4065: b'\x11@e', + 0x4066: b'\x11@f', + 0x4067: b'\x11@g', + 0x4068: b'\x11@h', + 0x4069: b'\x11@i', + 0x406a: b'\x11@j', + 0x406b: b'\x11@k', + 0x406c: b'\x11@l', + 0x406d: b'\x11@m', + 0x406e: b'\x11@n', + 0x406f: b'\x11@o', + 0x4070: b'\x11@p', + 0x4071: b'\x11@q', + 0x4072: b'\x11@r', + 0x4073: b'\x11@s', + 0x4074: b'\x11@t', + 0x4075: b'\x11@u', + 0x4076: b'\x11@v', + 0x4077: b'\x11@w', + 0x4078: b'\x11@x', + 0x4079: b'\x11@y', + 0x407a: b'\x11@z', + 0x407b: b'\x11@{', + 0x407c: b'\x11@|', + 0x407d: b'\x11@}', + 0x407e: b'\x11@~', + 0x407f: b'\x11@\x7f', + 0x4080: b'\x11@\x80', + 0x4081: b'\x11@\x81', + 0x4082: b'\x11@\x82', + 0x4083: b'\x11@\x83', + 0x4084: b'\x11@\x84', + 0x4085: b'\x11@\x85', + 0x4086: b'\x11@\x86', + 0x4087: b'\x11@\x87', + 0x4088: b'\x11@\x88', + 0x4089: b'\x11@\x89', + 0x408a: b'\x11@\x8a', + 0x408b: b'\x11@\x8b', + 0x408c: b'\x11@\x8c', + 0x408d: b'\x11@\x8d', + 0x408e: b'\x11@\x8e', + 0x408f: b'\x11@\x8f', + 0x4090: b'\x11@\x90', + 0x4091: b'\x11@\x91', + 0x4092: b'\x11@\x92', + 0x4093: b'\x11@\x93', + 0x4094: b'\x11@\x94', + 0x4095: b'\x11@\x95', + 0x4096: b'\x11@\x96', + 0x4097: b'\x11@\x97', + 0x4098: b'\x11@\x98', + 0x4099: b'\x11@\x99', + 0x409a: b'\x11@\x9a', + 0x409b: b'\x11@\x9b', + 0x409c: b'\x11@\x9c', + 0x409d: b'\x11@\x9d', + 0x409e: b'\x11@\x9e', + 0x409f: b'\x11@\x9f', + 0x40a0: b'\x11@\xa0', + 0x40a1: b'\x11@\xa1', + 0x40a2: b'\x11@\xa2', + 0x40a3: b'\x11@\xa3', + 0x40a4: b'\x11@\xa4', + 0x40a5: b'\x11@\xa5', + 0x40a6: b'\x11@\xa6', + 0x40a7: b'\x11@\xa7', + 0x40a8: b'\x11@\xa8', + 0x40a9: b'\x11@\xa9', + 0x40aa: b'\x11@\xaa', + 0x40ab: b'\x11@\xab', + 0x40ac: b'\x11@\xac', + 0x40ad: b'\x11@\xad', + 0x40ae: b'\x11@\xae', + 0x40af: b'\x11@\xaf', + 0x40b0: b'\x11@\xb0', + 0x40b1: b'\x11@\xb1', + 0x40b2: b'\x11@\xb2', + 0x40b3: b'\x11@\xb3', + 0x40b4: b'\x11@\xb4', + 0x40b5: b'\x11@\xb5', + 0x40b6: b'\x11@\xb6', + 0x40b7: b'\x11@\xb7', + 0x40b8: b'\x11@\xb8', + 0x40b9: b'\x11@\xb9', + 0x40ba: b'\x11@\xba', + 0x40bb: b'\x11@\xbb', + 0x40bc: b'\x11@\xbc', + 0x40bd: b'\x11@\xbd', + 0x40be: b'\x11@\xbe', + 0x40bf: b'\x11@\xbf', + 0x40c0: b'\x11@\xc0', + 0x40c1: b'\x11@\xc1', + 0x40c2: b'\x11@\xc2', + 0x40c3: b'\x11@\xc3', + 0x40c4: b'\x11@\xc4', + 0x40c5: b'\x11@\xc5', + 0x40c6: b'\x11@\xc6', + 0x40c7: b'\x11@\xc7', + 0x40c8: b'\x11@\xc8', + 0x40c9: b'\x11@\xc9', + 0x40ca: b'\x11@\xca', + 0x40cb: b'\x11@\xcb', + 0x40cc: b'\x11@\xcc', + 0x40cd: b'\x11@\xcd', + 0x40ce: b'\x11@\xce', + 0x40cf: b'\x11@\xcf', + 0x40d0: b'\x11@\xd0', + 0x40d1: b'\x11@\xd1', + 0x40d2: b'\x11@\xd2', + 0x40d3: b'\x11@\xd3', + 0x40d4: b'\x11@\xd4', + 0x40d5: b'\x11@\xd5', + 0x40d6: b'\x11@\xd6', + 0x40d7: b'\x11@\xd7', + 0x40d8: b'\x11@\xd8', + 0x40d9: b'\x11@\xd9', + 0x40da: b'\x11@\xda', + 0x40db: b'\x11@\xdb', + 0x40dc: b'\x11@\xdc', + 0x40dd: b'\x11@\xdd', + 0x40de: b'\x11@\xde', + 0x40df: b'\x11@\xdf', + 0x40e0: b'\x11@\xe0', + 0x40e1: b'\x11@\xe1', + 0x40e2: b'\x11@\xe2', + 0x40e3: b'\x11@\xe3', + 0x40e4: b'\x11@\xe4', + 0x40e5: b'\x11@\xe5', + 0x40e6: b'\x11@\xe6', + 0x40e7: b'\x11@\xe7', + 0x40e8: b'\x11@\xe8', + 0x40e9: b'\x11@\xe9', + 0x40ea: b'\x11@\xea', + 0x40eb: b'\x11@\xeb', + 0x40ec: b'\x11@\xec', + 0x40ed: b'\x11@\xed', + 0x40ee: b'\x11@\xee', + 0x40ef: b'\x11@\xef', + 0x40f0: b'\x11@\xf0', + 0x40f1: b'\x11@\xf1', + 0x40f2: b'\x11@\xf2', + 0x40f3: b'\x11@\xf3', + 0x40f4: b'\x11@\xf4', + 0x40f5: b'\x11@\xf5', + 0x40f6: b'\x11@\xf6', + 0x40f7: b'\x11@\xf7', + 0x40f8: b'\x11@\xf8', + 0x40f9: b'\x11@\xf9', + 0x40fa: b'\x11@\xfa', + 0x40fb: b'\x11@\xfb', + 0x40fc: b'\x11@\xfc', + 0x40fd: b'\x11@\xfd', + 0x40fe: b'\x11@\xfe', + 0x40ff: b'\x11@\xff', + 0x4100: b'\x11A\x00', + 0x4101: b'\x11A\x01', + 0x4102: b'\x11A\x02', + 0x4103: b'\x11A\x03', + 0x4104: b'\x11A\x04', + 0x4105: b'\x11A\x05', + 0x4106: b'\x11A\x06', + 0x4107: b'\x11A\x07', + 0x4108: b'\x11A\x08', + 0x4109: b'\x11A\t', + 0x410a: b'\x11A\n', + 0x410b: b'\x11A\x0b', + 0x410c: b'\x11A\x0c', + 0x410d: b'\x11A\r', + 0x410e: b'\x11A\x0e', + 0x410f: b'\x11A\x0f', + 0x4110: b'\x11A\x10', + 0x4111: b'\x11A\x11', + 0x4112: b'\x11A\x12', + 0x4113: b'\x11A\x13', + 0x4114: b'\x11A\x14', + 0x4115: b'\x11A\x15', + 0x4116: b'\x11A\x16', + 0x4117: b'\x11A\x17', + 0x4118: b'\x11A\x18', + 0x4119: b'\x11A\x19', + 0x411a: b'\x11A\x1a', + 0x411b: b'\x11A\x1b', + 0x411c: b'\x11A\x1c', + 0x411d: b'\x11A\x1d', + 0x411e: b'\x11A\x1e', + 0x411f: b'\x11A\x1f', + 0x4120: b'\x11A ', + 0x4121: b'\x11A!', + 0x4122: b'\x11A"', + 0x4123: b'\x11A#', + 0x4124: b'\x11A$', + 0x4125: b'\x11A%', + 0x4126: b'\x11A&', + 0x4127: b"\x11A'", + 0x4128: b'\x11A(', + 0x4129: b'\x11A)', + 0x412a: b'\x11A*', + 0x412b: b'\x11A+', + 0x412c: b'\x11A,', + 0x412d: b'\x11A-', + 0x412e: b'\x11A.', + 0x412f: b'\x11A/', + 0x4130: b'\x11A0', + 0x4131: b'\x11A1', + 0x4132: b'\x11A2', + 0x4133: b'\x11A3', + 0x4134: b'\x11A4', + 0x4135: b'\x11A5', + 0x4136: b'\x11A6', + 0x4137: b'\x11A7', + 0x4138: b'\x11A8', + 0x4139: b'\x11A9', + 0x413a: b'\x11A:', + 0x413b: b'\x11A;', + 0x413c: b'\x11A<', + 0x413d: b'\x11A=', + 0x413e: b'\x11A>', + 0x413f: b'\x11A?', + 0x4140: b'\x11A@', + 0x4141: b'\x11AA', + 0x4142: b'\x11AB', + 0x4143: b'\x11AC', + 0x4144: b'\x11AD', + 0x4145: b'\x11AE', + 0x4146: b'\x11AF', + 0x4147: b'\x11AG', + 0x4148: b'\x11AH', + 0x4149: b'\x11AI', + 0x414a: b'\x11AJ', + 0x414b: b'\x11AK', + 0x414c: b'\x11AL', + 0x414d: b'\x11AM', + 0x414e: b'\x11AN', + 0x414f: b'\x11AO', + 0x4150: b'\x11AP', + 0x4151: b'\x11AQ', + 0x4152: b'\x11AR', + 0x4153: b'\x11AS', + 0x4154: b'\x11AT', + 0x4155: b'\x11AU', + 0x4156: b'\x11AV', + 0x4157: b'\x11AW', + 0x4158: b'\x11AX', + 0x4159: b'\x11AY', + 0x415a: b'\x11AZ', + 0x415b: b'\x11A[', + 0x415c: b'\x11A\\', + 0x415d: b'\x11A]', + 0x415e: b'\x11A^', + 0x415f: b'\x11A_', + 0x4160: b'\x11A`', + 0x4161: b'\x11Aa', + 0x4162: b'\x11Ab', + 0x4163: b'\x11Ac', + 0x4164: b'\x11Ad', + 0x4165: b'\x11Ae', + 0x4166: b'\x11Af', + 0x4167: b'\x11Ag', + 0x4168: b'\x11Ah', + 0x4169: b'\x11Ai', + 0x416a: b'\x11Aj', + 0x416b: b'\x11Ak', + 0x416c: b'\x11Al', + 0x416d: b'\x11Am', + 0x416e: b'\x11An', + 0x416f: b'\x11Ao', + 0x4170: b'\x11Ap', + 0x4171: b'\x11Aq', + 0x4172: b'\x11Ar', + 0x4173: b'\x11As', + 0x4174: b'\x11At', + 0x4175: b'\x11Au', + 0x4176: b'\x11Av', + 0x4177: b'\x11Aw', + 0x4178: b'\x11Ax', + 0x4179: b'\x11Ay', + 0x417a: b'\x11Az', + 0x417b: b'\x11A{', + 0x417c: b'\x11A|', + 0x417d: b'\x11A}', + 0x417e: b'\x11A~', + 0x417f: b'\x11A\x7f', + 0x4180: b'\x11A\x80', + 0x4181: b'\x11A\x81', + 0x4182: b'\x11A\x82', + 0x4183: b'\x11A\x83', + 0x4184: b'\x11A\x84', + 0x4185: b'\x11A\x85', + 0x4186: b'\x11A\x86', + 0x4187: b'\x11A\x87', + 0x4188: b'\x11A\x88', + 0x4189: b'\x11A\x89', + 0x418a: b'\x11A\x8a', + 0x418b: b'\x11A\x8b', + 0x418c: b'\x11A\x8c', + 0x418d: b'\x11A\x8d', + 0x418e: b'\x11A\x8e', + 0x418f: b'\x11A\x8f', + 0x4190: b'\x11A\x90', + 0x4191: b'\x11A\x91', + 0x4192: b'\x11A\x92', + 0x4193: b'\x11A\x93', + 0x4194: b'\x11A\x94', + 0x4195: b'\x11A\x95', + 0x4196: b'\x11A\x96', + 0x4197: b'\x11A\x97', + 0x4198: b'\x11A\x98', + 0x4199: b'\x11A\x99', + 0x419a: b'\x11A\x9a', + 0x419b: b'\x11A\x9b', + 0x419c: b'\x11A\x9c', + 0x419d: b'\x11A\x9d', + 0x419e: b'\x11A\x9e', + 0x419f: b'\x11A\x9f', + 0x41a0: b'\x11A\xa0', + 0x41a1: b'\x11A\xa1', + 0x41a2: b'\x11A\xa2', + 0x41a3: b'\x11A\xa3', + 0x41a4: b'\x11A\xa4', + 0x41a5: b'\x11A\xa5', + 0x41a6: b'\x11A\xa6', + 0x41a7: b'\x11A\xa7', + 0x41a8: b'\x11A\xa8', + 0x41a9: b'\x11A\xa9', + 0x41aa: b'\x11A\xaa', + 0x41ab: b'\x11A\xab', + 0x41ac: b'\x11A\xac', + 0x41ad: b'\x11A\xad', + 0x41ae: b'\x11A\xae', + 0x41af: b'\x11A\xaf', + 0x41b0: b'\x11A\xb0', + 0x41b1: b'\x11A\xb1', + 0x41b2: b'\x11A\xb2', + 0x41b3: b'\x11A\xb3', + 0x41b4: b'\x11A\xb4', + 0x41b5: b'\x11A\xb5', + 0x41b6: b'\x11A\xb6', + 0x41b7: b'\x11A\xb7', + 0x41b8: b'\x11A\xb8', + 0x41b9: b'\x11A\xb9', + 0x41ba: b'\x11A\xba', + 0x41bb: b'\x11A\xbb', + 0x41bc: b'\x11A\xbc', + 0x41bd: b'\x11A\xbd', + 0x41be: b'\x11A\xbe', + 0x41bf: b'\x11A\xbf', + 0x41c0: b'\x11A\xc0', + 0x41c1: b'\x11A\xc1', + 0x41c2: b'\x11A\xc2', + 0x41c3: b'\x11A\xc3', + 0x41c4: b'\x11A\xc4', + 0x41c5: b'\x11A\xc5', + 0x41c6: b'\x11A\xc6', + 0x41c7: b'\x11A\xc7', + 0x41c8: b'\x11A\xc8', + 0x41c9: b'\x11A\xc9', + 0x41ca: b'\x11A\xca', + 0x41cb: b'\x11A\xcb', + 0x41cc: b'\x11A\xcc', + 0x41cd: b'\x11A\xcd', + 0x41ce: b'\x11A\xce', + 0x41cf: b'\x11A\xcf', + 0x41d0: b'\x11A\xd0', + 0x41d1: b'\x11A\xd1', + 0x41d2: b'\x11A\xd2', + 0x41d3: b'\x11A\xd3', + 0x41d4: b'\x11A\xd4', + 0x41d5: b'\x11A\xd5', + 0x41d6: b'\x11A\xd6', + 0x41d7: b'\x11A\xd7', + 0x41d8: b'\x11A\xd8', + 0x41d9: b'\x11A\xd9', + 0x41da: b'\x11A\xda', + 0x41db: b'\x11A\xdb', + 0x41dc: b'\x11A\xdc', + 0x41dd: b'\x11A\xdd', + 0x41de: b'\x11A\xde', + 0x41df: b'\x11A\xdf', + 0x41e0: b'\x11A\xe0', + 0x41e1: b'\x11A\xe1', + 0x41e2: b'\x11A\xe2', + 0x41e3: b'\x11A\xe3', + 0x41e4: b'\x11A\xe4', + 0x41e5: b'\x11A\xe5', + 0x41e6: b'\x11A\xe6', + 0x41e7: b'\x11A\xe7', + 0x41e8: b'\x11A\xe8', + 0x41e9: b'\x11A\xe9', + 0x41ea: b'\x11A\xea', + 0x41eb: b'\x11A\xeb', + 0x41ec: b'\x11A\xec', + 0x41ed: b'\x11A\xed', + 0x41ee: b'\x11A\xee', + 0x41ef: b'\x11A\xef', + 0x41f0: b'\x11A\xf0', + 0x41f1: b'\x11A\xf1', + 0x41f2: b'\x11A\xf2', + 0x41f3: b'\x11A\xf3', + 0x41f4: b'\x11A\xf4', + 0x41f5: b'\x11A\xf5', + 0x41f6: b'\x11A\xf6', + 0x41f7: b'\x11A\xf7', + 0x41f8: b'\x11A\xf8', + 0x41f9: b'\x11A\xf9', + 0x41fa: b'\x11A\xfa', + 0x41fb: b'\x11A\xfb', + 0x41fc: b'\x11A\xfc', + 0x41fd: b'\x11A\xfd', + 0x41fe: b'\x11A\xfe', + 0x41ff: b'\x11A\xff', + 0x4200: b'\x11B\x00', + 0x4201: b'\x11B\x01', + 0x4202: b'\x11B\x02', + 0x4203: b'\x11B\x03', + 0x4204: b'\x11B\x04', + 0x4205: b'\x11B\x05', + 0x4206: b'\x11B\x06', + 0x4207: b'\x11B\x07', + 0x4208: b'\x11B\x08', + 0x4209: b'\x11B\t', + 0x420a: b'\x11B\n', + 0x420b: b'\x11B\x0b', + 0x420c: b'\x11B\x0c', + 0x420d: b'\x11B\r', + 0x420e: b'\x11B\x0e', + 0x420f: b'\x11B\x0f', + 0x4210: b'\x11B\x10', + 0x4211: b'\x11B\x11', + 0x4212: b'\x11B\x12', + 0x4213: b'\x11B\x13', + 0x4214: b'\x11B\x14', + 0x4215: b'\x11B\x15', + 0x4216: b'\x11B\x16', + 0x4217: b'\x11B\x17', + 0x4218: b'\x11B\x18', + 0x4219: b'\x11B\x19', + 0x421a: b'\x11B\x1a', + 0x421b: b'\x11B\x1b', + 0x421c: b'\x11B\x1c', + 0x421d: b'\x11B\x1d', + 0x421e: b'\x11B\x1e', + 0x421f: b'\x11B\x1f', + 0x4220: b'\x11B ', + 0x4221: b'\x11B!', + 0x4222: b'\x11B"', + 0x4223: b'\x11B#', + 0x4224: b'\x11B$', + 0x4225: b'\x11B%', + 0x4226: b'\x11B&', + 0x4227: b"\x11B'", + 0x4228: b'\x11B(', + 0x4229: b'\x11B)', + 0x422a: b'\x11B*', + 0x422b: b'\x11B+', + 0x422c: b'\x11B,', + 0x422d: b'\x11B-', + 0x422e: b'\x11B.', + 0x422f: b'\x11B/', + 0x4230: b'\x11B0', + 0x4231: b'\x11B1', + 0x4232: b'\x11B2', + 0x4233: b'\x11B3', + 0x4234: b'\x11B4', + 0x4235: b'\x11B5', + 0x4236: b'\x11B6', + 0x4237: b'\x11B7', + 0x4238: b'\x11B8', + 0x4239: b'\x11B9', + 0x423a: b'\x11B:', + 0x423b: b'\x11B;', + 0x423c: b'\x11B<', + 0x423d: b'\x11B=', + 0x423e: b'\x11B>', + 0x423f: b'\x11B?', + 0x4240: b'\x11B@', + 0x4241: b'\x11BA', + 0x4242: b'\x11BB', + 0x4243: b'\x11BC', + 0x4244: b'\x11BD', + 0x4245: b'\x11BE', + 0x4246: b'\x11BF', + 0x4247: b'\x11BG', + 0x4248: b'\x11BH', + 0x4249: b'\x11BI', + 0x424a: b'\x11BJ', + 0x424b: b'\x11BK', + 0x424c: b'\x11BL', + 0x424d: b'\x11BM', + 0x424e: b'\x11BN', + 0x424f: b'\x11BO', + 0x4250: b'\x11BP', + 0x4251: b'\x11BQ', + 0x4252: b'\x11BR', + 0x4253: b'\x11BS', + 0x4254: b'\x11BT', + 0x4255: b'\x11BU', + 0x4256: b'\x11BV', + 0x4257: b'\x11BW', + 0x4258: b'\x11BX', + 0x4259: b'\x11BY', + 0x425a: b'\x11BZ', + 0x425b: b'\x11B[', + 0x425c: b'\x11B\\', + 0x425d: b'\x11B]', + 0x425e: b'\x11B^', + 0x425f: b'\x11B_', + 0x4260: b'\x11B`', + 0x4261: b'\x11Ba', + 0x4262: b'\x11Bb', + 0x4263: b'\x11Bc', + 0x4264: b'\x11Bd', + 0x4265: b'\x11Be', + 0x4266: b'\x11Bf', + 0x4267: b'\x11Bg', + 0x4268: b'\x11Bh', + 0x4269: b'\x11Bi', + 0x426a: b'\x11Bj', + 0x426b: b'\x11Bk', + 0x426c: b'\x11Bl', + 0x426d: b'\x11Bm', + 0x426e: b'\x11Bn', + 0x426f: b'\x11Bo', + 0x4270: b'\x11Bp', + 0x4271: b'\x11Bq', + 0x4272: b'\x11Br', + 0x4273: b'\x11Bs', + 0x4274: b'\x11Bt', + 0x4275: b'\x11Bu', + 0x4276: b'\x11Bv', + 0x4277: b'\x11Bw', + 0x4278: b'\x11Bx', + 0x4279: b'\x11By', + 0x427a: b'\x11Bz', + 0x427b: b'\x11B{', + 0x427c: b'\x11B|', + 0x427d: b'\x11B}', + 0x427e: b'\x11B~', + 0x427f: b'\x11B\x7f', + 0x4280: b'\x11B\x80', + 0x4281: b'\x11B\x81', + 0x4282: b'\x11B\x82', + 0x4283: b'\x11B\x83', + 0x4284: b'\x11B\x84', + 0x4285: b'\x11B\x85', + 0x4286: b'\x11B\x86', + 0x4287: b'\x11B\x87', + 0x4288: b'\x11B\x88', + 0x4289: b'\x11B\x89', + 0x428a: b'\x11B\x8a', + 0x428b: b'\x11B\x8b', + 0x428c: b'\x11B\x8c', + 0x428d: b'\x11B\x8d', + 0x428e: b'\x11B\x8e', + 0x428f: b'\x11B\x8f', + 0x4290: b'\x11B\x90', + 0x4291: b'\x11B\x91', + 0x4292: b'\x11B\x92', + 0x4293: b'\x11B\x93', + 0x4294: b'\x11B\x94', + 0x4295: b'\x11B\x95', + 0x4296: b'\x11B\x96', + 0x4297: b'\x11B\x97', + 0x4298: b'\x11B\x98', + 0x4299: b'\x11B\x99', + 0x429a: b'\x11B\x9a', + 0x429b: b'\x11B\x9b', + 0x429c: b'\x11B\x9c', + 0x429d: b'\x11B\x9d', + 0x429e: b'\x11B\x9e', + 0x429f: b'\x11B\x9f', + 0x42a0: b'\x11B\xa0', + 0x42a1: b'\x11B\xa1', + 0x42a2: b'\x11B\xa2', + 0x42a3: b'\x11B\xa3', + 0x42a4: b'\x11B\xa4', + 0x42a5: b'\x11B\xa5', + 0x42a6: b'\x11B\xa6', + 0x42a7: b'\x11B\xa7', + 0x42a8: b'\x11B\xa8', + 0x42a9: b'\x11B\xa9', + 0x42aa: b'\x11B\xaa', + 0x42ab: b'\x11B\xab', + 0x42ac: b'\x11B\xac', + 0x42ad: b'\x11B\xad', + 0x42ae: b'\x11B\xae', + 0x42af: b'\x11B\xaf', + 0x42b0: b'\x11B\xb0', + 0x42b1: b'\x11B\xb1', + 0x42b2: b'\x11B\xb2', + 0x42b3: b'\x11B\xb3', + 0x42b4: b'\x11B\xb4', + 0x42b5: b'\x11B\xb5', + 0x42b6: b'\x11B\xb6', + 0x42b7: b'\x11B\xb7', + 0x42b8: b'\x11B\xb8', + 0x42b9: b'\x11B\xb9', + 0x42ba: b'\x11B\xba', + 0x42bb: b'\x11B\xbb', + 0x42bc: b'\x11B\xbc', + 0x42bd: b'\x11B\xbd', + 0x42be: b'\x11B\xbe', + 0x42bf: b'\x11B\xbf', + 0x42c0: b'\x11B\xc0', + 0x42c1: b'\x11B\xc1', + 0x42c2: b'\x11B\xc2', + 0x42c3: b'\x11B\xc3', + 0x42c4: b'\x11B\xc4', + 0x42c5: b'\x11B\xc5', + 0x42c6: b'\x11B\xc6', + 0x42c7: b'\x11B\xc7', + 0x42c8: b'\x11B\xc8', + 0x42c9: b'\x11B\xc9', + 0x42ca: b'\x11B\xca', + 0x42cb: b'\x11B\xcb', + 0x42cc: b'\x11B\xcc', + 0x42cd: b'\x11B\xcd', + 0x42ce: b'\x11B\xce', + 0x42cf: b'\x11B\xcf', + 0x42d0: b'\x11B\xd0', + 0x42d1: b'\x11B\xd1', + 0x42d2: b'\x11B\xd2', + 0x42d3: b'\x11B\xd3', + 0x42d4: b'\x11B\xd4', + 0x42d5: b'\x11B\xd5', + 0x42d6: b'\x11B\xd6', + 0x42d7: b'\x11B\xd7', + 0x42d8: b'\x11B\xd8', + 0x42d9: b'\x11B\xd9', + 0x42da: b'\x11B\xda', + 0x42db: b'\x11B\xdb', + 0x42dc: b'\x11B\xdc', + 0x42dd: b'\x11B\xdd', + 0x42de: b'\x11B\xde', + 0x42df: b'\x11B\xdf', + 0x42e0: b'\x11B\xe0', + 0x42e1: b'\x11B\xe1', + 0x42e2: b'\x11B\xe2', + 0x42e3: b'\x11B\xe3', + 0x42e4: b'\x11B\xe4', + 0x42e5: b'\x11B\xe5', + 0x42e6: b'\x11B\xe6', + 0x42e7: b'\x11B\xe7', + 0x42e8: b'\x11B\xe8', + 0x42e9: b'\x11B\xe9', + 0x42ea: b'\x11B\xea', + 0x42eb: b'\x11B\xeb', + 0x42ec: b'\x11B\xec', + 0x42ed: b'\x11B\xed', + 0x42ee: b'\x11B\xee', + 0x42ef: b'\x11B\xef', + 0x42f0: b'\x11B\xf0', + 0x42f1: b'\x11B\xf1', + 0x42f2: b'\x11B\xf2', + 0x42f3: b'\x11B\xf3', + 0x42f4: b'\x11B\xf4', + 0x42f5: b'\x11B\xf5', + 0x42f6: b'\x11B\xf6', + 0x42f7: b'\x11B\xf7', + 0x42f8: b'\x11B\xf8', + 0x42f9: b'\x11B\xf9', + 0x42fa: b'\x11B\xfa', + 0x42fb: b'\x11B\xfb', + 0x42fc: b'\x11B\xfc', + 0x42fd: b'\x11B\xfd', + 0x42fe: b'\x11B\xfe', + 0x42ff: b'\x11B\xff', + 0x4300: b'\x11C\x00', + 0x4301: b'\x11C\x01', + 0x4302: b'\x11C\x02', + 0x4303: b'\x11C\x03', + 0x4304: b'\x11C\x04', + 0x4305: b'\x11C\x05', + 0x4306: b'\x11C\x06', + 0x4307: b'\x11C\x07', + 0x4308: b'\x11C\x08', + 0x4309: b'\x11C\t', + 0x430a: b'\x11C\n', + 0x430b: b'\x11C\x0b', + 0x430c: b'\x11C\x0c', + 0x430d: b'\x11C\r', + 0x430e: b'\x11C\x0e', + 0x430f: b'\x11C\x0f', + 0x4310: b'\x11C\x10', + 0x4311: b'\x11C\x11', + 0x4312: b'\x11C\x12', + 0x4313: b'\x11C\x13', + 0x4314: b'\x11C\x14', + 0x4315: b'\x11C\x15', + 0x4316: b'\x11C\x16', + 0x4317: b'\x11C\x17', + 0x4318: b'\x11C\x18', + 0x4319: b'\x11C\x19', + 0x431a: b'\x11C\x1a', + 0x431b: b'\x11C\x1b', + 0x431c: b'\x11C\x1c', + 0x431d: b'\x11C\x1d', + 0x431e: b'\x11C\x1e', + 0x431f: b'\x11C\x1f', + 0x4320: b'\x11C ', + 0x4321: b'\x11C!', + 0x4322: b'\x11C"', + 0x4323: b'\x11C#', + 0x4324: b'\x11C$', + 0x4325: b'\x11C%', + 0x4326: b'\x11C&', + 0x4327: b"\x11C'", + 0x4328: b'\x11C(', + 0x4329: b'\x11C)', + 0x432a: b'\x11C*', + 0x432b: b'\x11C+', + 0x432c: b'\x11C,', + 0x432d: b'\x11C-', + 0x432e: b'\x11C.', + 0x432f: b'\x11C/', + 0x4330: b'\x11C0', + 0x4331: b'\x11C1', + 0x4332: b'\x11C2', + 0x4333: b'\x11C3', + 0x4334: b'\x11C4', + 0x4335: b'\x11C5', + 0x4336: b'\x11C6', + 0x4337: b'\x11C7', + 0x4338: b'\x11C8', + 0x4339: b'\x11C9', + 0x433a: b'\x11C:', + 0x433b: b'\x11C;', + 0x433c: b'\x11C<', + 0x433d: b'\x11C=', + 0x433e: b'\x11C>', + 0x433f: b'\x11C?', + 0x4340: b'\x11C@', + 0x4341: b'\x11CA', + 0x4342: b'\x11CB', + 0x4343: b'\x11CC', + 0x4344: b'\x11CD', + 0x4345: b'\x11CE', + 0x4346: b'\x11CF', + 0x4347: b'\x11CG', + 0x4348: b'\x11CH', + 0x4349: b'\x11CI', + 0x434a: b'\x11CJ', + 0x434b: b'\x11CK', + 0x434c: b'\x11CL', + 0x434d: b'\x11CM', + 0x434e: b'\x11CN', + 0x434f: b'\x11CO', + 0x4350: b'\x11CP', + 0x4351: b'\x11CQ', + 0x4352: b'\x11CR', + 0x4353: b'\x11CS', + 0x4354: b'\x11CT', + 0x4355: b'\x11CU', + 0x4356: b'\x11CV', + 0x4357: b'\x11CW', + 0x4358: b'\x11CX', + 0x4359: b'\x11CY', + 0x435a: b'\x11CZ', + 0x435b: b'\x11C[', + 0x435c: b'\x11C\\', + 0x435d: b'\x11C]', + 0x435e: b'\x11C^', + 0x435f: b'\x11C_', + 0x4360: b'\x11C`', + 0x4361: b'\x11Ca', + 0x4362: b'\x11Cb', + 0x4363: b'\x11Cc', + 0x4364: b'\x11Cd', + 0x4365: b'\x11Ce', + 0x4366: b'\x11Cf', + 0x4367: b'\x11Cg', + 0x4368: b'\x11Ch', + 0x4369: b'\x11Ci', + 0x436a: b'\x11Cj', + 0x436b: b'\x11Ck', + 0x436c: b'\x11Cl', + 0x436d: b'\x11Cm', + 0x436e: b'\x11Cn', + 0x436f: b'\x11Co', + 0x4370: b'\x11Cp', + 0x4371: b'\x11Cq', + 0x4372: b'\x11Cr', + 0x4373: b'\x11Cs', + 0x4374: b'\x11Ct', + 0x4375: b'\x11Cu', + 0x4376: b'\x11Cv', + 0x4377: b'\x11Cw', + 0x4378: b'\x11Cx', + 0x4379: b'\x11Cy', + 0x437a: b'\x11Cz', + 0x437b: b'\x11C{', + 0x437c: b'\x11C|', + 0x437d: b'\x11C}', + 0x437e: b'\x11C~', + 0x437f: b'\x11C\x7f', + 0x4380: b'\x11C\x80', + 0x4381: b'\x11C\x81', + 0x4382: b'\x11C\x82', + 0x4383: b'\x11C\x83', + 0x4384: b'\x11C\x84', + 0x4385: b'\x11C\x85', + 0x4386: b'\x11C\x86', + 0x4387: b'\x11C\x87', + 0x4388: b'\x11C\x88', + 0x4389: b'\x11C\x89', + 0x438a: b'\x11C\x8a', + 0x438b: b'\x11C\x8b', + 0x438c: b'\x11C\x8c', + 0x438d: b'\x11C\x8d', + 0x438e: b'\x11C\x8e', + 0x438f: b'\x11C\x8f', + 0x4390: b'\x11C\x90', + 0x4391: b'\x11C\x91', + 0x4392: b'\x11C\x92', + 0x4393: b'\x11C\x93', + 0x4394: b'\x11C\x94', + 0x4395: b'\x11C\x95', + 0x4396: b'\x11C\x96', + 0x4397: b'\x11C\x97', + 0x4398: b'\x11C\x98', + 0x4399: b'\x11C\x99', + 0x439a: b'\x11C\x9a', + 0x439b: b'\x11C\x9b', + 0x439c: b'\x11C\x9c', + 0x439d: b'\x11C\x9d', + 0x439e: b'\x11C\x9e', + 0x439f: b'\x11C\x9f', + 0x43a0: b'\x11C\xa0', + 0x43a1: b'\x11C\xa1', + 0x43a2: b'\x11C\xa2', + 0x43a3: b'\x11C\xa3', + 0x43a4: b'\x11C\xa4', + 0x43a5: b'\x11C\xa5', + 0x43a6: b'\x11C\xa6', + 0x43a7: b'\x11C\xa7', + 0x43a8: b'\x11C\xa8', + 0x43a9: b'\x11C\xa9', + 0x43aa: b'\x11C\xaa', + 0x43ab: b'\x11C\xab', + 0x43ac: b'\x11C\xac', + 0x43ad: b'\x11C\xad', + 0x43ae: b'\x11C\xae', + 0x43af: b'\x11C\xaf', + 0x43b0: b'\x11C\xb0', + 0x43b1: b'\x11C\xb1', + 0x43b2: b'\x11C\xb2', + 0x43b3: b'\x11C\xb3', + 0x43b4: b'\x11C\xb4', + 0x43b5: b'\x11C\xb5', + 0x43b6: b'\x11C\xb6', + 0x43b7: b'\x11C\xb7', + 0x43b8: b'\x11C\xb8', + 0x43b9: b'\x11C\xb9', + 0x43ba: b'\x11C\xba', + 0x43bb: b'\x11C\xbb', + 0x43bc: b'\x11C\xbc', + 0x43bd: b'\x11C\xbd', + 0x43be: b'\x11C\xbe', + 0x43bf: b'\x11C\xbf', + 0x43c0: b'\x11C\xc0', + 0x43c1: b'\x11C\xc1', + 0x43c2: b'\x11C\xc2', + 0x43c3: b'\x11C\xc3', + 0x43c4: b'\x11C\xc4', + 0x43c5: b'\x11C\xc5', + 0x43c6: b'\x11C\xc6', + 0x43c7: b'\x11C\xc7', + 0x43c8: b'\x11C\xc8', + 0x43c9: b'\x11C\xc9', + 0x43ca: b'\x11C\xca', + 0x43cb: b'\x11C\xcb', + 0x43cc: b'\x11C\xcc', + 0x43cd: b'\x11C\xcd', + 0x43ce: b'\x11C\xce', + 0x43cf: b'\x11C\xcf', + 0x43d0: b'\x11C\xd0', + 0x43d1: b'\x11C\xd1', + 0x43d2: b'\x11C\xd2', + 0x43d3: b'\x11C\xd3', + 0x43d4: b'\x11C\xd4', + 0x43d5: b'\x11C\xd5', + 0x43d6: b'\x11C\xd6', + 0x43d7: b'\x11C\xd7', + 0x43d8: b'\x11C\xd8', + 0x43d9: b'\x11C\xd9', + 0x43da: b'\x11C\xda', + 0x43db: b'\x11C\xdb', + 0x43dc: b'\x11C\xdc', + 0x43dd: b'\x11C\xdd', + 0x43de: b'\x11C\xde', + 0x43df: b'\x11C\xdf', + 0x43e0: b'\x11C\xe0', + 0x43e1: b'\x11C\xe1', + 0x43e2: b'\x11C\xe2', + 0x43e3: b'\x11C\xe3', + 0x43e4: b'\x11C\xe4', + 0x43e5: b'\x11C\xe5', + 0x43e6: b'\x11C\xe6', + 0x43e7: b'\x11C\xe7', + 0x43e8: b'\x11C\xe8', + 0x43e9: b'\x11C\xe9', + 0x43ea: b'\x11C\xea', + 0x43eb: b'\x11C\xeb', + 0x43ec: b'\x11C\xec', + 0x43ed: b'\x11C\xed', + 0x43ee: b'\x11C\xee', + 0x43ef: b'\x11C\xef', + 0x43f0: b'\x11C\xf0', + 0x43f1: b'\x11C\xf1', + 0x43f2: b'\x11C\xf2', + 0x43f3: b'\x11C\xf3', + 0x43f4: b'\x11C\xf4', + 0x43f5: b'\x11C\xf5', + 0x43f6: b'\x11C\xf6', + 0x43f7: b'\x11C\xf7', + 0x43f8: b'\x11C\xf8', + 0x43f9: b'\x11C\xf9', + 0x43fa: b'\x11C\xfa', + 0x43fb: b'\x11C\xfb', + 0x43fc: b'\x11C\xfc', + 0x43fd: b'\x11C\xfd', + 0x43fe: b'\x11C\xfe', + 0x43ff: b'\x11C\xff', + 0x4400: b'\x11D\x00', + 0x4401: b'\x11D\x01', + 0x4402: b'\x11D\x02', + 0x4403: b'\x11D\x03', + 0x4404: b'\x11D\x04', + 0x4405: b'\x11D\x05', + 0x4406: b'\x11D\x06', + 0x4407: b'\x11D\x07', + 0x4408: b'\x11D\x08', + 0x4409: b'\x11D\t', + 0x440a: b'\x11D\n', + 0x440b: b'\x11D\x0b', + 0x440c: b'\x11D\x0c', + 0x440d: b'\x11D\r', + 0x440e: b'\x11D\x0e', + 0x440f: b'\x11D\x0f', + 0x4410: b'\x11D\x10', + 0x4411: b'\x11D\x11', + 0x4412: b'\x11D\x12', + 0x4413: b'\x11D\x13', + 0x4414: b'\x11D\x14', + 0x4415: b'\x11D\x15', + 0x4416: b'\x11D\x16', + 0x4417: b'\x11D\x17', + 0x4418: b'\x11D\x18', + 0x4419: b'\x11D\x19', + 0x441a: b'\x11D\x1a', + 0x441b: b'\x11D\x1b', + 0x441c: b'\x11D\x1c', + 0x441d: b'\x11D\x1d', + 0x441e: b'\x11D\x1e', + 0x441f: b'\x11D\x1f', + 0x4420: b'\x11D ', + 0x4421: b'\x11D!', + 0x4422: b'\x11D"', + 0x4423: b'\x11D#', + 0x4424: b'\x11D$', + 0x4425: b'\x11D%', + 0x4426: b'\x11D&', + 0x4427: b"\x11D'", + 0x4428: b'\x11D(', + 0x4429: b'\x11D)', + 0x442a: b'\x11D*', + 0x442b: b'\x11D+', + 0x442c: b'\x11D,', + 0x442d: b'\x11D-', + 0x442e: b'\x11D.', + 0x442f: b'\x11D/', + 0x4430: b'\x11D0', + 0x4431: b'\x11D1', + 0x4432: b'\x11D2', + 0x4433: b'\x11D3', + 0x4434: b'\x11D4', + 0x4435: b'\x11D5', + 0x4436: b'\x11D6', + 0x4437: b'\x11D7', + 0x4438: b'\x11D8', + 0x4439: b'\x11D9', + 0x443a: b'\x11D:', + 0x443b: b'\x11D;', + 0x443c: b'\x11D<', + 0x443d: b'\x11D=', + 0x443e: b'\x11D>', + 0x443f: b'\x11D?', + 0x4440: b'\x11D@', + 0x4441: b'\x11DA', + 0x4442: b'\x11DB', + 0x4443: b'\x11DC', + 0x4444: b'\x11DD', + 0x4445: b'\x11DE', + 0x4446: b'\x11DF', + 0x4447: b'\x11DG', + 0x4448: b'\x11DH', + 0x4449: b'\x11DI', + 0x444a: b'\x11DJ', + 0x444b: b'\x11DK', + 0x444c: b'\x11DL', + 0x444d: b'\x11DM', + 0x444e: b'\x11DN', + 0x444f: b'\x11DO', + 0x4450: b'\x11DP', + 0x4451: b'\x11DQ', + 0x4452: b'\x11DR', + 0x4453: b'\x11DS', + 0x4454: b'\x11DT', + 0x4455: b'\x11DU', + 0x4456: b'\x11DV', + 0x4457: b'\x11DW', + 0x4458: b'\x11DX', + 0x4459: b'\x11DY', + 0x445a: b'\x11DZ', + 0x445b: b'\x11D[', + 0x445c: b'\x11D\\', + 0x445d: b'\x11D]', + 0x445e: b'\x11D^', + 0x445f: b'\x11D_', + 0x4460: b'\x11D`', + 0x4461: b'\x11Da', + 0x4462: b'\x11Db', + 0x4463: b'\x11Dc', + 0x4464: b'\x11Dd', + 0x4465: b'\x11De', + 0x4466: b'\x11Df', + 0x4467: b'\x11Dg', + 0x4468: b'\x11Dh', + 0x4469: b'\x11Di', + 0x446a: b'\x11Dj', + 0x446b: b'\x11Dk', + 0x446c: b'\x11Dl', + 0x446d: b'\x11Dm', + 0x446e: b'\x11Dn', + 0x446f: b'\x11Do', + 0x4470: b'\x11Dp', + 0x4471: b'\x11Dq', + 0x4472: b'\x11Dr', + 0x4473: b'\x11Ds', + 0x4474: b'\x11Dt', + 0x4475: b'\x11Du', + 0x4476: b'\x11Dv', + 0x4477: b'\x11Dw', + 0x4478: b'\x11Dx', + 0x4479: b'\x11Dy', + 0x447a: b'\x11Dz', + 0x447b: b'\x11D{', + 0x447c: b'\x11D|', + 0x447d: b'\x11D}', + 0x447e: b'\x11D~', + 0x447f: b'\x11D\x7f', + 0x4480: b'\x11D\x80', + 0x4481: b'\x11D\x81', + 0x4482: b'\x11D\x82', + 0x4483: b'\x11D\x83', + 0x4484: b'\x11D\x84', + 0x4485: b'\x11D\x85', + 0x4486: b'\x11D\x86', + 0x4487: b'\x11D\x87', + 0x4488: b'\x11D\x88', + 0x4489: b'\x11D\x89', + 0x448a: b'\x11D\x8a', + 0x448b: b'\x11D\x8b', + 0x448c: b'\x11D\x8c', + 0x448d: b'\x11D\x8d', + 0x448e: b'\x11D\x8e', + 0x448f: b'\x11D\x8f', + 0x4490: b'\x11D\x90', + 0x4491: b'\x11D\x91', + 0x4492: b'\x11D\x92', + 0x4493: b'\x11D\x93', + 0x4494: b'\x11D\x94', + 0x4495: b'\x11D\x95', + 0x4496: b'\x11D\x96', + 0x4497: b'\x11D\x97', + 0x4498: b'\x11D\x98', + 0x4499: b'\x11D\x99', + 0x449a: b'\x11D\x9a', + 0x449b: b'\x11D\x9b', + 0x449c: b'\x11D\x9c', + 0x449d: b'\x11D\x9d', + 0x449e: b'\x11D\x9e', + 0x449f: b'\x11D\x9f', + 0x44a0: b'\x11D\xa0', + 0x44a1: b'\x11D\xa1', + 0x44a2: b'\x11D\xa2', + 0x44a3: b'\x11D\xa3', + 0x44a4: b'\x11D\xa4', + 0x44a5: b'\x11D\xa5', + 0x44a6: b'\x11D\xa6', + 0x44a7: b'\x11D\xa7', + 0x44a8: b'\x11D\xa8', + 0x44a9: b'\x11D\xa9', + 0x44aa: b'\x11D\xaa', + 0x44ab: b'\x11D\xab', + 0x44ac: b'\x11D\xac', + 0x44ad: b'\x11D\xad', + 0x44ae: b'\x11D\xae', + 0x44af: b'\x11D\xaf', + 0x44b0: b'\x11D\xb0', + 0x44b1: b'\x11D\xb1', + 0x44b2: b'\x11D\xb2', + 0x44b3: b'\x11D\xb3', + 0x44b4: b'\x11D\xb4', + 0x44b5: b'\x11D\xb5', + 0x44b6: b'\x11D\xb6', + 0x44b7: b'\x11D\xb7', + 0x44b8: b'\x11D\xb8', + 0x44b9: b'\x11D\xb9', + 0x44ba: b'\x11D\xba', + 0x44bb: b'\x11D\xbb', + 0x44bc: b'\x11D\xbc', + 0x44bd: b'\x11D\xbd', + 0x44be: b'\x11D\xbe', + 0x44bf: b'\x11D\xbf', + 0x44c0: b'\x11D\xc0', + 0x44c1: b'\x11D\xc1', + 0x44c2: b'\x11D\xc2', + 0x44c3: b'\x11D\xc3', + 0x44c4: b'\x11D\xc4', + 0x44c5: b'\x11D\xc5', + 0x44c6: b'\x11D\xc6', + 0x44c7: b'\x11D\xc7', + 0x44c8: b'\x11D\xc8', + 0x44c9: b'\x11D\xc9', + 0x44ca: b'\x11D\xca', + 0x44cb: b'\x11D\xcb', + 0x44cc: b'\x11D\xcc', + 0x44cd: b'\x11D\xcd', + 0x44ce: b'\x11D\xce', + 0x44cf: b'\x11D\xcf', + 0x44d0: b'\x11D\xd0', + 0x44d1: b'\x11D\xd1', + 0x44d2: b'\x11D\xd2', + 0x44d3: b'\x11D\xd3', + 0x44d4: b'\x11D\xd4', + 0x44d5: b'\x11D\xd5', + 0x44d6: b'\x11D\xd6', + 0x44d7: b'\x11D\xd7', + 0x44d8: b'\x11D\xd8', + 0x44d9: b'\x11D\xd9', + 0x44da: b'\x11D\xda', + 0x44db: b'\x11D\xdb', + 0x44dc: b'\x11D\xdc', + 0x44dd: b'\x11D\xdd', + 0x44de: b'\x11D\xde', + 0x44df: b'\x11D\xdf', + 0x44e0: b'\x11D\xe0', + 0x44e1: b'\x11D\xe1', + 0x44e2: b'\x11D\xe2', + 0x44e3: b'\x11D\xe3', + 0x44e4: b'\x11D\xe4', + 0x44e5: b'\x11D\xe5', + 0x44e6: b'\x11D\xe6', + 0x44e7: b'\x11D\xe7', + 0x44e8: b'\x11D\xe8', + 0x44e9: b'\x11D\xe9', + 0x44ea: b'\x11D\xea', + 0x44eb: b'\x11D\xeb', + 0x44ec: b'\x11D\xec', + 0x44ed: b'\x11D\xed', + 0x44ee: b'\x11D\xee', + 0x44ef: b'\x11D\xef', + 0x44f0: b'\x11D\xf0', + 0x44f1: b'\x11D\xf1', + 0x44f2: b'\x11D\xf2', + 0x44f3: b'\x11D\xf3', + 0x44f4: b'\x11D\xf4', + 0x44f5: b'\x11D\xf5', + 0x44f6: b'\x11D\xf6', + 0x44f7: b'\x11D\xf7', + 0x44f8: b'\x11D\xf8', + 0x44f9: b'\x11D\xf9', + 0x44fa: b'\x11D\xfa', + 0x44fb: b'\x11D\xfb', + 0x44fc: b'\x11D\xfc', + 0x44fd: b'\x11D\xfd', + 0x44fe: b'\x11D\xfe', + 0x44ff: b'\x11D\xff', + 0x4500: b'\x11E\x00', + 0x4501: b'\x11E\x01', + 0x4502: b'\x11E\x02', + 0x4503: b'\x11E\x03', + 0x4504: b'\x11E\x04', + 0x4505: b'\x11E\x05', + 0x4506: b'\x11E\x06', + 0x4507: b'\x11E\x07', + 0x4508: b'\x11E\x08', + 0x4509: b'\x11E\t', + 0x450a: b'\x11E\n', + 0x450b: b'\x11E\x0b', + 0x450c: b'\x11E\x0c', + 0x450d: b'\x11E\r', + 0x450e: b'\x11E\x0e', + 0x450f: b'\x11E\x0f', + 0x4510: b'\x11E\x10', + 0x4511: b'\x11E\x11', + 0x4512: b'\x11E\x12', + 0x4513: b'\x11E\x13', + 0x4514: b'\x11E\x14', + 0x4515: b'\x11E\x15', + 0x4516: b'\x11E\x16', + 0x4517: b'\x11E\x17', + 0x4518: b'\x11E\x18', + 0x4519: b'\x11E\x19', + 0x451a: b'\x11E\x1a', + 0x451b: b'\x11E\x1b', + 0x451c: b'\x11E\x1c', + 0x451d: b'\x11E\x1d', + 0x451e: b'\x11E\x1e', + 0x451f: b'\x11E\x1f', + 0x4520: b'\x11E ', + 0x4521: b'\x11E!', + 0x4522: b'\x11E"', + 0x4523: b'\x11E#', + 0x4524: b'\x11E$', + 0x4525: b'\x11E%', + 0x4526: b'\x11E&', + 0x4527: b"\x11E'", + 0x4528: b'\x11E(', + 0x4529: b'\x11E)', + 0x452a: b'\x11E*', + 0x452b: b'\x11E+', + 0x452c: b'\x11E,', + 0x452d: b'\x11E-', + 0x452e: b'\x11E.', + 0x452f: b'\x11E/', + 0x4530: b'\x11E0', + 0x4531: b'\x11E1', + 0x4532: b'\x11E2', + 0x4533: b'\x11E3', + 0x4534: b'\x11E4', + 0x4535: b'\x11E5', + 0x4536: b'\x11E6', + 0x4537: b'\x11E7', + 0x4538: b'\x11E8', + 0x4539: b'\x11E9', + 0x453a: b'\x11E:', + 0x453b: b'\x11E;', + 0x453c: b'\x11E<', + 0x453d: b'\x11E=', + 0x453e: b'\x11E>', + 0x453f: b'\x11E?', + 0x4540: b'\x11E@', + 0x4541: b'\x11EA', + 0x4542: b'\x11EB', + 0x4543: b'\x11EC', + 0x4544: b'\x11ED', + 0x4545: b'\x11EE', + 0x4546: b'\x11EF', + 0x4547: b'\x11EG', + 0x4548: b'\x11EH', + 0x4549: b'\x11EI', + 0x454a: b'\x11EJ', + 0x454b: b'\x11EK', + 0x454c: b'\x11EL', + 0x454d: b'\x11EM', + 0x454e: b'\x11EN', + 0x454f: b'\x11EO', + 0x4550: b'\x11EP', + 0x4551: b'\x11EQ', + 0x4552: b'\x11ER', + 0x4553: b'\x11ES', + 0x4554: b'\x11ET', + 0x4555: b'\x11EU', + 0x4556: b'\x11EV', + 0x4557: b'\x11EW', + 0x4558: b'\x11EX', + 0x4559: b'\x11EY', + 0x455a: b'\x11EZ', + 0x455b: b'\x11E[', + 0x455c: b'\x11E\\', + 0x455d: b'\x11E]', + 0x455e: b'\x11E^', + 0x455f: b'\x11E_', + 0x4560: b'\x11E`', + 0x4561: b'\x11Ea', + 0x4562: b'\x11Eb', + 0x4563: b'\x11Ec', + 0x4564: b'\x11Ed', + 0x4565: b'\x11Ee', + 0x4566: b'\x11Ef', + 0x4567: b'\x11Eg', + 0x4568: b'\x11Eh', + 0x4569: b'\x11Ei', + 0x456a: b'\x11Ej', + 0x456b: b'\x11Ek', + 0x456c: b'\x11El', + 0x456d: b'\x11Em', + 0x456e: b'\x11En', + 0x456f: b'\x11Eo', + 0x4570: b'\x11Ep', + 0x4571: b'\x11Eq', + 0x4572: b'\x11Er', + 0x4573: b'\x11Es', + 0x4574: b'\x11Et', + 0x4575: b'\x11Eu', + 0x4576: b'\x11Ev', + 0x4577: b'\x11Ew', + 0x4578: b'\x11Ex', + 0x4579: b'\x11Ey', + 0x457a: b'\x11Ez', + 0x457b: b'\x11E{', + 0x457c: b'\x11E|', + 0x457d: b'\x11E}', + 0x457e: b'\x11E~', + 0x457f: b'\x11E\x7f', + 0x4580: b'\x11E\x80', + 0x4581: b'\x11E\x81', + 0x4582: b'\x11E\x82', + 0x4583: b'\x11E\x83', + 0x4584: b'\x11E\x84', + 0x4585: b'\x11E\x85', + 0x4586: b'\x11E\x86', + 0x4587: b'\x11E\x87', + 0x4588: b'\x11E\x88', + 0x4589: b'\x11E\x89', + 0x458a: b'\x11E\x8a', + 0x458b: b'\x11E\x8b', + 0x458c: b'\x11E\x8c', + 0x458d: b'\x11E\x8d', + 0x458e: b'\x11E\x8e', + 0x458f: b'\x11E\x8f', + 0x4590: b'\x11E\x90', + 0x4591: b'\x11E\x91', + 0x4592: b'\x11E\x92', + 0x4593: b'\x11E\x93', + 0x4594: b'\x11E\x94', + 0x4595: b'\x11E\x95', + 0x4596: b'\x11E\x96', + 0x4597: b'\x11E\x97', + 0x4598: b'\x11E\x98', + 0x4599: b'\x11E\x99', + 0x459a: b'\x11E\x9a', + 0x459b: b'\x11E\x9b', + 0x459c: b'\x11E\x9c', + 0x459d: b'\x11E\x9d', + 0x459e: b'\x11E\x9e', + 0x459f: b'\x11E\x9f', + 0x45a0: b'\x11E\xa0', + 0x45a1: b'\x11E\xa1', + 0x45a2: b'\x11E\xa2', + 0x45a3: b'\x11E\xa3', + 0x45a4: b'\x11E\xa4', + 0x45a5: b'\x11E\xa5', + 0x45a6: b'\x11E\xa6', + 0x45a7: b'\x11E\xa7', + 0x45a8: b'\x11E\xa8', + 0x45a9: b'\x11E\xa9', + 0x45aa: b'\x11E\xaa', + 0x45ab: b'\x11E\xab', + 0x45ac: b'\x11E\xac', + 0x45ad: b'\x11E\xad', + 0x45ae: b'\x11E\xae', + 0x45af: b'\x11E\xaf', + 0x45b0: b'\x11E\xb0', + 0x45b1: b'\x11E\xb1', + 0x45b2: b'\x11E\xb2', + 0x45b3: b'\x11E\xb3', + 0x45b4: b'\x11E\xb4', + 0x45b5: b'\x11E\xb5', + 0x45b6: b'\x11E\xb6', + 0x45b7: b'\x11E\xb7', + 0x45b8: b'\x11E\xb8', + 0x45b9: b'\x11E\xb9', + 0x45ba: b'\x11E\xba', + 0x45bb: b'\x11E\xbb', + 0x45bc: b'\x11E\xbc', + 0x45bd: b'\x11E\xbd', + 0x45be: b'\x11E\xbe', + 0x45bf: b'\x11E\xbf', + 0x45c0: b'\x11E\xc0', + 0x45c1: b'\x11E\xc1', + 0x45c2: b'\x11E\xc2', + 0x45c3: b'\x11E\xc3', + 0x45c4: b'\x11E\xc4', + 0x45c5: b'\x11E\xc5', + 0x45c6: b'\x11E\xc6', + 0x45c7: b'\x11E\xc7', + 0x45c8: b'\x11E\xc8', + 0x45c9: b'\x11E\xc9', + 0x45ca: b'\x11E\xca', + 0x45cb: b'\x11E\xcb', + 0x45cc: b'\x11E\xcc', + 0x45cd: b'\x11E\xcd', + 0x45ce: b'\x11E\xce', + 0x45cf: b'\x11E\xcf', + 0x45d0: b'\x11E\xd0', + 0x45d1: b'\x11E\xd1', + 0x45d2: b'\x11E\xd2', + 0x45d3: b'\x11E\xd3', + 0x45d4: b'\x11E\xd4', + 0x45d5: b'\x11E\xd5', + 0x45d6: b'\x11E\xd6', + 0x45d7: b'\x11E\xd7', + 0x45d8: b'\x11E\xd8', + 0x45d9: b'\x11E\xd9', + 0x45da: b'\x11E\xda', + 0x45db: b'\x11E\xdb', + 0x45dc: b'\x11E\xdc', + 0x45dd: b'\x11E\xdd', + 0x45de: b'\x11E\xde', + 0x45df: b'\x11E\xdf', + 0x45e0: b'\x11E\xe0', + 0x45e1: b'\x11E\xe1', + 0x45e2: b'\x11E\xe2', + 0x45e3: b'\x11E\xe3', + 0x45e4: b'\x11E\xe4', + 0x45e5: b'\x11E\xe5', + 0x45e6: b'\x11E\xe6', + 0x45e7: b'\x11E\xe7', + 0x45e8: b'\x11E\xe8', + 0x45e9: b'\x11E\xe9', + 0x45ea: b'\x11E\xea', + 0x45eb: b'\x11E\xeb', + 0x45ec: b'\x11E\xec', + 0x45ed: b'\x11E\xed', + 0x45ee: b'\x11E\xee', + 0x45ef: b'\x11E\xef', + 0x45f0: b'\x11E\xf0', + 0x45f1: b'\x11E\xf1', + 0x45f2: b'\x11E\xf2', + 0x45f3: b'\x11E\xf3', + 0x45f4: b'\x11E\xf4', + 0x45f5: b'\x11E\xf5', + 0x45f6: b'\x11E\xf6', + 0x45f7: b'\x11E\xf7', + 0x45f8: b'\x11E\xf8', + 0x45f9: b'\x11E\xf9', + 0x45fa: b'\x11E\xfa', + 0x45fb: b'\x11E\xfb', + 0x45fc: b'\x11E\xfc', + 0x45fd: b'\x11E\xfd', + 0x45fe: b'\x11E\xfe', + 0x45ff: b'\x11E\xff', + 0x4600: b'\x11F\x00', + 0x4601: b'\x11F\x01', + 0x4602: b'\x11F\x02', + 0x4603: b'\x11F\x03', + 0x4604: b'\x11F\x04', + 0x4605: b'\x11F\x05', + 0x4606: b'\x11F\x06', + 0x4607: b'\x11F\x07', + 0x4608: b'\x11F\x08', + 0x4609: b'\x11F\t', + 0x460a: b'\x11F\n', + 0x460b: b'\x11F\x0b', + 0x460c: b'\x11F\x0c', + 0x460d: b'\x11F\r', + 0x460e: b'\x11F\x0e', + 0x460f: b'\x11F\x0f', + 0x4610: b'\x11F\x10', + 0x4611: b'\x11F\x11', + 0x4612: b'\x11F\x12', + 0x4613: b'\x11F\x13', + 0x4614: b'\x11F\x14', + 0x4615: b'\x11F\x15', + 0x4616: b'\x11F\x16', + 0x4617: b'\x11F\x17', + 0x4618: b'\x11F\x18', + 0x4619: b'\x11F\x19', + 0x461a: b'\x11F\x1a', + 0x461b: b'\x11F\x1b', + 0x461c: b'\x11F\x1c', + 0x461d: b'\x11F\x1d', + 0x461e: b'\x11F\x1e', + 0x461f: b'\x11F\x1f', + 0x4620: b'\x11F ', + 0x4621: b'\x11F!', + 0x4622: b'\x11F"', + 0x4623: b'\x11F#', + 0x4624: b'\x11F$', + 0x4625: b'\x11F%', + 0x4626: b'\x11F&', + 0x4627: b"\x11F'", + 0x4628: b'\x11F(', + 0x4629: b'\x11F)', + 0x462a: b'\x11F*', + 0x462b: b'\x11F+', + 0x462c: b'\x11F,', + 0x462d: b'\x11F-', + 0x462e: b'\x11F.', + 0x462f: b'\x11F/', + 0x4630: b'\x11F0', + 0x4631: b'\x11F1', + 0x4632: b'\x11F2', + 0x4633: b'\x11F3', + 0x4634: b'\x11F4', + 0x4635: b'\x11F5', + 0x4636: b'\x11F6', + 0x4637: b'\x11F7', + 0x4638: b'\x11F8', + 0x4639: b'\x11F9', + 0x463a: b'\x11F:', + 0x463b: b'\x11F;', + 0x463c: b'\x11F<', + 0x463d: b'\x11F=', + 0x463e: b'\x11F>', + 0x463f: b'\x11F?', + 0x4640: b'\x11F@', + 0x4641: b'\x11FA', + 0x4642: b'\x11FB', + 0x4643: b'\x11FC', + 0x4644: b'\x11FD', + 0x4645: b'\x11FE', + 0x4646: b'\x11FF', + 0x4647: b'\x11FG', + 0x4648: b'\x11FH', + 0x4649: b'\x11FI', + 0x464a: b'\x11FJ', + 0x464b: b'\x11FK', + 0x464c: b'\x11FL', + 0x464d: b'\x11FM', + 0x464e: b'\x11FN', + 0x464f: b'\x11FO', + 0x4650: b'\x11FP', + 0x4651: b'\x11FQ', + 0x4652: b'\x11FR', + 0x4653: b'\x11FS', + 0x4654: b'\x11FT', + 0x4655: b'\x11FU', + 0x4656: b'\x11FV', + 0x4657: b'\x11FW', + 0x4658: b'\x11FX', + 0x4659: b'\x11FY', + 0x465a: b'\x11FZ', + 0x465b: b'\x11F[', + 0x465c: b'\x11F\\', + 0x465d: b'\x11F]', + 0x465e: b'\x11F^', + 0x465f: b'\x11F_', + 0x4660: b'\x11F`', + 0x4661: b'\x11Fa', + 0x4662: b'\x11Fb', + 0x4663: b'\x11Fc', + 0x4664: b'\x11Fd', + 0x4665: b'\x11Fe', + 0x4666: b'\x11Ff', + 0x4667: b'\x11Fg', + 0x4668: b'\x11Fh', + 0x4669: b'\x11Fi', + 0x466a: b'\x11Fj', + 0x466b: b'\x11Fk', + 0x466c: b'\x11Fl', + 0x466d: b'\x11Fm', + 0x466e: b'\x11Fn', + 0x466f: b'\x11Fo', + 0x4670: b'\x11Fp', + 0x4671: b'\x11Fq', + 0x4672: b'\x11Fr', + 0x4673: b'\x11Fs', + 0x4674: b'\x11Ft', + 0x4675: b'\x11Fu', + 0x4676: b'\x11Fv', + 0x4677: b'\x11Fw', + 0x4678: b'\x11Fx', + 0x4679: b'\x11Fy', + 0x467a: b'\x11Fz', + 0x467b: b'\x11F{', + 0x467c: b'\x11F|', + 0x467d: b'\x11F}', + 0x467e: b'\x11F~', + 0x467f: b'\x11F\x7f', + 0x4680: b'\x11F\x80', + 0x4681: b'\x11F\x81', + 0x4682: b'\x11F\x82', + 0x4683: b'\x11F\x83', + 0x4684: b'\x11F\x84', + 0x4685: b'\x11F\x85', + 0x4686: b'\x11F\x86', + 0x4687: b'\x11F\x87', + 0x4688: b'\x11F\x88', + 0x4689: b'\x11F\x89', + 0x468a: b'\x11F\x8a', + 0x468b: b'\x11F\x8b', + 0x468c: b'\x11F\x8c', + 0x468d: b'\x11F\x8d', + 0x468e: b'\x11F\x8e', + 0x468f: b'\x11F\x8f', + 0x4690: b'\x11F\x90', + 0x4691: b'\x11F\x91', + 0x4692: b'\x11F\x92', + 0x4693: b'\x11F\x93', + 0x4694: b'\x11F\x94', + 0x4695: b'\x11F\x95', + 0x4696: b'\x11F\x96', + 0x4697: b'\x11F\x97', + 0x4698: b'\x11F\x98', + 0x4699: b'\x11F\x99', + 0x469a: b'\x11F\x9a', + 0x469b: b'\x11F\x9b', + 0x469c: b'\x11F\x9c', + 0x469d: b'\x11F\x9d', + 0x469e: b'\x11F\x9e', + 0x469f: b'\x11F\x9f', + 0x46a0: b'\x11F\xa0', + 0x46a1: b'\x11F\xa1', + 0x46a2: b'\x11F\xa2', + 0x46a3: b'\x11F\xa3', + 0x46a4: b'\x11F\xa4', + 0x46a5: b'\x11F\xa5', + 0x46a6: b'\x11F\xa6', + 0x46a7: b'\x11F\xa7', + 0x46a8: b'\x11F\xa8', + 0x46a9: b'\x11F\xa9', + 0x46aa: b'\x11F\xaa', + 0x46ab: b'\x11F\xab', + 0x46ac: b'\x11F\xac', + 0x46ad: b'\x11F\xad', + 0x46ae: b'\x11F\xae', + 0x46af: b'\x11F\xaf', + 0x46b0: b'\x11F\xb0', + 0x46b1: b'\x11F\xb1', + 0x46b2: b'\x11F\xb2', + 0x46b3: b'\x11F\xb3', + 0x46b4: b'\x11F\xb4', + 0x46b5: b'\x11F\xb5', + 0x46b6: b'\x11F\xb6', + 0x46b7: b'\x11F\xb7', + 0x46b8: b'\x11F\xb8', + 0x46b9: b'\x11F\xb9', + 0x46ba: b'\x11F\xba', + 0x46bb: b'\x11F\xbb', + 0x46bc: b'\x11F\xbc', + 0x46bd: b'\x11F\xbd', + 0x46be: b'\x11F\xbe', + 0x46bf: b'\x11F\xbf', + 0x46c0: b'\x11F\xc0', + 0x46c1: b'\x11F\xc1', + 0x46c2: b'\x11F\xc2', + 0x46c3: b'\x11F\xc3', + 0x46c4: b'\x11F\xc4', + 0x46c5: b'\x11F\xc5', + 0x46c6: b'\x11F\xc6', + 0x46c7: b'\x11F\xc7', + 0x46c8: b'\x11F\xc8', + 0x46c9: b'\x11F\xc9', + 0x46ca: b'\x11F\xca', + 0x46cb: b'\x11F\xcb', + 0x46cc: b'\x11F\xcc', + 0x46cd: b'\x11F\xcd', + 0x46ce: b'\x11F\xce', + 0x46cf: b'\x11F\xcf', + 0x46d0: b'\x11F\xd0', + 0x46d1: b'\x11F\xd1', + 0x46d2: b'\x11F\xd2', + 0x46d3: b'\x11F\xd3', + 0x46d4: b'\x11F\xd4', + 0x46d5: b'\x11F\xd5', + 0x46d6: b'\x11F\xd6', + 0x46d7: b'\x11F\xd7', + 0x46d8: b'\x11F\xd8', + 0x46d9: b'\x11F\xd9', + 0x46da: b'\x11F\xda', + 0x46db: b'\x11F\xdb', + 0x46dc: b'\x11F\xdc', + 0x46dd: b'\x11F\xdd', + 0x46de: b'\x11F\xde', + 0x46df: b'\x11F\xdf', + 0x46e0: b'\x11F\xe0', + 0x46e1: b'\x11F\xe1', + 0x46e2: b'\x11F\xe2', + 0x46e3: b'\x11F\xe3', + 0x46e4: b'\x11F\xe4', + 0x46e5: b'\x11F\xe5', + 0x46e6: b'\x11F\xe6', + 0x46e7: b'\x11F\xe7', + 0x46e8: b'\x11F\xe8', + 0x46e9: b'\x11F\xe9', + 0x46ea: b'\x11F\xea', + 0x46eb: b'\x11F\xeb', + 0x46ec: b'\x11F\xec', + 0x46ed: b'\x11F\xed', + 0x46ee: b'\x11F\xee', + 0x46ef: b'\x11F\xef', + 0x46f0: b'\x11F\xf0', + 0x46f1: b'\x11F\xf1', + 0x46f2: b'\x11F\xf2', + 0x46f3: b'\x11F\xf3', + 0x46f4: b'\x11F\xf4', + 0x46f5: b'\x11F\xf5', + 0x46f6: b'\x11F\xf6', + 0x46f7: b'\x11F\xf7', + 0x46f8: b'\x11F\xf8', + 0x46f9: b'\x11F\xf9', + 0x46fa: b'\x11F\xfa', + 0x46fb: b'\x11F\xfb', + 0x46fc: b'\x11F\xfc', + 0x46fd: b'\x11F\xfd', + 0x46fe: b'\x11F\xfe', + 0x46ff: b'\x11F\xff', + 0x4700: b'\x11G\x00', + 0x4701: b'\x11G\x01', + 0x4702: b'\x11G\x02', + 0x4703: b'\x11G\x03', + 0x4704: b'\x11G\x04', + 0x4705: b'\x11G\x05', + 0x4706: b'\x11G\x06', + 0x4707: b'\x11G\x07', + 0x4708: b'\x11G\x08', + 0x4709: b'\x11G\t', + 0x470a: b'\x11G\n', + 0x470b: b'\x11G\x0b', + 0x470c: b'\x11G\x0c', + 0x470d: b'\x11G\r', + 0x470e: b'\x11G\x0e', + 0x470f: b'\x11G\x0f', + 0x4710: b'\x11G\x10', + 0x4711: b'\x11G\x11', + 0x4712: b'\x11G\x12', + 0x4713: b'\x11G\x13', + 0x4714: b'\x11G\x14', + 0x4715: b'\x11G\x15', + 0x4716: b'\x11G\x16', + 0x4717: b'\x11G\x17', + 0x4718: b'\x11G\x18', + 0x4719: b'\x11G\x19', + 0x471a: b'\x11G\x1a', + 0x471b: b'\x11G\x1b', + 0x471c: b'\x11G\x1c', + 0x471d: b'\x11G\x1d', + 0x471e: b'\x11G\x1e', + 0x471f: b'\x11G\x1f', + 0x4720: b'\x11G ', + 0x4721: b'\x11G!', + 0x4722: b'\x11G"', + 0x4723: b'\x11G#', + 0x4724: b'\x11G$', + 0x4725: b'\x11G%', + 0x4726: b'\x11G&', + 0x4727: b"\x11G'", + 0x4728: b'\x11G(', + 0x4729: b'\x11G)', + 0x472a: b'\x11G*', + 0x472b: b'\x11G+', + 0x472c: b'\x11G,', + 0x472d: b'\x11G-', + 0x472e: b'\x11G.', + 0x472f: b'\x11G/', + 0x4730: b'\x11G0', + 0x4731: b'\x11G1', + 0x4732: b'\x11G2', + 0x4733: b'\x11G3', + 0x4734: b'\x11G4', + 0x4735: b'\x11G5', + 0x4736: b'\x11G6', + 0x4737: b'\x11G7', + 0x4738: b'\x11G8', + 0x4739: b'\x11G9', + 0x473a: b'\x11G:', + 0x473b: b'\x11G;', + 0x473c: b'\x11G<', + 0x473d: b'\x11G=', + 0x473e: b'\x11G>', + 0x473f: b'\x11G?', + 0x4740: b'\x11G@', + 0x4741: b'\x11GA', + 0x4742: b'\x11GB', + 0x4743: b'\x11GC', + 0x4744: b'\x11GD', + 0x4745: b'\x11GE', + 0x4746: b'\x11GF', + 0x4747: b'\x11GG', + 0x4748: b'\x11GH', + 0x4749: b'\x11GI', + 0x474a: b'\x11GJ', + 0x474b: b'\x11GK', + 0x474c: b'\x11GL', + 0x474d: b'\x11GM', + 0x474e: b'\x11GN', + 0x474f: b'\x11GO', + 0x4750: b'\x11GP', + 0x4751: b'\x11GQ', + 0x4752: b'\x11GR', + 0x4753: b'\x11GS', + 0x4754: b'\x11GT', + 0x4755: b'\x11GU', + 0x4756: b'\x11GV', + 0x4757: b'\x11GW', + 0x4758: b'\x11GX', + 0x4759: b'\x11GY', + 0x475a: b'\x11GZ', + 0x475b: b'\x11G[', + 0x475c: b'\x11G\\', + 0x475d: b'\x11G]', + 0x475e: b'\x11G^', + 0x475f: b'\x11G_', + 0x4760: b'\x11G`', + 0x4761: b'\x11Ga', + 0x4762: b'\x11Gb', + 0x4763: b'\x11Gc', + 0x4764: b'\x11Gd', + 0x4765: b'\x11Ge', + 0x4766: b'\x11Gf', + 0x4767: b'\x11Gg', + 0x4768: b'\x11Gh', + 0x4769: b'\x11Gi', + 0x476a: b'\x11Gj', + 0x476b: b'\x11Gk', + 0x476c: b'\x11Gl', + 0x476d: b'\x11Gm', + 0x476e: b'\x11Gn', + 0x476f: b'\x11Go', + 0x4770: b'\x11Gp', + 0x4771: b'\x11Gq', + 0x4772: b'\x11Gr', + 0x4773: b'\x11Gs', + 0x4774: b'\x11Gt', + 0x4775: b'\x11Gu', + 0x4776: b'\x11Gv', + 0x4777: b'\x11Gw', + 0x4778: b'\x11Gx', + 0x4779: b'\x11Gy', + 0x477a: b'\x11Gz', + 0x477b: b'\x11G{', + 0x477c: b'\x11G|', + 0x477d: b'\x11G}', + 0x477e: b'\x11G~', + 0x477f: b'\x11G\x7f', + 0x4780: b'\x11G\x80', + 0x4781: b'\x11G\x81', + 0x4782: b'\x11G\x82', + 0x4783: b'\x11G\x83', + 0x4784: b'\x11G\x84', + 0x4785: b'\x11G\x85', + 0x4786: b'\x11G\x86', + 0x4787: b'\x11G\x87', + 0x4788: b'\x11G\x88', + 0x4789: b'\x11G\x89', + 0x478a: b'\x11G\x8a', + 0x478b: b'\x11G\x8b', + 0x478c: b'\x11G\x8c', + 0x478d: b'\x11G\x8d', + 0x478e: b'\x11G\x8e', + 0x478f: b'\x11G\x8f', + 0x4790: b'\x11G\x90', + 0x4791: b'\x11G\x91', + 0x4792: b'\x11G\x92', + 0x4793: b'\x11G\x93', + 0x4794: b'\x11G\x94', + 0x4795: b'\x11G\x95', + 0x4796: b'\x11G\x96', + 0x4797: b'\x11G\x97', + 0x4798: b'\x11G\x98', + 0x4799: b'\x11G\x99', + 0x479a: b'\x11G\x9a', + 0x479b: b'\x11G\x9b', + 0x479c: b'\x11G\x9c', + 0x479d: b'\x11G\x9d', + 0x479e: b'\x11G\x9e', + 0x479f: b'\x11G\x9f', + 0x47a0: b'\x11G\xa0', + 0x47a1: b'\x11G\xa1', + 0x47a2: b'\x11G\xa2', + 0x47a3: b'\x11G\xa3', + 0x47a4: b'\x11G\xa4', + 0x47a5: b'\x11G\xa5', + 0x47a6: b'\x11G\xa6', + 0x47a7: b'\x11G\xa7', + 0x47a8: b'\x11G\xa8', + 0x47a9: b'\x11G\xa9', + 0x47aa: b'\x11G\xaa', + 0x47ab: b'\x11G\xab', + 0x47ac: b'\x11G\xac', + 0x47ad: b'\x11G\xad', + 0x47ae: b'\x11G\xae', + 0x47af: b'\x11G\xaf', + 0x47b0: b'\x11G\xb0', + 0x47b1: b'\x11G\xb1', + 0x47b2: b'\x11G\xb2', + 0x47b3: b'\x11G\xb3', + 0x47b4: b'\x11G\xb4', + 0x47b5: b'\x11G\xb5', + 0x47b6: b'\x11G\xb6', + 0x47b7: b'\x11G\xb7', + 0x47b8: b'\x11G\xb8', + 0x47b9: b'\x11G\xb9', + 0x47ba: b'\x11G\xba', + 0x47bb: b'\x11G\xbb', + 0x47bc: b'\x11G\xbc', + 0x47bd: b'\x11G\xbd', + 0x47be: b'\x11G\xbe', + 0x47bf: b'\x11G\xbf', + 0x47c0: b'\x11G\xc0', + 0x47c1: b'\x11G\xc1', + 0x47c2: b'\x11G\xc2', + 0x47c3: b'\x11G\xc3', + 0x47c4: b'\x11G\xc4', + 0x47c5: b'\x11G\xc5', + 0x47c6: b'\x11G\xc6', + 0x47c7: b'\x11G\xc7', + 0x47c8: b'\x11G\xc8', + 0x47c9: b'\x11G\xc9', + 0x47ca: b'\x11G\xca', + 0x47cb: b'\x11G\xcb', + 0x47cc: b'\x11G\xcc', + 0x47cd: b'\x11G\xcd', + 0x47ce: b'\x11G\xce', + 0x47cf: b'\x11G\xcf', + 0x47d0: b'\x11G\xd0', + 0x47d1: b'\x11G\xd1', + 0x47d2: b'\x11G\xd2', + 0x47d3: b'\x11G\xd3', + 0x47d4: b'\x11G\xd4', + 0x47d5: b'\x11G\xd5', + 0x47d6: b'\x11G\xd6', + 0x47d7: b'\x11G\xd7', + 0x47d8: b'\x11G\xd8', + 0x47d9: b'\x11G\xd9', + 0x47da: b'\x11G\xda', + 0x47db: b'\x11G\xdb', + 0x47dc: b'\x11G\xdc', + 0x47dd: b'\x11G\xdd', + 0x47de: b'\x11G\xde', + 0x47df: b'\x11G\xdf', + 0x47e0: b'\x11G\xe0', + 0x47e1: b'\x11G\xe1', + 0x47e2: b'\x11G\xe2', + 0x47e3: b'\x11G\xe3', + 0x47e4: b'\x11G\xe4', + 0x47e5: b'\x11G\xe5', + 0x47e6: b'\x11G\xe6', + 0x47e7: b'\x11G\xe7', + 0x47e8: b'\x11G\xe8', + 0x47e9: b'\x11G\xe9', + 0x47ea: b'\x11G\xea', + 0x47eb: b'\x11G\xeb', + 0x47ec: b'\x11G\xec', + 0x47ed: b'\x11G\xed', + 0x47ee: b'\x11G\xee', + 0x47ef: b'\x11G\xef', + 0x47f0: b'\x11G\xf0', + 0x47f1: b'\x11G\xf1', + 0x47f2: b'\x11G\xf2', + 0x47f3: b'\x11G\xf3', + 0x47f4: b'\x11G\xf4', + 0x47f5: b'\x11G\xf5', + 0x47f6: b'\x11G\xf6', + 0x47f7: b'\x11G\xf7', + 0x47f8: b'\x11G\xf8', + 0x47f9: b'\x11G\xf9', + 0x47fa: b'\x11G\xfa', + 0x47fb: b'\x11G\xfb', + 0x47fc: b'\x11G\xfc', + 0x47fd: b'\x11G\xfd', + 0x47fe: b'\x11G\xfe', + 0x47ff: b'\x11G\xff', + 0x4800: b'\x11H\x00', + 0x4801: b'\x11H\x01', + 0x4802: b'\x11H\x02', + 0x4803: b'\x11H\x03', + 0x4804: b'\x11H\x04', + 0x4805: b'\x11H\x05', + 0x4806: b'\x11H\x06', + 0x4807: b'\x11H\x07', + 0x4808: b'\x11H\x08', + 0x4809: b'\x11H\t', + 0x480a: b'\x11H\n', + 0x480b: b'\x11H\x0b', + 0x480c: b'\x11H\x0c', + 0x480d: b'\x11H\r', + 0x480e: b'\x11H\x0e', + 0x480f: b'\x11H\x0f', + 0x4810: b'\x11H\x10', + 0x4811: b'\x11H\x11', + 0x4812: b'\x11H\x12', + 0x4813: b'\x11H\x13', + 0x4814: b'\x11H\x14', + 0x4815: b'\x11H\x15', + 0x4816: b'\x11H\x16', + 0x4817: b'\x11H\x17', + 0x4818: b'\x11H\x18', + 0x4819: b'\x11H\x19', + 0x481a: b'\x11H\x1a', + 0x481b: b'\x11H\x1b', + 0x481c: b'\x11H\x1c', + 0x481d: b'\x11H\x1d', + 0x481e: b'\x11H\x1e', + 0x481f: b'\x11H\x1f', + 0x4820: b'\x11H ', + 0x4821: b'\x11H!', + 0x4822: b'\x11H"', + 0x4823: b'\x11H#', + 0x4824: b'\x11H$', + 0x4825: b'\x11H%', + 0x4826: b'\x11H&', + 0x4827: b"\x11H'", + 0x4828: b'\x11H(', + 0x4829: b'\x11H)', + 0x482a: b'\x11H*', + 0x482b: b'\x11H+', + 0x482c: b'\x11H,', + 0x482d: b'\x11H-', + 0x482e: b'\x11H.', + 0x482f: b'\x11H/', + 0x4830: b'\x11H0', + 0x4831: b'\x11H1', + 0x4832: b'\x11H2', + 0x4833: b'\x11H3', + 0x4834: b'\x11H4', + 0x4835: b'\x11H5', + 0x4836: b'\x11H6', + 0x4837: b'\x11H7', + 0x4838: b'\x11H8', + 0x4839: b'\x11H9', + 0x483a: b'\x11H:', + 0x483b: b'\x11H;', + 0x483c: b'\x11H<', + 0x483d: b'\x11H=', + 0x483e: b'\x11H>', + 0x483f: b'\x11H?', + 0x4840: b'\x11H@', + 0x4841: b'\x11HA', + 0x4842: b'\x11HB', + 0x4843: b'\x11HC', + 0x4844: b'\x11HD', + 0x4845: b'\x11HE', + 0x4846: b'\x11HF', + 0x4847: b'\x11HG', + 0x4848: b'\x11HH', + 0x4849: b'\x11HI', + 0x484a: b'\x11HJ', + 0x484b: b'\x11HK', + 0x484c: b'\x11HL', + 0x484d: b'\x11HM', + 0x484e: b'\x11HN', + 0x484f: b'\x11HO', + 0x4850: b'\x11HP', + 0x4851: b'\x11HQ', + 0x4852: b'\x11HR', + 0x4853: b'\x11HS', + 0x4854: b'\x11HT', + 0x4855: b'\x11HU', + 0x4856: b'\x11HV', + 0x4857: b'\x11HW', + 0x4858: b'\x11HX', + 0x4859: b'\x11HY', + 0x485a: b'\x11HZ', + 0x485b: b'\x11H[', + 0x485c: b'\x11H\\', + 0x485d: b'\x11H]', + 0x485e: b'\x11H^', + 0x485f: b'\x11H_', + 0x4860: b'\x11H`', + 0x4861: b'\x11Ha', + 0x4862: b'\x11Hb', + 0x4863: b'\x11Hc', + 0x4864: b'\x11Hd', + 0x4865: b'\x11He', + 0x4866: b'\x11Hf', + 0x4867: b'\x11Hg', + 0x4868: b'\x11Hh', + 0x4869: b'\x11Hi', + 0x486a: b'\x11Hj', + 0x486b: b'\x11Hk', + 0x486c: b'\x11Hl', + 0x486d: b'\x11Hm', + 0x486e: b'\x11Hn', + 0x486f: b'\x11Ho', + 0x4870: b'\x11Hp', + 0x4871: b'\x11Hq', + 0x4872: b'\x11Hr', + 0x4873: b'\x11Hs', + 0x4874: b'\x11Ht', + 0x4875: b'\x11Hu', + 0x4876: b'\x11Hv', + 0x4877: b'\x11Hw', + 0x4878: b'\x11Hx', + 0x4879: b'\x11Hy', + 0x487a: b'\x11Hz', + 0x487b: b'\x11H{', + 0x487c: b'\x11H|', + 0x487d: b'\x11H}', + 0x487e: b'\x11H~', + 0x487f: b'\x11H\x7f', + 0x4880: b'\x11H\x80', + 0x4881: b'\x11H\x81', + 0x4882: b'\x11H\x82', + 0x4883: b'\x11H\x83', + 0x4884: b'\x11H\x84', + 0x4885: b'\x11H\x85', + 0x4886: b'\x11H\x86', + 0x4887: b'\x11H\x87', + 0x4888: b'\x11H\x88', + 0x4889: b'\x11H\x89', + 0x488a: b'\x11H\x8a', + 0x488b: b'\x11H\x8b', + 0x488c: b'\x11H\x8c', + 0x488d: b'\x11H\x8d', + 0x488e: b'\x11H\x8e', + 0x488f: b'\x11H\x8f', + 0x4890: b'\x11H\x90', + 0x4891: b'\x11H\x91', + 0x4892: b'\x11H\x92', + 0x4893: b'\x11H\x93', + 0x4894: b'\x11H\x94', + 0x4895: b'\x11H\x95', + 0x4896: b'\x11H\x96', + 0x4897: b'\x11H\x97', + 0x4898: b'\x11H\x98', + 0x4899: b'\x11H\x99', + 0x489a: b'\x11H\x9a', + 0x489b: b'\x11H\x9b', + 0x489c: b'\x11H\x9c', + 0x489d: b'\x11H\x9d', + 0x489e: b'\x11H\x9e', + 0x489f: b'\x11H\x9f', + 0x48a0: b'\x11H\xa0', + 0x48a1: b'\x11H\xa1', + 0x48a2: b'\x11H\xa2', + 0x48a3: b'\x11H\xa3', + 0x48a4: b'\x11H\xa4', + 0x48a5: b'\x11H\xa5', + 0x48a6: b'\x11H\xa6', + 0x48a7: b'\x11H\xa7', + 0x48a8: b'\x11H\xa8', + 0x48a9: b'\x11H\xa9', + 0x48aa: b'\x11H\xaa', + 0x48ab: b'\x11H\xab', + 0x48ac: b'\x11H\xac', + 0x48ad: b'\x11H\xad', + 0x48ae: b'\x11H\xae', + 0x48af: b'\x11H\xaf', + 0x48b0: b'\x11H\xb0', + 0x48b1: b'\x11H\xb1', + 0x48b2: b'\x11H\xb2', + 0x48b3: b'\x11H\xb3', + 0x48b4: b'\x11H\xb4', + 0x48b5: b'\x11H\xb5', + 0x48b6: b'\x11H\xb6', + 0x48b7: b'\x11H\xb7', + 0x48b8: b'\x11H\xb8', + 0x48b9: b'\x11H\xb9', + 0x48ba: b'\x11H\xba', + 0x48bb: b'\x11H\xbb', + 0x48bc: b'\x11H\xbc', + 0x48bd: b'\x11H\xbd', + 0x48be: b'\x11H\xbe', + 0x48bf: b'\x11H\xbf', + 0x48c0: b'\x11H\xc0', + 0x48c1: b'\x11H\xc1', + 0x48c2: b'\x11H\xc2', + 0x48c3: b'\x11H\xc3', + 0x48c4: b'\x11H\xc4', + 0x48c5: b'\x11H\xc5', + 0x48c6: b'\x11H\xc6', + 0x48c7: b'\x11H\xc7', + 0x48c8: b'\x11H\xc8', + 0x48c9: b'\x11H\xc9', + 0x48ca: b'\x11H\xca', + 0x48cb: b'\x11H\xcb', + 0x48cc: b'\x11H\xcc', + 0x48cd: b'\x11H\xcd', + 0x48ce: b'\x11H\xce', + 0x48cf: b'\x11H\xcf', + 0x48d0: b'\x11H\xd0', + 0x48d1: b'\x11H\xd1', + 0x48d2: b'\x11H\xd2', + 0x48d3: b'\x11H\xd3', + 0x48d4: b'\x11H\xd4', + 0x48d5: b'\x11H\xd5', + 0x48d6: b'\x11H\xd6', + 0x48d7: b'\x11H\xd7', + 0x48d8: b'\x11H\xd8', + 0x48d9: b'\x11H\xd9', + 0x48da: b'\x11H\xda', + 0x48db: b'\x11H\xdb', + 0x48dc: b'\x11H\xdc', + 0x48dd: b'\x11H\xdd', + 0x48de: b'\x11H\xde', + 0x48df: b'\x11H\xdf', + 0x48e0: b'\x11H\xe0', + 0x48e1: b'\x11H\xe1', + 0x48e2: b'\x11H\xe2', + 0x48e3: b'\x11H\xe3', + 0x48e4: b'\x11H\xe4', + 0x48e5: b'\x11H\xe5', + 0x48e6: b'\x11H\xe6', + 0x48e7: b'\x11H\xe7', + 0x48e8: b'\x11H\xe8', + 0x48e9: b'\x11H\xe9', + 0x48ea: b'\x11H\xea', + 0x48eb: b'\x11H\xeb', + 0x48ec: b'\x11H\xec', + 0x48ed: b'\x11H\xed', + 0x48ee: b'\x11H\xee', + 0x48ef: b'\x11H\xef', + 0x48f0: b'\x11H\xf0', + 0x48f1: b'\x11H\xf1', + 0x48f2: b'\x11H\xf2', + 0x48f3: b'\x11H\xf3', + 0x48f4: b'\x11H\xf4', + 0x48f5: b'\x11H\xf5', + 0x48f6: b'\x11H\xf6', + 0x48f7: b'\x11H\xf7', + 0x48f8: b'\x11H\xf8', + 0x48f9: b'\x11H\xf9', + 0x48fa: b'\x11H\xfa', + 0x48fb: b'\x11H\xfb', + 0x48fc: b'\x11H\xfc', + 0x48fd: b'\x11H\xfd', + 0x48fe: b'\x11H\xfe', + 0x48ff: b'\x11H\xff', + 0x4900: b'\x11I\x00', + 0x4901: b'\x11I\x01', + 0x4902: b'\x11I\x02', + 0x4903: b'\x11I\x03', + 0x4904: b'\x11I\x04', + 0x4905: b'\x11I\x05', + 0x4906: b'\x11I\x06', + 0x4907: b'\x11I\x07', + 0x4908: b'\x11I\x08', + 0x4909: b'\x11I\t', + 0x490a: b'\x11I\n', + 0x490b: b'\x11I\x0b', + 0x490c: b'\x11I\x0c', + 0x490d: b'\x11I\r', + 0x490e: b'\x11I\x0e', + 0x490f: b'\x11I\x0f', + 0x4910: b'\x11I\x10', + 0x4911: b'\x11I\x11', + 0x4912: b'\x11I\x12', + 0x4913: b'\x11I\x13', + 0x4914: b'\x11I\x14', + 0x4915: b'\x11I\x15', + 0x4916: b'\x11I\x16', + 0x4917: b'\x11I\x17', + 0x4918: b'\x11I\x18', + 0x4919: b'\x11I\x19', + 0x491a: b'\x11I\x1a', + 0x491b: b'\x11I\x1b', + 0x491c: b'\x11I\x1c', + 0x491d: b'\x11I\x1d', + 0x491e: b'\x11I\x1e', + 0x491f: b'\x11I\x1f', + 0x4920: b'\x11I ', + 0x4921: b'\x11I!', + 0x4922: b'\x11I"', + 0x4923: b'\x11I#', + 0x4924: b'\x11I$', + 0x4925: b'\x11I%', + 0x4926: b'\x11I&', + 0x4927: b"\x11I'", + 0x4928: b'\x11I(', + 0x4929: b'\x11I)', + 0x492a: b'\x11I*', + 0x492b: b'\x11I+', + 0x492c: b'\x11I,', + 0x492d: b'\x11I-', + 0x492e: b'\x11I.', + 0x492f: b'\x11I/', + 0x4930: b'\x11I0', + 0x4931: b'\x11I1', + 0x4932: b'\x11I2', + 0x4933: b'\x11I3', + 0x4934: b'\x11I4', + 0x4935: b'\x11I5', + 0x4936: b'\x11I6', + 0x4937: b'\x11I7', + 0x4938: b'\x11I8', + 0x4939: b'\x11I9', + 0x493a: b'\x11I:', + 0x493b: b'\x11I;', + 0x493c: b'\x11I<', + 0x493d: b'\x11I=', + 0x493e: b'\x11I>', + 0x493f: b'\x11I?', + 0x4940: b'\x11I@', + 0x4941: b'\x11IA', + 0x4942: b'\x11IB', + 0x4943: b'\x11IC', + 0x4944: b'\x11ID', + 0x4945: b'\x11IE', + 0x4946: b'\x11IF', + 0x4947: b'\x11IG', + 0x4948: b'\x11IH', + 0x4949: b'\x11II', + 0x494a: b'\x11IJ', + 0x494b: b'\x11IK', + 0x494c: b'\x11IL', + 0x494d: b'\x11IM', + 0x494e: b'\x11IN', + 0x494f: b'\x11IO', + 0x4950: b'\x11IP', + 0x4951: b'\x11IQ', + 0x4952: b'\x11IR', + 0x4953: b'\x11IS', + 0x4954: b'\x11IT', + 0x4955: b'\x11IU', + 0x4956: b'\x11IV', + 0x4957: b'\x11IW', + 0x4958: b'\x11IX', + 0x4959: b'\x11IY', + 0x495a: b'\x11IZ', + 0x495b: b'\x11I[', + 0x495c: b'\x11I\\', + 0x495d: b'\x11I]', + 0x495e: b'\x11I^', + 0x495f: b'\x11I_', + 0x4960: b'\x11I`', + 0x4961: b'\x11Ia', + 0x4962: b'\x11Ib', + 0x4963: b'\x11Ic', + 0x4964: b'\x11Id', + 0x4965: b'\x11Ie', + 0x4966: b'\x11If', + 0x4967: b'\x11Ig', + 0x4968: b'\x11Ih', + 0x4969: b'\x11Ii', + 0x496a: b'\x11Ij', + 0x496b: b'\x11Ik', + 0x496c: b'\x11Il', + 0x496d: b'\x11Im', + 0x496e: b'\x11In', + 0x496f: b'\x11Io', + 0x4970: b'\x11Ip', + 0x4971: b'\x11Iq', + 0x4972: b'\x11Ir', + 0x4973: b'\x11Is', + 0x4974: b'\x11It', + 0x4975: b'\x11Iu', + 0x4976: b'\x11Iv', + 0x4977: b'\x11Iw', + 0x4978: b'\x11Ix', + 0x4979: b'\x11Iy', + 0x497a: b'\x11Iz', + 0x497b: b'\x11I{', + 0x497c: b'\x11I|', + 0x497d: b'\x11I}', + 0x497e: b'\x11I~', + 0x497f: b'\x11I\x7f', + 0x4980: b'\x11I\x80', + 0x4981: b'\x11I\x81', + 0x4982: b'\x11I\x82', + 0x4983: b'\x11I\x83', + 0x4984: b'\x11I\x84', + 0x4985: b'\x11I\x85', + 0x4986: b'\x11I\x86', + 0x4987: b'\x11I\x87', + 0x4988: b'\x11I\x88', + 0x4989: b'\x11I\x89', + 0x498a: b'\x11I\x8a', + 0x498b: b'\x11I\x8b', + 0x498c: b'\x11I\x8c', + 0x498d: b'\x11I\x8d', + 0x498e: b'\x11I\x8e', + 0x498f: b'\x11I\x8f', + 0x4990: b'\x11I\x90', + 0x4991: b'\x11I\x91', + 0x4992: b'\x11I\x92', + 0x4993: b'\x11I\x93', + 0x4994: b'\x11I\x94', + 0x4995: b'\x11I\x95', + 0x4996: b'\x11I\x96', + 0x4997: b'\x11I\x97', + 0x4998: b'\x11I\x98', + 0x4999: b'\x11I\x99', + 0x499a: b'\x11I\x9a', + 0x499b: b'\x11I\x9b', + 0x499c: b'\x11I\x9c', + 0x499d: b'\x11I\x9d', + 0x499e: b'\x11I\x9e', + 0x499f: b'\x11I\x9f', + 0x49a0: b'\x11I\xa0', + 0x49a1: b'\x11I\xa1', + 0x49a2: b'\x11I\xa2', + 0x49a3: b'\x11I\xa3', + 0x49a4: b'\x11I\xa4', + 0x49a5: b'\x11I\xa5', + 0x49a6: b'\x11I\xa6', + 0x49a7: b'\x11I\xa7', + 0x49a8: b'\x11I\xa8', + 0x49a9: b'\x11I\xa9', + 0x49aa: b'\x11I\xaa', + 0x49ab: b'\x11I\xab', + 0x49ac: b'\x11I\xac', + 0x49ad: b'\x11I\xad', + 0x49ae: b'\x11I\xae', + 0x49af: b'\x11I\xaf', + 0x49b0: b'\x11I\xb0', + 0x49b1: b'\x11I\xb1', + 0x49b2: b'\x11I\xb2', + 0x49b3: b'\x11I\xb3', + 0x49b4: b'\x11I\xb4', + 0x49b5: b'\x11I\xb5', + 0x49b6: b'\x11I\xb6', + 0x49b7: b'\x11I\xb7', + 0x49b8: b'\x11I\xb8', + 0x49b9: b'\x11I\xb9', + 0x49ba: b'\x11I\xba', + 0x49bb: b'\x11I\xbb', + 0x49bc: b'\x11I\xbc', + 0x49bd: b'\x11I\xbd', + 0x49be: b'\x11I\xbe', + 0x49bf: b'\x11I\xbf', + 0x49c0: b'\x11I\xc0', + 0x49c1: b'\x11I\xc1', + 0x49c2: b'\x11I\xc2', + 0x49c3: b'\x11I\xc3', + 0x49c4: b'\x11I\xc4', + 0x49c5: b'\x11I\xc5', + 0x49c6: b'\x11I\xc6', + 0x49c7: b'\x11I\xc7', + 0x49c8: b'\x11I\xc8', + 0x49c9: b'\x11I\xc9', + 0x49ca: b'\x11I\xca', + 0x49cb: b'\x11I\xcb', + 0x49cc: b'\x11I\xcc', + 0x49cd: b'\x11I\xcd', + 0x49ce: b'\x11I\xce', + 0x49cf: b'\x11I\xcf', + 0x49d0: b'\x11I\xd0', + 0x49d1: b'\x11I\xd1', + 0x49d2: b'\x11I\xd2', + 0x49d3: b'\x11I\xd3', + 0x49d4: b'\x11I\xd4', + 0x49d5: b'\x11I\xd5', + 0x49d6: b'\x11I\xd6', + 0x49d7: b'\x11I\xd7', + 0x49d8: b'\x11I\xd8', + 0x49d9: b'\x11I\xd9', + 0x49da: b'\x11I\xda', + 0x49db: b'\x11I\xdb', + 0x49dc: b'\x11I\xdc', + 0x49dd: b'\x11I\xdd', + 0x49de: b'\x11I\xde', + 0x49df: b'\x11I\xdf', + 0x49e0: b'\x11I\xe0', + 0x49e1: b'\x11I\xe1', + 0x49e2: b'\x11I\xe2', + 0x49e3: b'\x11I\xe3', + 0x49e4: b'\x11I\xe4', + 0x49e5: b'\x11I\xe5', + 0x49e6: b'\x11I\xe6', + 0x49e7: b'\x11I\xe7', + 0x49e8: b'\x11I\xe8', + 0x49e9: b'\x11I\xe9', + 0x49ea: b'\x11I\xea', + 0x49eb: b'\x11I\xeb', + 0x49ec: b'\x11I\xec', + 0x49ed: b'\x11I\xed', + 0x49ee: b'\x11I\xee', + 0x49ef: b'\x11I\xef', + 0x49f0: b'\x11I\xf0', + 0x49f1: b'\x11I\xf1', + 0x49f2: b'\x11I\xf2', + 0x49f3: b'\x11I\xf3', + 0x49f4: b'\x11I\xf4', + 0x49f5: b'\x11I\xf5', + 0x49f6: b'\x11I\xf6', + 0x49f7: b'\x11I\xf7', + 0x49f8: b'\x11I\xf8', + 0x49f9: b'\x11I\xf9', + 0x49fa: b'\x11I\xfa', + 0x49fb: b'\x11I\xfb', + 0x49fc: b'\x11I\xfc', + 0x49fd: b'\x11I\xfd', + 0x49fe: b'\x11I\xfe', + 0x49ff: b'\x11I\xff', + 0x4a00: b'\x11J\x00', + 0x4a01: b'\x11J\x01', + 0x4a02: b'\x11J\x02', + 0x4a03: b'\x11J\x03', + 0x4a04: b'\x11J\x04', + 0x4a05: b'\x11J\x05', + 0x4a06: b'\x11J\x06', + 0x4a07: b'\x11J\x07', + 0x4a08: b'\x11J\x08', + 0x4a09: b'\x11J\t', + 0x4a0a: b'\x11J\n', + 0x4a0b: b'\x11J\x0b', + 0x4a0c: b'\x11J\x0c', + 0x4a0d: b'\x11J\r', + 0x4a0e: b'\x11J\x0e', + 0x4a0f: b'\x11J\x0f', + 0x4a10: b'\x11J\x10', + 0x4a11: b'\x11J\x11', + 0x4a12: b'\x11J\x12', + 0x4a13: b'\x11J\x13', + 0x4a14: b'\x11J\x14', + 0x4a15: b'\x11J\x15', + 0x4a16: b'\x11J\x16', + 0x4a17: b'\x11J\x17', + 0x4a18: b'\x11J\x18', + 0x4a19: b'\x11J\x19', + 0x4a1a: b'\x11J\x1a', + 0x4a1b: b'\x11J\x1b', + 0x4a1c: b'\x11J\x1c', + 0x4a1d: b'\x11J\x1d', + 0x4a1e: b'\x11J\x1e', + 0x4a1f: b'\x11J\x1f', + 0x4a20: b'\x11J ', + 0x4a21: b'\x11J!', + 0x4a22: b'\x11J"', + 0x4a23: b'\x11J#', + 0x4a24: b'\x11J$', + 0x4a25: b'\x11J%', + 0x4a26: b'\x11J&', + 0x4a27: b"\x11J'", + 0x4a28: b'\x11J(', + 0x4a29: b'\x11J)', + 0x4a2a: b'\x11J*', + 0x4a2b: b'\x11J+', + 0x4a2c: b'\x11J,', + 0x4a2d: b'\x11J-', + 0x4a2e: b'\x11J.', + 0x4a2f: b'\x11J/', + 0x4a30: b'\x11J0', + 0x4a31: b'\x11J1', + 0x4a32: b'\x11J2', + 0x4a33: b'\x11J3', + 0x4a34: b'\x11J4', + 0x4a35: b'\x11J5', + 0x4a36: b'\x11J6', + 0x4a37: b'\x11J7', + 0x4a38: b'\x11J8', + 0x4a39: b'\x11J9', + 0x4a3a: b'\x11J:', + 0x4a3b: b'\x11J;', + 0x4a3c: b'\x11J<', + 0x4a3d: b'\x11J=', + 0x4a3e: b'\x11J>', + 0x4a3f: b'\x11J?', + 0x4a40: b'\x11J@', + 0x4a41: b'\x11JA', + 0x4a42: b'\x11JB', + 0x4a43: b'\x11JC', + 0x4a44: b'\x11JD', + 0x4a45: b'\x11JE', + 0x4a46: b'\x11JF', + 0x4a47: b'\x11JG', + 0x4a48: b'\x11JH', + 0x4a49: b'\x11JI', + 0x4a4a: b'\x11JJ', + 0x4a4b: b'\x11JK', + 0x4a4c: b'\x11JL', + 0x4a4d: b'\x11JM', + 0x4a4e: b'\x11JN', + 0x4a4f: b'\x11JO', + 0x4a50: b'\x11JP', + 0x4a51: b'\x11JQ', + 0x4a52: b'\x11JR', + 0x4a53: b'\x11JS', + 0x4a54: b'\x11JT', + 0x4a55: b'\x11JU', + 0x4a56: b'\x11JV', + 0x4a57: b'\x11JW', + 0x4a58: b'\x11JX', + 0x4a59: b'\x11JY', + 0x4a5a: b'\x11JZ', + 0x4a5b: b'\x11J[', + 0x4a5c: b'\x11J\\', + 0x4a5d: b'\x11J]', + 0x4a5e: b'\x11J^', + 0x4a5f: b'\x11J_', + 0x4a60: b'\x11J`', + 0x4a61: b'\x11Ja', + 0x4a62: b'\x11Jb', + 0x4a63: b'\x11Jc', + 0x4a64: b'\x11Jd', + 0x4a65: b'\x11Je', + 0x4a66: b'\x11Jf', + 0x4a67: b'\x11Jg', + 0x4a68: b'\x11Jh', + 0x4a69: b'\x11Ji', + 0x4a6a: b'\x11Jj', + 0x4a6b: b'\x11Jk', + 0x4a6c: b'\x11Jl', + 0x4a6d: b'\x11Jm', + 0x4a6e: b'\x11Jn', + 0x4a6f: b'\x11Jo', + 0x4a70: b'\x11Jp', + 0x4a71: b'\x11Jq', + 0x4a72: b'\x11Jr', + 0x4a73: b'\x11Js', + 0x4a74: b'\x11Jt', + 0x4a75: b'\x11Ju', + 0x4a76: b'\x11Jv', + 0x4a77: b'\x11Jw', + 0x4a78: b'\x11Jx', + 0x4a79: b'\x11Jy', + 0x4a7a: b'\x11Jz', + 0x4a7b: b'\x11J{', + 0x4a7c: b'\x11J|', + 0x4a7d: b'\x11J}', + 0x4a7e: b'\x11J~', + 0x4a7f: b'\x11J\x7f', + 0x4a80: b'\x11J\x80', + 0x4a81: b'\x11J\x81', + 0x4a82: b'\x11J\x82', + 0x4a83: b'\x11J\x83', + 0x4a84: b'\x11J\x84', + 0x4a85: b'\x11J\x85', + 0x4a86: b'\x11J\x86', + 0x4a87: b'\x11J\x87', + 0x4a88: b'\x11J\x88', + 0x4a89: b'\x11J\x89', + 0x4a8a: b'\x11J\x8a', + 0x4a8b: b'\x11J\x8b', + 0x4a8c: b'\x11J\x8c', + 0x4a8d: b'\x11J\x8d', + 0x4a8e: b'\x11J\x8e', + 0x4a8f: b'\x11J\x8f', + 0x4a90: b'\x11J\x90', + 0x4a91: b'\x11J\x91', + 0x4a92: b'\x11J\x92', + 0x4a93: b'\x11J\x93', + 0x4a94: b'\x11J\x94', + 0x4a95: b'\x11J\x95', + 0x4a96: b'\x11J\x96', + 0x4a97: b'\x11J\x97', + 0x4a98: b'\x11J\x98', + 0x4a99: b'\x11J\x99', + 0x4a9a: b'\x11J\x9a', + 0x4a9b: b'\x11J\x9b', + 0x4a9c: b'\x11J\x9c', + 0x4a9d: b'\x11J\x9d', + 0x4a9e: b'\x11J\x9e', + 0x4a9f: b'\x11J\x9f', + 0x4aa0: b'\x11J\xa0', + 0x4aa1: b'\x11J\xa1', + 0x4aa2: b'\x11J\xa2', + 0x4aa3: b'\x11J\xa3', + 0x4aa4: b'\x11J\xa4', + 0x4aa5: b'\x11J\xa5', + 0x4aa6: b'\x11J\xa6', + 0x4aa7: b'\x11J\xa7', + 0x4aa8: b'\x11J\xa8', + 0x4aa9: b'\x11J\xa9', + 0x4aaa: b'\x11J\xaa', + 0x4aab: b'\x11J\xab', + 0x4aac: b'\x11J\xac', + 0x4aad: b'\x11J\xad', + 0x4aae: b'\x11J\xae', + 0x4aaf: b'\x11J\xaf', + 0x4ab0: b'\x11J\xb0', + 0x4ab1: b'\x11J\xb1', + 0x4ab2: b'\x11J\xb2', + 0x4ab3: b'\x11J\xb3', + 0x4ab4: b'\x11J\xb4', + 0x4ab5: b'\x11J\xb5', + 0x4ab6: b'\x11J\xb6', + 0x4ab7: b'\x11J\xb7', + 0x4ab8: b'\x11J\xb8', + 0x4ab9: b'\x11J\xb9', + 0x4aba: b'\x11J\xba', + 0x4abb: b'\x11J\xbb', + 0x4abc: b'\x11J\xbc', + 0x4abd: b'\x11J\xbd', + 0x4abe: b'\x11J\xbe', + 0x4abf: b'\x11J\xbf', + 0x4ac0: b'\x11J\xc0', + 0x4ac1: b'\x11J\xc1', + 0x4ac2: b'\x11J\xc2', + 0x4ac3: b'\x11J\xc3', + 0x4ac4: b'\x11J\xc4', + 0x4ac5: b'\x11J\xc5', + 0x4ac6: b'\x11J\xc6', + 0x4ac7: b'\x11J\xc7', + 0x4ac8: b'\x11J\xc8', + 0x4ac9: b'\x11J\xc9', + 0x4aca: b'\x11J\xca', + 0x4acb: b'\x11J\xcb', + 0x4acc: b'\x11J\xcc', + 0x4acd: b'\x11J\xcd', + 0x4ace: b'\x11J\xce', + 0x4acf: b'\x11J\xcf', + 0x4ad0: b'\x11J\xd0', + 0x4ad1: b'\x11J\xd1', + 0x4ad2: b'\x11J\xd2', + 0x4ad3: b'\x11J\xd3', + 0x4ad4: b'\x11J\xd4', + 0x4ad5: b'\x11J\xd5', + 0x4ad6: b'\x11J\xd6', + 0x4ad7: b'\x11J\xd7', + 0x4ad8: b'\x11J\xd8', + 0x4ad9: b'\x11J\xd9', + 0x4ada: b'\x11J\xda', + 0x4adb: b'\x11J\xdb', + 0x4adc: b'\x11J\xdc', + 0x4add: b'\x11J\xdd', + 0x4ade: b'\x11J\xde', + 0x4adf: b'\x11J\xdf', + 0x4ae0: b'\x11J\xe0', + 0x4ae1: b'\x11J\xe1', + 0x4ae2: b'\x11J\xe2', + 0x4ae3: b'\x11J\xe3', + 0x4ae4: b'\x11J\xe4', + 0x4ae5: b'\x11J\xe5', + 0x4ae6: b'\x11J\xe6', + 0x4ae7: b'\x11J\xe7', + 0x4ae8: b'\x11J\xe8', + 0x4ae9: b'\x11J\xe9', + 0x4aea: b'\x11J\xea', + 0x4aeb: b'\x11J\xeb', + 0x4aec: b'\x11J\xec', + 0x4aed: b'\x11J\xed', + 0x4aee: b'\x11J\xee', + 0x4aef: b'\x11J\xef', + 0x4af0: b'\x11J\xf0', + 0x4af1: b'\x11J\xf1', + 0x4af2: b'\x11J\xf2', + 0x4af3: b'\x11J\xf3', + 0x4af4: b'\x11J\xf4', + 0x4af5: b'\x11J\xf5', + 0x4af6: b'\x11J\xf6', + 0x4af7: b'\x11J\xf7', + 0x4af8: b'\x11J\xf8', + 0x4af9: b'\x11J\xf9', + 0x4afa: b'\x11J\xfa', + 0x4afb: b'\x11J\xfb', + 0x4afc: b'\x11J\xfc', + 0x4afd: b'\x11J\xfd', + 0x4afe: b'\x11J\xfe', + 0x4aff: b'\x11J\xff', + 0x4b00: b'\x11K\x00', + 0x4b01: b'\x11K\x01', + 0x4b02: b'\x11K\x02', + 0x4b03: b'\x11K\x03', + 0x4b04: b'\x11K\x04', + 0x4b05: b'\x11K\x05', + 0x4b06: b'\x11K\x06', + 0x4b07: b'\x11K\x07', + 0x4b08: b'\x11K\x08', + 0x4b09: b'\x11K\t', + 0x4b0a: b'\x11K\n', + 0x4b0b: b'\x11K\x0b', + 0x4b0c: b'\x11K\x0c', + 0x4b0d: b'\x11K\r', + 0x4b0e: b'\x11K\x0e', + 0x4b0f: b'\x11K\x0f', + 0x4b10: b'\x11K\x10', + 0x4b11: b'\x11K\x11', + 0x4b12: b'\x11K\x12', + 0x4b13: b'\x11K\x13', + 0x4b14: b'\x11K\x14', + 0x4b15: b'\x11K\x15', + 0x4b16: b'\x11K\x16', + 0x4b17: b'\x11K\x17', + 0x4b18: b'\x11K\x18', + 0x4b19: b'\x11K\x19', + 0x4b1a: b'\x11K\x1a', + 0x4b1b: b'\x11K\x1b', + 0x4b1c: b'\x11K\x1c', + 0x4b1d: b'\x11K\x1d', + 0x4b1e: b'\x11K\x1e', + 0x4b1f: b'\x11K\x1f', + 0x4b20: b'\x11K ', + 0x4b21: b'\x11K!', + 0x4b22: b'\x11K"', + 0x4b23: b'\x11K#', + 0x4b24: b'\x11K$', + 0x4b25: b'\x11K%', + 0x4b26: b'\x11K&', + 0x4b27: b"\x11K'", + 0x4b28: b'\x11K(', + 0x4b29: b'\x11K)', + 0x4b2a: b'\x11K*', + 0x4b2b: b'\x11K+', + 0x4b2c: b'\x11K,', + 0x4b2d: b'\x11K-', + 0x4b2e: b'\x11K.', + 0x4b2f: b'\x11K/', + 0x4b30: b'\x11K0', + 0x4b31: b'\x11K1', + 0x4b32: b'\x11K2', + 0x4b33: b'\x11K3', + 0x4b34: b'\x11K4', + 0x4b35: b'\x11K5', + 0x4b36: b'\x11K6', + 0x4b37: b'\x11K7', + 0x4b38: b'\x11K8', + 0x4b39: b'\x11K9', + 0x4b3a: b'\x11K:', + 0x4b3b: b'\x11K;', + 0x4b3c: b'\x11K<', + 0x4b3d: b'\x11K=', + 0x4b3e: b'\x11K>', + 0x4b3f: b'\x11K?', + 0x4b40: b'\x11K@', + 0x4b41: b'\x11KA', + 0x4b42: b'\x11KB', + 0x4b43: b'\x11KC', + 0x4b44: b'\x11KD', + 0x4b45: b'\x11KE', + 0x4b46: b'\x11KF', + 0x4b47: b'\x11KG', + 0x4b48: b'\x11KH', + 0x4b49: b'\x11KI', + 0x4b4a: b'\x11KJ', + 0x4b4b: b'\x11KK', + 0x4b4c: b'\x11KL', + 0x4b4d: b'\x11KM', + 0x4b4e: b'\x11KN', + 0x4b4f: b'\x11KO', + 0x4b50: b'\x11KP', + 0x4b51: b'\x11KQ', + 0x4b52: b'\x11KR', + 0x4b53: b'\x11KS', + 0x4b54: b'\x11KT', + 0x4b55: b'\x11KU', + 0x4b56: b'\x11KV', + 0x4b57: b'\x11KW', + 0x4b58: b'\x11KX', + 0x4b59: b'\x11KY', + 0x4b5a: b'\x11KZ', + 0x4b5b: b'\x11K[', + 0x4b5c: b'\x11K\\', + 0x4b5d: b'\x11K]', + 0x4b5e: b'\x11K^', + 0x4b5f: b'\x11K_', + 0x4b60: b'\x11K`', + 0x4b61: b'\x11Ka', + 0x4b62: b'\x11Kb', + 0x4b63: b'\x11Kc', + 0x4b64: b'\x11Kd', + 0x4b65: b'\x11Ke', + 0x4b66: b'\x11Kf', + 0x4b67: b'\x11Kg', + 0x4b68: b'\x11Kh', + 0x4b69: b'\x11Ki', + 0x4b6a: b'\x11Kj', + 0x4b6b: b'\x11Kk', + 0x4b6c: b'\x11Kl', + 0x4b6d: b'\x11Km', + 0x4b6e: b'\x11Kn', + 0x4b6f: b'\x11Ko', + 0x4b70: b'\x11Kp', + 0x4b71: b'\x11Kq', + 0x4b72: b'\x11Kr', + 0x4b73: b'\x11Ks', + 0x4b74: b'\x11Kt', + 0x4b75: b'\x11Ku', + 0x4b76: b'\x11Kv', + 0x4b77: b'\x11Kw', + 0x4b78: b'\x11Kx', + 0x4b79: b'\x11Ky', + 0x4b7a: b'\x11Kz', + 0x4b7b: b'\x11K{', + 0x4b7c: b'\x11K|', + 0x4b7d: b'\x11K}', + 0x4b7e: b'\x11K~', + 0x4b7f: b'\x11K\x7f', + 0x4b80: b'\x11K\x80', + 0x4b81: b'\x11K\x81', + 0x4b82: b'\x11K\x82', + 0x4b83: b'\x11K\x83', + 0x4b84: b'\x11K\x84', + 0x4b85: b'\x11K\x85', + 0x4b86: b'\x11K\x86', + 0x4b87: b'\x11K\x87', + 0x4b88: b'\x11K\x88', + 0x4b89: b'\x11K\x89', + 0x4b8a: b'\x11K\x8a', + 0x4b8b: b'\x11K\x8b', + 0x4b8c: b'\x11K\x8c', + 0x4b8d: b'\x11K\x8d', + 0x4b8e: b'\x11K\x8e', + 0x4b8f: b'\x11K\x8f', + 0x4b90: b'\x11K\x90', + 0x4b91: b'\x11K\x91', + 0x4b92: b'\x11K\x92', + 0x4b93: b'\x11K\x93', + 0x4b94: b'\x11K\x94', + 0x4b95: b'\x11K\x95', + 0x4b96: b'\x11K\x96', + 0x4b97: b'\x11K\x97', + 0x4b98: b'\x11K\x98', + 0x4b99: b'\x11K\x99', + 0x4b9a: b'\x11K\x9a', + 0x4b9b: b'\x11K\x9b', + 0x4b9c: b'\x11K\x9c', + 0x4b9d: b'\x11K\x9d', + 0x4b9e: b'\x11K\x9e', + 0x4b9f: b'\x11K\x9f', + 0x4ba0: b'\x11K\xa0', + 0x4ba1: b'\x11K\xa1', + 0x4ba2: b'\x11K\xa2', + 0x4ba3: b'\x11K\xa3', + 0x4ba4: b'\x11K\xa4', + 0x4ba5: b'\x11K\xa5', + 0x4ba6: b'\x11K\xa6', + 0x4ba7: b'\x11K\xa7', + 0x4ba8: b'\x11K\xa8', + 0x4ba9: b'\x11K\xa9', + 0x4baa: b'\x11K\xaa', + 0x4bab: b'\x11K\xab', + 0x4bac: b'\x11K\xac', + 0x4bad: b'\x11K\xad', + 0x4bae: b'\x11K\xae', + 0x4baf: b'\x11K\xaf', + 0x4bb0: b'\x11K\xb0', + 0x4bb1: b'\x11K\xb1', + 0x4bb2: b'\x11K\xb2', + 0x4bb3: b'\x11K\xb3', + 0x4bb4: b'\x11K\xb4', + 0x4bb5: b'\x11K\xb5', + 0x4bb6: b'\x11K\xb6', + 0x4bb7: b'\x11K\xb7', + 0x4bb8: b'\x11K\xb8', + 0x4bb9: b'\x11K\xb9', + 0x4bba: b'\x11K\xba', + 0x4bbb: b'\x11K\xbb', + 0x4bbc: b'\x11K\xbc', + 0x4bbd: b'\x11K\xbd', + 0x4bbe: b'\x11K\xbe', + 0x4bbf: b'\x11K\xbf', + 0x4bc0: b'\x11K\xc0', + 0x4bc1: b'\x11K\xc1', + 0x4bc2: b'\x11K\xc2', + 0x4bc3: b'\x11K\xc3', + 0x4bc4: b'\x11K\xc4', + 0x4bc5: b'\x11K\xc5', + 0x4bc6: b'\x11K\xc6', + 0x4bc7: b'\x11K\xc7', + 0x4bc8: b'\x11K\xc8', + 0x4bc9: b'\x11K\xc9', + 0x4bca: b'\x11K\xca', + 0x4bcb: b'\x11K\xcb', + 0x4bcc: b'\x11K\xcc', + 0x4bcd: b'\x11K\xcd', + 0x4bce: b'\x11K\xce', + 0x4bcf: b'\x11K\xcf', + 0x4bd0: b'\x11K\xd0', + 0x4bd1: b'\x11K\xd1', + 0x4bd2: b'\x11K\xd2', + 0x4bd3: b'\x11K\xd3', + 0x4bd4: b'\x11K\xd4', + 0x4bd5: b'\x11K\xd5', + 0x4bd6: b'\x11K\xd6', + 0x4bd7: b'\x11K\xd7', + 0x4bd8: b'\x11K\xd8', + 0x4bd9: b'\x11K\xd9', + 0x4bda: b'\x11K\xda', + 0x4bdb: b'\x11K\xdb', + 0x4bdc: b'\x11K\xdc', + 0x4bdd: b'\x11K\xdd', + 0x4bde: b'\x11K\xde', + 0x4bdf: b'\x11K\xdf', + 0x4be0: b'\x11K\xe0', + 0x4be1: b'\x11K\xe1', + 0x4be2: b'\x11K\xe2', + 0x4be3: b'\x11K\xe3', + 0x4be4: b'\x11K\xe4', + 0x4be5: b'\x11K\xe5', + 0x4be6: b'\x11K\xe6', + 0x4be7: b'\x11K\xe7', + 0x4be8: b'\x11K\xe8', + 0x4be9: b'\x11K\xe9', + 0x4bea: b'\x11K\xea', + 0x4beb: b'\x11K\xeb', + 0x4bec: b'\x11K\xec', + 0x4bed: b'\x11K\xed', + 0x4bee: b'\x11K\xee', + 0x4bef: b'\x11K\xef', + 0x4bf0: b'\x11K\xf0', + 0x4bf1: b'\x11K\xf1', + 0x4bf2: b'\x11K\xf2', + 0x4bf3: b'\x11K\xf3', + 0x4bf4: b'\x11K\xf4', + 0x4bf5: b'\x11K\xf5', + 0x4bf6: b'\x11K\xf6', + 0x4bf7: b'\x11K\xf7', + 0x4bf8: b'\x11K\xf8', + 0x4bf9: b'\x11K\xf9', + 0x4bfa: b'\x11K\xfa', + 0x4bfb: b'\x11K\xfb', + 0x4bfc: b'\x11K\xfc', + 0x4bfd: b'\x11K\xfd', + 0x4bfe: b'\x11K\xfe', + 0x4bff: b'\x11K\xff', + 0x4c00: b'\x11L\x00', + 0x4c01: b'\x11L\x01', + 0x4c02: b'\x11L\x02', + 0x4c03: b'\x11L\x03', + 0x4c04: b'\x11L\x04', + 0x4c05: b'\x11L\x05', + 0x4c06: b'\x11L\x06', + 0x4c07: b'\x11L\x07', + 0x4c08: b'\x11L\x08', + 0x4c09: b'\x11L\t', + 0x4c0a: b'\x11L\n', + 0x4c0b: b'\x11L\x0b', + 0x4c0c: b'\x11L\x0c', + 0x4c0d: b'\x11L\r', + 0x4c0e: b'\x11L\x0e', + 0x4c0f: b'\x11L\x0f', + 0x4c10: b'\x11L\x10', + 0x4c11: b'\x11L\x11', + 0x4c12: b'\x11L\x12', + 0x4c13: b'\x11L\x13', + 0x4c14: b'\x11L\x14', + 0x4c15: b'\x11L\x15', + 0x4c16: b'\x11L\x16', + 0x4c17: b'\x11L\x17', + 0x4c18: b'\x11L\x18', + 0x4c19: b'\x11L\x19', + 0x4c1a: b'\x11L\x1a', + 0x4c1b: b'\x11L\x1b', + 0x4c1c: b'\x11L\x1c', + 0x4c1d: b'\x11L\x1d', + 0x4c1e: b'\x11L\x1e', + 0x4c1f: b'\x11L\x1f', + 0x4c20: b'\x11L ', + 0x4c21: b'\x11L!', + 0x4c22: b'\x11L"', + 0x4c23: b'\x11L#', + 0x4c24: b'\x11L$', + 0x4c25: b'\x11L%', + 0x4c26: b'\x11L&', + 0x4c27: b"\x11L'", + 0x4c28: b'\x11L(', + 0x4c29: b'\x11L)', + 0x4c2a: b'\x11L*', + 0x4c2b: b'\x11L+', + 0x4c2c: b'\x11L,', + 0x4c2d: b'\x11L-', + 0x4c2e: b'\x11L.', + 0x4c2f: b'\x11L/', + 0x4c30: b'\x11L0', + 0x4c31: b'\x11L1', + 0x4c32: b'\x11L2', + 0x4c33: b'\x11L3', + 0x4c34: b'\x11L4', + 0x4c35: b'\x11L5', + 0x4c36: b'\x11L6', + 0x4c37: b'\x11L7', + 0x4c38: b'\x11L8', + 0x4c39: b'\x11L9', + 0x4c3a: b'\x11L:', + 0x4c3b: b'\x11L;', + 0x4c3c: b'\x11L<', + 0x4c3d: b'\x11L=', + 0x4c3e: b'\x11L>', + 0x4c3f: b'\x11L?', + 0x4c40: b'\x11L@', + 0x4c41: b'\x11LA', + 0x4c42: b'\x11LB', + 0x4c43: b'\x11LC', + 0x4c44: b'\x11LD', + 0x4c45: b'\x11LE', + 0x4c46: b'\x11LF', + 0x4c47: b'\x11LG', + 0x4c48: b'\x11LH', + 0x4c49: b'\x11LI', + 0x4c4a: b'\x11LJ', + 0x4c4b: b'\x11LK', + 0x4c4c: b'\x11LL', + 0x4c4d: b'\x11LM', + 0x4c4e: b'\x11LN', + 0x4c4f: b'\x11LO', + 0x4c50: b'\x11LP', + 0x4c51: b'\x11LQ', + 0x4c52: b'\x11LR', + 0x4c53: b'\x11LS', + 0x4c54: b'\x11LT', + 0x4c55: b'\x11LU', + 0x4c56: b'\x11LV', + 0x4c57: b'\x11LW', + 0x4c58: b'\x11LX', + 0x4c59: b'\x11LY', + 0x4c5a: b'\x11LZ', + 0x4c5b: b'\x11L[', + 0x4c5c: b'\x11L\\', + 0x4c5d: b'\x11L]', + 0x4c5e: b'\x11L^', + 0x4c5f: b'\x11L_', + 0x4c60: b'\x11L`', + 0x4c61: b'\x11La', + 0x4c62: b'\x11Lb', + 0x4c63: b'\x11Lc', + 0x4c64: b'\x11Ld', + 0x4c65: b'\x11Le', + 0x4c66: b'\x11Lf', + 0x4c67: b'\x11Lg', + 0x4c68: b'\x11Lh', + 0x4c69: b'\x11Li', + 0x4c6a: b'\x11Lj', + 0x4c6b: b'\x11Lk', + 0x4c6c: b'\x11Ll', + 0x4c6d: b'\x11Lm', + 0x4c6e: b'\x11Ln', + 0x4c6f: b'\x11Lo', + 0x4c70: b'\x11Lp', + 0x4c71: b'\x11Lq', + 0x4c72: b'\x11Lr', + 0x4c73: b'\x11Ls', + 0x4c74: b'\x11Lt', + 0x4c75: b'\x11Lu', + 0x4c76: b'\x11Lv', + 0x4c77: b'\x11Lw', + 0x4c78: b'\x11Lx', + 0x4c79: b'\x11Ly', + 0x4c7a: b'\x11Lz', + 0x4c7b: b'\x11L{', + 0x4c7c: b'\x11L|', + 0x4c7d: b'\x11L}', + 0x4c7e: b'\x11L~', + 0x4c7f: b'\x11L\x7f', + 0x4c80: b'\x11L\x80', + 0x4c81: b'\x11L\x81', + 0x4c82: b'\x11L\x82', + 0x4c83: b'\x11L\x83', + 0x4c84: b'\x11L\x84', + 0x4c85: b'\x11L\x85', + 0x4c86: b'\x11L\x86', + 0x4c87: b'\x11L\x87', + 0x4c88: b'\x11L\x88', + 0x4c89: b'\x11L\x89', + 0x4c8a: b'\x11L\x8a', + 0x4c8b: b'\x11L\x8b', + 0x4c8c: b'\x11L\x8c', + 0x4c8d: b'\x11L\x8d', + 0x4c8e: b'\x11L\x8e', + 0x4c8f: b'\x11L\x8f', + 0x4c90: b'\x11L\x90', + 0x4c91: b'\x11L\x91', + 0x4c92: b'\x11L\x92', + 0x4c93: b'\x11L\x93', + 0x4c94: b'\x11L\x94', + 0x4c95: b'\x11L\x95', + 0x4c96: b'\x11L\x96', + 0x4c97: b'\x11L\x97', + 0x4c98: b'\x11L\x98', + 0x4c99: b'\x11L\x99', + 0x4c9a: b'\x11L\x9a', + 0x4c9b: b'\x11L\x9b', + 0x4c9c: b'\x11L\x9c', + 0x4c9d: b'\x11L\x9d', + 0x4c9e: b'\x11L\x9e', + 0x4c9f: b'\x11L\x9f', + 0x4ca0: b'\x11L\xa0', + 0x4ca1: b'\x11L\xa1', + 0x4ca2: b'\x11L\xa2', + 0x4ca3: b'\x11L\xa3', + 0x4ca4: b'\x11L\xa4', + 0x4ca5: b'\x11L\xa5', + 0x4ca6: b'\x11L\xa6', + 0x4ca7: b'\x11L\xa7', + 0x4ca8: b'\x11L\xa8', + 0x4ca9: b'\x11L\xa9', + 0x4caa: b'\x11L\xaa', + 0x4cab: b'\x11L\xab', + 0x4cac: b'\x11L\xac', + 0x4cad: b'\x11L\xad', + 0x4cae: b'\x11L\xae', + 0x4caf: b'\x11L\xaf', + 0x4cb0: b'\x11L\xb0', + 0x4cb1: b'\x11L\xb1', + 0x4cb2: b'\x11L\xb2', + 0x4cb3: b'\x11L\xb3', + 0x4cb4: b'\x11L\xb4', + 0x4cb5: b'\x11L\xb5', + 0x4cb6: b'\x11L\xb6', + 0x4cb7: b'\x11L\xb7', + 0x4cb8: b'\x11L\xb8', + 0x4cb9: b'\x11L\xb9', + 0x4cba: b'\x11L\xba', + 0x4cbb: b'\x11L\xbb', + 0x4cbc: b'\x11L\xbc', + 0x4cbd: b'\x11L\xbd', + 0x4cbe: b'\x11L\xbe', + 0x4cbf: b'\x11L\xbf', + 0x4cc0: b'\x11L\xc0', + 0x4cc1: b'\x11L\xc1', + 0x4cc2: b'\x11L\xc2', + 0x4cc3: b'\x11L\xc3', + 0x4cc4: b'\x11L\xc4', + 0x4cc5: b'\x11L\xc5', + 0x4cc6: b'\x11L\xc6', + 0x4cc7: b'\x11L\xc7', + 0x4cc8: b'\x11L\xc8', + 0x4cc9: b'\x11L\xc9', + 0x4cca: b'\x11L\xca', + 0x4ccb: b'\x11L\xcb', + 0x4ccc: b'\x11L\xcc', + 0x4ccd: b'\x11L\xcd', + 0x4cce: b'\x11L\xce', + 0x4ccf: b'\x11L\xcf', + 0x4cd0: b'\x11L\xd0', + 0x4cd1: b'\x11L\xd1', + 0x4cd2: b'\x11L\xd2', + 0x4cd3: b'\x11L\xd3', + 0x4cd4: b'\x11L\xd4', + 0x4cd5: b'\x11L\xd5', + 0x4cd6: b'\x11L\xd6', + 0x4cd7: b'\x11L\xd7', + 0x4cd8: b'\x11L\xd8', + 0x4cd9: b'\x11L\xd9', + 0x4cda: b'\x11L\xda', + 0x4cdb: b'\x11L\xdb', + 0x4cdc: b'\x11L\xdc', + 0x4cdd: b'\x11L\xdd', + 0x4cde: b'\x11L\xde', + 0x4cdf: b'\x11L\xdf', + 0x4ce0: b'\x11L\xe0', + 0x4ce1: b'\x11L\xe1', + 0x4ce2: b'\x11L\xe2', + 0x4ce3: b'\x11L\xe3', + 0x4ce4: b'\x11L\xe4', + 0x4ce5: b'\x11L\xe5', + 0x4ce6: b'\x11L\xe6', + 0x4ce7: b'\x11L\xe7', + 0x4ce8: b'\x11L\xe8', + 0x4ce9: b'\x11L\xe9', + 0x4cea: b'\x11L\xea', + 0x4ceb: b'\x11L\xeb', + 0x4cec: b'\x11L\xec', + 0x4ced: b'\x11L\xed', + 0x4cee: b'\x11L\xee', + 0x4cef: b'\x11L\xef', + 0x4cf0: b'\x11L\xf0', + 0x4cf1: b'\x11L\xf1', + 0x4cf2: b'\x11L\xf2', + 0x4cf3: b'\x11L\xf3', + 0x4cf4: b'\x11L\xf4', + 0x4cf5: b'\x11L\xf5', + 0x4cf6: b'\x11L\xf6', + 0x4cf7: b'\x11L\xf7', + 0x4cf8: b'\x11L\xf8', + 0x4cf9: b'\x11L\xf9', + 0x4cfa: b'\x11L\xfa', + 0x4cfb: b'\x11L\xfb', + 0x4cfc: b'\x11L\xfc', + 0x4cfd: b'\x11L\xfd', + 0x4cfe: b'\x11L\xfe', + 0x4cff: b'\x11L\xff', + 0x4d00: b'\x11M\x00', + 0x4d01: b'\x11M\x01', + 0x4d02: b'\x11M\x02', + 0x4d03: b'\x11M\x03', + 0x4d04: b'\x11M\x04', + 0x4d05: b'\x11M\x05', + 0x4d06: b'\x11M\x06', + 0x4d07: b'\x11M\x07', + 0x4d08: b'\x11M\x08', + 0x4d09: b'\x11M\t', + 0x4d0a: b'\x11M\n', + 0x4d0b: b'\x11M\x0b', + 0x4d0c: b'\x11M\x0c', + 0x4d0d: b'\x11M\r', + 0x4d0e: b'\x11M\x0e', + 0x4d0f: b'\x11M\x0f', + 0x4d10: b'\x11M\x10', + 0x4d11: b'\x11M\x11', + 0x4d12: b'\x11M\x12', + 0x4d13: b'\x11M\x13', + 0x4d14: b'\x11M\x14', + 0x4d15: b'\x11M\x15', + 0x4d16: b'\x11M\x16', + 0x4d17: b'\x11M\x17', + 0x4d18: b'\x11M\x18', + 0x4d19: b'\x11M\x19', + 0x4d1a: b'\x11M\x1a', + 0x4d1b: b'\x11M\x1b', + 0x4d1c: b'\x11M\x1c', + 0x4d1d: b'\x11M\x1d', + 0x4d1e: b'\x11M\x1e', + 0x4d1f: b'\x11M\x1f', + 0x4d20: b'\x11M ', + 0x4d21: b'\x11M!', + 0x4d22: b'\x11M"', + 0x4d23: b'\x11M#', + 0x4d24: b'\x11M$', + 0x4d25: b'\x11M%', + 0x4d26: b'\x11M&', + 0x4d27: b"\x11M'", + 0x4d28: b'\x11M(', + 0x4d29: b'\x11M)', + 0x4d2a: b'\x11M*', + 0x4d2b: b'\x11M+', + 0x4d2c: b'\x11M,', + 0x4d2d: b'\x11M-', + 0x4d2e: b'\x11M.', + 0x4d2f: b'\x11M/', + 0x4d30: b'\x11M0', + 0x4d31: b'\x11M1', + 0x4d32: b'\x11M2', + 0x4d33: b'\x11M3', + 0x4d34: b'\x11M4', + 0x4d35: b'\x11M5', + 0x4d36: b'\x11M6', + 0x4d37: b'\x11M7', + 0x4d38: b'\x11M8', + 0x4d39: b'\x11M9', + 0x4d3a: b'\x11M:', + 0x4d3b: b'\x11M;', + 0x4d3c: b'\x11M<', + 0x4d3d: b'\x11M=', + 0x4d3e: b'\x11M>', + 0x4d3f: b'\x11M?', + 0x4d40: b'\x11M@', + 0x4d41: b'\x11MA', + 0x4d42: b'\x11MB', + 0x4d43: b'\x11MC', + 0x4d44: b'\x11MD', + 0x4d45: b'\x11ME', + 0x4d46: b'\x11MF', + 0x4d47: b'\x11MG', + 0x4d48: b'\x11MH', + 0x4d49: b'\x11MI', + 0x4d4a: b'\x11MJ', + 0x4d4b: b'\x11MK', + 0x4d4c: b'\x11ML', + 0x4d4d: b'\x11MM', + 0x4d4e: b'\x11MN', + 0x4d4f: b'\x11MO', + 0x4d50: b'\x11MP', + 0x4d51: b'\x11MQ', + 0x4d52: b'\x11MR', + 0x4d53: b'\x11MS', + 0x4d54: b'\x11MT', + 0x4d55: b'\x11MU', + 0x4d56: b'\x11MV', + 0x4d57: b'\x11MW', + 0x4d58: b'\x11MX', + 0x4d59: b'\x11MY', + 0x4d5a: b'\x11MZ', + 0x4d5b: b'\x11M[', + 0x4d5c: b'\x11M\\', + 0x4d5d: b'\x11M]', + 0x4d5e: b'\x11M^', + 0x4d5f: b'\x11M_', + 0x4d60: b'\x11M`', + 0x4d61: b'\x11Ma', + 0x4d62: b'\x11Mb', + 0x4d63: b'\x11Mc', + 0x4d64: b'\x11Md', + 0x4d65: b'\x11Me', + 0x4d66: b'\x11Mf', + 0x4d67: b'\x11Mg', + 0x4d68: b'\x11Mh', + 0x4d69: b'\x11Mi', + 0x4d6a: b'\x11Mj', + 0x4d6b: b'\x11Mk', + 0x4d6c: b'\x11Ml', + 0x4d6d: b'\x11Mm', + 0x4d6e: b'\x11Mn', + 0x4d6f: b'\x11Mo', + 0x4d70: b'\x11Mp', + 0x4d71: b'\x11Mq', + 0x4d72: b'\x11Mr', + 0x4d73: b'\x11Ms', + 0x4d74: b'\x11Mt', + 0x4d75: b'\x11Mu', + 0x4d76: b'\x11Mv', + 0x4d77: b'\x11Mw', + 0x4d78: b'\x11Mx', + 0x4d79: b'\x11My', + 0x4d7a: b'\x11Mz', + 0x4d7b: b'\x11M{', + 0x4d7c: b'\x11M|', + 0x4d7d: b'\x11M}', + 0x4d7e: b'\x11M~', + 0x4d7f: b'\x11M\x7f', + 0x4d80: b'\x11M\x80', + 0x4d81: b'\x11M\x81', + 0x4d82: b'\x11M\x82', + 0x4d83: b'\x11M\x83', + 0x4d84: b'\x11M\x84', + 0x4d85: b'\x11M\x85', + 0x4d86: b'\x11M\x86', + 0x4d87: b'\x11M\x87', + 0x4d88: b'\x11M\x88', + 0x4d89: b'\x11M\x89', + 0x4d8a: b'\x11M\x8a', + 0x4d8b: b'\x11M\x8b', + 0x4d8c: b'\x11M\x8c', + 0x4d8d: b'\x11M\x8d', + 0x4d8e: b'\x11M\x8e', + 0x4d8f: b'\x11M\x8f', + 0x4d90: b'\x11M\x90', + 0x4d91: b'\x11M\x91', + 0x4d92: b'\x11M\x92', + 0x4d93: b'\x11M\x93', + 0x4d94: b'\x11M\x94', + 0x4d95: b'\x11M\x95', + 0x4d96: b'\x11M\x96', + 0x4d97: b'\x11M\x97', + 0x4d98: b'\x11M\x98', + 0x4d99: b'\x11M\x99', + 0x4d9a: b'\x11M\x9a', + 0x4d9b: b'\x11M\x9b', + 0x4d9c: b'\x11M\x9c', + 0x4d9d: b'\x11M\x9d', + 0x4d9e: b'\x11M\x9e', + 0x4d9f: b'\x11M\x9f', + 0x4da0: b'\x11M\xa0', + 0x4da1: b'\x11M\xa1', + 0x4da2: b'\x11M\xa2', + 0x4da3: b'\x11M\xa3', + 0x4da4: b'\x11M\xa4', + 0x4da5: b'\x11M\xa5', + 0x4da6: b'\x11M\xa6', + 0x4da7: b'\x11M\xa7', + 0x4da8: b'\x11M\xa8', + 0x4da9: b'\x11M\xa9', + 0x4daa: b'\x11M\xaa', + 0x4dab: b'\x11M\xab', + 0x4dac: b'\x11M\xac', + 0x4dad: b'\x11M\xad', + 0x4dae: b'\x11M\xae', + 0x4daf: b'\x11M\xaf', + 0x4db0: b'\x11M\xb0', + 0x4db1: b'\x11M\xb1', + 0x4db2: b'\x11M\xb2', + 0x4db3: b'\x11M\xb3', + 0x4db4: b'\x11M\xb4', + 0x4db5: b'\x11M\xb5', + 0x4db6: b'\x11M\xb6', + 0x4db7: b'\x11M\xb7', + 0x4db8: b'\x11M\xb8', + 0x4db9: b'\x11M\xb9', + 0x4dba: b'\x11M\xba', + 0x4dbb: b'\x11M\xbb', + 0x4dbc: b'\x11M\xbc', + 0x4dbd: b'\x11M\xbd', + 0x4dbe: b'\x11M\xbe', + 0x4dbf: b'\x11M\xbf', + 0x4dc0: b'\x11M\xc0', + 0x4dc1: b'\x11M\xc1', + 0x4dc2: b'\x11M\xc2', + 0x4dc3: b'\x11M\xc3', + 0x4dc4: b'\x11M\xc4', + 0x4dc5: b'\x11M\xc5', + 0x4dc6: b'\x11M\xc6', + 0x4dc7: b'\x11M\xc7', + 0x4dc8: b'\x11M\xc8', + 0x4dc9: b'\x11M\xc9', + 0x4dca: b'\x11M\xca', + 0x4dcb: b'\x11M\xcb', + 0x4dcc: b'\x11M\xcc', + 0x4dcd: b'\x11M\xcd', + 0x4dce: b'\x11M\xce', + 0x4dcf: b'\x11M\xcf', + 0x4dd0: b'\x11M\xd0', + 0x4dd1: b'\x11M\xd1', + 0x4dd2: b'\x11M\xd2', + 0x4dd3: b'\x11M\xd3', + 0x4dd4: b'\x11M\xd4', + 0x4dd5: b'\x11M\xd5', + 0x4dd6: b'\x11M\xd6', + 0x4dd7: b'\x11M\xd7', + 0x4dd8: b'\x11M\xd8', + 0x4dd9: b'\x11M\xd9', + 0x4dda: b'\x11M\xda', + 0x4ddb: b'\x11M\xdb', + 0x4ddc: b'\x11M\xdc', + 0x4ddd: b'\x11M\xdd', + 0x4dde: b'\x11M\xde', + 0x4ddf: b'\x11M\xdf', + 0x4de0: b'\x11M\xe0', + 0x4de1: b'\x11M\xe1', + 0x4de2: b'\x11M\xe2', + 0x4de3: b'\x11M\xe3', + 0x4de4: b'\x11M\xe4', + 0x4de5: b'\x11M\xe5', + 0x4de6: b'\x11M\xe6', + 0x4de7: b'\x11M\xe7', + 0x4de8: b'\x11M\xe8', + 0x4de9: b'\x11M\xe9', + 0x4dea: b'\x11M\xea', + 0x4deb: b'\x11M\xeb', + 0x4dec: b'\x11M\xec', + 0x4ded: b'\x11M\xed', + 0x4dee: b'\x11M\xee', + 0x4def: b'\x11M\xef', + 0x4df0: b'\x11M\xf0', + 0x4df1: b'\x11M\xf1', + 0x4df2: b'\x11M\xf2', + 0x4df3: b'\x11M\xf3', + 0x4df4: b'\x11M\xf4', + 0x4df5: b'\x11M\xf5', + 0x4df6: b'\x11M\xf6', + 0x4df7: b'\x11M\xf7', + 0x4df8: b'\x11M\xf8', + 0x4df9: b'\x11M\xf9', + 0x4dfa: b'\x11M\xfa', + 0x4dfb: b'\x11M\xfb', + 0x4dfc: b'\x11M\xfc', + 0x4dfd: b'\x11M\xfd', + 0x4dfe: b'\x11M\xfe', + 0x4dff: b'\x11M\xff', + 0x4e00: b'\x11N\x00', + 0x4e01: b'\x11N\x01', + 0x4e02: b'\x11N\x02', + 0x4e03: b'\x11N\x03', + 0x4e04: b'\x11N\x04', + 0x4e05: b'\x11N\x05', + 0x4e06: b'\x11N\x06', + 0x4e07: b'\x11N\x07', + 0x4e08: b'\x11N\x08', + 0x4e09: b'\x11N\t', + 0x4e0a: b'\x11N\n', + 0x4e0b: b'\x11N\x0b', + 0x4e0c: b'\x11N\x0c', + 0x4e0d: b'\x11N\r', + 0x4e0e: b'\x11N\x0e', + 0x4e0f: b'\x11N\x0f', + 0x4e10: b'\x11N\x10', + 0x4e11: b'\x11N\x11', + 0x4e12: b'\x11N\x12', + 0x4e13: b'\x11N\x13', + 0x4e14: b'\x11N\x14', + 0x4e15: b'\x11N\x15', + 0x4e16: b'\x11N\x16', + 0x4e17: b'\x11N\x17', + 0x4e18: b'\x11N\x18', + 0x4e19: b'\x11N\x19', + 0x4e1a: b'\x11N\x1a', + 0x4e1b: b'\x11N\x1b', + 0x4e1c: b'\x11N\x1c', + 0x4e1d: b'\x11N\x1d', + 0x4e1e: b'\x11N\x1e', + 0x4e1f: b'\x11N\x1f', + 0x4e20: b'\x11N ', + 0x4e21: b'\x11N!', + 0x4e22: b'\x11N"', + 0x4e23: b'\x11N#', + 0x4e24: b'\x11N$', + 0x4e25: b'\x11N%', + 0x4e26: b'\x11N&', + 0x4e27: b"\x11N'", + 0x4e28: b'\x11N(', + 0x4e29: b'\x11N)', + 0x4e2a: b'\x11N*', + 0x4e2b: b'\x11N+', + 0x4e2c: b'\x11N,', + 0x4e2d: b'\x11N-', + 0x4e2e: b'\x11N.', + 0x4e2f: b'\x11N/', + 0x4e30: b'\x11N0', + 0x4e31: b'\x11N1', + 0x4e32: b'\x11N2', + 0x4e33: b'\x11N3', + 0x4e34: b'\x11N4', + 0x4e35: b'\x11N5', + 0x4e36: b'\x11N6', + 0x4e37: b'\x11N7', + 0x4e38: b'\x11N8', + 0x4e39: b'\x11N9', + 0x4e3a: b'\x11N:', + 0x4e3b: b'\x11N;', + 0x4e3c: b'\x11N<', + 0x4e3d: b'\x11N=', + 0x4e3e: b'\x11N>', + 0x4e3f: b'\x11N?', + 0x4e40: b'\x11N@', + 0x4e41: b'\x11NA', + 0x4e42: b'\x11NB', + 0x4e43: b'\x11NC', + 0x4e44: b'\x11ND', + 0x4e45: b'\x11NE', + 0x4e46: b'\x11NF', + 0x4e47: b'\x11NG', + 0x4e48: b'\x11NH', + 0x4e49: b'\x11NI', + 0x4e4a: b'\x11NJ', + 0x4e4b: b'\x11NK', + 0x4e4c: b'\x11NL', + 0x4e4d: b'\x11NM', + 0x4e4e: b'\x11NN', + 0x4e4f: b'\x11NO', + 0x4e50: b'\x11NP', + 0x4e51: b'\x11NQ', + 0x4e52: b'\x11NR', + 0x4e53: b'\x11NS', + 0x4e54: b'\x11NT', + 0x4e55: b'\x11NU', + 0x4e56: b'\x11NV', + 0x4e57: b'\x11NW', + 0x4e58: b'\x11NX', + 0x4e59: b'\x11NY', + 0x4e5a: b'\x11NZ', + 0x4e5b: b'\x11N[', + 0x4e5c: b'\x11N\\', + 0x4e5d: b'\x11N]', + 0x4e5e: b'\x11N^', + 0x4e5f: b'\x11N_', + 0x4e60: b'\x11N`', + 0x4e61: b'\x11Na', + 0x4e62: b'\x11Nb', + 0x4e63: b'\x11Nc', + 0x4e64: b'\x11Nd', + 0x4e65: b'\x11Ne', + 0x4e66: b'\x11Nf', + 0x4e67: b'\x11Ng', + 0x4e68: b'\x11Nh', + 0x4e69: b'\x11Ni', + 0x4e6a: b'\x11Nj', + 0x4e6b: b'\x11Nk', + 0x4e6c: b'\x11Nl', + 0x4e6d: b'\x11Nm', + 0x4e6e: b'\x11Nn', + 0x4e6f: b'\x11No', + 0x4e70: b'\x11Np', + 0x4e71: b'\x11Nq', + 0x4e72: b'\x11Nr', + 0x4e73: b'\x11Ns', + 0x4e74: b'\x11Nt', + 0x4e75: b'\x11Nu', + 0x4e76: b'\x11Nv', + 0x4e77: b'\x11Nw', + 0x4e78: b'\x11Nx', + 0x4e79: b'\x11Ny', + 0x4e7a: b'\x11Nz', + 0x4e7b: b'\x11N{', + 0x4e7c: b'\x11N|', + 0x4e7d: b'\x11N}', + 0x4e7e: b'\x11N~', + 0x4e7f: b'\x11N\x7f', + 0x4e80: b'\x11N\x80', + 0x4e81: b'\x11N\x81', + 0x4e82: b'\x11N\x82', + 0x4e83: b'\x11N\x83', + 0x4e84: b'\x11N\x84', + 0x4e85: b'\x11N\x85', + 0x4e86: b'\x11N\x86', + 0x4e87: b'\x11N\x87', + 0x4e88: b'\x11N\x88', + 0x4e89: b'\x11N\x89', + 0x4e8a: b'\x11N\x8a', + 0x4e8b: b'\x11N\x8b', + 0x4e8c: b'\x11N\x8c', + 0x4e8d: b'\x11N\x8d', + 0x4e8e: b'\x11N\x8e', + 0x4e8f: b'\x11N\x8f', + 0x4e90: b'\x11N\x90', + 0x4e91: b'\x11N\x91', + 0x4e92: b'\x11N\x92', + 0x4e93: b'\x11N\x93', + 0x4e94: b'\x11N\x94', + 0x4e95: b'\x11N\x95', + 0x4e96: b'\x11N\x96', + 0x4e97: b'\x11N\x97', + 0x4e98: b'\x11N\x98', + 0x4e99: b'\x11N\x99', + 0x4e9a: b'\x11N\x9a', + 0x4e9b: b'\x11N\x9b', + 0x4e9c: b'\x11N\x9c', + 0x4e9d: b'\x11N\x9d', + 0x4e9e: b'\x11N\x9e', + 0x4e9f: b'\x11N\x9f', + 0x4ea0: b'\x11N\xa0', + 0x4ea1: b'\x11N\xa1', + 0x4ea2: b'\x11N\xa2', + 0x4ea3: b'\x11N\xa3', + 0x4ea4: b'\x11N\xa4', + 0x4ea5: b'\x11N\xa5', + 0x4ea6: b'\x11N\xa6', + 0x4ea7: b'\x11N\xa7', + 0x4ea8: b'\x11N\xa8', + 0x4ea9: b'\x11N\xa9', + 0x4eaa: b'\x11N\xaa', + 0x4eab: b'\x11N\xab', + 0x4eac: b'\x11N\xac', + 0x4ead: b'\x11N\xad', + 0x4eae: b'\x11N\xae', + 0x4eaf: b'\x11N\xaf', + 0x4eb0: b'\x11N\xb0', + 0x4eb1: b'\x11N\xb1', + 0x4eb2: b'\x11N\xb2', + 0x4eb3: b'\x11N\xb3', + 0x4eb4: b'\x11N\xb4', + 0x4eb5: b'\x11N\xb5', + 0x4eb6: b'\x11N\xb6', + 0x4eb7: b'\x11N\xb7', + 0x4eb8: b'\x11N\xb8', + 0x4eb9: b'\x11N\xb9', + 0x4eba: b'\x11N\xba', + 0x4ebb: b'\x11N\xbb', + 0x4ebc: b'\x11N\xbc', + 0x4ebd: b'\x11N\xbd', + 0x4ebe: b'\x11N\xbe', + 0x4ebf: b'\x11N\xbf', + 0x4ec0: b'\x11N\xc0', + 0x4ec1: b'\x11N\xc1', + 0x4ec2: b'\x11N\xc2', + 0x4ec3: b'\x11N\xc3', + 0x4ec4: b'\x11N\xc4', + 0x4ec5: b'\x11N\xc5', + 0x4ec6: b'\x11N\xc6', + 0x4ec7: b'\x11N\xc7', + 0x4ec8: b'\x11N\xc8', + 0x4ec9: b'\x11N\xc9', + 0x4eca: b'\x11N\xca', + 0x4ecb: b'\x11N\xcb', + 0x4ecc: b'\x11N\xcc', + 0x4ecd: b'\x11N\xcd', + 0x4ece: b'\x11N\xce', + 0x4ecf: b'\x11N\xcf', + 0x4ed0: b'\x11N\xd0', + 0x4ed1: b'\x11N\xd1', + 0x4ed2: b'\x11N\xd2', + 0x4ed3: b'\x11N\xd3', + 0x4ed4: b'\x11N\xd4', + 0x4ed5: b'\x11N\xd5', + 0x4ed6: b'\x11N\xd6', + 0x4ed7: b'\x11N\xd7', + 0x4ed8: b'\x11N\xd8', + 0x4ed9: b'\x11N\xd9', + 0x4eda: b'\x11N\xda', + 0x4edb: b'\x11N\xdb', + 0x4edc: b'\x11N\xdc', + 0x4edd: b'\x11N\xdd', + 0x4ede: b'\x11N\xde', + 0x4edf: b'\x11N\xdf', + 0x4ee0: b'\x11N\xe0', + 0x4ee1: b'\x11N\xe1', + 0x4ee2: b'\x11N\xe2', + 0x4ee3: b'\x11N\xe3', + 0x4ee4: b'\x11N\xe4', + 0x4ee5: b'\x11N\xe5', + 0x4ee6: b'\x11N\xe6', + 0x4ee7: b'\x11N\xe7', + 0x4ee8: b'\x11N\xe8', + 0x4ee9: b'\x11N\xe9', + 0x4eea: b'\x11N\xea', + 0x4eeb: b'\x11N\xeb', + 0x4eec: b'\x11N\xec', + 0x4eed: b'\x11N\xed', + 0x4eee: b'\x11N\xee', + 0x4eef: b'\x11N\xef', + 0x4ef0: b'\x11N\xf0', + 0x4ef1: b'\x11N\xf1', + 0x4ef2: b'\x11N\xf2', + 0x4ef3: b'\x11N\xf3', + 0x4ef4: b'\x11N\xf4', + 0x4ef5: b'\x11N\xf5', + 0x4ef6: b'\x11N\xf6', + 0x4ef7: b'\x11N\xf7', + 0x4ef8: b'\x11N\xf8', + 0x4ef9: b'\x11N\xf9', + 0x4efa: b'\x11N\xfa', + 0x4efb: b'\x11N\xfb', + 0x4efc: b'\x11N\xfc', + 0x4efd: b'\x11N\xfd', + 0x4efe: b'\x11N\xfe', + 0x4eff: b'\x11N\xff', + 0x4f00: b'\x11O\x00', + 0x4f01: b'\x11O\x01', + 0x4f02: b'\x11O\x02', + 0x4f03: b'\x11O\x03', + 0x4f04: b'\x11O\x04', + 0x4f05: b'\x11O\x05', + 0x4f06: b'\x11O\x06', + 0x4f07: b'\x11O\x07', + 0x4f08: b'\x11O\x08', + 0x4f09: b'\x11O\t', + 0x4f0a: b'\x11O\n', + 0x4f0b: b'\x11O\x0b', + 0x4f0c: b'\x11O\x0c', + 0x4f0d: b'\x11O\r', + 0x4f0e: b'\x11O\x0e', + 0x4f0f: b'\x11O\x0f', + 0x4f10: b'\x11O\x10', + 0x4f11: b'\x11O\x11', + 0x4f12: b'\x11O\x12', + 0x4f13: b'\x11O\x13', + 0x4f14: b'\x11O\x14', + 0x4f15: b'\x11O\x15', + 0x4f16: b'\x11O\x16', + 0x4f17: b'\x11O\x17', + 0x4f18: b'\x11O\x18', + 0x4f19: b'\x11O\x19', + 0x4f1a: b'\x11O\x1a', + 0x4f1b: b'\x11O\x1b', + 0x4f1c: b'\x11O\x1c', + 0x4f1d: b'\x11O\x1d', + 0x4f1e: b'\x11O\x1e', + 0x4f1f: b'\x11O\x1f', + 0x4f20: b'\x11O ', + 0x4f21: b'\x11O!', + 0x4f22: b'\x11O"', + 0x4f23: b'\x11O#', + 0x4f24: b'\x11O$', + 0x4f25: b'\x11O%', + 0x4f26: b'\x11O&', + 0x4f27: b"\x11O'", + 0x4f28: b'\x11O(', + 0x4f29: b'\x11O)', + 0x4f2a: b'\x11O*', + 0x4f2b: b'\x11O+', + 0x4f2c: b'\x11O,', + 0x4f2d: b'\x11O-', + 0x4f2e: b'\x11O.', + 0x4f2f: b'\x11O/', + 0x4f30: b'\x11O0', + 0x4f31: b'\x11O1', + 0x4f32: b'\x11O2', + 0x4f33: b'\x11O3', + 0x4f34: b'\x11O4', + 0x4f35: b'\x11O5', + 0x4f36: b'\x11O6', + 0x4f37: b'\x11O7', + 0x4f38: b'\x11O8', + 0x4f39: b'\x11O9', + 0x4f3a: b'\x11O:', + 0x4f3b: b'\x11O;', + 0x4f3c: b'\x11O<', + 0x4f3d: b'\x11O=', + 0x4f3e: b'\x11O>', + 0x4f3f: b'\x11O?', + 0x4f40: b'\x11O@', + 0x4f41: b'\x11OA', + 0x4f42: b'\x11OB', + 0x4f43: b'\x11OC', + 0x4f44: b'\x11OD', + 0x4f45: b'\x11OE', + 0x4f46: b'\x11OF', + 0x4f47: b'\x11OG', + 0x4f48: b'\x11OH', + 0x4f49: b'\x11OI', + 0x4f4a: b'\x11OJ', + 0x4f4b: b'\x11OK', + 0x4f4c: b'\x11OL', + 0x4f4d: b'\x11OM', + 0x4f4e: b'\x11ON', + 0x4f4f: b'\x11OO', + 0x4f50: b'\x11OP', + 0x4f51: b'\x11OQ', + 0x4f52: b'\x11OR', + 0x4f53: b'\x11OS', + 0x4f54: b'\x11OT', + 0x4f55: b'\x11OU', + 0x4f56: b'\x11OV', + 0x4f57: b'\x11OW', + 0x4f58: b'\x11OX', + 0x4f59: b'\x11OY', + 0x4f5a: b'\x11OZ', + 0x4f5b: b'\x11O[', + 0x4f5c: b'\x11O\\', + 0x4f5d: b'\x11O]', + 0x4f5e: b'\x11O^', + 0x4f5f: b'\x11O_', + 0x4f60: b'\x11O`', + 0x4f61: b'\x11Oa', + 0x4f62: b'\x11Ob', + 0x4f63: b'\x11Oc', + 0x4f64: b'\x11Od', + 0x4f65: b'\x11Oe', + 0x4f66: b'\x11Of', + 0x4f67: b'\x11Og', + 0x4f68: b'\x11Oh', + 0x4f69: b'\x11Oi', + 0x4f6a: b'\x11Oj', + 0x4f6b: b'\x11Ok', + 0x4f6c: b'\x11Ol', + 0x4f6d: b'\x11Om', + 0x4f6e: b'\x11On', + 0x4f6f: b'\x11Oo', + 0x4f70: b'\x11Op', + 0x4f71: b'\x11Oq', + 0x4f72: b'\x11Or', + 0x4f73: b'\x11Os', + 0x4f74: b'\x11Ot', + 0x4f75: b'\x11Ou', + 0x4f76: b'\x11Ov', + 0x4f77: b'\x11Ow', + 0x4f78: b'\x11Ox', + 0x4f79: b'\x11Oy', + 0x4f7a: b'\x11Oz', + 0x4f7b: b'\x11O{', + 0x4f7c: b'\x11O|', + 0x4f7d: b'\x11O}', + 0x4f7e: b'\x11O~', + 0x4f7f: b'\x11O\x7f', + 0x4f80: b'\x11O\x80', + 0x4f81: b'\x11O\x81', + 0x4f82: b'\x11O\x82', + 0x4f83: b'\x11O\x83', + 0x4f84: b'\x11O\x84', + 0x4f85: b'\x11O\x85', + 0x4f86: b'\x11O\x86', + 0x4f87: b'\x11O\x87', + 0x4f88: b'\x11O\x88', + 0x4f89: b'\x11O\x89', + 0x4f8a: b'\x11O\x8a', + 0x4f8b: b'\x11O\x8b', + 0x4f8c: b'\x11O\x8c', + 0x4f8d: b'\x11O\x8d', + 0x4f8e: b'\x11O\x8e', + 0x4f8f: b'\x11O\x8f', + 0x4f90: b'\x11O\x90', + 0x4f91: b'\x11O\x91', + 0x4f92: b'\x11O\x92', + 0x4f93: b'\x11O\x93', + 0x4f94: b'\x11O\x94', + 0x4f95: b'\x11O\x95', + 0x4f96: b'\x11O\x96', + 0x4f97: b'\x11O\x97', + 0x4f98: b'\x11O\x98', + 0x4f99: b'\x11O\x99', + 0x4f9a: b'\x11O\x9a', + 0x4f9b: b'\x11O\x9b', + 0x4f9c: b'\x11O\x9c', + 0x4f9d: b'\x11O\x9d', + 0x4f9e: b'\x11O\x9e', + 0x4f9f: b'\x11O\x9f', + 0x4fa0: b'\x11O\xa0', + 0x4fa1: b'\x11O\xa1', + 0x4fa2: b'\x11O\xa2', + 0x4fa3: b'\x11O\xa3', + 0x4fa4: b'\x11O\xa4', + 0x4fa5: b'\x11O\xa5', + 0x4fa6: b'\x11O\xa6', + 0x4fa7: b'\x11O\xa7', + 0x4fa8: b'\x11O\xa8', + 0x4fa9: b'\x11O\xa9', + 0x4faa: b'\x11O\xaa', + 0x4fab: b'\x11O\xab', + 0x4fac: b'\x11O\xac', + 0x4fad: b'\x11O\xad', + 0x4fae: b'\x11O\xae', + 0x4faf: b'\x11O\xaf', + 0x4fb0: b'\x11O\xb0', + 0x4fb1: b'\x11O\xb1', + 0x4fb2: b'\x11O\xb2', + 0x4fb3: b'\x11O\xb3', + 0x4fb4: b'\x11O\xb4', + 0x4fb5: b'\x11O\xb5', + 0x4fb6: b'\x11O\xb6', + 0x4fb7: b'\x11O\xb7', + 0x4fb8: b'\x11O\xb8', + 0x4fb9: b'\x11O\xb9', + 0x4fba: b'\x11O\xba', + 0x4fbb: b'\x11O\xbb', + 0x4fbc: b'\x11O\xbc', + 0x4fbd: b'\x11O\xbd', + 0x4fbe: b'\x11O\xbe', + 0x4fbf: b'\x11O\xbf', + 0x4fc0: b'\x11O\xc0', + 0x4fc1: b'\x11O\xc1', + 0x4fc2: b'\x11O\xc2', + 0x4fc3: b'\x11O\xc3', + 0x4fc4: b'\x11O\xc4', + 0x4fc5: b'\x11O\xc5', + 0x4fc6: b'\x11O\xc6', + 0x4fc7: b'\x11O\xc7', + 0x4fc8: b'\x11O\xc8', + 0x4fc9: b'\x11O\xc9', + 0x4fca: b'\x11O\xca', + 0x4fcb: b'\x11O\xcb', + 0x4fcc: b'\x11O\xcc', + 0x4fcd: b'\x11O\xcd', + 0x4fce: b'\x11O\xce', + 0x4fcf: b'\x11O\xcf', + 0x4fd0: b'\x11O\xd0', + 0x4fd1: b'\x11O\xd1', + 0x4fd2: b'\x11O\xd2', + 0x4fd3: b'\x11O\xd3', + 0x4fd4: b'\x11O\xd4', + 0x4fd5: b'\x11O\xd5', + 0x4fd6: b'\x11O\xd6', + 0x4fd7: b'\x11O\xd7', + 0x4fd8: b'\x11O\xd8', + 0x4fd9: b'\x11O\xd9', + 0x4fda: b'\x11O\xda', + 0x4fdb: b'\x11O\xdb', + 0x4fdc: b'\x11O\xdc', + 0x4fdd: b'\x11O\xdd', + 0x4fde: b'\x11O\xde', + 0x4fdf: b'\x11O\xdf', + 0x4fe0: b'\x11O\xe0', + 0x4fe1: b'\x11O\xe1', + 0x4fe2: b'\x11O\xe2', + 0x4fe3: b'\x11O\xe3', + 0x4fe4: b'\x11O\xe4', + 0x4fe5: b'\x11O\xe5', + 0x4fe6: b'\x11O\xe6', + 0x4fe7: b'\x11O\xe7', + 0x4fe8: b'\x11O\xe8', + 0x4fe9: b'\x11O\xe9', + 0x4fea: b'\x11O\xea', + 0x4feb: b'\x11O\xeb', + 0x4fec: b'\x11O\xec', + 0x4fed: b'\x11O\xed', + 0x4fee: b'\x11O\xee', + 0x4fef: b'\x11O\xef', + 0x4ff0: b'\x11O\xf0', + 0x4ff1: b'\x11O\xf1', + 0x4ff2: b'\x11O\xf2', + 0x4ff3: b'\x11O\xf3', + 0x4ff4: b'\x11O\xf4', + 0x4ff5: b'\x11O\xf5', + 0x4ff6: b'\x11O\xf6', + 0x4ff7: b'\x11O\xf7', + 0x4ff8: b'\x11O\xf8', + 0x4ff9: b'\x11O\xf9', + 0x4ffa: b'\x11O\xfa', + 0x4ffb: b'\x11O\xfb', + 0x4ffc: b'\x11O\xfc', + 0x4ffd: b'\x11O\xfd', + 0x4ffe: b'\x11O\xfe', + 0x4fff: b'\x11O\xff', + 0x5000: b'\x11P\x00', + 0x5001: b'\x11P\x01', + 0x5002: b'\x11P\x02', + 0x5003: b'\x11P\x03', + 0x5004: b'\x11P\x04', + 0x5005: b'\x11P\x05', + 0x5006: b'\x11P\x06', + 0x5007: b'\x11P\x07', + 0x5008: b'\x11P\x08', + 0x5009: b'\x11P\t', + 0x500a: b'\x11P\n', + 0x500b: b'\x11P\x0b', + 0x500c: b'\x11P\x0c', + 0x500d: b'\x11P\r', + 0x500e: b'\x11P\x0e', + 0x500f: b'\x11P\x0f', + 0x5010: b'\x11P\x10', + 0x5011: b'\x11P\x11', + 0x5012: b'\x11P\x12', + 0x5013: b'\x11P\x13', + 0x5014: b'\x11P\x14', + 0x5015: b'\x11P\x15', + 0x5016: b'\x11P\x16', + 0x5017: b'\x11P\x17', + 0x5018: b'\x11P\x18', + 0x5019: b'\x11P\x19', + 0x501a: b'\x11P\x1a', + 0x501b: b'\x11P\x1b', + 0x501c: b'\x11P\x1c', + 0x501d: b'\x11P\x1d', + 0x501e: b'\x11P\x1e', + 0x501f: b'\x11P\x1f', + 0x5020: b'\x11P ', + 0x5021: b'\x11P!', + 0x5022: b'\x11P"', + 0x5023: b'\x11P#', + 0x5024: b'\x11P$', + 0x5025: b'\x11P%', + 0x5026: b'\x11P&', + 0x5027: b"\x11P'", + 0x5028: b'\x11P(', + 0x5029: b'\x11P)', + 0x502a: b'\x11P*', + 0x502b: b'\x11P+', + 0x502c: b'\x11P,', + 0x502d: b'\x11P-', + 0x502e: b'\x11P.', + 0x502f: b'\x11P/', + 0x5030: b'\x11P0', + 0x5031: b'\x11P1', + 0x5032: b'\x11P2', + 0x5033: b'\x11P3', + 0x5034: b'\x11P4', + 0x5035: b'\x11P5', + 0x5036: b'\x11P6', + 0x5037: b'\x11P7', + 0x5038: b'\x11P8', + 0x5039: b'\x11P9', + 0x503a: b'\x11P:', + 0x503b: b'\x11P;', + 0x503c: b'\x11P<', + 0x503d: b'\x11P=', + 0x503e: b'\x11P>', + 0x503f: b'\x11P?', + 0x5040: b'\x11P@', + 0x5041: b'\x11PA', + 0x5042: b'\x11PB', + 0x5043: b'\x11PC', + 0x5044: b'\x11PD', + 0x5045: b'\x11PE', + 0x5046: b'\x11PF', + 0x5047: b'\x11PG', + 0x5048: b'\x11PH', + 0x5049: b'\x11PI', + 0x504a: b'\x11PJ', + 0x504b: b'\x11PK', + 0x504c: b'\x11PL', + 0x504d: b'\x11PM', + 0x504e: b'\x11PN', + 0x504f: b'\x11PO', + 0x5050: b'\x11PP', + 0x5051: b'\x11PQ', + 0x5052: b'\x11PR', + 0x5053: b'\x11PS', + 0x5054: b'\x11PT', + 0x5055: b'\x11PU', + 0x5056: b'\x11PV', + 0x5057: b'\x11PW', + 0x5058: b'\x11PX', + 0x5059: b'\x11PY', + 0x505a: b'\x11PZ', + 0x505b: b'\x11P[', + 0x505c: b'\x11P\\', + 0x505d: b'\x11P]', + 0x505e: b'\x11P^', + 0x505f: b'\x11P_', + 0x5060: b'\x11P`', + 0x5061: b'\x11Pa', + 0x5062: b'\x11Pb', + 0x5063: b'\x11Pc', + 0x5064: b'\x11Pd', + 0x5065: b'\x11Pe', + 0x5066: b'\x11Pf', + 0x5067: b'\x11Pg', + 0x5068: b'\x11Ph', + 0x5069: b'\x11Pi', + 0x506a: b'\x11Pj', + 0x506b: b'\x11Pk', + 0x506c: b'\x11Pl', + 0x506d: b'\x11Pm', + 0x506e: b'\x11Pn', + 0x506f: b'\x11Po', + 0x5070: b'\x11Pp', + 0x5071: b'\x11Pq', + 0x5072: b'\x11Pr', + 0x5073: b'\x11Ps', + 0x5074: b'\x11Pt', + 0x5075: b'\x11Pu', + 0x5076: b'\x11Pv', + 0x5077: b'\x11Pw', + 0x5078: b'\x11Px', + 0x5079: b'\x11Py', + 0x507a: b'\x11Pz', + 0x507b: b'\x11P{', + 0x507c: b'\x11P|', + 0x507d: b'\x11P}', + 0x507e: b'\x11P~', + 0x507f: b'\x11P\x7f', + 0x5080: b'\x11P\x80', + 0x5081: b'\x11P\x81', + 0x5082: b'\x11P\x82', + 0x5083: b'\x11P\x83', + 0x5084: b'\x11P\x84', + 0x5085: b'\x11P\x85', + 0x5086: b'\x11P\x86', + 0x5087: b'\x11P\x87', + 0x5088: b'\x11P\x88', + 0x5089: b'\x11P\x89', + 0x508a: b'\x11P\x8a', + 0x508b: b'\x11P\x8b', + 0x508c: b'\x11P\x8c', + 0x508d: b'\x11P\x8d', + 0x508e: b'\x11P\x8e', + 0x508f: b'\x11P\x8f', + 0x5090: b'\x11P\x90', + 0x5091: b'\x11P\x91', + 0x5092: b'\x11P\x92', + 0x5093: b'\x11P\x93', + 0x5094: b'\x11P\x94', + 0x5095: b'\x11P\x95', + 0x5096: b'\x11P\x96', + 0x5097: b'\x11P\x97', + 0x5098: b'\x11P\x98', + 0x5099: b'\x11P\x99', + 0x509a: b'\x11P\x9a', + 0x509b: b'\x11P\x9b', + 0x509c: b'\x11P\x9c', + 0x509d: b'\x11P\x9d', + 0x509e: b'\x11P\x9e', + 0x509f: b'\x11P\x9f', + 0x50a0: b'\x11P\xa0', + 0x50a1: b'\x11P\xa1', + 0x50a2: b'\x11P\xa2', + 0x50a3: b'\x11P\xa3', + 0x50a4: b'\x11P\xa4', + 0x50a5: b'\x11P\xa5', + 0x50a6: b'\x11P\xa6', + 0x50a7: b'\x11P\xa7', + 0x50a8: b'\x11P\xa8', + 0x50a9: b'\x11P\xa9', + 0x50aa: b'\x11P\xaa', + 0x50ab: b'\x11P\xab', + 0x50ac: b'\x11P\xac', + 0x50ad: b'\x11P\xad', + 0x50ae: b'\x11P\xae', + 0x50af: b'\x11P\xaf', + 0x50b0: b'\x11P\xb0', + 0x50b1: b'\x11P\xb1', + 0x50b2: b'\x11P\xb2', + 0x50b3: b'\x11P\xb3', + 0x50b4: b'\x11P\xb4', + 0x50b5: b'\x11P\xb5', + 0x50b6: b'\x11P\xb6', + 0x50b7: b'\x11P\xb7', + 0x50b8: b'\x11P\xb8', + 0x50b9: b'\x11P\xb9', + 0x50ba: b'\x11P\xba', + 0x50bb: b'\x11P\xbb', + 0x50bc: b'\x11P\xbc', + 0x50bd: b'\x11P\xbd', + 0x50be: b'\x11P\xbe', + 0x50bf: b'\x11P\xbf', + 0x50c0: b'\x11P\xc0', + 0x50c1: b'\x11P\xc1', + 0x50c2: b'\x11P\xc2', + 0x50c3: b'\x11P\xc3', + 0x50c4: b'\x11P\xc4', + 0x50c5: b'\x11P\xc5', + 0x50c6: b'\x11P\xc6', + 0x50c7: b'\x11P\xc7', + 0x50c8: b'\x11P\xc8', + 0x50c9: b'\x11P\xc9', + 0x50ca: b'\x11P\xca', + 0x50cb: b'\x11P\xcb', + 0x50cc: b'\x11P\xcc', + 0x50cd: b'\x11P\xcd', + 0x50ce: b'\x11P\xce', + 0x50cf: b'\x11P\xcf', + 0x50d0: b'\x11P\xd0', + 0x50d1: b'\x11P\xd1', + 0x50d2: b'\x11P\xd2', + 0x50d3: b'\x11P\xd3', + 0x50d4: b'\x11P\xd4', + 0x50d5: b'\x11P\xd5', + 0x50d6: b'\x11P\xd6', + 0x50d7: b'\x11P\xd7', + 0x50d8: b'\x11P\xd8', + 0x50d9: b'\x11P\xd9', + 0x50da: b'\x11P\xda', + 0x50db: b'\x11P\xdb', + 0x50dc: b'\x11P\xdc', + 0x50dd: b'\x11P\xdd', + 0x50de: b'\x11P\xde', + 0x50df: b'\x11P\xdf', + 0x50e0: b'\x11P\xe0', + 0x50e1: b'\x11P\xe1', + 0x50e2: b'\x11P\xe2', + 0x50e3: b'\x11P\xe3', + 0x50e4: b'\x11P\xe4', + 0x50e5: b'\x11P\xe5', + 0x50e6: b'\x11P\xe6', + 0x50e7: b'\x11P\xe7', + 0x50e8: b'\x11P\xe8', + 0x50e9: b'\x11P\xe9', + 0x50ea: b'\x11P\xea', + 0x50eb: b'\x11P\xeb', + 0x50ec: b'\x11P\xec', + 0x50ed: b'\x11P\xed', + 0x50ee: b'\x11P\xee', + 0x50ef: b'\x11P\xef', + 0x50f0: b'\x11P\xf0', + 0x50f1: b'\x11P\xf1', + 0x50f2: b'\x11P\xf2', + 0x50f3: b'\x11P\xf3', + 0x50f4: b'\x11P\xf4', + 0x50f5: b'\x11P\xf5', + 0x50f6: b'\x11P\xf6', + 0x50f7: b'\x11P\xf7', + 0x50f8: b'\x11P\xf8', + 0x50f9: b'\x11P\xf9', + 0x50fa: b'\x11P\xfa', + 0x50fb: b'\x11P\xfb', + 0x50fc: b'\x11P\xfc', + 0x50fd: b'\x11P\xfd', + 0x50fe: b'\x11P\xfe', + 0x50ff: b'\x11P\xff', + 0x5100: b'\x11Q\x00', + 0x5101: b'\x11Q\x01', + 0x5102: b'\x11Q\x02', + 0x5103: b'\x11Q\x03', + 0x5104: b'\x11Q\x04', + 0x5105: b'\x11Q\x05', + 0x5106: b'\x11Q\x06', + 0x5107: b'\x11Q\x07', + 0x5108: b'\x11Q\x08', + 0x5109: b'\x11Q\t', + 0x510a: b'\x11Q\n', + 0x510b: b'\x11Q\x0b', + 0x510c: b'\x11Q\x0c', + 0x510d: b'\x11Q\r', + 0x510e: b'\x11Q\x0e', + 0x510f: b'\x11Q\x0f', + 0x5110: b'\x11Q\x10', + 0x5111: b'\x11Q\x11', + 0x5112: b'\x11Q\x12', + 0x5113: b'\x11Q\x13', + 0x5114: b'\x11Q\x14', + 0x5115: b'\x11Q\x15', + 0x5116: b'\x11Q\x16', + 0x5117: b'\x11Q\x17', + 0x5118: b'\x11Q\x18', + 0x5119: b'\x11Q\x19', + 0x511a: b'\x11Q\x1a', + 0x511b: b'\x11Q\x1b', + 0x511c: b'\x11Q\x1c', + 0x511d: b'\x11Q\x1d', + 0x511e: b'\x11Q\x1e', + 0x511f: b'\x11Q\x1f', + 0x5120: b'\x11Q ', + 0x5121: b'\x11Q!', + 0x5122: b'\x11Q"', + 0x5123: b'\x11Q#', + 0x5124: b'\x11Q$', + 0x5125: b'\x11Q%', + 0x5126: b'\x11Q&', + 0x5127: b"\x11Q'", + 0x5128: b'\x11Q(', + 0x5129: b'\x11Q)', + 0x512a: b'\x11Q*', + 0x512b: b'\x11Q+', + 0x512c: b'\x11Q,', + 0x512d: b'\x11Q-', + 0x512e: b'\x11Q.', + 0x512f: b'\x11Q/', + 0x5130: b'\x11Q0', + 0x5131: b'\x11Q1', + 0x5132: b'\x11Q2', + 0x5133: b'\x11Q3', + 0x5134: b'\x11Q4', + 0x5135: b'\x11Q5', + 0x5136: b'\x11Q6', + 0x5137: b'\x11Q7', + 0x5138: b'\x11Q8', + 0x5139: b'\x11Q9', + 0x513a: b'\x11Q:', + 0x513b: b'\x11Q;', + 0x513c: b'\x11Q<', + 0x513d: b'\x11Q=', + 0x513e: b'\x11Q>', + 0x513f: b'\x11Q?', + 0x5140: b'\x11Q@', + 0x5141: b'\x11QA', + 0x5142: b'\x11QB', + 0x5143: b'\x11QC', + 0x5144: b'\x11QD', + 0x5145: b'\x11QE', + 0x5146: b'\x11QF', + 0x5147: b'\x11QG', + 0x5148: b'\x11QH', + 0x5149: b'\x11QI', + 0x514a: b'\x11QJ', + 0x514b: b'\x11QK', + 0x514c: b'\x11QL', + 0x514d: b'\x11QM', + 0x514e: b'\x11QN', + 0x514f: b'\x11QO', + 0x5150: b'\x11QP', + 0x5151: b'\x11QQ', + 0x5152: b'\x11QR', + 0x5153: b'\x11QS', + 0x5154: b'\x11QT', + 0x5155: b'\x11QU', + 0x5156: b'\x11QV', + 0x5157: b'\x11QW', + 0x5158: b'\x11QX', + 0x5159: b'\x11QY', + 0x515a: b'\x11QZ', + 0x515b: b'\x11Q[', + 0x515c: b'\x11Q\\', + 0x515d: b'\x11Q]', + 0x515e: b'\x11Q^', + 0x515f: b'\x11Q_', + 0x5160: b'\x11Q`', + 0x5161: b'\x11Qa', + 0x5162: b'\x11Qb', + 0x5163: b'\x11Qc', + 0x5164: b'\x11Qd', + 0x5165: b'\x11Qe', + 0x5166: b'\x11Qf', + 0x5167: b'\x11Qg', + 0x5168: b'\x11Qh', + 0x5169: b'\x11Qi', + 0x516a: b'\x11Qj', + 0x516b: b'\x11Qk', + 0x516c: b'\x11Ql', + 0x516d: b'\x11Qm', + 0x516e: b'\x11Qn', + 0x516f: b'\x11Qo', + 0x5170: b'\x11Qp', + 0x5171: b'\x11Qq', + 0x5172: b'\x11Qr', + 0x5173: b'\x11Qs', + 0x5174: b'\x11Qt', + 0x5175: b'\x11Qu', + 0x5176: b'\x11Qv', + 0x5177: b'\x11Qw', + 0x5178: b'\x11Qx', + 0x5179: b'\x11Qy', + 0x517a: b'\x11Qz', + 0x517b: b'\x11Q{', + 0x517c: b'\x11Q|', + 0x517d: b'\x11Q}', + 0x517e: b'\x11Q~', + 0x517f: b'\x11Q\x7f', + 0x5180: b'\x11Q\x80', + 0x5181: b'\x11Q\x81', + 0x5182: b'\x11Q\x82', + 0x5183: b'\x11Q\x83', + 0x5184: b'\x11Q\x84', + 0x5185: b'\x11Q\x85', + 0x5186: b'\x11Q\x86', + 0x5187: b'\x11Q\x87', + 0x5188: b'\x11Q\x88', + 0x5189: b'\x11Q\x89', + 0x518a: b'\x11Q\x8a', + 0x518b: b'\x11Q\x8b', + 0x518c: b'\x11Q\x8c', + 0x518d: b'\x11Q\x8d', + 0x518e: b'\x11Q\x8e', + 0x518f: b'\x11Q\x8f', + 0x5190: b'\x11Q\x90', + 0x5191: b'\x11Q\x91', + 0x5192: b'\x11Q\x92', + 0x5193: b'\x11Q\x93', + 0x5194: b'\x11Q\x94', + 0x5195: b'\x11Q\x95', + 0x5196: b'\x11Q\x96', + 0x5197: b'\x11Q\x97', + 0x5198: b'\x11Q\x98', + 0x5199: b'\x11Q\x99', + 0x519a: b'\x11Q\x9a', + 0x519b: b'\x11Q\x9b', + 0x519c: b'\x11Q\x9c', + 0x519d: b'\x11Q\x9d', + 0x519e: b'\x11Q\x9e', + 0x519f: b'\x11Q\x9f', + 0x51a0: b'\x11Q\xa0', + 0x51a1: b'\x11Q\xa1', + 0x51a2: b'\x11Q\xa2', + 0x51a3: b'\x11Q\xa3', + 0x51a4: b'\x11Q\xa4', + 0x51a5: b'\x11Q\xa5', + 0x51a6: b'\x11Q\xa6', + 0x51a7: b'\x11Q\xa7', + 0x51a8: b'\x11Q\xa8', + 0x51a9: b'\x11Q\xa9', + 0x51aa: b'\x11Q\xaa', + 0x51ab: b'\x11Q\xab', + 0x51ac: b'\x11Q\xac', + 0x51ad: b'\x11Q\xad', + 0x51ae: b'\x11Q\xae', + 0x51af: b'\x11Q\xaf', + 0x51b0: b'\x11Q\xb0', + 0x51b1: b'\x11Q\xb1', + 0x51b2: b'\x11Q\xb2', + 0x51b3: b'\x11Q\xb3', + 0x51b4: b'\x11Q\xb4', + 0x51b5: b'\x11Q\xb5', + 0x51b6: b'\x11Q\xb6', + 0x51b7: b'\x11Q\xb7', + 0x51b8: b'\x11Q\xb8', + 0x51b9: b'\x11Q\xb9', + 0x51ba: b'\x11Q\xba', + 0x51bb: b'\x11Q\xbb', + 0x51bc: b'\x11Q\xbc', + 0x51bd: b'\x11Q\xbd', + 0x51be: b'\x11Q\xbe', + 0x51bf: b'\x11Q\xbf', + 0x51c0: b'\x11Q\xc0', + 0x51c1: b'\x11Q\xc1', + 0x51c2: b'\x11Q\xc2', + 0x51c3: b'\x11Q\xc3', + 0x51c4: b'\x11Q\xc4', + 0x51c5: b'\x11Q\xc5', + 0x51c6: b'\x11Q\xc6', + 0x51c7: b'\x11Q\xc7', + 0x51c8: b'\x11Q\xc8', + 0x51c9: b'\x11Q\xc9', + 0x51ca: b'\x11Q\xca', + 0x51cb: b'\x11Q\xcb', + 0x51cc: b'\x11Q\xcc', + 0x51cd: b'\x11Q\xcd', + 0x51ce: b'\x11Q\xce', + 0x51cf: b'\x11Q\xcf', + 0x51d0: b'\x11Q\xd0', + 0x51d1: b'\x11Q\xd1', + 0x51d2: b'\x11Q\xd2', + 0x51d3: b'\x11Q\xd3', + 0x51d4: b'\x11Q\xd4', + 0x51d5: b'\x11Q\xd5', + 0x51d6: b'\x11Q\xd6', + 0x51d7: b'\x11Q\xd7', + 0x51d8: b'\x11Q\xd8', + 0x51d9: b'\x11Q\xd9', + 0x51da: b'\x11Q\xda', + 0x51db: b'\x11Q\xdb', + 0x51dc: b'\x11Q\xdc', + 0x51dd: b'\x11Q\xdd', + 0x51de: b'\x11Q\xde', + 0x51df: b'\x11Q\xdf', + 0x51e0: b'\x11Q\xe0', + 0x51e1: b'\x11Q\xe1', + 0x51e2: b'\x11Q\xe2', + 0x51e3: b'\x11Q\xe3', + 0x51e4: b'\x11Q\xe4', + 0x51e5: b'\x11Q\xe5', + 0x51e6: b'\x11Q\xe6', + 0x51e7: b'\x11Q\xe7', + 0x51e8: b'\x11Q\xe8', + 0x51e9: b'\x11Q\xe9', + 0x51ea: b'\x11Q\xea', + 0x51eb: b'\x11Q\xeb', + 0x51ec: b'\x11Q\xec', + 0x51ed: b'\x11Q\xed', + 0x51ee: b'\x11Q\xee', + 0x51ef: b'\x11Q\xef', + 0x51f0: b'\x11Q\xf0', + 0x51f1: b'\x11Q\xf1', + 0x51f2: b'\x11Q\xf2', + 0x51f3: b'\x11Q\xf3', + 0x51f4: b'\x11Q\xf4', + 0x51f5: b'\x11Q\xf5', + 0x51f6: b'\x11Q\xf6', + 0x51f7: b'\x11Q\xf7', + 0x51f8: b'\x11Q\xf8', + 0x51f9: b'\x11Q\xf9', + 0x51fa: b'\x11Q\xfa', + 0x51fb: b'\x11Q\xfb', + 0x51fc: b'\x11Q\xfc', + 0x51fd: b'\x11Q\xfd', + 0x51fe: b'\x11Q\xfe', + 0x51ff: b'\x11Q\xff', + 0x5200: b'\x11R\x00', + 0x5201: b'\x11R\x01', + 0x5202: b'\x11R\x02', + 0x5203: b'\x11R\x03', + 0x5204: b'\x11R\x04', + 0x5205: b'\x11R\x05', + 0x5206: b'\x11R\x06', + 0x5207: b'\x11R\x07', + 0x5208: b'\x11R\x08', + 0x5209: b'\x11R\t', + 0x520a: b'\x11R\n', + 0x520b: b'\x11R\x0b', + 0x520c: b'\x11R\x0c', + 0x520d: b'\x11R\r', + 0x520e: b'\x11R\x0e', + 0x520f: b'\x11R\x0f', + 0x5210: b'\x11R\x10', + 0x5211: b'\x11R\x11', + 0x5212: b'\x11R\x12', + 0x5213: b'\x11R\x13', + 0x5214: b'\x11R\x14', + 0x5215: b'\x11R\x15', + 0x5216: b'\x11R\x16', + 0x5217: b'\x11R\x17', + 0x5218: b'\x11R\x18', + 0x5219: b'\x11R\x19', + 0x521a: b'\x11R\x1a', + 0x521b: b'\x11R\x1b', + 0x521c: b'\x11R\x1c', + 0x521d: b'\x11R\x1d', + 0x521e: b'\x11R\x1e', + 0x521f: b'\x11R\x1f', + 0x5220: b'\x11R ', + 0x5221: b'\x11R!', + 0x5222: b'\x11R"', + 0x5223: b'\x11R#', + 0x5224: b'\x11R$', + 0x5225: b'\x11R%', + 0x5226: b'\x11R&', + 0x5227: b"\x11R'", + 0x5228: b'\x11R(', + 0x5229: b'\x11R)', + 0x522a: b'\x11R*', + 0x522b: b'\x11R+', + 0x522c: b'\x11R,', + 0x522d: b'\x11R-', + 0x522e: b'\x11R.', + 0x522f: b'\x11R/', + 0x5230: b'\x11R0', + 0x5231: b'\x11R1', + 0x5232: b'\x11R2', + 0x5233: b'\x11R3', + 0x5234: b'\x11R4', + 0x5235: b'\x11R5', + 0x5236: b'\x11R6', + 0x5237: b'\x11R7', + 0x5238: b'\x11R8', + 0x5239: b'\x11R9', + 0x523a: b'\x11R:', + 0x523b: b'\x11R;', + 0x523c: b'\x11R<', + 0x523d: b'\x11R=', + 0x523e: b'\x11R>', + 0x523f: b'\x11R?', + 0x5240: b'\x11R@', + 0x5241: b'\x11RA', + 0x5242: b'\x11RB', + 0x5243: b'\x11RC', + 0x5244: b'\x11RD', + 0x5245: b'\x11RE', + 0x5246: b'\x11RF', + 0x5247: b'\x11RG', + 0x5248: b'\x11RH', + 0x5249: b'\x11RI', + 0x524a: b'\x11RJ', + 0x524b: b'\x11RK', + 0x524c: b'\x11RL', + 0x524d: b'\x11RM', + 0x524e: b'\x11RN', + 0x524f: b'\x11RO', + 0x5250: b'\x11RP', + 0x5251: b'\x11RQ', + 0x5252: b'\x11RR', + 0x5253: b'\x11RS', + 0x5254: b'\x11RT', + 0x5255: b'\x11RU', + 0x5256: b'\x11RV', + 0x5257: b'\x11RW', + 0x5258: b'\x11RX', + 0x5259: b'\x11RY', + 0x525a: b'\x11RZ', + 0x525b: b'\x11R[', + 0x525c: b'\x11R\\', + 0x525d: b'\x11R]', + 0x525e: b'\x11R^', + 0x525f: b'\x11R_', + 0x5260: b'\x11R`', + 0x5261: b'\x11Ra', + 0x5262: b'\x11Rb', + 0x5263: b'\x11Rc', + 0x5264: b'\x11Rd', + 0x5265: b'\x11Re', + 0x5266: b'\x11Rf', + 0x5267: b'\x11Rg', + 0x5268: b'\x11Rh', + 0x5269: b'\x11Ri', + 0x526a: b'\x11Rj', + 0x526b: b'\x11Rk', + 0x526c: b'\x11Rl', + 0x526d: b'\x11Rm', + 0x526e: b'\x11Rn', + 0x526f: b'\x11Ro', + 0x5270: b'\x11Rp', + 0x5271: b'\x11Rq', + 0x5272: b'\x11Rr', + 0x5273: b'\x11Rs', + 0x5274: b'\x11Rt', + 0x5275: b'\x11Ru', + 0x5276: b'\x11Rv', + 0x5277: b'\x11Rw', + 0x5278: b'\x11Rx', + 0x5279: b'\x11Ry', + 0x527a: b'\x11Rz', + 0x527b: b'\x11R{', + 0x527c: b'\x11R|', + 0x527d: b'\x11R}', + 0x527e: b'\x11R~', + 0x527f: b'\x11R\x7f', + 0x5280: b'\x11R\x80', + 0x5281: b'\x11R\x81', + 0x5282: b'\x11R\x82', + 0x5283: b'\x11R\x83', + 0x5284: b'\x11R\x84', + 0x5285: b'\x11R\x85', + 0x5286: b'\x11R\x86', + 0x5287: b'\x11R\x87', + 0x5288: b'\x11R\x88', + 0x5289: b'\x11R\x89', + 0x528a: b'\x11R\x8a', + 0x528b: b'\x11R\x8b', + 0x528c: b'\x11R\x8c', + 0x528d: b'\x11R\x8d', + 0x528e: b'\x11R\x8e', + 0x528f: b'\x11R\x8f', + 0x5290: b'\x11R\x90', + 0x5291: b'\x11R\x91', + 0x5292: b'\x11R\x92', + 0x5293: b'\x11R\x93', + 0x5294: b'\x11R\x94', + 0x5295: b'\x11R\x95', + 0x5296: b'\x11R\x96', + 0x5297: b'\x11R\x97', + 0x5298: b'\x11R\x98', + 0x5299: b'\x11R\x99', + 0x529a: b'\x11R\x9a', + 0x529b: b'\x11R\x9b', + 0x529c: b'\x11R\x9c', + 0x529d: b'\x11R\x9d', + 0x529e: b'\x11R\x9e', + 0x529f: b'\x11R\x9f', + 0x52a0: b'\x11R\xa0', + 0x52a1: b'\x11R\xa1', + 0x52a2: b'\x11R\xa2', + 0x52a3: b'\x11R\xa3', + 0x52a4: b'\x11R\xa4', + 0x52a5: b'\x11R\xa5', + 0x52a6: b'\x11R\xa6', + 0x52a7: b'\x11R\xa7', + 0x52a8: b'\x11R\xa8', + 0x52a9: b'\x11R\xa9', + 0x52aa: b'\x11R\xaa', + 0x52ab: b'\x11R\xab', + 0x52ac: b'\x11R\xac', + 0x52ad: b'\x11R\xad', + 0x52ae: b'\x11R\xae', + 0x52af: b'\x11R\xaf', + 0x52b0: b'\x11R\xb0', + 0x52b1: b'\x11R\xb1', + 0x52b2: b'\x11R\xb2', + 0x52b3: b'\x11R\xb3', + 0x52b4: b'\x11R\xb4', + 0x52b5: b'\x11R\xb5', + 0x52b6: b'\x11R\xb6', + 0x52b7: b'\x11R\xb7', + 0x52b8: b'\x11R\xb8', + 0x52b9: b'\x11R\xb9', + 0x52ba: b'\x11R\xba', + 0x52bb: b'\x11R\xbb', + 0x52bc: b'\x11R\xbc', + 0x52bd: b'\x11R\xbd', + 0x52be: b'\x11R\xbe', + 0x52bf: b'\x11R\xbf', + 0x52c0: b'\x11R\xc0', + 0x52c1: b'\x11R\xc1', + 0x52c2: b'\x11R\xc2', + 0x52c3: b'\x11R\xc3', + 0x52c4: b'\x11R\xc4', + 0x52c5: b'\x11R\xc5', + 0x52c6: b'\x11R\xc6', + 0x52c7: b'\x11R\xc7', + 0x52c8: b'\x11R\xc8', + 0x52c9: b'\x11R\xc9', + 0x52ca: b'\x11R\xca', + 0x52cb: b'\x11R\xcb', + 0x52cc: b'\x11R\xcc', + 0x52cd: b'\x11R\xcd', + 0x52ce: b'\x11R\xce', + 0x52cf: b'\x11R\xcf', + 0x52d0: b'\x11R\xd0', + 0x52d1: b'\x11R\xd1', + 0x52d2: b'\x11R\xd2', + 0x52d3: b'\x11R\xd3', + 0x52d4: b'\x11R\xd4', + 0x52d5: b'\x11R\xd5', + 0x52d6: b'\x11R\xd6', + 0x52d7: b'\x11R\xd7', + 0x52d8: b'\x11R\xd8', + 0x52d9: b'\x11R\xd9', + 0x52da: b'\x11R\xda', + 0x52db: b'\x11R\xdb', + 0x52dc: b'\x11R\xdc', + 0x52dd: b'\x11R\xdd', + 0x52de: b'\x11R\xde', + 0x52df: b'\x11R\xdf', + 0x52e0: b'\x11R\xe0', + 0x52e1: b'\x11R\xe1', + 0x52e2: b'\x11R\xe2', + 0x52e3: b'\x11R\xe3', + 0x52e4: b'\x11R\xe4', + 0x52e5: b'\x11R\xe5', + 0x52e6: b'\x11R\xe6', + 0x52e7: b'\x11R\xe7', + 0x52e8: b'\x11R\xe8', + 0x52e9: b'\x11R\xe9', + 0x52ea: b'\x11R\xea', + 0x52eb: b'\x11R\xeb', + 0x52ec: b'\x11R\xec', + 0x52ed: b'\x11R\xed', + 0x52ee: b'\x11R\xee', + 0x52ef: b'\x11R\xef', + 0x52f0: b'\x11R\xf0', + 0x52f1: b'\x11R\xf1', + 0x52f2: b'\x11R\xf2', + 0x52f3: b'\x11R\xf3', + 0x52f4: b'\x11R\xf4', + 0x52f5: b'\x11R\xf5', + 0x52f6: b'\x11R\xf6', + 0x52f7: b'\x11R\xf7', + 0x52f8: b'\x11R\xf8', + 0x52f9: b'\x11R\xf9', + 0x52fa: b'\x11R\xfa', + 0x52fb: b'\x11R\xfb', + 0x52fc: b'\x11R\xfc', + 0x52fd: b'\x11R\xfd', + 0x52fe: b'\x11R\xfe', + 0x52ff: b'\x11R\xff', + 0x5300: b'\x11S\x00', + 0x5301: b'\x11S\x01', + 0x5302: b'\x11S\x02', + 0x5303: b'\x11S\x03', + 0x5304: b'\x11S\x04', + 0x5305: b'\x11S\x05', + 0x5306: b'\x11S\x06', + 0x5307: b'\x11S\x07', + 0x5308: b'\x11S\x08', + 0x5309: b'\x11S\t', + 0x530a: b'\x11S\n', + 0x530b: b'\x11S\x0b', + 0x530c: b'\x11S\x0c', + 0x530d: b'\x11S\r', + 0x530e: b'\x11S\x0e', + 0x530f: b'\x11S\x0f', + 0x5310: b'\x11S\x10', + 0x5311: b'\x11S\x11', + 0x5312: b'\x11S\x12', + 0x5313: b'\x11S\x13', + 0x5314: b'\x11S\x14', + 0x5315: b'\x11S\x15', + 0x5316: b'\x11S\x16', + 0x5317: b'\x11S\x17', + 0x5318: b'\x11S\x18', + 0x5319: b'\x11S\x19', + 0x531a: b'\x11S\x1a', + 0x531b: b'\x11S\x1b', + 0x531c: b'\x11S\x1c', + 0x531d: b'\x11S\x1d', + 0x531e: b'\x11S\x1e', + 0x531f: b'\x11S\x1f', + 0x5320: b'\x11S ', + 0x5321: b'\x11S!', + 0x5322: b'\x11S"', + 0x5323: b'\x11S#', + 0x5324: b'\x11S$', + 0x5325: b'\x11S%', + 0x5326: b'\x11S&', + 0x5327: b"\x11S'", + 0x5328: b'\x11S(', + 0x5329: b'\x11S)', + 0x532a: b'\x11S*', + 0x532b: b'\x11S+', + 0x532c: b'\x11S,', + 0x532d: b'\x11S-', + 0x532e: b'\x11S.', + 0x532f: b'\x11S/', + 0x5330: b'\x11S0', + 0x5331: b'\x11S1', + 0x5332: b'\x11S2', + 0x5333: b'\x11S3', + 0x5334: b'\x11S4', + 0x5335: b'\x11S5', + 0x5336: b'\x11S6', + 0x5337: b'\x11S7', + 0x5338: b'\x11S8', + 0x5339: b'\x11S9', + 0x533a: b'\x11S:', + 0x533b: b'\x11S;', + 0x533c: b'\x11S<', + 0x533d: b'\x11S=', + 0x533e: b'\x11S>', + 0x533f: b'\x11S?', + 0x5340: b'\x11S@', + 0x5341: b'\x11SA', + 0x5342: b'\x11SB', + 0x5343: b'\x11SC', + 0x5344: b'\x11SD', + 0x5345: b'\x11SE', + 0x5346: b'\x11SF', + 0x5347: b'\x11SG', + 0x5348: b'\x11SH', + 0x5349: b'\x11SI', + 0x534a: b'\x11SJ', + 0x534b: b'\x11SK', + 0x534c: b'\x11SL', + 0x534d: b'\x11SM', + 0x534e: b'\x11SN', + 0x534f: b'\x11SO', + 0x5350: b'\x11SP', + 0x5351: b'\x11SQ', + 0x5352: b'\x11SR', + 0x5353: b'\x11SS', + 0x5354: b'\x11ST', + 0x5355: b'\x11SU', + 0x5356: b'\x11SV', + 0x5357: b'\x11SW', + 0x5358: b'\x11SX', + 0x5359: b'\x11SY', + 0x535a: b'\x11SZ', + 0x535b: b'\x11S[', + 0x535c: b'\x11S\\', + 0x535d: b'\x11S]', + 0x535e: b'\x11S^', + 0x535f: b'\x11S_', + 0x5360: b'\x11S`', + 0x5361: b'\x11Sa', + 0x5362: b'\x11Sb', + 0x5363: b'\x11Sc', + 0x5364: b'\x11Sd', + 0x5365: b'\x11Se', + 0x5366: b'\x11Sf', + 0x5367: b'\x11Sg', + 0x5368: b'\x11Sh', + 0x5369: b'\x11Si', + 0x536a: b'\x11Sj', + 0x536b: b'\x11Sk', + 0x536c: b'\x11Sl', + 0x536d: b'\x11Sm', + 0x536e: b'\x11Sn', + 0x536f: b'\x11So', + 0x5370: b'\x11Sp', + 0x5371: b'\x11Sq', + 0x5372: b'\x11Sr', + 0x5373: b'\x11Ss', + 0x5374: b'\x11St', + 0x5375: b'\x11Su', + 0x5376: b'\x11Sv', + 0x5377: b'\x11Sw', + 0x5378: b'\x11Sx', + 0x5379: b'\x11Sy', + 0x537a: b'\x11Sz', + 0x537b: b'\x11S{', + 0x537c: b'\x11S|', + 0x537d: b'\x11S}', + 0x537e: b'\x11S~', + 0x537f: b'\x11S\x7f', + 0x5380: b'\x11S\x80', + 0x5381: b'\x11S\x81', + 0x5382: b'\x11S\x82', + 0x5383: b'\x11S\x83', + 0x5384: b'\x11S\x84', + 0x5385: b'\x11S\x85', + 0x5386: b'\x11S\x86', + 0x5387: b'\x11S\x87', + 0x5388: b'\x11S\x88', + 0x5389: b'\x11S\x89', + 0x538a: b'\x11S\x8a', + 0x538b: b'\x11S\x8b', + 0x538c: b'\x11S\x8c', + 0x538d: b'\x11S\x8d', + 0x538e: b'\x11S\x8e', + 0x538f: b'\x11S\x8f', + 0x5390: b'\x11S\x90', + 0x5391: b'\x11S\x91', + 0x5392: b'\x11S\x92', + 0x5393: b'\x11S\x93', + 0x5394: b'\x11S\x94', + 0x5395: b'\x11S\x95', + 0x5396: b'\x11S\x96', + 0x5397: b'\x11S\x97', + 0x5398: b'\x11S\x98', + 0x5399: b'\x11S\x99', + 0x539a: b'\x11S\x9a', + 0x539b: b'\x11S\x9b', + 0x539c: b'\x11S\x9c', + 0x539d: b'\x11S\x9d', + 0x539e: b'\x11S\x9e', + 0x539f: b'\x11S\x9f', + 0x53a0: b'\x11S\xa0', + 0x53a1: b'\x11S\xa1', + 0x53a2: b'\x11S\xa2', + 0x53a3: b'\x11S\xa3', + 0x53a4: b'\x11S\xa4', + 0x53a5: b'\x11S\xa5', + 0x53a6: b'\x11S\xa6', + 0x53a7: b'\x11S\xa7', + 0x53a8: b'\x11S\xa8', + 0x53a9: b'\x11S\xa9', + 0x53aa: b'\x11S\xaa', + 0x53ab: b'\x11S\xab', + 0x53ac: b'\x11S\xac', + 0x53ad: b'\x11S\xad', + 0x53ae: b'\x11S\xae', + 0x53af: b'\x11S\xaf', + 0x53b0: b'\x11S\xb0', + 0x53b1: b'\x11S\xb1', + 0x53b2: b'\x11S\xb2', + 0x53b3: b'\x11S\xb3', + 0x53b4: b'\x11S\xb4', + 0x53b5: b'\x11S\xb5', + 0x53b6: b'\x11S\xb6', + 0x53b7: b'\x11S\xb7', + 0x53b8: b'\x11S\xb8', + 0x53b9: b'\x11S\xb9', + 0x53ba: b'\x11S\xba', + 0x53bb: b'\x11S\xbb', + 0x53bc: b'\x11S\xbc', + 0x53bd: b'\x11S\xbd', + 0x53be: b'\x11S\xbe', + 0x53bf: b'\x11S\xbf', + 0x53c0: b'\x11S\xc0', + 0x53c1: b'\x11S\xc1', + 0x53c2: b'\x11S\xc2', + 0x53c3: b'\x11S\xc3', + 0x53c4: b'\x11S\xc4', + 0x53c5: b'\x11S\xc5', + 0x53c6: b'\x11S\xc6', + 0x53c7: b'\x11S\xc7', + 0x53c8: b'\x11S\xc8', + 0x53c9: b'\x11S\xc9', + 0x53ca: b'\x11S\xca', + 0x53cb: b'\x11S\xcb', + 0x53cc: b'\x11S\xcc', + 0x53cd: b'\x11S\xcd', + 0x53ce: b'\x11S\xce', + 0x53cf: b'\x11S\xcf', + 0x53d0: b'\x11S\xd0', + 0x53d1: b'\x11S\xd1', + 0x53d2: b'\x11S\xd2', + 0x53d3: b'\x11S\xd3', + 0x53d4: b'\x11S\xd4', + 0x53d5: b'\x11S\xd5', + 0x53d6: b'\x11S\xd6', + 0x53d7: b'\x11S\xd7', + 0x53d8: b'\x11S\xd8', + 0x53d9: b'\x11S\xd9', + 0x53da: b'\x11S\xda', + 0x53db: b'\x11S\xdb', + 0x53dc: b'\x11S\xdc', + 0x53dd: b'\x11S\xdd', + 0x53de: b'\x11S\xde', + 0x53df: b'\x11S\xdf', + 0x53e0: b'\x11S\xe0', + 0x53e1: b'\x11S\xe1', + 0x53e2: b'\x11S\xe2', + 0x53e3: b'\x11S\xe3', + 0x53e4: b'\x11S\xe4', + 0x53e5: b'\x11S\xe5', + 0x53e6: b'\x11S\xe6', + 0x53e7: b'\x11S\xe7', + 0x53e8: b'\x11S\xe8', + 0x53e9: b'\x11S\xe9', + 0x53ea: b'\x11S\xea', + 0x53eb: b'\x11S\xeb', + 0x53ec: b'\x11S\xec', + 0x53ed: b'\x11S\xed', + 0x53ee: b'\x11S\xee', + 0x53ef: b'\x11S\xef', + 0x53f0: b'\x11S\xf0', + 0x53f1: b'\x11S\xf1', + 0x53f2: b'\x11S\xf2', + 0x53f3: b'\x11S\xf3', + 0x53f4: b'\x11S\xf4', + 0x53f5: b'\x11S\xf5', + 0x53f6: b'\x11S\xf6', + 0x53f7: b'\x11S\xf7', + 0x53f8: b'\x11S\xf8', + 0x53f9: b'\x11S\xf9', + 0x53fa: b'\x11S\xfa', + 0x53fb: b'\x11S\xfb', + 0x53fc: b'\x11S\xfc', + 0x53fd: b'\x11S\xfd', + 0x53fe: b'\x11S\xfe', + 0x53ff: b'\x11S\xff', + 0x5400: b'\x11T\x00', + 0x5401: b'\x11T\x01', + 0x5402: b'\x11T\x02', + 0x5403: b'\x11T\x03', + 0x5404: b'\x11T\x04', + 0x5405: b'\x11T\x05', + 0x5406: b'\x11T\x06', + 0x5407: b'\x11T\x07', + 0x5408: b'\x11T\x08', + 0x5409: b'\x11T\t', + 0x540a: b'\x11T\n', + 0x540b: b'\x11T\x0b', + 0x540c: b'\x11T\x0c', + 0x540d: b'\x11T\r', + 0x540e: b'\x11T\x0e', + 0x540f: b'\x11T\x0f', + 0x5410: b'\x11T\x10', + 0x5411: b'\x11T\x11', + 0x5412: b'\x11T\x12', + 0x5413: b'\x11T\x13', + 0x5414: b'\x11T\x14', + 0x5415: b'\x11T\x15', + 0x5416: b'\x11T\x16', + 0x5417: b'\x11T\x17', + 0x5418: b'\x11T\x18', + 0x5419: b'\x11T\x19', + 0x541a: b'\x11T\x1a', + 0x541b: b'\x11T\x1b', + 0x541c: b'\x11T\x1c', + 0x541d: b'\x11T\x1d', + 0x541e: b'\x11T\x1e', + 0x541f: b'\x11T\x1f', + 0x5420: b'\x11T ', + 0x5421: b'\x11T!', + 0x5422: b'\x11T"', + 0x5423: b'\x11T#', + 0x5424: b'\x11T$', + 0x5425: b'\x11T%', + 0x5426: b'\x11T&', + 0x5427: b"\x11T'", + 0x5428: b'\x11T(', + 0x5429: b'\x11T)', + 0x542a: b'\x11T*', + 0x542b: b'\x11T+', + 0x542c: b'\x11T,', + 0x542d: b'\x11T-', + 0x542e: b'\x11T.', + 0x542f: b'\x11T/', + 0x5430: b'\x11T0', + 0x5431: b'\x11T1', + 0x5432: b'\x11T2', + 0x5433: b'\x11T3', + 0x5434: b'\x11T4', + 0x5435: b'\x11T5', + 0x5436: b'\x11T6', + 0x5437: b'\x11T7', + 0x5438: b'\x11T8', + 0x5439: b'\x11T9', + 0x543a: b'\x11T:', + 0x543b: b'\x11T;', + 0x543c: b'\x11T<', + 0x543d: b'\x11T=', + 0x543e: b'\x11T>', + 0x543f: b'\x11T?', + 0x5440: b'\x11T@', + 0x5441: b'\x11TA', + 0x5442: b'\x11TB', + 0x5443: b'\x11TC', + 0x5444: b'\x11TD', + 0x5445: b'\x11TE', + 0x5446: b'\x11TF', + 0x5447: b'\x11TG', + 0x5448: b'\x11TH', + 0x5449: b'\x11TI', + 0x544a: b'\x11TJ', + 0x544b: b'\x11TK', + 0x544c: b'\x11TL', + 0x544d: b'\x11TM', + 0x544e: b'\x11TN', + 0x544f: b'\x11TO', + 0x5450: b'\x11TP', + 0x5451: b'\x11TQ', + 0x5452: b'\x11TR', + 0x5453: b'\x11TS', + 0x5454: b'\x11TT', + 0x5455: b'\x11TU', + 0x5456: b'\x11TV', + 0x5457: b'\x11TW', + 0x5458: b'\x11TX', + 0x5459: b'\x11TY', + 0x545a: b'\x11TZ', + 0x545b: b'\x11T[', + 0x545c: b'\x11T\\', + 0x545d: b'\x11T]', + 0x545e: b'\x11T^', + 0x545f: b'\x11T_', + 0x5460: b'\x11T`', + 0x5461: b'\x11Ta', + 0x5462: b'\x11Tb', + 0x5463: b'\x11Tc', + 0x5464: b'\x11Td', + 0x5465: b'\x11Te', + 0x5466: b'\x11Tf', + 0x5467: b'\x11Tg', + 0x5468: b'\x11Th', + 0x5469: b'\x11Ti', + 0x546a: b'\x11Tj', + 0x546b: b'\x11Tk', + 0x546c: b'\x11Tl', + 0x546d: b'\x11Tm', + 0x546e: b'\x11Tn', + 0x546f: b'\x11To', + 0x5470: b'\x11Tp', + 0x5471: b'\x11Tq', + 0x5472: b'\x11Tr', + 0x5473: b'\x11Ts', + 0x5474: b'\x11Tt', + 0x5475: b'\x11Tu', + 0x5476: b'\x11Tv', + 0x5477: b'\x11Tw', + 0x5478: b'\x11Tx', + 0x5479: b'\x11Ty', + 0x547a: b'\x11Tz', + 0x547b: b'\x11T{', + 0x547c: b'\x11T|', + 0x547d: b'\x11T}', + 0x547e: b'\x11T~', + 0x547f: b'\x11T\x7f', + 0x5480: b'\x11T\x80', + 0x5481: b'\x11T\x81', + 0x5482: b'\x11T\x82', + 0x5483: b'\x11T\x83', + 0x5484: b'\x11T\x84', + 0x5485: b'\x11T\x85', + 0x5486: b'\x11T\x86', + 0x5487: b'\x11T\x87', + 0x5488: b'\x11T\x88', + 0x5489: b'\x11T\x89', + 0x548a: b'\x11T\x8a', + 0x548b: b'\x11T\x8b', + 0x548c: b'\x11T\x8c', + 0x548d: b'\x11T\x8d', + 0x548e: b'\x11T\x8e', + 0x548f: b'\x11T\x8f', + 0x5490: b'\x11T\x90', + 0x5491: b'\x11T\x91', + 0x5492: b'\x11T\x92', + 0x5493: b'\x11T\x93', + 0x5494: b'\x11T\x94', + 0x5495: b'\x11T\x95', + 0x5496: b'\x11T\x96', + 0x5497: b'\x11T\x97', + 0x5498: b'\x11T\x98', + 0x5499: b'\x11T\x99', + 0x549a: b'\x11T\x9a', + 0x549b: b'\x11T\x9b', + 0x549c: b'\x11T\x9c', + 0x549d: b'\x11T\x9d', + 0x549e: b'\x11T\x9e', + 0x549f: b'\x11T\x9f', + 0x54a0: b'\x11T\xa0', + 0x54a1: b'\x11T\xa1', + 0x54a2: b'\x11T\xa2', + 0x54a3: b'\x11T\xa3', + 0x54a4: b'\x11T\xa4', + 0x54a5: b'\x11T\xa5', + 0x54a6: b'\x11T\xa6', + 0x54a7: b'\x11T\xa7', + 0x54a8: b'\x11T\xa8', + 0x54a9: b'\x11T\xa9', + 0x54aa: b'\x11T\xaa', + 0x54ab: b'\x11T\xab', + 0x54ac: b'\x11T\xac', + 0x54ad: b'\x11T\xad', + 0x54ae: b'\x11T\xae', + 0x54af: b'\x11T\xaf', + 0x54b0: b'\x11T\xb0', + 0x54b1: b'\x11T\xb1', + 0x54b2: b'\x11T\xb2', + 0x54b3: b'\x11T\xb3', + 0x54b4: b'\x11T\xb4', + 0x54b5: b'\x11T\xb5', + 0x54b6: b'\x11T\xb6', + 0x54b7: b'\x11T\xb7', + 0x54b8: b'\x11T\xb8', + 0x54b9: b'\x11T\xb9', + 0x54ba: b'\x11T\xba', + 0x54bb: b'\x11T\xbb', + 0x54bc: b'\x11T\xbc', + 0x54bd: b'\x11T\xbd', + 0x54be: b'\x11T\xbe', + 0x54bf: b'\x11T\xbf', + 0x54c0: b'\x11T\xc0', + 0x54c1: b'\x11T\xc1', + 0x54c2: b'\x11T\xc2', + 0x54c3: b'\x11T\xc3', + 0x54c4: b'\x11T\xc4', + 0x54c5: b'\x11T\xc5', + 0x54c6: b'\x11T\xc6', + 0x54c7: b'\x11T\xc7', + 0x54c8: b'\x11T\xc8', + 0x54c9: b'\x11T\xc9', + 0x54ca: b'\x11T\xca', + 0x54cb: b'\x11T\xcb', + 0x54cc: b'\x11T\xcc', + 0x54cd: b'\x11T\xcd', + 0x54ce: b'\x11T\xce', + 0x54cf: b'\x11T\xcf', + 0x54d0: b'\x11T\xd0', + 0x54d1: b'\x11T\xd1', + 0x54d2: b'\x11T\xd2', + 0x54d3: b'\x11T\xd3', + 0x54d4: b'\x11T\xd4', + 0x54d5: b'\x11T\xd5', + 0x54d6: b'\x11T\xd6', + 0x54d7: b'\x11T\xd7', + 0x54d8: b'\x11T\xd8', + 0x54d9: b'\x11T\xd9', + 0x54da: b'\x11T\xda', + 0x54db: b'\x11T\xdb', + 0x54dc: b'\x11T\xdc', + 0x54dd: b'\x11T\xdd', + 0x54de: b'\x11T\xde', + 0x54df: b'\x11T\xdf', + 0x54e0: b'\x11T\xe0', + 0x54e1: b'\x11T\xe1', + 0x54e2: b'\x11T\xe2', + 0x54e3: b'\x11T\xe3', + 0x54e4: b'\x11T\xe4', + 0x54e5: b'\x11T\xe5', + 0x54e6: b'\x11T\xe6', + 0x54e7: b'\x11T\xe7', + 0x54e8: b'\x11T\xe8', + 0x54e9: b'\x11T\xe9', + 0x54ea: b'\x11T\xea', + 0x54eb: b'\x11T\xeb', + 0x54ec: b'\x11T\xec', + 0x54ed: b'\x11T\xed', + 0x54ee: b'\x11T\xee', + 0x54ef: b'\x11T\xef', + 0x54f0: b'\x11T\xf0', + 0x54f1: b'\x11T\xf1', + 0x54f2: b'\x11T\xf2', + 0x54f3: b'\x11T\xf3', + 0x54f4: b'\x11T\xf4', + 0x54f5: b'\x11T\xf5', + 0x54f6: b'\x11T\xf6', + 0x54f7: b'\x11T\xf7', + 0x54f8: b'\x11T\xf8', + 0x54f9: b'\x11T\xf9', + 0x54fa: b'\x11T\xfa', + 0x54fb: b'\x11T\xfb', + 0x54fc: b'\x11T\xfc', + 0x54fd: b'\x11T\xfd', + 0x54fe: b'\x11T\xfe', + 0x54ff: b'\x11T\xff', + 0x5500: b'\x11U\x00', + 0x5501: b'\x11U\x01', + 0x5502: b'\x11U\x02', + 0x5503: b'\x11U\x03', + 0x5504: b'\x11U\x04', + 0x5505: b'\x11U\x05', + 0x5506: b'\x11U\x06', + 0x5507: b'\x11U\x07', + 0x5508: b'\x11U\x08', + 0x5509: b'\x11U\t', + 0x550a: b'\x11U\n', + 0x550b: b'\x11U\x0b', + 0x550c: b'\x11U\x0c', + 0x550d: b'\x11U\r', + 0x550e: b'\x11U\x0e', + 0x550f: b'\x11U\x0f', + 0x5510: b'\x11U\x10', + 0x5511: b'\x11U\x11', + 0x5512: b'\x11U\x12', + 0x5513: b'\x11U\x13', + 0x5514: b'\x11U\x14', + 0x5515: b'\x11U\x15', + 0x5516: b'\x11U\x16', + 0x5517: b'\x11U\x17', + 0x5518: b'\x11U\x18', + 0x5519: b'\x11U\x19', + 0x551a: b'\x11U\x1a', + 0x551b: b'\x11U\x1b', + 0x551c: b'\x11U\x1c', + 0x551d: b'\x11U\x1d', + 0x551e: b'\x11U\x1e', + 0x551f: b'\x11U\x1f', + 0x5520: b'\x11U ', + 0x5521: b'\x11U!', + 0x5522: b'\x11U"', + 0x5523: b'\x11U#', + 0x5524: b'\x11U$', + 0x5525: b'\x11U%', + 0x5526: b'\x11U&', + 0x5527: b"\x11U'", + 0x5528: b'\x11U(', + 0x5529: b'\x11U)', + 0x552a: b'\x11U*', + 0x552b: b'\x11U+', + 0x552c: b'\x11U,', + 0x552d: b'\x11U-', + 0x552e: b'\x11U.', + 0x552f: b'\x11U/', + 0x5530: b'\x11U0', + 0x5531: b'\x11U1', + 0x5532: b'\x11U2', + 0x5533: b'\x11U3', + 0x5534: b'\x11U4', + 0x5535: b'\x11U5', + 0x5536: b'\x11U6', + 0x5537: b'\x11U7', + 0x5538: b'\x11U8', + 0x5539: b'\x11U9', + 0x553a: b'\x11U:', + 0x553b: b'\x11U;', + 0x553c: b'\x11U<', + 0x553d: b'\x11U=', + 0x553e: b'\x11U>', + 0x553f: b'\x11U?', + 0x5540: b'\x11U@', + 0x5541: b'\x11UA', + 0x5542: b'\x11UB', + 0x5543: b'\x11UC', + 0x5544: b'\x11UD', + 0x5545: b'\x11UE', + 0x5546: b'\x11UF', + 0x5547: b'\x11UG', + 0x5548: b'\x11UH', + 0x5549: b'\x11UI', + 0x554a: b'\x11UJ', + 0x554b: b'\x11UK', + 0x554c: b'\x11UL', + 0x554d: b'\x11UM', + 0x554e: b'\x11UN', + 0x554f: b'\x11UO', + 0x5550: b'\x11UP', + 0x5551: b'\x11UQ', + 0x5552: b'\x11UR', + 0x5553: b'\x11US', + 0x5554: b'\x11UT', + 0x5555: b'\x11UU', + 0x5556: b'\x11UV', + 0x5557: b'\x11UW', + 0x5558: b'\x11UX', + 0x5559: b'\x11UY', + 0x555a: b'\x11UZ', + 0x555b: b'\x11U[', + 0x555c: b'\x11U\\', + 0x555d: b'\x11U]', + 0x555e: b'\x11U^', + 0x555f: b'\x11U_', + 0x5560: b'\x11U`', + 0x5561: b'\x11Ua', + 0x5562: b'\x11Ub', + 0x5563: b'\x11Uc', + 0x5564: b'\x11Ud', + 0x5565: b'\x11Ue', + 0x5566: b'\x11Uf', + 0x5567: b'\x11Ug', + 0x5568: b'\x11Uh', + 0x5569: b'\x11Ui', + 0x556a: b'\x11Uj', + 0x556b: b'\x11Uk', + 0x556c: b'\x11Ul', + 0x556d: b'\x11Um', + 0x556e: b'\x11Un', + 0x556f: b'\x11Uo', + 0x5570: b'\x11Up', + 0x5571: b'\x11Uq', + 0x5572: b'\x11Ur', + 0x5573: b'\x11Us', + 0x5574: b'\x11Ut', + 0x5575: b'\x11Uu', + 0x5576: b'\x11Uv', + 0x5577: b'\x11Uw', + 0x5578: b'\x11Ux', + 0x5579: b'\x11Uy', + 0x557a: b'\x11Uz', + 0x557b: b'\x11U{', + 0x557c: b'\x11U|', + 0x557d: b'\x11U}', + 0x557e: b'\x11U~', + 0x557f: b'\x11U\x7f', + 0x5580: b'\x11U\x80', + 0x5581: b'\x11U\x81', + 0x5582: b'\x11U\x82', + 0x5583: b'\x11U\x83', + 0x5584: b'\x11U\x84', + 0x5585: b'\x11U\x85', + 0x5586: b'\x11U\x86', + 0x5587: b'\x11U\x87', + 0x5588: b'\x11U\x88', + 0x5589: b'\x11U\x89', + 0x558a: b'\x11U\x8a', + 0x558b: b'\x11U\x8b', + 0x558c: b'\x11U\x8c', + 0x558d: b'\x11U\x8d', + 0x558e: b'\x11U\x8e', + 0x558f: b'\x11U\x8f', + 0x5590: b'\x11U\x90', + 0x5591: b'\x11U\x91', + 0x5592: b'\x11U\x92', + 0x5593: b'\x11U\x93', + 0x5594: b'\x11U\x94', + 0x5595: b'\x11U\x95', + 0x5596: b'\x11U\x96', + 0x5597: b'\x11U\x97', + 0x5598: b'\x11U\x98', + 0x5599: b'\x11U\x99', + 0x559a: b'\x11U\x9a', + 0x559b: b'\x11U\x9b', + 0x559c: b'\x11U\x9c', + 0x559d: b'\x11U\x9d', + 0x559e: b'\x11U\x9e', + 0x559f: b'\x11U\x9f', + 0x55a0: b'\x11U\xa0', + 0x55a1: b'\x11U\xa1', + 0x55a2: b'\x11U\xa2', + 0x55a3: b'\x11U\xa3', + 0x55a4: b'\x11U\xa4', + 0x55a5: b'\x11U\xa5', + 0x55a6: b'\x11U\xa6', + 0x55a7: b'\x11U\xa7', + 0x55a8: b'\x11U\xa8', + 0x55a9: b'\x11U\xa9', + 0x55aa: b'\x11U\xaa', + 0x55ab: b'\x11U\xab', + 0x55ac: b'\x11U\xac', + 0x55ad: b'\x11U\xad', + 0x55ae: b'\x11U\xae', + 0x55af: b'\x11U\xaf', + 0x55b0: b'\x11U\xb0', + 0x55b1: b'\x11U\xb1', + 0x55b2: b'\x11U\xb2', + 0x55b3: b'\x11U\xb3', + 0x55b4: b'\x11U\xb4', + 0x55b5: b'\x11U\xb5', + 0x55b6: b'\x11U\xb6', + 0x55b7: b'\x11U\xb7', + 0x55b8: b'\x11U\xb8', + 0x55b9: b'\x11U\xb9', + 0x55ba: b'\x11U\xba', + 0x55bb: b'\x11U\xbb', + 0x55bc: b'\x11U\xbc', + 0x55bd: b'\x11U\xbd', + 0x55be: b'\x11U\xbe', + 0x55bf: b'\x11U\xbf', + 0x55c0: b'\x11U\xc0', + 0x55c1: b'\x11U\xc1', + 0x55c2: b'\x11U\xc2', + 0x55c3: b'\x11U\xc3', + 0x55c4: b'\x11U\xc4', + 0x55c5: b'\x11U\xc5', + 0x55c6: b'\x11U\xc6', + 0x55c7: b'\x11U\xc7', + 0x55c8: b'\x11U\xc8', + 0x55c9: b'\x11U\xc9', + 0x55ca: b'\x11U\xca', + 0x55cb: b'\x11U\xcb', + 0x55cc: b'\x11U\xcc', + 0x55cd: b'\x11U\xcd', + 0x55ce: b'\x11U\xce', + 0x55cf: b'\x11U\xcf', + 0x55d0: b'\x11U\xd0', + 0x55d1: b'\x11U\xd1', + 0x55d2: b'\x11U\xd2', + 0x55d3: b'\x11U\xd3', + 0x55d4: b'\x11U\xd4', + 0x55d5: b'\x11U\xd5', + 0x55d6: b'\x11U\xd6', + 0x55d7: b'\x11U\xd7', + 0x55d8: b'\x11U\xd8', + 0x55d9: b'\x11U\xd9', + 0x55da: b'\x11U\xda', + 0x55db: b'\x11U\xdb', + 0x55dc: b'\x11U\xdc', + 0x55dd: b'\x11U\xdd', + 0x55de: b'\x11U\xde', + 0x55df: b'\x11U\xdf', + 0x55e0: b'\x11U\xe0', + 0x55e1: b'\x11U\xe1', + 0x55e2: b'\x11U\xe2', + 0x55e3: b'\x11U\xe3', + 0x55e4: b'\x11U\xe4', + 0x55e5: b'\x11U\xe5', + 0x55e6: b'\x11U\xe6', + 0x55e7: b'\x11U\xe7', + 0x55e8: b'\x11U\xe8', + 0x55e9: b'\x11U\xe9', + 0x55ea: b'\x11U\xea', + 0x55eb: b'\x11U\xeb', + 0x55ec: b'\x11U\xec', + 0x55ed: b'\x11U\xed', + 0x55ee: b'\x11U\xee', + 0x55ef: b'\x11U\xef', + 0x55f0: b'\x11U\xf0', + 0x55f1: b'\x11U\xf1', + 0x55f2: b'\x11U\xf2', + 0x55f3: b'\x11U\xf3', + 0x55f4: b'\x11U\xf4', + 0x55f5: b'\x11U\xf5', + 0x55f6: b'\x11U\xf6', + 0x55f7: b'\x11U\xf7', + 0x55f8: b'\x11U\xf8', + 0x55f9: b'\x11U\xf9', + 0x55fa: b'\x11U\xfa', + 0x55fb: b'\x11U\xfb', + 0x55fc: b'\x11U\xfc', + 0x55fd: b'\x11U\xfd', + 0x55fe: b'\x11U\xfe', + 0x55ff: b'\x11U\xff', + 0x5600: b'\x11V\x00', + 0x5601: b'\x11V\x01', + 0x5602: b'\x11V\x02', + 0x5603: b'\x11V\x03', + 0x5604: b'\x11V\x04', + 0x5605: b'\x11V\x05', + 0x5606: b'\x11V\x06', + 0x5607: b'\x11V\x07', + 0x5608: b'\x11V\x08', + 0x5609: b'\x11V\t', + 0x560a: b'\x11V\n', + 0x560b: b'\x11V\x0b', + 0x560c: b'\x11V\x0c', + 0x560d: b'\x11V\r', + 0x560e: b'\x11V\x0e', + 0x560f: b'\x11V\x0f', + 0x5610: b'\x11V\x10', + 0x5611: b'\x11V\x11', + 0x5612: b'\x11V\x12', + 0x5613: b'\x11V\x13', + 0x5614: b'\x11V\x14', + 0x5615: b'\x11V\x15', + 0x5616: b'\x11V\x16', + 0x5617: b'\x11V\x17', + 0x5618: b'\x11V\x18', + 0x5619: b'\x11V\x19', + 0x561a: b'\x11V\x1a', + 0x561b: b'\x11V\x1b', + 0x561c: b'\x11V\x1c', + 0x561d: b'\x11V\x1d', + 0x561e: b'\x11V\x1e', + 0x561f: b'\x11V\x1f', + 0x5620: b'\x11V ', + 0x5621: b'\x11V!', + 0x5622: b'\x11V"', + 0x5623: b'\x11V#', + 0x5624: b'\x11V$', + 0x5625: b'\x11V%', + 0x5626: b'\x11V&', + 0x5627: b"\x11V'", + 0x5628: b'\x11V(', + 0x5629: b'\x11V)', + 0x562a: b'\x11V*', + 0x562b: b'\x11V+', + 0x562c: b'\x11V,', + 0x562d: b'\x11V-', + 0x562e: b'\x11V.', + 0x562f: b'\x11V/', + 0x5630: b'\x11V0', + 0x5631: b'\x11V1', + 0x5632: b'\x11V2', + 0x5633: b'\x11V3', + 0x5634: b'\x11V4', + 0x5635: b'\x11V5', + 0x5636: b'\x11V6', + 0x5637: b'\x11V7', + 0x5638: b'\x11V8', + 0x5639: b'\x11V9', + 0x563a: b'\x11V:', + 0x563b: b'\x11V;', + 0x563c: b'\x11V<', + 0x563d: b'\x11V=', + 0x563e: b'\x11V>', + 0x563f: b'\x11V?', + 0x5640: b'\x11V@', + 0x5641: b'\x11VA', + 0x5642: b'\x11VB', + 0x5643: b'\x11VC', + 0x5644: b'\x11VD', + 0x5645: b'\x11VE', + 0x5646: b'\x11VF', + 0x5647: b'\x11VG', + 0x5648: b'\x11VH', + 0x5649: b'\x11VI', + 0x564a: b'\x11VJ', + 0x564b: b'\x11VK', + 0x564c: b'\x11VL', + 0x564d: b'\x11VM', + 0x564e: b'\x11VN', + 0x564f: b'\x11VO', + 0x5650: b'\x11VP', + 0x5651: b'\x11VQ', + 0x5652: b'\x11VR', + 0x5653: b'\x11VS', + 0x5654: b'\x11VT', + 0x5655: b'\x11VU', + 0x5656: b'\x11VV', + 0x5657: b'\x11VW', + 0x5658: b'\x11VX', + 0x5659: b'\x11VY', + 0x565a: b'\x11VZ', + 0x565b: b'\x11V[', + 0x565c: b'\x11V\\', + 0x565d: b'\x11V]', + 0x565e: b'\x11V^', + 0x565f: b'\x11V_', + 0x5660: b'\x11V`', + 0x5661: b'\x11Va', + 0x5662: b'\x11Vb', + 0x5663: b'\x11Vc', + 0x5664: b'\x11Vd', + 0x5665: b'\x11Ve', + 0x5666: b'\x11Vf', + 0x5667: b'\x11Vg', + 0x5668: b'\x11Vh', + 0x5669: b'\x11Vi', + 0x566a: b'\x11Vj', + 0x566b: b'\x11Vk', + 0x566c: b'\x11Vl', + 0x566d: b'\x11Vm', + 0x566e: b'\x11Vn', + 0x566f: b'\x11Vo', + 0x5670: b'\x11Vp', + 0x5671: b'\x11Vq', + 0x5672: b'\x11Vr', + 0x5673: b'\x11Vs', + 0x5674: b'\x11Vt', + 0x5675: b'\x11Vu', + 0x5676: b'\x11Vv', + 0x5677: b'\x11Vw', + 0x5678: b'\x11Vx', + 0x5679: b'\x11Vy', + 0x567a: b'\x11Vz', + 0x567b: b'\x11V{', + 0x567c: b'\x11V|', + 0x567d: b'\x11V}', + 0x567e: b'\x11V~', + 0x567f: b'\x11V\x7f', + 0x5680: b'\x11V\x80', + 0x5681: b'\x11V\x81', + 0x5682: b'\x11V\x82', + 0x5683: b'\x11V\x83', + 0x5684: b'\x11V\x84', + 0x5685: b'\x11V\x85', + 0x5686: b'\x11V\x86', + 0x5687: b'\x11V\x87', + 0x5688: b'\x11V\x88', + 0x5689: b'\x11V\x89', + 0x568a: b'\x11V\x8a', + 0x568b: b'\x11V\x8b', + 0x568c: b'\x11V\x8c', + 0x568d: b'\x11V\x8d', + 0x568e: b'\x11V\x8e', + 0x568f: b'\x11V\x8f', + 0x5690: b'\x11V\x90', + 0x5691: b'\x11V\x91', + 0x5692: b'\x11V\x92', + 0x5693: b'\x11V\x93', + 0x5694: b'\x11V\x94', + 0x5695: b'\x11V\x95', + 0x5696: b'\x11V\x96', + 0x5697: b'\x11V\x97', + 0x5698: b'\x11V\x98', + 0x5699: b'\x11V\x99', + 0x569a: b'\x11V\x9a', + 0x569b: b'\x11V\x9b', + 0x569c: b'\x11V\x9c', + 0x569d: b'\x11V\x9d', + 0x569e: b'\x11V\x9e', + 0x569f: b'\x11V\x9f', + 0x56a0: b'\x11V\xa0', + 0x56a1: b'\x11V\xa1', + 0x56a2: b'\x11V\xa2', + 0x56a3: b'\x11V\xa3', + 0x56a4: b'\x11V\xa4', + 0x56a5: b'\x11V\xa5', + 0x56a6: b'\x11V\xa6', + 0x56a7: b'\x11V\xa7', + 0x56a8: b'\x11V\xa8', + 0x56a9: b'\x11V\xa9', + 0x56aa: b'\x11V\xaa', + 0x56ab: b'\x11V\xab', + 0x56ac: b'\x11V\xac', + 0x56ad: b'\x11V\xad', + 0x56ae: b'\x11V\xae', + 0x56af: b'\x11V\xaf', + 0x56b0: b'\x11V\xb0', + 0x56b1: b'\x11V\xb1', + 0x56b2: b'\x11V\xb2', + 0x56b3: b'\x11V\xb3', + 0x56b4: b'\x11V\xb4', + 0x56b5: b'\x11V\xb5', + 0x56b6: b'\x11V\xb6', + 0x56b7: b'\x11V\xb7', + 0x56b8: b'\x11V\xb8', + 0x56b9: b'\x11V\xb9', + 0x56ba: b'\x11V\xba', + 0x56bb: b'\x11V\xbb', + 0x56bc: b'\x11V\xbc', + 0x56bd: b'\x11V\xbd', + 0x56be: b'\x11V\xbe', + 0x56bf: b'\x11V\xbf', + 0x56c0: b'\x11V\xc0', + 0x56c1: b'\x11V\xc1', + 0x56c2: b'\x11V\xc2', + 0x56c3: b'\x11V\xc3', + 0x56c4: b'\x11V\xc4', + 0x56c5: b'\x11V\xc5', + 0x56c6: b'\x11V\xc6', + 0x56c7: b'\x11V\xc7', + 0x56c8: b'\x11V\xc8', + 0x56c9: b'\x11V\xc9', + 0x56ca: b'\x11V\xca', + 0x56cb: b'\x11V\xcb', + 0x56cc: b'\x11V\xcc', + 0x56cd: b'\x11V\xcd', + 0x56ce: b'\x11V\xce', + 0x56cf: b'\x11V\xcf', + 0x56d0: b'\x11V\xd0', + 0x56d1: b'\x11V\xd1', + 0x56d2: b'\x11V\xd2', + 0x56d3: b'\x11V\xd3', + 0x56d4: b'\x11V\xd4', + 0x56d5: b'\x11V\xd5', + 0x56d6: b'\x11V\xd6', + 0x56d7: b'\x11V\xd7', + 0x56d8: b'\x11V\xd8', + 0x56d9: b'\x11V\xd9', + 0x56da: b'\x11V\xda', + 0x56db: b'\x11V\xdb', + 0x56dc: b'\x11V\xdc', + 0x56dd: b'\x11V\xdd', + 0x56de: b'\x11V\xde', + 0x56df: b'\x11V\xdf', + 0x56e0: b'\x11V\xe0', + 0x56e1: b'\x11V\xe1', + 0x56e2: b'\x11V\xe2', + 0x56e3: b'\x11V\xe3', + 0x56e4: b'\x11V\xe4', + 0x56e5: b'\x11V\xe5', + 0x56e6: b'\x11V\xe6', + 0x56e7: b'\x11V\xe7', + 0x56e8: b'\x11V\xe8', + 0x56e9: b'\x11V\xe9', + 0x56ea: b'\x11V\xea', + 0x56eb: b'\x11V\xeb', + 0x56ec: b'\x11V\xec', + 0x56ed: b'\x11V\xed', + 0x56ee: b'\x11V\xee', + 0x56ef: b'\x11V\xef', + 0x56f0: b'\x11V\xf0', + 0x56f1: b'\x11V\xf1', + 0x56f2: b'\x11V\xf2', + 0x56f3: b'\x11V\xf3', + 0x56f4: b'\x11V\xf4', + 0x56f5: b'\x11V\xf5', + 0x56f6: b'\x11V\xf6', + 0x56f7: b'\x11V\xf7', + 0x56f8: b'\x11V\xf8', + 0x56f9: b'\x11V\xf9', + 0x56fa: b'\x11V\xfa', + 0x56fb: b'\x11V\xfb', + 0x56fc: b'\x11V\xfc', + 0x56fd: b'\x11V\xfd', + 0x56fe: b'\x11V\xfe', + 0x56ff: b'\x11V\xff', + 0x5700: b'\x11W\x00', + 0x5701: b'\x11W\x01', + 0x5702: b'\x11W\x02', + 0x5703: b'\x11W\x03', + 0x5704: b'\x11W\x04', + 0x5705: b'\x11W\x05', + 0x5706: b'\x11W\x06', + 0x5707: b'\x11W\x07', + 0x5708: b'\x11W\x08', + 0x5709: b'\x11W\t', + 0x570a: b'\x11W\n', + 0x570b: b'\x11W\x0b', + 0x570c: b'\x11W\x0c', + 0x570d: b'\x11W\r', + 0x570e: b'\x11W\x0e', + 0x570f: b'\x11W\x0f', + 0x5710: b'\x11W\x10', + 0x5711: b'\x11W\x11', + 0x5712: b'\x11W\x12', + 0x5713: b'\x11W\x13', + 0x5714: b'\x11W\x14', + 0x5715: b'\x11W\x15', + 0x5716: b'\x11W\x16', + 0x5717: b'\x11W\x17', + 0x5718: b'\x11W\x18', + 0x5719: b'\x11W\x19', + 0x571a: b'\x11W\x1a', + 0x571b: b'\x11W\x1b', + 0x571c: b'\x11W\x1c', + 0x571d: b'\x11W\x1d', + 0x571e: b'\x11W\x1e', + 0x571f: b'\x11W\x1f', + 0x5720: b'\x11W ', + 0x5721: b'\x11W!', + 0x5722: b'\x11W"', + 0x5723: b'\x11W#', + 0x5724: b'\x11W$', + 0x5725: b'\x11W%', + 0x5726: b'\x11W&', + 0x5727: b"\x11W'", + 0x5728: b'\x11W(', + 0x5729: b'\x11W)', + 0x572a: b'\x11W*', + 0x572b: b'\x11W+', + 0x572c: b'\x11W,', + 0x572d: b'\x11W-', + 0x572e: b'\x11W.', + 0x572f: b'\x11W/', + 0x5730: b'\x11W0', + 0x5731: b'\x11W1', + 0x5732: b'\x11W2', + 0x5733: b'\x11W3', + 0x5734: b'\x11W4', + 0x5735: b'\x11W5', + 0x5736: b'\x11W6', + 0x5737: b'\x11W7', + 0x5738: b'\x11W8', + 0x5739: b'\x11W9', + 0x573a: b'\x11W:', + 0x573b: b'\x11W;', + 0x573c: b'\x11W<', + 0x573d: b'\x11W=', + 0x573e: b'\x11W>', + 0x573f: b'\x11W?', + 0x5740: b'\x11W@', + 0x5741: b'\x11WA', + 0x5742: b'\x11WB', + 0x5743: b'\x11WC', + 0x5744: b'\x11WD', + 0x5745: b'\x11WE', + 0x5746: b'\x11WF', + 0x5747: b'\x11WG', + 0x5748: b'\x11WH', + 0x5749: b'\x11WI', + 0x574a: b'\x11WJ', + 0x574b: b'\x11WK', + 0x574c: b'\x11WL', + 0x574d: b'\x11WM', + 0x574e: b'\x11WN', + 0x574f: b'\x11WO', + 0x5750: b'\x11WP', + 0x5751: b'\x11WQ', + 0x5752: b'\x11WR', + 0x5753: b'\x11WS', + 0x5754: b'\x11WT', + 0x5755: b'\x11WU', + 0x5756: b'\x11WV', + 0x5757: b'\x11WW', + 0x5758: b'\x11WX', + 0x5759: b'\x11WY', + 0x575a: b'\x11WZ', + 0x575b: b'\x11W[', + 0x575c: b'\x11W\\', + 0x575d: b'\x11W]', + 0x575e: b'\x11W^', + 0x575f: b'\x11W_', + 0x5760: b'\x11W`', + 0x5761: b'\x11Wa', + 0x5762: b'\x11Wb', + 0x5763: b'\x11Wc', + 0x5764: b'\x11Wd', + 0x5765: b'\x11We', + 0x5766: b'\x11Wf', + 0x5767: b'\x11Wg', + 0x5768: b'\x11Wh', + 0x5769: b'\x11Wi', + 0x576a: b'\x11Wj', + 0x576b: b'\x11Wk', + 0x576c: b'\x11Wl', + 0x576d: b'\x11Wm', + 0x576e: b'\x11Wn', + 0x576f: b'\x11Wo', + 0x5770: b'\x11Wp', + 0x5771: b'\x11Wq', + 0x5772: b'\x11Wr', + 0x5773: b'\x11Ws', + 0x5774: b'\x11Wt', + 0x5775: b'\x11Wu', + 0x5776: b'\x11Wv', + 0x5777: b'\x11Ww', + 0x5778: b'\x11Wx', + 0x5779: b'\x11Wy', + 0x577a: b'\x11Wz', + 0x577b: b'\x11W{', + 0x577c: b'\x11W|', + 0x577d: b'\x11W}', + 0x577e: b'\x11W~', + 0x577f: b'\x11W\x7f', + 0x5780: b'\x11W\x80', + 0x5781: b'\x11W\x81', + 0x5782: b'\x11W\x82', + 0x5783: b'\x11W\x83', + 0x5784: b'\x11W\x84', + 0x5785: b'\x11W\x85', + 0x5786: b'\x11W\x86', + 0x5787: b'\x11W\x87', + 0x5788: b'\x11W\x88', + 0x5789: b'\x11W\x89', + 0x578a: b'\x11W\x8a', + 0x578b: b'\x11W\x8b', + 0x578c: b'\x11W\x8c', + 0x578d: b'\x11W\x8d', + 0x578e: b'\x11W\x8e', + 0x578f: b'\x11W\x8f', + 0x5790: b'\x11W\x90', + 0x5791: b'\x11W\x91', + 0x5792: b'\x11W\x92', + 0x5793: b'\x11W\x93', + 0x5794: b'\x11W\x94', + 0x5795: b'\x11W\x95', + 0x5796: b'\x11W\x96', + 0x5797: b'\x11W\x97', + 0x5798: b'\x11W\x98', + 0x5799: b'\x11W\x99', + 0x579a: b'\x11W\x9a', + 0x579b: b'\x11W\x9b', + 0x579c: b'\x11W\x9c', + 0x579d: b'\x11W\x9d', + 0x579e: b'\x11W\x9e', + 0x579f: b'\x11W\x9f', + 0x57a0: b'\x11W\xa0', + 0x57a1: b'\x11W\xa1', + 0x57a2: b'\x11W\xa2', + 0x57a3: b'\x11W\xa3', + 0x57a4: b'\x11W\xa4', + 0x57a5: b'\x11W\xa5', + 0x57a6: b'\x11W\xa6', + 0x57a7: b'\x11W\xa7', + 0x57a8: b'\x11W\xa8', + 0x57a9: b'\x11W\xa9', + 0x57aa: b'\x11W\xaa', + 0x57ab: b'\x11W\xab', + 0x57ac: b'\x11W\xac', + 0x57ad: b'\x11W\xad', + 0x57ae: b'\x11W\xae', + 0x57af: b'\x11W\xaf', + 0x57b0: b'\x11W\xb0', + 0x57b1: b'\x11W\xb1', + 0x57b2: b'\x11W\xb2', + 0x57b3: b'\x11W\xb3', + 0x57b4: b'\x11W\xb4', + 0x57b5: b'\x11W\xb5', + 0x57b6: b'\x11W\xb6', + 0x57b7: b'\x11W\xb7', + 0x57b8: b'\x11W\xb8', + 0x57b9: b'\x11W\xb9', + 0x57ba: b'\x11W\xba', + 0x57bb: b'\x11W\xbb', + 0x57bc: b'\x11W\xbc', + 0x57bd: b'\x11W\xbd', + 0x57be: b'\x11W\xbe', + 0x57bf: b'\x11W\xbf', + 0x57c0: b'\x11W\xc0', + 0x57c1: b'\x11W\xc1', + 0x57c2: b'\x11W\xc2', + 0x57c3: b'\x11W\xc3', + 0x57c4: b'\x11W\xc4', + 0x57c5: b'\x11W\xc5', + 0x57c6: b'\x11W\xc6', + 0x57c7: b'\x11W\xc7', + 0x57c8: b'\x11W\xc8', + 0x57c9: b'\x11W\xc9', + 0x57ca: b'\x11W\xca', + 0x57cb: b'\x11W\xcb', + 0x57cc: b'\x11W\xcc', + 0x57cd: b'\x11W\xcd', + 0x57ce: b'\x11W\xce', + 0x57cf: b'\x11W\xcf', + 0x57d0: b'\x11W\xd0', + 0x57d1: b'\x11W\xd1', + 0x57d2: b'\x11W\xd2', + 0x57d3: b'\x11W\xd3', + 0x57d4: b'\x11W\xd4', + 0x57d5: b'\x11W\xd5', + 0x57d6: b'\x11W\xd6', + 0x57d7: b'\x11W\xd7', + 0x57d8: b'\x11W\xd8', + 0x57d9: b'\x11W\xd9', + 0x57da: b'\x11W\xda', + 0x57db: b'\x11W\xdb', + 0x57dc: b'\x11W\xdc', + 0x57dd: b'\x11W\xdd', + 0x57de: b'\x11W\xde', + 0x57df: b'\x11W\xdf', + 0x57e0: b'\x11W\xe0', + 0x57e1: b'\x11W\xe1', + 0x57e2: b'\x11W\xe2', + 0x57e3: b'\x11W\xe3', + 0x57e4: b'\x11W\xe4', + 0x57e5: b'\x11W\xe5', + 0x57e6: b'\x11W\xe6', + 0x57e7: b'\x11W\xe7', + 0x57e8: b'\x11W\xe8', + 0x57e9: b'\x11W\xe9', + 0x57ea: b'\x11W\xea', + 0x57eb: b'\x11W\xeb', + 0x57ec: b'\x11W\xec', + 0x57ed: b'\x11W\xed', + 0x57ee: b'\x11W\xee', + 0x57ef: b'\x11W\xef', + 0x57f0: b'\x11W\xf0', + 0x57f1: b'\x11W\xf1', + 0x57f2: b'\x11W\xf2', + 0x57f3: b'\x11W\xf3', + 0x57f4: b'\x11W\xf4', + 0x57f5: b'\x11W\xf5', + 0x57f6: b'\x11W\xf6', + 0x57f7: b'\x11W\xf7', + 0x57f8: b'\x11W\xf8', + 0x57f9: b'\x11W\xf9', + 0x57fa: b'\x11W\xfa', + 0x57fb: b'\x11W\xfb', + 0x57fc: b'\x11W\xfc', + 0x57fd: b'\x11W\xfd', + 0x57fe: b'\x11W\xfe', + 0x57ff: b'\x11W\xff', + 0x5800: b'\x11X\x00', + 0x5801: b'\x11X\x01', + 0x5802: b'\x11X\x02', + 0x5803: b'\x11X\x03', + 0x5804: b'\x11X\x04', + 0x5805: b'\x11X\x05', + 0x5806: b'\x11X\x06', + 0x5807: b'\x11X\x07', + 0x5808: b'\x11X\x08', + 0x5809: b'\x11X\t', + 0x580a: b'\x11X\n', + 0x580b: b'\x11X\x0b', + 0x580c: b'\x11X\x0c', + 0x580d: b'\x11X\r', + 0x580e: b'\x11X\x0e', + 0x580f: b'\x11X\x0f', + 0x5810: b'\x11X\x10', + 0x5811: b'\x11X\x11', + 0x5812: b'\x11X\x12', + 0x5813: b'\x11X\x13', + 0x5814: b'\x11X\x14', + 0x5815: b'\x11X\x15', + 0x5816: b'\x11X\x16', + 0x5817: b'\x11X\x17', + 0x5818: b'\x11X\x18', + 0x5819: b'\x11X\x19', + 0x581a: b'\x11X\x1a', + 0x581b: b'\x11X\x1b', + 0x581c: b'\x11X\x1c', + 0x581d: b'\x11X\x1d', + 0x581e: b'\x11X\x1e', + 0x581f: b'\x11X\x1f', + 0x5820: b'\x11X ', + 0x5821: b'\x11X!', + 0x5822: b'\x11X"', + 0x5823: b'\x11X#', + 0x5824: b'\x11X$', + 0x5825: b'\x11X%', + 0x5826: b'\x11X&', + 0x5827: b"\x11X'", + 0x5828: b'\x11X(', + 0x5829: b'\x11X)', + 0x582a: b'\x11X*', + 0x582b: b'\x11X+', + 0x582c: b'\x11X,', + 0x582d: b'\x11X-', + 0x582e: b'\x11X.', + 0x582f: b'\x11X/', + 0x5830: b'\x11X0', + 0x5831: b'\x11X1', + 0x5832: b'\x11X2', + 0x5833: b'\x11X3', + 0x5834: b'\x11X4', + 0x5835: b'\x11X5', + 0x5836: b'\x11X6', + 0x5837: b'\x11X7', + 0x5838: b'\x11X8', + 0x5839: b'\x11X9', + 0x583a: b'\x11X:', + 0x583b: b'\x11X;', + 0x583c: b'\x11X<', + 0x583d: b'\x11X=', + 0x583e: b'\x11X>', + 0x583f: b'\x11X?', + 0x5840: b'\x11X@', + 0x5841: b'\x11XA', + 0x5842: b'\x11XB', + 0x5843: b'\x11XC', + 0x5844: b'\x11XD', + 0x5845: b'\x11XE', + 0x5846: b'\x11XF', + 0x5847: b'\x11XG', + 0x5848: b'\x11XH', + 0x5849: b'\x11XI', + 0x584a: b'\x11XJ', + 0x584b: b'\x11XK', + 0x584c: b'\x11XL', + 0x584d: b'\x11XM', + 0x584e: b'\x11XN', + 0x584f: b'\x11XO', + 0x5850: b'\x11XP', + 0x5851: b'\x11XQ', + 0x5852: b'\x11XR', + 0x5853: b'\x11XS', + 0x5854: b'\x11XT', + 0x5855: b'\x11XU', + 0x5856: b'\x11XV', + 0x5857: b'\x11XW', + 0x5858: b'\x11XX', + 0x5859: b'\x11XY', + 0x585a: b'\x11XZ', + 0x585b: b'\x11X[', + 0x585c: b'\x11X\\', + 0x585d: b'\x11X]', + 0x585e: b'\x11X^', + 0x585f: b'\x11X_', + 0x5860: b'\x11X`', + 0x5861: b'\x11Xa', + 0x5862: b'\x11Xb', + 0x5863: b'\x11Xc', + 0x5864: b'\x11Xd', + 0x5865: b'\x11Xe', + 0x5866: b'\x11Xf', + 0x5867: b'\x11Xg', + 0x5868: b'\x11Xh', + 0x5869: b'\x11Xi', + 0x586a: b'\x11Xj', + 0x586b: b'\x11Xk', + 0x586c: b'\x11Xl', + 0x586d: b'\x11Xm', + 0x586e: b'\x11Xn', + 0x586f: b'\x11Xo', + 0x5870: b'\x11Xp', + 0x5871: b'\x11Xq', + 0x5872: b'\x11Xr', + 0x5873: b'\x11Xs', + 0x5874: b'\x11Xt', + 0x5875: b'\x11Xu', + 0x5876: b'\x11Xv', + 0x5877: b'\x11Xw', + 0x5878: b'\x11Xx', + 0x5879: b'\x11Xy', + 0x587a: b'\x11Xz', + 0x587b: b'\x11X{', + 0x587c: b'\x11X|', + 0x587d: b'\x11X}', + 0x587e: b'\x11X~', + 0x587f: b'\x11X\x7f', + 0x5880: b'\x11X\x80', + 0x5881: b'\x11X\x81', + 0x5882: b'\x11X\x82', + 0x5883: b'\x11X\x83', + 0x5884: b'\x11X\x84', + 0x5885: b'\x11X\x85', + 0x5886: b'\x11X\x86', + 0x5887: b'\x11X\x87', + 0x5888: b'\x11X\x88', + 0x5889: b'\x11X\x89', + 0x588a: b'\x11X\x8a', + 0x588b: b'\x11X\x8b', + 0x588c: b'\x11X\x8c', + 0x588d: b'\x11X\x8d', + 0x588e: b'\x11X\x8e', + 0x588f: b'\x11X\x8f', + 0x5890: b'\x11X\x90', + 0x5891: b'\x11X\x91', + 0x5892: b'\x11X\x92', + 0x5893: b'\x11X\x93', + 0x5894: b'\x11X\x94', + 0x5895: b'\x11X\x95', + 0x5896: b'\x11X\x96', + 0x5897: b'\x11X\x97', + 0x5898: b'\x11X\x98', + 0x5899: b'\x11X\x99', + 0x589a: b'\x11X\x9a', + 0x589b: b'\x11X\x9b', + 0x589c: b'\x11X\x9c', + 0x589d: b'\x11X\x9d', + 0x589e: b'\x11X\x9e', + 0x589f: b'\x11X\x9f', + 0x58a0: b'\x11X\xa0', + 0x58a1: b'\x11X\xa1', + 0x58a2: b'\x11X\xa2', + 0x58a3: b'\x11X\xa3', + 0x58a4: b'\x11X\xa4', + 0x58a5: b'\x11X\xa5', + 0x58a6: b'\x11X\xa6', + 0x58a7: b'\x11X\xa7', + 0x58a8: b'\x11X\xa8', + 0x58a9: b'\x11X\xa9', + 0x58aa: b'\x11X\xaa', + 0x58ab: b'\x11X\xab', + 0x58ac: b'\x11X\xac', + 0x58ad: b'\x11X\xad', + 0x58ae: b'\x11X\xae', + 0x58af: b'\x11X\xaf', + 0x58b0: b'\x11X\xb0', + 0x58b1: b'\x11X\xb1', + 0x58b2: b'\x11X\xb2', + 0x58b3: b'\x11X\xb3', + 0x58b4: b'\x11X\xb4', + 0x58b5: b'\x11X\xb5', + 0x58b6: b'\x11X\xb6', + 0x58b7: b'\x11X\xb7', + 0x58b8: b'\x11X\xb8', + 0x58b9: b'\x11X\xb9', + 0x58ba: b'\x11X\xba', + 0x58bb: b'\x11X\xbb', + 0x58bc: b'\x11X\xbc', + 0x58bd: b'\x11X\xbd', + 0x58be: b'\x11X\xbe', + 0x58bf: b'\x11X\xbf', + 0x58c0: b'\x11X\xc0', + 0x58c1: b'\x11X\xc1', + 0x58c2: b'\x11X\xc2', + 0x58c3: b'\x11X\xc3', + 0x58c4: b'\x11X\xc4', + 0x58c5: b'\x11X\xc5', + 0x58c6: b'\x11X\xc6', + 0x58c7: b'\x11X\xc7', + 0x58c8: b'\x11X\xc8', + 0x58c9: b'\x11X\xc9', + 0x58ca: b'\x11X\xca', + 0x58cb: b'\x11X\xcb', + 0x58cc: b'\x11X\xcc', + 0x58cd: b'\x11X\xcd', + 0x58ce: b'\x11X\xce', + 0x58cf: b'\x11X\xcf', + 0x58d0: b'\x11X\xd0', + 0x58d1: b'\x11X\xd1', + 0x58d2: b'\x11X\xd2', + 0x58d3: b'\x11X\xd3', + 0x58d4: b'\x11X\xd4', + 0x58d5: b'\x11X\xd5', + 0x58d6: b'\x11X\xd6', + 0x58d7: b'\x11X\xd7', + 0x58d8: b'\x11X\xd8', + 0x58d9: b'\x11X\xd9', + 0x58da: b'\x11X\xda', + 0x58db: b'\x11X\xdb', + 0x58dc: b'\x11X\xdc', + 0x58dd: b'\x11X\xdd', + 0x58de: b'\x11X\xde', + 0x58df: b'\x11X\xdf', + 0x58e0: b'\x11X\xe0', + 0x58e1: b'\x11X\xe1', + 0x58e2: b'\x11X\xe2', + 0x58e3: b'\x11X\xe3', + 0x58e4: b'\x11X\xe4', + 0x58e5: b'\x11X\xe5', + 0x58e6: b'\x11X\xe6', + 0x58e7: b'\x11X\xe7', + 0x58e8: b'\x11X\xe8', + 0x58e9: b'\x11X\xe9', + 0x58ea: b'\x11X\xea', + 0x58eb: b'\x11X\xeb', + 0x58ec: b'\x11X\xec', + 0x58ed: b'\x11X\xed', + 0x58ee: b'\x11X\xee', + 0x58ef: b'\x11X\xef', + 0x58f0: b'\x11X\xf0', + 0x58f1: b'\x11X\xf1', + 0x58f2: b'\x11X\xf2', + 0x58f3: b'\x11X\xf3', + 0x58f4: b'\x11X\xf4', + 0x58f5: b'\x11X\xf5', + 0x58f6: b'\x11X\xf6', + 0x58f7: b'\x11X\xf7', + 0x58f8: b'\x11X\xf8', + 0x58f9: b'\x11X\xf9', + 0x58fa: b'\x11X\xfa', + 0x58fb: b'\x11X\xfb', + 0x58fc: b'\x11X\xfc', + 0x58fd: b'\x11X\xfd', + 0x58fe: b'\x11X\xfe', + 0x58ff: b'\x11X\xff', + 0x5900: b'\x11Y\x00', + 0x5901: b'\x11Y\x01', + 0x5902: b'\x11Y\x02', + 0x5903: b'\x11Y\x03', + 0x5904: b'\x11Y\x04', + 0x5905: b'\x11Y\x05', + 0x5906: b'\x11Y\x06', + 0x5907: b'\x11Y\x07', + 0x5908: b'\x11Y\x08', + 0x5909: b'\x11Y\t', + 0x590a: b'\x11Y\n', + 0x590b: b'\x11Y\x0b', + 0x590c: b'\x11Y\x0c', + 0x590d: b'\x11Y\r', + 0x590e: b'\x11Y\x0e', + 0x590f: b'\x11Y\x0f', + 0x5910: b'\x11Y\x10', + 0x5911: b'\x11Y\x11', + 0x5912: b'\x11Y\x12', + 0x5913: b'\x11Y\x13', + 0x5914: b'\x11Y\x14', + 0x5915: b'\x11Y\x15', + 0x5916: b'\x11Y\x16', + 0x5917: b'\x11Y\x17', + 0x5918: b'\x11Y\x18', + 0x5919: b'\x11Y\x19', + 0x591a: b'\x11Y\x1a', + 0x591b: b'\x11Y\x1b', + 0x591c: b'\x11Y\x1c', + 0x591d: b'\x11Y\x1d', + 0x591e: b'\x11Y\x1e', + 0x591f: b'\x11Y\x1f', + 0x5920: b'\x11Y ', + 0x5921: b'\x11Y!', + 0x5922: b'\x11Y"', + 0x5923: b'\x11Y#', + 0x5924: b'\x11Y$', + 0x5925: b'\x11Y%', + 0x5926: b'\x11Y&', + 0x5927: b"\x11Y'", + 0x5928: b'\x11Y(', + 0x5929: b'\x11Y)', + 0x592a: b'\x11Y*', + 0x592b: b'\x11Y+', + 0x592c: b'\x11Y,', + 0x592d: b'\x11Y-', + 0x592e: b'\x11Y.', + 0x592f: b'\x11Y/', + 0x5930: b'\x11Y0', + 0x5931: b'\x11Y1', + 0x5932: b'\x11Y2', + 0x5933: b'\x11Y3', + 0x5934: b'\x11Y4', + 0x5935: b'\x11Y5', + 0x5936: b'\x11Y6', + 0x5937: b'\x11Y7', + 0x5938: b'\x11Y8', + 0x5939: b'\x11Y9', + 0x593a: b'\x11Y:', + 0x593b: b'\x11Y;', + 0x593c: b'\x11Y<', + 0x593d: b'\x11Y=', + 0x593e: b'\x11Y>', + 0x593f: b'\x11Y?', + 0x5940: b'\x11Y@', + 0x5941: b'\x11YA', + 0x5942: b'\x11YB', + 0x5943: b'\x11YC', + 0x5944: b'\x11YD', + 0x5945: b'\x11YE', + 0x5946: b'\x11YF', + 0x5947: b'\x11YG', + 0x5948: b'\x11YH', + 0x5949: b'\x11YI', + 0x594a: b'\x11YJ', + 0x594b: b'\x11YK', + 0x594c: b'\x11YL', + 0x594d: b'\x11YM', + 0x594e: b'\x11YN', + 0x594f: b'\x11YO', + 0x5950: b'\x11YP', + 0x5951: b'\x11YQ', + 0x5952: b'\x11YR', + 0x5953: b'\x11YS', + 0x5954: b'\x11YT', + 0x5955: b'\x11YU', + 0x5956: b'\x11YV', + 0x5957: b'\x11YW', + 0x5958: b'\x11YX', + 0x5959: b'\x11YY', + 0x595a: b'\x11YZ', + 0x595b: b'\x11Y[', + 0x595c: b'\x11Y\\', + 0x595d: b'\x11Y]', + 0x595e: b'\x11Y^', + 0x595f: b'\x11Y_', + 0x5960: b'\x11Y`', + 0x5961: b'\x11Ya', + 0x5962: b'\x11Yb', + 0x5963: b'\x11Yc', + 0x5964: b'\x11Yd', + 0x5965: b'\x11Ye', + 0x5966: b'\x11Yf', + 0x5967: b'\x11Yg', + 0x5968: b'\x11Yh', + 0x5969: b'\x11Yi', + 0x596a: b'\x11Yj', + 0x596b: b'\x11Yk', + 0x596c: b'\x11Yl', + 0x596d: b'\x11Ym', + 0x596e: b'\x11Yn', + 0x596f: b'\x11Yo', + 0x5970: b'\x11Yp', + 0x5971: b'\x11Yq', + 0x5972: b'\x11Yr', + 0x5973: b'\x11Ys', + 0x5974: b'\x11Yt', + 0x5975: b'\x11Yu', + 0x5976: b'\x11Yv', + 0x5977: b'\x11Yw', + 0x5978: b'\x11Yx', + 0x5979: b'\x11Yy', + 0x597a: b'\x11Yz', + 0x597b: b'\x11Y{', + 0x597c: b'\x11Y|', + 0x597d: b'\x11Y}', + 0x597e: b'\x11Y~', + 0x597f: b'\x11Y\x7f', + 0x5980: b'\x11Y\x80', + 0x5981: b'\x11Y\x81', + 0x5982: b'\x11Y\x82', + 0x5983: b'\x11Y\x83', + 0x5984: b'\x11Y\x84', + 0x5985: b'\x11Y\x85', + 0x5986: b'\x11Y\x86', + 0x5987: b'\x11Y\x87', + 0x5988: b'\x11Y\x88', + 0x5989: b'\x11Y\x89', + 0x598a: b'\x11Y\x8a', + 0x598b: b'\x11Y\x8b', + 0x598c: b'\x11Y\x8c', + 0x598d: b'\x11Y\x8d', + 0x598e: b'\x11Y\x8e', + 0x598f: b'\x11Y\x8f', + 0x5990: b'\x11Y\x90', + 0x5991: b'\x11Y\x91', + 0x5992: b'\x11Y\x92', + 0x5993: b'\x11Y\x93', + 0x5994: b'\x11Y\x94', + 0x5995: b'\x11Y\x95', + 0x5996: b'\x11Y\x96', + 0x5997: b'\x11Y\x97', + 0x5998: b'\x11Y\x98', + 0x5999: b'\x11Y\x99', + 0x599a: b'\x11Y\x9a', + 0x599b: b'\x11Y\x9b', + 0x599c: b'\x11Y\x9c', + 0x599d: b'\x11Y\x9d', + 0x599e: b'\x11Y\x9e', + 0x599f: b'\x11Y\x9f', + 0x59a0: b'\x11Y\xa0', + 0x59a1: b'\x11Y\xa1', + 0x59a2: b'\x11Y\xa2', + 0x59a3: b'\x11Y\xa3', + 0x59a4: b'\x11Y\xa4', + 0x59a5: b'\x11Y\xa5', + 0x59a6: b'\x11Y\xa6', + 0x59a7: b'\x11Y\xa7', + 0x59a8: b'\x11Y\xa8', + 0x59a9: b'\x11Y\xa9', + 0x59aa: b'\x11Y\xaa', + 0x59ab: b'\x11Y\xab', + 0x59ac: b'\x11Y\xac', + 0x59ad: b'\x11Y\xad', + 0x59ae: b'\x11Y\xae', + 0x59af: b'\x11Y\xaf', + 0x59b0: b'\x11Y\xb0', + 0x59b1: b'\x11Y\xb1', + 0x59b2: b'\x11Y\xb2', + 0x59b3: b'\x11Y\xb3', + 0x59b4: b'\x11Y\xb4', + 0x59b5: b'\x11Y\xb5', + 0x59b6: b'\x11Y\xb6', + 0x59b7: b'\x11Y\xb7', + 0x59b8: b'\x11Y\xb8', + 0x59b9: b'\x11Y\xb9', + 0x59ba: b'\x11Y\xba', + 0x59bb: b'\x11Y\xbb', + 0x59bc: b'\x11Y\xbc', + 0x59bd: b'\x11Y\xbd', + 0x59be: b'\x11Y\xbe', + 0x59bf: b'\x11Y\xbf', + 0x59c0: b'\x11Y\xc0', + 0x59c1: b'\x11Y\xc1', + 0x59c2: b'\x11Y\xc2', + 0x59c3: b'\x11Y\xc3', + 0x59c4: b'\x11Y\xc4', + 0x59c5: b'\x11Y\xc5', + 0x59c6: b'\x11Y\xc6', + 0x59c7: b'\x11Y\xc7', + 0x59c8: b'\x11Y\xc8', + 0x59c9: b'\x11Y\xc9', + 0x59ca: b'\x11Y\xca', + 0x59cb: b'\x11Y\xcb', + 0x59cc: b'\x11Y\xcc', + 0x59cd: b'\x11Y\xcd', + 0x59ce: b'\x11Y\xce', + 0x59cf: b'\x11Y\xcf', + 0x59d0: b'\x11Y\xd0', + 0x59d1: b'\x11Y\xd1', + 0x59d2: b'\x11Y\xd2', + 0x59d3: b'\x11Y\xd3', + 0x59d4: b'\x11Y\xd4', + 0x59d5: b'\x11Y\xd5', + 0x59d6: b'\x11Y\xd6', + 0x59d7: b'\x11Y\xd7', + 0x59d8: b'\x11Y\xd8', + 0x59d9: b'\x11Y\xd9', + 0x59da: b'\x11Y\xda', + 0x59db: b'\x11Y\xdb', + 0x59dc: b'\x11Y\xdc', + 0x59dd: b'\x11Y\xdd', + 0x59de: b'\x11Y\xde', + 0x59df: b'\x11Y\xdf', + 0x59e0: b'\x11Y\xe0', + 0x59e1: b'\x11Y\xe1', + 0x59e2: b'\x11Y\xe2', + 0x59e3: b'\x11Y\xe3', + 0x59e4: b'\x11Y\xe4', + 0x59e5: b'\x11Y\xe5', + 0x59e6: b'\x11Y\xe6', + 0x59e7: b'\x11Y\xe7', + 0x59e8: b'\x11Y\xe8', + 0x59e9: b'\x11Y\xe9', + 0x59ea: b'\x11Y\xea', + 0x59eb: b'\x11Y\xeb', + 0x59ec: b'\x11Y\xec', + 0x59ed: b'\x11Y\xed', + 0x59ee: b'\x11Y\xee', + 0x59ef: b'\x11Y\xef', + 0x59f0: b'\x11Y\xf0', + 0x59f1: b'\x11Y\xf1', + 0x59f2: b'\x11Y\xf2', + 0x59f3: b'\x11Y\xf3', + 0x59f4: b'\x11Y\xf4', + 0x59f5: b'\x11Y\xf5', + 0x59f6: b'\x11Y\xf6', + 0x59f7: b'\x11Y\xf7', + 0x59f8: b'\x11Y\xf8', + 0x59f9: b'\x11Y\xf9', + 0x59fa: b'\x11Y\xfa', + 0x59fb: b'\x11Y\xfb', + 0x59fc: b'\x11Y\xfc', + 0x59fd: b'\x11Y\xfd', + 0x59fe: b'\x11Y\xfe', + 0x59ff: b'\x11Y\xff', + 0x5a00: b'\x11Z\x00', + 0x5a01: b'\x11Z\x01', + 0x5a02: b'\x11Z\x02', + 0x5a03: b'\x11Z\x03', + 0x5a04: b'\x11Z\x04', + 0x5a05: b'\x11Z\x05', + 0x5a06: b'\x11Z\x06', + 0x5a07: b'\x11Z\x07', + 0x5a08: b'\x11Z\x08', + 0x5a09: b'\x11Z\t', + 0x5a0a: b'\x11Z\n', + 0x5a0b: b'\x11Z\x0b', + 0x5a0c: b'\x11Z\x0c', + 0x5a0d: b'\x11Z\r', + 0x5a0e: b'\x11Z\x0e', + 0x5a0f: b'\x11Z\x0f', + 0x5a10: b'\x11Z\x10', + 0x5a11: b'\x11Z\x11', + 0x5a12: b'\x11Z\x12', + 0x5a13: b'\x11Z\x13', + 0x5a14: b'\x11Z\x14', + 0x5a15: b'\x11Z\x15', + 0x5a16: b'\x11Z\x16', + 0x5a17: b'\x11Z\x17', + 0x5a18: b'\x11Z\x18', + 0x5a19: b'\x11Z\x19', + 0x5a1a: b'\x11Z\x1a', + 0x5a1b: b'\x11Z\x1b', + 0x5a1c: b'\x11Z\x1c', + 0x5a1d: b'\x11Z\x1d', + 0x5a1e: b'\x11Z\x1e', + 0x5a1f: b'\x11Z\x1f', + 0x5a20: b'\x11Z ', + 0x5a21: b'\x11Z!', + 0x5a22: b'\x11Z"', + 0x5a23: b'\x11Z#', + 0x5a24: b'\x11Z$', + 0x5a25: b'\x11Z%', + 0x5a26: b'\x11Z&', + 0x5a27: b"\x11Z'", + 0x5a28: b'\x11Z(', + 0x5a29: b'\x11Z)', + 0x5a2a: b'\x11Z*', + 0x5a2b: b'\x11Z+', + 0x5a2c: b'\x11Z,', + 0x5a2d: b'\x11Z-', + 0x5a2e: b'\x11Z.', + 0x5a2f: b'\x11Z/', + 0x5a30: b'\x11Z0', + 0x5a31: b'\x11Z1', + 0x5a32: b'\x11Z2', + 0x5a33: b'\x11Z3', + 0x5a34: b'\x11Z4', + 0x5a35: b'\x11Z5', + 0x5a36: b'\x11Z6', + 0x5a37: b'\x11Z7', + 0x5a38: b'\x11Z8', + 0x5a39: b'\x11Z9', + 0x5a3a: b'\x11Z:', + 0x5a3b: b'\x11Z;', + 0x5a3c: b'\x11Z<', + 0x5a3d: b'\x11Z=', + 0x5a3e: b'\x11Z>', + 0x5a3f: b'\x11Z?', + 0x5a40: b'\x11Z@', + 0x5a41: b'\x11ZA', + 0x5a42: b'\x11ZB', + 0x5a43: b'\x11ZC', + 0x5a44: b'\x11ZD', + 0x5a45: b'\x11ZE', + 0x5a46: b'\x11ZF', + 0x5a47: b'\x11ZG', + 0x5a48: b'\x11ZH', + 0x5a49: b'\x11ZI', + 0x5a4a: b'\x11ZJ', + 0x5a4b: b'\x11ZK', + 0x5a4c: b'\x11ZL', + 0x5a4d: b'\x11ZM', + 0x5a4e: b'\x11ZN', + 0x5a4f: b'\x11ZO', + 0x5a50: b'\x11ZP', + 0x5a51: b'\x11ZQ', + 0x5a52: b'\x11ZR', + 0x5a53: b'\x11ZS', + 0x5a54: b'\x11ZT', + 0x5a55: b'\x11ZU', + 0x5a56: b'\x11ZV', + 0x5a57: b'\x11ZW', + 0x5a58: b'\x11ZX', + 0x5a59: b'\x11ZY', + 0x5a5a: b'\x11ZZ', + 0x5a5b: b'\x11Z[', + 0x5a5c: b'\x11Z\\', + 0x5a5d: b'\x11Z]', + 0x5a5e: b'\x11Z^', + 0x5a5f: b'\x11Z_', + 0x5a60: b'\x11Z`', + 0x5a61: b'\x11Za', + 0x5a62: b'\x11Zb', + 0x5a63: b'\x11Zc', + 0x5a64: b'\x11Zd', + 0x5a65: b'\x11Ze', + 0x5a66: b'\x11Zf', + 0x5a67: b'\x11Zg', + 0x5a68: b'\x11Zh', + 0x5a69: b'\x11Zi', + 0x5a6a: b'\x11Zj', + 0x5a6b: b'\x11Zk', + 0x5a6c: b'\x11Zl', + 0x5a6d: b'\x11Zm', + 0x5a6e: b'\x11Zn', + 0x5a6f: b'\x11Zo', + 0x5a70: b'\x11Zp', + 0x5a71: b'\x11Zq', + 0x5a72: b'\x11Zr', + 0x5a73: b'\x11Zs', + 0x5a74: b'\x11Zt', + 0x5a75: b'\x11Zu', + 0x5a76: b'\x11Zv', + 0x5a77: b'\x11Zw', + 0x5a78: b'\x11Zx', + 0x5a79: b'\x11Zy', + 0x5a7a: b'\x11Zz', + 0x5a7b: b'\x11Z{', + 0x5a7c: b'\x11Z|', + 0x5a7d: b'\x11Z}', + 0x5a7e: b'\x11Z~', + 0x5a7f: b'\x11Z\x7f', + 0x5a80: b'\x11Z\x80', + 0x5a81: b'\x11Z\x81', + 0x5a82: b'\x11Z\x82', + 0x5a83: b'\x11Z\x83', + 0x5a84: b'\x11Z\x84', + 0x5a85: b'\x11Z\x85', + 0x5a86: b'\x11Z\x86', + 0x5a87: b'\x11Z\x87', + 0x5a88: b'\x11Z\x88', + 0x5a89: b'\x11Z\x89', + 0x5a8a: b'\x11Z\x8a', + 0x5a8b: b'\x11Z\x8b', + 0x5a8c: b'\x11Z\x8c', + 0x5a8d: b'\x11Z\x8d', + 0x5a8e: b'\x11Z\x8e', + 0x5a8f: b'\x11Z\x8f', + 0x5a90: b'\x11Z\x90', + 0x5a91: b'\x11Z\x91', + 0x5a92: b'\x11Z\x92', + 0x5a93: b'\x11Z\x93', + 0x5a94: b'\x11Z\x94', + 0x5a95: b'\x11Z\x95', + 0x5a96: b'\x11Z\x96', + 0x5a97: b'\x11Z\x97', + 0x5a98: b'\x11Z\x98', + 0x5a99: b'\x11Z\x99', + 0x5a9a: b'\x11Z\x9a', + 0x5a9b: b'\x11Z\x9b', + 0x5a9c: b'\x11Z\x9c', + 0x5a9d: b'\x11Z\x9d', + 0x5a9e: b'\x11Z\x9e', + 0x5a9f: b'\x11Z\x9f', + 0x5aa0: b'\x11Z\xa0', + 0x5aa1: b'\x11Z\xa1', + 0x5aa2: b'\x11Z\xa2', + 0x5aa3: b'\x11Z\xa3', + 0x5aa4: b'\x11Z\xa4', + 0x5aa5: b'\x11Z\xa5', + 0x5aa6: b'\x11Z\xa6', + 0x5aa7: b'\x11Z\xa7', + 0x5aa8: b'\x11Z\xa8', + 0x5aa9: b'\x11Z\xa9', + 0x5aaa: b'\x11Z\xaa', + 0x5aab: b'\x11Z\xab', + 0x5aac: b'\x11Z\xac', + 0x5aad: b'\x11Z\xad', + 0x5aae: b'\x11Z\xae', + 0x5aaf: b'\x11Z\xaf', + 0x5ab0: b'\x11Z\xb0', + 0x5ab1: b'\x11Z\xb1', + 0x5ab2: b'\x11Z\xb2', + 0x5ab3: b'\x11Z\xb3', + 0x5ab4: b'\x11Z\xb4', + 0x5ab5: b'\x11Z\xb5', + 0x5ab6: b'\x11Z\xb6', + 0x5ab7: b'\x11Z\xb7', + 0x5ab8: b'\x11Z\xb8', + 0x5ab9: b'\x11Z\xb9', + 0x5aba: b'\x11Z\xba', + 0x5abb: b'\x11Z\xbb', + 0x5abc: b'\x11Z\xbc', + 0x5abd: b'\x11Z\xbd', + 0x5abe: b'\x11Z\xbe', + 0x5abf: b'\x11Z\xbf', + 0x5ac0: b'\x11Z\xc0', + 0x5ac1: b'\x11Z\xc1', + 0x5ac2: b'\x11Z\xc2', + 0x5ac3: b'\x11Z\xc3', + 0x5ac4: b'\x11Z\xc4', + 0x5ac5: b'\x11Z\xc5', + 0x5ac6: b'\x11Z\xc6', + 0x5ac7: b'\x11Z\xc7', + 0x5ac8: b'\x11Z\xc8', + 0x5ac9: b'\x11Z\xc9', + 0x5aca: b'\x11Z\xca', + 0x5acb: b'\x11Z\xcb', + 0x5acc: b'\x11Z\xcc', + 0x5acd: b'\x11Z\xcd', + 0x5ace: b'\x11Z\xce', + 0x5acf: b'\x11Z\xcf', + 0x5ad0: b'\x11Z\xd0', + 0x5ad1: b'\x11Z\xd1', + 0x5ad2: b'\x11Z\xd2', + 0x5ad3: b'\x11Z\xd3', + 0x5ad4: b'\x11Z\xd4', + 0x5ad5: b'\x11Z\xd5', + 0x5ad6: b'\x11Z\xd6', + 0x5ad7: b'\x11Z\xd7', + 0x5ad8: b'\x11Z\xd8', + 0x5ad9: b'\x11Z\xd9', + 0x5ada: b'\x11Z\xda', + 0x5adb: b'\x11Z\xdb', + 0x5adc: b'\x11Z\xdc', + 0x5add: b'\x11Z\xdd', + 0x5ade: b'\x11Z\xde', + 0x5adf: b'\x11Z\xdf', + 0x5ae0: b'\x11Z\xe0', + 0x5ae1: b'\x11Z\xe1', + 0x5ae2: b'\x11Z\xe2', + 0x5ae3: b'\x11Z\xe3', + 0x5ae4: b'\x11Z\xe4', + 0x5ae5: b'\x11Z\xe5', + 0x5ae6: b'\x11Z\xe6', + 0x5ae7: b'\x11Z\xe7', + 0x5ae8: b'\x11Z\xe8', + 0x5ae9: b'\x11Z\xe9', + 0x5aea: b'\x11Z\xea', + 0x5aeb: b'\x11Z\xeb', + 0x5aec: b'\x11Z\xec', + 0x5aed: b'\x11Z\xed', + 0x5aee: b'\x11Z\xee', + 0x5aef: b'\x11Z\xef', + 0x5af0: b'\x11Z\xf0', + 0x5af1: b'\x11Z\xf1', + 0x5af2: b'\x11Z\xf2', + 0x5af3: b'\x11Z\xf3', + 0x5af4: b'\x11Z\xf4', + 0x5af5: b'\x11Z\xf5', + 0x5af6: b'\x11Z\xf6', + 0x5af7: b'\x11Z\xf7', + 0x5af8: b'\x11Z\xf8', + 0x5af9: b'\x11Z\xf9', + 0x5afa: b'\x11Z\xfa', + 0x5afb: b'\x11Z\xfb', + 0x5afc: b'\x11Z\xfc', + 0x5afd: b'\x11Z\xfd', + 0x5afe: b'\x11Z\xfe', + 0x5aff: b'\x11Z\xff', + 0x5b00: b'\x11[\x00', + 0x5b01: b'\x11[\x01', + 0x5b02: b'\x11[\x02', + 0x5b03: b'\x11[\x03', + 0x5b04: b'\x11[\x04', + 0x5b05: b'\x11[\x05', + 0x5b06: b'\x11[\x06', + 0x5b07: b'\x11[\x07', + 0x5b08: b'\x11[\x08', + 0x5b09: b'\x11[\t', + 0x5b0a: b'\x11[\n', + 0x5b0b: b'\x11[\x0b', + 0x5b0c: b'\x11[\x0c', + 0x5b0d: b'\x11[\r', + 0x5b0e: b'\x11[\x0e', + 0x5b0f: b'\x11[\x0f', + 0x5b10: b'\x11[\x10', + 0x5b11: b'\x11[\x11', + 0x5b12: b'\x11[\x12', + 0x5b13: b'\x11[\x13', + 0x5b14: b'\x11[\x14', + 0x5b15: b'\x11[\x15', + 0x5b16: b'\x11[\x16', + 0x5b17: b'\x11[\x17', + 0x5b18: b'\x11[\x18', + 0x5b19: b'\x11[\x19', + 0x5b1a: b'\x11[\x1a', + 0x5b1b: b'\x11[\x1b', + 0x5b1c: b'\x11[\x1c', + 0x5b1d: b'\x11[\x1d', + 0x5b1e: b'\x11[\x1e', + 0x5b1f: b'\x11[\x1f', + 0x5b20: b'\x11[ ', + 0x5b21: b'\x11[!', + 0x5b22: b'\x11["', + 0x5b23: b'\x11[#', + 0x5b24: b'\x11[$', + 0x5b25: b'\x11[%', + 0x5b26: b'\x11[&', + 0x5b27: b"\x11['", + 0x5b28: b'\x11[(', + 0x5b29: b'\x11[)', + 0x5b2a: b'\x11[*', + 0x5b2b: b'\x11[+', + 0x5b2c: b'\x11[,', + 0x5b2d: b'\x11[-', + 0x5b2e: b'\x11[.', + 0x5b2f: b'\x11[/', + 0x5b30: b'\x11[0', + 0x5b31: b'\x11[1', + 0x5b32: b'\x11[2', + 0x5b33: b'\x11[3', + 0x5b34: b'\x11[4', + 0x5b35: b'\x11[5', + 0x5b36: b'\x11[6', + 0x5b37: b'\x11[7', + 0x5b38: b'\x11[8', + 0x5b39: b'\x11[9', + 0x5b3a: b'\x11[:', + 0x5b3b: b'\x11[;', + 0x5b3c: b'\x11[<', + 0x5b3d: b'\x11[=', + 0x5b3e: b'\x11[>', + 0x5b3f: b'\x11[?', + 0x5b40: b'\x11[@', + 0x5b41: b'\x11[A', + 0x5b42: b'\x11[B', + 0x5b43: b'\x11[C', + 0x5b44: b'\x11[D', + 0x5b45: b'\x11[E', + 0x5b46: b'\x11[F', + 0x5b47: b'\x11[G', + 0x5b48: b'\x11[H', + 0x5b49: b'\x11[I', + 0x5b4a: b'\x11[J', + 0x5b4b: b'\x11[K', + 0x5b4c: b'\x11[L', + 0x5b4d: b'\x11[M', + 0x5b4e: b'\x11[N', + 0x5b4f: b'\x11[O', + 0x5b50: b'\x11[P', + 0x5b51: b'\x11[Q', + 0x5b52: b'\x11[R', + 0x5b53: b'\x11[S', + 0x5b54: b'\x11[T', + 0x5b55: b'\x11[U', + 0x5b56: b'\x11[V', + 0x5b57: b'\x11[W', + 0x5b58: b'\x11[X', + 0x5b59: b'\x11[Y', + 0x5b5a: b'\x11[Z', + 0x5b5b: b'\x11[[', + 0x5b5c: b'\x11[\\', + 0x5b5d: b'\x11[]', + 0x5b5e: b'\x11[^', + 0x5b5f: b'\x11[_', + 0x5b60: b'\x11[`', + 0x5b61: b'\x11[a', + 0x5b62: b'\x11[b', + 0x5b63: b'\x11[c', + 0x5b64: b'\x11[d', + 0x5b65: b'\x11[e', + 0x5b66: b'\x11[f', + 0x5b67: b'\x11[g', + 0x5b68: b'\x11[h', + 0x5b69: b'\x11[i', + 0x5b6a: b'\x11[j', + 0x5b6b: b'\x11[k', + 0x5b6c: b'\x11[l', + 0x5b6d: b'\x11[m', + 0x5b6e: b'\x11[n', + 0x5b6f: b'\x11[o', + 0x5b70: b'\x11[p', + 0x5b71: b'\x11[q', + 0x5b72: b'\x11[r', + 0x5b73: b'\x11[s', + 0x5b74: b'\x11[t', + 0x5b75: b'\x11[u', + 0x5b76: b'\x11[v', + 0x5b77: b'\x11[w', + 0x5b78: b'\x11[x', + 0x5b79: b'\x11[y', + 0x5b7a: b'\x11[z', + 0x5b7b: b'\x11[{', + 0x5b7c: b'\x11[|', + 0x5b7d: b'\x11[}', + 0x5b7e: b'\x11[~', + 0x5b7f: b'\x11[\x7f', + 0x5b80: b'\x11[\x80', + 0x5b81: b'\x11[\x81', + 0x5b82: b'\x11[\x82', + 0x5b83: b'\x11[\x83', + 0x5b84: b'\x11[\x84', + 0x5b85: b'\x11[\x85', + 0x5b86: b'\x11[\x86', + 0x5b87: b'\x11[\x87', + 0x5b88: b'\x11[\x88', + 0x5b89: b'\x11[\x89', + 0x5b8a: b'\x11[\x8a', + 0x5b8b: b'\x11[\x8b', + 0x5b8c: b'\x11[\x8c', + 0x5b8d: b'\x11[\x8d', + 0x5b8e: b'\x11[\x8e', + 0x5b8f: b'\x11[\x8f', + 0x5b90: b'\x11[\x90', + 0x5b91: b'\x11[\x91', + 0x5b92: b'\x11[\x92', + 0x5b93: b'\x11[\x93', + 0x5b94: b'\x11[\x94', + 0x5b95: b'\x11[\x95', + 0x5b96: b'\x11[\x96', + 0x5b97: b'\x11[\x97', + 0x5b98: b'\x11[\x98', + 0x5b99: b'\x11[\x99', + 0x5b9a: b'\x11[\x9a', + 0x5b9b: b'\x11[\x9b', + 0x5b9c: b'\x11[\x9c', + 0x5b9d: b'\x11[\x9d', + 0x5b9e: b'\x11[\x9e', + 0x5b9f: b'\x11[\x9f', + 0x5ba0: b'\x11[\xa0', + 0x5ba1: b'\x11[\xa1', + 0x5ba2: b'\x11[\xa2', + 0x5ba3: b'\x11[\xa3', + 0x5ba4: b'\x11[\xa4', + 0x5ba5: b'\x11[\xa5', + 0x5ba6: b'\x11[\xa6', + 0x5ba7: b'\x11[\xa7', + 0x5ba8: b'\x11[\xa8', + 0x5ba9: b'\x11[\xa9', + 0x5baa: b'\x11[\xaa', + 0x5bab: b'\x11[\xab', + 0x5bac: b'\x11[\xac', + 0x5bad: b'\x11[\xad', + 0x5bae: b'\x11[\xae', + 0x5baf: b'\x11[\xaf', + 0x5bb0: b'\x11[\xb0', + 0x5bb1: b'\x11[\xb1', + 0x5bb2: b'\x11[\xb2', + 0x5bb3: b'\x11[\xb3', + 0x5bb4: b'\x11[\xb4', + 0x5bb5: b'\x11[\xb5', + 0x5bb6: b'\x11[\xb6', + 0x5bb7: b'\x11[\xb7', + 0x5bb8: b'\x11[\xb8', + 0x5bb9: b'\x11[\xb9', + 0x5bba: b'\x11[\xba', + 0x5bbb: b'\x11[\xbb', + 0x5bbc: b'\x11[\xbc', + 0x5bbd: b'\x11[\xbd', + 0x5bbe: b'\x11[\xbe', + 0x5bbf: b'\x11[\xbf', + 0x5bc0: b'\x11[\xc0', + 0x5bc1: b'\x11[\xc1', + 0x5bc2: b'\x11[\xc2', + 0x5bc3: b'\x11[\xc3', + 0x5bc4: b'\x11[\xc4', + 0x5bc5: b'\x11[\xc5', + 0x5bc6: b'\x11[\xc6', + 0x5bc7: b'\x11[\xc7', + 0x5bc8: b'\x11[\xc8', + 0x5bc9: b'\x11[\xc9', + 0x5bca: b'\x11[\xca', + 0x5bcb: b'\x11[\xcb', + 0x5bcc: b'\x11[\xcc', + 0x5bcd: b'\x11[\xcd', + 0x5bce: b'\x11[\xce', + 0x5bcf: b'\x11[\xcf', + 0x5bd0: b'\x11[\xd0', + 0x5bd1: b'\x11[\xd1', + 0x5bd2: b'\x11[\xd2', + 0x5bd3: b'\x11[\xd3', + 0x5bd4: b'\x11[\xd4', + 0x5bd5: b'\x11[\xd5', + 0x5bd6: b'\x11[\xd6', + 0x5bd7: b'\x11[\xd7', + 0x5bd8: b'\x11[\xd8', + 0x5bd9: b'\x11[\xd9', + 0x5bda: b'\x11[\xda', + 0x5bdb: b'\x11[\xdb', + 0x5bdc: b'\x11[\xdc', + 0x5bdd: b'\x11[\xdd', + 0x5bde: b'\x11[\xde', + 0x5bdf: b'\x11[\xdf', + 0x5be0: b'\x11[\xe0', + 0x5be1: b'\x11[\xe1', + 0x5be2: b'\x11[\xe2', + 0x5be3: b'\x11[\xe3', + 0x5be4: b'\x11[\xe4', + 0x5be5: b'\x11[\xe5', + 0x5be6: b'\x11[\xe6', + 0x5be7: b'\x11[\xe7', + 0x5be8: b'\x11[\xe8', + 0x5be9: b'\x11[\xe9', + 0x5bea: b'\x11[\xea', + 0x5beb: b'\x11[\xeb', + 0x5bec: b'\x11[\xec', + 0x5bed: b'\x11[\xed', + 0x5bee: b'\x11[\xee', + 0x5bef: b'\x11[\xef', + 0x5bf0: b'\x11[\xf0', + 0x5bf1: b'\x11[\xf1', + 0x5bf2: b'\x11[\xf2', + 0x5bf3: b'\x11[\xf3', + 0x5bf4: b'\x11[\xf4', + 0x5bf5: b'\x11[\xf5', + 0x5bf6: b'\x11[\xf6', + 0x5bf7: b'\x11[\xf7', + 0x5bf8: b'\x11[\xf8', + 0x5bf9: b'\x11[\xf9', + 0x5bfa: b'\x11[\xfa', + 0x5bfb: b'\x11[\xfb', + 0x5bfc: b'\x11[\xfc', + 0x5bfd: b'\x11[\xfd', + 0x5bfe: b'\x11[\xfe', + 0x5bff: b'\x11[\xff', + 0x5c00: b'\x11\\\x00', + 0x5c01: b'\x11\\\x01', + 0x5c02: b'\x11\\\x02', + 0x5c03: b'\x11\\\x03', + 0x5c04: b'\x11\\\x04', + 0x5c05: b'\x11\\\x05', + 0x5c06: b'\x11\\\x06', + 0x5c07: b'\x11\\\x07', + 0x5c08: b'\x11\\\x08', + 0x5c09: b'\x11\\\t', + 0x5c0a: b'\x11\\\n', + 0x5c0b: b'\x11\\\x0b', + 0x5c0c: b'\x11\\\x0c', + 0x5c0d: b'\x11\\\r', + 0x5c0e: b'\x11\\\x0e', + 0x5c0f: b'\x11\\\x0f', + 0x5c10: b'\x11\\\x10', + 0x5c11: b'\x11\\\x11', + 0x5c12: b'\x11\\\x12', + 0x5c13: b'\x11\\\x13', + 0x5c14: b'\x11\\\x14', + 0x5c15: b'\x11\\\x15', + 0x5c16: b'\x11\\\x16', + 0x5c17: b'\x11\\\x17', + 0x5c18: b'\x11\\\x18', + 0x5c19: b'\x11\\\x19', + 0x5c1a: b'\x11\\\x1a', + 0x5c1b: b'\x11\\\x1b', + 0x5c1c: b'\x11\\\x1c', + 0x5c1d: b'\x11\\\x1d', + 0x5c1e: b'\x11\\\x1e', + 0x5c1f: b'\x11\\\x1f', + 0x5c20: b'\x11\\ ', + 0x5c21: b'\x11\\!', + 0x5c22: b'\x11\\"', + 0x5c23: b'\x11\\#', + 0x5c24: b'\x11\\$', + 0x5c25: b'\x11\\%', + 0x5c26: b'\x11\\&', + 0x5c27: b"\x11\\'", + 0x5c28: b'\x11\\(', + 0x5c29: b'\x11\\)', + 0x5c2a: b'\x11\\*', + 0x5c2b: b'\x11\\+', + 0x5c2c: b'\x11\\,', + 0x5c2d: b'\x11\\-', + 0x5c2e: b'\x11\\.', + 0x5c2f: b'\x11\\/', + 0x5c30: b'\x11\\0', + 0x5c31: b'\x11\\1', + 0x5c32: b'\x11\\2', + 0x5c33: b'\x11\\3', + 0x5c34: b'\x11\\4', + 0x5c35: b'\x11\\5', + 0x5c36: b'\x11\\6', + 0x5c37: b'\x11\\7', + 0x5c38: b'\x11\\8', + 0x5c39: b'\x11\\9', + 0x5c3a: b'\x11\\:', + 0x5c3b: b'\x11\\;', + 0x5c3c: b'\x11\\<', + 0x5c3d: b'\x11\\=', + 0x5c3e: b'\x11\\>', + 0x5c3f: b'\x11\\?', + 0x5c40: b'\x11\\@', + 0x5c41: b'\x11\\A', + 0x5c42: b'\x11\\B', + 0x5c43: b'\x11\\C', + 0x5c44: b'\x11\\D', + 0x5c45: b'\x11\\E', + 0x5c46: b'\x11\\F', + 0x5c47: b'\x11\\G', + 0x5c48: b'\x11\\H', + 0x5c49: b'\x11\\I', + 0x5c4a: b'\x11\\J', + 0x5c4b: b'\x11\\K', + 0x5c4c: b'\x11\\L', + 0x5c4d: b'\x11\\M', + 0x5c4e: b'\x11\\N', + 0x5c4f: b'\x11\\O', + 0x5c50: b'\x11\\P', + 0x5c51: b'\x11\\Q', + 0x5c52: b'\x11\\R', + 0x5c53: b'\x11\\S', + 0x5c54: b'\x11\\T', + 0x5c55: b'\x11\\U', + 0x5c56: b'\x11\\V', + 0x5c57: b'\x11\\W', + 0x5c58: b'\x11\\X', + 0x5c59: b'\x11\\Y', + 0x5c5a: b'\x11\\Z', + 0x5c5b: b'\x11\\[', + 0x5c5c: b'\x11\\\\', + 0x5c5d: b'\x11\\]', + 0x5c5e: b'\x11\\^', + 0x5c5f: b'\x11\\_', + 0x5c60: b'\x11\\`', + 0x5c61: b'\x11\\a', + 0x5c62: b'\x11\\b', + 0x5c63: b'\x11\\c', + 0x5c64: b'\x11\\d', + 0x5c65: b'\x11\\e', + 0x5c66: b'\x11\\f', + 0x5c67: b'\x11\\g', + 0x5c68: b'\x11\\h', + 0x5c69: b'\x11\\i', + 0x5c6a: b'\x11\\j', + 0x5c6b: b'\x11\\k', + 0x5c6c: b'\x11\\l', + 0x5c6d: b'\x11\\m', + 0x5c6e: b'\x11\\n', + 0x5c6f: b'\x11\\o', + 0x5c70: b'\x11\\p', + 0x5c71: b'\x11\\q', + 0x5c72: b'\x11\\r', + 0x5c73: b'\x11\\s', + 0x5c74: b'\x11\\t', + 0x5c75: b'\x11\\u', + 0x5c76: b'\x11\\v', + 0x5c77: b'\x11\\w', + 0x5c78: b'\x11\\x', + 0x5c79: b'\x11\\y', + 0x5c7a: b'\x11\\z', + 0x5c7b: b'\x11\\{', + 0x5c7c: b'\x11\\|', + 0x5c7d: b'\x11\\}', + 0x5c7e: b'\x11\\~', + 0x5c7f: b'\x11\\\x7f', + 0x5c80: b'\x11\\\x80', + 0x5c81: b'\x11\\\x81', + 0x5c82: b'\x11\\\x82', + 0x5c83: b'\x11\\\x83', + 0x5c84: b'\x11\\\x84', + 0x5c85: b'\x11\\\x85', + 0x5c86: b'\x11\\\x86', + 0x5c87: b'\x11\\\x87', + 0x5c88: b'\x11\\\x88', + 0x5c89: b'\x11\\\x89', + 0x5c8a: b'\x11\\\x8a', + 0x5c8b: b'\x11\\\x8b', + 0x5c8c: b'\x11\\\x8c', + 0x5c8d: b'\x11\\\x8d', + 0x5c8e: b'\x11\\\x8e', + 0x5c8f: b'\x11\\\x8f', + 0x5c90: b'\x11\\\x90', + 0x5c91: b'\x11\\\x91', + 0x5c92: b'\x11\\\x92', + 0x5c93: b'\x11\\\x93', + 0x5c94: b'\x11\\\x94', + 0x5c95: b'\x11\\\x95', + 0x5c96: b'\x11\\\x96', + 0x5c97: b'\x11\\\x97', + 0x5c98: b'\x11\\\x98', + 0x5c99: b'\x11\\\x99', + 0x5c9a: b'\x11\\\x9a', + 0x5c9b: b'\x11\\\x9b', + 0x5c9c: b'\x11\\\x9c', + 0x5c9d: b'\x11\\\x9d', + 0x5c9e: b'\x11\\\x9e', + 0x5c9f: b'\x11\\\x9f', + 0x5ca0: b'\x11\\\xa0', + 0x5ca1: b'\x11\\\xa1', + 0x5ca2: b'\x11\\\xa2', + 0x5ca3: b'\x11\\\xa3', + 0x5ca4: b'\x11\\\xa4', + 0x5ca5: b'\x11\\\xa5', + 0x5ca6: b'\x11\\\xa6', + 0x5ca7: b'\x11\\\xa7', + 0x5ca8: b'\x11\\\xa8', + 0x5ca9: b'\x11\\\xa9', + 0x5caa: b'\x11\\\xaa', + 0x5cab: b'\x11\\\xab', + 0x5cac: b'\x11\\\xac', + 0x5cad: b'\x11\\\xad', + 0x5cae: b'\x11\\\xae', + 0x5caf: b'\x11\\\xaf', + 0x5cb0: b'\x11\\\xb0', + 0x5cb1: b'\x11\\\xb1', + 0x5cb2: b'\x11\\\xb2', + 0x5cb3: b'\x11\\\xb3', + 0x5cb4: b'\x11\\\xb4', + 0x5cb5: b'\x11\\\xb5', + 0x5cb6: b'\x11\\\xb6', + 0x5cb7: b'\x11\\\xb7', + 0x5cb8: b'\x11\\\xb8', + 0x5cb9: b'\x11\\\xb9', + 0x5cba: b'\x11\\\xba', + 0x5cbb: b'\x11\\\xbb', + 0x5cbc: b'\x11\\\xbc', + 0x5cbd: b'\x11\\\xbd', + 0x5cbe: b'\x11\\\xbe', + 0x5cbf: b'\x11\\\xbf', + 0x5cc0: b'\x11\\\xc0', + 0x5cc1: b'\x11\\\xc1', + 0x5cc2: b'\x11\\\xc2', + 0x5cc3: b'\x11\\\xc3', + 0x5cc4: b'\x11\\\xc4', + 0x5cc5: b'\x11\\\xc5', + 0x5cc6: b'\x11\\\xc6', + 0x5cc7: b'\x11\\\xc7', + 0x5cc8: b'\x11\\\xc8', + 0x5cc9: b'\x11\\\xc9', + 0x5cca: b'\x11\\\xca', + 0x5ccb: b'\x11\\\xcb', + 0x5ccc: b'\x11\\\xcc', + 0x5ccd: b'\x11\\\xcd', + 0x5cce: b'\x11\\\xce', + 0x5ccf: b'\x11\\\xcf', + 0x5cd0: b'\x11\\\xd0', + 0x5cd1: b'\x11\\\xd1', + 0x5cd2: b'\x11\\\xd2', + 0x5cd3: b'\x11\\\xd3', + 0x5cd4: b'\x11\\\xd4', + 0x5cd5: b'\x11\\\xd5', + 0x5cd6: b'\x11\\\xd6', + 0x5cd7: b'\x11\\\xd7', + 0x5cd8: b'\x11\\\xd8', + 0x5cd9: b'\x11\\\xd9', + 0x5cda: b'\x11\\\xda', + 0x5cdb: b'\x11\\\xdb', + 0x5cdc: b'\x11\\\xdc', + 0x5cdd: b'\x11\\\xdd', + 0x5cde: b'\x11\\\xde', + 0x5cdf: b'\x11\\\xdf', + 0x5ce0: b'\x11\\\xe0', + 0x5ce1: b'\x11\\\xe1', + 0x5ce2: b'\x11\\\xe2', + 0x5ce3: b'\x11\\\xe3', + 0x5ce4: b'\x11\\\xe4', + 0x5ce5: b'\x11\\\xe5', + 0x5ce6: b'\x11\\\xe6', + 0x5ce7: b'\x11\\\xe7', + 0x5ce8: b'\x11\\\xe8', + 0x5ce9: b'\x11\\\xe9', + 0x5cea: b'\x11\\\xea', + 0x5ceb: b'\x11\\\xeb', + 0x5cec: b'\x11\\\xec', + 0x5ced: b'\x11\\\xed', + 0x5cee: b'\x11\\\xee', + 0x5cef: b'\x11\\\xef', + 0x5cf0: b'\x11\\\xf0', + 0x5cf1: b'\x11\\\xf1', + 0x5cf2: b'\x11\\\xf2', + 0x5cf3: b'\x11\\\xf3', + 0x5cf4: b'\x11\\\xf4', + 0x5cf5: b'\x11\\\xf5', + 0x5cf6: b'\x11\\\xf6', + 0x5cf7: b'\x11\\\xf7', + 0x5cf8: b'\x11\\\xf8', + 0x5cf9: b'\x11\\\xf9', + 0x5cfa: b'\x11\\\xfa', + 0x5cfb: b'\x11\\\xfb', + 0x5cfc: b'\x11\\\xfc', + 0x5cfd: b'\x11\\\xfd', + 0x5cfe: b'\x11\\\xfe', + 0x5cff: b'\x11\\\xff', + 0x5d00: b'\x11]\x00', + 0x5d01: b'\x11]\x01', + 0x5d02: b'\x11]\x02', + 0x5d03: b'\x11]\x03', + 0x5d04: b'\x11]\x04', + 0x5d05: b'\x11]\x05', + 0x5d06: b'\x11]\x06', + 0x5d07: b'\x11]\x07', + 0x5d08: b'\x11]\x08', + 0x5d09: b'\x11]\t', + 0x5d0a: b'\x11]\n', + 0x5d0b: b'\x11]\x0b', + 0x5d0c: b'\x11]\x0c', + 0x5d0d: b'\x11]\r', + 0x5d0e: b'\x11]\x0e', + 0x5d0f: b'\x11]\x0f', + 0x5d10: b'\x11]\x10', + 0x5d11: b'\x11]\x11', + 0x5d12: b'\x11]\x12', + 0x5d13: b'\x11]\x13', + 0x5d14: b'\x11]\x14', + 0x5d15: b'\x11]\x15', + 0x5d16: b'\x11]\x16', + 0x5d17: b'\x11]\x17', + 0x5d18: b'\x11]\x18', + 0x5d19: b'\x11]\x19', + 0x5d1a: b'\x11]\x1a', + 0x5d1b: b'\x11]\x1b', + 0x5d1c: b'\x11]\x1c', + 0x5d1d: b'\x11]\x1d', + 0x5d1e: b'\x11]\x1e', + 0x5d1f: b'\x11]\x1f', + 0x5d20: b'\x11] ', + 0x5d21: b'\x11]!', + 0x5d22: b'\x11]"', + 0x5d23: b'\x11]#', + 0x5d24: b'\x11]$', + 0x5d25: b'\x11]%', + 0x5d26: b'\x11]&', + 0x5d27: b"\x11]'", + 0x5d28: b'\x11](', + 0x5d29: b'\x11])', + 0x5d2a: b'\x11]*', + 0x5d2b: b'\x11]+', + 0x5d2c: b'\x11],', + 0x5d2d: b'\x11]-', + 0x5d2e: b'\x11].', + 0x5d2f: b'\x11]/', + 0x5d30: b'\x11]0', + 0x5d31: b'\x11]1', + 0x5d32: b'\x11]2', + 0x5d33: b'\x11]3', + 0x5d34: b'\x11]4', + 0x5d35: b'\x11]5', + 0x5d36: b'\x11]6', + 0x5d37: b'\x11]7', + 0x5d38: b'\x11]8', + 0x5d39: b'\x11]9', + 0x5d3a: b'\x11]:', + 0x5d3b: b'\x11];', + 0x5d3c: b'\x11]<', + 0x5d3d: b'\x11]=', + 0x5d3e: b'\x11]>', + 0x5d3f: b'\x11]?', + 0x5d40: b'\x11]@', + 0x5d41: b'\x11]A', + 0x5d42: b'\x11]B', + 0x5d43: b'\x11]C', + 0x5d44: b'\x11]D', + 0x5d45: b'\x11]E', + 0x5d46: b'\x11]F', + 0x5d47: b'\x11]G', + 0x5d48: b'\x11]H', + 0x5d49: b'\x11]I', + 0x5d4a: b'\x11]J', + 0x5d4b: b'\x11]K', + 0x5d4c: b'\x11]L', + 0x5d4d: b'\x11]M', + 0x5d4e: b'\x11]N', + 0x5d4f: b'\x11]O', + 0x5d50: b'\x11]P', + 0x5d51: b'\x11]Q', + 0x5d52: b'\x11]R', + 0x5d53: b'\x11]S', + 0x5d54: b'\x11]T', + 0x5d55: b'\x11]U', + 0x5d56: b'\x11]V', + 0x5d57: b'\x11]W', + 0x5d58: b'\x11]X', + 0x5d59: b'\x11]Y', + 0x5d5a: b'\x11]Z', + 0x5d5b: b'\x11][', + 0x5d5c: b'\x11]\\', + 0x5d5d: b'\x11]]', + 0x5d5e: b'\x11]^', + 0x5d5f: b'\x11]_', + 0x5d60: b'\x11]`', + 0x5d61: b'\x11]a', + 0x5d62: b'\x11]b', + 0x5d63: b'\x11]c', + 0x5d64: b'\x11]d', + 0x5d65: b'\x11]e', + 0x5d66: b'\x11]f', + 0x5d67: b'\x11]g', + 0x5d68: b'\x11]h', + 0x5d69: b'\x11]i', + 0x5d6a: b'\x11]j', + 0x5d6b: b'\x11]k', + 0x5d6c: b'\x11]l', + 0x5d6d: b'\x11]m', + 0x5d6e: b'\x11]n', + 0x5d6f: b'\x11]o', + 0x5d70: b'\x11]p', + 0x5d71: b'\x11]q', + 0x5d72: b'\x11]r', + 0x5d73: b'\x11]s', + 0x5d74: b'\x11]t', + 0x5d75: b'\x11]u', + 0x5d76: b'\x11]v', + 0x5d77: b'\x11]w', + 0x5d78: b'\x11]x', + 0x5d79: b'\x11]y', + 0x5d7a: b'\x11]z', + 0x5d7b: b'\x11]{', + 0x5d7c: b'\x11]|', + 0x5d7d: b'\x11]}', + 0x5d7e: b'\x11]~', + 0x5d7f: b'\x11]\x7f', + 0x5d80: b'\x11]\x80', + 0x5d81: b'\x11]\x81', + 0x5d82: b'\x11]\x82', + 0x5d83: b'\x11]\x83', + 0x5d84: b'\x11]\x84', + 0x5d85: b'\x11]\x85', + 0x5d86: b'\x11]\x86', + 0x5d87: b'\x11]\x87', + 0x5d88: b'\x11]\x88', + 0x5d89: b'\x11]\x89', + 0x5d8a: b'\x11]\x8a', + 0x5d8b: b'\x11]\x8b', + 0x5d8c: b'\x11]\x8c', + 0x5d8d: b'\x11]\x8d', + 0x5d8e: b'\x11]\x8e', + 0x5d8f: b'\x11]\x8f', + 0x5d90: b'\x11]\x90', + 0x5d91: b'\x11]\x91', + 0x5d92: b'\x11]\x92', + 0x5d93: b'\x11]\x93', + 0x5d94: b'\x11]\x94', + 0x5d95: b'\x11]\x95', + 0x5d96: b'\x11]\x96', + 0x5d97: b'\x11]\x97', + 0x5d98: b'\x11]\x98', + 0x5d99: b'\x11]\x99', + 0x5d9a: b'\x11]\x9a', + 0x5d9b: b'\x11]\x9b', + 0x5d9c: b'\x11]\x9c', + 0x5d9d: b'\x11]\x9d', + 0x5d9e: b'\x11]\x9e', + 0x5d9f: b'\x11]\x9f', + 0x5da0: b'\x11]\xa0', + 0x5da1: b'\x11]\xa1', + 0x5da2: b'\x11]\xa2', + 0x5da3: b'\x11]\xa3', + 0x5da4: b'\x11]\xa4', + 0x5da5: b'\x11]\xa5', + 0x5da6: b'\x11]\xa6', + 0x5da7: b'\x11]\xa7', + 0x5da8: b'\x11]\xa8', + 0x5da9: b'\x11]\xa9', + 0x5daa: b'\x11]\xaa', + 0x5dab: b'\x11]\xab', + 0x5dac: b'\x11]\xac', + 0x5dad: b'\x11]\xad', + 0x5dae: b'\x11]\xae', + 0x5daf: b'\x11]\xaf', + 0x5db0: b'\x11]\xb0', + 0x5db1: b'\x11]\xb1', + 0x5db2: b'\x11]\xb2', + 0x5db3: b'\x11]\xb3', + 0x5db4: b'\x11]\xb4', + 0x5db5: b'\x11]\xb5', + 0x5db6: b'\x11]\xb6', + 0x5db7: b'\x11]\xb7', + 0x5db8: b'\x11]\xb8', + 0x5db9: b'\x11]\xb9', + 0x5dba: b'\x11]\xba', + 0x5dbb: b'\x11]\xbb', + 0x5dbc: b'\x11]\xbc', + 0x5dbd: b'\x11]\xbd', + 0x5dbe: b'\x11]\xbe', + 0x5dbf: b'\x11]\xbf', + 0x5dc0: b'\x11]\xc0', + 0x5dc1: b'\x11]\xc1', + 0x5dc2: b'\x11]\xc2', + 0x5dc3: b'\x11]\xc3', + 0x5dc4: b'\x11]\xc4', + 0x5dc5: b'\x11]\xc5', + 0x5dc6: b'\x11]\xc6', + 0x5dc7: b'\x11]\xc7', + 0x5dc8: b'\x11]\xc8', + 0x5dc9: b'\x11]\xc9', + 0x5dca: b'\x11]\xca', + 0x5dcb: b'\x11]\xcb', + 0x5dcc: b'\x11]\xcc', + 0x5dcd: b'\x11]\xcd', + 0x5dce: b'\x11]\xce', + 0x5dcf: b'\x11]\xcf', + 0x5dd0: b'\x11]\xd0', + 0x5dd1: b'\x11]\xd1', + 0x5dd2: b'\x11]\xd2', + 0x5dd3: b'\x11]\xd3', + 0x5dd4: b'\x11]\xd4', + 0x5dd5: b'\x11]\xd5', + 0x5dd6: b'\x11]\xd6', + 0x5dd7: b'\x11]\xd7', + 0x5dd8: b'\x11]\xd8', + 0x5dd9: b'\x11]\xd9', + 0x5dda: b'\x11]\xda', + 0x5ddb: b'\x11]\xdb', + 0x5ddc: b'\x11]\xdc', + 0x5ddd: b'\x11]\xdd', + 0x5dde: b'\x11]\xde', + 0x5ddf: b'\x11]\xdf', + 0x5de0: b'\x11]\xe0', + 0x5de1: b'\x11]\xe1', + 0x5de2: b'\x11]\xe2', + 0x5de3: b'\x11]\xe3', + 0x5de4: b'\x11]\xe4', + 0x5de5: b'\x11]\xe5', + 0x5de6: b'\x11]\xe6', + 0x5de7: b'\x11]\xe7', + 0x5de8: b'\x11]\xe8', + 0x5de9: b'\x11]\xe9', + 0x5dea: b'\x11]\xea', + 0x5deb: b'\x11]\xeb', + 0x5dec: b'\x11]\xec', + 0x5ded: b'\x11]\xed', + 0x5dee: b'\x11]\xee', + 0x5def: b'\x11]\xef', + 0x5df0: b'\x11]\xf0', + 0x5df1: b'\x11]\xf1', + 0x5df2: b'\x11]\xf2', + 0x5df3: b'\x11]\xf3', + 0x5df4: b'\x11]\xf4', + 0x5df5: b'\x11]\xf5', + 0x5df6: b'\x11]\xf6', + 0x5df7: b'\x11]\xf7', + 0x5df8: b'\x11]\xf8', + 0x5df9: b'\x11]\xf9', + 0x5dfa: b'\x11]\xfa', + 0x5dfb: b'\x11]\xfb', + 0x5dfc: b'\x11]\xfc', + 0x5dfd: b'\x11]\xfd', + 0x5dfe: b'\x11]\xfe', + 0x5dff: b'\x11]\xff', + 0x5e00: b'\x11^\x00', + 0x5e01: b'\x11^\x01', + 0x5e02: b'\x11^\x02', + 0x5e03: b'\x11^\x03', + 0x5e04: b'\x11^\x04', + 0x5e05: b'\x11^\x05', + 0x5e06: b'\x11^\x06', + 0x5e07: b'\x11^\x07', + 0x5e08: b'\x11^\x08', + 0x5e09: b'\x11^\t', + 0x5e0a: b'\x11^\n', + 0x5e0b: b'\x11^\x0b', + 0x5e0c: b'\x11^\x0c', + 0x5e0d: b'\x11^\r', + 0x5e0e: b'\x11^\x0e', + 0x5e0f: b'\x11^\x0f', + 0x5e10: b'\x11^\x10', + 0x5e11: b'\x11^\x11', + 0x5e12: b'\x11^\x12', + 0x5e13: b'\x11^\x13', + 0x5e14: b'\x11^\x14', + 0x5e15: b'\x11^\x15', + 0x5e16: b'\x11^\x16', + 0x5e17: b'\x11^\x17', + 0x5e18: b'\x11^\x18', + 0x5e19: b'\x11^\x19', + 0x5e1a: b'\x11^\x1a', + 0x5e1b: b'\x11^\x1b', + 0x5e1c: b'\x11^\x1c', + 0x5e1d: b'\x11^\x1d', + 0x5e1e: b'\x11^\x1e', + 0x5e1f: b'\x11^\x1f', + 0x5e20: b'\x11^ ', + 0x5e21: b'\x11^!', + 0x5e22: b'\x11^"', + 0x5e23: b'\x11^#', + 0x5e24: b'\x11^$', + 0x5e25: b'\x11^%', + 0x5e26: b'\x11^&', + 0x5e27: b"\x11^'", + 0x5e28: b'\x11^(', + 0x5e29: b'\x11^)', + 0x5e2a: b'\x11^*', + 0x5e2b: b'\x11^+', + 0x5e2c: b'\x11^,', + 0x5e2d: b'\x11^-', + 0x5e2e: b'\x11^.', + 0x5e2f: b'\x11^/', + 0x5e30: b'\x11^0', + 0x5e31: b'\x11^1', + 0x5e32: b'\x11^2', + 0x5e33: b'\x11^3', + 0x5e34: b'\x11^4', + 0x5e35: b'\x11^5', + 0x5e36: b'\x11^6', + 0x5e37: b'\x11^7', + 0x5e38: b'\x11^8', + 0x5e39: b'\x11^9', + 0x5e3a: b'\x11^:', + 0x5e3b: b'\x11^;', + 0x5e3c: b'\x11^<', + 0x5e3d: b'\x11^=', + 0x5e3e: b'\x11^>', + 0x5e3f: b'\x11^?', + 0x5e40: b'\x11^@', + 0x5e41: b'\x11^A', + 0x5e42: b'\x11^B', + 0x5e43: b'\x11^C', + 0x5e44: b'\x11^D', + 0x5e45: b'\x11^E', + 0x5e46: b'\x11^F', + 0x5e47: b'\x11^G', + 0x5e48: b'\x11^H', + 0x5e49: b'\x11^I', + 0x5e4a: b'\x11^J', + 0x5e4b: b'\x11^K', + 0x5e4c: b'\x11^L', + 0x5e4d: b'\x11^M', + 0x5e4e: b'\x11^N', + 0x5e4f: b'\x11^O', + 0x5e50: b'\x11^P', + 0x5e51: b'\x11^Q', + 0x5e52: b'\x11^R', + 0x5e53: b'\x11^S', + 0x5e54: b'\x11^T', + 0x5e55: b'\x11^U', + 0x5e56: b'\x11^V', + 0x5e57: b'\x11^W', + 0x5e58: b'\x11^X', + 0x5e59: b'\x11^Y', + 0x5e5a: b'\x11^Z', + 0x5e5b: b'\x11^[', + 0x5e5c: b'\x11^\\', + 0x5e5d: b'\x11^]', + 0x5e5e: b'\x11^^', + 0x5e5f: b'\x11^_', + 0x5e60: b'\x11^`', + 0x5e61: b'\x11^a', + 0x5e62: b'\x11^b', + 0x5e63: b'\x11^c', + 0x5e64: b'\x11^d', + 0x5e65: b'\x11^e', + 0x5e66: b'\x11^f', + 0x5e67: b'\x11^g', + 0x5e68: b'\x11^h', + 0x5e69: b'\x11^i', + 0x5e6a: b'\x11^j', + 0x5e6b: b'\x11^k', + 0x5e6c: b'\x11^l', + 0x5e6d: b'\x11^m', + 0x5e6e: b'\x11^n', + 0x5e6f: b'\x11^o', + 0x5e70: b'\x11^p', + 0x5e71: b'\x11^q', + 0x5e72: b'\x11^r', + 0x5e73: b'\x11^s', + 0x5e74: b'\x11^t', + 0x5e75: b'\x11^u', + 0x5e76: b'\x11^v', + 0x5e77: b'\x11^w', + 0x5e78: b'\x11^x', + 0x5e79: b'\x11^y', + 0x5e7a: b'\x11^z', + 0x5e7b: b'\x11^{', + 0x5e7c: b'\x11^|', + 0x5e7d: b'\x11^}', + 0x5e7e: b'\x11^~', + 0x5e7f: b'\x11^\x7f', + 0x5e80: b'\x11^\x80', + 0x5e81: b'\x11^\x81', + 0x5e82: b'\x11^\x82', + 0x5e83: b'\x11^\x83', + 0x5e84: b'\x11^\x84', + 0x5e85: b'\x11^\x85', + 0x5e86: b'\x11^\x86', + 0x5e87: b'\x11^\x87', + 0x5e88: b'\x11^\x88', + 0x5e89: b'\x11^\x89', + 0x5e8a: b'\x11^\x8a', + 0x5e8b: b'\x11^\x8b', + 0x5e8c: b'\x11^\x8c', + 0x5e8d: b'\x11^\x8d', + 0x5e8e: b'\x11^\x8e', + 0x5e8f: b'\x11^\x8f', + 0x5e90: b'\x11^\x90', + 0x5e91: b'\x11^\x91', + 0x5e92: b'\x11^\x92', + 0x5e93: b'\x11^\x93', + 0x5e94: b'\x11^\x94', + 0x5e95: b'\x11^\x95', + 0x5e96: b'\x11^\x96', + 0x5e97: b'\x11^\x97', + 0x5e98: b'\x11^\x98', + 0x5e99: b'\x11^\x99', + 0x5e9a: b'\x11^\x9a', + 0x5e9b: b'\x11^\x9b', + 0x5e9c: b'\x11^\x9c', + 0x5e9d: b'\x11^\x9d', + 0x5e9e: b'\x11^\x9e', + 0x5e9f: b'\x11^\x9f', + 0x5ea0: b'\x11^\xa0', + 0x5ea1: b'\x11^\xa1', + 0x5ea2: b'\x11^\xa2', + 0x5ea3: b'\x11^\xa3', + 0x5ea4: b'\x11^\xa4', + 0x5ea5: b'\x11^\xa5', + 0x5ea6: b'\x11^\xa6', + 0x5ea7: b'\x11^\xa7', + 0x5ea8: b'\x11^\xa8', + 0x5ea9: b'\x11^\xa9', + 0x5eaa: b'\x11^\xaa', + 0x5eab: b'\x11^\xab', + 0x5eac: b'\x11^\xac', + 0x5ead: b'\x11^\xad', + 0x5eae: b'\x11^\xae', + 0x5eaf: b'\x11^\xaf', + 0x5eb0: b'\x11^\xb0', + 0x5eb1: b'\x11^\xb1', + 0x5eb2: b'\x11^\xb2', + 0x5eb3: b'\x11^\xb3', + 0x5eb4: b'\x11^\xb4', + 0x5eb5: b'\x11^\xb5', + 0x5eb6: b'\x11^\xb6', + 0x5eb7: b'\x11^\xb7', + 0x5eb8: b'\x11^\xb8', + 0x5eb9: b'\x11^\xb9', + 0x5eba: b'\x11^\xba', + 0x5ebb: b'\x11^\xbb', + 0x5ebc: b'\x11^\xbc', + 0x5ebd: b'\x11^\xbd', + 0x5ebe: b'\x11^\xbe', + 0x5ebf: b'\x11^\xbf', + 0x5ec0: b'\x11^\xc0', + 0x5ec1: b'\x11^\xc1', + 0x5ec2: b'\x11^\xc2', + 0x5ec3: b'\x11^\xc3', + 0x5ec4: b'\x11^\xc4', + 0x5ec5: b'\x11^\xc5', + 0x5ec6: b'\x11^\xc6', + 0x5ec7: b'\x11^\xc7', + 0x5ec8: b'\x11^\xc8', + 0x5ec9: b'\x11^\xc9', + 0x5eca: b'\x11^\xca', + 0x5ecb: b'\x11^\xcb', + 0x5ecc: b'\x11^\xcc', + 0x5ecd: b'\x11^\xcd', + 0x5ece: b'\x11^\xce', + 0x5ecf: b'\x11^\xcf', + 0x5ed0: b'\x11^\xd0', + 0x5ed1: b'\x11^\xd1', + 0x5ed2: b'\x11^\xd2', + 0x5ed3: b'\x11^\xd3', + 0x5ed4: b'\x11^\xd4', + 0x5ed5: b'\x11^\xd5', + 0x5ed6: b'\x11^\xd6', + 0x5ed7: b'\x11^\xd7', + 0x5ed8: b'\x11^\xd8', + 0x5ed9: b'\x11^\xd9', + 0x5eda: b'\x11^\xda', + 0x5edb: b'\x11^\xdb', + 0x5edc: b'\x11^\xdc', + 0x5edd: b'\x11^\xdd', + 0x5ede: b'\x11^\xde', + 0x5edf: b'\x11^\xdf', + 0x5ee0: b'\x11^\xe0', + 0x5ee1: b'\x11^\xe1', + 0x5ee2: b'\x11^\xe2', + 0x5ee3: b'\x11^\xe3', + 0x5ee4: b'\x11^\xe4', + 0x5ee5: b'\x11^\xe5', + 0x5ee6: b'\x11^\xe6', + 0x5ee7: b'\x11^\xe7', + 0x5ee8: b'\x11^\xe8', + 0x5ee9: b'\x11^\xe9', + 0x5eea: b'\x11^\xea', + 0x5eeb: b'\x11^\xeb', + 0x5eec: b'\x11^\xec', + 0x5eed: b'\x11^\xed', + 0x5eee: b'\x11^\xee', + 0x5eef: b'\x11^\xef', + 0x5ef0: b'\x11^\xf0', + 0x5ef1: b'\x11^\xf1', + 0x5ef2: b'\x11^\xf2', + 0x5ef3: b'\x11^\xf3', + 0x5ef4: b'\x11^\xf4', + 0x5ef5: b'\x11^\xf5', + 0x5ef6: b'\x11^\xf6', + 0x5ef7: b'\x11^\xf7', + 0x5ef8: b'\x11^\xf8', + 0x5ef9: b'\x11^\xf9', + 0x5efa: b'\x11^\xfa', + 0x5efb: b'\x11^\xfb', + 0x5efc: b'\x11^\xfc', + 0x5efd: b'\x11^\xfd', + 0x5efe: b'\x11^\xfe', + 0x5eff: b'\x11^\xff', + 0x5f00: b'\x11_\x00', + 0x5f01: b'\x11_\x01', + 0x5f02: b'\x11_\x02', + 0x5f03: b'\x11_\x03', + 0x5f04: b'\x11_\x04', + 0x5f05: b'\x11_\x05', + 0x5f06: b'\x11_\x06', + 0x5f07: b'\x11_\x07', + 0x5f08: b'\x11_\x08', + 0x5f09: b'\x11_\t', + 0x5f0a: b'\x11_\n', + 0x5f0b: b'\x11_\x0b', + 0x5f0c: b'\x11_\x0c', + 0x5f0d: b'\x11_\r', + 0x5f0e: b'\x11_\x0e', + 0x5f0f: b'\x11_\x0f', + 0x5f10: b'\x11_\x10', + 0x5f11: b'\x11_\x11', + 0x5f12: b'\x11_\x12', + 0x5f13: b'\x11_\x13', + 0x5f14: b'\x11_\x14', + 0x5f15: b'\x11_\x15', + 0x5f16: b'\x11_\x16', + 0x5f17: b'\x11_\x17', + 0x5f18: b'\x11_\x18', + 0x5f19: b'\x11_\x19', + 0x5f1a: b'\x11_\x1a', + 0x5f1b: b'\x11_\x1b', + 0x5f1c: b'\x11_\x1c', + 0x5f1d: b'\x11_\x1d', + 0x5f1e: b'\x11_\x1e', + 0x5f1f: b'\x11_\x1f', + 0x5f20: b'\x11_ ', + 0x5f21: b'\x11_!', + 0x5f22: b'\x11_"', + 0x5f23: b'\x11_#', + 0x5f24: b'\x11_$', + 0x5f25: b'\x11_%', + 0x5f26: b'\x11_&', + 0x5f27: b"\x11_'", + 0x5f28: b'\x11_(', + 0x5f29: b'\x11_)', + 0x5f2a: b'\x11_*', + 0x5f2b: b'\x11_+', + 0x5f2c: b'\x11_,', + 0x5f2d: b'\x11_-', + 0x5f2e: b'\x11_.', + 0x5f2f: b'\x11_/', + 0x5f30: b'\x11_0', + 0x5f31: b'\x11_1', + 0x5f32: b'\x11_2', + 0x5f33: b'\x11_3', + 0x5f34: b'\x11_4', + 0x5f35: b'\x11_5', + 0x5f36: b'\x11_6', + 0x5f37: b'\x11_7', + 0x5f38: b'\x11_8', + 0x5f39: b'\x11_9', + 0x5f3a: b'\x11_:', + 0x5f3b: b'\x11_;', + 0x5f3c: b'\x11_<', + 0x5f3d: b'\x11_=', + 0x5f3e: b'\x11_>', + 0x5f3f: b'\x11_?', + 0x5f40: b'\x11_@', + 0x5f41: b'\x11_A', + 0x5f42: b'\x11_B', + 0x5f43: b'\x11_C', + 0x5f44: b'\x11_D', + 0x5f45: b'\x11_E', + 0x5f46: b'\x11_F', + 0x5f47: b'\x11_G', + 0x5f48: b'\x11_H', + 0x5f49: b'\x11_I', + 0x5f4a: b'\x11_J', + 0x5f4b: b'\x11_K', + 0x5f4c: b'\x11_L', + 0x5f4d: b'\x11_M', + 0x5f4e: b'\x11_N', + 0x5f4f: b'\x11_O', + 0x5f50: b'\x11_P', + 0x5f51: b'\x11_Q', + 0x5f52: b'\x11_R', + 0x5f53: b'\x11_S', + 0x5f54: b'\x11_T', + 0x5f55: b'\x11_U', + 0x5f56: b'\x11_V', + 0x5f57: b'\x11_W', + 0x5f58: b'\x11_X', + 0x5f59: b'\x11_Y', + 0x5f5a: b'\x11_Z', + 0x5f5b: b'\x11_[', + 0x5f5c: b'\x11_\\', + 0x5f5d: b'\x11_]', + 0x5f5e: b'\x11_^', + 0x5f5f: b'\x11__', + 0x5f60: b'\x11_`', + 0x5f61: b'\x11_a', + 0x5f62: b'\x11_b', + 0x5f63: b'\x11_c', + 0x5f64: b'\x11_d', + 0x5f65: b'\x11_e', + 0x5f66: b'\x11_f', + 0x5f67: b'\x11_g', + 0x5f68: b'\x11_h', + 0x5f69: b'\x11_i', + 0x5f6a: b'\x11_j', + 0x5f6b: b'\x11_k', + 0x5f6c: b'\x11_l', + 0x5f6d: b'\x11_m', + 0x5f6e: b'\x11_n', + 0x5f6f: b'\x11_o', + 0x5f70: b'\x11_p', + 0x5f71: b'\x11_q', + 0x5f72: b'\x11_r', + 0x5f73: b'\x11_s', + 0x5f74: b'\x11_t', + 0x5f75: b'\x11_u', + 0x5f76: b'\x11_v', + 0x5f77: b'\x11_w', + 0x5f78: b'\x11_x', + 0x5f79: b'\x11_y', + 0x5f7a: b'\x11_z', + 0x5f7b: b'\x11_{', + 0x5f7c: b'\x11_|', + 0x5f7d: b'\x11_}', + 0x5f7e: b'\x11_~', + 0x5f7f: b'\x11_\x7f', + 0x5f80: b'\x11_\x80', + 0x5f81: b'\x11_\x81', + 0x5f82: b'\x11_\x82', + 0x5f83: b'\x11_\x83', + 0x5f84: b'\x11_\x84', + 0x5f85: b'\x11_\x85', + 0x5f86: b'\x11_\x86', + 0x5f87: b'\x11_\x87', + 0x5f88: b'\x11_\x88', + 0x5f89: b'\x11_\x89', + 0x5f8a: b'\x11_\x8a', + 0x5f8b: b'\x11_\x8b', + 0x5f8c: b'\x11_\x8c', + 0x5f8d: b'\x11_\x8d', + 0x5f8e: b'\x11_\x8e', + 0x5f8f: b'\x11_\x8f', + 0x5f90: b'\x11_\x90', + 0x5f91: b'\x11_\x91', + 0x5f92: b'\x11_\x92', + 0x5f93: b'\x11_\x93', + 0x5f94: b'\x11_\x94', + 0x5f95: b'\x11_\x95', + 0x5f96: b'\x11_\x96', + 0x5f97: b'\x11_\x97', + 0x5f98: b'\x11_\x98', + 0x5f99: b'\x11_\x99', + 0x5f9a: b'\x11_\x9a', + 0x5f9b: b'\x11_\x9b', + 0x5f9c: b'\x11_\x9c', + 0x5f9d: b'\x11_\x9d', + 0x5f9e: b'\x11_\x9e', + 0x5f9f: b'\x11_\x9f', + 0x5fa0: b'\x11_\xa0', + 0x5fa1: b'\x11_\xa1', + 0x5fa2: b'\x11_\xa2', + 0x5fa3: b'\x11_\xa3', + 0x5fa4: b'\x11_\xa4', + 0x5fa5: b'\x11_\xa5', + 0x5fa6: b'\x11_\xa6', + 0x5fa7: b'\x11_\xa7', + 0x5fa8: b'\x11_\xa8', + 0x5fa9: b'\x11_\xa9', + 0x5faa: b'\x11_\xaa', + 0x5fab: b'\x11_\xab', + 0x5fac: b'\x11_\xac', + 0x5fad: b'\x11_\xad', + 0x5fae: b'\x11_\xae', + 0x5faf: b'\x11_\xaf', + 0x5fb0: b'\x11_\xb0', + 0x5fb1: b'\x11_\xb1', + 0x5fb2: b'\x11_\xb2', + 0x5fb3: b'\x11_\xb3', + 0x5fb4: b'\x11_\xb4', + 0x5fb5: b'\x11_\xb5', + 0x5fb6: b'\x11_\xb6', + 0x5fb7: b'\x11_\xb7', + 0x5fb8: b'\x11_\xb8', + 0x5fb9: b'\x11_\xb9', + 0x5fba: b'\x11_\xba', + 0x5fbb: b'\x11_\xbb', + 0x5fbc: b'\x11_\xbc', + 0x5fbd: b'\x11_\xbd', + 0x5fbe: b'\x11_\xbe', + 0x5fbf: b'\x11_\xbf', + 0x5fc0: b'\x11_\xc0', + 0x5fc1: b'\x11_\xc1', + 0x5fc2: b'\x11_\xc2', + 0x5fc3: b'\x11_\xc3', + 0x5fc4: b'\x11_\xc4', + 0x5fc5: b'\x11_\xc5', + 0x5fc6: b'\x11_\xc6', + 0x5fc7: b'\x11_\xc7', + 0x5fc8: b'\x11_\xc8', + 0x5fc9: b'\x11_\xc9', + 0x5fca: b'\x11_\xca', + 0x5fcb: b'\x11_\xcb', + 0x5fcc: b'\x11_\xcc', + 0x5fcd: b'\x11_\xcd', + 0x5fce: b'\x11_\xce', + 0x5fcf: b'\x11_\xcf', + 0x5fd0: b'\x11_\xd0', + 0x5fd1: b'\x11_\xd1', + 0x5fd2: b'\x11_\xd2', + 0x5fd3: b'\x11_\xd3', + 0x5fd4: b'\x11_\xd4', + 0x5fd5: b'\x11_\xd5', + 0x5fd6: b'\x11_\xd6', + 0x5fd7: b'\x11_\xd7', + 0x5fd8: b'\x11_\xd8', + 0x5fd9: b'\x11_\xd9', + 0x5fda: b'\x11_\xda', + 0x5fdb: b'\x11_\xdb', + 0x5fdc: b'\x11_\xdc', + 0x5fdd: b'\x11_\xdd', + 0x5fde: b'\x11_\xde', + 0x5fdf: b'\x11_\xdf', + 0x5fe0: b'\x11_\xe0', + 0x5fe1: b'\x11_\xe1', + 0x5fe2: b'\x11_\xe2', + 0x5fe3: b'\x11_\xe3', + 0x5fe4: b'\x11_\xe4', + 0x5fe5: b'\x11_\xe5', + 0x5fe6: b'\x11_\xe6', + 0x5fe7: b'\x11_\xe7', + 0x5fe8: b'\x11_\xe8', + 0x5fe9: b'\x11_\xe9', + 0x5fea: b'\x11_\xea', + 0x5feb: b'\x11_\xeb', + 0x5fec: b'\x11_\xec', + 0x5fed: b'\x11_\xed', + 0x5fee: b'\x11_\xee', + 0x5fef: b'\x11_\xef', + 0x5ff0: b'\x11_\xf0', + 0x5ff1: b'\x11_\xf1', + 0x5ff2: b'\x11_\xf2', + 0x5ff3: b'\x11_\xf3', + 0x5ff4: b'\x11_\xf4', + 0x5ff5: b'\x11_\xf5', + 0x5ff6: b'\x11_\xf6', + 0x5ff7: b'\x11_\xf7', + 0x5ff8: b'\x11_\xf8', + 0x5ff9: b'\x11_\xf9', + 0x5ffa: b'\x11_\xfa', + 0x5ffb: b'\x11_\xfb', + 0x5ffc: b'\x11_\xfc', + 0x5ffd: b'\x11_\xfd', + 0x5ffe: b'\x11_\xfe', + 0x5fff: b'\x11_\xff', + 0x6000: b'\x11`\x00', + 0x6001: b'\x11`\x01', + 0x6002: b'\x11`\x02', + 0x6003: b'\x11`\x03', + 0x6004: b'\x11`\x04', + 0x6005: b'\x11`\x05', + 0x6006: b'\x11`\x06', + 0x6007: b'\x11`\x07', + 0x6008: b'\x11`\x08', + 0x6009: b'\x11`\t', + 0x600a: b'\x11`\n', + 0x600b: b'\x11`\x0b', + 0x600c: b'\x11`\x0c', + 0x600d: b'\x11`\r', + 0x600e: b'\x11`\x0e', + 0x600f: b'\x11`\x0f', + 0x6010: b'\x11`\x10', + 0x6011: b'\x11`\x11', + 0x6012: b'\x11`\x12', + 0x6013: b'\x11`\x13', + 0x6014: b'\x11`\x14', + 0x6015: b'\x11`\x15', + 0x6016: b'\x11`\x16', + 0x6017: b'\x11`\x17', + 0x6018: b'\x11`\x18', + 0x6019: b'\x11`\x19', + 0x601a: b'\x11`\x1a', + 0x601b: b'\x11`\x1b', + 0x601c: b'\x11`\x1c', + 0x601d: b'\x11`\x1d', + 0x601e: b'\x11`\x1e', + 0x601f: b'\x11`\x1f', + 0x6020: b'\x11` ', + 0x6021: b'\x11`!', + 0x6022: b'\x11`"', + 0x6023: b'\x11`#', + 0x6024: b'\x11`$', + 0x6025: b'\x11`%', + 0x6026: b'\x11`&', + 0x6027: b"\x11`'", + 0x6028: b'\x11`(', + 0x6029: b'\x11`)', + 0x602a: b'\x11`*', + 0x602b: b'\x11`+', + 0x602c: b'\x11`,', + 0x602d: b'\x11`-', + 0x602e: b'\x11`.', + 0x602f: b'\x11`/', + 0x6030: b'\x11`0', + 0x6031: b'\x11`1', + 0x6032: b'\x11`2', + 0x6033: b'\x11`3', + 0x6034: b'\x11`4', + 0x6035: b'\x11`5', + 0x6036: b'\x11`6', + 0x6037: b'\x11`7', + 0x6038: b'\x11`8', + 0x6039: b'\x11`9', + 0x603a: b'\x11`:', + 0x603b: b'\x11`;', + 0x603c: b'\x11`<', + 0x603d: b'\x11`=', + 0x603e: b'\x11`>', + 0x603f: b'\x11`?', + 0x6040: b'\x11`@', + 0x6041: b'\x11`A', + 0x6042: b'\x11`B', + 0x6043: b'\x11`C', + 0x6044: b'\x11`D', + 0x6045: b'\x11`E', + 0x6046: b'\x11`F', + 0x6047: b'\x11`G', + 0x6048: b'\x11`H', + 0x6049: b'\x11`I', + 0x604a: b'\x11`J', + 0x604b: b'\x11`K', + 0x604c: b'\x11`L', + 0x604d: b'\x11`M', + 0x604e: b'\x11`N', + 0x604f: b'\x11`O', + 0x6050: b'\x11`P', + 0x6051: b'\x11`Q', + 0x6052: b'\x11`R', + 0x6053: b'\x11`S', + 0x6054: b'\x11`T', + 0x6055: b'\x11`U', + 0x6056: b'\x11`V', + 0x6057: b'\x11`W', + 0x6058: b'\x11`X', + 0x6059: b'\x11`Y', + 0x605a: b'\x11`Z', + 0x605b: b'\x11`[', + 0x605c: b'\x11`\\', + 0x605d: b'\x11`]', + 0x605e: b'\x11`^', + 0x605f: b'\x11`_', + 0x6060: b'\x11``', + 0x6061: b'\x11`a', + 0x6062: b'\x11`b', + 0x6063: b'\x11`c', + 0x6064: b'\x11`d', + 0x6065: b'\x11`e', + 0x6066: b'\x11`f', + 0x6067: b'\x11`g', + 0x6068: b'\x11`h', + 0x6069: b'\x11`i', + 0x606a: b'\x11`j', + 0x606b: b'\x11`k', + 0x606c: b'\x11`l', + 0x606d: b'\x11`m', + 0x606e: b'\x11`n', + 0x606f: b'\x11`o', + 0x6070: b'\x11`p', + 0x6071: b'\x11`q', + 0x6072: b'\x11`r', + 0x6073: b'\x11`s', + 0x6074: b'\x11`t', + 0x6075: b'\x11`u', + 0x6076: b'\x11`v', + 0x6077: b'\x11`w', + 0x6078: b'\x11`x', + 0x6079: b'\x11`y', + 0x607a: b'\x11`z', + 0x607b: b'\x11`{', + 0x607c: b'\x11`|', + 0x607d: b'\x11`}', + 0x607e: b'\x11`~', + 0x607f: b'\x11`\x7f', + 0x6080: b'\x11`\x80', + 0x6081: b'\x11`\x81', + 0x6082: b'\x11`\x82', + 0x6083: b'\x11`\x83', + 0x6084: b'\x11`\x84', + 0x6085: b'\x11`\x85', + 0x6086: b'\x11`\x86', + 0x6087: b'\x11`\x87', + 0x6088: b'\x11`\x88', + 0x6089: b'\x11`\x89', + 0x608a: b'\x11`\x8a', + 0x608b: b'\x11`\x8b', + 0x608c: b'\x11`\x8c', + 0x608d: b'\x11`\x8d', + 0x608e: b'\x11`\x8e', + 0x608f: b'\x11`\x8f', + 0x6090: b'\x11`\x90', + 0x6091: b'\x11`\x91', + 0x6092: b'\x11`\x92', + 0x6093: b'\x11`\x93', + 0x6094: b'\x11`\x94', + 0x6095: b'\x11`\x95', + 0x6096: b'\x11`\x96', + 0x6097: b'\x11`\x97', + 0x6098: b'\x11`\x98', + 0x6099: b'\x11`\x99', + 0x609a: b'\x11`\x9a', + 0x609b: b'\x11`\x9b', + 0x609c: b'\x11`\x9c', + 0x609d: b'\x11`\x9d', + 0x609e: b'\x11`\x9e', + 0x609f: b'\x11`\x9f', + 0x60a0: b'\x11`\xa0', + 0x60a1: b'\x11`\xa1', + 0x60a2: b'\x11`\xa2', + 0x60a3: b'\x11`\xa3', + 0x60a4: b'\x11`\xa4', + 0x60a5: b'\x11`\xa5', + 0x60a6: b'\x11`\xa6', + 0x60a7: b'\x11`\xa7', + 0x60a8: b'\x11`\xa8', + 0x60a9: b'\x11`\xa9', + 0x60aa: b'\x11`\xaa', + 0x60ab: b'\x11`\xab', + 0x60ac: b'\x11`\xac', + 0x60ad: b'\x11`\xad', + 0x60ae: b'\x11`\xae', + 0x60af: b'\x11`\xaf', + 0x60b0: b'\x11`\xb0', + 0x60b1: b'\x11`\xb1', + 0x60b2: b'\x11`\xb2', + 0x60b3: b'\x11`\xb3', + 0x60b4: b'\x11`\xb4', + 0x60b5: b'\x11`\xb5', + 0x60b6: b'\x11`\xb6', + 0x60b7: b'\x11`\xb7', + 0x60b8: b'\x11`\xb8', + 0x60b9: b'\x11`\xb9', + 0x60ba: b'\x11`\xba', + 0x60bb: b'\x11`\xbb', + 0x60bc: b'\x11`\xbc', + 0x60bd: b'\x11`\xbd', + 0x60be: b'\x11`\xbe', + 0x60bf: b'\x11`\xbf', + 0x60c0: b'\x11`\xc0', + 0x60c1: b'\x11`\xc1', + 0x60c2: b'\x11`\xc2', + 0x60c3: b'\x11`\xc3', + 0x60c4: b'\x11`\xc4', + 0x60c5: b'\x11`\xc5', + 0x60c6: b'\x11`\xc6', + 0x60c7: b'\x11`\xc7', + 0x60c8: b'\x11`\xc8', + 0x60c9: b'\x11`\xc9', + 0x60ca: b'\x11`\xca', + 0x60cb: b'\x11`\xcb', + 0x60cc: b'\x11`\xcc', + 0x60cd: b'\x11`\xcd', + 0x60ce: b'\x11`\xce', + 0x60cf: b'\x11`\xcf', + 0x60d0: b'\x11`\xd0', + 0x60d1: b'\x11`\xd1', + 0x60d2: b'\x11`\xd2', + 0x60d3: b'\x11`\xd3', + 0x60d4: b'\x11`\xd4', + 0x60d5: b'\x11`\xd5', + 0x60d6: b'\x11`\xd6', + 0x60d7: b'\x11`\xd7', + 0x60d8: b'\x11`\xd8', + 0x60d9: b'\x11`\xd9', + 0x60da: b'\x11`\xda', + 0x60db: b'\x11`\xdb', + 0x60dc: b'\x11`\xdc', + 0x60dd: b'\x11`\xdd', + 0x60de: b'\x11`\xde', + 0x60df: b'\x11`\xdf', + 0x60e0: b'\x11`\xe0', + 0x60e1: b'\x11`\xe1', + 0x60e2: b'\x11`\xe2', + 0x60e3: b'\x11`\xe3', + 0x60e4: b'\x11`\xe4', + 0x60e5: b'\x11`\xe5', + 0x60e6: b'\x11`\xe6', + 0x60e7: b'\x11`\xe7', + 0x60e8: b'\x11`\xe8', + 0x60e9: b'\x11`\xe9', + 0x60ea: b'\x11`\xea', + 0x60eb: b'\x11`\xeb', + 0x60ec: b'\x11`\xec', + 0x60ed: b'\x11`\xed', + 0x60ee: b'\x11`\xee', + 0x60ef: b'\x11`\xef', + 0x60f0: b'\x11`\xf0', + 0x60f1: b'\x11`\xf1', + 0x60f2: b'\x11`\xf2', + 0x60f3: b'\x11`\xf3', + 0x60f4: b'\x11`\xf4', + 0x60f5: b'\x11`\xf5', + 0x60f6: b'\x11`\xf6', + 0x60f7: b'\x11`\xf7', + 0x60f8: b'\x11`\xf8', + 0x60f9: b'\x11`\xf9', + 0x60fa: b'\x11`\xfa', + 0x60fb: b'\x11`\xfb', + 0x60fc: b'\x11`\xfc', + 0x60fd: b'\x11`\xfd', + 0x60fe: b'\x11`\xfe', + 0x60ff: b'\x11`\xff', + 0x6100: b'\x11a\x00', + 0x6101: b'\x11a\x01', + 0x6102: b'\x11a\x02', + 0x6103: b'\x11a\x03', + 0x6104: b'\x11a\x04', + 0x6105: b'\x11a\x05', + 0x6106: b'\x11a\x06', + 0x6107: b'\x11a\x07', + 0x6108: b'\x11a\x08', + 0x6109: b'\x11a\t', + 0x610a: b'\x11a\n', + 0x610b: b'\x11a\x0b', + 0x610c: b'\x11a\x0c', + 0x610d: b'\x11a\r', + 0x610e: b'\x11a\x0e', + 0x610f: b'\x11a\x0f', + 0x6110: b'\x11a\x10', + 0x6111: b'\x11a\x11', + 0x6112: b'\x11a\x12', + 0x6113: b'\x11a\x13', + 0x6114: b'\x11a\x14', + 0x6115: b'\x11a\x15', + 0x6116: b'\x11a\x16', + 0x6117: b'\x11a\x17', + 0x6118: b'\x11a\x18', + 0x6119: b'\x11a\x19', + 0x611a: b'\x11a\x1a', + 0x611b: b'\x11a\x1b', + 0x611c: b'\x11a\x1c', + 0x611d: b'\x11a\x1d', + 0x611e: b'\x11a\x1e', + 0x611f: b'\x11a\x1f', + 0x6120: b'\x11a ', + 0x6121: b'\x11a!', + 0x6122: b'\x11a"', + 0x6123: b'\x11a#', + 0x6124: b'\x11a$', + 0x6125: b'\x11a%', + 0x6126: b'\x11a&', + 0x6127: b"\x11a'", + 0x6128: b'\x11a(', + 0x6129: b'\x11a)', + 0x612a: b'\x11a*', + 0x612b: b'\x11a+', + 0x612c: b'\x11a,', + 0x612d: b'\x11a-', + 0x612e: b'\x11a.', + 0x612f: b'\x11a/', + 0x6130: b'\x11a0', + 0x6131: b'\x11a1', + 0x6132: b'\x11a2', + 0x6133: b'\x11a3', + 0x6134: b'\x11a4', + 0x6135: b'\x11a5', + 0x6136: b'\x11a6', + 0x6137: b'\x11a7', + 0x6138: b'\x11a8', + 0x6139: b'\x11a9', + 0x613a: b'\x11a:', + 0x613b: b'\x11a;', + 0x613c: b'\x11a<', + 0x613d: b'\x11a=', + 0x613e: b'\x11a>', + 0x613f: b'\x11a?', + 0x6140: b'\x11a@', + 0x6141: b'\x11aA', + 0x6142: b'\x11aB', + 0x6143: b'\x11aC', + 0x6144: b'\x11aD', + 0x6145: b'\x11aE', + 0x6146: b'\x11aF', + 0x6147: b'\x11aG', + 0x6148: b'\x11aH', + 0x6149: b'\x11aI', + 0x614a: b'\x11aJ', + 0x614b: b'\x11aK', + 0x614c: b'\x11aL', + 0x614d: b'\x11aM', + 0x614e: b'\x11aN', + 0x614f: b'\x11aO', + 0x6150: b'\x11aP', + 0x6151: b'\x11aQ', + 0x6152: b'\x11aR', + 0x6153: b'\x11aS', + 0x6154: b'\x11aT', + 0x6155: b'\x11aU', + 0x6156: b'\x11aV', + 0x6157: b'\x11aW', + 0x6158: b'\x11aX', + 0x6159: b'\x11aY', + 0x615a: b'\x11aZ', + 0x615b: b'\x11a[', + 0x615c: b'\x11a\\', + 0x615d: b'\x11a]', + 0x615e: b'\x11a^', + 0x615f: b'\x11a_', + 0x6160: b'\x11a`', + 0x6161: b'\x11aa', + 0x6162: b'\x11ab', + 0x6163: b'\x11ac', + 0x6164: b'\x11ad', + 0x6165: b'\x11ae', + 0x6166: b'\x11af', + 0x6167: b'\x11ag', + 0x6168: b'\x11ah', + 0x6169: b'\x11ai', + 0x616a: b'\x11aj', + 0x616b: b'\x11ak', + 0x616c: b'\x11al', + 0x616d: b'\x11am', + 0x616e: b'\x11an', + 0x616f: b'\x11ao', + 0x6170: b'\x11ap', + 0x6171: b'\x11aq', + 0x6172: b'\x11ar', + 0x6173: b'\x11as', + 0x6174: b'\x11at', + 0x6175: b'\x11au', + 0x6176: b'\x11av', + 0x6177: b'\x11aw', + 0x6178: b'\x11ax', + 0x6179: b'\x11ay', + 0x617a: b'\x11az', + 0x617b: b'\x11a{', + 0x617c: b'\x11a|', + 0x617d: b'\x11a}', + 0x617e: b'\x11a~', + 0x617f: b'\x11a\x7f', + 0x6180: b'\x11a\x80', + 0x6181: b'\x11a\x81', + 0x6182: b'\x11a\x82', + 0x6183: b'\x11a\x83', + 0x6184: b'\x11a\x84', + 0x6185: b'\x11a\x85', + 0x6186: b'\x11a\x86', + 0x6187: b'\x11a\x87', + 0x6188: b'\x11a\x88', + 0x6189: b'\x11a\x89', + 0x618a: b'\x11a\x8a', + 0x618b: b'\x11a\x8b', + 0x618c: b'\x11a\x8c', + 0x618d: b'\x11a\x8d', + 0x618e: b'\x11a\x8e', + 0x618f: b'\x11a\x8f', + 0x6190: b'\x11a\x90', + 0x6191: b'\x11a\x91', + 0x6192: b'\x11a\x92', + 0x6193: b'\x11a\x93', + 0x6194: b'\x11a\x94', + 0x6195: b'\x11a\x95', + 0x6196: b'\x11a\x96', + 0x6197: b'\x11a\x97', + 0x6198: b'\x11a\x98', + 0x6199: b'\x11a\x99', + 0x619a: b'\x11a\x9a', + 0x619b: b'\x11a\x9b', + 0x619c: b'\x11a\x9c', + 0x619d: b'\x11a\x9d', + 0x619e: b'\x11a\x9e', + 0x619f: b'\x11a\x9f', + 0x61a0: b'\x11a\xa0', + 0x61a1: b'\x11a\xa1', + 0x61a2: b'\x11a\xa2', + 0x61a3: b'\x11a\xa3', + 0x61a4: b'\x11a\xa4', + 0x61a5: b'\x11a\xa5', + 0x61a6: b'\x11a\xa6', + 0x61a7: b'\x11a\xa7', + 0x61a8: b'\x11a\xa8', + 0x61a9: b'\x11a\xa9', + 0x61aa: b'\x11a\xaa', + 0x61ab: b'\x11a\xab', + 0x61ac: b'\x11a\xac', + 0x61ad: b'\x11a\xad', + 0x61ae: b'\x11a\xae', + 0x61af: b'\x11a\xaf', + 0x61b0: b'\x11a\xb0', + 0x61b1: b'\x11a\xb1', + 0x61b2: b'\x11a\xb2', + 0x61b3: b'\x11a\xb3', + 0x61b4: b'\x11a\xb4', + 0x61b5: b'\x11a\xb5', + 0x61b6: b'\x11a\xb6', + 0x61b7: b'\x11a\xb7', + 0x61b8: b'\x11a\xb8', + 0x61b9: b'\x11a\xb9', + 0x61ba: b'\x11a\xba', + 0x61bb: b'\x11a\xbb', + 0x61bc: b'\x11a\xbc', + 0x61bd: b'\x11a\xbd', + 0x61be: b'\x11a\xbe', + 0x61bf: b'\x11a\xbf', + 0x61c0: b'\x11a\xc0', + 0x61c1: b'\x11a\xc1', + 0x61c2: b'\x11a\xc2', + 0x61c3: b'\x11a\xc3', + 0x61c4: b'\x11a\xc4', + 0x61c5: b'\x11a\xc5', + 0x61c6: b'\x11a\xc6', + 0x61c7: b'\x11a\xc7', + 0x61c8: b'\x11a\xc8', + 0x61c9: b'\x11a\xc9', + 0x61ca: b'\x11a\xca', + 0x61cb: b'\x11a\xcb', + 0x61cc: b'\x11a\xcc', + 0x61cd: b'\x11a\xcd', + 0x61ce: b'\x11a\xce', + 0x61cf: b'\x11a\xcf', + 0x61d0: b'\x11a\xd0', + 0x61d1: b'\x11a\xd1', + 0x61d2: b'\x11a\xd2', + 0x61d3: b'\x11a\xd3', + 0x61d4: b'\x11a\xd4', + 0x61d5: b'\x11a\xd5', + 0x61d6: b'\x11a\xd6', + 0x61d7: b'\x11a\xd7', + 0x61d8: b'\x11a\xd8', + 0x61d9: b'\x11a\xd9', + 0x61da: b'\x11a\xda', + 0x61db: b'\x11a\xdb', + 0x61dc: b'\x11a\xdc', + 0x61dd: b'\x11a\xdd', + 0x61de: b'\x11a\xde', + 0x61df: b'\x11a\xdf', + 0x61e0: b'\x11a\xe0', + 0x61e1: b'\x11a\xe1', + 0x61e2: b'\x11a\xe2', + 0x61e3: b'\x11a\xe3', + 0x61e4: b'\x11a\xe4', + 0x61e5: b'\x11a\xe5', + 0x61e6: b'\x11a\xe6', + 0x61e7: b'\x11a\xe7', + 0x61e8: b'\x11a\xe8', + 0x61e9: b'\x11a\xe9', + 0x61ea: b'\x11a\xea', + 0x61eb: b'\x11a\xeb', + 0x61ec: b'\x11a\xec', + 0x61ed: b'\x11a\xed', + 0x61ee: b'\x11a\xee', + 0x61ef: b'\x11a\xef', + 0x61f0: b'\x11a\xf0', + 0x61f1: b'\x11a\xf1', + 0x61f2: b'\x11a\xf2', + 0x61f3: b'\x11a\xf3', + 0x61f4: b'\x11a\xf4', + 0x61f5: b'\x11a\xf5', + 0x61f6: b'\x11a\xf6', + 0x61f7: b'\x11a\xf7', + 0x61f8: b'\x11a\xf8', + 0x61f9: b'\x11a\xf9', + 0x61fa: b'\x11a\xfa', + 0x61fb: b'\x11a\xfb', + 0x61fc: b'\x11a\xfc', + 0x61fd: b'\x11a\xfd', + 0x61fe: b'\x11a\xfe', + 0x61ff: b'\x11a\xff', + 0x6200: b'\x11b\x00', + 0x6201: b'\x11b\x01', + 0x6202: b'\x11b\x02', + 0x6203: b'\x11b\x03', + 0x6204: b'\x11b\x04', + 0x6205: b'\x11b\x05', + 0x6206: b'\x11b\x06', + 0x6207: b'\x11b\x07', + 0x6208: b'\x11b\x08', + 0x6209: b'\x11b\t', + 0x620a: b'\x11b\n', + 0x620b: b'\x11b\x0b', + 0x620c: b'\x11b\x0c', + 0x620d: b'\x11b\r', + 0x620e: b'\x11b\x0e', + 0x620f: b'\x11b\x0f', + 0x6210: b'\x11b\x10', + 0x6211: b'\x11b\x11', + 0x6212: b'\x11b\x12', + 0x6213: b'\x11b\x13', + 0x6214: b'\x11b\x14', + 0x6215: b'\x11b\x15', + 0x6216: b'\x11b\x16', + 0x6217: b'\x11b\x17', + 0x6218: b'\x11b\x18', + 0x6219: b'\x11b\x19', + 0x621a: b'\x11b\x1a', + 0x621b: b'\x11b\x1b', + 0x621c: b'\x11b\x1c', + 0x621d: b'\x11b\x1d', + 0x621e: b'\x11b\x1e', + 0x621f: b'\x11b\x1f', + 0x6220: b'\x11b ', + 0x6221: b'\x11b!', + 0x6222: b'\x11b"', + 0x6223: b'\x11b#', + 0x6224: b'\x11b$', + 0x6225: b'\x11b%', + 0x6226: b'\x11b&', + 0x6227: b"\x11b'", + 0x6228: b'\x11b(', + 0x6229: b'\x11b)', + 0x622a: b'\x11b*', + 0x622b: b'\x11b+', + 0x622c: b'\x11b,', + 0x622d: b'\x11b-', + 0x622e: b'\x11b.', + 0x622f: b'\x11b/', + 0x6230: b'\x11b0', + 0x6231: b'\x11b1', + 0x6232: b'\x11b2', + 0x6233: b'\x11b3', + 0x6234: b'\x11b4', + 0x6235: b'\x11b5', + 0x6236: b'\x11b6', + 0x6237: b'\x11b7', + 0x6238: b'\x11b8', + 0x6239: b'\x11b9', + 0x623a: b'\x11b:', + 0x623b: b'\x11b;', + 0x623c: b'\x11b<', + 0x623d: b'\x11b=', + 0x623e: b'\x11b>', + 0x623f: b'\x11b?', + 0x6240: b'\x11b@', + 0x6241: b'\x11bA', + 0x6242: b'\x11bB', + 0x6243: b'\x11bC', + 0x6244: b'\x11bD', + 0x6245: b'\x11bE', + 0x6246: b'\x11bF', + 0x6247: b'\x11bG', + 0x6248: b'\x11bH', + 0x6249: b'\x11bI', + 0x624a: b'\x11bJ', + 0x624b: b'\x11bK', + 0x624c: b'\x11bL', + 0x624d: b'\x11bM', + 0x624e: b'\x11bN', + 0x624f: b'\x11bO', + 0x6250: b'\x11bP', + 0x6251: b'\x11bQ', + 0x6252: b'\x11bR', + 0x6253: b'\x11bS', + 0x6254: b'\x11bT', + 0x6255: b'\x11bU', + 0x6256: b'\x11bV', + 0x6257: b'\x11bW', + 0x6258: b'\x11bX', + 0x6259: b'\x11bY', + 0x625a: b'\x11bZ', + 0x625b: b'\x11b[', + 0x625c: b'\x11b\\', + 0x625d: b'\x11b]', + 0x625e: b'\x11b^', + 0x625f: b'\x11b_', + 0x6260: b'\x11b`', + 0x6261: b'\x11ba', + 0x6262: b'\x11bb', + 0x6263: b'\x11bc', + 0x6264: b'\x11bd', + 0x6265: b'\x11be', + 0x6266: b'\x11bf', + 0x6267: b'\x11bg', + 0x6268: b'\x11bh', + 0x6269: b'\x11bi', + 0x626a: b'\x11bj', + 0x626b: b'\x11bk', + 0x626c: b'\x11bl', + 0x626d: b'\x11bm', + 0x626e: b'\x11bn', + 0x626f: b'\x11bo', + 0x6270: b'\x11bp', + 0x6271: b'\x11bq', + 0x6272: b'\x11br', + 0x6273: b'\x11bs', + 0x6274: b'\x11bt', + 0x6275: b'\x11bu', + 0x6276: b'\x11bv', + 0x6277: b'\x11bw', + 0x6278: b'\x11bx', + 0x6279: b'\x11by', + 0x627a: b'\x11bz', + 0x627b: b'\x11b{', + 0x627c: b'\x11b|', + 0x627d: b'\x11b}', + 0x627e: b'\x11b~', + 0x627f: b'\x11b\x7f', + 0x6280: b'\x11b\x80', + 0x6281: b'\x11b\x81', + 0x6282: b'\x11b\x82', + 0x6283: b'\x11b\x83', + 0x6284: b'\x11b\x84', + 0x6285: b'\x11b\x85', + 0x6286: b'\x11b\x86', + 0x6287: b'\x11b\x87', + 0x6288: b'\x11b\x88', + 0x6289: b'\x11b\x89', + 0x628a: b'\x11b\x8a', + 0x628b: b'\x11b\x8b', + 0x628c: b'\x11b\x8c', + 0x628d: b'\x11b\x8d', + 0x628e: b'\x11b\x8e', + 0x628f: b'\x11b\x8f', + 0x6290: b'\x11b\x90', + 0x6291: b'\x11b\x91', + 0x6292: b'\x11b\x92', + 0x6293: b'\x11b\x93', + 0x6294: b'\x11b\x94', + 0x6295: b'\x11b\x95', + 0x6296: b'\x11b\x96', + 0x6297: b'\x11b\x97', + 0x6298: b'\x11b\x98', + 0x6299: b'\x11b\x99', + 0x629a: b'\x11b\x9a', + 0x629b: b'\x11b\x9b', + 0x629c: b'\x11b\x9c', + 0x629d: b'\x11b\x9d', + 0x629e: b'\x11b\x9e', + 0x629f: b'\x11b\x9f', + 0x62a0: b'\x11b\xa0', + 0x62a1: b'\x11b\xa1', + 0x62a2: b'\x11b\xa2', + 0x62a3: b'\x11b\xa3', + 0x62a4: b'\x11b\xa4', + 0x62a5: b'\x11b\xa5', + 0x62a6: b'\x11b\xa6', + 0x62a7: b'\x11b\xa7', + 0x62a8: b'\x11b\xa8', + 0x62a9: b'\x11b\xa9', + 0x62aa: b'\x11b\xaa', + 0x62ab: b'\x11b\xab', + 0x62ac: b'\x11b\xac', + 0x62ad: b'\x11b\xad', + 0x62ae: b'\x11b\xae', + 0x62af: b'\x11b\xaf', + 0x62b0: b'\x11b\xb0', + 0x62b1: b'\x11b\xb1', + 0x62b2: b'\x11b\xb2', + 0x62b3: b'\x11b\xb3', + 0x62b4: b'\x11b\xb4', + 0x62b5: b'\x11b\xb5', + 0x62b6: b'\x11b\xb6', + 0x62b7: b'\x11b\xb7', + 0x62b8: b'\x11b\xb8', + 0x62b9: b'\x11b\xb9', + 0x62ba: b'\x11b\xba', + 0x62bb: b'\x11b\xbb', + 0x62bc: b'\x11b\xbc', + 0x62bd: b'\x11b\xbd', + 0x62be: b'\x11b\xbe', + 0x62bf: b'\x11b\xbf', + 0x62c0: b'\x11b\xc0', + 0x62c1: b'\x11b\xc1', + 0x62c2: b'\x11b\xc2', + 0x62c3: b'\x11b\xc3', + 0x62c4: b'\x11b\xc4', + 0x62c5: b'\x11b\xc5', + 0x62c6: b'\x11b\xc6', + 0x62c7: b'\x11b\xc7', + 0x62c8: b'\x11b\xc8', + 0x62c9: b'\x11b\xc9', + 0x62ca: b'\x11b\xca', + 0x62cb: b'\x11b\xcb', + 0x62cc: b'\x11b\xcc', + 0x62cd: b'\x11b\xcd', + 0x62ce: b'\x11b\xce', + 0x62cf: b'\x11b\xcf', + 0x62d0: b'\x11b\xd0', + 0x62d1: b'\x11b\xd1', + 0x62d2: b'\x11b\xd2', + 0x62d3: b'\x11b\xd3', + 0x62d4: b'\x11b\xd4', + 0x62d5: b'\x11b\xd5', + 0x62d6: b'\x11b\xd6', + 0x62d7: b'\x11b\xd7', + 0x62d8: b'\x11b\xd8', + 0x62d9: b'\x11b\xd9', + 0x62da: b'\x11b\xda', + 0x62db: b'\x11b\xdb', + 0x62dc: b'\x11b\xdc', + 0x62dd: b'\x11b\xdd', + 0x62de: b'\x11b\xde', + 0x62df: b'\x11b\xdf', + 0x62e0: b'\x11b\xe0', + 0x62e1: b'\x11b\xe1', + 0x62e2: b'\x11b\xe2', + 0x62e3: b'\x11b\xe3', + 0x62e4: b'\x11b\xe4', + 0x62e5: b'\x11b\xe5', + 0x62e6: b'\x11b\xe6', + 0x62e7: b'\x11b\xe7', + 0x62e8: b'\x11b\xe8', + 0x62e9: b'\x11b\xe9', + 0x62ea: b'\x11b\xea', + 0x62eb: b'\x11b\xeb', + 0x62ec: b'\x11b\xec', + 0x62ed: b'\x11b\xed', + 0x62ee: b'\x11b\xee', + 0x62ef: b'\x11b\xef', + 0x62f0: b'\x11b\xf0', + 0x62f1: b'\x11b\xf1', + 0x62f2: b'\x11b\xf2', + 0x62f3: b'\x11b\xf3', + 0x62f4: b'\x11b\xf4', + 0x62f5: b'\x11b\xf5', + 0x62f6: b'\x11b\xf6', + 0x62f7: b'\x11b\xf7', + 0x62f8: b'\x11b\xf8', + 0x62f9: b'\x11b\xf9', + 0x62fa: b'\x11b\xfa', + 0x62fb: b'\x11b\xfb', + 0x62fc: b'\x11b\xfc', + 0x62fd: b'\x11b\xfd', + 0x62fe: b'\x11b\xfe', + 0x62ff: b'\x11b\xff', + 0x6300: b'\x11c\x00', + 0x6301: b'\x11c\x01', + 0x6302: b'\x11c\x02', + 0x6303: b'\x11c\x03', + 0x6304: b'\x11c\x04', + 0x6305: b'\x11c\x05', + 0x6306: b'\x11c\x06', + 0x6307: b'\x11c\x07', + 0x6308: b'\x11c\x08', + 0x6309: b'\x11c\t', + 0x630a: b'\x11c\n', + 0x630b: b'\x11c\x0b', + 0x630c: b'\x11c\x0c', + 0x630d: b'\x11c\r', + 0x630e: b'\x11c\x0e', + 0x630f: b'\x11c\x0f', + 0x6310: b'\x11c\x10', + 0x6311: b'\x11c\x11', + 0x6312: b'\x11c\x12', + 0x6313: b'\x11c\x13', + 0x6314: b'\x11c\x14', + 0x6315: b'\x11c\x15', + 0x6316: b'\x11c\x16', + 0x6317: b'\x11c\x17', + 0x6318: b'\x11c\x18', + 0x6319: b'\x11c\x19', + 0x631a: b'\x11c\x1a', + 0x631b: b'\x11c\x1b', + 0x631c: b'\x11c\x1c', + 0x631d: b'\x11c\x1d', + 0x631e: b'\x11c\x1e', + 0x631f: b'\x11c\x1f', + 0x6320: b'\x11c ', + 0x6321: b'\x11c!', + 0x6322: b'\x11c"', + 0x6323: b'\x11c#', + 0x6324: b'\x11c$', + 0x6325: b'\x11c%', + 0x6326: b'\x11c&', + 0x6327: b"\x11c'", + 0x6328: b'\x11c(', + 0x6329: b'\x11c)', + 0x632a: b'\x11c*', + 0x632b: b'\x11c+', + 0x632c: b'\x11c,', + 0x632d: b'\x11c-', + 0x632e: b'\x11c.', + 0x632f: b'\x11c/', + 0x6330: b'\x11c0', + 0x6331: b'\x11c1', + 0x6332: b'\x11c2', + 0x6333: b'\x11c3', + 0x6334: b'\x11c4', + 0x6335: b'\x11c5', + 0x6336: b'\x11c6', + 0x6337: b'\x11c7', + 0x6338: b'\x11c8', + 0x6339: b'\x11c9', + 0x633a: b'\x11c:', + 0x633b: b'\x11c;', + 0x633c: b'\x11c<', + 0x633d: b'\x11c=', + 0x633e: b'\x11c>', + 0x633f: b'\x11c?', + 0x6340: b'\x11c@', + 0x6341: b'\x11cA', + 0x6342: b'\x11cB', + 0x6343: b'\x11cC', + 0x6344: b'\x11cD', + 0x6345: b'\x11cE', + 0x6346: b'\x11cF', + 0x6347: b'\x11cG', + 0x6348: b'\x11cH', + 0x6349: b'\x11cI', + 0x634a: b'\x11cJ', + 0x634b: b'\x11cK', + 0x634c: b'\x11cL', + 0x634d: b'\x11cM', + 0x634e: b'\x11cN', + 0x634f: b'\x11cO', + 0x6350: b'\x11cP', + 0x6351: b'\x11cQ', + 0x6352: b'\x11cR', + 0x6353: b'\x11cS', + 0x6354: b'\x11cT', + 0x6355: b'\x11cU', + 0x6356: b'\x11cV', + 0x6357: b'\x11cW', + 0x6358: b'\x11cX', + 0x6359: b'\x11cY', + 0x635a: b'\x11cZ', + 0x635b: b'\x11c[', + 0x635c: b'\x11c\\', + 0x635d: b'\x11c]', + 0x635e: b'\x11c^', + 0x635f: b'\x11c_', + 0x6360: b'\x11c`', + 0x6361: b'\x11ca', + 0x6362: b'\x11cb', + 0x6363: b'\x11cc', + 0x6364: b'\x11cd', + 0x6365: b'\x11ce', + 0x6366: b'\x11cf', + 0x6367: b'\x11cg', + 0x6368: b'\x11ch', + 0x6369: b'\x11ci', + 0x636a: b'\x11cj', + 0x636b: b'\x11ck', + 0x636c: b'\x11cl', + 0x636d: b'\x11cm', + 0x636e: b'\x11cn', + 0x636f: b'\x11co', + 0x6370: b'\x11cp', + 0x6371: b'\x11cq', + 0x6372: b'\x11cr', + 0x6373: b'\x11cs', + 0x6374: b'\x11ct', + 0x6375: b'\x11cu', + 0x6376: b'\x11cv', + 0x6377: b'\x11cw', + 0x6378: b'\x11cx', + 0x6379: b'\x11cy', + 0x637a: b'\x11cz', + 0x637b: b'\x11c{', + 0x637c: b'\x11c|', + 0x637d: b'\x11c}', + 0x637e: b'\x11c~', + 0x637f: b'\x11c\x7f', + 0x6380: b'\x11c\x80', + 0x6381: b'\x11c\x81', + 0x6382: b'\x11c\x82', + 0x6383: b'\x11c\x83', + 0x6384: b'\x11c\x84', + 0x6385: b'\x11c\x85', + 0x6386: b'\x11c\x86', + 0x6387: b'\x11c\x87', + 0x6388: b'\x11c\x88', + 0x6389: b'\x11c\x89', + 0x638a: b'\x11c\x8a', + 0x638b: b'\x11c\x8b', + 0x638c: b'\x11c\x8c', + 0x638d: b'\x11c\x8d', + 0x638e: b'\x11c\x8e', + 0x638f: b'\x11c\x8f', + 0x6390: b'\x11c\x90', + 0x6391: b'\x11c\x91', + 0x6392: b'\x11c\x92', + 0x6393: b'\x11c\x93', + 0x6394: b'\x11c\x94', + 0x6395: b'\x11c\x95', + 0x6396: b'\x11c\x96', + 0x6397: b'\x11c\x97', + 0x6398: b'\x11c\x98', + 0x6399: b'\x11c\x99', + 0x639a: b'\x11c\x9a', + 0x639b: b'\x11c\x9b', + 0x639c: b'\x11c\x9c', + 0x639d: b'\x11c\x9d', + 0x639e: b'\x11c\x9e', + 0x639f: b'\x11c\x9f', + 0x63a0: b'\x11c\xa0', + 0x63a1: b'\x11c\xa1', + 0x63a2: b'\x11c\xa2', + 0x63a3: b'\x11c\xa3', + 0x63a4: b'\x11c\xa4', + 0x63a5: b'\x11c\xa5', + 0x63a6: b'\x11c\xa6', + 0x63a7: b'\x11c\xa7', + 0x63a8: b'\x11c\xa8', + 0x63a9: b'\x11c\xa9', + 0x63aa: b'\x11c\xaa', + 0x63ab: b'\x11c\xab', + 0x63ac: b'\x11c\xac', + 0x63ad: b'\x11c\xad', + 0x63ae: b'\x11c\xae', + 0x63af: b'\x11c\xaf', + 0x63b0: b'\x11c\xb0', + 0x63b1: b'\x11c\xb1', + 0x63b2: b'\x11c\xb2', + 0x63b3: b'\x11c\xb3', + 0x63b4: b'\x11c\xb4', + 0x63b5: b'\x11c\xb5', + 0x63b6: b'\x11c\xb6', + 0x63b7: b'\x11c\xb7', + 0x63b8: b'\x11c\xb8', + 0x63b9: b'\x11c\xb9', + 0x63ba: b'\x11c\xba', + 0x63bb: b'\x11c\xbb', + 0x63bc: b'\x11c\xbc', + 0x63bd: b'\x11c\xbd', + 0x63be: b'\x11c\xbe', + 0x63bf: b'\x11c\xbf', + 0x63c0: b'\x11c\xc0', + 0x63c1: b'\x11c\xc1', + 0x63c2: b'\x11c\xc2', + 0x63c3: b'\x11c\xc3', + 0x63c4: b'\x11c\xc4', + 0x63c5: b'\x11c\xc5', + 0x63c6: b'\x11c\xc6', + 0x63c7: b'\x11c\xc7', + 0x63c8: b'\x11c\xc8', + 0x63c9: b'\x11c\xc9', + 0x63ca: b'\x11c\xca', + 0x63cb: b'\x11c\xcb', + 0x63cc: b'\x11c\xcc', + 0x63cd: b'\x11c\xcd', + 0x63ce: b'\x11c\xce', + 0x63cf: b'\x11c\xcf', + 0x63d0: b'\x11c\xd0', + 0x63d1: b'\x11c\xd1', + 0x63d2: b'\x11c\xd2', + 0x63d3: b'\x11c\xd3', + 0x63d4: b'\x11c\xd4', + 0x63d5: b'\x11c\xd5', + 0x63d6: b'\x11c\xd6', + 0x63d7: b'\x11c\xd7', + 0x63d8: b'\x11c\xd8', + 0x63d9: b'\x11c\xd9', + 0x63da: b'\x11c\xda', + 0x63db: b'\x11c\xdb', + 0x63dc: b'\x11c\xdc', + 0x63dd: b'\x11c\xdd', + 0x63de: b'\x11c\xde', + 0x63df: b'\x11c\xdf', + 0x63e0: b'\x11c\xe0', + 0x63e1: b'\x11c\xe1', + 0x63e2: b'\x11c\xe2', + 0x63e3: b'\x11c\xe3', + 0x63e4: b'\x11c\xe4', + 0x63e5: b'\x11c\xe5', + 0x63e6: b'\x11c\xe6', + 0x63e7: b'\x11c\xe7', + 0x63e8: b'\x11c\xe8', + 0x63e9: b'\x11c\xe9', + 0x63ea: b'\x11c\xea', + 0x63eb: b'\x11c\xeb', + 0x63ec: b'\x11c\xec', + 0x63ed: b'\x11c\xed', + 0x63ee: b'\x11c\xee', + 0x63ef: b'\x11c\xef', + 0x63f0: b'\x11c\xf0', + 0x63f1: b'\x11c\xf1', + 0x63f2: b'\x11c\xf2', + 0x63f3: b'\x11c\xf3', + 0x63f4: b'\x11c\xf4', + 0x63f5: b'\x11c\xf5', + 0x63f6: b'\x11c\xf6', + 0x63f7: b'\x11c\xf7', + 0x63f8: b'\x11c\xf8', + 0x63f9: b'\x11c\xf9', + 0x63fa: b'\x11c\xfa', + 0x63fb: b'\x11c\xfb', + 0x63fc: b'\x11c\xfc', + 0x63fd: b'\x11c\xfd', + 0x63fe: b'\x11c\xfe', + 0x63ff: b'\x11c\xff', + 0x6400: b'\x11d\x00', + 0x6401: b'\x11d\x01', + 0x6402: b'\x11d\x02', + 0x6403: b'\x11d\x03', + 0x6404: b'\x11d\x04', + 0x6405: b'\x11d\x05', + 0x6406: b'\x11d\x06', + 0x6407: b'\x11d\x07', + 0x6408: b'\x11d\x08', + 0x6409: b'\x11d\t', + 0x640a: b'\x11d\n', + 0x640b: b'\x11d\x0b', + 0x640c: b'\x11d\x0c', + 0x640d: b'\x11d\r', + 0x640e: b'\x11d\x0e', + 0x640f: b'\x11d\x0f', + 0x6410: b'\x11d\x10', + 0x6411: b'\x11d\x11', + 0x6412: b'\x11d\x12', + 0x6413: b'\x11d\x13', + 0x6414: b'\x11d\x14', + 0x6415: b'\x11d\x15', + 0x6416: b'\x11d\x16', + 0x6417: b'\x11d\x17', + 0x6418: b'\x11d\x18', + 0x6419: b'\x11d\x19', + 0x641a: b'\x11d\x1a', + 0x641b: b'\x11d\x1b', + 0x641c: b'\x11d\x1c', + 0x641d: b'\x11d\x1d', + 0x641e: b'\x11d\x1e', + 0x641f: b'\x11d\x1f', + 0x6420: b'\x11d ', + 0x6421: b'\x11d!', + 0x6422: b'\x11d"', + 0x6423: b'\x11d#', + 0x6424: b'\x11d$', + 0x6425: b'\x11d%', + 0x6426: b'\x11d&', + 0x6427: b"\x11d'", + 0x6428: b'\x11d(', + 0x6429: b'\x11d)', + 0x642a: b'\x11d*', + 0x642b: b'\x11d+', + 0x642c: b'\x11d,', + 0x642d: b'\x11d-', + 0x642e: b'\x11d.', + 0x642f: b'\x11d/', + 0x6430: b'\x11d0', + 0x6431: b'\x11d1', + 0x6432: b'\x11d2', + 0x6433: b'\x11d3', + 0x6434: b'\x11d4', + 0x6435: b'\x11d5', + 0x6436: b'\x11d6', + 0x6437: b'\x11d7', + 0x6438: b'\x11d8', + 0x6439: b'\x11d9', + 0x643a: b'\x11d:', + 0x643b: b'\x11d;', + 0x643c: b'\x11d<', + 0x643d: b'\x11d=', + 0x643e: b'\x11d>', + 0x643f: b'\x11d?', + 0x6440: b'\x11d@', + 0x6441: b'\x11dA', + 0x6442: b'\x11dB', + 0x6443: b'\x11dC', + 0x6444: b'\x11dD', + 0x6445: b'\x11dE', + 0x6446: b'\x11dF', + 0x6447: b'\x11dG', + 0x6448: b'\x11dH', + 0x6449: b'\x11dI', + 0x644a: b'\x11dJ', + 0x644b: b'\x11dK', + 0x644c: b'\x11dL', + 0x644d: b'\x11dM', + 0x644e: b'\x11dN', + 0x644f: b'\x11dO', + 0x6450: b'\x11dP', + 0x6451: b'\x11dQ', + 0x6452: b'\x11dR', + 0x6453: b'\x11dS', + 0x6454: b'\x11dT', + 0x6455: b'\x11dU', + 0x6456: b'\x11dV', + 0x6457: b'\x11dW', + 0x6458: b'\x11dX', + 0x6459: b'\x11dY', + 0x645a: b'\x11dZ', + 0x645b: b'\x11d[', + 0x645c: b'\x11d\\', + 0x645d: b'\x11d]', + 0x645e: b'\x11d^', + 0x645f: b'\x11d_', + 0x6460: b'\x11d`', + 0x6461: b'\x11da', + 0x6462: b'\x11db', + 0x6463: b'\x11dc', + 0x6464: b'\x11dd', + 0x6465: b'\x11de', + 0x6466: b'\x11df', + 0x6467: b'\x11dg', + 0x6468: b'\x11dh', + 0x6469: b'\x11di', + 0x646a: b'\x11dj', + 0x646b: b'\x11dk', + 0x646c: b'\x11dl', + 0x646d: b'\x11dm', + 0x646e: b'\x11dn', + 0x646f: b'\x11do', + 0x6470: b'\x11dp', + 0x6471: b'\x11dq', + 0x6472: b'\x11dr', + 0x6473: b'\x11ds', + 0x6474: b'\x11dt', + 0x6475: b'\x11du', + 0x6476: b'\x11dv', + 0x6477: b'\x11dw', + 0x6478: b'\x11dx', + 0x6479: b'\x11dy', + 0x647a: b'\x11dz', + 0x647b: b'\x11d{', + 0x647c: b'\x11d|', + 0x647d: b'\x11d}', + 0x647e: b'\x11d~', + 0x647f: b'\x11d\x7f', + 0x6480: b'\x11d\x80', + 0x6481: b'\x11d\x81', + 0x6482: b'\x11d\x82', + 0x6483: b'\x11d\x83', + 0x6484: b'\x11d\x84', + 0x6485: b'\x11d\x85', + 0x6486: b'\x11d\x86', + 0x6487: b'\x11d\x87', + 0x6488: b'\x11d\x88', + 0x6489: b'\x11d\x89', + 0x648a: b'\x11d\x8a', + 0x648b: b'\x11d\x8b', + 0x648c: b'\x11d\x8c', + 0x648d: b'\x11d\x8d', + 0x648e: b'\x11d\x8e', + 0x648f: b'\x11d\x8f', + 0x6490: b'\x11d\x90', + 0x6491: b'\x11d\x91', + 0x6492: b'\x11d\x92', + 0x6493: b'\x11d\x93', + 0x6494: b'\x11d\x94', + 0x6495: b'\x11d\x95', + 0x6496: b'\x11d\x96', + 0x6497: b'\x11d\x97', + 0x6498: b'\x11d\x98', + 0x6499: b'\x11d\x99', + 0x649a: b'\x11d\x9a', + 0x649b: b'\x11d\x9b', + 0x649c: b'\x11d\x9c', + 0x649d: b'\x11d\x9d', + 0x649e: b'\x11d\x9e', + 0x649f: b'\x11d\x9f', + 0x64a0: b'\x11d\xa0', + 0x64a1: b'\x11d\xa1', + 0x64a2: b'\x11d\xa2', + 0x64a3: b'\x11d\xa3', + 0x64a4: b'\x11d\xa4', + 0x64a5: b'\x11d\xa5', + 0x64a6: b'\x11d\xa6', + 0x64a7: b'\x11d\xa7', + 0x64a8: b'\x11d\xa8', + 0x64a9: b'\x11d\xa9', + 0x64aa: b'\x11d\xaa', + 0x64ab: b'\x11d\xab', + 0x64ac: b'\x11d\xac', + 0x64ad: b'\x11d\xad', + 0x64ae: b'\x11d\xae', + 0x64af: b'\x11d\xaf', + 0x64b0: b'\x11d\xb0', + 0x64b1: b'\x11d\xb1', + 0x64b2: b'\x11d\xb2', + 0x64b3: b'\x11d\xb3', + 0x64b4: b'\x11d\xb4', + 0x64b5: b'\x11d\xb5', + 0x64b6: b'\x11d\xb6', + 0x64b7: b'\x11d\xb7', + 0x64b8: b'\x11d\xb8', + 0x64b9: b'\x11d\xb9', + 0x64ba: b'\x11d\xba', + 0x64bb: b'\x11d\xbb', + 0x64bc: b'\x11d\xbc', + 0x64bd: b'\x11d\xbd', + 0x64be: b'\x11d\xbe', + 0x64bf: b'\x11d\xbf', + 0x64c0: b'\x11d\xc0', + 0x64c1: b'\x11d\xc1', + 0x64c2: b'\x11d\xc2', + 0x64c3: b'\x11d\xc3', + 0x64c4: b'\x11d\xc4', + 0x64c5: b'\x11d\xc5', + 0x64c6: b'\x11d\xc6', + 0x64c7: b'\x11d\xc7', + 0x64c8: b'\x11d\xc8', + 0x64c9: b'\x11d\xc9', + 0x64ca: b'\x11d\xca', + 0x64cb: b'\x11d\xcb', + 0x64cc: b'\x11d\xcc', + 0x64cd: b'\x11d\xcd', + 0x64ce: b'\x11d\xce', + 0x64cf: b'\x11d\xcf', + 0x64d0: b'\x11d\xd0', + 0x64d1: b'\x11d\xd1', + 0x64d2: b'\x11d\xd2', + 0x64d3: b'\x11d\xd3', + 0x64d4: b'\x11d\xd4', + 0x64d5: b'\x11d\xd5', + 0x64d6: b'\x11d\xd6', + 0x64d7: b'\x11d\xd7', + 0x64d8: b'\x11d\xd8', + 0x64d9: b'\x11d\xd9', + 0x64da: b'\x11d\xda', + 0x64db: b'\x11d\xdb', + 0x64dc: b'\x11d\xdc', + 0x64dd: b'\x11d\xdd', + 0x64de: b'\x11d\xde', + 0x64df: b'\x11d\xdf', + 0x64e0: b'\x11d\xe0', + 0x64e1: b'\x11d\xe1', + 0x64e2: b'\x11d\xe2', + 0x64e3: b'\x11d\xe3', + 0x64e4: b'\x11d\xe4', + 0x64e5: b'\x11d\xe5', + 0x64e6: b'\x11d\xe6', + 0x64e7: b'\x11d\xe7', + 0x64e8: b'\x11d\xe8', + 0x64e9: b'\x11d\xe9', + 0x64ea: b'\x11d\xea', + 0x64eb: b'\x11d\xeb', + 0x64ec: b'\x11d\xec', + 0x64ed: b'\x11d\xed', + 0x64ee: b'\x11d\xee', + 0x64ef: b'\x11d\xef', + 0x64f0: b'\x11d\xf0', + 0x64f1: b'\x11d\xf1', + 0x64f2: b'\x11d\xf2', + 0x64f3: b'\x11d\xf3', + 0x64f4: b'\x11d\xf4', + 0x64f5: b'\x11d\xf5', + 0x64f6: b'\x11d\xf6', + 0x64f7: b'\x11d\xf7', + 0x64f8: b'\x11d\xf8', + 0x64f9: b'\x11d\xf9', + 0x64fa: b'\x11d\xfa', + 0x64fb: b'\x11d\xfb', + 0x64fc: b'\x11d\xfc', + 0x64fd: b'\x11d\xfd', + 0x64fe: b'\x11d\xfe', + 0x64ff: b'\x11d\xff', + 0x6500: b'\x11e\x00', + 0x6501: b'\x11e\x01', + 0x6502: b'\x11e\x02', + 0x6503: b'\x11e\x03', + 0x6504: b'\x11e\x04', + 0x6505: b'\x11e\x05', + 0x6506: b'\x11e\x06', + 0x6507: b'\x11e\x07', + 0x6508: b'\x11e\x08', + 0x6509: b'\x11e\t', + 0x650a: b'\x11e\n', + 0x650b: b'\x11e\x0b', + 0x650c: b'\x11e\x0c', + 0x650d: b'\x11e\r', + 0x650e: b'\x11e\x0e', + 0x650f: b'\x11e\x0f', + 0x6510: b'\x11e\x10', + 0x6511: b'\x11e\x11', + 0x6512: b'\x11e\x12', + 0x6513: b'\x11e\x13', + 0x6514: b'\x11e\x14', + 0x6515: b'\x11e\x15', + 0x6516: b'\x11e\x16', + 0x6517: b'\x11e\x17', + 0x6518: b'\x11e\x18', + 0x6519: b'\x11e\x19', + 0x651a: b'\x11e\x1a', + 0x651b: b'\x11e\x1b', + 0x651c: b'\x11e\x1c', + 0x651d: b'\x11e\x1d', + 0x651e: b'\x11e\x1e', + 0x651f: b'\x11e\x1f', + 0x6520: b'\x11e ', + 0x6521: b'\x11e!', + 0x6522: b'\x11e"', + 0x6523: b'\x11e#', + 0x6524: b'\x11e$', + 0x6525: b'\x11e%', + 0x6526: b'\x11e&', + 0x6527: b"\x11e'", + 0x6528: b'\x11e(', + 0x6529: b'\x11e)', + 0x652a: b'\x11e*', + 0x652b: b'\x11e+', + 0x652c: b'\x11e,', + 0x652d: b'\x11e-', + 0x652e: b'\x11e.', + 0x652f: b'\x11e/', + 0x6530: b'\x11e0', + 0x6531: b'\x11e1', + 0x6532: b'\x11e2', + 0x6533: b'\x11e3', + 0x6534: b'\x11e4', + 0x6535: b'\x11e5', + 0x6536: b'\x11e6', + 0x6537: b'\x11e7', + 0x6538: b'\x11e8', + 0x6539: b'\x11e9', + 0x653a: b'\x11e:', + 0x653b: b'\x11e;', + 0x653c: b'\x11e<', + 0x653d: b'\x11e=', + 0x653e: b'\x11e>', + 0x653f: b'\x11e?', + 0x6540: b'\x11e@', + 0x6541: b'\x11eA', + 0x6542: b'\x11eB', + 0x6543: b'\x11eC', + 0x6544: b'\x11eD', + 0x6545: b'\x11eE', + 0x6546: b'\x11eF', + 0x6547: b'\x11eG', + 0x6548: b'\x11eH', + 0x6549: b'\x11eI', + 0x654a: b'\x11eJ', + 0x654b: b'\x11eK', + 0x654c: b'\x11eL', + 0x654d: b'\x11eM', + 0x654e: b'\x11eN', + 0x654f: b'\x11eO', + 0x6550: b'\x11eP', + 0x6551: b'\x11eQ', + 0x6552: b'\x11eR', + 0x6553: b'\x11eS', + 0x6554: b'\x11eT', + 0x6555: b'\x11eU', + 0x6556: b'\x11eV', + 0x6557: b'\x11eW', + 0x6558: b'\x11eX', + 0x6559: b'\x11eY', + 0x655a: b'\x11eZ', + 0x655b: b'\x11e[', + 0x655c: b'\x11e\\', + 0x655d: b'\x11e]', + 0x655e: b'\x11e^', + 0x655f: b'\x11e_', + 0x6560: b'\x11e`', + 0x6561: b'\x11ea', + 0x6562: b'\x11eb', + 0x6563: b'\x11ec', + 0x6564: b'\x11ed', + 0x6565: b'\x11ee', + 0x6566: b'\x11ef', + 0x6567: b'\x11eg', + 0x6568: b'\x11eh', + 0x6569: b'\x11ei', + 0x656a: b'\x11ej', + 0x656b: b'\x11ek', + 0x656c: b'\x11el', + 0x656d: b'\x11em', + 0x656e: b'\x11en', + 0x656f: b'\x11eo', + 0x6570: b'\x11ep', + 0x6571: b'\x11eq', + 0x6572: b'\x11er', + 0x6573: b'\x11es', + 0x6574: b'\x11et', + 0x6575: b'\x11eu', + 0x6576: b'\x11ev', + 0x6577: b'\x11ew', + 0x6578: b'\x11ex', + 0x6579: b'\x11ey', + 0x657a: b'\x11ez', + 0x657b: b'\x11e{', + 0x657c: b'\x11e|', + 0x657d: b'\x11e}', + 0x657e: b'\x11e~', + 0x657f: b'\x11e\x7f', + 0x6580: b'\x11e\x80', + 0x6581: b'\x11e\x81', + 0x6582: b'\x11e\x82', + 0x6583: b'\x11e\x83', + 0x6584: b'\x11e\x84', + 0x6585: b'\x11e\x85', + 0x6586: b'\x11e\x86', + 0x6587: b'\x11e\x87', + 0x6588: b'\x11e\x88', + 0x6589: b'\x11e\x89', + 0x658a: b'\x11e\x8a', + 0x658b: b'\x11e\x8b', + 0x658c: b'\x11e\x8c', + 0x658d: b'\x11e\x8d', + 0x658e: b'\x11e\x8e', + 0x658f: b'\x11e\x8f', + 0x6590: b'\x11e\x90', + 0x6591: b'\x11e\x91', + 0x6592: b'\x11e\x92', + 0x6593: b'\x11e\x93', + 0x6594: b'\x11e\x94', + 0x6595: b'\x11e\x95', + 0x6596: b'\x11e\x96', + 0x6597: b'\x11e\x97', + 0x6598: b'\x11e\x98', + 0x6599: b'\x11e\x99', + 0x659a: b'\x11e\x9a', + 0x659b: b'\x11e\x9b', + 0x659c: b'\x11e\x9c', + 0x659d: b'\x11e\x9d', + 0x659e: b'\x11e\x9e', + 0x659f: b'\x11e\x9f', + 0x65a0: b'\x11e\xa0', + 0x65a1: b'\x11e\xa1', + 0x65a2: b'\x11e\xa2', + 0x65a3: b'\x11e\xa3', + 0x65a4: b'\x11e\xa4', + 0x65a5: b'\x11e\xa5', + 0x65a6: b'\x11e\xa6', + 0x65a7: b'\x11e\xa7', + 0x65a8: b'\x11e\xa8', + 0x65a9: b'\x11e\xa9', + 0x65aa: b'\x11e\xaa', + 0x65ab: b'\x11e\xab', + 0x65ac: b'\x11e\xac', + 0x65ad: b'\x11e\xad', + 0x65ae: b'\x11e\xae', + 0x65af: b'\x11e\xaf', + 0x65b0: b'\x11e\xb0', + 0x65b1: b'\x11e\xb1', + 0x65b2: b'\x11e\xb2', + 0x65b3: b'\x11e\xb3', + 0x65b4: b'\x11e\xb4', + 0x65b5: b'\x11e\xb5', + 0x65b6: b'\x11e\xb6', + 0x65b7: b'\x11e\xb7', + 0x65b8: b'\x11e\xb8', + 0x65b9: b'\x11e\xb9', + 0x65ba: b'\x11e\xba', + 0x65bb: b'\x11e\xbb', + 0x65bc: b'\x11e\xbc', + 0x65bd: b'\x11e\xbd', + 0x65be: b'\x11e\xbe', + 0x65bf: b'\x11e\xbf', + 0x65c0: b'\x11e\xc0', + 0x65c1: b'\x11e\xc1', + 0x65c2: b'\x11e\xc2', + 0x65c3: b'\x11e\xc3', + 0x65c4: b'\x11e\xc4', + 0x65c5: b'\x11e\xc5', + 0x65c6: b'\x11e\xc6', + 0x65c7: b'\x11e\xc7', + 0x65c8: b'\x11e\xc8', + 0x65c9: b'\x11e\xc9', + 0x65ca: b'\x11e\xca', + 0x65cb: b'\x11e\xcb', + 0x65cc: b'\x11e\xcc', + 0x65cd: b'\x11e\xcd', + 0x65ce: b'\x11e\xce', + 0x65cf: b'\x11e\xcf', + 0x65d0: b'\x11e\xd0', + 0x65d1: b'\x11e\xd1', + 0x65d2: b'\x11e\xd2', + 0x65d3: b'\x11e\xd3', + 0x65d4: b'\x11e\xd4', + 0x65d5: b'\x11e\xd5', + 0x65d6: b'\x11e\xd6', + 0x65d7: b'\x11e\xd7', + 0x65d8: b'\x11e\xd8', + 0x65d9: b'\x11e\xd9', + 0x65da: b'\x11e\xda', + 0x65db: b'\x11e\xdb', + 0x65dc: b'\x11e\xdc', + 0x65dd: b'\x11e\xdd', + 0x65de: b'\x11e\xde', + 0x65df: b'\x11e\xdf', + 0x65e0: b'\x11e\xe0', + 0x65e1: b'\x11e\xe1', + 0x65e2: b'\x11e\xe2', + 0x65e3: b'\x11e\xe3', + 0x65e4: b'\x11e\xe4', + 0x65e5: b'\x11e\xe5', + 0x65e6: b'\x11e\xe6', + 0x65e7: b'\x11e\xe7', + 0x65e8: b'\x11e\xe8', + 0x65e9: b'\x11e\xe9', + 0x65ea: b'\x11e\xea', + 0x65eb: b'\x11e\xeb', + 0x65ec: b'\x11e\xec', + 0x65ed: b'\x11e\xed', + 0x65ee: b'\x11e\xee', + 0x65ef: b'\x11e\xef', + 0x65f0: b'\x11e\xf0', + 0x65f1: b'\x11e\xf1', + 0x65f2: b'\x11e\xf2', + 0x65f3: b'\x11e\xf3', + 0x65f4: b'\x11e\xf4', + 0x65f5: b'\x11e\xf5', + 0x65f6: b'\x11e\xf6', + 0x65f7: b'\x11e\xf7', + 0x65f8: b'\x11e\xf8', + 0x65f9: b'\x11e\xf9', + 0x65fa: b'\x11e\xfa', + 0x65fb: b'\x11e\xfb', + 0x65fc: b'\x11e\xfc', + 0x65fd: b'\x11e\xfd', + 0x65fe: b'\x11e\xfe', + 0x65ff: b'\x11e\xff', + 0x6600: b'\x11f\x00', + 0x6601: b'\x11f\x01', + 0x6602: b'\x11f\x02', + 0x6603: b'\x11f\x03', + 0x6604: b'\x11f\x04', + 0x6605: b'\x11f\x05', + 0x6606: b'\x11f\x06', + 0x6607: b'\x11f\x07', + 0x6608: b'\x11f\x08', + 0x6609: b'\x11f\t', + 0x660a: b'\x11f\n', + 0x660b: b'\x11f\x0b', + 0x660c: b'\x11f\x0c', + 0x660d: b'\x11f\r', + 0x660e: b'\x11f\x0e', + 0x660f: b'\x11f\x0f', + 0x6610: b'\x11f\x10', + 0x6611: b'\x11f\x11', + 0x6612: b'\x11f\x12', + 0x6613: b'\x11f\x13', + 0x6614: b'\x11f\x14', + 0x6615: b'\x11f\x15', + 0x6616: b'\x11f\x16', + 0x6617: b'\x11f\x17', + 0x6618: b'\x11f\x18', + 0x6619: b'\x11f\x19', + 0x661a: b'\x11f\x1a', + 0x661b: b'\x11f\x1b', + 0x661c: b'\x11f\x1c', + 0x661d: b'\x11f\x1d', + 0x661e: b'\x11f\x1e', + 0x661f: b'\x11f\x1f', + 0x6620: b'\x11f ', + 0x6621: b'\x11f!', + 0x6622: b'\x11f"', + 0x6623: b'\x11f#', + 0x6624: b'\x11f$', + 0x6625: b'\x11f%', + 0x6626: b'\x11f&', + 0x6627: b"\x11f'", + 0x6628: b'\x11f(', + 0x6629: b'\x11f)', + 0x662a: b'\x11f*', + 0x662b: b'\x11f+', + 0x662c: b'\x11f,', + 0x662d: b'\x11f-', + 0x662e: b'\x11f.', + 0x662f: b'\x11f/', + 0x6630: b'\x11f0', + 0x6631: b'\x11f1', + 0x6632: b'\x11f2', + 0x6633: b'\x11f3', + 0x6634: b'\x11f4', + 0x6635: b'\x11f5', + 0x6636: b'\x11f6', + 0x6637: b'\x11f7', + 0x6638: b'\x11f8', + 0x6639: b'\x11f9', + 0x663a: b'\x11f:', + 0x663b: b'\x11f;', + 0x663c: b'\x11f<', + 0x663d: b'\x11f=', + 0x663e: b'\x11f>', + 0x663f: b'\x11f?', + 0x6640: b'\x11f@', + 0x6641: b'\x11fA', + 0x6642: b'\x11fB', + 0x6643: b'\x11fC', + 0x6644: b'\x11fD', + 0x6645: b'\x11fE', + 0x6646: b'\x11fF', + 0x6647: b'\x11fG', + 0x6648: b'\x11fH', + 0x6649: b'\x11fI', + 0x664a: b'\x11fJ', + 0x664b: b'\x11fK', + 0x664c: b'\x11fL', + 0x664d: b'\x11fM', + 0x664e: b'\x11fN', + 0x664f: b'\x11fO', + 0x6650: b'\x11fP', + 0x6651: b'\x11fQ', + 0x6652: b'\x11fR', + 0x6653: b'\x11fS', + 0x6654: b'\x11fT', + 0x6655: b'\x11fU', + 0x6656: b'\x11fV', + 0x6657: b'\x11fW', + 0x6658: b'\x11fX', + 0x6659: b'\x11fY', + 0x665a: b'\x11fZ', + 0x665b: b'\x11f[', + 0x665c: b'\x11f\\', + 0x665d: b'\x11f]', + 0x665e: b'\x11f^', + 0x665f: b'\x11f_', + 0x6660: b'\x11f`', + 0x6661: b'\x11fa', + 0x6662: b'\x11fb', + 0x6663: b'\x11fc', + 0x6664: b'\x11fd', + 0x6665: b'\x11fe', + 0x6666: b'\x11ff', + 0x6667: b'\x11fg', + 0x6668: b'\x11fh', + 0x6669: b'\x11fi', + 0x666a: b'\x11fj', + 0x666b: b'\x11fk', + 0x666c: b'\x11fl', + 0x666d: b'\x11fm', + 0x666e: b'\x11fn', + 0x666f: b'\x11fo', + 0x6670: b'\x11fp', + 0x6671: b'\x11fq', + 0x6672: b'\x11fr', + 0x6673: b'\x11fs', + 0x6674: b'\x11ft', + 0x6675: b'\x11fu', + 0x6676: b'\x11fv', + 0x6677: b'\x11fw', + 0x6678: b'\x11fx', + 0x6679: b'\x11fy', + 0x667a: b'\x11fz', + 0x667b: b'\x11f{', + 0x667c: b'\x11f|', + 0x667d: b'\x11f}', + 0x667e: b'\x11f~', + 0x667f: b'\x11f\x7f', + 0x6680: b'\x11f\x80', + 0x6681: b'\x11f\x81', + 0x6682: b'\x11f\x82', + 0x6683: b'\x11f\x83', + 0x6684: b'\x11f\x84', + 0x6685: b'\x11f\x85', + 0x6686: b'\x11f\x86', + 0x6687: b'\x11f\x87', + 0x6688: b'\x11f\x88', + 0x6689: b'\x11f\x89', + 0x668a: b'\x11f\x8a', + 0x668b: b'\x11f\x8b', + 0x668c: b'\x11f\x8c', + 0x668d: b'\x11f\x8d', + 0x668e: b'\x11f\x8e', + 0x668f: b'\x11f\x8f', + 0x6690: b'\x11f\x90', + 0x6691: b'\x11f\x91', + 0x6692: b'\x11f\x92', + 0x6693: b'\x11f\x93', + 0x6694: b'\x11f\x94', + 0x6695: b'\x11f\x95', + 0x6696: b'\x11f\x96', + 0x6697: b'\x11f\x97', + 0x6698: b'\x11f\x98', + 0x6699: b'\x11f\x99', + 0x669a: b'\x11f\x9a', + 0x669b: b'\x11f\x9b', + 0x669c: b'\x11f\x9c', + 0x669d: b'\x11f\x9d', + 0x669e: b'\x11f\x9e', + 0x669f: b'\x11f\x9f', + 0x66a0: b'\x11f\xa0', + 0x66a1: b'\x11f\xa1', + 0x66a2: b'\x11f\xa2', + 0x66a3: b'\x11f\xa3', + 0x66a4: b'\x11f\xa4', + 0x66a5: b'\x11f\xa5', + 0x66a6: b'\x11f\xa6', + 0x66a7: b'\x11f\xa7', + 0x66a8: b'\x11f\xa8', + 0x66a9: b'\x11f\xa9', + 0x66aa: b'\x11f\xaa', + 0x66ab: b'\x11f\xab', + 0x66ac: b'\x11f\xac', + 0x66ad: b'\x11f\xad', + 0x66ae: b'\x11f\xae', + 0x66af: b'\x11f\xaf', + 0x66b0: b'\x11f\xb0', + 0x66b1: b'\x11f\xb1', + 0x66b2: b'\x11f\xb2', + 0x66b3: b'\x11f\xb3', + 0x66b4: b'\x11f\xb4', + 0x66b5: b'\x11f\xb5', + 0x66b6: b'\x11f\xb6', + 0x66b7: b'\x11f\xb7', + 0x66b8: b'\x11f\xb8', + 0x66b9: b'\x11f\xb9', + 0x66ba: b'\x11f\xba', + 0x66bb: b'\x11f\xbb', + 0x66bc: b'\x11f\xbc', + 0x66bd: b'\x11f\xbd', + 0x66be: b'\x11f\xbe', + 0x66bf: b'\x11f\xbf', + 0x66c0: b'\x11f\xc0', + 0x66c1: b'\x11f\xc1', + 0x66c2: b'\x11f\xc2', + 0x66c3: b'\x11f\xc3', + 0x66c4: b'\x11f\xc4', + 0x66c5: b'\x11f\xc5', + 0x66c6: b'\x11f\xc6', + 0x66c7: b'\x11f\xc7', + 0x66c8: b'\x11f\xc8', + 0x66c9: b'\x11f\xc9', + 0x66ca: b'\x11f\xca', + 0x66cb: b'\x11f\xcb', + 0x66cc: b'\x11f\xcc', + 0x66cd: b'\x11f\xcd', + 0x66ce: b'\x11f\xce', + 0x66cf: b'\x11f\xcf', + 0x66d0: b'\x11f\xd0', + 0x66d1: b'\x11f\xd1', + 0x66d2: b'\x11f\xd2', + 0x66d3: b'\x11f\xd3', + 0x66d4: b'\x11f\xd4', + 0x66d5: b'\x11f\xd5', + 0x66d6: b'\x11f\xd6', + 0x66d7: b'\x11f\xd7', + 0x66d8: b'\x11f\xd8', + 0x66d9: b'\x11f\xd9', + 0x66da: b'\x11f\xda', + 0x66db: b'\x11f\xdb', + 0x66dc: b'\x11f\xdc', + 0x66dd: b'\x11f\xdd', + 0x66de: b'\x11f\xde', + 0x66df: b'\x11f\xdf', + 0x66e0: b'\x11f\xe0', + 0x66e1: b'\x11f\xe1', + 0x66e2: b'\x11f\xe2', + 0x66e3: b'\x11f\xe3', + 0x66e4: b'\x11f\xe4', + 0x66e5: b'\x11f\xe5', + 0x66e6: b'\x11f\xe6', + 0x66e7: b'\x11f\xe7', + 0x66e8: b'\x11f\xe8', + 0x66e9: b'\x11f\xe9', + 0x66ea: b'\x11f\xea', + 0x66eb: b'\x11f\xeb', + 0x66ec: b'\x11f\xec', + 0x66ed: b'\x11f\xed', + 0x66ee: b'\x11f\xee', + 0x66ef: b'\x11f\xef', + 0x66f0: b'\x11f\xf0', + 0x66f1: b'\x11f\xf1', + 0x66f2: b'\x11f\xf2', + 0x66f3: b'\x11f\xf3', + 0x66f4: b'\x11f\xf4', + 0x66f5: b'\x11f\xf5', + 0x66f6: b'\x11f\xf6', + 0x66f7: b'\x11f\xf7', + 0x66f8: b'\x11f\xf8', + 0x66f9: b'\x11f\xf9', + 0x66fa: b'\x11f\xfa', + 0x66fb: b'\x11f\xfb', + 0x66fc: b'\x11f\xfc', + 0x66fd: b'\x11f\xfd', + 0x66fe: b'\x11f\xfe', + 0x66ff: b'\x11f\xff', + 0x6700: b'\x11g\x00', + 0x6701: b'\x11g\x01', + 0x6702: b'\x11g\x02', + 0x6703: b'\x11g\x03', + 0x6704: b'\x11g\x04', + 0x6705: b'\x11g\x05', + 0x6706: b'\x11g\x06', + 0x6707: b'\x11g\x07', + 0x6708: b'\x11g\x08', + 0x6709: b'\x11g\t', + 0x670a: b'\x11g\n', + 0x670b: b'\x11g\x0b', + 0x670c: b'\x11g\x0c', + 0x670d: b'\x11g\r', + 0x670e: b'\x11g\x0e', + 0x670f: b'\x11g\x0f', + 0x6710: b'\x11g\x10', + 0x6711: b'\x11g\x11', + 0x6712: b'\x11g\x12', + 0x6713: b'\x11g\x13', + 0x6714: b'\x11g\x14', + 0x6715: b'\x11g\x15', + 0x6716: b'\x11g\x16', + 0x6717: b'\x11g\x17', + 0x6718: b'\x11g\x18', + 0x6719: b'\x11g\x19', + 0x671a: b'\x11g\x1a', + 0x671b: b'\x11g\x1b', + 0x671c: b'\x11g\x1c', + 0x671d: b'\x11g\x1d', + 0x671e: b'\x11g\x1e', + 0x671f: b'\x11g\x1f', + 0x6720: b'\x11g ', + 0x6721: b'\x11g!', + 0x6722: b'\x11g"', + 0x6723: b'\x11g#', + 0x6724: b'\x11g$', + 0x6725: b'\x11g%', + 0x6726: b'\x11g&', + 0x6727: b"\x11g'", + 0x6728: b'\x11g(', + 0x6729: b'\x11g)', + 0x672a: b'\x11g*', + 0x672b: b'\x11g+', + 0x672c: b'\x11g,', + 0x672d: b'\x11g-', + 0x672e: b'\x11g.', + 0x672f: b'\x11g/', + 0x6730: b'\x11g0', + 0x6731: b'\x11g1', + 0x6732: b'\x11g2', + 0x6733: b'\x11g3', + 0x6734: b'\x11g4', + 0x6735: b'\x11g5', + 0x6736: b'\x11g6', + 0x6737: b'\x11g7', + 0x6738: b'\x11g8', + 0x6739: b'\x11g9', + 0x673a: b'\x11g:', + 0x673b: b'\x11g;', + 0x673c: b'\x11g<', + 0x673d: b'\x11g=', + 0x673e: b'\x11g>', + 0x673f: b'\x11g?', + 0x6740: b'\x11g@', + 0x6741: b'\x11gA', + 0x6742: b'\x11gB', + 0x6743: b'\x11gC', + 0x6744: b'\x11gD', + 0x6745: b'\x11gE', + 0x6746: b'\x11gF', + 0x6747: b'\x11gG', + 0x6748: b'\x11gH', + 0x6749: b'\x11gI', + 0x674a: b'\x11gJ', + 0x674b: b'\x11gK', + 0x674c: b'\x11gL', + 0x674d: b'\x11gM', + 0x674e: b'\x11gN', + 0x674f: b'\x11gO', + 0x6750: b'\x11gP', + 0x6751: b'\x11gQ', + 0x6752: b'\x11gR', + 0x6753: b'\x11gS', + 0x6754: b'\x11gT', + 0x6755: b'\x11gU', + 0x6756: b'\x11gV', + 0x6757: b'\x11gW', + 0x6758: b'\x11gX', + 0x6759: b'\x11gY', + 0x675a: b'\x11gZ', + 0x675b: b'\x11g[', + 0x675c: b'\x11g\\', + 0x675d: b'\x11g]', + 0x675e: b'\x11g^', + 0x675f: b'\x11g_', + 0x6760: b'\x11g`', + 0x6761: b'\x11ga', + 0x6762: b'\x11gb', + 0x6763: b'\x11gc', + 0x6764: b'\x11gd', + 0x6765: b'\x11ge', + 0x6766: b'\x11gf', + 0x6767: b'\x11gg', + 0x6768: b'\x11gh', + 0x6769: b'\x11gi', + 0x676a: b'\x11gj', + 0x676b: b'\x11gk', + 0x676c: b'\x11gl', + 0x676d: b'\x11gm', + 0x676e: b'\x11gn', + 0x676f: b'\x11go', + 0x6770: b'\x11gp', + 0x6771: b'\x11gq', + 0x6772: b'\x11gr', + 0x6773: b'\x11gs', + 0x6774: b'\x11gt', + 0x6775: b'\x11gu', + 0x6776: b'\x11gv', + 0x6777: b'\x11gw', + 0x6778: b'\x11gx', + 0x6779: b'\x11gy', + 0x677a: b'\x11gz', + 0x677b: b'\x11g{', + 0x677c: b'\x11g|', + 0x677d: b'\x11g}', + 0x677e: b'\x11g~', + 0x677f: b'\x11g\x7f', + 0x6780: b'\x11g\x80', + 0x6781: b'\x11g\x81', + 0x6782: b'\x11g\x82', + 0x6783: b'\x11g\x83', + 0x6784: b'\x11g\x84', + 0x6785: b'\x11g\x85', + 0x6786: b'\x11g\x86', + 0x6787: b'\x11g\x87', + 0x6788: b'\x11g\x88', + 0x6789: b'\x11g\x89', + 0x678a: b'\x11g\x8a', + 0x678b: b'\x11g\x8b', + 0x678c: b'\x11g\x8c', + 0x678d: b'\x11g\x8d', + 0x678e: b'\x11g\x8e', + 0x678f: b'\x11g\x8f', + 0x6790: b'\x11g\x90', + 0x6791: b'\x11g\x91', + 0x6792: b'\x11g\x92', + 0x6793: b'\x11g\x93', + 0x6794: b'\x11g\x94', + 0x6795: b'\x11g\x95', + 0x6796: b'\x11g\x96', + 0x6797: b'\x11g\x97', + 0x6798: b'\x11g\x98', + 0x6799: b'\x11g\x99', + 0x679a: b'\x11g\x9a', + 0x679b: b'\x11g\x9b', + 0x679c: b'\x11g\x9c', + 0x679d: b'\x11g\x9d', + 0x679e: b'\x11g\x9e', + 0x679f: b'\x11g\x9f', + 0x67a0: b'\x11g\xa0', + 0x67a1: b'\x11g\xa1', + 0x67a2: b'\x11g\xa2', + 0x67a3: b'\x11g\xa3', + 0x67a4: b'\x11g\xa4', + 0x67a5: b'\x11g\xa5', + 0x67a6: b'\x11g\xa6', + 0x67a7: b'\x11g\xa7', + 0x67a8: b'\x11g\xa8', + 0x67a9: b'\x11g\xa9', + 0x67aa: b'\x11g\xaa', + 0x67ab: b'\x11g\xab', + 0x67ac: b'\x11g\xac', + 0x67ad: b'\x11g\xad', + 0x67ae: b'\x11g\xae', + 0x67af: b'\x11g\xaf', + 0x67b0: b'\x11g\xb0', + 0x67b1: b'\x11g\xb1', + 0x67b2: b'\x11g\xb2', + 0x67b3: b'\x11g\xb3', + 0x67b4: b'\x11g\xb4', + 0x67b5: b'\x11g\xb5', + 0x67b6: b'\x11g\xb6', + 0x67b7: b'\x11g\xb7', + 0x67b8: b'\x11g\xb8', + 0x67b9: b'\x11g\xb9', + 0x67ba: b'\x11g\xba', + 0x67bb: b'\x11g\xbb', + 0x67bc: b'\x11g\xbc', + 0x67bd: b'\x11g\xbd', + 0x67be: b'\x11g\xbe', + 0x67bf: b'\x11g\xbf', + 0x67c0: b'\x11g\xc0', + 0x67c1: b'\x11g\xc1', + 0x67c2: b'\x11g\xc2', + 0x67c3: b'\x11g\xc3', + 0x67c4: b'\x11g\xc4', + 0x67c5: b'\x11g\xc5', + 0x67c6: b'\x11g\xc6', + 0x67c7: b'\x11g\xc7', + 0x67c8: b'\x11g\xc8', + 0x67c9: b'\x11g\xc9', + 0x67ca: b'\x11g\xca', + 0x67cb: b'\x11g\xcb', + 0x67cc: b'\x11g\xcc', + 0x67cd: b'\x11g\xcd', + 0x67ce: b'\x11g\xce', + 0x67cf: b'\x11g\xcf', + 0x67d0: b'\x11g\xd0', + 0x67d1: b'\x11g\xd1', + 0x67d2: b'\x11g\xd2', + 0x67d3: b'\x11g\xd3', + 0x67d4: b'\x11g\xd4', + 0x67d5: b'\x11g\xd5', + 0x67d6: b'\x11g\xd6', + 0x67d7: b'\x11g\xd7', + 0x67d8: b'\x11g\xd8', + 0x67d9: b'\x11g\xd9', + 0x67da: b'\x11g\xda', + 0x67db: b'\x11g\xdb', + 0x67dc: b'\x11g\xdc', + 0x67dd: b'\x11g\xdd', + 0x67de: b'\x11g\xde', + 0x67df: b'\x11g\xdf', + 0x67e0: b'\x11g\xe0', + 0x67e1: b'\x11g\xe1', + 0x67e2: b'\x11g\xe2', + 0x67e3: b'\x11g\xe3', + 0x67e4: b'\x11g\xe4', + 0x67e5: b'\x11g\xe5', + 0x67e6: b'\x11g\xe6', + 0x67e7: b'\x11g\xe7', + 0x67e8: b'\x11g\xe8', + 0x67e9: b'\x11g\xe9', + 0x67ea: b'\x11g\xea', + 0x67eb: b'\x11g\xeb', + 0x67ec: b'\x11g\xec', + 0x67ed: b'\x11g\xed', + 0x67ee: b'\x11g\xee', + 0x67ef: b'\x11g\xef', + 0x67f0: b'\x11g\xf0', + 0x67f1: b'\x11g\xf1', + 0x67f2: b'\x11g\xf2', + 0x67f3: b'\x11g\xf3', + 0x67f4: b'\x11g\xf4', + 0x67f5: b'\x11g\xf5', + 0x67f6: b'\x11g\xf6', + 0x67f7: b'\x11g\xf7', + 0x67f8: b'\x11g\xf8', + 0x67f9: b'\x11g\xf9', + 0x67fa: b'\x11g\xfa', + 0x67fb: b'\x11g\xfb', + 0x67fc: b'\x11g\xfc', + 0x67fd: b'\x11g\xfd', + 0x67fe: b'\x11g\xfe', + 0x67ff: b'\x11g\xff', + 0x6800: b'\x11h\x00', + 0x6801: b'\x11h\x01', + 0x6802: b'\x11h\x02', + 0x6803: b'\x11h\x03', + 0x6804: b'\x11h\x04', + 0x6805: b'\x11h\x05', + 0x6806: b'\x11h\x06', + 0x6807: b'\x11h\x07', + 0x6808: b'\x11h\x08', + 0x6809: b'\x11h\t', + 0x680a: b'\x11h\n', + 0x680b: b'\x11h\x0b', + 0x680c: b'\x11h\x0c', + 0x680d: b'\x11h\r', + 0x680e: b'\x11h\x0e', + 0x680f: b'\x11h\x0f', + 0x6810: b'\x11h\x10', + 0x6811: b'\x11h\x11', + 0x6812: b'\x11h\x12', + 0x6813: b'\x11h\x13', + 0x6814: b'\x11h\x14', + 0x6815: b'\x11h\x15', + 0x6816: b'\x11h\x16', + 0x6817: b'\x11h\x17', + 0x6818: b'\x11h\x18', + 0x6819: b'\x11h\x19', + 0x681a: b'\x11h\x1a', + 0x681b: b'\x11h\x1b', + 0x681c: b'\x11h\x1c', + 0x681d: b'\x11h\x1d', + 0x681e: b'\x11h\x1e', + 0x681f: b'\x11h\x1f', + 0x6820: b'\x11h ', + 0x6821: b'\x11h!', + 0x6822: b'\x11h"', + 0x6823: b'\x11h#', + 0x6824: b'\x11h$', + 0x6825: b'\x11h%', + 0x6826: b'\x11h&', + 0x6827: b"\x11h'", + 0x6828: b'\x11h(', + 0x6829: b'\x11h)', + 0x682a: b'\x11h*', + 0x682b: b'\x11h+', + 0x682c: b'\x11h,', + 0x682d: b'\x11h-', + 0x682e: b'\x11h.', + 0x682f: b'\x11h/', + 0x6830: b'\x11h0', + 0x6831: b'\x11h1', + 0x6832: b'\x11h2', + 0x6833: b'\x11h3', + 0x6834: b'\x11h4', + 0x6835: b'\x11h5', + 0x6836: b'\x11h6', + 0x6837: b'\x11h7', + 0x6838: b'\x11h8', + 0x6839: b'\x11h9', + 0x683a: b'\x11h:', + 0x683b: b'\x11h;', + 0x683c: b'\x11h<', + 0x683d: b'\x11h=', + 0x683e: b'\x11h>', + 0x683f: b'\x11h?', + 0x6840: b'\x11h@', + 0x6841: b'\x11hA', + 0x6842: b'\x11hB', + 0x6843: b'\x11hC', + 0x6844: b'\x11hD', + 0x6845: b'\x11hE', + 0x6846: b'\x11hF', + 0x6847: b'\x11hG', + 0x6848: b'\x11hH', + 0x6849: b'\x11hI', + 0x684a: b'\x11hJ', + 0x684b: b'\x11hK', + 0x684c: b'\x11hL', + 0x684d: b'\x11hM', + 0x684e: b'\x11hN', + 0x684f: b'\x11hO', + 0x6850: b'\x11hP', + 0x6851: b'\x11hQ', + 0x6852: b'\x11hR', + 0x6853: b'\x11hS', + 0x6854: b'\x11hT', + 0x6855: b'\x11hU', + 0x6856: b'\x11hV', + 0x6857: b'\x11hW', + 0x6858: b'\x11hX', + 0x6859: b'\x11hY', + 0x685a: b'\x11hZ', + 0x685b: b'\x11h[', + 0x685c: b'\x11h\\', + 0x685d: b'\x11h]', + 0x685e: b'\x11h^', + 0x685f: b'\x11h_', + 0x6860: b'\x11h`', + 0x6861: b'\x11ha', + 0x6862: b'\x11hb', + 0x6863: b'\x11hc', + 0x6864: b'\x11hd', + 0x6865: b'\x11he', + 0x6866: b'\x11hf', + 0x6867: b'\x11hg', + 0x6868: b'\x11hh', + 0x6869: b'\x11hi', + 0x686a: b'\x11hj', + 0x686b: b'\x11hk', + 0x686c: b'\x11hl', + 0x686d: b'\x11hm', + 0x686e: b'\x11hn', + 0x686f: b'\x11ho', + 0x6870: b'\x11hp', + 0x6871: b'\x11hq', + 0x6872: b'\x11hr', + 0x6873: b'\x11hs', + 0x6874: b'\x11ht', + 0x6875: b'\x11hu', + 0x6876: b'\x11hv', + 0x6877: b'\x11hw', + 0x6878: b'\x11hx', + 0x6879: b'\x11hy', + 0x687a: b'\x11hz', + 0x687b: b'\x11h{', + 0x687c: b'\x11h|', + 0x687d: b'\x11h}', + 0x687e: b'\x11h~', + 0x687f: b'\x11h\x7f', + 0x6880: b'\x11h\x80', + 0x6881: b'\x11h\x81', + 0x6882: b'\x11h\x82', + 0x6883: b'\x11h\x83', + 0x6884: b'\x11h\x84', + 0x6885: b'\x11h\x85', + 0x6886: b'\x11h\x86', + 0x6887: b'\x11h\x87', + 0x6888: b'\x11h\x88', + 0x6889: b'\x11h\x89', + 0x688a: b'\x11h\x8a', + 0x688b: b'\x11h\x8b', + 0x688c: b'\x11h\x8c', + 0x688d: b'\x11h\x8d', + 0x688e: b'\x11h\x8e', + 0x688f: b'\x11h\x8f', + 0x6890: b'\x11h\x90', + 0x6891: b'\x11h\x91', + 0x6892: b'\x11h\x92', + 0x6893: b'\x11h\x93', + 0x6894: b'\x11h\x94', + 0x6895: b'\x11h\x95', + 0x6896: b'\x11h\x96', + 0x6897: b'\x11h\x97', + 0x6898: b'\x11h\x98', + 0x6899: b'\x11h\x99', + 0x689a: b'\x11h\x9a', + 0x689b: b'\x11h\x9b', + 0x689c: b'\x11h\x9c', + 0x689d: b'\x11h\x9d', + 0x689e: b'\x11h\x9e', + 0x689f: b'\x11h\x9f', + 0x68a0: b'\x11h\xa0', + 0x68a1: b'\x11h\xa1', + 0x68a2: b'\x11h\xa2', + 0x68a3: b'\x11h\xa3', + 0x68a4: b'\x11h\xa4', + 0x68a5: b'\x11h\xa5', + 0x68a6: b'\x11h\xa6', + 0x68a7: b'\x11h\xa7', + 0x68a8: b'\x11h\xa8', + 0x68a9: b'\x11h\xa9', + 0x68aa: b'\x11h\xaa', + 0x68ab: b'\x11h\xab', + 0x68ac: b'\x11h\xac', + 0x68ad: b'\x11h\xad', + 0x68ae: b'\x11h\xae', + 0x68af: b'\x11h\xaf', + 0x68b0: b'\x11h\xb0', + 0x68b1: b'\x11h\xb1', + 0x68b2: b'\x11h\xb2', + 0x68b3: b'\x11h\xb3', + 0x68b4: b'\x11h\xb4', + 0x68b5: b'\x11h\xb5', + 0x68b6: b'\x11h\xb6', + 0x68b7: b'\x11h\xb7', + 0x68b8: b'\x11h\xb8', + 0x68b9: b'\x11h\xb9', + 0x68ba: b'\x11h\xba', + 0x68bb: b'\x11h\xbb', + 0x68bc: b'\x11h\xbc', + 0x68bd: b'\x11h\xbd', + 0x68be: b'\x11h\xbe', + 0x68bf: b'\x11h\xbf', + 0x68c0: b'\x11h\xc0', + 0x68c1: b'\x11h\xc1', + 0x68c2: b'\x11h\xc2', + 0x68c3: b'\x11h\xc3', + 0x68c4: b'\x11h\xc4', + 0x68c5: b'\x11h\xc5', + 0x68c6: b'\x11h\xc6', + 0x68c7: b'\x11h\xc7', + 0x68c8: b'\x11h\xc8', + 0x68c9: b'\x11h\xc9', + 0x68ca: b'\x11h\xca', + 0x68cb: b'\x11h\xcb', + 0x68cc: b'\x11h\xcc', + 0x68cd: b'\x11h\xcd', + 0x68ce: b'\x11h\xce', + 0x68cf: b'\x11h\xcf', + 0x68d0: b'\x11h\xd0', + 0x68d1: b'\x11h\xd1', + 0x68d2: b'\x11h\xd2', + 0x68d3: b'\x11h\xd3', + 0x68d4: b'\x11h\xd4', + 0x68d5: b'\x11h\xd5', + 0x68d6: b'\x11h\xd6', + 0x68d7: b'\x11h\xd7', + 0x68d8: b'\x11h\xd8', + 0x68d9: b'\x11h\xd9', + 0x68da: b'\x11h\xda', + 0x68db: b'\x11h\xdb', + 0x68dc: b'\x11h\xdc', + 0x68dd: b'\x11h\xdd', + 0x68de: b'\x11h\xde', + 0x68df: b'\x11h\xdf', + 0x68e0: b'\x11h\xe0', + 0x68e1: b'\x11h\xe1', + 0x68e2: b'\x11h\xe2', + 0x68e3: b'\x11h\xe3', + 0x68e4: b'\x11h\xe4', + 0x68e5: b'\x11h\xe5', + 0x68e6: b'\x11h\xe6', + 0x68e7: b'\x11h\xe7', + 0x68e8: b'\x11h\xe8', + 0x68e9: b'\x11h\xe9', + 0x68ea: b'\x11h\xea', + 0x68eb: b'\x11h\xeb', + 0x68ec: b'\x11h\xec', + 0x68ed: b'\x11h\xed', + 0x68ee: b'\x11h\xee', + 0x68ef: b'\x11h\xef', + 0x68f0: b'\x11h\xf0', + 0x68f1: b'\x11h\xf1', + 0x68f2: b'\x11h\xf2', + 0x68f3: b'\x11h\xf3', + 0x68f4: b'\x11h\xf4', + 0x68f5: b'\x11h\xf5', + 0x68f6: b'\x11h\xf6', + 0x68f7: b'\x11h\xf7', + 0x68f8: b'\x11h\xf8', + 0x68f9: b'\x11h\xf9', + 0x68fa: b'\x11h\xfa', + 0x68fb: b'\x11h\xfb', + 0x68fc: b'\x11h\xfc', + 0x68fd: b'\x11h\xfd', + 0x68fe: b'\x11h\xfe', + 0x68ff: b'\x11h\xff', + 0x6900: b'\x11i\x00', + 0x6901: b'\x11i\x01', + 0x6902: b'\x11i\x02', + 0x6903: b'\x11i\x03', + 0x6904: b'\x11i\x04', + 0x6905: b'\x11i\x05', + 0x6906: b'\x11i\x06', + 0x6907: b'\x11i\x07', + 0x6908: b'\x11i\x08', + 0x6909: b'\x11i\t', + 0x690a: b'\x11i\n', + 0x690b: b'\x11i\x0b', + 0x690c: b'\x11i\x0c', + 0x690d: b'\x11i\r', + 0x690e: b'\x11i\x0e', + 0x690f: b'\x11i\x0f', + 0x6910: b'\x11i\x10', + 0x6911: b'\x11i\x11', + 0x6912: b'\x11i\x12', + 0x6913: b'\x11i\x13', + 0x6914: b'\x11i\x14', + 0x6915: b'\x11i\x15', + 0x6916: b'\x11i\x16', + 0x6917: b'\x11i\x17', + 0x6918: b'\x11i\x18', + 0x6919: b'\x11i\x19', + 0x691a: b'\x11i\x1a', + 0x691b: b'\x11i\x1b', + 0x691c: b'\x11i\x1c', + 0x691d: b'\x11i\x1d', + 0x691e: b'\x11i\x1e', + 0x691f: b'\x11i\x1f', + 0x6920: b'\x11i ', + 0x6921: b'\x11i!', + 0x6922: b'\x11i"', + 0x6923: b'\x11i#', + 0x6924: b'\x11i$', + 0x6925: b'\x11i%', + 0x6926: b'\x11i&', + 0x6927: b"\x11i'", + 0x6928: b'\x11i(', + 0x6929: b'\x11i)', + 0x692a: b'\x11i*', + 0x692b: b'\x11i+', + 0x692c: b'\x11i,', + 0x692d: b'\x11i-', + 0x692e: b'\x11i.', + 0x692f: b'\x11i/', + 0x6930: b'\x11i0', + 0x6931: b'\x11i1', + 0x6932: b'\x11i2', + 0x6933: b'\x11i3', + 0x6934: b'\x11i4', + 0x6935: b'\x11i5', + 0x6936: b'\x11i6', + 0x6937: b'\x11i7', + 0x6938: b'\x11i8', + 0x6939: b'\x11i9', + 0x693a: b'\x11i:', + 0x693b: b'\x11i;', + 0x693c: b'\x11i<', + 0x693d: b'\x11i=', + 0x693e: b'\x11i>', + 0x693f: b'\x11i?', + 0x6940: b'\x11i@', + 0x6941: b'\x11iA', + 0x6942: b'\x11iB', + 0x6943: b'\x11iC', + 0x6944: b'\x11iD', + 0x6945: b'\x11iE', + 0x6946: b'\x11iF', + 0x6947: b'\x11iG', + 0x6948: b'\x11iH', + 0x6949: b'\x11iI', + 0x694a: b'\x11iJ', + 0x694b: b'\x11iK', + 0x694c: b'\x11iL', + 0x694d: b'\x11iM', + 0x694e: b'\x11iN', + 0x694f: b'\x11iO', + 0x6950: b'\x11iP', + 0x6951: b'\x11iQ', + 0x6952: b'\x11iR', + 0x6953: b'\x11iS', + 0x6954: b'\x11iT', + 0x6955: b'\x11iU', + 0x6956: b'\x11iV', + 0x6957: b'\x11iW', + 0x6958: b'\x11iX', + 0x6959: b'\x11iY', + 0x695a: b'\x11iZ', + 0x695b: b'\x11i[', + 0x695c: b'\x11i\\', + 0x695d: b'\x11i]', + 0x695e: b'\x11i^', + 0x695f: b'\x11i_', + 0x6960: b'\x11i`', + 0x6961: b'\x11ia', + 0x6962: b'\x11ib', + 0x6963: b'\x11ic', + 0x6964: b'\x11id', + 0x6965: b'\x11ie', + 0x6966: b'\x11if', + 0x6967: b'\x11ig', + 0x6968: b'\x11ih', + 0x6969: b'\x11ii', + 0x696a: b'\x11ij', + 0x696b: b'\x11ik', + 0x696c: b'\x11il', + 0x696d: b'\x11im', + 0x696e: b'\x11in', + 0x696f: b'\x11io', + 0x6970: b'\x11ip', + 0x6971: b'\x11iq', + 0x6972: b'\x11ir', + 0x6973: b'\x11is', + 0x6974: b'\x11it', + 0x6975: b'\x11iu', + 0x6976: b'\x11iv', + 0x6977: b'\x11iw', + 0x6978: b'\x11ix', + 0x6979: b'\x11iy', + 0x697a: b'\x11iz', + 0x697b: b'\x11i{', + 0x697c: b'\x11i|', + 0x697d: b'\x11i}', + 0x697e: b'\x11i~', + 0x697f: b'\x11i\x7f', + 0x6980: b'\x11i\x80', + 0x6981: b'\x11i\x81', + 0x6982: b'\x11i\x82', + 0x6983: b'\x11i\x83', + 0x6984: b'\x11i\x84', + 0x6985: b'\x11i\x85', + 0x6986: b'\x11i\x86', + 0x6987: b'\x11i\x87', + 0x6988: b'\x11i\x88', + 0x6989: b'\x11i\x89', + 0x698a: b'\x11i\x8a', + 0x698b: b'\x11i\x8b', + 0x698c: b'\x11i\x8c', + 0x698d: b'\x11i\x8d', + 0x698e: b'\x11i\x8e', + 0x698f: b'\x11i\x8f', + 0x6990: b'\x11i\x90', + 0x6991: b'\x11i\x91', + 0x6992: b'\x11i\x92', + 0x6993: b'\x11i\x93', + 0x6994: b'\x11i\x94', + 0x6995: b'\x11i\x95', + 0x6996: b'\x11i\x96', + 0x6997: b'\x11i\x97', + 0x6998: b'\x11i\x98', + 0x6999: b'\x11i\x99', + 0x699a: b'\x11i\x9a', + 0x699b: b'\x11i\x9b', + 0x699c: b'\x11i\x9c', + 0x699d: b'\x11i\x9d', + 0x699e: b'\x11i\x9e', + 0x699f: b'\x11i\x9f', + 0x69a0: b'\x11i\xa0', + 0x69a1: b'\x11i\xa1', + 0x69a2: b'\x11i\xa2', + 0x69a3: b'\x11i\xa3', + 0x69a4: b'\x11i\xa4', + 0x69a5: b'\x11i\xa5', + 0x69a6: b'\x11i\xa6', + 0x69a7: b'\x11i\xa7', + 0x69a8: b'\x11i\xa8', + 0x69a9: b'\x11i\xa9', + 0x69aa: b'\x11i\xaa', + 0x69ab: b'\x11i\xab', + 0x69ac: b'\x11i\xac', + 0x69ad: b'\x11i\xad', + 0x69ae: b'\x11i\xae', + 0x69af: b'\x11i\xaf', + 0x69b0: b'\x11i\xb0', + 0x69b1: b'\x11i\xb1', + 0x69b2: b'\x11i\xb2', + 0x69b3: b'\x11i\xb3', + 0x69b4: b'\x11i\xb4', + 0x69b5: b'\x11i\xb5', + 0x69b6: b'\x11i\xb6', + 0x69b7: b'\x11i\xb7', + 0x69b8: b'\x11i\xb8', + 0x69b9: b'\x11i\xb9', + 0x69ba: b'\x11i\xba', + 0x69bb: b'\x11i\xbb', + 0x69bc: b'\x11i\xbc', + 0x69bd: b'\x11i\xbd', + 0x69be: b'\x11i\xbe', + 0x69bf: b'\x11i\xbf', + 0x69c0: b'\x11i\xc0', + 0x69c1: b'\x11i\xc1', + 0x69c2: b'\x11i\xc2', + 0x69c3: b'\x11i\xc3', + 0x69c4: b'\x11i\xc4', + 0x69c5: b'\x11i\xc5', + 0x69c6: b'\x11i\xc6', + 0x69c7: b'\x11i\xc7', + 0x69c8: b'\x11i\xc8', + 0x69c9: b'\x11i\xc9', + 0x69ca: b'\x11i\xca', + 0x69cb: b'\x11i\xcb', + 0x69cc: b'\x11i\xcc', + 0x69cd: b'\x11i\xcd', + 0x69ce: b'\x11i\xce', + 0x69cf: b'\x11i\xcf', + 0x69d0: b'\x11i\xd0', + 0x69d1: b'\x11i\xd1', + 0x69d2: b'\x11i\xd2', + 0x69d3: b'\x11i\xd3', + 0x69d4: b'\x11i\xd4', + 0x69d5: b'\x11i\xd5', + 0x69d6: b'\x11i\xd6', + 0x69d7: b'\x11i\xd7', + 0x69d8: b'\x11i\xd8', + 0x69d9: b'\x11i\xd9', + 0x69da: b'\x11i\xda', + 0x69db: b'\x11i\xdb', + 0x69dc: b'\x11i\xdc', + 0x69dd: b'\x11i\xdd', + 0x69de: b'\x11i\xde', + 0x69df: b'\x11i\xdf', + 0x69e0: b'\x11i\xe0', + 0x69e1: b'\x11i\xe1', + 0x69e2: b'\x11i\xe2', + 0x69e3: b'\x11i\xe3', + 0x69e4: b'\x11i\xe4', + 0x69e5: b'\x11i\xe5', + 0x69e6: b'\x11i\xe6', + 0x69e7: b'\x11i\xe7', + 0x69e8: b'\x11i\xe8', + 0x69e9: b'\x11i\xe9', + 0x69ea: b'\x11i\xea', + 0x69eb: b'\x11i\xeb', + 0x69ec: b'\x11i\xec', + 0x69ed: b'\x11i\xed', + 0x69ee: b'\x11i\xee', + 0x69ef: b'\x11i\xef', + 0x69f0: b'\x11i\xf0', + 0x69f1: b'\x11i\xf1', + 0x69f2: b'\x11i\xf2', + 0x69f3: b'\x11i\xf3', + 0x69f4: b'\x11i\xf4', + 0x69f5: b'\x11i\xf5', + 0x69f6: b'\x11i\xf6', + 0x69f7: b'\x11i\xf7', + 0x69f8: b'\x11i\xf8', + 0x69f9: b'\x11i\xf9', + 0x69fa: b'\x11i\xfa', + 0x69fb: b'\x11i\xfb', + 0x69fc: b'\x11i\xfc', + 0x69fd: b'\x11i\xfd', + 0x69fe: b'\x11i\xfe', + 0x69ff: b'\x11i\xff', + 0x6a00: b'\x11j\x00', + 0x6a01: b'\x11j\x01', + 0x6a02: b'\x11j\x02', + 0x6a03: b'\x11j\x03', + 0x6a04: b'\x11j\x04', + 0x6a05: b'\x11j\x05', + 0x6a06: b'\x11j\x06', + 0x6a07: b'\x11j\x07', + 0x6a08: b'\x11j\x08', + 0x6a09: b'\x11j\t', + 0x6a0a: b'\x11j\n', + 0x6a0b: b'\x11j\x0b', + 0x6a0c: b'\x11j\x0c', + 0x6a0d: b'\x11j\r', + 0x6a0e: b'\x11j\x0e', + 0x6a0f: b'\x11j\x0f', + 0x6a10: b'\x11j\x10', + 0x6a11: b'\x11j\x11', + 0x6a12: b'\x11j\x12', + 0x6a13: b'\x11j\x13', + 0x6a14: b'\x11j\x14', + 0x6a15: b'\x11j\x15', + 0x6a16: b'\x11j\x16', + 0x6a17: b'\x11j\x17', + 0x6a18: b'\x11j\x18', + 0x6a19: b'\x11j\x19', + 0x6a1a: b'\x11j\x1a', + 0x6a1b: b'\x11j\x1b', + 0x6a1c: b'\x11j\x1c', + 0x6a1d: b'\x11j\x1d', + 0x6a1e: b'\x11j\x1e', + 0x6a1f: b'\x11j\x1f', + 0x6a20: b'\x11j ', + 0x6a21: b'\x11j!', + 0x6a22: b'\x11j"', + 0x6a23: b'\x11j#', + 0x6a24: b'\x11j$', + 0x6a25: b'\x11j%', + 0x6a26: b'\x11j&', + 0x6a27: b"\x11j'", + 0x6a28: b'\x11j(', + 0x6a29: b'\x11j)', + 0x6a2a: b'\x11j*', + 0x6a2b: b'\x11j+', + 0x6a2c: b'\x11j,', + 0x6a2d: b'\x11j-', + 0x6a2e: b'\x11j.', + 0x6a2f: b'\x11j/', + 0x6a30: b'\x11j0', + 0x6a31: b'\x11j1', + 0x6a32: b'\x11j2', + 0x6a33: b'\x11j3', + 0x6a34: b'\x11j4', + 0x6a35: b'\x11j5', + 0x6a36: b'\x11j6', + 0x6a37: b'\x11j7', + 0x6a38: b'\x11j8', + 0x6a39: b'\x11j9', + 0x6a3a: b'\x11j:', + 0x6a3b: b'\x11j;', + 0x6a3c: b'\x11j<', + 0x6a3d: b'\x11j=', + 0x6a3e: b'\x11j>', + 0x6a3f: b'\x11j?', + 0x6a40: b'\x11j@', + 0x6a41: b'\x11jA', + 0x6a42: b'\x11jB', + 0x6a43: b'\x11jC', + 0x6a44: b'\x11jD', + 0x6a45: b'\x11jE', + 0x6a46: b'\x11jF', + 0x6a47: b'\x11jG', + 0x6a48: b'\x11jH', + 0x6a49: b'\x11jI', + 0x6a4a: b'\x11jJ', + 0x6a4b: b'\x11jK', + 0x6a4c: b'\x11jL', + 0x6a4d: b'\x11jM', + 0x6a4e: b'\x11jN', + 0x6a4f: b'\x11jO', + 0x6a50: b'\x11jP', + 0x6a51: b'\x11jQ', + 0x6a52: b'\x11jR', + 0x6a53: b'\x11jS', + 0x6a54: b'\x11jT', + 0x6a55: b'\x11jU', + 0x6a56: b'\x11jV', + 0x6a57: b'\x11jW', + 0x6a58: b'\x11jX', + 0x6a59: b'\x11jY', + 0x6a5a: b'\x11jZ', + 0x6a5b: b'\x11j[', + 0x6a5c: b'\x11j\\', + 0x6a5d: b'\x11j]', + 0x6a5e: b'\x11j^', + 0x6a5f: b'\x11j_', + 0x6a60: b'\x11j`', + 0x6a61: b'\x11ja', + 0x6a62: b'\x11jb', + 0x6a63: b'\x11jc', + 0x6a64: b'\x11jd', + 0x6a65: b'\x11je', + 0x6a66: b'\x11jf', + 0x6a67: b'\x11jg', + 0x6a68: b'\x11jh', + 0x6a69: b'\x11ji', + 0x6a6a: b'\x11jj', + 0x6a6b: b'\x11jk', + 0x6a6c: b'\x11jl', + 0x6a6d: b'\x11jm', + 0x6a6e: b'\x11jn', + 0x6a6f: b'\x11jo', + 0x6a70: b'\x11jp', + 0x6a71: b'\x11jq', + 0x6a72: b'\x11jr', + 0x6a73: b'\x11js', + 0x6a74: b'\x11jt', + 0x6a75: b'\x11ju', + 0x6a76: b'\x11jv', + 0x6a77: b'\x11jw', + 0x6a78: b'\x11jx', + 0x6a79: b'\x11jy', + 0x6a7a: b'\x11jz', + 0x6a7b: b'\x11j{', + 0x6a7c: b'\x11j|', + 0x6a7d: b'\x11j}', + 0x6a7e: b'\x11j~', + 0x6a7f: b'\x11j\x7f', + 0x6a80: b'\x11j\x80', + 0x6a81: b'\x11j\x81', + 0x6a82: b'\x11j\x82', + 0x6a83: b'\x11j\x83', + 0x6a84: b'\x11j\x84', + 0x6a85: b'\x11j\x85', + 0x6a86: b'\x11j\x86', + 0x6a87: b'\x11j\x87', + 0x6a88: b'\x11j\x88', + 0x6a89: b'\x11j\x89', + 0x6a8a: b'\x11j\x8a', + 0x6a8b: b'\x11j\x8b', + 0x6a8c: b'\x11j\x8c', + 0x6a8d: b'\x11j\x8d', + 0x6a8e: b'\x11j\x8e', + 0x6a8f: b'\x11j\x8f', + 0x6a90: b'\x11j\x90', + 0x6a91: b'\x11j\x91', + 0x6a92: b'\x11j\x92', + 0x6a93: b'\x11j\x93', + 0x6a94: b'\x11j\x94', + 0x6a95: b'\x11j\x95', + 0x6a96: b'\x11j\x96', + 0x6a97: b'\x11j\x97', + 0x6a98: b'\x11j\x98', + 0x6a99: b'\x11j\x99', + 0x6a9a: b'\x11j\x9a', + 0x6a9b: b'\x11j\x9b', + 0x6a9c: b'\x11j\x9c', + 0x6a9d: b'\x11j\x9d', + 0x6a9e: b'\x11j\x9e', + 0x6a9f: b'\x11j\x9f', + 0x6aa0: b'\x11j\xa0', + 0x6aa1: b'\x11j\xa1', + 0x6aa2: b'\x11j\xa2', + 0x6aa3: b'\x11j\xa3', + 0x6aa4: b'\x11j\xa4', + 0x6aa5: b'\x11j\xa5', + 0x6aa6: b'\x11j\xa6', + 0x6aa7: b'\x11j\xa7', + 0x6aa8: b'\x11j\xa8', + 0x6aa9: b'\x11j\xa9', + 0x6aaa: b'\x11j\xaa', + 0x6aab: b'\x11j\xab', + 0x6aac: b'\x11j\xac', + 0x6aad: b'\x11j\xad', + 0x6aae: b'\x11j\xae', + 0x6aaf: b'\x11j\xaf', + 0x6ab0: b'\x11j\xb0', + 0x6ab1: b'\x11j\xb1', + 0x6ab2: b'\x11j\xb2', + 0x6ab3: b'\x11j\xb3', + 0x6ab4: b'\x11j\xb4', + 0x6ab5: b'\x11j\xb5', + 0x6ab6: b'\x11j\xb6', + 0x6ab7: b'\x11j\xb7', + 0x6ab8: b'\x11j\xb8', + 0x6ab9: b'\x11j\xb9', + 0x6aba: b'\x11j\xba', + 0x6abb: b'\x11j\xbb', + 0x6abc: b'\x11j\xbc', + 0x6abd: b'\x11j\xbd', + 0x6abe: b'\x11j\xbe', + 0x6abf: b'\x11j\xbf', + 0x6ac0: b'\x11j\xc0', + 0x6ac1: b'\x11j\xc1', + 0x6ac2: b'\x11j\xc2', + 0x6ac3: b'\x11j\xc3', + 0x6ac4: b'\x11j\xc4', + 0x6ac5: b'\x11j\xc5', + 0x6ac6: b'\x11j\xc6', + 0x6ac7: b'\x11j\xc7', + 0x6ac8: b'\x11j\xc8', + 0x6ac9: b'\x11j\xc9', + 0x6aca: b'\x11j\xca', + 0x6acb: b'\x11j\xcb', + 0x6acc: b'\x11j\xcc', + 0x6acd: b'\x11j\xcd', + 0x6ace: b'\x11j\xce', + 0x6acf: b'\x11j\xcf', + 0x6ad0: b'\x11j\xd0', + 0x6ad1: b'\x11j\xd1', + 0x6ad2: b'\x11j\xd2', + 0x6ad3: b'\x11j\xd3', + 0x6ad4: b'\x11j\xd4', + 0x6ad5: b'\x11j\xd5', + 0x6ad6: b'\x11j\xd6', + 0x6ad7: b'\x11j\xd7', + 0x6ad8: b'\x11j\xd8', + 0x6ad9: b'\x11j\xd9', + 0x6ada: b'\x11j\xda', + 0x6adb: b'\x11j\xdb', + 0x6adc: b'\x11j\xdc', + 0x6add: b'\x11j\xdd', + 0x6ade: b'\x11j\xde', + 0x6adf: b'\x11j\xdf', + 0x6ae0: b'\x11j\xe0', + 0x6ae1: b'\x11j\xe1', + 0x6ae2: b'\x11j\xe2', + 0x6ae3: b'\x11j\xe3', + 0x6ae4: b'\x11j\xe4', + 0x6ae5: b'\x11j\xe5', + 0x6ae6: b'\x11j\xe6', + 0x6ae7: b'\x11j\xe7', + 0x6ae8: b'\x11j\xe8', + 0x6ae9: b'\x11j\xe9', + 0x6aea: b'\x11j\xea', + 0x6aeb: b'\x11j\xeb', + 0x6aec: b'\x11j\xec', + 0x6aed: b'\x11j\xed', + 0x6aee: b'\x11j\xee', + 0x6aef: b'\x11j\xef', + 0x6af0: b'\x11j\xf0', + 0x6af1: b'\x11j\xf1', + 0x6af2: b'\x11j\xf2', + 0x6af3: b'\x11j\xf3', + 0x6af4: b'\x11j\xf4', + 0x6af5: b'\x11j\xf5', + 0x6af6: b'\x11j\xf6', + 0x6af7: b'\x11j\xf7', + 0x6af8: b'\x11j\xf8', + 0x6af9: b'\x11j\xf9', + 0x6afa: b'\x11j\xfa', + 0x6afb: b'\x11j\xfb', + 0x6afc: b'\x11j\xfc', + 0x6afd: b'\x11j\xfd', + 0x6afe: b'\x11j\xfe', + 0x6aff: b'\x11j\xff', + 0x6b00: b'\x11k\x00', + 0x6b01: b'\x11k\x01', + 0x6b02: b'\x11k\x02', + 0x6b03: b'\x11k\x03', + 0x6b04: b'\x11k\x04', + 0x6b05: b'\x11k\x05', + 0x6b06: b'\x11k\x06', + 0x6b07: b'\x11k\x07', + 0x6b08: b'\x11k\x08', + 0x6b09: b'\x11k\t', + 0x6b0a: b'\x11k\n', + 0x6b0b: b'\x11k\x0b', + 0x6b0c: b'\x11k\x0c', + 0x6b0d: b'\x11k\r', + 0x6b0e: b'\x11k\x0e', + 0x6b0f: b'\x11k\x0f', + 0x6b10: b'\x11k\x10', + 0x6b11: b'\x11k\x11', + 0x6b12: b'\x11k\x12', + 0x6b13: b'\x11k\x13', + 0x6b14: b'\x11k\x14', + 0x6b15: b'\x11k\x15', + 0x6b16: b'\x11k\x16', + 0x6b17: b'\x11k\x17', + 0x6b18: b'\x11k\x18', + 0x6b19: b'\x11k\x19', + 0x6b1a: b'\x11k\x1a', + 0x6b1b: b'\x11k\x1b', + 0x6b1c: b'\x11k\x1c', + 0x6b1d: b'\x11k\x1d', + 0x6b1e: b'\x11k\x1e', + 0x6b1f: b'\x11k\x1f', + 0x6b20: b'\x11k ', + 0x6b21: b'\x11k!', + 0x6b22: b'\x11k"', + 0x6b23: b'\x11k#', + 0x6b24: b'\x11k$', + 0x6b25: b'\x11k%', + 0x6b26: b'\x11k&', + 0x6b27: b"\x11k'", + 0x6b28: b'\x11k(', + 0x6b29: b'\x11k)', + 0x6b2a: b'\x11k*', + 0x6b2b: b'\x11k+', + 0x6b2c: b'\x11k,', + 0x6b2d: b'\x11k-', + 0x6b2e: b'\x11k.', + 0x6b2f: b'\x11k/', + 0x6b30: b'\x11k0', + 0x6b31: b'\x11k1', + 0x6b32: b'\x11k2', + 0x6b33: b'\x11k3', + 0x6b34: b'\x11k4', + 0x6b35: b'\x11k5', + 0x6b36: b'\x11k6', + 0x6b37: b'\x11k7', + 0x6b38: b'\x11k8', + 0x6b39: b'\x11k9', + 0x6b3a: b'\x11k:', + 0x6b3b: b'\x11k;', + 0x6b3c: b'\x11k<', + 0x6b3d: b'\x11k=', + 0x6b3e: b'\x11k>', + 0x6b3f: b'\x11k?', + 0x6b40: b'\x11k@', + 0x6b41: b'\x11kA', + 0x6b42: b'\x11kB', + 0x6b43: b'\x11kC', + 0x6b44: b'\x11kD', + 0x6b45: b'\x11kE', + 0x6b46: b'\x11kF', + 0x6b47: b'\x11kG', + 0x6b48: b'\x11kH', + 0x6b49: b'\x11kI', + 0x6b4a: b'\x11kJ', + 0x6b4b: b'\x11kK', + 0x6b4c: b'\x11kL', + 0x6b4d: b'\x11kM', + 0x6b4e: b'\x11kN', + 0x6b4f: b'\x11kO', + 0x6b50: b'\x11kP', + 0x6b51: b'\x11kQ', + 0x6b52: b'\x11kR', + 0x6b53: b'\x11kS', + 0x6b54: b'\x11kT', + 0x6b55: b'\x11kU', + 0x6b56: b'\x11kV', + 0x6b57: b'\x11kW', + 0x6b58: b'\x11kX', + 0x6b59: b'\x11kY', + 0x6b5a: b'\x11kZ', + 0x6b5b: b'\x11k[', + 0x6b5c: b'\x11k\\', + 0x6b5d: b'\x11k]', + 0x6b5e: b'\x11k^', + 0x6b5f: b'\x11k_', + 0x6b60: b'\x11k`', + 0x6b61: b'\x11ka', + 0x6b62: b'\x11kb', + 0x6b63: b'\x11kc', + 0x6b64: b'\x11kd', + 0x6b65: b'\x11ke', + 0x6b66: b'\x11kf', + 0x6b67: b'\x11kg', + 0x6b68: b'\x11kh', + 0x6b69: b'\x11ki', + 0x6b6a: b'\x11kj', + 0x6b6b: b'\x11kk', + 0x6b6c: b'\x11kl', + 0x6b6d: b'\x11km', + 0x6b6e: b'\x11kn', + 0x6b6f: b'\x11ko', + 0x6b70: b'\x11kp', + 0x6b71: b'\x11kq', + 0x6b72: b'\x11kr', + 0x6b73: b'\x11ks', + 0x6b74: b'\x11kt', + 0x6b75: b'\x11ku', + 0x6b76: b'\x11kv', + 0x6b77: b'\x11kw', + 0x6b78: b'\x11kx', + 0x6b79: b'\x11ky', + 0x6b7a: b'\x11kz', + 0x6b7b: b'\x11k{', + 0x6b7c: b'\x11k|', + 0x6b7d: b'\x11k}', + 0x6b7e: b'\x11k~', + 0x6b7f: b'\x11k\x7f', + 0x6b80: b'\x11k\x80', + 0x6b81: b'\x11k\x81', + 0x6b82: b'\x11k\x82', + 0x6b83: b'\x11k\x83', + 0x6b84: b'\x11k\x84', + 0x6b85: b'\x11k\x85', + 0x6b86: b'\x11k\x86', + 0x6b87: b'\x11k\x87', + 0x6b88: b'\x11k\x88', + 0x6b89: b'\x11k\x89', + 0x6b8a: b'\x11k\x8a', + 0x6b8b: b'\x11k\x8b', + 0x6b8c: b'\x11k\x8c', + 0x6b8d: b'\x11k\x8d', + 0x6b8e: b'\x11k\x8e', + 0x6b8f: b'\x11k\x8f', + 0x6b90: b'\x11k\x90', + 0x6b91: b'\x11k\x91', + 0x6b92: b'\x11k\x92', + 0x6b93: b'\x11k\x93', + 0x6b94: b'\x11k\x94', + 0x6b95: b'\x11k\x95', + 0x6b96: b'\x11k\x96', + 0x6b97: b'\x11k\x97', + 0x6b98: b'\x11k\x98', + 0x6b99: b'\x11k\x99', + 0x6b9a: b'\x11k\x9a', + 0x6b9b: b'\x11k\x9b', + 0x6b9c: b'\x11k\x9c', + 0x6b9d: b'\x11k\x9d', + 0x6b9e: b'\x11k\x9e', + 0x6b9f: b'\x11k\x9f', + 0x6ba0: b'\x11k\xa0', + 0x6ba1: b'\x11k\xa1', + 0x6ba2: b'\x11k\xa2', + 0x6ba3: b'\x11k\xa3', + 0x6ba4: b'\x11k\xa4', + 0x6ba5: b'\x11k\xa5', + 0x6ba6: b'\x11k\xa6', + 0x6ba7: b'\x11k\xa7', + 0x6ba8: b'\x11k\xa8', + 0x6ba9: b'\x11k\xa9', + 0x6baa: b'\x11k\xaa', + 0x6bab: b'\x11k\xab', + 0x6bac: b'\x11k\xac', + 0x6bad: b'\x11k\xad', + 0x6bae: b'\x11k\xae', + 0x6baf: b'\x11k\xaf', + 0x6bb0: b'\x11k\xb0', + 0x6bb1: b'\x11k\xb1', + 0x6bb2: b'\x11k\xb2', + 0x6bb3: b'\x11k\xb3', + 0x6bb4: b'\x11k\xb4', + 0x6bb5: b'\x11k\xb5', + 0x6bb6: b'\x11k\xb6', + 0x6bb7: b'\x11k\xb7', + 0x6bb8: b'\x11k\xb8', + 0x6bb9: b'\x11k\xb9', + 0x6bba: b'\x11k\xba', + 0x6bbb: b'\x11k\xbb', + 0x6bbc: b'\x11k\xbc', + 0x6bbd: b'\x11k\xbd', + 0x6bbe: b'\x11k\xbe', + 0x6bbf: b'\x11k\xbf', + 0x6bc0: b'\x11k\xc0', + 0x6bc1: b'\x11k\xc1', + 0x6bc2: b'\x11k\xc2', + 0x6bc3: b'\x11k\xc3', + 0x6bc4: b'\x11k\xc4', + 0x6bc5: b'\x11k\xc5', + 0x6bc6: b'\x11k\xc6', + 0x6bc7: b'\x11k\xc7', + 0x6bc8: b'\x11k\xc8', + 0x6bc9: b'\x11k\xc9', + 0x6bca: b'\x11k\xca', + 0x6bcb: b'\x11k\xcb', + 0x6bcc: b'\x11k\xcc', + 0x6bcd: b'\x11k\xcd', + 0x6bce: b'\x11k\xce', + 0x6bcf: b'\x11k\xcf', + 0x6bd0: b'\x11k\xd0', + 0x6bd1: b'\x11k\xd1', + 0x6bd2: b'\x11k\xd2', + 0x6bd3: b'\x11k\xd3', + 0x6bd4: b'\x11k\xd4', + 0x6bd5: b'\x11k\xd5', + 0x6bd6: b'\x11k\xd6', + 0x6bd7: b'\x11k\xd7', + 0x6bd8: b'\x11k\xd8', + 0x6bd9: b'\x11k\xd9', + 0x6bda: b'\x11k\xda', + 0x6bdb: b'\x11k\xdb', + 0x6bdc: b'\x11k\xdc', + 0x6bdd: b'\x11k\xdd', + 0x6bde: b'\x11k\xde', + 0x6bdf: b'\x11k\xdf', + 0x6be0: b'\x11k\xe0', + 0x6be1: b'\x11k\xe1', + 0x6be2: b'\x11k\xe2', + 0x6be3: b'\x11k\xe3', + 0x6be4: b'\x11k\xe4', + 0x6be5: b'\x11k\xe5', + 0x6be6: b'\x11k\xe6', + 0x6be7: b'\x11k\xe7', + 0x6be8: b'\x11k\xe8', + 0x6be9: b'\x11k\xe9', + 0x6bea: b'\x11k\xea', + 0x6beb: b'\x11k\xeb', + 0x6bec: b'\x11k\xec', + 0x6bed: b'\x11k\xed', + 0x6bee: b'\x11k\xee', + 0x6bef: b'\x11k\xef', + 0x6bf0: b'\x11k\xf0', + 0x6bf1: b'\x11k\xf1', + 0x6bf2: b'\x11k\xf2', + 0x6bf3: b'\x11k\xf3', + 0x6bf4: b'\x11k\xf4', + 0x6bf5: b'\x11k\xf5', + 0x6bf6: b'\x11k\xf6', + 0x6bf7: b'\x11k\xf7', + 0x6bf8: b'\x11k\xf8', + 0x6bf9: b'\x11k\xf9', + 0x6bfa: b'\x11k\xfa', + 0x6bfb: b'\x11k\xfb', + 0x6bfc: b'\x11k\xfc', + 0x6bfd: b'\x11k\xfd', + 0x6bfe: b'\x11k\xfe', + 0x6bff: b'\x11k\xff', + 0x6c00: b'\x11l\x00', + 0x6c01: b'\x11l\x01', + 0x6c02: b'\x11l\x02', + 0x6c03: b'\x11l\x03', + 0x6c04: b'\x11l\x04', + 0x6c05: b'\x11l\x05', + 0x6c06: b'\x11l\x06', + 0x6c07: b'\x11l\x07', + 0x6c08: b'\x11l\x08', + 0x6c09: b'\x11l\t', + 0x6c0a: b'\x11l\n', + 0x6c0b: b'\x11l\x0b', + 0x6c0c: b'\x11l\x0c', + 0x6c0d: b'\x11l\r', + 0x6c0e: b'\x11l\x0e', + 0x6c0f: b'\x11l\x0f', + 0x6c10: b'\x11l\x10', + 0x6c11: b'\x11l\x11', + 0x6c12: b'\x11l\x12', + 0x6c13: b'\x11l\x13', + 0x6c14: b'\x11l\x14', + 0x6c15: b'\x11l\x15', + 0x6c16: b'\x11l\x16', + 0x6c17: b'\x11l\x17', + 0x6c18: b'\x11l\x18', + 0x6c19: b'\x11l\x19', + 0x6c1a: b'\x11l\x1a', + 0x6c1b: b'\x11l\x1b', + 0x6c1c: b'\x11l\x1c', + 0x6c1d: b'\x11l\x1d', + 0x6c1e: b'\x11l\x1e', + 0x6c1f: b'\x11l\x1f', + 0x6c20: b'\x11l ', + 0x6c21: b'\x11l!', + 0x6c22: b'\x11l"', + 0x6c23: b'\x11l#', + 0x6c24: b'\x11l$', + 0x6c25: b'\x11l%', + 0x6c26: b'\x11l&', + 0x6c27: b"\x11l'", + 0x6c28: b'\x11l(', + 0x6c29: b'\x11l)', + 0x6c2a: b'\x11l*', + 0x6c2b: b'\x11l+', + 0x6c2c: b'\x11l,', + 0x6c2d: b'\x11l-', + 0x6c2e: b'\x11l.', + 0x6c2f: b'\x11l/', + 0x6c30: b'\x11l0', + 0x6c31: b'\x11l1', + 0x6c32: b'\x11l2', + 0x6c33: b'\x11l3', + 0x6c34: b'\x11l4', + 0x6c35: b'\x11l5', + 0x6c36: b'\x11l6', + 0x6c37: b'\x11l7', + 0x6c38: b'\x11l8', + 0x6c39: b'\x11l9', + 0x6c3a: b'\x11l:', + 0x6c3b: b'\x11l;', + 0x6c3c: b'\x11l<', + 0x6c3d: b'\x11l=', + 0x6c3e: b'\x11l>', + 0x6c3f: b'\x11l?', + 0x6c40: b'\x11l@', + 0x6c41: b'\x11lA', + 0x6c42: b'\x11lB', + 0x6c43: b'\x11lC', + 0x6c44: b'\x11lD', + 0x6c45: b'\x11lE', + 0x6c46: b'\x11lF', + 0x6c47: b'\x11lG', + 0x6c48: b'\x11lH', + 0x6c49: b'\x11lI', + 0x6c4a: b'\x11lJ', + 0x6c4b: b'\x11lK', + 0x6c4c: b'\x11lL', + 0x6c4d: b'\x11lM', + 0x6c4e: b'\x11lN', + 0x6c4f: b'\x11lO', + 0x6c50: b'\x11lP', + 0x6c51: b'\x11lQ', + 0x6c52: b'\x11lR', + 0x6c53: b'\x11lS', + 0x6c54: b'\x11lT', + 0x6c55: b'\x11lU', + 0x6c56: b'\x11lV', + 0x6c57: b'\x11lW', + 0x6c58: b'\x11lX', + 0x6c59: b'\x11lY', + 0x6c5a: b'\x11lZ', + 0x6c5b: b'\x11l[', + 0x6c5c: b'\x11l\\', + 0x6c5d: b'\x11l]', + 0x6c5e: b'\x11l^', + 0x6c5f: b'\x11l_', + 0x6c60: b'\x11l`', + 0x6c61: b'\x11la', + 0x6c62: b'\x11lb', + 0x6c63: b'\x11lc', + 0x6c64: b'\x11ld', + 0x6c65: b'\x11le', + 0x6c66: b'\x11lf', + 0x6c67: b'\x11lg', + 0x6c68: b'\x11lh', + 0x6c69: b'\x11li', + 0x6c6a: b'\x11lj', + 0x6c6b: b'\x11lk', + 0x6c6c: b'\x11ll', + 0x6c6d: b'\x11lm', + 0x6c6e: b'\x11ln', + 0x6c6f: b'\x11lo', + 0x6c70: b'\x11lp', + 0x6c71: b'\x11lq', + 0x6c72: b'\x11lr', + 0x6c73: b'\x11ls', + 0x6c74: b'\x11lt', + 0x6c75: b'\x11lu', + 0x6c76: b'\x11lv', + 0x6c77: b'\x11lw', + 0x6c78: b'\x11lx', + 0x6c79: b'\x11ly', + 0x6c7a: b'\x11lz', + 0x6c7b: b'\x11l{', + 0x6c7c: b'\x11l|', + 0x6c7d: b'\x11l}', + 0x6c7e: b'\x11l~', + 0x6c7f: b'\x11l\x7f', + 0x6c80: b'\x11l\x80', + 0x6c81: b'\x11l\x81', + 0x6c82: b'\x11l\x82', + 0x6c83: b'\x11l\x83', + 0x6c84: b'\x11l\x84', + 0x6c85: b'\x11l\x85', + 0x6c86: b'\x11l\x86', + 0x6c87: b'\x11l\x87', + 0x6c88: b'\x11l\x88', + 0x6c89: b'\x11l\x89', + 0x6c8a: b'\x11l\x8a', + 0x6c8b: b'\x11l\x8b', + 0x6c8c: b'\x11l\x8c', + 0x6c8d: b'\x11l\x8d', + 0x6c8e: b'\x11l\x8e', + 0x6c8f: b'\x11l\x8f', + 0x6c90: b'\x11l\x90', + 0x6c91: b'\x11l\x91', + 0x6c92: b'\x11l\x92', + 0x6c93: b'\x11l\x93', + 0x6c94: b'\x11l\x94', + 0x6c95: b'\x11l\x95', + 0x6c96: b'\x11l\x96', + 0x6c97: b'\x11l\x97', + 0x6c98: b'\x11l\x98', + 0x6c99: b'\x11l\x99', + 0x6c9a: b'\x11l\x9a', + 0x6c9b: b'\x11l\x9b', + 0x6c9c: b'\x11l\x9c', + 0x6c9d: b'\x11l\x9d', + 0x6c9e: b'\x11l\x9e', + 0x6c9f: b'\x11l\x9f', + 0x6ca0: b'\x11l\xa0', + 0x6ca1: b'\x11l\xa1', + 0x6ca2: b'\x11l\xa2', + 0x6ca3: b'\x11l\xa3', + 0x6ca4: b'\x11l\xa4', + 0x6ca5: b'\x11l\xa5', + 0x6ca6: b'\x11l\xa6', + 0x6ca7: b'\x11l\xa7', + 0x6ca8: b'\x11l\xa8', + 0x6ca9: b'\x11l\xa9', + 0x6caa: b'\x11l\xaa', + 0x6cab: b'\x11l\xab', + 0x6cac: b'\x11l\xac', + 0x6cad: b'\x11l\xad', + 0x6cae: b'\x11l\xae', + 0x6caf: b'\x11l\xaf', + 0x6cb0: b'\x11l\xb0', + 0x6cb1: b'\x11l\xb1', + 0x6cb2: b'\x11l\xb2', + 0x6cb3: b'\x11l\xb3', + 0x6cb4: b'\x11l\xb4', + 0x6cb5: b'\x11l\xb5', + 0x6cb6: b'\x11l\xb6', + 0x6cb7: b'\x11l\xb7', + 0x6cb8: b'\x11l\xb8', + 0x6cb9: b'\x11l\xb9', + 0x6cba: b'\x11l\xba', + 0x6cbb: b'\x11l\xbb', + 0x6cbc: b'\x11l\xbc', + 0x6cbd: b'\x11l\xbd', + 0x6cbe: b'\x11l\xbe', + 0x6cbf: b'\x11l\xbf', + 0x6cc0: b'\x11l\xc0', + 0x6cc1: b'\x11l\xc1', + 0x6cc2: b'\x11l\xc2', + 0x6cc3: b'\x11l\xc3', + 0x6cc4: b'\x11l\xc4', + 0x6cc5: b'\x11l\xc5', + 0x6cc6: b'\x11l\xc6', + 0x6cc7: b'\x11l\xc7', + 0x6cc8: b'\x11l\xc8', + 0x6cc9: b'\x11l\xc9', + 0x6cca: b'\x11l\xca', + 0x6ccb: b'\x11l\xcb', + 0x6ccc: b'\x11l\xcc', + 0x6ccd: b'\x11l\xcd', + 0x6cce: b'\x11l\xce', + 0x6ccf: b'\x11l\xcf', + 0x6cd0: b'\x11l\xd0', + 0x6cd1: b'\x11l\xd1', + 0x6cd2: b'\x11l\xd2', + 0x6cd3: b'\x11l\xd3', + 0x6cd4: b'\x11l\xd4', + 0x6cd5: b'\x11l\xd5', + 0x6cd6: b'\x11l\xd6', + 0x6cd7: b'\x11l\xd7', + 0x6cd8: b'\x11l\xd8', + 0x6cd9: b'\x11l\xd9', + 0x6cda: b'\x11l\xda', + 0x6cdb: b'\x11l\xdb', + 0x6cdc: b'\x11l\xdc', + 0x6cdd: b'\x11l\xdd', + 0x6cde: b'\x11l\xde', + 0x6cdf: b'\x11l\xdf', + 0x6ce0: b'\x11l\xe0', + 0x6ce1: b'\x11l\xe1', + 0x6ce2: b'\x11l\xe2', + 0x6ce3: b'\x11l\xe3', + 0x6ce4: b'\x11l\xe4', + 0x6ce5: b'\x11l\xe5', + 0x6ce6: b'\x11l\xe6', + 0x6ce7: b'\x11l\xe7', + 0x6ce8: b'\x11l\xe8', + 0x6ce9: b'\x11l\xe9', + 0x6cea: b'\x11l\xea', + 0x6ceb: b'\x11l\xeb', + 0x6cec: b'\x11l\xec', + 0x6ced: b'\x11l\xed', + 0x6cee: b'\x11l\xee', + 0x6cef: b'\x11l\xef', + 0x6cf0: b'\x11l\xf0', + 0x6cf1: b'\x11l\xf1', + 0x6cf2: b'\x11l\xf2', + 0x6cf3: b'\x11l\xf3', + 0x6cf4: b'\x11l\xf4', + 0x6cf5: b'\x11l\xf5', + 0x6cf6: b'\x11l\xf6', + 0x6cf7: b'\x11l\xf7', + 0x6cf8: b'\x11l\xf8', + 0x6cf9: b'\x11l\xf9', + 0x6cfa: b'\x11l\xfa', + 0x6cfb: b'\x11l\xfb', + 0x6cfc: b'\x11l\xfc', + 0x6cfd: b'\x11l\xfd', + 0x6cfe: b'\x11l\xfe', + 0x6cff: b'\x11l\xff', + 0x6d00: b'\x11m\x00', + 0x6d01: b'\x11m\x01', + 0x6d02: b'\x11m\x02', + 0x6d03: b'\x11m\x03', + 0x6d04: b'\x11m\x04', + 0x6d05: b'\x11m\x05', + 0x6d06: b'\x11m\x06', + 0x6d07: b'\x11m\x07', + 0x6d08: b'\x11m\x08', + 0x6d09: b'\x11m\t', + 0x6d0a: b'\x11m\n', + 0x6d0b: b'\x11m\x0b', + 0x6d0c: b'\x11m\x0c', + 0x6d0d: b'\x11m\r', + 0x6d0e: b'\x11m\x0e', + 0x6d0f: b'\x11m\x0f', + 0x6d10: b'\x11m\x10', + 0x6d11: b'\x11m\x11', + 0x6d12: b'\x11m\x12', + 0x6d13: b'\x11m\x13', + 0x6d14: b'\x11m\x14', + 0x6d15: b'\x11m\x15', + 0x6d16: b'\x11m\x16', + 0x6d17: b'\x11m\x17', + 0x6d18: b'\x11m\x18', + 0x6d19: b'\x11m\x19', + 0x6d1a: b'\x11m\x1a', + 0x6d1b: b'\x11m\x1b', + 0x6d1c: b'\x11m\x1c', + 0x6d1d: b'\x11m\x1d', + 0x6d1e: b'\x11m\x1e', + 0x6d1f: b'\x11m\x1f', + 0x6d20: b'\x11m ', + 0x6d21: b'\x11m!', + 0x6d22: b'\x11m"', + 0x6d23: b'\x11m#', + 0x6d24: b'\x11m$', + 0x6d25: b'\x11m%', + 0x6d26: b'\x11m&', + 0x6d27: b"\x11m'", + 0x6d28: b'\x11m(', + 0x6d29: b'\x11m)', + 0x6d2a: b'\x11m*', + 0x6d2b: b'\x11m+', + 0x6d2c: b'\x11m,', + 0x6d2d: b'\x11m-', + 0x6d2e: b'\x11m.', + 0x6d2f: b'\x11m/', + 0x6d30: b'\x11m0', + 0x6d31: b'\x11m1', + 0x6d32: b'\x11m2', + 0x6d33: b'\x11m3', + 0x6d34: b'\x11m4', + 0x6d35: b'\x11m5', + 0x6d36: b'\x11m6', + 0x6d37: b'\x11m7', + 0x6d38: b'\x11m8', + 0x6d39: b'\x11m9', + 0x6d3a: b'\x11m:', + 0x6d3b: b'\x11m;', + 0x6d3c: b'\x11m<', + 0x6d3d: b'\x11m=', + 0x6d3e: b'\x11m>', + 0x6d3f: b'\x11m?', + 0x6d40: b'\x11m@', + 0x6d41: b'\x11mA', + 0x6d42: b'\x11mB', + 0x6d43: b'\x11mC', + 0x6d44: b'\x11mD', + 0x6d45: b'\x11mE', + 0x6d46: b'\x11mF', + 0x6d47: b'\x11mG', + 0x6d48: b'\x11mH', + 0x6d49: b'\x11mI', + 0x6d4a: b'\x11mJ', + 0x6d4b: b'\x11mK', + 0x6d4c: b'\x11mL', + 0x6d4d: b'\x11mM', + 0x6d4e: b'\x11mN', + 0x6d4f: b'\x11mO', + 0x6d50: b'\x11mP', + 0x6d51: b'\x11mQ', + 0x6d52: b'\x11mR', + 0x6d53: b'\x11mS', + 0x6d54: b'\x11mT', + 0x6d55: b'\x11mU', + 0x6d56: b'\x11mV', + 0x6d57: b'\x11mW', + 0x6d58: b'\x11mX', + 0x6d59: b'\x11mY', + 0x6d5a: b'\x11mZ', + 0x6d5b: b'\x11m[', + 0x6d5c: b'\x11m\\', + 0x6d5d: b'\x11m]', + 0x6d5e: b'\x11m^', + 0x6d5f: b'\x11m_', + 0x6d60: b'\x11m`', + 0x6d61: b'\x11ma', + 0x6d62: b'\x11mb', + 0x6d63: b'\x11mc', + 0x6d64: b'\x11md', + 0x6d65: b'\x11me', + 0x6d66: b'\x11mf', + 0x6d67: b'\x11mg', + 0x6d68: b'\x11mh', + 0x6d69: b'\x11mi', + 0x6d6a: b'\x11mj', + 0x6d6b: b'\x11mk', + 0x6d6c: b'\x11ml', + 0x6d6d: b'\x11mm', + 0x6d6e: b'\x11mn', + 0x6d6f: b'\x11mo', + 0x6d70: b'\x11mp', + 0x6d71: b'\x11mq', + 0x6d72: b'\x11mr', + 0x6d73: b'\x11ms', + 0x6d74: b'\x11mt', + 0x6d75: b'\x11mu', + 0x6d76: b'\x11mv', + 0x6d77: b'\x11mw', + 0x6d78: b'\x11mx', + 0x6d79: b'\x11my', + 0x6d7a: b'\x11mz', + 0x6d7b: b'\x11m{', + 0x6d7c: b'\x11m|', + 0x6d7d: b'\x11m}', + 0x6d7e: b'\x11m~', + 0x6d7f: b'\x11m\x7f', + 0x6d80: b'\x11m\x80', + 0x6d81: b'\x11m\x81', + 0x6d82: b'\x11m\x82', + 0x6d83: b'\x11m\x83', + 0x6d84: b'\x11m\x84', + 0x6d85: b'\x11m\x85', + 0x6d86: b'\x11m\x86', + 0x6d87: b'\x11m\x87', + 0x6d88: b'\x11m\x88', + 0x6d89: b'\x11m\x89', + 0x6d8a: b'\x11m\x8a', + 0x6d8b: b'\x11m\x8b', + 0x6d8c: b'\x11m\x8c', + 0x6d8d: b'\x11m\x8d', + 0x6d8e: b'\x11m\x8e', + 0x6d8f: b'\x11m\x8f', + 0x6d90: b'\x11m\x90', + 0x6d91: b'\x11m\x91', + 0x6d92: b'\x11m\x92', + 0x6d93: b'\x11m\x93', + 0x6d94: b'\x11m\x94', + 0x6d95: b'\x11m\x95', + 0x6d96: b'\x11m\x96', + 0x6d97: b'\x11m\x97', + 0x6d98: b'\x11m\x98', + 0x6d99: b'\x11m\x99', + 0x6d9a: b'\x11m\x9a', + 0x6d9b: b'\x11m\x9b', + 0x6d9c: b'\x11m\x9c', + 0x6d9d: b'\x11m\x9d', + 0x6d9e: b'\x11m\x9e', + 0x6d9f: b'\x11m\x9f', + 0x6da0: b'\x11m\xa0', + 0x6da1: b'\x11m\xa1', + 0x6da2: b'\x11m\xa2', + 0x6da3: b'\x11m\xa3', + 0x6da4: b'\x11m\xa4', + 0x6da5: b'\x11m\xa5', + 0x6da6: b'\x11m\xa6', + 0x6da7: b'\x11m\xa7', + 0x6da8: b'\x11m\xa8', + 0x6da9: b'\x11m\xa9', + 0x6daa: b'\x11m\xaa', + 0x6dab: b'\x11m\xab', + 0x6dac: b'\x11m\xac', + 0x6dad: b'\x11m\xad', + 0x6dae: b'\x11m\xae', + 0x6daf: b'\x11m\xaf', + 0x6db0: b'\x11m\xb0', + 0x6db1: b'\x11m\xb1', + 0x6db2: b'\x11m\xb2', + 0x6db3: b'\x11m\xb3', + 0x6db4: b'\x11m\xb4', + 0x6db5: b'\x11m\xb5', + 0x6db6: b'\x11m\xb6', + 0x6db7: b'\x11m\xb7', + 0x6db8: b'\x11m\xb8', + 0x6db9: b'\x11m\xb9', + 0x6dba: b'\x11m\xba', + 0x6dbb: b'\x11m\xbb', + 0x6dbc: b'\x11m\xbc', + 0x6dbd: b'\x11m\xbd', + 0x6dbe: b'\x11m\xbe', + 0x6dbf: b'\x11m\xbf', + 0x6dc0: b'\x11m\xc0', + 0x6dc1: b'\x11m\xc1', + 0x6dc2: b'\x11m\xc2', + 0x6dc3: b'\x11m\xc3', + 0x6dc4: b'\x11m\xc4', + 0x6dc5: b'\x11m\xc5', + 0x6dc6: b'\x11m\xc6', + 0x6dc7: b'\x11m\xc7', + 0x6dc8: b'\x11m\xc8', + 0x6dc9: b'\x11m\xc9', + 0x6dca: b'\x11m\xca', + 0x6dcb: b'\x11m\xcb', + 0x6dcc: b'\x11m\xcc', + 0x6dcd: b'\x11m\xcd', + 0x6dce: b'\x11m\xce', + 0x6dcf: b'\x11m\xcf', + 0x6dd0: b'\x11m\xd0', + 0x6dd1: b'\x11m\xd1', + 0x6dd2: b'\x11m\xd2', + 0x6dd3: b'\x11m\xd3', + 0x6dd4: b'\x11m\xd4', + 0x6dd5: b'\x11m\xd5', + 0x6dd6: b'\x11m\xd6', + 0x6dd7: b'\x11m\xd7', + 0x6dd8: b'\x11m\xd8', + 0x6dd9: b'\x11m\xd9', + 0x6dda: b'\x11m\xda', + 0x6ddb: b'\x11m\xdb', + 0x6ddc: b'\x11m\xdc', + 0x6ddd: b'\x11m\xdd', + 0x6dde: b'\x11m\xde', + 0x6ddf: b'\x11m\xdf', + 0x6de0: b'\x11m\xe0', + 0x6de1: b'\x11m\xe1', + 0x6de2: b'\x11m\xe2', + 0x6de3: b'\x11m\xe3', + 0x6de4: b'\x11m\xe4', + 0x6de5: b'\x11m\xe5', + 0x6de6: b'\x11m\xe6', + 0x6de7: b'\x11m\xe7', + 0x6de8: b'\x11m\xe8', + 0x6de9: b'\x11m\xe9', + 0x6dea: b'\x11m\xea', + 0x6deb: b'\x11m\xeb', + 0x6dec: b'\x11m\xec', + 0x6ded: b'\x11m\xed', + 0x6dee: b'\x11m\xee', + 0x6def: b'\x11m\xef', + 0x6df0: b'\x11m\xf0', + 0x6df1: b'\x11m\xf1', + 0x6df2: b'\x11m\xf2', + 0x6df3: b'\x11m\xf3', + 0x6df4: b'\x11m\xf4', + 0x6df5: b'\x11m\xf5', + 0x6df6: b'\x11m\xf6', + 0x6df7: b'\x11m\xf7', + 0x6df8: b'\x11m\xf8', + 0x6df9: b'\x11m\xf9', + 0x6dfa: b'\x11m\xfa', + 0x6dfb: b'\x11m\xfb', + 0x6dfc: b'\x11m\xfc', + 0x6dfd: b'\x11m\xfd', + 0x6dfe: b'\x11m\xfe', + 0x6dff: b'\x11m\xff', + 0x6e00: b'\x11n\x00', + 0x6e01: b'\x11n\x01', + 0x6e02: b'\x11n\x02', + 0x6e03: b'\x11n\x03', + 0x6e04: b'\x11n\x04', + 0x6e05: b'\x11n\x05', + 0x6e06: b'\x11n\x06', + 0x6e07: b'\x11n\x07', + 0x6e08: b'\x11n\x08', + 0x6e09: b'\x11n\t', + 0x6e0a: b'\x11n\n', + 0x6e0b: b'\x11n\x0b', + 0x6e0c: b'\x11n\x0c', + 0x6e0d: b'\x11n\r', + 0x6e0e: b'\x11n\x0e', + 0x6e0f: b'\x11n\x0f', + 0x6e10: b'\x11n\x10', + 0x6e11: b'\x11n\x11', + 0x6e12: b'\x11n\x12', + 0x6e13: b'\x11n\x13', + 0x6e14: b'\x11n\x14', + 0x6e15: b'\x11n\x15', + 0x6e16: b'\x11n\x16', + 0x6e17: b'\x11n\x17', + 0x6e18: b'\x11n\x18', + 0x6e19: b'\x11n\x19', + 0x6e1a: b'\x11n\x1a', + 0x6e1b: b'\x11n\x1b', + 0x6e1c: b'\x11n\x1c', + 0x6e1d: b'\x11n\x1d', + 0x6e1e: b'\x11n\x1e', + 0x6e1f: b'\x11n\x1f', + 0x6e20: b'\x11n ', + 0x6e21: b'\x11n!', + 0x6e22: b'\x11n"', + 0x6e23: b'\x11n#', + 0x6e24: b'\x11n$', + 0x6e25: b'\x11n%', + 0x6e26: b'\x11n&', + 0x6e27: b"\x11n'", + 0x6e28: b'\x11n(', + 0x6e29: b'\x11n)', + 0x6e2a: b'\x11n*', + 0x6e2b: b'\x11n+', + 0x6e2c: b'\x11n,', + 0x6e2d: b'\x11n-', + 0x6e2e: b'\x11n.', + 0x6e2f: b'\x11n/', + 0x6e30: b'\x11n0', + 0x6e31: b'\x11n1', + 0x6e32: b'\x11n2', + 0x6e33: b'\x11n3', + 0x6e34: b'\x11n4', + 0x6e35: b'\x11n5', + 0x6e36: b'\x11n6', + 0x6e37: b'\x11n7', + 0x6e38: b'\x11n8', + 0x6e39: b'\x11n9', + 0x6e3a: b'\x11n:', + 0x6e3b: b'\x11n;', + 0x6e3c: b'\x11n<', + 0x6e3d: b'\x11n=', + 0x6e3e: b'\x11n>', + 0x6e3f: b'\x11n?', + 0x6e40: b'\x11n@', + 0x6e41: b'\x11nA', + 0x6e42: b'\x11nB', + 0x6e43: b'\x11nC', + 0x6e44: b'\x11nD', + 0x6e45: b'\x11nE', + 0x6e46: b'\x11nF', + 0x6e47: b'\x11nG', + 0x6e48: b'\x11nH', + 0x6e49: b'\x11nI', + 0x6e4a: b'\x11nJ', + 0x6e4b: b'\x11nK', + 0x6e4c: b'\x11nL', + 0x6e4d: b'\x11nM', + 0x6e4e: b'\x11nN', + 0x6e4f: b'\x11nO', + 0x6e50: b'\x11nP', + 0x6e51: b'\x11nQ', + 0x6e52: b'\x11nR', + 0x6e53: b'\x11nS', + 0x6e54: b'\x11nT', + 0x6e55: b'\x11nU', + 0x6e56: b'\x11nV', + 0x6e57: b'\x11nW', + 0x6e58: b'\x11nX', + 0x6e59: b'\x11nY', + 0x6e5a: b'\x11nZ', + 0x6e5b: b'\x11n[', + 0x6e5c: b'\x11n\\', + 0x6e5d: b'\x11n]', + 0x6e5e: b'\x11n^', + 0x6e5f: b'\x11n_', + 0x6e60: b'\x11n`', + 0x6e61: b'\x11na', + 0x6e62: b'\x11nb', + 0x6e63: b'\x11nc', + 0x6e64: b'\x11nd', + 0x6e65: b'\x11ne', + 0x6e66: b'\x11nf', + 0x6e67: b'\x11ng', + 0x6e68: b'\x11nh', + 0x6e69: b'\x11ni', + 0x6e6a: b'\x11nj', + 0x6e6b: b'\x11nk', + 0x6e6c: b'\x11nl', + 0x6e6d: b'\x11nm', + 0x6e6e: b'\x11nn', + 0x6e6f: b'\x11no', + 0x6e70: b'\x11np', + 0x6e71: b'\x11nq', + 0x6e72: b'\x11nr', + 0x6e73: b'\x11ns', + 0x6e74: b'\x11nt', + 0x6e75: b'\x11nu', + 0x6e76: b'\x11nv', + 0x6e77: b'\x11nw', + 0x6e78: b'\x11nx', + 0x6e79: b'\x11ny', + 0x6e7a: b'\x11nz', + 0x6e7b: b'\x11n{', + 0x6e7c: b'\x11n|', + 0x6e7d: b'\x11n}', + 0x6e7e: b'\x11n~', + 0x6e7f: b'\x11n\x7f', + 0x6e80: b'\x11n\x80', + 0x6e81: b'\x11n\x81', + 0x6e82: b'\x11n\x82', + 0x6e83: b'\x11n\x83', + 0x6e84: b'\x11n\x84', + 0x6e85: b'\x11n\x85', + 0x6e86: b'\x11n\x86', + 0x6e87: b'\x11n\x87', + 0x6e88: b'\x11n\x88', + 0x6e89: b'\x11n\x89', + 0x6e8a: b'\x11n\x8a', + 0x6e8b: b'\x11n\x8b', + 0x6e8c: b'\x11n\x8c', + 0x6e8d: b'\x11n\x8d', + 0x6e8e: b'\x11n\x8e', + 0x6e8f: b'\x11n\x8f', + 0x6e90: b'\x11n\x90', + 0x6e91: b'\x11n\x91', + 0x6e92: b'\x11n\x92', + 0x6e93: b'\x11n\x93', + 0x6e94: b'\x11n\x94', + 0x6e95: b'\x11n\x95', + 0x6e96: b'\x11n\x96', + 0x6e97: b'\x11n\x97', + 0x6e98: b'\x11n\x98', + 0x6e99: b'\x11n\x99', + 0x6e9a: b'\x11n\x9a', + 0x6e9b: b'\x11n\x9b', + 0x6e9c: b'\x11n\x9c', + 0x6e9d: b'\x11n\x9d', + 0x6e9e: b'\x11n\x9e', + 0x6e9f: b'\x11n\x9f', + 0x6ea0: b'\x11n\xa0', + 0x6ea1: b'\x11n\xa1', + 0x6ea2: b'\x11n\xa2', + 0x6ea3: b'\x11n\xa3', + 0x6ea4: b'\x11n\xa4', + 0x6ea5: b'\x11n\xa5', + 0x6ea6: b'\x11n\xa6', + 0x6ea7: b'\x11n\xa7', + 0x6ea8: b'\x11n\xa8', + 0x6ea9: b'\x11n\xa9', + 0x6eaa: b'\x11n\xaa', + 0x6eab: b'\x11n\xab', + 0x6eac: b'\x11n\xac', + 0x6ead: b'\x11n\xad', + 0x6eae: b'\x11n\xae', + 0x6eaf: b'\x11n\xaf', + 0x6eb0: b'\x11n\xb0', + 0x6eb1: b'\x11n\xb1', + 0x6eb2: b'\x11n\xb2', + 0x6eb3: b'\x11n\xb3', + 0x6eb4: b'\x11n\xb4', + 0x6eb5: b'\x11n\xb5', + 0x6eb6: b'\x11n\xb6', + 0x6eb7: b'\x11n\xb7', + 0x6eb8: b'\x11n\xb8', + 0x6eb9: b'\x11n\xb9', + 0x6eba: b'\x11n\xba', + 0x6ebb: b'\x11n\xbb', + 0x6ebc: b'\x11n\xbc', + 0x6ebd: b'\x11n\xbd', + 0x6ebe: b'\x11n\xbe', + 0x6ebf: b'\x11n\xbf', + 0x6ec0: b'\x11n\xc0', + 0x6ec1: b'\x11n\xc1', + 0x6ec2: b'\x11n\xc2', + 0x6ec3: b'\x11n\xc3', + 0x6ec4: b'\x11n\xc4', + 0x6ec5: b'\x11n\xc5', + 0x6ec6: b'\x11n\xc6', + 0x6ec7: b'\x11n\xc7', + 0x6ec8: b'\x11n\xc8', + 0x6ec9: b'\x11n\xc9', + 0x6eca: b'\x11n\xca', + 0x6ecb: b'\x11n\xcb', + 0x6ecc: b'\x11n\xcc', + 0x6ecd: b'\x11n\xcd', + 0x6ece: b'\x11n\xce', + 0x6ecf: b'\x11n\xcf', + 0x6ed0: b'\x11n\xd0', + 0x6ed1: b'\x11n\xd1', + 0x6ed2: b'\x11n\xd2', + 0x6ed3: b'\x11n\xd3', + 0x6ed4: b'\x11n\xd4', + 0x6ed5: b'\x11n\xd5', + 0x6ed6: b'\x11n\xd6', + 0x6ed7: b'\x11n\xd7', + 0x6ed8: b'\x11n\xd8', + 0x6ed9: b'\x11n\xd9', + 0x6eda: b'\x11n\xda', + 0x6edb: b'\x11n\xdb', + 0x6edc: b'\x11n\xdc', + 0x6edd: b'\x11n\xdd', + 0x6ede: b'\x11n\xde', + 0x6edf: b'\x11n\xdf', + 0x6ee0: b'\x11n\xe0', + 0x6ee1: b'\x11n\xe1', + 0x6ee2: b'\x11n\xe2', + 0x6ee3: b'\x11n\xe3', + 0x6ee4: b'\x11n\xe4', + 0x6ee5: b'\x11n\xe5', + 0x6ee6: b'\x11n\xe6', + 0x6ee7: b'\x11n\xe7', + 0x6ee8: b'\x11n\xe8', + 0x6ee9: b'\x11n\xe9', + 0x6eea: b'\x11n\xea', + 0x6eeb: b'\x11n\xeb', + 0x6eec: b'\x11n\xec', + 0x6eed: b'\x11n\xed', + 0x6eee: b'\x11n\xee', + 0x6eef: b'\x11n\xef', + 0x6ef0: b'\x11n\xf0', + 0x6ef1: b'\x11n\xf1', + 0x6ef2: b'\x11n\xf2', + 0x6ef3: b'\x11n\xf3', + 0x6ef4: b'\x11n\xf4', + 0x6ef5: b'\x11n\xf5', + 0x6ef6: b'\x11n\xf6', + 0x6ef7: b'\x11n\xf7', + 0x6ef8: b'\x11n\xf8', + 0x6ef9: b'\x11n\xf9', + 0x6efa: b'\x11n\xfa', + 0x6efb: b'\x11n\xfb', + 0x6efc: b'\x11n\xfc', + 0x6efd: b'\x11n\xfd', + 0x6efe: b'\x11n\xfe', + 0x6eff: b'\x11n\xff', + 0x6f00: b'\x11o\x00', + 0x6f01: b'\x11o\x01', + 0x6f02: b'\x11o\x02', + 0x6f03: b'\x11o\x03', + 0x6f04: b'\x11o\x04', + 0x6f05: b'\x11o\x05', + 0x6f06: b'\x11o\x06', + 0x6f07: b'\x11o\x07', + 0x6f08: b'\x11o\x08', + 0x6f09: b'\x11o\t', + 0x6f0a: b'\x11o\n', + 0x6f0b: b'\x11o\x0b', + 0x6f0c: b'\x11o\x0c', + 0x6f0d: b'\x11o\r', + 0x6f0e: b'\x11o\x0e', + 0x6f0f: b'\x11o\x0f', + 0x6f10: b'\x11o\x10', + 0x6f11: b'\x11o\x11', + 0x6f12: b'\x11o\x12', + 0x6f13: b'\x11o\x13', + 0x6f14: b'\x11o\x14', + 0x6f15: b'\x11o\x15', + 0x6f16: b'\x11o\x16', + 0x6f17: b'\x11o\x17', + 0x6f18: b'\x11o\x18', + 0x6f19: b'\x11o\x19', + 0x6f1a: b'\x11o\x1a', + 0x6f1b: b'\x11o\x1b', + 0x6f1c: b'\x11o\x1c', + 0x6f1d: b'\x11o\x1d', + 0x6f1e: b'\x11o\x1e', + 0x6f1f: b'\x11o\x1f', + 0x6f20: b'\x11o ', + 0x6f21: b'\x11o!', + 0x6f22: b'\x11o"', + 0x6f23: b'\x11o#', + 0x6f24: b'\x11o$', + 0x6f25: b'\x11o%', + 0x6f26: b'\x11o&', + 0x6f27: b"\x11o'", + 0x6f28: b'\x11o(', + 0x6f29: b'\x11o)', + 0x6f2a: b'\x11o*', + 0x6f2b: b'\x11o+', + 0x6f2c: b'\x11o,', + 0x6f2d: b'\x11o-', + 0x6f2e: b'\x11o.', + 0x6f2f: b'\x11o/', + 0x6f30: b'\x11o0', + 0x6f31: b'\x11o1', + 0x6f32: b'\x11o2', + 0x6f33: b'\x11o3', + 0x6f34: b'\x11o4', + 0x6f35: b'\x11o5', + 0x6f36: b'\x11o6', + 0x6f37: b'\x11o7', + 0x6f38: b'\x11o8', + 0x6f39: b'\x11o9', + 0x6f3a: b'\x11o:', + 0x6f3b: b'\x11o;', + 0x6f3c: b'\x11o<', + 0x6f3d: b'\x11o=', + 0x6f3e: b'\x11o>', + 0x6f3f: b'\x11o?', + 0x6f40: b'\x11o@', + 0x6f41: b'\x11oA', + 0x6f42: b'\x11oB', + 0x6f43: b'\x11oC', + 0x6f44: b'\x11oD', + 0x6f45: b'\x11oE', + 0x6f46: b'\x11oF', + 0x6f47: b'\x11oG', + 0x6f48: b'\x11oH', + 0x6f49: b'\x11oI', + 0x6f4a: b'\x11oJ', + 0x6f4b: b'\x11oK', + 0x6f4c: b'\x11oL', + 0x6f4d: b'\x11oM', + 0x6f4e: b'\x11oN', + 0x6f4f: b'\x11oO', + 0x6f50: b'\x11oP', + 0x6f51: b'\x11oQ', + 0x6f52: b'\x11oR', + 0x6f53: b'\x11oS', + 0x6f54: b'\x11oT', + 0x6f55: b'\x11oU', + 0x6f56: b'\x11oV', + 0x6f57: b'\x11oW', + 0x6f58: b'\x11oX', + 0x6f59: b'\x11oY', + 0x6f5a: b'\x11oZ', + 0x6f5b: b'\x11o[', + 0x6f5c: b'\x11o\\', + 0x6f5d: b'\x11o]', + 0x6f5e: b'\x11o^', + 0x6f5f: b'\x11o_', + 0x6f60: b'\x11o`', + 0x6f61: b'\x11oa', + 0x6f62: b'\x11ob', + 0x6f63: b'\x11oc', + 0x6f64: b'\x11od', + 0x6f65: b'\x11oe', + 0x6f66: b'\x11of', + 0x6f67: b'\x11og', + 0x6f68: b'\x11oh', + 0x6f69: b'\x11oi', + 0x6f6a: b'\x11oj', + 0x6f6b: b'\x11ok', + 0x6f6c: b'\x11ol', + 0x6f6d: b'\x11om', + 0x6f6e: b'\x11on', + 0x6f6f: b'\x11oo', + 0x6f70: b'\x11op', + 0x6f71: b'\x11oq', + 0x6f72: b'\x11or', + 0x6f73: b'\x11os', + 0x6f74: b'\x11ot', + 0x6f75: b'\x11ou', + 0x6f76: b'\x11ov', + 0x6f77: b'\x11ow', + 0x6f78: b'\x11ox', + 0x6f79: b'\x11oy', + 0x6f7a: b'\x11oz', + 0x6f7b: b'\x11o{', + 0x6f7c: b'\x11o|', + 0x6f7d: b'\x11o}', + 0x6f7e: b'\x11o~', + 0x6f7f: b'\x11o\x7f', + 0x6f80: b'\x11o\x80', + 0x6f81: b'\x11o\x81', + 0x6f82: b'\x11o\x82', + 0x6f83: b'\x11o\x83', + 0x6f84: b'\x11o\x84', + 0x6f85: b'\x11o\x85', + 0x6f86: b'\x11o\x86', + 0x6f87: b'\x11o\x87', + 0x6f88: b'\x11o\x88', + 0x6f89: b'\x11o\x89', + 0x6f8a: b'\x11o\x8a', + 0x6f8b: b'\x11o\x8b', + 0x6f8c: b'\x11o\x8c', + 0x6f8d: b'\x11o\x8d', + 0x6f8e: b'\x11o\x8e', + 0x6f8f: b'\x11o\x8f', + 0x6f90: b'\x11o\x90', + 0x6f91: b'\x11o\x91', + 0x6f92: b'\x11o\x92', + 0x6f93: b'\x11o\x93', + 0x6f94: b'\x11o\x94', + 0x6f95: b'\x11o\x95', + 0x6f96: b'\x11o\x96', + 0x6f97: b'\x11o\x97', + 0x6f98: b'\x11o\x98', + 0x6f99: b'\x11o\x99', + 0x6f9a: b'\x11o\x9a', + 0x6f9b: b'\x11o\x9b', + 0x6f9c: b'\x11o\x9c', + 0x6f9d: b'\x11o\x9d', + 0x6f9e: b'\x11o\x9e', + 0x6f9f: b'\x11o\x9f', + 0x6fa0: b'\x11o\xa0', + 0x6fa1: b'\x11o\xa1', + 0x6fa2: b'\x11o\xa2', + 0x6fa3: b'\x11o\xa3', + 0x6fa4: b'\x11o\xa4', + 0x6fa5: b'\x11o\xa5', + 0x6fa6: b'\x11o\xa6', + 0x6fa7: b'\x11o\xa7', + 0x6fa8: b'\x11o\xa8', + 0x6fa9: b'\x11o\xa9', + 0x6faa: b'\x11o\xaa', + 0x6fab: b'\x11o\xab', + 0x6fac: b'\x11o\xac', + 0x6fad: b'\x11o\xad', + 0x6fae: b'\x11o\xae', + 0x6faf: b'\x11o\xaf', + 0x6fb0: b'\x11o\xb0', + 0x6fb1: b'\x11o\xb1', + 0x6fb2: b'\x11o\xb2', + 0x6fb3: b'\x11o\xb3', + 0x6fb4: b'\x11o\xb4', + 0x6fb5: b'\x11o\xb5', + 0x6fb6: b'\x11o\xb6', + 0x6fb7: b'\x11o\xb7', + 0x6fb8: b'\x11o\xb8', + 0x6fb9: b'\x11o\xb9', + 0x6fba: b'\x11o\xba', + 0x6fbb: b'\x11o\xbb', + 0x6fbc: b'\x11o\xbc', + 0x6fbd: b'\x11o\xbd', + 0x6fbe: b'\x11o\xbe', + 0x6fbf: b'\x11o\xbf', + 0x6fc0: b'\x11o\xc0', + 0x6fc1: b'\x11o\xc1', + 0x6fc2: b'\x11o\xc2', + 0x6fc3: b'\x11o\xc3', + 0x6fc4: b'\x11o\xc4', + 0x6fc5: b'\x11o\xc5', + 0x6fc6: b'\x11o\xc6', + 0x6fc7: b'\x11o\xc7', + 0x6fc8: b'\x11o\xc8', + 0x6fc9: b'\x11o\xc9', + 0x6fca: b'\x11o\xca', + 0x6fcb: b'\x11o\xcb', + 0x6fcc: b'\x11o\xcc', + 0x6fcd: b'\x11o\xcd', + 0x6fce: b'\x11o\xce', + 0x6fcf: b'\x11o\xcf', + 0x6fd0: b'\x11o\xd0', + 0x6fd1: b'\x11o\xd1', + 0x6fd2: b'\x11o\xd2', + 0x6fd3: b'\x11o\xd3', + 0x6fd4: b'\x11o\xd4', + 0x6fd5: b'\x11o\xd5', + 0x6fd6: b'\x11o\xd6', + 0x6fd7: b'\x11o\xd7', + 0x6fd8: b'\x11o\xd8', + 0x6fd9: b'\x11o\xd9', + 0x6fda: b'\x11o\xda', + 0x6fdb: b'\x11o\xdb', + 0x6fdc: b'\x11o\xdc', + 0x6fdd: b'\x11o\xdd', + 0x6fde: b'\x11o\xde', + 0x6fdf: b'\x11o\xdf', + 0x6fe0: b'\x11o\xe0', + 0x6fe1: b'\x11o\xe1', + 0x6fe2: b'\x11o\xe2', + 0x6fe3: b'\x11o\xe3', + 0x6fe4: b'\x11o\xe4', + 0x6fe5: b'\x11o\xe5', + 0x6fe6: b'\x11o\xe6', + 0x6fe7: b'\x11o\xe7', + 0x6fe8: b'\x11o\xe8', + 0x6fe9: b'\x11o\xe9', + 0x6fea: b'\x11o\xea', + 0x6feb: b'\x11o\xeb', + 0x6fec: b'\x11o\xec', + 0x6fed: b'\x11o\xed', + 0x6fee: b'\x11o\xee', + 0x6fef: b'\x11o\xef', + 0x6ff0: b'\x11o\xf0', + 0x6ff1: b'\x11o\xf1', + 0x6ff2: b'\x11o\xf2', + 0x6ff3: b'\x11o\xf3', + 0x6ff4: b'\x11o\xf4', + 0x6ff5: b'\x11o\xf5', + 0x6ff6: b'\x11o\xf6', + 0x6ff7: b'\x11o\xf7', + 0x6ff8: b'\x11o\xf8', + 0x6ff9: b'\x11o\xf9', + 0x6ffa: b'\x11o\xfa', + 0x6ffb: b'\x11o\xfb', + 0x6ffc: b'\x11o\xfc', + 0x6ffd: b'\x11o\xfd', + 0x6ffe: b'\x11o\xfe', + 0x6fff: b'\x11o\xff', + 0x7000: b'\x11p\x00', + 0x7001: b'\x11p\x01', + 0x7002: b'\x11p\x02', + 0x7003: b'\x11p\x03', + 0x7004: b'\x11p\x04', + 0x7005: b'\x11p\x05', + 0x7006: b'\x11p\x06', + 0x7007: b'\x11p\x07', + 0x7008: b'\x11p\x08', + 0x7009: b'\x11p\t', + 0x700a: b'\x11p\n', + 0x700b: b'\x11p\x0b', + 0x700c: b'\x11p\x0c', + 0x700d: b'\x11p\r', + 0x700e: b'\x11p\x0e', + 0x700f: b'\x11p\x0f', + 0x7010: b'\x11p\x10', + 0x7011: b'\x11p\x11', + 0x7012: b'\x11p\x12', + 0x7013: b'\x11p\x13', + 0x7014: b'\x11p\x14', + 0x7015: b'\x11p\x15', + 0x7016: b'\x11p\x16', + 0x7017: b'\x11p\x17', + 0x7018: b'\x11p\x18', + 0x7019: b'\x11p\x19', + 0x701a: b'\x11p\x1a', + 0x701b: b'\x11p\x1b', + 0x701c: b'\x11p\x1c', + 0x701d: b'\x11p\x1d', + 0x701e: b'\x11p\x1e', + 0x701f: b'\x11p\x1f', + 0x7020: b'\x11p ', + 0x7021: b'\x11p!', + 0x7022: b'\x11p"', + 0x7023: b'\x11p#', + 0x7024: b'\x11p$', + 0x7025: b'\x11p%', + 0x7026: b'\x11p&', + 0x7027: b"\x11p'", + 0x7028: b'\x11p(', + 0x7029: b'\x11p)', + 0x702a: b'\x11p*', + 0x702b: b'\x11p+', + 0x702c: b'\x11p,', + 0x702d: b'\x11p-', + 0x702e: b'\x11p.', + 0x702f: b'\x11p/', + 0x7030: b'\x11p0', + 0x7031: b'\x11p1', + 0x7032: b'\x11p2', + 0x7033: b'\x11p3', + 0x7034: b'\x11p4', + 0x7035: b'\x11p5', + 0x7036: b'\x11p6', + 0x7037: b'\x11p7', + 0x7038: b'\x11p8', + 0x7039: b'\x11p9', + 0x703a: b'\x11p:', + 0x703b: b'\x11p;', + 0x703c: b'\x11p<', + 0x703d: b'\x11p=', + 0x703e: b'\x11p>', + 0x703f: b'\x11p?', + 0x7040: b'\x11p@', + 0x7041: b'\x11pA', + 0x7042: b'\x11pB', + 0x7043: b'\x11pC', + 0x7044: b'\x11pD', + 0x7045: b'\x11pE', + 0x7046: b'\x11pF', + 0x7047: b'\x11pG', + 0x7048: b'\x11pH', + 0x7049: b'\x11pI', + 0x704a: b'\x11pJ', + 0x704b: b'\x11pK', + 0x704c: b'\x11pL', + 0x704d: b'\x11pM', + 0x704e: b'\x11pN', + 0x704f: b'\x11pO', + 0x7050: b'\x11pP', + 0x7051: b'\x11pQ', + 0x7052: b'\x11pR', + 0x7053: b'\x11pS', + 0x7054: b'\x11pT', + 0x7055: b'\x11pU', + 0x7056: b'\x11pV', + 0x7057: b'\x11pW', + 0x7058: b'\x11pX', + 0x7059: b'\x11pY', + 0x705a: b'\x11pZ', + 0x705b: b'\x11p[', + 0x705c: b'\x11p\\', + 0x705d: b'\x11p]', + 0x705e: b'\x11p^', + 0x705f: b'\x11p_', + 0x7060: b'\x11p`', + 0x7061: b'\x11pa', + 0x7062: b'\x11pb', + 0x7063: b'\x11pc', + 0x7064: b'\x11pd', + 0x7065: b'\x11pe', + 0x7066: b'\x11pf', + 0x7067: b'\x11pg', + 0x7068: b'\x11ph', + 0x7069: b'\x11pi', + 0x706a: b'\x11pj', + 0x706b: b'\x11pk', + 0x706c: b'\x11pl', + 0x706d: b'\x11pm', + 0x706e: b'\x11pn', + 0x706f: b'\x11po', + 0x7070: b'\x11pp', + 0x7071: b'\x11pq', + 0x7072: b'\x11pr', + 0x7073: b'\x11ps', + 0x7074: b'\x11pt', + 0x7075: b'\x11pu', + 0x7076: b'\x11pv', + 0x7077: b'\x11pw', + 0x7078: b'\x11px', + 0x7079: b'\x11py', + 0x707a: b'\x11pz', + 0x707b: b'\x11p{', + 0x707c: b'\x11p|', + 0x707d: b'\x11p}', + 0x707e: b'\x11p~', + 0x707f: b'\x11p\x7f', + 0x7080: b'\x11p\x80', + 0x7081: b'\x11p\x81', + 0x7082: b'\x11p\x82', + 0x7083: b'\x11p\x83', + 0x7084: b'\x11p\x84', + 0x7085: b'\x11p\x85', + 0x7086: b'\x11p\x86', + 0x7087: b'\x11p\x87', + 0x7088: b'\x11p\x88', + 0x7089: b'\x11p\x89', + 0x708a: b'\x11p\x8a', + 0x708b: b'\x11p\x8b', + 0x708c: b'\x11p\x8c', + 0x708d: b'\x11p\x8d', + 0x708e: b'\x11p\x8e', + 0x708f: b'\x11p\x8f', + 0x7090: b'\x11p\x90', + 0x7091: b'\x11p\x91', + 0x7092: b'\x11p\x92', + 0x7093: b'\x11p\x93', + 0x7094: b'\x11p\x94', + 0x7095: b'\x11p\x95', + 0x7096: b'\x11p\x96', + 0x7097: b'\x11p\x97', + 0x7098: b'\x11p\x98', + 0x7099: b'\x11p\x99', + 0x709a: b'\x11p\x9a', + 0x709b: b'\x11p\x9b', + 0x709c: b'\x11p\x9c', + 0x709d: b'\x11p\x9d', + 0x709e: b'\x11p\x9e', + 0x709f: b'\x11p\x9f', + 0x70a0: b'\x11p\xa0', + 0x70a1: b'\x11p\xa1', + 0x70a2: b'\x11p\xa2', + 0x70a3: b'\x11p\xa3', + 0x70a4: b'\x11p\xa4', + 0x70a5: b'\x11p\xa5', + 0x70a6: b'\x11p\xa6', + 0x70a7: b'\x11p\xa7', + 0x70a8: b'\x11p\xa8', + 0x70a9: b'\x11p\xa9', + 0x70aa: b'\x11p\xaa', + 0x70ab: b'\x11p\xab', + 0x70ac: b'\x11p\xac', + 0x70ad: b'\x11p\xad', + 0x70ae: b'\x11p\xae', + 0x70af: b'\x11p\xaf', + 0x70b0: b'\x11p\xb0', + 0x70b1: b'\x11p\xb1', + 0x70b2: b'\x11p\xb2', + 0x70b3: b'\x11p\xb3', + 0x70b4: b'\x11p\xb4', + 0x70b5: b'\x11p\xb5', + 0x70b6: b'\x11p\xb6', + 0x70b7: b'\x11p\xb7', + 0x70b8: b'\x11p\xb8', + 0x70b9: b'\x11p\xb9', + 0x70ba: b'\x11p\xba', + 0x70bb: b'\x11p\xbb', + 0x70bc: b'\x11p\xbc', + 0x70bd: b'\x11p\xbd', + 0x70be: b'\x11p\xbe', + 0x70bf: b'\x11p\xbf', + 0x70c0: b'\x11p\xc0', + 0x70c1: b'\x11p\xc1', + 0x70c2: b'\x11p\xc2', + 0x70c3: b'\x11p\xc3', + 0x70c4: b'\x11p\xc4', + 0x70c5: b'\x11p\xc5', + 0x70c6: b'\x11p\xc6', + 0x70c7: b'\x11p\xc7', + 0x70c8: b'\x11p\xc8', + 0x70c9: b'\x11p\xc9', + 0x70ca: b'\x11p\xca', + 0x70cb: b'\x11p\xcb', + 0x70cc: b'\x11p\xcc', + 0x70cd: b'\x11p\xcd', + 0x70ce: b'\x11p\xce', + 0x70cf: b'\x11p\xcf', + 0x70d0: b'\x11p\xd0', + 0x70d1: b'\x11p\xd1', + 0x70d2: b'\x11p\xd2', + 0x70d3: b'\x11p\xd3', + 0x70d4: b'\x11p\xd4', + 0x70d5: b'\x11p\xd5', + 0x70d6: b'\x11p\xd6', + 0x70d7: b'\x11p\xd7', + 0x70d8: b'\x11p\xd8', + 0x70d9: b'\x11p\xd9', + 0x70da: b'\x11p\xda', + 0x70db: b'\x11p\xdb', + 0x70dc: b'\x11p\xdc', + 0x70dd: b'\x11p\xdd', + 0x70de: b'\x11p\xde', + 0x70df: b'\x11p\xdf', + 0x70e0: b'\x11p\xe0', + 0x70e1: b'\x11p\xe1', + 0x70e2: b'\x11p\xe2', + 0x70e3: b'\x11p\xe3', + 0x70e4: b'\x11p\xe4', + 0x70e5: b'\x11p\xe5', + 0x70e6: b'\x11p\xe6', + 0x70e7: b'\x11p\xe7', + 0x70e8: b'\x11p\xe8', + 0x70e9: b'\x11p\xe9', + 0x70ea: b'\x11p\xea', + 0x70eb: b'\x11p\xeb', + 0x70ec: b'\x11p\xec', + 0x70ed: b'\x11p\xed', + 0x70ee: b'\x11p\xee', + 0x70ef: b'\x11p\xef', + 0x70f0: b'\x11p\xf0', + 0x70f1: b'\x11p\xf1', + 0x70f2: b'\x11p\xf2', + 0x70f3: b'\x11p\xf3', + 0x70f4: b'\x11p\xf4', + 0x70f5: b'\x11p\xf5', + 0x70f6: b'\x11p\xf6', + 0x70f7: b'\x11p\xf7', + 0x70f8: b'\x11p\xf8', + 0x70f9: b'\x11p\xf9', + 0x70fa: b'\x11p\xfa', + 0x70fb: b'\x11p\xfb', + 0x70fc: b'\x11p\xfc', + 0x70fd: b'\x11p\xfd', + 0x70fe: b'\x11p\xfe', + 0x70ff: b'\x11p\xff', + 0x7100: b'\x11q\x00', + 0x7101: b'\x11q\x01', + 0x7102: b'\x11q\x02', + 0x7103: b'\x11q\x03', + 0x7104: b'\x11q\x04', + 0x7105: b'\x11q\x05', + 0x7106: b'\x11q\x06', + 0x7107: b'\x11q\x07', + 0x7108: b'\x11q\x08', + 0x7109: b'\x11q\t', + 0x710a: b'\x11q\n', + 0x710b: b'\x11q\x0b', + 0x710c: b'\x11q\x0c', + 0x710d: b'\x11q\r', + 0x710e: b'\x11q\x0e', + 0x710f: b'\x11q\x0f', + 0x7110: b'\x11q\x10', + 0x7111: b'\x11q\x11', + 0x7112: b'\x11q\x12', + 0x7113: b'\x11q\x13', + 0x7114: b'\x11q\x14', + 0x7115: b'\x11q\x15', + 0x7116: b'\x11q\x16', + 0x7117: b'\x11q\x17', + 0x7118: b'\x11q\x18', + 0x7119: b'\x11q\x19', + 0x711a: b'\x11q\x1a', + 0x711b: b'\x11q\x1b', + 0x711c: b'\x11q\x1c', + 0x711d: b'\x11q\x1d', + 0x711e: b'\x11q\x1e', + 0x711f: b'\x11q\x1f', + 0x7120: b'\x11q ', + 0x7121: b'\x11q!', + 0x7122: b'\x11q"', + 0x7123: b'\x11q#', + 0x7124: b'\x11q$', + 0x7125: b'\x11q%', + 0x7126: b'\x11q&', + 0x7127: b"\x11q'", + 0x7128: b'\x11q(', + 0x7129: b'\x11q)', + 0x712a: b'\x11q*', + 0x712b: b'\x11q+', + 0x712c: b'\x11q,', + 0x712d: b'\x11q-', + 0x712e: b'\x11q.', + 0x712f: b'\x11q/', + 0x7130: b'\x11q0', + 0x7131: b'\x11q1', + 0x7132: b'\x11q2', + 0x7133: b'\x11q3', + 0x7134: b'\x11q4', + 0x7135: b'\x11q5', + 0x7136: b'\x11q6', + 0x7137: b'\x11q7', + 0x7138: b'\x11q8', + 0x7139: b'\x11q9', + 0x713a: b'\x11q:', + 0x713b: b'\x11q;', + 0x713c: b'\x11q<', + 0x713d: b'\x11q=', + 0x713e: b'\x11q>', + 0x713f: b'\x11q?', + 0x7140: b'\x11q@', + 0x7141: b'\x11qA', + 0x7142: b'\x11qB', + 0x7143: b'\x11qC', + 0x7144: b'\x11qD', + 0x7145: b'\x11qE', + 0x7146: b'\x11qF', + 0x7147: b'\x11qG', + 0x7148: b'\x11qH', + 0x7149: b'\x11qI', + 0x714a: b'\x11qJ', + 0x714b: b'\x11qK', + 0x714c: b'\x11qL', + 0x714d: b'\x11qM', + 0x714e: b'\x11qN', + 0x714f: b'\x11qO', + 0x7150: b'\x11qP', + 0x7151: b'\x11qQ', + 0x7152: b'\x11qR', + 0x7153: b'\x11qS', + 0x7154: b'\x11qT', + 0x7155: b'\x11qU', + 0x7156: b'\x11qV', + 0x7157: b'\x11qW', + 0x7158: b'\x11qX', + 0x7159: b'\x11qY', + 0x715a: b'\x11qZ', + 0x715b: b'\x11q[', + 0x715c: b'\x11q\\', + 0x715d: b'\x11q]', + 0x715e: b'\x11q^', + 0x715f: b'\x11q_', + 0x7160: b'\x11q`', + 0x7161: b'\x11qa', + 0x7162: b'\x11qb', + 0x7163: b'\x11qc', + 0x7164: b'\x11qd', + 0x7165: b'\x11qe', + 0x7166: b'\x11qf', + 0x7167: b'\x11qg', + 0x7168: b'\x11qh', + 0x7169: b'\x11qi', + 0x716a: b'\x11qj', + 0x716b: b'\x11qk', + 0x716c: b'\x11ql', + 0x716d: b'\x11qm', + 0x716e: b'\x11qn', + 0x716f: b'\x11qo', + 0x7170: b'\x11qp', + 0x7171: b'\x11qq', + 0x7172: b'\x11qr', + 0x7173: b'\x11qs', + 0x7174: b'\x11qt', + 0x7175: b'\x11qu', + 0x7176: b'\x11qv', + 0x7177: b'\x11qw', + 0x7178: b'\x11qx', + 0x7179: b'\x11qy', + 0x717a: b'\x11qz', + 0x717b: b'\x11q{', + 0x717c: b'\x11q|', + 0x717d: b'\x11q}', + 0x717e: b'\x11q~', + 0x717f: b'\x11q\x7f', + 0x7180: b'\x11q\x80', + 0x7181: b'\x11q\x81', + 0x7182: b'\x11q\x82', + 0x7183: b'\x11q\x83', + 0x7184: b'\x11q\x84', + 0x7185: b'\x11q\x85', + 0x7186: b'\x11q\x86', + 0x7187: b'\x11q\x87', + 0x7188: b'\x11q\x88', + 0x7189: b'\x11q\x89', + 0x718a: b'\x11q\x8a', + 0x718b: b'\x11q\x8b', + 0x718c: b'\x11q\x8c', + 0x718d: b'\x11q\x8d', + 0x718e: b'\x11q\x8e', + 0x718f: b'\x11q\x8f', + 0x7190: b'\x11q\x90', + 0x7191: b'\x11q\x91', + 0x7192: b'\x11q\x92', + 0x7193: b'\x11q\x93', + 0x7194: b'\x11q\x94', + 0x7195: b'\x11q\x95', + 0x7196: b'\x11q\x96', + 0x7197: b'\x11q\x97', + 0x7198: b'\x11q\x98', + 0x7199: b'\x11q\x99', + 0x719a: b'\x11q\x9a', + 0x719b: b'\x11q\x9b', + 0x719c: b'\x11q\x9c', + 0x719d: b'\x11q\x9d', + 0x719e: b'\x11q\x9e', + 0x719f: b'\x11q\x9f', + 0x71a0: b'\x11q\xa0', + 0x71a1: b'\x11q\xa1', + 0x71a2: b'\x11q\xa2', + 0x71a3: b'\x11q\xa3', + 0x71a4: b'\x11q\xa4', + 0x71a5: b'\x11q\xa5', + 0x71a6: b'\x11q\xa6', + 0x71a7: b'\x11q\xa7', + 0x71a8: b'\x11q\xa8', + 0x71a9: b'\x11q\xa9', + 0x71aa: b'\x11q\xaa', + 0x71ab: b'\x11q\xab', + 0x71ac: b'\x11q\xac', + 0x71ad: b'\x11q\xad', + 0x71ae: b'\x11q\xae', + 0x71af: b'\x11q\xaf', + 0x71b0: b'\x11q\xb0', + 0x71b1: b'\x11q\xb1', + 0x71b2: b'\x11q\xb2', + 0x71b3: b'\x11q\xb3', + 0x71b4: b'\x11q\xb4', + 0x71b5: b'\x11q\xb5', + 0x71b6: b'\x11q\xb6', + 0x71b7: b'\x11q\xb7', + 0x71b8: b'\x11q\xb8', + 0x71b9: b'\x11q\xb9', + 0x71ba: b'\x11q\xba', + 0x71bb: b'\x11q\xbb', + 0x71bc: b'\x11q\xbc', + 0x71bd: b'\x11q\xbd', + 0x71be: b'\x11q\xbe', + 0x71bf: b'\x11q\xbf', + 0x71c0: b'\x11q\xc0', + 0x71c1: b'\x11q\xc1', + 0x71c2: b'\x11q\xc2', + 0x71c3: b'\x11q\xc3', + 0x71c4: b'\x11q\xc4', + 0x71c5: b'\x11q\xc5', + 0x71c6: b'\x11q\xc6', + 0x71c7: b'\x11q\xc7', + 0x71c8: b'\x11q\xc8', + 0x71c9: b'\x11q\xc9', + 0x71ca: b'\x11q\xca', + 0x71cb: b'\x11q\xcb', + 0x71cc: b'\x11q\xcc', + 0x71cd: b'\x11q\xcd', + 0x71ce: b'\x11q\xce', + 0x71cf: b'\x11q\xcf', + 0x71d0: b'\x11q\xd0', + 0x71d1: b'\x11q\xd1', + 0x71d2: b'\x11q\xd2', + 0x71d3: b'\x11q\xd3', + 0x71d4: b'\x11q\xd4', + 0x71d5: b'\x11q\xd5', + 0x71d6: b'\x11q\xd6', + 0x71d7: b'\x11q\xd7', + 0x71d8: b'\x11q\xd8', + 0x71d9: b'\x11q\xd9', + 0x71da: b'\x11q\xda', + 0x71db: b'\x11q\xdb', + 0x71dc: b'\x11q\xdc', + 0x71dd: b'\x11q\xdd', + 0x71de: b'\x11q\xde', + 0x71df: b'\x11q\xdf', + 0x71e0: b'\x11q\xe0', + 0x71e1: b'\x11q\xe1', + 0x71e2: b'\x11q\xe2', + 0x71e3: b'\x11q\xe3', + 0x71e4: b'\x11q\xe4', + 0x71e5: b'\x11q\xe5', + 0x71e6: b'\x11q\xe6', + 0x71e7: b'\x11q\xe7', + 0x71e8: b'\x11q\xe8', + 0x71e9: b'\x11q\xe9', + 0x71ea: b'\x11q\xea', + 0x71eb: b'\x11q\xeb', + 0x71ec: b'\x11q\xec', + 0x71ed: b'\x11q\xed', + 0x71ee: b'\x11q\xee', + 0x71ef: b'\x11q\xef', + 0x71f0: b'\x11q\xf0', + 0x71f1: b'\x11q\xf1', + 0x71f2: b'\x11q\xf2', + 0x71f3: b'\x11q\xf3', + 0x71f4: b'\x11q\xf4', + 0x71f5: b'\x11q\xf5', + 0x71f6: b'\x11q\xf6', + 0x71f7: b'\x11q\xf7', + 0x71f8: b'\x11q\xf8', + 0x71f9: b'\x11q\xf9', + 0x71fa: b'\x11q\xfa', + 0x71fb: b'\x11q\xfb', + 0x71fc: b'\x11q\xfc', + 0x71fd: b'\x11q\xfd', + 0x71fe: b'\x11q\xfe', + 0x71ff: b'\x11q\xff', + 0x7200: b'\x11r\x00', + 0x7201: b'\x11r\x01', + 0x7202: b'\x11r\x02', + 0x7203: b'\x11r\x03', + 0x7204: b'\x11r\x04', + 0x7205: b'\x11r\x05', + 0x7206: b'\x11r\x06', + 0x7207: b'\x11r\x07', + 0x7208: b'\x11r\x08', + 0x7209: b'\x11r\t', + 0x720a: b'\x11r\n', + 0x720b: b'\x11r\x0b', + 0x720c: b'\x11r\x0c', + 0x720d: b'\x11r\r', + 0x720e: b'\x11r\x0e', + 0x720f: b'\x11r\x0f', + 0x7210: b'\x11r\x10', + 0x7211: b'\x11r\x11', + 0x7212: b'\x11r\x12', + 0x7213: b'\x11r\x13', + 0x7214: b'\x11r\x14', + 0x7215: b'\x11r\x15', + 0x7216: b'\x11r\x16', + 0x7217: b'\x11r\x17', + 0x7218: b'\x11r\x18', + 0x7219: b'\x11r\x19', + 0x721a: b'\x11r\x1a', + 0x721b: b'\x11r\x1b', + 0x721c: b'\x11r\x1c', + 0x721d: b'\x11r\x1d', + 0x721e: b'\x11r\x1e', + 0x721f: b'\x11r\x1f', + 0x7220: b'\x11r ', + 0x7221: b'\x11r!', + 0x7222: b'\x11r"', + 0x7223: b'\x11r#', + 0x7224: b'\x11r$', + 0x7225: b'\x11r%', + 0x7226: b'\x11r&', + 0x7227: b"\x11r'", + 0x7228: b'\x11r(', + 0x7229: b'\x11r)', + 0x722a: b'\x11r*', + 0x722b: b'\x11r+', + 0x722c: b'\x11r,', + 0x722d: b'\x11r-', + 0x722e: b'\x11r.', + 0x722f: b'\x11r/', + 0x7230: b'\x11r0', + 0x7231: b'\x11r1', + 0x7232: b'\x11r2', + 0x7233: b'\x11r3', + 0x7234: b'\x11r4', + 0x7235: b'\x11r5', + 0x7236: b'\x11r6', + 0x7237: b'\x11r7', + 0x7238: b'\x11r8', + 0x7239: b'\x11r9', + 0x723a: b'\x11r:', + 0x723b: b'\x11r;', + 0x723c: b'\x11r<', + 0x723d: b'\x11r=', + 0x723e: b'\x11r>', + 0x723f: b'\x11r?', + 0x7240: b'\x11r@', + 0x7241: b'\x11rA', + 0x7242: b'\x11rB', + 0x7243: b'\x11rC', + 0x7244: b'\x11rD', + 0x7245: b'\x11rE', + 0x7246: b'\x11rF', + 0x7247: b'\x11rG', + 0x7248: b'\x11rH', + 0x7249: b'\x11rI', + 0x724a: b'\x11rJ', + 0x724b: b'\x11rK', + 0x724c: b'\x11rL', + 0x724d: b'\x11rM', + 0x724e: b'\x11rN', + 0x724f: b'\x11rO', + 0x7250: b'\x11rP', + 0x7251: b'\x11rQ', + 0x7252: b'\x11rR', + 0x7253: b'\x11rS', + 0x7254: b'\x11rT', + 0x7255: b'\x11rU', + 0x7256: b'\x11rV', + 0x7257: b'\x11rW', + 0x7258: b'\x11rX', + 0x7259: b'\x11rY', + 0x725a: b'\x11rZ', + 0x725b: b'\x11r[', + 0x725c: b'\x11r\\', + 0x725d: b'\x11r]', + 0x725e: b'\x11r^', + 0x725f: b'\x11r_', + 0x7260: b'\x11r`', + 0x7261: b'\x11ra', + 0x7262: b'\x11rb', + 0x7263: b'\x11rc', + 0x7264: b'\x11rd', + 0x7265: b'\x11re', + 0x7266: b'\x11rf', + 0x7267: b'\x11rg', + 0x7268: b'\x11rh', + 0x7269: b'\x11ri', + 0x726a: b'\x11rj', + 0x726b: b'\x11rk', + 0x726c: b'\x11rl', + 0x726d: b'\x11rm', + 0x726e: b'\x11rn', + 0x726f: b'\x11ro', + 0x7270: b'\x11rp', + 0x7271: b'\x11rq', + 0x7272: b'\x11rr', + 0x7273: b'\x11rs', + 0x7274: b'\x11rt', + 0x7275: b'\x11ru', + 0x7276: b'\x11rv', + 0x7277: b'\x11rw', + 0x7278: b'\x11rx', + 0x7279: b'\x11ry', + 0x727a: b'\x11rz', + 0x727b: b'\x11r{', + 0x727c: b'\x11r|', + 0x727d: b'\x11r}', + 0x727e: b'\x11r~', + 0x727f: b'\x11r\x7f', + 0x7280: b'\x11r\x80', + 0x7281: b'\x11r\x81', + 0x7282: b'\x11r\x82', + 0x7283: b'\x11r\x83', + 0x7284: b'\x11r\x84', + 0x7285: b'\x11r\x85', + 0x7286: b'\x11r\x86', + 0x7287: b'\x11r\x87', + 0x7288: b'\x11r\x88', + 0x7289: b'\x11r\x89', + 0x728a: b'\x11r\x8a', + 0x728b: b'\x11r\x8b', + 0x728c: b'\x11r\x8c', + 0x728d: b'\x11r\x8d', + 0x728e: b'\x11r\x8e', + 0x728f: b'\x11r\x8f', + 0x7290: b'\x11r\x90', + 0x7291: b'\x11r\x91', + 0x7292: b'\x11r\x92', + 0x7293: b'\x11r\x93', + 0x7294: b'\x11r\x94', + 0x7295: b'\x11r\x95', + 0x7296: b'\x11r\x96', + 0x7297: b'\x11r\x97', + 0x7298: b'\x11r\x98', + 0x7299: b'\x11r\x99', + 0x729a: b'\x11r\x9a', + 0x729b: b'\x11r\x9b', + 0x729c: b'\x11r\x9c', + 0x729d: b'\x11r\x9d', + 0x729e: b'\x11r\x9e', + 0x729f: b'\x11r\x9f', + 0x72a0: b'\x11r\xa0', + 0x72a1: b'\x11r\xa1', + 0x72a2: b'\x11r\xa2', + 0x72a3: b'\x11r\xa3', + 0x72a4: b'\x11r\xa4', + 0x72a5: b'\x11r\xa5', + 0x72a6: b'\x11r\xa6', + 0x72a7: b'\x11r\xa7', + 0x72a8: b'\x11r\xa8', + 0x72a9: b'\x11r\xa9', + 0x72aa: b'\x11r\xaa', + 0x72ab: b'\x11r\xab', + 0x72ac: b'\x11r\xac', + 0x72ad: b'\x11r\xad', + 0x72ae: b'\x11r\xae', + 0x72af: b'\x11r\xaf', + 0x72b0: b'\x11r\xb0', + 0x72b1: b'\x11r\xb1', + 0x72b2: b'\x11r\xb2', + 0x72b3: b'\x11r\xb3', + 0x72b4: b'\x11r\xb4', + 0x72b5: b'\x11r\xb5', + 0x72b6: b'\x11r\xb6', + 0x72b7: b'\x11r\xb7', + 0x72b8: b'\x11r\xb8', + 0x72b9: b'\x11r\xb9', + 0x72ba: b'\x11r\xba', + 0x72bb: b'\x11r\xbb', + 0x72bc: b'\x11r\xbc', + 0x72bd: b'\x11r\xbd', + 0x72be: b'\x11r\xbe', + 0x72bf: b'\x11r\xbf', + 0x72c0: b'\x11r\xc0', + 0x72c1: b'\x11r\xc1', + 0x72c2: b'\x11r\xc2', + 0x72c3: b'\x11r\xc3', + 0x72c4: b'\x11r\xc4', + 0x72c5: b'\x11r\xc5', + 0x72c6: b'\x11r\xc6', + 0x72c7: b'\x11r\xc7', + 0x72c8: b'\x11r\xc8', + 0x72c9: b'\x11r\xc9', + 0x72ca: b'\x11r\xca', + 0x72cb: b'\x11r\xcb', + 0x72cc: b'\x11r\xcc', + 0x72cd: b'\x11r\xcd', + 0x72ce: b'\x11r\xce', + 0x72cf: b'\x11r\xcf', + 0x72d0: b'\x11r\xd0', + 0x72d1: b'\x11r\xd1', + 0x72d2: b'\x11r\xd2', + 0x72d3: b'\x11r\xd3', + 0x72d4: b'\x11r\xd4', + 0x72d5: b'\x11r\xd5', + 0x72d6: b'\x11r\xd6', + 0x72d7: b'\x11r\xd7', + 0x72d8: b'\x11r\xd8', + 0x72d9: b'\x11r\xd9', + 0x72da: b'\x11r\xda', + 0x72db: b'\x11r\xdb', + 0x72dc: b'\x11r\xdc', + 0x72dd: b'\x11r\xdd', + 0x72de: b'\x11r\xde', + 0x72df: b'\x11r\xdf', + 0x72e0: b'\x11r\xe0', + 0x72e1: b'\x11r\xe1', + 0x72e2: b'\x11r\xe2', + 0x72e3: b'\x11r\xe3', + 0x72e4: b'\x11r\xe4', + 0x72e5: b'\x11r\xe5', + 0x72e6: b'\x11r\xe6', + 0x72e7: b'\x11r\xe7', + 0x72e8: b'\x11r\xe8', + 0x72e9: b'\x11r\xe9', + 0x72ea: b'\x11r\xea', + 0x72eb: b'\x11r\xeb', + 0x72ec: b'\x11r\xec', + 0x72ed: b'\x11r\xed', + 0x72ee: b'\x11r\xee', + 0x72ef: b'\x11r\xef', + 0x72f0: b'\x11r\xf0', + 0x72f1: b'\x11r\xf1', + 0x72f2: b'\x11r\xf2', + 0x72f3: b'\x11r\xf3', + 0x72f4: b'\x11r\xf4', + 0x72f5: b'\x11r\xf5', + 0x72f6: b'\x11r\xf6', + 0x72f7: b'\x11r\xf7', + 0x72f8: b'\x11r\xf8', + 0x72f9: b'\x11r\xf9', + 0x72fa: b'\x11r\xfa', + 0x72fb: b'\x11r\xfb', + 0x72fc: b'\x11r\xfc', + 0x72fd: b'\x11r\xfd', + 0x72fe: b'\x11r\xfe', + 0x72ff: b'\x11r\xff', + 0x7300: b'\x11s\x00', + 0x7301: b'\x11s\x01', + 0x7302: b'\x11s\x02', + 0x7303: b'\x11s\x03', + 0x7304: b'\x11s\x04', + 0x7305: b'\x11s\x05', + 0x7306: b'\x11s\x06', + 0x7307: b'\x11s\x07', + 0x7308: b'\x11s\x08', + 0x7309: b'\x11s\t', + 0x730a: b'\x11s\n', + 0x730b: b'\x11s\x0b', + 0x730c: b'\x11s\x0c', + 0x730d: b'\x11s\r', + 0x730e: b'\x11s\x0e', + 0x730f: b'\x11s\x0f', + 0x7310: b'\x11s\x10', + 0x7311: b'\x11s\x11', + 0x7312: b'\x11s\x12', + 0x7313: b'\x11s\x13', + 0x7314: b'\x11s\x14', + 0x7315: b'\x11s\x15', + 0x7316: b'\x11s\x16', + 0x7317: b'\x11s\x17', + 0x7318: b'\x11s\x18', + 0x7319: b'\x11s\x19', + 0x731a: b'\x11s\x1a', + 0x731b: b'\x11s\x1b', + 0x731c: b'\x11s\x1c', + 0x731d: b'\x11s\x1d', + 0x731e: b'\x11s\x1e', + 0x731f: b'\x11s\x1f', + 0x7320: b'\x11s ', + 0x7321: b'\x11s!', + 0x7322: b'\x11s"', + 0x7323: b'\x11s#', + 0x7324: b'\x11s$', + 0x7325: b'\x11s%', + 0x7326: b'\x11s&', + 0x7327: b"\x11s'", + 0x7328: b'\x11s(', + 0x7329: b'\x11s)', + 0x732a: b'\x11s*', + 0x732b: b'\x11s+', + 0x732c: b'\x11s,', + 0x732d: b'\x11s-', + 0x732e: b'\x11s.', + 0x732f: b'\x11s/', + 0x7330: b'\x11s0', + 0x7331: b'\x11s1', + 0x7332: b'\x11s2', + 0x7333: b'\x11s3', + 0x7334: b'\x11s4', + 0x7335: b'\x11s5', + 0x7336: b'\x11s6', + 0x7337: b'\x11s7', + 0x7338: b'\x11s8', + 0x7339: b'\x11s9', + 0x733a: b'\x11s:', + 0x733b: b'\x11s;', + 0x733c: b'\x11s<', + 0x733d: b'\x11s=', + 0x733e: b'\x11s>', + 0x733f: b'\x11s?', + 0x7340: b'\x11s@', + 0x7341: b'\x11sA', + 0x7342: b'\x11sB', + 0x7343: b'\x11sC', + 0x7344: b'\x11sD', + 0x7345: b'\x11sE', + 0x7346: b'\x11sF', + 0x7347: b'\x11sG', + 0x7348: b'\x11sH', + 0x7349: b'\x11sI', + 0x734a: b'\x11sJ', + 0x734b: b'\x11sK', + 0x734c: b'\x11sL', + 0x734d: b'\x11sM', + 0x734e: b'\x11sN', + 0x734f: b'\x11sO', + 0x7350: b'\x11sP', + 0x7351: b'\x11sQ', + 0x7352: b'\x11sR', + 0x7353: b'\x11sS', + 0x7354: b'\x11sT', + 0x7355: b'\x11sU', + 0x7356: b'\x11sV', + 0x7357: b'\x11sW', + 0x7358: b'\x11sX', + 0x7359: b'\x11sY', + 0x735a: b'\x11sZ', + 0x735b: b'\x11s[', + 0x735c: b'\x11s\\', + 0x735d: b'\x11s]', + 0x735e: b'\x11s^', + 0x735f: b'\x11s_', + 0x7360: b'\x11s`', + 0x7361: b'\x11sa', + 0x7362: b'\x11sb', + 0x7363: b'\x11sc', + 0x7364: b'\x11sd', + 0x7365: b'\x11se', + 0x7366: b'\x11sf', + 0x7367: b'\x11sg', + 0x7368: b'\x11sh', + 0x7369: b'\x11si', + 0x736a: b'\x11sj', + 0x736b: b'\x11sk', + 0x736c: b'\x11sl', + 0x736d: b'\x11sm', + 0x736e: b'\x11sn', + 0x736f: b'\x11so', + 0x7370: b'\x11sp', + 0x7371: b'\x11sq', + 0x7372: b'\x11sr', + 0x7373: b'\x11ss', + 0x7374: b'\x11st', + 0x7375: b'\x11su', + 0x7376: b'\x11sv', + 0x7377: b'\x11sw', + 0x7378: b'\x11sx', + 0x7379: b'\x11sy', + 0x737a: b'\x11sz', + 0x737b: b'\x11s{', + 0x737c: b'\x11s|', + 0x737d: b'\x11s}', + 0x737e: b'\x11s~', + 0x737f: b'\x11s\x7f', + 0x7380: b'\x11s\x80', + 0x7381: b'\x11s\x81', + 0x7382: b'\x11s\x82', + 0x7383: b'\x11s\x83', + 0x7384: b'\x11s\x84', + 0x7385: b'\x11s\x85', + 0x7386: b'\x11s\x86', + 0x7387: b'\x11s\x87', + 0x7388: b'\x11s\x88', + 0x7389: b'\x11s\x89', + 0x738a: b'\x11s\x8a', + 0x738b: b'\x11s\x8b', + 0x738c: b'\x11s\x8c', + 0x738d: b'\x11s\x8d', + 0x738e: b'\x11s\x8e', + 0x738f: b'\x11s\x8f', + 0x7390: b'\x11s\x90', + 0x7391: b'\x11s\x91', + 0x7392: b'\x11s\x92', + 0x7393: b'\x11s\x93', + 0x7394: b'\x11s\x94', + 0x7395: b'\x11s\x95', + 0x7396: b'\x11s\x96', + 0x7397: b'\x11s\x97', + 0x7398: b'\x11s\x98', + 0x7399: b'\x11s\x99', + 0x739a: b'\x11s\x9a', + 0x739b: b'\x11s\x9b', + 0x739c: b'\x11s\x9c', + 0x739d: b'\x11s\x9d', + 0x739e: b'\x11s\x9e', + 0x739f: b'\x11s\x9f', + 0x73a0: b'\x11s\xa0', + 0x73a1: b'\x11s\xa1', + 0x73a2: b'\x11s\xa2', + 0x73a3: b'\x11s\xa3', + 0x73a4: b'\x11s\xa4', + 0x73a5: b'\x11s\xa5', + 0x73a6: b'\x11s\xa6', + 0x73a7: b'\x11s\xa7', + 0x73a8: b'\x11s\xa8', + 0x73a9: b'\x11s\xa9', + 0x73aa: b'\x11s\xaa', + 0x73ab: b'\x11s\xab', + 0x73ac: b'\x11s\xac', + 0x73ad: b'\x11s\xad', + 0x73ae: b'\x11s\xae', + 0x73af: b'\x11s\xaf', + 0x73b0: b'\x11s\xb0', + 0x73b1: b'\x11s\xb1', + 0x73b2: b'\x11s\xb2', + 0x73b3: b'\x11s\xb3', + 0x73b4: b'\x11s\xb4', + 0x73b5: b'\x11s\xb5', + 0x73b6: b'\x11s\xb6', + 0x73b7: b'\x11s\xb7', + 0x73b8: b'\x11s\xb8', + 0x73b9: b'\x11s\xb9', + 0x73ba: b'\x11s\xba', + 0x73bb: b'\x11s\xbb', + 0x73bc: b'\x11s\xbc', + 0x73bd: b'\x11s\xbd', + 0x73be: b'\x11s\xbe', + 0x73bf: b'\x11s\xbf', + 0x73c0: b'\x11s\xc0', + 0x73c1: b'\x11s\xc1', + 0x73c2: b'\x11s\xc2', + 0x73c3: b'\x11s\xc3', + 0x73c4: b'\x11s\xc4', + 0x73c5: b'\x11s\xc5', + 0x73c6: b'\x11s\xc6', + 0x73c7: b'\x11s\xc7', + 0x73c8: b'\x11s\xc8', + 0x73c9: b'\x11s\xc9', + 0x73ca: b'\x11s\xca', + 0x73cb: b'\x11s\xcb', + 0x73cc: b'\x11s\xcc', + 0x73cd: b'\x11s\xcd', + 0x73ce: b'\x11s\xce', + 0x73cf: b'\x11s\xcf', + 0x73d0: b'\x11s\xd0', + 0x73d1: b'\x11s\xd1', + 0x73d2: b'\x11s\xd2', + 0x73d3: b'\x11s\xd3', + 0x73d4: b'\x11s\xd4', + 0x73d5: b'\x11s\xd5', + 0x73d6: b'\x11s\xd6', + 0x73d7: b'\x11s\xd7', + 0x73d8: b'\x11s\xd8', + 0x73d9: b'\x11s\xd9', + 0x73da: b'\x11s\xda', + 0x73db: b'\x11s\xdb', + 0x73dc: b'\x11s\xdc', + 0x73dd: b'\x11s\xdd', + 0x73de: b'\x11s\xde', + 0x73df: b'\x11s\xdf', + 0x73e0: b'\x11s\xe0', + 0x73e1: b'\x11s\xe1', + 0x73e2: b'\x11s\xe2', + 0x73e3: b'\x11s\xe3', + 0x73e4: b'\x11s\xe4', + 0x73e5: b'\x11s\xe5', + 0x73e6: b'\x11s\xe6', + 0x73e7: b'\x11s\xe7', + 0x73e8: b'\x11s\xe8', + 0x73e9: b'\x11s\xe9', + 0x73ea: b'\x11s\xea', + 0x73eb: b'\x11s\xeb', + 0x73ec: b'\x11s\xec', + 0x73ed: b'\x11s\xed', + 0x73ee: b'\x11s\xee', + 0x73ef: b'\x11s\xef', + 0x73f0: b'\x11s\xf0', + 0x73f1: b'\x11s\xf1', + 0x73f2: b'\x11s\xf2', + 0x73f3: b'\x11s\xf3', + 0x73f4: b'\x11s\xf4', + 0x73f5: b'\x11s\xf5', + 0x73f6: b'\x11s\xf6', + 0x73f7: b'\x11s\xf7', + 0x73f8: b'\x11s\xf8', + 0x73f9: b'\x11s\xf9', + 0x73fa: b'\x11s\xfa', + 0x73fb: b'\x11s\xfb', + 0x73fc: b'\x11s\xfc', + 0x73fd: b'\x11s\xfd', + 0x73fe: b'\x11s\xfe', + 0x73ff: b'\x11s\xff', + 0x7400: b'\x11t\x00', + 0x7401: b'\x11t\x01', + 0x7402: b'\x11t\x02', + 0x7403: b'\x11t\x03', + 0x7404: b'\x11t\x04', + 0x7405: b'\x11t\x05', + 0x7406: b'\x11t\x06', + 0x7407: b'\x11t\x07', + 0x7408: b'\x11t\x08', + 0x7409: b'\x11t\t', + 0x740a: b'\x11t\n', + 0x740b: b'\x11t\x0b', + 0x740c: b'\x11t\x0c', + 0x740d: b'\x11t\r', + 0x740e: b'\x11t\x0e', + 0x740f: b'\x11t\x0f', + 0x7410: b'\x11t\x10', + 0x7411: b'\x11t\x11', + 0x7412: b'\x11t\x12', + 0x7413: b'\x11t\x13', + 0x7414: b'\x11t\x14', + 0x7415: b'\x11t\x15', + 0x7416: b'\x11t\x16', + 0x7417: b'\x11t\x17', + 0x7418: b'\x11t\x18', + 0x7419: b'\x11t\x19', + 0x741a: b'\x11t\x1a', + 0x741b: b'\x11t\x1b', + 0x741c: b'\x11t\x1c', + 0x741d: b'\x11t\x1d', + 0x741e: b'\x11t\x1e', + 0x741f: b'\x11t\x1f', + 0x7420: b'\x11t ', + 0x7421: b'\x11t!', + 0x7422: b'\x11t"', + 0x7423: b'\x11t#', + 0x7424: b'\x11t$', + 0x7425: b'\x11t%', + 0x7426: b'\x11t&', + 0x7427: b"\x11t'", + 0x7428: b'\x11t(', + 0x7429: b'\x11t)', + 0x742a: b'\x11t*', + 0x742b: b'\x11t+', + 0x742c: b'\x11t,', + 0x742d: b'\x11t-', + 0x742e: b'\x11t.', + 0x742f: b'\x11t/', + 0x7430: b'\x11t0', + 0x7431: b'\x11t1', + 0x7432: b'\x11t2', + 0x7433: b'\x11t3', + 0x7434: b'\x11t4', + 0x7435: b'\x11t5', + 0x7436: b'\x11t6', + 0x7437: b'\x11t7', + 0x7438: b'\x11t8', + 0x7439: b'\x11t9', + 0x743a: b'\x11t:', + 0x743b: b'\x11t;', + 0x743c: b'\x11t<', + 0x743d: b'\x11t=', + 0x743e: b'\x11t>', + 0x743f: b'\x11t?', + 0x7440: b'\x11t@', + 0x7441: b'\x11tA', + 0x7442: b'\x11tB', + 0x7443: b'\x11tC', + 0x7444: b'\x11tD', + 0x7445: b'\x11tE', + 0x7446: b'\x11tF', + 0x7447: b'\x11tG', + 0x7448: b'\x11tH', + 0x7449: b'\x11tI', + 0x744a: b'\x11tJ', + 0x744b: b'\x11tK', + 0x744c: b'\x11tL', + 0x744d: b'\x11tM', + 0x744e: b'\x11tN', + 0x744f: b'\x11tO', + 0x7450: b'\x11tP', + 0x7451: b'\x11tQ', + 0x7452: b'\x11tR', + 0x7453: b'\x11tS', + 0x7454: b'\x11tT', + 0x7455: b'\x11tU', + 0x7456: b'\x11tV', + 0x7457: b'\x11tW', + 0x7458: b'\x11tX', + 0x7459: b'\x11tY', + 0x745a: b'\x11tZ', + 0x745b: b'\x11t[', + 0x745c: b'\x11t\\', + 0x745d: b'\x11t]', + 0x745e: b'\x11t^', + 0x745f: b'\x11t_', + 0x7460: b'\x11t`', + 0x7461: b'\x11ta', + 0x7462: b'\x11tb', + 0x7463: b'\x11tc', + 0x7464: b'\x11td', + 0x7465: b'\x11te', + 0x7466: b'\x11tf', + 0x7467: b'\x11tg', + 0x7468: b'\x11th', + 0x7469: b'\x11ti', + 0x746a: b'\x11tj', + 0x746b: b'\x11tk', + 0x746c: b'\x11tl', + 0x746d: b'\x11tm', + 0x746e: b'\x11tn', + 0x746f: b'\x11to', + 0x7470: b'\x11tp', + 0x7471: b'\x11tq', + 0x7472: b'\x11tr', + 0x7473: b'\x11ts', + 0x7474: b'\x11tt', + 0x7475: b'\x11tu', + 0x7476: b'\x11tv', + 0x7477: b'\x11tw', + 0x7478: b'\x11tx', + 0x7479: b'\x11ty', + 0x747a: b'\x11tz', + 0x747b: b'\x11t{', + 0x747c: b'\x11t|', + 0x747d: b'\x11t}', + 0x747e: b'\x11t~', + 0x747f: b'\x11t\x7f', + 0x7480: b'\x11t\x80', + 0x7481: b'\x11t\x81', + 0x7482: b'\x11t\x82', + 0x7483: b'\x11t\x83', + 0x7484: b'\x11t\x84', + 0x7485: b'\x11t\x85', + 0x7486: b'\x11t\x86', + 0x7487: b'\x11t\x87', + 0x7488: b'\x11t\x88', + 0x7489: b'\x11t\x89', + 0x748a: b'\x11t\x8a', + 0x748b: b'\x11t\x8b', + 0x748c: b'\x11t\x8c', + 0x748d: b'\x11t\x8d', + 0x748e: b'\x11t\x8e', + 0x748f: b'\x11t\x8f', + 0x7490: b'\x11t\x90', + 0x7491: b'\x11t\x91', + 0x7492: b'\x11t\x92', + 0x7493: b'\x11t\x93', + 0x7494: b'\x11t\x94', + 0x7495: b'\x11t\x95', + 0x7496: b'\x11t\x96', + 0x7497: b'\x11t\x97', + 0x7498: b'\x11t\x98', + 0x7499: b'\x11t\x99', + 0x749a: b'\x11t\x9a', + 0x749b: b'\x11t\x9b', + 0x749c: b'\x11t\x9c', + 0x749d: b'\x11t\x9d', + 0x749e: b'\x11t\x9e', + 0x749f: b'\x11t\x9f', + 0x74a0: b'\x11t\xa0', + 0x74a1: b'\x11t\xa1', + 0x74a2: b'\x11t\xa2', + 0x74a3: b'\x11t\xa3', + 0x74a4: b'\x11t\xa4', + 0x74a5: b'\x11t\xa5', + 0x74a6: b'\x11t\xa6', + 0x74a7: b'\x11t\xa7', + 0x74a8: b'\x11t\xa8', + 0x74a9: b'\x11t\xa9', + 0x74aa: b'\x11t\xaa', + 0x74ab: b'\x11t\xab', + 0x74ac: b'\x11t\xac', + 0x74ad: b'\x11t\xad', + 0x74ae: b'\x11t\xae', + 0x74af: b'\x11t\xaf', + 0x74b0: b'\x11t\xb0', + 0x74b1: b'\x11t\xb1', + 0x74b2: b'\x11t\xb2', + 0x74b3: b'\x11t\xb3', + 0x74b4: b'\x11t\xb4', + 0x74b5: b'\x11t\xb5', + 0x74b6: b'\x11t\xb6', + 0x74b7: b'\x11t\xb7', + 0x74b8: b'\x11t\xb8', + 0x74b9: b'\x11t\xb9', + 0x74ba: b'\x11t\xba', + 0x74bb: b'\x11t\xbb', + 0x74bc: b'\x11t\xbc', + 0x74bd: b'\x11t\xbd', + 0x74be: b'\x11t\xbe', + 0x74bf: b'\x11t\xbf', + 0x74c0: b'\x11t\xc0', + 0x74c1: b'\x11t\xc1', + 0x74c2: b'\x11t\xc2', + 0x74c3: b'\x11t\xc3', + 0x74c4: b'\x11t\xc4', + 0x74c5: b'\x11t\xc5', + 0x74c6: b'\x11t\xc6', + 0x74c7: b'\x11t\xc7', + 0x74c8: b'\x11t\xc8', + 0x74c9: b'\x11t\xc9', + 0x74ca: b'\x11t\xca', + 0x74cb: b'\x11t\xcb', + 0x74cc: b'\x11t\xcc', + 0x74cd: b'\x11t\xcd', + 0x74ce: b'\x11t\xce', + 0x74cf: b'\x11t\xcf', + 0x74d0: b'\x11t\xd0', + 0x74d1: b'\x11t\xd1', + 0x74d2: b'\x11t\xd2', + 0x74d3: b'\x11t\xd3', + 0x74d4: b'\x11t\xd4', + 0x74d5: b'\x11t\xd5', + 0x74d6: b'\x11t\xd6', + 0x74d7: b'\x11t\xd7', + 0x74d8: b'\x11t\xd8', + 0x74d9: b'\x11t\xd9', + 0x74da: b'\x11t\xda', + 0x74db: b'\x11t\xdb', + 0x74dc: b'\x11t\xdc', + 0x74dd: b'\x11t\xdd', + 0x74de: b'\x11t\xde', + 0x74df: b'\x11t\xdf', + 0x74e0: b'\x11t\xe0', + 0x74e1: b'\x11t\xe1', + 0x74e2: b'\x11t\xe2', + 0x74e3: b'\x11t\xe3', + 0x74e4: b'\x11t\xe4', + 0x74e5: b'\x11t\xe5', + 0x74e6: b'\x11t\xe6', + 0x74e7: b'\x11t\xe7', + 0x74e8: b'\x11t\xe8', + 0x74e9: b'\x11t\xe9', + 0x74ea: b'\x11t\xea', + 0x74eb: b'\x11t\xeb', + 0x74ec: b'\x11t\xec', + 0x74ed: b'\x11t\xed', + 0x74ee: b'\x11t\xee', + 0x74ef: b'\x11t\xef', + 0x74f0: b'\x11t\xf0', + 0x74f1: b'\x11t\xf1', + 0x74f2: b'\x11t\xf2', + 0x74f3: b'\x11t\xf3', + 0x74f4: b'\x11t\xf4', + 0x74f5: b'\x11t\xf5', + 0x74f6: b'\x11t\xf6', + 0x74f7: b'\x11t\xf7', + 0x74f8: b'\x11t\xf8', + 0x74f9: b'\x11t\xf9', + 0x74fa: b'\x11t\xfa', + 0x74fb: b'\x11t\xfb', + 0x74fc: b'\x11t\xfc', + 0x74fd: b'\x11t\xfd', + 0x74fe: b'\x11t\xfe', + 0x74ff: b'\x11t\xff', + 0x7500: b'\x11u\x00', + 0x7501: b'\x11u\x01', + 0x7502: b'\x11u\x02', + 0x7503: b'\x11u\x03', + 0x7504: b'\x11u\x04', + 0x7505: b'\x11u\x05', + 0x7506: b'\x11u\x06', + 0x7507: b'\x11u\x07', + 0x7508: b'\x11u\x08', + 0x7509: b'\x11u\t', + 0x750a: b'\x11u\n', + 0x750b: b'\x11u\x0b', + 0x750c: b'\x11u\x0c', + 0x750d: b'\x11u\r', + 0x750e: b'\x11u\x0e', + 0x750f: b'\x11u\x0f', + 0x7510: b'\x11u\x10', + 0x7511: b'\x11u\x11', + 0x7512: b'\x11u\x12', + 0x7513: b'\x11u\x13', + 0x7514: b'\x11u\x14', + 0x7515: b'\x11u\x15', + 0x7516: b'\x11u\x16', + 0x7517: b'\x11u\x17', + 0x7518: b'\x11u\x18', + 0x7519: b'\x11u\x19', + 0x751a: b'\x11u\x1a', + 0x751b: b'\x11u\x1b', + 0x751c: b'\x11u\x1c', + 0x751d: b'\x11u\x1d', + 0x751e: b'\x11u\x1e', + 0x751f: b'\x11u\x1f', + 0x7520: b'\x11u ', + 0x7521: b'\x11u!', + 0x7522: b'\x11u"', + 0x7523: b'\x11u#', + 0x7524: b'\x11u$', + 0x7525: b'\x11u%', + 0x7526: b'\x11u&', + 0x7527: b"\x11u'", + 0x7528: b'\x11u(', + 0x7529: b'\x11u)', + 0x752a: b'\x11u*', + 0x752b: b'\x11u+', + 0x752c: b'\x11u,', + 0x752d: b'\x11u-', + 0x752e: b'\x11u.', + 0x752f: b'\x11u/', + 0x7530: b'\x11u0', + 0x7531: b'\x11u1', + 0x7532: b'\x11u2', + 0x7533: b'\x11u3', + 0x7534: b'\x11u4', + 0x7535: b'\x11u5', + 0x7536: b'\x11u6', + 0x7537: b'\x11u7', + 0x7538: b'\x11u8', + 0x7539: b'\x11u9', + 0x753a: b'\x11u:', + 0x753b: b'\x11u;', + 0x753c: b'\x11u<', + 0x753d: b'\x11u=', + 0x753e: b'\x11u>', + 0x753f: b'\x11u?', + 0x7540: b'\x11u@', + 0x7541: b'\x11uA', + 0x7542: b'\x11uB', + 0x7543: b'\x11uC', + 0x7544: b'\x11uD', + 0x7545: b'\x11uE', + 0x7546: b'\x11uF', + 0x7547: b'\x11uG', + 0x7548: b'\x11uH', + 0x7549: b'\x11uI', + 0x754a: b'\x11uJ', + 0x754b: b'\x11uK', + 0x754c: b'\x11uL', + 0x754d: b'\x11uM', + 0x754e: b'\x11uN', + 0x754f: b'\x11uO', + 0x7550: b'\x11uP', + 0x7551: b'\x11uQ', + 0x7552: b'\x11uR', + 0x7553: b'\x11uS', + 0x7554: b'\x11uT', + 0x7555: b'\x11uU', + 0x7556: b'\x11uV', + 0x7557: b'\x11uW', + 0x7558: b'\x11uX', + 0x7559: b'\x11uY', + 0x755a: b'\x11uZ', + 0x755b: b'\x11u[', + 0x755c: b'\x11u\\', + 0x755d: b'\x11u]', + 0x755e: b'\x11u^', + 0x755f: b'\x11u_', + 0x7560: b'\x11u`', + 0x7561: b'\x11ua', + 0x7562: b'\x11ub', + 0x7563: b'\x11uc', + 0x7564: b'\x11ud', + 0x7565: b'\x11ue', + 0x7566: b'\x11uf', + 0x7567: b'\x11ug', + 0x7568: b'\x11uh', + 0x7569: b'\x11ui', + 0x756a: b'\x11uj', + 0x756b: b'\x11uk', + 0x756c: b'\x11ul', + 0x756d: b'\x11um', + 0x756e: b'\x11un', + 0x756f: b'\x11uo', + 0x7570: b'\x11up', + 0x7571: b'\x11uq', + 0x7572: b'\x11ur', + 0x7573: b'\x11us', + 0x7574: b'\x11ut', + 0x7575: b'\x11uu', + 0x7576: b'\x11uv', + 0x7577: b'\x11uw', + 0x7578: b'\x11ux', + 0x7579: b'\x11uy', + 0x757a: b'\x11uz', + 0x757b: b'\x11u{', + 0x757c: b'\x11u|', + 0x757d: b'\x11u}', + 0x757e: b'\x11u~', + 0x757f: b'\x11u\x7f', + 0x7580: b'\x11u\x80', + 0x7581: b'\x11u\x81', + 0x7582: b'\x11u\x82', + 0x7583: b'\x11u\x83', + 0x7584: b'\x11u\x84', + 0x7585: b'\x11u\x85', + 0x7586: b'\x11u\x86', + 0x7587: b'\x11u\x87', + 0x7588: b'\x11u\x88', + 0x7589: b'\x11u\x89', + 0x758a: b'\x11u\x8a', + 0x758b: b'\x11u\x8b', + 0x758c: b'\x11u\x8c', + 0x758d: b'\x11u\x8d', + 0x758e: b'\x11u\x8e', + 0x758f: b'\x11u\x8f', + 0x7590: b'\x11u\x90', + 0x7591: b'\x11u\x91', + 0x7592: b'\x11u\x92', + 0x7593: b'\x11u\x93', + 0x7594: b'\x11u\x94', + 0x7595: b'\x11u\x95', + 0x7596: b'\x11u\x96', + 0x7597: b'\x11u\x97', + 0x7598: b'\x11u\x98', + 0x7599: b'\x11u\x99', + 0x759a: b'\x11u\x9a', + 0x759b: b'\x11u\x9b', + 0x759c: b'\x11u\x9c', + 0x759d: b'\x11u\x9d', + 0x759e: b'\x11u\x9e', + 0x759f: b'\x11u\x9f', + 0x75a0: b'\x11u\xa0', + 0x75a1: b'\x11u\xa1', + 0x75a2: b'\x11u\xa2', + 0x75a3: b'\x11u\xa3', + 0x75a4: b'\x11u\xa4', + 0x75a5: b'\x11u\xa5', + 0x75a6: b'\x11u\xa6', + 0x75a7: b'\x11u\xa7', + 0x75a8: b'\x11u\xa8', + 0x75a9: b'\x11u\xa9', + 0x75aa: b'\x11u\xaa', + 0x75ab: b'\x11u\xab', + 0x75ac: b'\x11u\xac', + 0x75ad: b'\x11u\xad', + 0x75ae: b'\x11u\xae', + 0x75af: b'\x11u\xaf', + 0x75b0: b'\x11u\xb0', + 0x75b1: b'\x11u\xb1', + 0x75b2: b'\x11u\xb2', + 0x75b3: b'\x11u\xb3', + 0x75b4: b'\x11u\xb4', + 0x75b5: b'\x11u\xb5', + 0x75b6: b'\x11u\xb6', + 0x75b7: b'\x11u\xb7', + 0x75b8: b'\x11u\xb8', + 0x75b9: b'\x11u\xb9', + 0x75ba: b'\x11u\xba', + 0x75bb: b'\x11u\xbb', + 0x75bc: b'\x11u\xbc', + 0x75bd: b'\x11u\xbd', + 0x75be: b'\x11u\xbe', + 0x75bf: b'\x11u\xbf', + 0x75c0: b'\x11u\xc0', + 0x75c1: b'\x11u\xc1', + 0x75c2: b'\x11u\xc2', + 0x75c3: b'\x11u\xc3', + 0x75c4: b'\x11u\xc4', + 0x75c5: b'\x11u\xc5', + 0x75c6: b'\x11u\xc6', + 0x75c7: b'\x11u\xc7', + 0x75c8: b'\x11u\xc8', + 0x75c9: b'\x11u\xc9', + 0x75ca: b'\x11u\xca', + 0x75cb: b'\x11u\xcb', + 0x75cc: b'\x11u\xcc', + 0x75cd: b'\x11u\xcd', + 0x75ce: b'\x11u\xce', + 0x75cf: b'\x11u\xcf', + 0x75d0: b'\x11u\xd0', + 0x75d1: b'\x11u\xd1', + 0x75d2: b'\x11u\xd2', + 0x75d3: b'\x11u\xd3', + 0x75d4: b'\x11u\xd4', + 0x75d5: b'\x11u\xd5', + 0x75d6: b'\x11u\xd6', + 0x75d7: b'\x11u\xd7', + 0x75d8: b'\x11u\xd8', + 0x75d9: b'\x11u\xd9', + 0x75da: b'\x11u\xda', + 0x75db: b'\x11u\xdb', + 0x75dc: b'\x11u\xdc', + 0x75dd: b'\x11u\xdd', + 0x75de: b'\x11u\xde', + 0x75df: b'\x11u\xdf', + 0x75e0: b'\x11u\xe0', + 0x75e1: b'\x11u\xe1', + 0x75e2: b'\x11u\xe2', + 0x75e3: b'\x11u\xe3', + 0x75e4: b'\x11u\xe4', + 0x75e5: b'\x11u\xe5', + 0x75e6: b'\x11u\xe6', + 0x75e7: b'\x11u\xe7', + 0x75e8: b'\x11u\xe8', + 0x75e9: b'\x11u\xe9', + 0x75ea: b'\x11u\xea', + 0x75eb: b'\x11u\xeb', + 0x75ec: b'\x11u\xec', + 0x75ed: b'\x11u\xed', + 0x75ee: b'\x11u\xee', + 0x75ef: b'\x11u\xef', + 0x75f0: b'\x11u\xf0', + 0x75f1: b'\x11u\xf1', + 0x75f2: b'\x11u\xf2', + 0x75f3: b'\x11u\xf3', + 0x75f4: b'\x11u\xf4', + 0x75f5: b'\x11u\xf5', + 0x75f6: b'\x11u\xf6', + 0x75f7: b'\x11u\xf7', + 0x75f8: b'\x11u\xf8', + 0x75f9: b'\x11u\xf9', + 0x75fa: b'\x11u\xfa', + 0x75fb: b'\x11u\xfb', + 0x75fc: b'\x11u\xfc', + 0x75fd: b'\x11u\xfd', + 0x75fe: b'\x11u\xfe', + 0x75ff: b'\x11u\xff', + 0x7600: b'\x11v\x00', + 0x7601: b'\x11v\x01', + 0x7602: b'\x11v\x02', + 0x7603: b'\x11v\x03', + 0x7604: b'\x11v\x04', + 0x7605: b'\x11v\x05', + 0x7606: b'\x11v\x06', + 0x7607: b'\x11v\x07', + 0x7608: b'\x11v\x08', + 0x7609: b'\x11v\t', + 0x760a: b'\x11v\n', + 0x760b: b'\x11v\x0b', + 0x760c: b'\x11v\x0c', + 0x760d: b'\x11v\r', + 0x760e: b'\x11v\x0e', + 0x760f: b'\x11v\x0f', + 0x7610: b'\x11v\x10', + 0x7611: b'\x11v\x11', + 0x7612: b'\x11v\x12', + 0x7613: b'\x11v\x13', + 0x7614: b'\x11v\x14', + 0x7615: b'\x11v\x15', + 0x7616: b'\x11v\x16', + 0x7617: b'\x11v\x17', + 0x7618: b'\x11v\x18', + 0x7619: b'\x11v\x19', + 0x761a: b'\x11v\x1a', + 0x761b: b'\x11v\x1b', + 0x761c: b'\x11v\x1c', + 0x761d: b'\x11v\x1d', + 0x761e: b'\x11v\x1e', + 0x761f: b'\x11v\x1f', + 0x7620: b'\x11v ', + 0x7621: b'\x11v!', + 0x7622: b'\x11v"', + 0x7623: b'\x11v#', + 0x7624: b'\x11v$', + 0x7625: b'\x11v%', + 0x7626: b'\x11v&', + 0x7627: b"\x11v'", + 0x7628: b'\x11v(', + 0x7629: b'\x11v)', + 0x762a: b'\x11v*', + 0x762b: b'\x11v+', + 0x762c: b'\x11v,', + 0x762d: b'\x11v-', + 0x762e: b'\x11v.', + 0x762f: b'\x11v/', + 0x7630: b'\x11v0', + 0x7631: b'\x11v1', + 0x7632: b'\x11v2', + 0x7633: b'\x11v3', + 0x7634: b'\x11v4', + 0x7635: b'\x11v5', + 0x7636: b'\x11v6', + 0x7637: b'\x11v7', + 0x7638: b'\x11v8', + 0x7639: b'\x11v9', + 0x763a: b'\x11v:', + 0x763b: b'\x11v;', + 0x763c: b'\x11v<', + 0x763d: b'\x11v=', + 0x763e: b'\x11v>', + 0x763f: b'\x11v?', + 0x7640: b'\x11v@', + 0x7641: b'\x11vA', + 0x7642: b'\x11vB', + 0x7643: b'\x11vC', + 0x7644: b'\x11vD', + 0x7645: b'\x11vE', + 0x7646: b'\x11vF', + 0x7647: b'\x11vG', + 0x7648: b'\x11vH', + 0x7649: b'\x11vI', + 0x764a: b'\x11vJ', + 0x764b: b'\x11vK', + 0x764c: b'\x11vL', + 0x764d: b'\x11vM', + 0x764e: b'\x11vN', + 0x764f: b'\x11vO', + 0x7650: b'\x11vP', + 0x7651: b'\x11vQ', + 0x7652: b'\x11vR', + 0x7653: b'\x11vS', + 0x7654: b'\x11vT', + 0x7655: b'\x11vU', + 0x7656: b'\x11vV', + 0x7657: b'\x11vW', + 0x7658: b'\x11vX', + 0x7659: b'\x11vY', + 0x765a: b'\x11vZ', + 0x765b: b'\x11v[', + 0x765c: b'\x11v\\', + 0x765d: b'\x11v]', + 0x765e: b'\x11v^', + 0x765f: b'\x11v_', + 0x7660: b'\x11v`', + 0x7661: b'\x11va', + 0x7662: b'\x11vb', + 0x7663: b'\x11vc', + 0x7664: b'\x11vd', + 0x7665: b'\x11ve', + 0x7666: b'\x11vf', + 0x7667: b'\x11vg', + 0x7668: b'\x11vh', + 0x7669: b'\x11vi', + 0x766a: b'\x11vj', + 0x766b: b'\x11vk', + 0x766c: b'\x11vl', + 0x766d: b'\x11vm', + 0x766e: b'\x11vn', + 0x766f: b'\x11vo', + 0x7670: b'\x11vp', + 0x7671: b'\x11vq', + 0x7672: b'\x11vr', + 0x7673: b'\x11vs', + 0x7674: b'\x11vt', + 0x7675: b'\x11vu', + 0x7676: b'\x11vv', + 0x7677: b'\x11vw', + 0x7678: b'\x11vx', + 0x7679: b'\x11vy', + 0x767a: b'\x11vz', + 0x767b: b'\x11v{', + 0x767c: b'\x11v|', + 0x767d: b'\x11v}', + 0x767e: b'\x11v~', + 0x767f: b'\x11v\x7f', + 0x7680: b'\x11v\x80', + 0x7681: b'\x11v\x81', + 0x7682: b'\x11v\x82', + 0x7683: b'\x11v\x83', + 0x7684: b'\x11v\x84', + 0x7685: b'\x11v\x85', + 0x7686: b'\x11v\x86', + 0x7687: b'\x11v\x87', + 0x7688: b'\x11v\x88', + 0x7689: b'\x11v\x89', + 0x768a: b'\x11v\x8a', + 0x768b: b'\x11v\x8b', + 0x768c: b'\x11v\x8c', + 0x768d: b'\x11v\x8d', + 0x768e: b'\x11v\x8e', + 0x768f: b'\x11v\x8f', + 0x7690: b'\x11v\x90', + 0x7691: b'\x11v\x91', + 0x7692: b'\x11v\x92', + 0x7693: b'\x11v\x93', + 0x7694: b'\x11v\x94', + 0x7695: b'\x11v\x95', + 0x7696: b'\x11v\x96', + 0x7697: b'\x11v\x97', + 0x7698: b'\x11v\x98', + 0x7699: b'\x11v\x99', + 0x769a: b'\x11v\x9a', + 0x769b: b'\x11v\x9b', + 0x769c: b'\x11v\x9c', + 0x769d: b'\x11v\x9d', + 0x769e: b'\x11v\x9e', + 0x769f: b'\x11v\x9f', + 0x76a0: b'\x11v\xa0', + 0x76a1: b'\x11v\xa1', + 0x76a2: b'\x11v\xa2', + 0x76a3: b'\x11v\xa3', + 0x76a4: b'\x11v\xa4', + 0x76a5: b'\x11v\xa5', + 0x76a6: b'\x11v\xa6', + 0x76a7: b'\x11v\xa7', + 0x76a8: b'\x11v\xa8', + 0x76a9: b'\x11v\xa9', + 0x76aa: b'\x11v\xaa', + 0x76ab: b'\x11v\xab', + 0x76ac: b'\x11v\xac', + 0x76ad: b'\x11v\xad', + 0x76ae: b'\x11v\xae', + 0x76af: b'\x11v\xaf', + 0x76b0: b'\x11v\xb0', + 0x76b1: b'\x11v\xb1', + 0x76b2: b'\x11v\xb2', + 0x76b3: b'\x11v\xb3', + 0x76b4: b'\x11v\xb4', + 0x76b5: b'\x11v\xb5', + 0x76b6: b'\x11v\xb6', + 0x76b7: b'\x11v\xb7', + 0x76b8: b'\x11v\xb8', + 0x76b9: b'\x11v\xb9', + 0x76ba: b'\x11v\xba', + 0x76bb: b'\x11v\xbb', + 0x76bc: b'\x11v\xbc', + 0x76bd: b'\x11v\xbd', + 0x76be: b'\x11v\xbe', + 0x76bf: b'\x11v\xbf', + 0x76c0: b'\x11v\xc0', + 0x76c1: b'\x11v\xc1', + 0x76c2: b'\x11v\xc2', + 0x76c3: b'\x11v\xc3', + 0x76c4: b'\x11v\xc4', + 0x76c5: b'\x11v\xc5', + 0x76c6: b'\x11v\xc6', + 0x76c7: b'\x11v\xc7', + 0x76c8: b'\x11v\xc8', + 0x76c9: b'\x11v\xc9', + 0x76ca: b'\x11v\xca', + 0x76cb: b'\x11v\xcb', + 0x76cc: b'\x11v\xcc', + 0x76cd: b'\x11v\xcd', + 0x76ce: b'\x11v\xce', + 0x76cf: b'\x11v\xcf', + 0x76d0: b'\x11v\xd0', + 0x76d1: b'\x11v\xd1', + 0x76d2: b'\x11v\xd2', + 0x76d3: b'\x11v\xd3', + 0x76d4: b'\x11v\xd4', + 0x76d5: b'\x11v\xd5', + 0x76d6: b'\x11v\xd6', + 0x76d7: b'\x11v\xd7', + 0x76d8: b'\x11v\xd8', + 0x76d9: b'\x11v\xd9', + 0x76da: b'\x11v\xda', + 0x76db: b'\x11v\xdb', + 0x76dc: b'\x11v\xdc', + 0x76dd: b'\x11v\xdd', + 0x76de: b'\x11v\xde', + 0x76df: b'\x11v\xdf', + 0x76e0: b'\x11v\xe0', + 0x76e1: b'\x11v\xe1', + 0x76e2: b'\x11v\xe2', + 0x76e3: b'\x11v\xe3', + 0x76e4: b'\x11v\xe4', + 0x76e5: b'\x11v\xe5', + 0x76e6: b'\x11v\xe6', + 0x76e7: b'\x11v\xe7', + 0x76e8: b'\x11v\xe8', + 0x76e9: b'\x11v\xe9', + 0x76ea: b'\x11v\xea', + 0x76eb: b'\x11v\xeb', + 0x76ec: b'\x11v\xec', + 0x76ed: b'\x11v\xed', + 0x76ee: b'\x11v\xee', + 0x76ef: b'\x11v\xef', + 0x76f0: b'\x11v\xf0', + 0x76f1: b'\x11v\xf1', + 0x76f2: b'\x11v\xf2', + 0x76f3: b'\x11v\xf3', + 0x76f4: b'\x11v\xf4', + 0x76f5: b'\x11v\xf5', + 0x76f6: b'\x11v\xf6', + 0x76f7: b'\x11v\xf7', + 0x76f8: b'\x11v\xf8', + 0x76f9: b'\x11v\xf9', + 0x76fa: b'\x11v\xfa', + 0x76fb: b'\x11v\xfb', + 0x76fc: b'\x11v\xfc', + 0x76fd: b'\x11v\xfd', + 0x76fe: b'\x11v\xfe', + 0x76ff: b'\x11v\xff', + 0x7700: b'\x11w\x00', + 0x7701: b'\x11w\x01', + 0x7702: b'\x11w\x02', + 0x7703: b'\x11w\x03', + 0x7704: b'\x11w\x04', + 0x7705: b'\x11w\x05', + 0x7706: b'\x11w\x06', + 0x7707: b'\x11w\x07', + 0x7708: b'\x11w\x08', + 0x7709: b'\x11w\t', + 0x770a: b'\x11w\n', + 0x770b: b'\x11w\x0b', + 0x770c: b'\x11w\x0c', + 0x770d: b'\x11w\r', + 0x770e: b'\x11w\x0e', + 0x770f: b'\x11w\x0f', + 0x7710: b'\x11w\x10', + 0x7711: b'\x11w\x11', + 0x7712: b'\x11w\x12', + 0x7713: b'\x11w\x13', + 0x7714: b'\x11w\x14', + 0x7715: b'\x11w\x15', + 0x7716: b'\x11w\x16', + 0x7717: b'\x11w\x17', + 0x7718: b'\x11w\x18', + 0x7719: b'\x11w\x19', + 0x771a: b'\x11w\x1a', + 0x771b: b'\x11w\x1b', + 0x771c: b'\x11w\x1c', + 0x771d: b'\x11w\x1d', + 0x771e: b'\x11w\x1e', + 0x771f: b'\x11w\x1f', + 0x7720: b'\x11w ', + 0x7721: b'\x11w!', + 0x7722: b'\x11w"', + 0x7723: b'\x11w#', + 0x7724: b'\x11w$', + 0x7725: b'\x11w%', + 0x7726: b'\x11w&', + 0x7727: b"\x11w'", + 0x7728: b'\x11w(', + 0x7729: b'\x11w)', + 0x772a: b'\x11w*', + 0x772b: b'\x11w+', + 0x772c: b'\x11w,', + 0x772d: b'\x11w-', + 0x772e: b'\x11w.', + 0x772f: b'\x11w/', + 0x7730: b'\x11w0', + 0x7731: b'\x11w1', + 0x7732: b'\x11w2', + 0x7733: b'\x11w3', + 0x7734: b'\x11w4', + 0x7735: b'\x11w5', + 0x7736: b'\x11w6', + 0x7737: b'\x11w7', + 0x7738: b'\x11w8', + 0x7739: b'\x11w9', + 0x773a: b'\x11w:', + 0x773b: b'\x11w;', + 0x773c: b'\x11w<', + 0x773d: b'\x11w=', + 0x773e: b'\x11w>', + 0x773f: b'\x11w?', + 0x7740: b'\x11w@', + 0x7741: b'\x11wA', + 0x7742: b'\x11wB', + 0x7743: b'\x11wC', + 0x7744: b'\x11wD', + 0x7745: b'\x11wE', + 0x7746: b'\x11wF', + 0x7747: b'\x11wG', + 0x7748: b'\x11wH', + 0x7749: b'\x11wI', + 0x774a: b'\x11wJ', + 0x774b: b'\x11wK', + 0x774c: b'\x11wL', + 0x774d: b'\x11wM', + 0x774e: b'\x11wN', + 0x774f: b'\x11wO', + 0x7750: b'\x11wP', + 0x7751: b'\x11wQ', + 0x7752: b'\x11wR', + 0x7753: b'\x11wS', + 0x7754: b'\x11wT', + 0x7755: b'\x11wU', + 0x7756: b'\x11wV', + 0x7757: b'\x11wW', + 0x7758: b'\x11wX', + 0x7759: b'\x11wY', + 0x775a: b'\x11wZ', + 0x775b: b'\x11w[', + 0x775c: b'\x11w\\', + 0x775d: b'\x11w]', + 0x775e: b'\x11w^', + 0x775f: b'\x11w_', + 0x7760: b'\x11w`', + 0x7761: b'\x11wa', + 0x7762: b'\x11wb', + 0x7763: b'\x11wc', + 0x7764: b'\x11wd', + 0x7765: b'\x11we', + 0x7766: b'\x11wf', + 0x7767: b'\x11wg', + 0x7768: b'\x11wh', + 0x7769: b'\x11wi', + 0x776a: b'\x11wj', + 0x776b: b'\x11wk', + 0x776c: b'\x11wl', + 0x776d: b'\x11wm', + 0x776e: b'\x11wn', + 0x776f: b'\x11wo', + 0x7770: b'\x11wp', + 0x7771: b'\x11wq', + 0x7772: b'\x11wr', + 0x7773: b'\x11ws', + 0x7774: b'\x11wt', + 0x7775: b'\x11wu', + 0x7776: b'\x11wv', + 0x7777: b'\x11ww', + 0x7778: b'\x11wx', + 0x7779: b'\x11wy', + 0x777a: b'\x11wz', + 0x777b: b'\x11w{', + 0x777c: b'\x11w|', + 0x777d: b'\x11w}', + 0x777e: b'\x11w~', + 0x777f: b'\x11w\x7f', + 0x7780: b'\x11w\x80', + 0x7781: b'\x11w\x81', + 0x7782: b'\x11w\x82', + 0x7783: b'\x11w\x83', + 0x7784: b'\x11w\x84', + 0x7785: b'\x11w\x85', + 0x7786: b'\x11w\x86', + 0x7787: b'\x11w\x87', + 0x7788: b'\x11w\x88', + 0x7789: b'\x11w\x89', + 0x778a: b'\x11w\x8a', + 0x778b: b'\x11w\x8b', + 0x778c: b'\x11w\x8c', + 0x778d: b'\x11w\x8d', + 0x778e: b'\x11w\x8e', + 0x778f: b'\x11w\x8f', + 0x7790: b'\x11w\x90', + 0x7791: b'\x11w\x91', + 0x7792: b'\x11w\x92', + 0x7793: b'\x11w\x93', + 0x7794: b'\x11w\x94', + 0x7795: b'\x11w\x95', + 0x7796: b'\x11w\x96', + 0x7797: b'\x11w\x97', + 0x7798: b'\x11w\x98', + 0x7799: b'\x11w\x99', + 0x779a: b'\x11w\x9a', + 0x779b: b'\x11w\x9b', + 0x779c: b'\x11w\x9c', + 0x779d: b'\x11w\x9d', + 0x779e: b'\x11w\x9e', + 0x779f: b'\x11w\x9f', + 0x77a0: b'\x11w\xa0', + 0x77a1: b'\x11w\xa1', + 0x77a2: b'\x11w\xa2', + 0x77a3: b'\x11w\xa3', + 0x77a4: b'\x11w\xa4', + 0x77a5: b'\x11w\xa5', + 0x77a6: b'\x11w\xa6', + 0x77a7: b'\x11w\xa7', + 0x77a8: b'\x11w\xa8', + 0x77a9: b'\x11w\xa9', + 0x77aa: b'\x11w\xaa', + 0x77ab: b'\x11w\xab', + 0x77ac: b'\x11w\xac', + 0x77ad: b'\x11w\xad', + 0x77ae: b'\x11w\xae', + 0x77af: b'\x11w\xaf', + 0x77b0: b'\x11w\xb0', + 0x77b1: b'\x11w\xb1', + 0x77b2: b'\x11w\xb2', + 0x77b3: b'\x11w\xb3', + 0x77b4: b'\x11w\xb4', + 0x77b5: b'\x11w\xb5', + 0x77b6: b'\x11w\xb6', + 0x77b7: b'\x11w\xb7', + 0x77b8: b'\x11w\xb8', + 0x77b9: b'\x11w\xb9', + 0x77ba: b'\x11w\xba', + 0x77bb: b'\x11w\xbb', + 0x77bc: b'\x11w\xbc', + 0x77bd: b'\x11w\xbd', + 0x77be: b'\x11w\xbe', + 0x77bf: b'\x11w\xbf', + 0x77c0: b'\x11w\xc0', + 0x77c1: b'\x11w\xc1', + 0x77c2: b'\x11w\xc2', + 0x77c3: b'\x11w\xc3', + 0x77c4: b'\x11w\xc4', + 0x77c5: b'\x11w\xc5', + 0x77c6: b'\x11w\xc6', + 0x77c7: b'\x11w\xc7', + 0x77c8: b'\x11w\xc8', + 0x77c9: b'\x11w\xc9', + 0x77ca: b'\x11w\xca', + 0x77cb: b'\x11w\xcb', + 0x77cc: b'\x11w\xcc', + 0x77cd: b'\x11w\xcd', + 0x77ce: b'\x11w\xce', + 0x77cf: b'\x11w\xcf', + 0x77d0: b'\x11w\xd0', + 0x77d1: b'\x11w\xd1', + 0x77d2: b'\x11w\xd2', + 0x77d3: b'\x11w\xd3', + 0x77d4: b'\x11w\xd4', + 0x77d5: b'\x11w\xd5', + 0x77d6: b'\x11w\xd6', + 0x77d7: b'\x11w\xd7', + 0x77d8: b'\x11w\xd8', + 0x77d9: b'\x11w\xd9', + 0x77da: b'\x11w\xda', + 0x77db: b'\x11w\xdb', + 0x77dc: b'\x11w\xdc', + 0x77dd: b'\x11w\xdd', + 0x77de: b'\x11w\xde', + 0x77df: b'\x11w\xdf', + 0x77e0: b'\x11w\xe0', + 0x77e1: b'\x11w\xe1', + 0x77e2: b'\x11w\xe2', + 0x77e3: b'\x11w\xe3', + 0x77e4: b'\x11w\xe4', + 0x77e5: b'\x11w\xe5', + 0x77e6: b'\x11w\xe6', + 0x77e7: b'\x11w\xe7', + 0x77e8: b'\x11w\xe8', + 0x77e9: b'\x11w\xe9', + 0x77ea: b'\x11w\xea', + 0x77eb: b'\x11w\xeb', + 0x77ec: b'\x11w\xec', + 0x77ed: b'\x11w\xed', + 0x77ee: b'\x11w\xee', + 0x77ef: b'\x11w\xef', + 0x77f0: b'\x11w\xf0', + 0x77f1: b'\x11w\xf1', + 0x77f2: b'\x11w\xf2', + 0x77f3: b'\x11w\xf3', + 0x77f4: b'\x11w\xf4', + 0x77f5: b'\x11w\xf5', + 0x77f6: b'\x11w\xf6', + 0x77f7: b'\x11w\xf7', + 0x77f8: b'\x11w\xf8', + 0x77f9: b'\x11w\xf9', + 0x77fa: b'\x11w\xfa', + 0x77fb: b'\x11w\xfb', + 0x77fc: b'\x11w\xfc', + 0x77fd: b'\x11w\xfd', + 0x77fe: b'\x11w\xfe', + 0x77ff: b'\x11w\xff', + 0x7800: b'\x11x\x00', + 0x7801: b'\x11x\x01', + 0x7802: b'\x11x\x02', + 0x7803: b'\x11x\x03', + 0x7804: b'\x11x\x04', + 0x7805: b'\x11x\x05', + 0x7806: b'\x11x\x06', + 0x7807: b'\x11x\x07', + 0x7808: b'\x11x\x08', + 0x7809: b'\x11x\t', + 0x780a: b'\x11x\n', + 0x780b: b'\x11x\x0b', + 0x780c: b'\x11x\x0c', + 0x780d: b'\x11x\r', + 0x780e: b'\x11x\x0e', + 0x780f: b'\x11x\x0f', + 0x7810: b'\x11x\x10', + 0x7811: b'\x11x\x11', + 0x7812: b'\x11x\x12', + 0x7813: b'\x11x\x13', + 0x7814: b'\x11x\x14', + 0x7815: b'\x11x\x15', + 0x7816: b'\x11x\x16', + 0x7817: b'\x11x\x17', + 0x7818: b'\x11x\x18', + 0x7819: b'\x11x\x19', + 0x781a: b'\x11x\x1a', + 0x781b: b'\x11x\x1b', + 0x781c: b'\x11x\x1c', + 0x781d: b'\x11x\x1d', + 0x781e: b'\x11x\x1e', + 0x781f: b'\x11x\x1f', + 0x7820: b'\x11x ', + 0x7821: b'\x11x!', + 0x7822: b'\x11x"', + 0x7823: b'\x11x#', + 0x7824: b'\x11x$', + 0x7825: b'\x11x%', + 0x7826: b'\x11x&', + 0x7827: b"\x11x'", + 0x7828: b'\x11x(', + 0x7829: b'\x11x)', + 0x782a: b'\x11x*', + 0x782b: b'\x11x+', + 0x782c: b'\x11x,', + 0x782d: b'\x11x-', + 0x782e: b'\x11x.', + 0x782f: b'\x11x/', + 0x7830: b'\x11x0', + 0x7831: b'\x11x1', + 0x7832: b'\x11x2', + 0x7833: b'\x11x3', + 0x7834: b'\x11x4', + 0x7835: b'\x11x5', + 0x7836: b'\x11x6', + 0x7837: b'\x11x7', + 0x7838: b'\x11x8', + 0x7839: b'\x11x9', + 0x783a: b'\x11x:', + 0x783b: b'\x11x;', + 0x783c: b'\x11x<', + 0x783d: b'\x11x=', + 0x783e: b'\x11x>', + 0x783f: b'\x11x?', + 0x7840: b'\x11x@', + 0x7841: b'\x11xA', + 0x7842: b'\x11xB', + 0x7843: b'\x11xC', + 0x7844: b'\x11xD', + 0x7845: b'\x11xE', + 0x7846: b'\x11xF', + 0x7847: b'\x11xG', + 0x7848: b'\x11xH', + 0x7849: b'\x11xI', + 0x784a: b'\x11xJ', + 0x784b: b'\x11xK', + 0x784c: b'\x11xL', + 0x784d: b'\x11xM', + 0x784e: b'\x11xN', + 0x784f: b'\x11xO', + 0x7850: b'\x11xP', + 0x7851: b'\x11xQ', + 0x7852: b'\x11xR', + 0x7853: b'\x11xS', + 0x7854: b'\x11xT', + 0x7855: b'\x11xU', + 0x7856: b'\x11xV', + 0x7857: b'\x11xW', + 0x7858: b'\x11xX', + 0x7859: b'\x11xY', + 0x785a: b'\x11xZ', + 0x785b: b'\x11x[', + 0x785c: b'\x11x\\', + 0x785d: b'\x11x]', + 0x785e: b'\x11x^', + 0x785f: b'\x11x_', + 0x7860: b'\x11x`', + 0x7861: b'\x11xa', + 0x7862: b'\x11xb', + 0x7863: b'\x11xc', + 0x7864: b'\x11xd', + 0x7865: b'\x11xe', + 0x7866: b'\x11xf', + 0x7867: b'\x11xg', + 0x7868: b'\x11xh', + 0x7869: b'\x11xi', + 0x786a: b'\x11xj', + 0x786b: b'\x11xk', + 0x786c: b'\x11xl', + 0x786d: b'\x11xm', + 0x786e: b'\x11xn', + 0x786f: b'\x11xo', + 0x7870: b'\x11xp', + 0x7871: b'\x11xq', + 0x7872: b'\x11xr', + 0x7873: b'\x11xs', + 0x7874: b'\x11xt', + 0x7875: b'\x11xu', + 0x7876: b'\x11xv', + 0x7877: b'\x11xw', + 0x7878: b'\x11xx', + 0x7879: b'\x11xy', + 0x787a: b'\x11xz', + 0x787b: b'\x11x{', + 0x787c: b'\x11x|', + 0x787d: b'\x11x}', + 0x787e: b'\x11x~', + 0x787f: b'\x11x\x7f', + 0x7880: b'\x11x\x80', + 0x7881: b'\x11x\x81', + 0x7882: b'\x11x\x82', + 0x7883: b'\x11x\x83', + 0x7884: b'\x11x\x84', + 0x7885: b'\x11x\x85', + 0x7886: b'\x11x\x86', + 0x7887: b'\x11x\x87', + 0x7888: b'\x11x\x88', + 0x7889: b'\x11x\x89', + 0x788a: b'\x11x\x8a', + 0x788b: b'\x11x\x8b', + 0x788c: b'\x11x\x8c', + 0x788d: b'\x11x\x8d', + 0x788e: b'\x11x\x8e', + 0x788f: b'\x11x\x8f', + 0x7890: b'\x11x\x90', + 0x7891: b'\x11x\x91', + 0x7892: b'\x11x\x92', + 0x7893: b'\x11x\x93', + 0x7894: b'\x11x\x94', + 0x7895: b'\x11x\x95', + 0x7896: b'\x11x\x96', + 0x7897: b'\x11x\x97', + 0x7898: b'\x11x\x98', + 0x7899: b'\x11x\x99', + 0x789a: b'\x11x\x9a', + 0x789b: b'\x11x\x9b', + 0x789c: b'\x11x\x9c', + 0x789d: b'\x11x\x9d', + 0x789e: b'\x11x\x9e', + 0x789f: b'\x11x\x9f', + 0x78a0: b'\x11x\xa0', + 0x78a1: b'\x11x\xa1', + 0x78a2: b'\x11x\xa2', + 0x78a3: b'\x11x\xa3', + 0x78a4: b'\x11x\xa4', + 0x78a5: b'\x11x\xa5', + 0x78a6: b'\x11x\xa6', + 0x78a7: b'\x11x\xa7', + 0x78a8: b'\x11x\xa8', + 0x78a9: b'\x11x\xa9', + 0x78aa: b'\x11x\xaa', + 0x78ab: b'\x11x\xab', + 0x78ac: b'\x11x\xac', + 0x78ad: b'\x11x\xad', + 0x78ae: b'\x11x\xae', + 0x78af: b'\x11x\xaf', + 0x78b0: b'\x11x\xb0', + 0x78b1: b'\x11x\xb1', + 0x78b2: b'\x11x\xb2', + 0x78b3: b'\x11x\xb3', + 0x78b4: b'\x11x\xb4', + 0x78b5: b'\x11x\xb5', + 0x78b6: b'\x11x\xb6', + 0x78b7: b'\x11x\xb7', + 0x78b8: b'\x11x\xb8', + 0x78b9: b'\x11x\xb9', + 0x78ba: b'\x11x\xba', + 0x78bb: b'\x11x\xbb', + 0x78bc: b'\x11x\xbc', + 0x78bd: b'\x11x\xbd', + 0x78be: b'\x11x\xbe', + 0x78bf: b'\x11x\xbf', + 0x78c0: b'\x11x\xc0', + 0x78c1: b'\x11x\xc1', + 0x78c2: b'\x11x\xc2', + 0x78c3: b'\x11x\xc3', + 0x78c4: b'\x11x\xc4', + 0x78c5: b'\x11x\xc5', + 0x78c6: b'\x11x\xc6', + 0x78c7: b'\x11x\xc7', + 0x78c8: b'\x11x\xc8', + 0x78c9: b'\x11x\xc9', + 0x78ca: b'\x11x\xca', + 0x78cb: b'\x11x\xcb', + 0x78cc: b'\x11x\xcc', + 0x78cd: b'\x11x\xcd', + 0x78ce: b'\x11x\xce', + 0x78cf: b'\x11x\xcf', + 0x78d0: b'\x11x\xd0', + 0x78d1: b'\x11x\xd1', + 0x78d2: b'\x11x\xd2', + 0x78d3: b'\x11x\xd3', + 0x78d4: b'\x11x\xd4', + 0x78d5: b'\x11x\xd5', + 0x78d6: b'\x11x\xd6', + 0x78d7: b'\x11x\xd7', + 0x78d8: b'\x11x\xd8', + 0x78d9: b'\x11x\xd9', + 0x78da: b'\x11x\xda', + 0x78db: b'\x11x\xdb', + 0x78dc: b'\x11x\xdc', + 0x78dd: b'\x11x\xdd', + 0x78de: b'\x11x\xde', + 0x78df: b'\x11x\xdf', + 0x78e0: b'\x11x\xe0', + 0x78e1: b'\x11x\xe1', + 0x78e2: b'\x11x\xe2', + 0x78e3: b'\x11x\xe3', + 0x78e4: b'\x11x\xe4', + 0x78e5: b'\x11x\xe5', + 0x78e6: b'\x11x\xe6', + 0x78e7: b'\x11x\xe7', + 0x78e8: b'\x11x\xe8', + 0x78e9: b'\x11x\xe9', + 0x78ea: b'\x11x\xea', + 0x78eb: b'\x11x\xeb', + 0x78ec: b'\x11x\xec', + 0x78ed: b'\x11x\xed', + 0x78ee: b'\x11x\xee', + 0x78ef: b'\x11x\xef', + 0x78f0: b'\x11x\xf0', + 0x78f1: b'\x11x\xf1', + 0x78f2: b'\x11x\xf2', + 0x78f3: b'\x11x\xf3', + 0x78f4: b'\x11x\xf4', + 0x78f5: b'\x11x\xf5', + 0x78f6: b'\x11x\xf6', + 0x78f7: b'\x11x\xf7', + 0x78f8: b'\x11x\xf8', + 0x78f9: b'\x11x\xf9', + 0x78fa: b'\x11x\xfa', + 0x78fb: b'\x11x\xfb', + 0x78fc: b'\x11x\xfc', + 0x78fd: b'\x11x\xfd', + 0x78fe: b'\x11x\xfe', + 0x78ff: b'\x11x\xff', + 0x7900: b'\x11y\x00', + 0x7901: b'\x11y\x01', + 0x7902: b'\x11y\x02', + 0x7903: b'\x11y\x03', + 0x7904: b'\x11y\x04', + 0x7905: b'\x11y\x05', + 0x7906: b'\x11y\x06', + 0x7907: b'\x11y\x07', + 0x7908: b'\x11y\x08', + 0x7909: b'\x11y\t', + 0x790a: b'\x11y\n', + 0x790b: b'\x11y\x0b', + 0x790c: b'\x11y\x0c', + 0x790d: b'\x11y\r', + 0x790e: b'\x11y\x0e', + 0x790f: b'\x11y\x0f', + 0x7910: b'\x11y\x10', + 0x7911: b'\x11y\x11', + 0x7912: b'\x11y\x12', + 0x7913: b'\x11y\x13', + 0x7914: b'\x11y\x14', + 0x7915: b'\x11y\x15', + 0x7916: b'\x11y\x16', + 0x7917: b'\x11y\x17', + 0x7918: b'\x11y\x18', + 0x7919: b'\x11y\x19', + 0x791a: b'\x11y\x1a', + 0x791b: b'\x11y\x1b', + 0x791c: b'\x11y\x1c', + 0x791d: b'\x11y\x1d', + 0x791e: b'\x11y\x1e', + 0x791f: b'\x11y\x1f', + 0x7920: b'\x11y ', + 0x7921: b'\x11y!', + 0x7922: b'\x11y"', + 0x7923: b'\x11y#', + 0x7924: b'\x11y$', + 0x7925: b'\x11y%', + 0x7926: b'\x11y&', + 0x7927: b"\x11y'", + 0x7928: b'\x11y(', + 0x7929: b'\x11y)', + 0x792a: b'\x11y*', + 0x792b: b'\x11y+', + 0x792c: b'\x11y,', + 0x792d: b'\x11y-', + 0x792e: b'\x11y.', + 0x792f: b'\x11y/', + 0x7930: b'\x11y0', + 0x7931: b'\x11y1', + 0x7932: b'\x11y2', + 0x7933: b'\x11y3', + 0x7934: b'\x11y4', + 0x7935: b'\x11y5', + 0x7936: b'\x11y6', + 0x7937: b'\x11y7', + 0x7938: b'\x11y8', + 0x7939: b'\x11y9', + 0x793a: b'\x11y:', + 0x793b: b'\x11y;', + 0x793c: b'\x11y<', + 0x793d: b'\x11y=', + 0x793e: b'\x11y>', + 0x793f: b'\x11y?', + 0x7940: b'\x11y@', + 0x7941: b'\x11yA', + 0x7942: b'\x11yB', + 0x7943: b'\x11yC', + 0x7944: b'\x11yD', + 0x7945: b'\x11yE', + 0x7946: b'\x11yF', + 0x7947: b'\x11yG', + 0x7948: b'\x11yH', + 0x7949: b'\x11yI', + 0x794a: b'\x11yJ', + 0x794b: b'\x11yK', + 0x794c: b'\x11yL', + 0x794d: b'\x11yM', + 0x794e: b'\x11yN', + 0x794f: b'\x11yO', + 0x7950: b'\x11yP', + 0x7951: b'\x11yQ', + 0x7952: b'\x11yR', + 0x7953: b'\x11yS', + 0x7954: b'\x11yT', + 0x7955: b'\x11yU', + 0x7956: b'\x11yV', + 0x7957: b'\x11yW', + 0x7958: b'\x11yX', + 0x7959: b'\x11yY', + 0x795a: b'\x11yZ', + 0x795b: b'\x11y[', + 0x795c: b'\x11y\\', + 0x795d: b'\x11y]', + 0x795e: b'\x11y^', + 0x795f: b'\x11y_', + 0x7960: b'\x11y`', + 0x7961: b'\x11ya', + 0x7962: b'\x11yb', + 0x7963: b'\x11yc', + 0x7964: b'\x11yd', + 0x7965: b'\x11ye', + 0x7966: b'\x11yf', + 0x7967: b'\x11yg', + 0x7968: b'\x11yh', + 0x7969: b'\x11yi', + 0x796a: b'\x11yj', + 0x796b: b'\x11yk', + 0x796c: b'\x11yl', + 0x796d: b'\x11ym', + 0x796e: b'\x11yn', + 0x796f: b'\x11yo', + 0x7970: b'\x11yp', + 0x7971: b'\x11yq', + 0x7972: b'\x11yr', + 0x7973: b'\x11ys', + 0x7974: b'\x11yt', + 0x7975: b'\x11yu', + 0x7976: b'\x11yv', + 0x7977: b'\x11yw', + 0x7978: b'\x11yx', + 0x7979: b'\x11yy', + 0x797a: b'\x11yz', + 0x797b: b'\x11y{', + 0x797c: b'\x11y|', + 0x797d: b'\x11y}', + 0x797e: b'\x11y~', + 0x797f: b'\x11y\x7f', + 0x7980: b'\x11y\x80', + 0x7981: b'\x11y\x81', + 0x7982: b'\x11y\x82', + 0x7983: b'\x11y\x83', + 0x7984: b'\x11y\x84', + 0x7985: b'\x11y\x85', + 0x7986: b'\x11y\x86', + 0x7987: b'\x11y\x87', + 0x7988: b'\x11y\x88', + 0x7989: b'\x11y\x89', + 0x798a: b'\x11y\x8a', + 0x798b: b'\x11y\x8b', + 0x798c: b'\x11y\x8c', + 0x798d: b'\x11y\x8d', + 0x798e: b'\x11y\x8e', + 0x798f: b'\x11y\x8f', + 0x7990: b'\x11y\x90', + 0x7991: b'\x11y\x91', + 0x7992: b'\x11y\x92', + 0x7993: b'\x11y\x93', + 0x7994: b'\x11y\x94', + 0x7995: b'\x11y\x95', + 0x7996: b'\x11y\x96', + 0x7997: b'\x11y\x97', + 0x7998: b'\x11y\x98', + 0x7999: b'\x11y\x99', + 0x799a: b'\x11y\x9a', + 0x799b: b'\x11y\x9b', + 0x799c: b'\x11y\x9c', + 0x799d: b'\x11y\x9d', + 0x799e: b'\x11y\x9e', + 0x799f: b'\x11y\x9f', + 0x79a0: b'\x11y\xa0', + 0x79a1: b'\x11y\xa1', + 0x79a2: b'\x11y\xa2', + 0x79a3: b'\x11y\xa3', + 0x79a4: b'\x11y\xa4', + 0x79a5: b'\x11y\xa5', + 0x79a6: b'\x11y\xa6', + 0x79a7: b'\x11y\xa7', + 0x79a8: b'\x11y\xa8', + 0x79a9: b'\x11y\xa9', + 0x79aa: b'\x11y\xaa', + 0x79ab: b'\x11y\xab', + 0x79ac: b'\x11y\xac', + 0x79ad: b'\x11y\xad', + 0x79ae: b'\x11y\xae', + 0x79af: b'\x11y\xaf', + 0x79b0: b'\x11y\xb0', + 0x79b1: b'\x11y\xb1', + 0x79b2: b'\x11y\xb2', + 0x79b3: b'\x11y\xb3', + 0x79b4: b'\x11y\xb4', + 0x79b5: b'\x11y\xb5', + 0x79b6: b'\x11y\xb6', + 0x79b7: b'\x11y\xb7', + 0x79b8: b'\x11y\xb8', + 0x79b9: b'\x11y\xb9', + 0x79ba: b'\x11y\xba', + 0x79bb: b'\x11y\xbb', + 0x79bc: b'\x11y\xbc', + 0x79bd: b'\x11y\xbd', + 0x79be: b'\x11y\xbe', + 0x79bf: b'\x11y\xbf', + 0x79c0: b'\x11y\xc0', + 0x79c1: b'\x11y\xc1', + 0x79c2: b'\x11y\xc2', + 0x79c3: b'\x11y\xc3', + 0x79c4: b'\x11y\xc4', + 0x79c5: b'\x11y\xc5', + 0x79c6: b'\x11y\xc6', + 0x79c7: b'\x11y\xc7', + 0x79c8: b'\x11y\xc8', + 0x79c9: b'\x11y\xc9', + 0x79ca: b'\x11y\xca', + 0x79cb: b'\x11y\xcb', + 0x79cc: b'\x11y\xcc', + 0x79cd: b'\x11y\xcd', + 0x79ce: b'\x11y\xce', + 0x79cf: b'\x11y\xcf', + 0x79d0: b'\x11y\xd0', + 0x79d1: b'\x11y\xd1', + 0x79d2: b'\x11y\xd2', + 0x79d3: b'\x11y\xd3', + 0x79d4: b'\x11y\xd4', + 0x79d5: b'\x11y\xd5', + 0x79d6: b'\x11y\xd6', + 0x79d7: b'\x11y\xd7', + 0x79d8: b'\x11y\xd8', + 0x79d9: b'\x11y\xd9', + 0x79da: b'\x11y\xda', + 0x79db: b'\x11y\xdb', + 0x79dc: b'\x11y\xdc', + 0x79dd: b'\x11y\xdd', + 0x79de: b'\x11y\xde', + 0x79df: b'\x11y\xdf', + 0x79e0: b'\x11y\xe0', + 0x79e1: b'\x11y\xe1', + 0x79e2: b'\x11y\xe2', + 0x79e3: b'\x11y\xe3', + 0x79e4: b'\x11y\xe4', + 0x79e5: b'\x11y\xe5', + 0x79e6: b'\x11y\xe6', + 0x79e7: b'\x11y\xe7', + 0x79e8: b'\x11y\xe8', + 0x79e9: b'\x11y\xe9', + 0x79ea: b'\x11y\xea', + 0x79eb: b'\x11y\xeb', + 0x79ec: b'\x11y\xec', + 0x79ed: b'\x11y\xed', + 0x79ee: b'\x11y\xee', + 0x79ef: b'\x11y\xef', + 0x79f0: b'\x11y\xf0', + 0x79f1: b'\x11y\xf1', + 0x79f2: b'\x11y\xf2', + 0x79f3: b'\x11y\xf3', + 0x79f4: b'\x11y\xf4', + 0x79f5: b'\x11y\xf5', + 0x79f6: b'\x11y\xf6', + 0x79f7: b'\x11y\xf7', + 0x79f8: b'\x11y\xf8', + 0x79f9: b'\x11y\xf9', + 0x79fa: b'\x11y\xfa', + 0x79fb: b'\x11y\xfb', + 0x79fc: b'\x11y\xfc', + 0x79fd: b'\x11y\xfd', + 0x79fe: b'\x11y\xfe', + 0x79ff: b'\x11y\xff', + 0x7a00: b'\x11z\x00', + 0x7a01: b'\x11z\x01', + 0x7a02: b'\x11z\x02', + 0x7a03: b'\x11z\x03', + 0x7a04: b'\x11z\x04', + 0x7a05: b'\x11z\x05', + 0x7a06: b'\x11z\x06', + 0x7a07: b'\x11z\x07', + 0x7a08: b'\x11z\x08', + 0x7a09: b'\x11z\t', + 0x7a0a: b'\x11z\n', + 0x7a0b: b'\x11z\x0b', + 0x7a0c: b'\x11z\x0c', + 0x7a0d: b'\x11z\r', + 0x7a0e: b'\x11z\x0e', + 0x7a0f: b'\x11z\x0f', + 0x7a10: b'\x11z\x10', + 0x7a11: b'\x11z\x11', + 0x7a12: b'\x11z\x12', + 0x7a13: b'\x11z\x13', + 0x7a14: b'\x11z\x14', + 0x7a15: b'\x11z\x15', + 0x7a16: b'\x11z\x16', + 0x7a17: b'\x11z\x17', + 0x7a18: b'\x11z\x18', + 0x7a19: b'\x11z\x19', + 0x7a1a: b'\x11z\x1a', + 0x7a1b: b'\x11z\x1b', + 0x7a1c: b'\x11z\x1c', + 0x7a1d: b'\x11z\x1d', + 0x7a1e: b'\x11z\x1e', + 0x7a1f: b'\x11z\x1f', + 0x7a20: b'\x11z ', + 0x7a21: b'\x11z!', + 0x7a22: b'\x11z"', + 0x7a23: b'\x11z#', + 0x7a24: b'\x11z$', + 0x7a25: b'\x11z%', + 0x7a26: b'\x11z&', + 0x7a27: b"\x11z'", + 0x7a28: b'\x11z(', + 0x7a29: b'\x11z)', + 0x7a2a: b'\x11z*', + 0x7a2b: b'\x11z+', + 0x7a2c: b'\x11z,', + 0x7a2d: b'\x11z-', + 0x7a2e: b'\x11z.', + 0x7a2f: b'\x11z/', + 0x7a30: b'\x11z0', + 0x7a31: b'\x11z1', + 0x7a32: b'\x11z2', + 0x7a33: b'\x11z3', + 0x7a34: b'\x11z4', + 0x7a35: b'\x11z5', + 0x7a36: b'\x11z6', + 0x7a37: b'\x11z7', + 0x7a38: b'\x11z8', + 0x7a39: b'\x11z9', + 0x7a3a: b'\x11z:', + 0x7a3b: b'\x11z;', + 0x7a3c: b'\x11z<', + 0x7a3d: b'\x11z=', + 0x7a3e: b'\x11z>', + 0x7a3f: b'\x11z?', + 0x7a40: b'\x11z@', + 0x7a41: b'\x11zA', + 0x7a42: b'\x11zB', + 0x7a43: b'\x11zC', + 0x7a44: b'\x11zD', + 0x7a45: b'\x11zE', + 0x7a46: b'\x11zF', + 0x7a47: b'\x11zG', + 0x7a48: b'\x11zH', + 0x7a49: b'\x11zI', + 0x7a4a: b'\x11zJ', + 0x7a4b: b'\x11zK', + 0x7a4c: b'\x11zL', + 0x7a4d: b'\x11zM', + 0x7a4e: b'\x11zN', + 0x7a4f: b'\x11zO', + 0x7a50: b'\x11zP', + 0x7a51: b'\x11zQ', + 0x7a52: b'\x11zR', + 0x7a53: b'\x11zS', + 0x7a54: b'\x11zT', + 0x7a55: b'\x11zU', + 0x7a56: b'\x11zV', + 0x7a57: b'\x11zW', + 0x7a58: b'\x11zX', + 0x7a59: b'\x11zY', + 0x7a5a: b'\x11zZ', + 0x7a5b: b'\x11z[', + 0x7a5c: b'\x11z\\', + 0x7a5d: b'\x11z]', + 0x7a5e: b'\x11z^', + 0x7a5f: b'\x11z_', + 0x7a60: b'\x11z`', + 0x7a61: b'\x11za', + 0x7a62: b'\x11zb', + 0x7a63: b'\x11zc', + 0x7a64: b'\x11zd', + 0x7a65: b'\x11ze', + 0x7a66: b'\x11zf', + 0x7a67: b'\x11zg', + 0x7a68: b'\x11zh', + 0x7a69: b'\x11zi', + 0x7a6a: b'\x11zj', + 0x7a6b: b'\x11zk', + 0x7a6c: b'\x11zl', + 0x7a6d: b'\x11zm', + 0x7a6e: b'\x11zn', + 0x7a6f: b'\x11zo', + 0x7a70: b'\x11zp', + 0x7a71: b'\x11zq', + 0x7a72: b'\x11zr', + 0x7a73: b'\x11zs', + 0x7a74: b'\x11zt', + 0x7a75: b'\x11zu', + 0x7a76: b'\x11zv', + 0x7a77: b'\x11zw', + 0x7a78: b'\x11zx', + 0x7a79: b'\x11zy', + 0x7a7a: b'\x11zz', + 0x7a7b: b'\x11z{', + 0x7a7c: b'\x11z|', + 0x7a7d: b'\x11z}', + 0x7a7e: b'\x11z~', + 0x7a7f: b'\x11z\x7f', + 0x7a80: b'\x11z\x80', + 0x7a81: b'\x11z\x81', + 0x7a82: b'\x11z\x82', + 0x7a83: b'\x11z\x83', + 0x7a84: b'\x11z\x84', + 0x7a85: b'\x11z\x85', + 0x7a86: b'\x11z\x86', + 0x7a87: b'\x11z\x87', + 0x7a88: b'\x11z\x88', + 0x7a89: b'\x11z\x89', + 0x7a8a: b'\x11z\x8a', + 0x7a8b: b'\x11z\x8b', + 0x7a8c: b'\x11z\x8c', + 0x7a8d: b'\x11z\x8d', + 0x7a8e: b'\x11z\x8e', + 0x7a8f: b'\x11z\x8f', + 0x7a90: b'\x11z\x90', + 0x7a91: b'\x11z\x91', + 0x7a92: b'\x11z\x92', + 0x7a93: b'\x11z\x93', + 0x7a94: b'\x11z\x94', + 0x7a95: b'\x11z\x95', + 0x7a96: b'\x11z\x96', + 0x7a97: b'\x11z\x97', + 0x7a98: b'\x11z\x98', + 0x7a99: b'\x11z\x99', + 0x7a9a: b'\x11z\x9a', + 0x7a9b: b'\x11z\x9b', + 0x7a9c: b'\x11z\x9c', + 0x7a9d: b'\x11z\x9d', + 0x7a9e: b'\x11z\x9e', + 0x7a9f: b'\x11z\x9f', + 0x7aa0: b'\x11z\xa0', + 0x7aa1: b'\x11z\xa1', + 0x7aa2: b'\x11z\xa2', + 0x7aa3: b'\x11z\xa3', + 0x7aa4: b'\x11z\xa4', + 0x7aa5: b'\x11z\xa5', + 0x7aa6: b'\x11z\xa6', + 0x7aa7: b'\x11z\xa7', + 0x7aa8: b'\x11z\xa8', + 0x7aa9: b'\x11z\xa9', + 0x7aaa: b'\x11z\xaa', + 0x7aab: b'\x11z\xab', + 0x7aac: b'\x11z\xac', + 0x7aad: b'\x11z\xad', + 0x7aae: b'\x11z\xae', + 0x7aaf: b'\x11z\xaf', + 0x7ab0: b'\x11z\xb0', + 0x7ab1: b'\x11z\xb1', + 0x7ab2: b'\x11z\xb2', + 0x7ab3: b'\x11z\xb3', + 0x7ab4: b'\x11z\xb4', + 0x7ab5: b'\x11z\xb5', + 0x7ab6: b'\x11z\xb6', + 0x7ab7: b'\x11z\xb7', + 0x7ab8: b'\x11z\xb8', + 0x7ab9: b'\x11z\xb9', + 0x7aba: b'\x11z\xba', + 0x7abb: b'\x11z\xbb', + 0x7abc: b'\x11z\xbc', + 0x7abd: b'\x11z\xbd', + 0x7abe: b'\x11z\xbe', + 0x7abf: b'\x11z\xbf', + 0x7ac0: b'\x11z\xc0', + 0x7ac1: b'\x11z\xc1', + 0x7ac2: b'\x11z\xc2', + 0x7ac3: b'\x11z\xc3', + 0x7ac4: b'\x11z\xc4', + 0x7ac5: b'\x11z\xc5', + 0x7ac6: b'\x11z\xc6', + 0x7ac7: b'\x11z\xc7', + 0x7ac8: b'\x11z\xc8', + 0x7ac9: b'\x11z\xc9', + 0x7aca: b'\x11z\xca', + 0x7acb: b'\x11z\xcb', + 0x7acc: b'\x11z\xcc', + 0x7acd: b'\x11z\xcd', + 0x7ace: b'\x11z\xce', + 0x7acf: b'\x11z\xcf', + 0x7ad0: b'\x11z\xd0', + 0x7ad1: b'\x11z\xd1', + 0x7ad2: b'\x11z\xd2', + 0x7ad3: b'\x11z\xd3', + 0x7ad4: b'\x11z\xd4', + 0x7ad5: b'\x11z\xd5', + 0x7ad6: b'\x11z\xd6', + 0x7ad7: b'\x11z\xd7', + 0x7ad8: b'\x11z\xd8', + 0x7ad9: b'\x11z\xd9', + 0x7ada: b'\x11z\xda', + 0x7adb: b'\x11z\xdb', + 0x7adc: b'\x11z\xdc', + 0x7add: b'\x11z\xdd', + 0x7ade: b'\x11z\xde', + 0x7adf: b'\x11z\xdf', + 0x7ae0: b'\x11z\xe0', + 0x7ae1: b'\x11z\xe1', + 0x7ae2: b'\x11z\xe2', + 0x7ae3: b'\x11z\xe3', + 0x7ae4: b'\x11z\xe4', + 0x7ae5: b'\x11z\xe5', + 0x7ae6: b'\x11z\xe6', + 0x7ae7: b'\x11z\xe7', + 0x7ae8: b'\x11z\xe8', + 0x7ae9: b'\x11z\xe9', + 0x7aea: b'\x11z\xea', + 0x7aeb: b'\x11z\xeb', + 0x7aec: b'\x11z\xec', + 0x7aed: b'\x11z\xed', + 0x7aee: b'\x11z\xee', + 0x7aef: b'\x11z\xef', + 0x7af0: b'\x11z\xf0', + 0x7af1: b'\x11z\xf1', + 0x7af2: b'\x11z\xf2', + 0x7af3: b'\x11z\xf3', + 0x7af4: b'\x11z\xf4', + 0x7af5: b'\x11z\xf5', + 0x7af6: b'\x11z\xf6', + 0x7af7: b'\x11z\xf7', + 0x7af8: b'\x11z\xf8', + 0x7af9: b'\x11z\xf9', + 0x7afa: b'\x11z\xfa', + 0x7afb: b'\x11z\xfb', + 0x7afc: b'\x11z\xfc', + 0x7afd: b'\x11z\xfd', + 0x7afe: b'\x11z\xfe', + 0x7aff: b'\x11z\xff', + 0x7b00: b'\x11{\x00', + 0x7b01: b'\x11{\x01', + 0x7b02: b'\x11{\x02', + 0x7b03: b'\x11{\x03', + 0x7b04: b'\x11{\x04', + 0x7b05: b'\x11{\x05', + 0x7b06: b'\x11{\x06', + 0x7b07: b'\x11{\x07', + 0x7b08: b'\x11{\x08', + 0x7b09: b'\x11{\t', + 0x7b0a: b'\x11{\n', + 0x7b0b: b'\x11{\x0b', + 0x7b0c: b'\x11{\x0c', + 0x7b0d: b'\x11{\r', + 0x7b0e: b'\x11{\x0e', + 0x7b0f: b'\x11{\x0f', + 0x7b10: b'\x11{\x10', + 0x7b11: b'\x11{\x11', + 0x7b12: b'\x11{\x12', + 0x7b13: b'\x11{\x13', + 0x7b14: b'\x11{\x14', + 0x7b15: b'\x11{\x15', + 0x7b16: b'\x11{\x16', + 0x7b17: b'\x11{\x17', + 0x7b18: b'\x11{\x18', + 0x7b19: b'\x11{\x19', + 0x7b1a: b'\x11{\x1a', + 0x7b1b: b'\x11{\x1b', + 0x7b1c: b'\x11{\x1c', + 0x7b1d: b'\x11{\x1d', + 0x7b1e: b'\x11{\x1e', + 0x7b1f: b'\x11{\x1f', + 0x7b20: b'\x11{ ', + 0x7b21: b'\x11{!', + 0x7b22: b'\x11{"', + 0x7b23: b'\x11{#', + 0x7b24: b'\x11{$', + 0x7b25: b'\x11{%', + 0x7b26: b'\x11{&', + 0x7b27: b"\x11{'", + 0x7b28: b'\x11{(', + 0x7b29: b'\x11{)', + 0x7b2a: b'\x11{*', + 0x7b2b: b'\x11{+', + 0x7b2c: b'\x11{,', + 0x7b2d: b'\x11{-', + 0x7b2e: b'\x11{.', + 0x7b2f: b'\x11{/', + 0x7b30: b'\x11{0', + 0x7b31: b'\x11{1', + 0x7b32: b'\x11{2', + 0x7b33: b'\x11{3', + 0x7b34: b'\x11{4', + 0x7b35: b'\x11{5', + 0x7b36: b'\x11{6', + 0x7b37: b'\x11{7', + 0x7b38: b'\x11{8', + 0x7b39: b'\x11{9', + 0x7b3a: b'\x11{:', + 0x7b3b: b'\x11{;', + 0x7b3c: b'\x11{<', + 0x7b3d: b'\x11{=', + 0x7b3e: b'\x11{>', + 0x7b3f: b'\x11{?', + 0x7b40: b'\x11{@', + 0x7b41: b'\x11{A', + 0x7b42: b'\x11{B', + 0x7b43: b'\x11{C', + 0x7b44: b'\x11{D', + 0x7b45: b'\x11{E', + 0x7b46: b'\x11{F', + 0x7b47: b'\x11{G', + 0x7b48: b'\x11{H', + 0x7b49: b'\x11{I', + 0x7b4a: b'\x11{J', + 0x7b4b: b'\x11{K', + 0x7b4c: b'\x11{L', + 0x7b4d: b'\x11{M', + 0x7b4e: b'\x11{N', + 0x7b4f: b'\x11{O', + 0x7b50: b'\x11{P', + 0x7b51: b'\x11{Q', + 0x7b52: b'\x11{R', + 0x7b53: b'\x11{S', + 0x7b54: b'\x11{T', + 0x7b55: b'\x11{U', + 0x7b56: b'\x11{V', + 0x7b57: b'\x11{W', + 0x7b58: b'\x11{X', + 0x7b59: b'\x11{Y', + 0x7b5a: b'\x11{Z', + 0x7b5b: b'\x11{[', + 0x7b5c: b'\x11{\\', + 0x7b5d: b'\x11{]', + 0x7b5e: b'\x11{^', + 0x7b5f: b'\x11{_', + 0x7b60: b'\x11{`', + 0x7b61: b'\x11{a', + 0x7b62: b'\x11{b', + 0x7b63: b'\x11{c', + 0x7b64: b'\x11{d', + 0x7b65: b'\x11{e', + 0x7b66: b'\x11{f', + 0x7b67: b'\x11{g', + 0x7b68: b'\x11{h', + 0x7b69: b'\x11{i', + 0x7b6a: b'\x11{j', + 0x7b6b: b'\x11{k', + 0x7b6c: b'\x11{l', + 0x7b6d: b'\x11{m', + 0x7b6e: b'\x11{n', + 0x7b6f: b'\x11{o', + 0x7b70: b'\x11{p', + 0x7b71: b'\x11{q', + 0x7b72: b'\x11{r', + 0x7b73: b'\x11{s', + 0x7b74: b'\x11{t', + 0x7b75: b'\x11{u', + 0x7b76: b'\x11{v', + 0x7b77: b'\x11{w', + 0x7b78: b'\x11{x', + 0x7b79: b'\x11{y', + 0x7b7a: b'\x11{z', + 0x7b7b: b'\x11{{', + 0x7b7c: b'\x11{|', + 0x7b7d: b'\x11{}', + 0x7b7e: b'\x11{~', + 0x7b7f: b'\x11{\x7f', + 0x7b80: b'\x11{\x80', + 0x7b81: b'\x11{\x81', + 0x7b82: b'\x11{\x82', + 0x7b83: b'\x11{\x83', + 0x7b84: b'\x11{\x84', + 0x7b85: b'\x11{\x85', + 0x7b86: b'\x11{\x86', + 0x7b87: b'\x11{\x87', + 0x7b88: b'\x11{\x88', + 0x7b89: b'\x11{\x89', + 0x7b8a: b'\x11{\x8a', + 0x7b8b: b'\x11{\x8b', + 0x7b8c: b'\x11{\x8c', + 0x7b8d: b'\x11{\x8d', + 0x7b8e: b'\x11{\x8e', + 0x7b8f: b'\x11{\x8f', + 0x7b90: b'\x11{\x90', + 0x7b91: b'\x11{\x91', + 0x7b92: b'\x11{\x92', + 0x7b93: b'\x11{\x93', + 0x7b94: b'\x11{\x94', + 0x7b95: b'\x11{\x95', + 0x7b96: b'\x11{\x96', + 0x7b97: b'\x11{\x97', + 0x7b98: b'\x11{\x98', + 0x7b99: b'\x11{\x99', + 0x7b9a: b'\x11{\x9a', + 0x7b9b: b'\x11{\x9b', + 0x7b9c: b'\x11{\x9c', + 0x7b9d: b'\x11{\x9d', + 0x7b9e: b'\x11{\x9e', + 0x7b9f: b'\x11{\x9f', + 0x7ba0: b'\x11{\xa0', + 0x7ba1: b'\x11{\xa1', + 0x7ba2: b'\x11{\xa2', + 0x7ba3: b'\x11{\xa3', + 0x7ba4: b'\x11{\xa4', + 0x7ba5: b'\x11{\xa5', + 0x7ba6: b'\x11{\xa6', + 0x7ba7: b'\x11{\xa7', + 0x7ba8: b'\x11{\xa8', + 0x7ba9: b'\x11{\xa9', + 0x7baa: b'\x11{\xaa', + 0x7bab: b'\x11{\xab', + 0x7bac: b'\x11{\xac', + 0x7bad: b'\x11{\xad', + 0x7bae: b'\x11{\xae', + 0x7baf: b'\x11{\xaf', + 0x7bb0: b'\x11{\xb0', + 0x7bb1: b'\x11{\xb1', + 0x7bb2: b'\x11{\xb2', + 0x7bb3: b'\x11{\xb3', + 0x7bb4: b'\x11{\xb4', + 0x7bb5: b'\x11{\xb5', + 0x7bb6: b'\x11{\xb6', + 0x7bb7: b'\x11{\xb7', + 0x7bb8: b'\x11{\xb8', + 0x7bb9: b'\x11{\xb9', + 0x7bba: b'\x11{\xba', + 0x7bbb: b'\x11{\xbb', + 0x7bbc: b'\x11{\xbc', + 0x7bbd: b'\x11{\xbd', + 0x7bbe: b'\x11{\xbe', + 0x7bbf: b'\x11{\xbf', + 0x7bc0: b'\x11{\xc0', + 0x7bc1: b'\x11{\xc1', + 0x7bc2: b'\x11{\xc2', + 0x7bc3: b'\x11{\xc3', + 0x7bc4: b'\x11{\xc4', + 0x7bc5: b'\x11{\xc5', + 0x7bc6: b'\x11{\xc6', + 0x7bc7: b'\x11{\xc7', + 0x7bc8: b'\x11{\xc8', + 0x7bc9: b'\x11{\xc9', + 0x7bca: b'\x11{\xca', + 0x7bcb: b'\x11{\xcb', + 0x7bcc: b'\x11{\xcc', + 0x7bcd: b'\x11{\xcd', + 0x7bce: b'\x11{\xce', + 0x7bcf: b'\x11{\xcf', + 0x7bd0: b'\x11{\xd0', + 0x7bd1: b'\x11{\xd1', + 0x7bd2: b'\x11{\xd2', + 0x7bd3: b'\x11{\xd3', + 0x7bd4: b'\x11{\xd4', + 0x7bd5: b'\x11{\xd5', + 0x7bd6: b'\x11{\xd6', + 0x7bd7: b'\x11{\xd7', + 0x7bd8: b'\x11{\xd8', + 0x7bd9: b'\x11{\xd9', + 0x7bda: b'\x11{\xda', + 0x7bdb: b'\x11{\xdb', + 0x7bdc: b'\x11{\xdc', + 0x7bdd: b'\x11{\xdd', + 0x7bde: b'\x11{\xde', + 0x7bdf: b'\x11{\xdf', + 0x7be0: b'\x11{\xe0', + 0x7be1: b'\x11{\xe1', + 0x7be2: b'\x11{\xe2', + 0x7be3: b'\x11{\xe3', + 0x7be4: b'\x11{\xe4', + 0x7be5: b'\x11{\xe5', + 0x7be6: b'\x11{\xe6', + 0x7be7: b'\x11{\xe7', + 0x7be8: b'\x11{\xe8', + 0x7be9: b'\x11{\xe9', + 0x7bea: b'\x11{\xea', + 0x7beb: b'\x11{\xeb', + 0x7bec: b'\x11{\xec', + 0x7bed: b'\x11{\xed', + 0x7bee: b'\x11{\xee', + 0x7bef: b'\x11{\xef', + 0x7bf0: b'\x11{\xf0', + 0x7bf1: b'\x11{\xf1', + 0x7bf2: b'\x11{\xf2', + 0x7bf3: b'\x11{\xf3', + 0x7bf4: b'\x11{\xf4', + 0x7bf5: b'\x11{\xf5', + 0x7bf6: b'\x11{\xf6', + 0x7bf7: b'\x11{\xf7', + 0x7bf8: b'\x11{\xf8', + 0x7bf9: b'\x11{\xf9', + 0x7bfa: b'\x11{\xfa', + 0x7bfb: b'\x11{\xfb', + 0x7bfc: b'\x11{\xfc', + 0x7bfd: b'\x11{\xfd', + 0x7bfe: b'\x11{\xfe', + 0x7bff: b'\x11{\xff', + 0x7c00: b'\x11|\x00', + 0x7c01: b'\x11|\x01', + 0x7c02: b'\x11|\x02', + 0x7c03: b'\x11|\x03', + 0x7c04: b'\x11|\x04', + 0x7c05: b'\x11|\x05', + 0x7c06: b'\x11|\x06', + 0x7c07: b'\x11|\x07', + 0x7c08: b'\x11|\x08', + 0x7c09: b'\x11|\t', + 0x7c0a: b'\x11|\n', + 0x7c0b: b'\x11|\x0b', + 0x7c0c: b'\x11|\x0c', + 0x7c0d: b'\x11|\r', + 0x7c0e: b'\x11|\x0e', + 0x7c0f: b'\x11|\x0f', + 0x7c10: b'\x11|\x10', + 0x7c11: b'\x11|\x11', + 0x7c12: b'\x11|\x12', + 0x7c13: b'\x11|\x13', + 0x7c14: b'\x11|\x14', + 0x7c15: b'\x11|\x15', + 0x7c16: b'\x11|\x16', + 0x7c17: b'\x11|\x17', + 0x7c18: b'\x11|\x18', + 0x7c19: b'\x11|\x19', + 0x7c1a: b'\x11|\x1a', + 0x7c1b: b'\x11|\x1b', + 0x7c1c: b'\x11|\x1c', + 0x7c1d: b'\x11|\x1d', + 0x7c1e: b'\x11|\x1e', + 0x7c1f: b'\x11|\x1f', + 0x7c20: b'\x11| ', + 0x7c21: b'\x11|!', + 0x7c22: b'\x11|"', + 0x7c23: b'\x11|#', + 0x7c24: b'\x11|$', + 0x7c25: b'\x11|%', + 0x7c26: b'\x11|&', + 0x7c27: b"\x11|'", + 0x7c28: b'\x11|(', + 0x7c29: b'\x11|)', + 0x7c2a: b'\x11|*', + 0x7c2b: b'\x11|+', + 0x7c2c: b'\x11|,', + 0x7c2d: b'\x11|-', + 0x7c2e: b'\x11|.', + 0x7c2f: b'\x11|/', + 0x7c30: b'\x11|0', + 0x7c31: b'\x11|1', + 0x7c32: b'\x11|2', + 0x7c33: b'\x11|3', + 0x7c34: b'\x11|4', + 0x7c35: b'\x11|5', + 0x7c36: b'\x11|6', + 0x7c37: b'\x11|7', + 0x7c38: b'\x11|8', + 0x7c39: b'\x11|9', + 0x7c3a: b'\x11|:', + 0x7c3b: b'\x11|;', + 0x7c3c: b'\x11|<', + 0x7c3d: b'\x11|=', + 0x7c3e: b'\x11|>', + 0x7c3f: b'\x11|?', + 0x7c40: b'\x11|@', + 0x7c41: b'\x11|A', + 0x7c42: b'\x11|B', + 0x7c43: b'\x11|C', + 0x7c44: b'\x11|D', + 0x7c45: b'\x11|E', + 0x7c46: b'\x11|F', + 0x7c47: b'\x11|G', + 0x7c48: b'\x11|H', + 0x7c49: b'\x11|I', + 0x7c4a: b'\x11|J', + 0x7c4b: b'\x11|K', + 0x7c4c: b'\x11|L', + 0x7c4d: b'\x11|M', + 0x7c4e: b'\x11|N', + 0x7c4f: b'\x11|O', + 0x7c50: b'\x11|P', + 0x7c51: b'\x11|Q', + 0x7c52: b'\x11|R', + 0x7c53: b'\x11|S', + 0x7c54: b'\x11|T', + 0x7c55: b'\x11|U', + 0x7c56: b'\x11|V', + 0x7c57: b'\x11|W', + 0x7c58: b'\x11|X', + 0x7c59: b'\x11|Y', + 0x7c5a: b'\x11|Z', + 0x7c5b: b'\x11|[', + 0x7c5c: b'\x11|\\', + 0x7c5d: b'\x11|]', + 0x7c5e: b'\x11|^', + 0x7c5f: b'\x11|_', + 0x7c60: b'\x11|`', + 0x7c61: b'\x11|a', + 0x7c62: b'\x11|b', + 0x7c63: b'\x11|c', + 0x7c64: b'\x11|d', + 0x7c65: b'\x11|e', + 0x7c66: b'\x11|f', + 0x7c67: b'\x11|g', + 0x7c68: b'\x11|h', + 0x7c69: b'\x11|i', + 0x7c6a: b'\x11|j', + 0x7c6b: b'\x11|k', + 0x7c6c: b'\x11|l', + 0x7c6d: b'\x11|m', + 0x7c6e: b'\x11|n', + 0x7c6f: b'\x11|o', + 0x7c70: b'\x11|p', + 0x7c71: b'\x11|q', + 0x7c72: b'\x11|r', + 0x7c73: b'\x11|s', + 0x7c74: b'\x11|t', + 0x7c75: b'\x11|u', + 0x7c76: b'\x11|v', + 0x7c77: b'\x11|w', + 0x7c78: b'\x11|x', + 0x7c79: b'\x11|y', + 0x7c7a: b'\x11|z', + 0x7c7b: b'\x11|{', + 0x7c7c: b'\x11||', + 0x7c7d: b'\x11|}', + 0x7c7e: b'\x11|~', + 0x7c7f: b'\x11|\x7f', + 0x7c80: b'\x11|\x80', + 0x7c81: b'\x11|\x81', + 0x7c82: b'\x11|\x82', + 0x7c83: b'\x11|\x83', + 0x7c84: b'\x11|\x84', + 0x7c85: b'\x11|\x85', + 0x7c86: b'\x11|\x86', + 0x7c87: b'\x11|\x87', + 0x7c88: b'\x11|\x88', + 0x7c89: b'\x11|\x89', + 0x7c8a: b'\x11|\x8a', + 0x7c8b: b'\x11|\x8b', + 0x7c8c: b'\x11|\x8c', + 0x7c8d: b'\x11|\x8d', + 0x7c8e: b'\x11|\x8e', + 0x7c8f: b'\x11|\x8f', + 0x7c90: b'\x11|\x90', + 0x7c91: b'\x11|\x91', + 0x7c92: b'\x11|\x92', + 0x7c93: b'\x11|\x93', + 0x7c94: b'\x11|\x94', + 0x7c95: b'\x11|\x95', + 0x7c96: b'\x11|\x96', + 0x7c97: b'\x11|\x97', + 0x7c98: b'\x11|\x98', + 0x7c99: b'\x11|\x99', + 0x7c9a: b'\x11|\x9a', + 0x7c9b: b'\x11|\x9b', + 0x7c9c: b'\x11|\x9c', + 0x7c9d: b'\x11|\x9d', + 0x7c9e: b'\x11|\x9e', + 0x7c9f: b'\x11|\x9f', + 0x7ca0: b'\x11|\xa0', + 0x7ca1: b'\x11|\xa1', + 0x7ca2: b'\x11|\xa2', + 0x7ca3: b'\x11|\xa3', + 0x7ca4: b'\x11|\xa4', + 0x7ca5: b'\x11|\xa5', + 0x7ca6: b'\x11|\xa6', + 0x7ca7: b'\x11|\xa7', + 0x7ca8: b'\x11|\xa8', + 0x7ca9: b'\x11|\xa9', + 0x7caa: b'\x11|\xaa', + 0x7cab: b'\x11|\xab', + 0x7cac: b'\x11|\xac', + 0x7cad: b'\x11|\xad', + 0x7cae: b'\x11|\xae', + 0x7caf: b'\x11|\xaf', + 0x7cb0: b'\x11|\xb0', + 0x7cb1: b'\x11|\xb1', + 0x7cb2: b'\x11|\xb2', + 0x7cb3: b'\x11|\xb3', + 0x7cb4: b'\x11|\xb4', + 0x7cb5: b'\x11|\xb5', + 0x7cb6: b'\x11|\xb6', + 0x7cb7: b'\x11|\xb7', + 0x7cb8: b'\x11|\xb8', + 0x7cb9: b'\x11|\xb9', + 0x7cba: b'\x11|\xba', + 0x7cbb: b'\x11|\xbb', + 0x7cbc: b'\x11|\xbc', + 0x7cbd: b'\x11|\xbd', + 0x7cbe: b'\x11|\xbe', + 0x7cbf: b'\x11|\xbf', + 0x7cc0: b'\x11|\xc0', + 0x7cc1: b'\x11|\xc1', + 0x7cc2: b'\x11|\xc2', + 0x7cc3: b'\x11|\xc3', + 0x7cc4: b'\x11|\xc4', + 0x7cc5: b'\x11|\xc5', + 0x7cc6: b'\x11|\xc6', + 0x7cc7: b'\x11|\xc7', + 0x7cc8: b'\x11|\xc8', + 0x7cc9: b'\x11|\xc9', + 0x7cca: b'\x11|\xca', + 0x7ccb: b'\x11|\xcb', + 0x7ccc: b'\x11|\xcc', + 0x7ccd: b'\x11|\xcd', + 0x7cce: b'\x11|\xce', + 0x7ccf: b'\x11|\xcf', + 0x7cd0: b'\x11|\xd0', + 0x7cd1: b'\x11|\xd1', + 0x7cd2: b'\x11|\xd2', + 0x7cd3: b'\x11|\xd3', + 0x7cd4: b'\x11|\xd4', + 0x7cd5: b'\x11|\xd5', + 0x7cd6: b'\x11|\xd6', + 0x7cd7: b'\x11|\xd7', + 0x7cd8: b'\x11|\xd8', + 0x7cd9: b'\x11|\xd9', + 0x7cda: b'\x11|\xda', + 0x7cdb: b'\x11|\xdb', + 0x7cdc: b'\x11|\xdc', + 0x7cdd: b'\x11|\xdd', + 0x7cde: b'\x11|\xde', + 0x7cdf: b'\x11|\xdf', + 0x7ce0: b'\x11|\xe0', + 0x7ce1: b'\x11|\xe1', + 0x7ce2: b'\x11|\xe2', + 0x7ce3: b'\x11|\xe3', + 0x7ce4: b'\x11|\xe4', + 0x7ce5: b'\x11|\xe5', + 0x7ce6: b'\x11|\xe6', + 0x7ce7: b'\x11|\xe7', + 0x7ce8: b'\x11|\xe8', + 0x7ce9: b'\x11|\xe9', + 0x7cea: b'\x11|\xea', + 0x7ceb: b'\x11|\xeb', + 0x7cec: b'\x11|\xec', + 0x7ced: b'\x11|\xed', + 0x7cee: b'\x11|\xee', + 0x7cef: b'\x11|\xef', + 0x7cf0: b'\x11|\xf0', + 0x7cf1: b'\x11|\xf1', + 0x7cf2: b'\x11|\xf2', + 0x7cf3: b'\x11|\xf3', + 0x7cf4: b'\x11|\xf4', + 0x7cf5: b'\x11|\xf5', + 0x7cf6: b'\x11|\xf6', + 0x7cf7: b'\x11|\xf7', + 0x7cf8: b'\x11|\xf8', + 0x7cf9: b'\x11|\xf9', + 0x7cfa: b'\x11|\xfa', + 0x7cfb: b'\x11|\xfb', + 0x7cfc: b'\x11|\xfc', + 0x7cfd: b'\x11|\xfd', + 0x7cfe: b'\x11|\xfe', + 0x7cff: b'\x11|\xff', + 0x7d00: b'\x11}\x00', + 0x7d01: b'\x11}\x01', + 0x7d02: b'\x11}\x02', + 0x7d03: b'\x11}\x03', + 0x7d04: b'\x11}\x04', + 0x7d05: b'\x11}\x05', + 0x7d06: b'\x11}\x06', + 0x7d07: b'\x11}\x07', + 0x7d08: b'\x11}\x08', + 0x7d09: b'\x11}\t', + 0x7d0a: b'\x11}\n', + 0x7d0b: b'\x11}\x0b', + 0x7d0c: b'\x11}\x0c', + 0x7d0d: b'\x11}\r', + 0x7d0e: b'\x11}\x0e', + 0x7d0f: b'\x11}\x0f', + 0x7d10: b'\x11}\x10', + 0x7d11: b'\x11}\x11', + 0x7d12: b'\x11}\x12', + 0x7d13: b'\x11}\x13', + 0x7d14: b'\x11}\x14', + 0x7d15: b'\x11}\x15', + 0x7d16: b'\x11}\x16', + 0x7d17: b'\x11}\x17', + 0x7d18: b'\x11}\x18', + 0x7d19: b'\x11}\x19', + 0x7d1a: b'\x11}\x1a', + 0x7d1b: b'\x11}\x1b', + 0x7d1c: b'\x11}\x1c', + 0x7d1d: b'\x11}\x1d', + 0x7d1e: b'\x11}\x1e', + 0x7d1f: b'\x11}\x1f', + 0x7d20: b'\x11} ', + 0x7d21: b'\x11}!', + 0x7d22: b'\x11}"', + 0x7d23: b'\x11}#', + 0x7d24: b'\x11}$', + 0x7d25: b'\x11}%', + 0x7d26: b'\x11}&', + 0x7d27: b"\x11}'", + 0x7d28: b'\x11}(', + 0x7d29: b'\x11})', + 0x7d2a: b'\x11}*', + 0x7d2b: b'\x11}+', + 0x7d2c: b'\x11},', + 0x7d2d: b'\x11}-', + 0x7d2e: b'\x11}.', + 0x7d2f: b'\x11}/', + 0x7d30: b'\x11}0', + 0x7d31: b'\x11}1', + 0x7d32: b'\x11}2', + 0x7d33: b'\x11}3', + 0x7d34: b'\x11}4', + 0x7d35: b'\x11}5', + 0x7d36: b'\x11}6', + 0x7d37: b'\x11}7', + 0x7d38: b'\x11}8', + 0x7d39: b'\x11}9', + 0x7d3a: b'\x11}:', + 0x7d3b: b'\x11};', + 0x7d3c: b'\x11}<', + 0x7d3d: b'\x11}=', + 0x7d3e: b'\x11}>', + 0x7d3f: b'\x11}?', + 0x7d40: b'\x11}@', + 0x7d41: b'\x11}A', + 0x7d42: b'\x11}B', + 0x7d43: b'\x11}C', + 0x7d44: b'\x11}D', + 0x7d45: b'\x11}E', + 0x7d46: b'\x11}F', + 0x7d47: b'\x11}G', + 0x7d48: b'\x11}H', + 0x7d49: b'\x11}I', + 0x7d4a: b'\x11}J', + 0x7d4b: b'\x11}K', + 0x7d4c: b'\x11}L', + 0x7d4d: b'\x11}M', + 0x7d4e: b'\x11}N', + 0x7d4f: b'\x11}O', + 0x7d50: b'\x11}P', + 0x7d51: b'\x11}Q', + 0x7d52: b'\x11}R', + 0x7d53: b'\x11}S', + 0x7d54: b'\x11}T', + 0x7d55: b'\x11}U', + 0x7d56: b'\x11}V', + 0x7d57: b'\x11}W', + 0x7d58: b'\x11}X', + 0x7d59: b'\x11}Y', + 0x7d5a: b'\x11}Z', + 0x7d5b: b'\x11}[', + 0x7d5c: b'\x11}\\', + 0x7d5d: b'\x11}]', + 0x7d5e: b'\x11}^', + 0x7d5f: b'\x11}_', + 0x7d60: b'\x11}`', + 0x7d61: b'\x11}a', + 0x7d62: b'\x11}b', + 0x7d63: b'\x11}c', + 0x7d64: b'\x11}d', + 0x7d65: b'\x11}e', + 0x7d66: b'\x11}f', + 0x7d67: b'\x11}g', + 0x7d68: b'\x11}h', + 0x7d69: b'\x11}i', + 0x7d6a: b'\x11}j', + 0x7d6b: b'\x11}k', + 0x7d6c: b'\x11}l', + 0x7d6d: b'\x11}m', + 0x7d6e: b'\x11}n', + 0x7d6f: b'\x11}o', + 0x7d70: b'\x11}p', + 0x7d71: b'\x11}q', + 0x7d72: b'\x11}r', + 0x7d73: b'\x11}s', + 0x7d74: b'\x11}t', + 0x7d75: b'\x11}u', + 0x7d76: b'\x11}v', + 0x7d77: b'\x11}w', + 0x7d78: b'\x11}x', + 0x7d79: b'\x11}y', + 0x7d7a: b'\x11}z', + 0x7d7b: b'\x11}{', + 0x7d7c: b'\x11}|', + 0x7d7d: b'\x11}}', + 0x7d7e: b'\x11}~', + 0x7d7f: b'\x11}\x7f', + 0x7d80: b'\x11}\x80', + 0x7d81: b'\x11}\x81', + 0x7d82: b'\x11}\x82', + 0x7d83: b'\x11}\x83', + 0x7d84: b'\x11}\x84', + 0x7d85: b'\x11}\x85', + 0x7d86: b'\x11}\x86', + 0x7d87: b'\x11}\x87', + 0x7d88: b'\x11}\x88', + 0x7d89: b'\x11}\x89', + 0x7d8a: b'\x11}\x8a', + 0x7d8b: b'\x11}\x8b', + 0x7d8c: b'\x11}\x8c', + 0x7d8d: b'\x11}\x8d', + 0x7d8e: b'\x11}\x8e', + 0x7d8f: b'\x11}\x8f', + 0x7d90: b'\x11}\x90', + 0x7d91: b'\x11}\x91', + 0x7d92: b'\x11}\x92', + 0x7d93: b'\x11}\x93', + 0x7d94: b'\x11}\x94', + 0x7d95: b'\x11}\x95', + 0x7d96: b'\x11}\x96', + 0x7d97: b'\x11}\x97', + 0x7d98: b'\x11}\x98', + 0x7d99: b'\x11}\x99', + 0x7d9a: b'\x11}\x9a', + 0x7d9b: b'\x11}\x9b', + 0x7d9c: b'\x11}\x9c', + 0x7d9d: b'\x11}\x9d', + 0x7d9e: b'\x11}\x9e', + 0x7d9f: b'\x11}\x9f', + 0x7da0: b'\x11}\xa0', + 0x7da1: b'\x11}\xa1', + 0x7da2: b'\x11}\xa2', + 0x7da3: b'\x11}\xa3', + 0x7da4: b'\x11}\xa4', + 0x7da5: b'\x11}\xa5', + 0x7da6: b'\x11}\xa6', + 0x7da7: b'\x11}\xa7', + 0x7da8: b'\x11}\xa8', + 0x7da9: b'\x11}\xa9', + 0x7daa: b'\x11}\xaa', + 0x7dab: b'\x11}\xab', + 0x7dac: b'\x11}\xac', + 0x7dad: b'\x11}\xad', + 0x7dae: b'\x11}\xae', + 0x7daf: b'\x11}\xaf', + 0x7db0: b'\x11}\xb0', + 0x7db1: b'\x11}\xb1', + 0x7db2: b'\x11}\xb2', + 0x7db3: b'\x11}\xb3', + 0x7db4: b'\x11}\xb4', + 0x7db5: b'\x11}\xb5', + 0x7db6: b'\x11}\xb6', + 0x7db7: b'\x11}\xb7', + 0x7db8: b'\x11}\xb8', + 0x7db9: b'\x11}\xb9', + 0x7dba: b'\x11}\xba', + 0x7dbb: b'\x11}\xbb', + 0x7dbc: b'\x11}\xbc', + 0x7dbd: b'\x11}\xbd', + 0x7dbe: b'\x11}\xbe', + 0x7dbf: b'\x11}\xbf', + 0x7dc0: b'\x11}\xc0', + 0x7dc1: b'\x11}\xc1', + 0x7dc2: b'\x11}\xc2', + 0x7dc3: b'\x11}\xc3', + 0x7dc4: b'\x11}\xc4', + 0x7dc5: b'\x11}\xc5', + 0x7dc6: b'\x11}\xc6', + 0x7dc7: b'\x11}\xc7', + 0x7dc8: b'\x11}\xc8', + 0x7dc9: b'\x11}\xc9', + 0x7dca: b'\x11}\xca', + 0x7dcb: b'\x11}\xcb', + 0x7dcc: b'\x11}\xcc', + 0x7dcd: b'\x11}\xcd', + 0x7dce: b'\x11}\xce', + 0x7dcf: b'\x11}\xcf', + 0x7dd0: b'\x11}\xd0', + 0x7dd1: b'\x11}\xd1', + 0x7dd2: b'\x11}\xd2', + 0x7dd3: b'\x11}\xd3', + 0x7dd4: b'\x11}\xd4', + 0x7dd5: b'\x11}\xd5', + 0x7dd6: b'\x11}\xd6', + 0x7dd7: b'\x11}\xd7', + 0x7dd8: b'\x11}\xd8', + 0x7dd9: b'\x11}\xd9', + 0x7dda: b'\x11}\xda', + 0x7ddb: b'\x11}\xdb', + 0x7ddc: b'\x11}\xdc', + 0x7ddd: b'\x11}\xdd', + 0x7dde: b'\x11}\xde', + 0x7ddf: b'\x11}\xdf', + 0x7de0: b'\x11}\xe0', + 0x7de1: b'\x11}\xe1', + 0x7de2: b'\x11}\xe2', + 0x7de3: b'\x11}\xe3', + 0x7de4: b'\x11}\xe4', + 0x7de5: b'\x11}\xe5', + 0x7de6: b'\x11}\xe6', + 0x7de7: b'\x11}\xe7', + 0x7de8: b'\x11}\xe8', + 0x7de9: b'\x11}\xe9', + 0x7dea: b'\x11}\xea', + 0x7deb: b'\x11}\xeb', + 0x7dec: b'\x11}\xec', + 0x7ded: b'\x11}\xed', + 0x7dee: b'\x11}\xee', + 0x7def: b'\x11}\xef', + 0x7df0: b'\x11}\xf0', + 0x7df1: b'\x11}\xf1', + 0x7df2: b'\x11}\xf2', + 0x7df3: b'\x11}\xf3', + 0x7df4: b'\x11}\xf4', + 0x7df5: b'\x11}\xf5', + 0x7df6: b'\x11}\xf6', + 0x7df7: b'\x11}\xf7', + 0x7df8: b'\x11}\xf8', + 0x7df9: b'\x11}\xf9', + 0x7dfa: b'\x11}\xfa', + 0x7dfb: b'\x11}\xfb', + 0x7dfc: b'\x11}\xfc', + 0x7dfd: b'\x11}\xfd', + 0x7dfe: b'\x11}\xfe', + 0x7dff: b'\x11}\xff', + 0x7e00: b'\x11~\x00', + 0x7e01: b'\x11~\x01', + 0x7e02: b'\x11~\x02', + 0x7e03: b'\x11~\x03', + 0x7e04: b'\x11~\x04', + 0x7e05: b'\x11~\x05', + 0x7e06: b'\x11~\x06', + 0x7e07: b'\x11~\x07', + 0x7e08: b'\x11~\x08', + 0x7e09: b'\x11~\t', + 0x7e0a: b'\x11~\n', + 0x7e0b: b'\x11~\x0b', + 0x7e0c: b'\x11~\x0c', + 0x7e0d: b'\x11~\r', + 0x7e0e: b'\x11~\x0e', + 0x7e0f: b'\x11~\x0f', + 0x7e10: b'\x11~\x10', + 0x7e11: b'\x11~\x11', + 0x7e12: b'\x11~\x12', + 0x7e13: b'\x11~\x13', + 0x7e14: b'\x11~\x14', + 0x7e15: b'\x11~\x15', + 0x7e16: b'\x11~\x16', + 0x7e17: b'\x11~\x17', + 0x7e18: b'\x11~\x18', + 0x7e19: b'\x11~\x19', + 0x7e1a: b'\x11~\x1a', + 0x7e1b: b'\x11~\x1b', + 0x7e1c: b'\x11~\x1c', + 0x7e1d: b'\x11~\x1d', + 0x7e1e: b'\x11~\x1e', + 0x7e1f: b'\x11~\x1f', + 0x7e20: b'\x11~ ', + 0x7e21: b'\x11~!', + 0x7e22: b'\x11~"', + 0x7e23: b'\x11~#', + 0x7e24: b'\x11~$', + 0x7e25: b'\x11~%', + 0x7e26: b'\x11~&', + 0x7e27: b"\x11~'", + 0x7e28: b'\x11~(', + 0x7e29: b'\x11~)', + 0x7e2a: b'\x11~*', + 0x7e2b: b'\x11~+', + 0x7e2c: b'\x11~,', + 0x7e2d: b'\x11~-', + 0x7e2e: b'\x11~.', + 0x7e2f: b'\x11~/', + 0x7e30: b'\x11~0', + 0x7e31: b'\x11~1', + 0x7e32: b'\x11~2', + 0x7e33: b'\x11~3', + 0x7e34: b'\x11~4', + 0x7e35: b'\x11~5', + 0x7e36: b'\x11~6', + 0x7e37: b'\x11~7', + 0x7e38: b'\x11~8', + 0x7e39: b'\x11~9', + 0x7e3a: b'\x11~:', + 0x7e3b: b'\x11~;', + 0x7e3c: b'\x11~<', + 0x7e3d: b'\x11~=', + 0x7e3e: b'\x11~>', + 0x7e3f: b'\x11~?', + 0x7e40: b'\x11~@', + 0x7e41: b'\x11~A', + 0x7e42: b'\x11~B', + 0x7e43: b'\x11~C', + 0x7e44: b'\x11~D', + 0x7e45: b'\x11~E', + 0x7e46: b'\x11~F', + 0x7e47: b'\x11~G', + 0x7e48: b'\x11~H', + 0x7e49: b'\x11~I', + 0x7e4a: b'\x11~J', + 0x7e4b: b'\x11~K', + 0x7e4c: b'\x11~L', + 0x7e4d: b'\x11~M', + 0x7e4e: b'\x11~N', + 0x7e4f: b'\x11~O', + 0x7e50: b'\x11~P', + 0x7e51: b'\x11~Q', + 0x7e52: b'\x11~R', + 0x7e53: b'\x11~S', + 0x7e54: b'\x11~T', + 0x7e55: b'\x11~U', + 0x7e56: b'\x11~V', + 0x7e57: b'\x11~W', + 0x7e58: b'\x11~X', + 0x7e59: b'\x11~Y', + 0x7e5a: b'\x11~Z', + 0x7e5b: b'\x11~[', + 0x7e5c: b'\x11~\\', + 0x7e5d: b'\x11~]', + 0x7e5e: b'\x11~^', + 0x7e5f: b'\x11~_', + 0x7e60: b'\x11~`', + 0x7e61: b'\x11~a', + 0x7e62: b'\x11~b', + 0x7e63: b'\x11~c', + 0x7e64: b'\x11~d', + 0x7e65: b'\x11~e', + 0x7e66: b'\x11~f', + 0x7e67: b'\x11~g', + 0x7e68: b'\x11~h', + 0x7e69: b'\x11~i', + 0x7e6a: b'\x11~j', + 0x7e6b: b'\x11~k', + 0x7e6c: b'\x11~l', + 0x7e6d: b'\x11~m', + 0x7e6e: b'\x11~n', + 0x7e6f: b'\x11~o', + 0x7e70: b'\x11~p', + 0x7e71: b'\x11~q', + 0x7e72: b'\x11~r', + 0x7e73: b'\x11~s', + 0x7e74: b'\x11~t', + 0x7e75: b'\x11~u', + 0x7e76: b'\x11~v', + 0x7e77: b'\x11~w', + 0x7e78: b'\x11~x', + 0x7e79: b'\x11~y', + 0x7e7a: b'\x11~z', + 0x7e7b: b'\x11~{', + 0x7e7c: b'\x11~|', + 0x7e7d: b'\x11~}', + 0x7e7e: b'\x11~~', + 0x7e7f: b'\x11~\x7f', + 0x7e80: b'\x11~\x80', + 0x7e81: b'\x11~\x81', + 0x7e82: b'\x11~\x82', + 0x7e83: b'\x11~\x83', + 0x7e84: b'\x11~\x84', + 0x7e85: b'\x11~\x85', + 0x7e86: b'\x11~\x86', + 0x7e87: b'\x11~\x87', + 0x7e88: b'\x11~\x88', + 0x7e89: b'\x11~\x89', + 0x7e8a: b'\x11~\x8a', + 0x7e8b: b'\x11~\x8b', + 0x7e8c: b'\x11~\x8c', + 0x7e8d: b'\x11~\x8d', + 0x7e8e: b'\x11~\x8e', + 0x7e8f: b'\x11~\x8f', + 0x7e90: b'\x11~\x90', + 0x7e91: b'\x11~\x91', + 0x7e92: b'\x11~\x92', + 0x7e93: b'\x11~\x93', + 0x7e94: b'\x11~\x94', + 0x7e95: b'\x11~\x95', + 0x7e96: b'\x11~\x96', + 0x7e97: b'\x11~\x97', + 0x7e98: b'\x11~\x98', + 0x7e99: b'\x11~\x99', + 0x7e9a: b'\x11~\x9a', + 0x7e9b: b'\x11~\x9b', + 0x7e9c: b'\x11~\x9c', + 0x7e9d: b'\x11~\x9d', + 0x7e9e: b'\x11~\x9e', + 0x7e9f: b'\x11~\x9f', + 0x7ea0: b'\x11~\xa0', + 0x7ea1: b'\x11~\xa1', + 0x7ea2: b'\x11~\xa2', + 0x7ea3: b'\x11~\xa3', + 0x7ea4: b'\x11~\xa4', + 0x7ea5: b'\x11~\xa5', + 0x7ea6: b'\x11~\xa6', + 0x7ea7: b'\x11~\xa7', + 0x7ea8: b'\x11~\xa8', + 0x7ea9: b'\x11~\xa9', + 0x7eaa: b'\x11~\xaa', + 0x7eab: b'\x11~\xab', + 0x7eac: b'\x11~\xac', + 0x7ead: b'\x11~\xad', + 0x7eae: b'\x11~\xae', + 0x7eaf: b'\x11~\xaf', + 0x7eb0: b'\x11~\xb0', + 0x7eb1: b'\x11~\xb1', + 0x7eb2: b'\x11~\xb2', + 0x7eb3: b'\x11~\xb3', + 0x7eb4: b'\x11~\xb4', + 0x7eb5: b'\x11~\xb5', + 0x7eb6: b'\x11~\xb6', + 0x7eb7: b'\x11~\xb7', + 0x7eb8: b'\x11~\xb8', + 0x7eb9: b'\x11~\xb9', + 0x7eba: b'\x11~\xba', + 0x7ebb: b'\x11~\xbb', + 0x7ebc: b'\x11~\xbc', + 0x7ebd: b'\x11~\xbd', + 0x7ebe: b'\x11~\xbe', + 0x7ebf: b'\x11~\xbf', + 0x7ec0: b'\x11~\xc0', + 0x7ec1: b'\x11~\xc1', + 0x7ec2: b'\x11~\xc2', + 0x7ec3: b'\x11~\xc3', + 0x7ec4: b'\x11~\xc4', + 0x7ec5: b'\x11~\xc5', + 0x7ec6: b'\x11~\xc6', + 0x7ec7: b'\x11~\xc7', + 0x7ec8: b'\x11~\xc8', + 0x7ec9: b'\x11~\xc9', + 0x7eca: b'\x11~\xca', + 0x7ecb: b'\x11~\xcb', + 0x7ecc: b'\x11~\xcc', + 0x7ecd: b'\x11~\xcd', + 0x7ece: b'\x11~\xce', + 0x7ecf: b'\x11~\xcf', + 0x7ed0: b'\x11~\xd0', + 0x7ed1: b'\x11~\xd1', + 0x7ed2: b'\x11~\xd2', + 0x7ed3: b'\x11~\xd3', + 0x7ed4: b'\x11~\xd4', + 0x7ed5: b'\x11~\xd5', + 0x7ed6: b'\x11~\xd6', + 0x7ed7: b'\x11~\xd7', + 0x7ed8: b'\x11~\xd8', + 0x7ed9: b'\x11~\xd9', + 0x7eda: b'\x11~\xda', + 0x7edb: b'\x11~\xdb', + 0x7edc: b'\x11~\xdc', + 0x7edd: b'\x11~\xdd', + 0x7ede: b'\x11~\xde', + 0x7edf: b'\x11~\xdf', + 0x7ee0: b'\x11~\xe0', + 0x7ee1: b'\x11~\xe1', + 0x7ee2: b'\x11~\xe2', + 0x7ee3: b'\x11~\xe3', + 0x7ee4: b'\x11~\xe4', + 0x7ee5: b'\x11~\xe5', + 0x7ee6: b'\x11~\xe6', + 0x7ee7: b'\x11~\xe7', + 0x7ee8: b'\x11~\xe8', + 0x7ee9: b'\x11~\xe9', + 0x7eea: b'\x11~\xea', + 0x7eeb: b'\x11~\xeb', + 0x7eec: b'\x11~\xec', + 0x7eed: b'\x11~\xed', + 0x7eee: b'\x11~\xee', + 0x7eef: b'\x11~\xef', + 0x7ef0: b'\x11~\xf0', + 0x7ef1: b'\x11~\xf1', + 0x7ef2: b'\x11~\xf2', + 0x7ef3: b'\x11~\xf3', + 0x7ef4: b'\x11~\xf4', + 0x7ef5: b'\x11~\xf5', + 0x7ef6: b'\x11~\xf6', + 0x7ef7: b'\x11~\xf7', + 0x7ef8: b'\x11~\xf8', + 0x7ef9: b'\x11~\xf9', + 0x7efa: b'\x11~\xfa', + 0x7efb: b'\x11~\xfb', + 0x7efc: b'\x11~\xfc', + 0x7efd: b'\x11~\xfd', + 0x7efe: b'\x11~\xfe', + 0x7eff: b'\x11~\xff', + 0x7f00: b'\x11\x7f\x00', + 0x7f01: b'\x11\x7f\x01', + 0x7f02: b'\x11\x7f\x02', + 0x7f03: b'\x11\x7f\x03', + 0x7f04: b'\x11\x7f\x04', + 0x7f05: b'\x11\x7f\x05', + 0x7f06: b'\x11\x7f\x06', + 0x7f07: b'\x11\x7f\x07', + 0x7f08: b'\x11\x7f\x08', + 0x7f09: b'\x11\x7f\t', + 0x7f0a: b'\x11\x7f\n', + 0x7f0b: b'\x11\x7f\x0b', + 0x7f0c: b'\x11\x7f\x0c', + 0x7f0d: b'\x11\x7f\r', + 0x7f0e: b'\x11\x7f\x0e', + 0x7f0f: b'\x11\x7f\x0f', + 0x7f10: b'\x11\x7f\x10', + 0x7f11: b'\x11\x7f\x11', + 0x7f12: b'\x11\x7f\x12', + 0x7f13: b'\x11\x7f\x13', + 0x7f14: b'\x11\x7f\x14', + 0x7f15: b'\x11\x7f\x15', + 0x7f16: b'\x11\x7f\x16', + 0x7f17: b'\x11\x7f\x17', + 0x7f18: b'\x11\x7f\x18', + 0x7f19: b'\x11\x7f\x19', + 0x7f1a: b'\x11\x7f\x1a', + 0x7f1b: b'\x11\x7f\x1b', + 0x7f1c: b'\x11\x7f\x1c', + 0x7f1d: b'\x11\x7f\x1d', + 0x7f1e: b'\x11\x7f\x1e', + 0x7f1f: b'\x11\x7f\x1f', + 0x7f20: b'\x11\x7f ', + 0x7f21: b'\x11\x7f!', + 0x7f22: b'\x11\x7f"', + 0x7f23: b'\x11\x7f#', + 0x7f24: b'\x11\x7f$', + 0x7f25: b'\x11\x7f%', + 0x7f26: b'\x11\x7f&', + 0x7f27: b"\x11\x7f'", + 0x7f28: b'\x11\x7f(', + 0x7f29: b'\x11\x7f)', + 0x7f2a: b'\x11\x7f*', + 0x7f2b: b'\x11\x7f+', + 0x7f2c: b'\x11\x7f,', + 0x7f2d: b'\x11\x7f-', + 0x7f2e: b'\x11\x7f.', + 0x7f2f: b'\x11\x7f/', + 0x7f30: b'\x11\x7f0', + 0x7f31: b'\x11\x7f1', + 0x7f32: b'\x11\x7f2', + 0x7f33: b'\x11\x7f3', + 0x7f34: b'\x11\x7f4', + 0x7f35: b'\x11\x7f5', + 0x7f36: b'\x11\x7f6', + 0x7f37: b'\x11\x7f7', + 0x7f38: b'\x11\x7f8', + 0x7f39: b'\x11\x7f9', + 0x7f3a: b'\x11\x7f:', + 0x7f3b: b'\x11\x7f;', + 0x7f3c: b'\x11\x7f<', + 0x7f3d: b'\x11\x7f=', + 0x7f3e: b'\x11\x7f>', + 0x7f3f: b'\x11\x7f?', + 0x7f40: b'\x11\x7f@', + 0x7f41: b'\x11\x7fA', + 0x7f42: b'\x11\x7fB', + 0x7f43: b'\x11\x7fC', + 0x7f44: b'\x11\x7fD', + 0x7f45: b'\x11\x7fE', + 0x7f46: b'\x11\x7fF', + 0x7f47: b'\x11\x7fG', + 0x7f48: b'\x11\x7fH', + 0x7f49: b'\x11\x7fI', + 0x7f4a: b'\x11\x7fJ', + 0x7f4b: b'\x11\x7fK', + 0x7f4c: b'\x11\x7fL', + 0x7f4d: b'\x11\x7fM', + 0x7f4e: b'\x11\x7fN', + 0x7f4f: b'\x11\x7fO', + 0x7f50: b'\x11\x7fP', + 0x7f51: b'\x11\x7fQ', + 0x7f52: b'\x11\x7fR', + 0x7f53: b'\x11\x7fS', + 0x7f54: b'\x11\x7fT', + 0x7f55: b'\x11\x7fU', + 0x7f56: b'\x11\x7fV', + 0x7f57: b'\x11\x7fW', + 0x7f58: b'\x11\x7fX', + 0x7f59: b'\x11\x7fY', + 0x7f5a: b'\x11\x7fZ', + 0x7f5b: b'\x11\x7f[', + 0x7f5c: b'\x11\x7f\\', + 0x7f5d: b'\x11\x7f]', + 0x7f5e: b'\x11\x7f^', + 0x7f5f: b'\x11\x7f_', + 0x7f60: b'\x11\x7f`', + 0x7f61: b'\x11\x7fa', + 0x7f62: b'\x11\x7fb', + 0x7f63: b'\x11\x7fc', + 0x7f64: b'\x11\x7fd', + 0x7f65: b'\x11\x7fe', + 0x7f66: b'\x11\x7ff', + 0x7f67: b'\x11\x7fg', + 0x7f68: b'\x11\x7fh', + 0x7f69: b'\x11\x7fi', + 0x7f6a: b'\x11\x7fj', + 0x7f6b: b'\x11\x7fk', + 0x7f6c: b'\x11\x7fl', + 0x7f6d: b'\x11\x7fm', + 0x7f6e: b'\x11\x7fn', + 0x7f6f: b'\x11\x7fo', + 0x7f70: b'\x11\x7fp', + 0x7f71: b'\x11\x7fq', + 0x7f72: b'\x11\x7fr', + 0x7f73: b'\x11\x7fs', + 0x7f74: b'\x11\x7ft', + 0x7f75: b'\x11\x7fu', + 0x7f76: b'\x11\x7fv', + 0x7f77: b'\x11\x7fw', + 0x7f78: b'\x11\x7fx', + 0x7f79: b'\x11\x7fy', + 0x7f7a: b'\x11\x7fz', + 0x7f7b: b'\x11\x7f{', + 0x7f7c: b'\x11\x7f|', + 0x7f7d: b'\x11\x7f}', + 0x7f7e: b'\x11\x7f~', + 0x7f7f: b'\x11\x7f\x7f', + 0x7f80: b'\x11\x7f\x80', + 0x7f81: b'\x11\x7f\x81', + 0x7f82: b'\x11\x7f\x82', + 0x7f83: b'\x11\x7f\x83', + 0x7f84: b'\x11\x7f\x84', + 0x7f85: b'\x11\x7f\x85', + 0x7f86: b'\x11\x7f\x86', + 0x7f87: b'\x11\x7f\x87', + 0x7f88: b'\x11\x7f\x88', + 0x7f89: b'\x11\x7f\x89', + 0x7f8a: b'\x11\x7f\x8a', + 0x7f8b: b'\x11\x7f\x8b', + 0x7f8c: b'\x11\x7f\x8c', + 0x7f8d: b'\x11\x7f\x8d', + 0x7f8e: b'\x11\x7f\x8e', + 0x7f8f: b'\x11\x7f\x8f', + 0x7f90: b'\x11\x7f\x90', + 0x7f91: b'\x11\x7f\x91', + 0x7f92: b'\x11\x7f\x92', + 0x7f93: b'\x11\x7f\x93', + 0x7f94: b'\x11\x7f\x94', + 0x7f95: b'\x11\x7f\x95', + 0x7f96: b'\x11\x7f\x96', + 0x7f97: b'\x11\x7f\x97', + 0x7f98: b'\x11\x7f\x98', + 0x7f99: b'\x11\x7f\x99', + 0x7f9a: b'\x11\x7f\x9a', + 0x7f9b: b'\x11\x7f\x9b', + 0x7f9c: b'\x11\x7f\x9c', + 0x7f9d: b'\x11\x7f\x9d', + 0x7f9e: b'\x11\x7f\x9e', + 0x7f9f: b'\x11\x7f\x9f', + 0x7fa0: b'\x11\x7f\xa0', + 0x7fa1: b'\x11\x7f\xa1', + 0x7fa2: b'\x11\x7f\xa2', + 0x7fa3: b'\x11\x7f\xa3', + 0x7fa4: b'\x11\x7f\xa4', + 0x7fa5: b'\x11\x7f\xa5', + 0x7fa6: b'\x11\x7f\xa6', + 0x7fa7: b'\x11\x7f\xa7', + 0x7fa8: b'\x11\x7f\xa8', + 0x7fa9: b'\x11\x7f\xa9', + 0x7faa: b'\x11\x7f\xaa', + 0x7fab: b'\x11\x7f\xab', + 0x7fac: b'\x11\x7f\xac', + 0x7fad: b'\x11\x7f\xad', + 0x7fae: b'\x11\x7f\xae', + 0x7faf: b'\x11\x7f\xaf', + 0x7fb0: b'\x11\x7f\xb0', + 0x7fb1: b'\x11\x7f\xb1', + 0x7fb2: b'\x11\x7f\xb2', + 0x7fb3: b'\x11\x7f\xb3', + 0x7fb4: b'\x11\x7f\xb4', + 0x7fb5: b'\x11\x7f\xb5', + 0x7fb6: b'\x11\x7f\xb6', + 0x7fb7: b'\x11\x7f\xb7', + 0x7fb8: b'\x11\x7f\xb8', + 0x7fb9: b'\x11\x7f\xb9', + 0x7fba: b'\x11\x7f\xba', + 0x7fbb: b'\x11\x7f\xbb', + 0x7fbc: b'\x11\x7f\xbc', + 0x7fbd: b'\x11\x7f\xbd', + 0x7fbe: b'\x11\x7f\xbe', + 0x7fbf: b'\x11\x7f\xbf', + 0x7fc0: b'\x11\x7f\xc0', + 0x7fc1: b'\x11\x7f\xc1', + 0x7fc2: b'\x11\x7f\xc2', + 0x7fc3: b'\x11\x7f\xc3', + 0x7fc4: b'\x11\x7f\xc4', + 0x7fc5: b'\x11\x7f\xc5', + 0x7fc6: b'\x11\x7f\xc6', + 0x7fc7: b'\x11\x7f\xc7', + 0x7fc8: b'\x11\x7f\xc8', + 0x7fc9: b'\x11\x7f\xc9', + 0x7fca: b'\x11\x7f\xca', + 0x7fcb: b'\x11\x7f\xcb', + 0x7fcc: b'\x11\x7f\xcc', + 0x7fcd: b'\x11\x7f\xcd', + 0x7fce: b'\x11\x7f\xce', + 0x7fcf: b'\x11\x7f\xcf', + 0x7fd0: b'\x11\x7f\xd0', + 0x7fd1: b'\x11\x7f\xd1', + 0x7fd2: b'\x11\x7f\xd2', + 0x7fd3: b'\x11\x7f\xd3', + 0x7fd4: b'\x11\x7f\xd4', + 0x7fd5: b'\x11\x7f\xd5', + 0x7fd6: b'\x11\x7f\xd6', + 0x7fd7: b'\x11\x7f\xd7', + 0x7fd8: b'\x11\x7f\xd8', + 0x7fd9: b'\x11\x7f\xd9', + 0x7fda: b'\x11\x7f\xda', + 0x7fdb: b'\x11\x7f\xdb', + 0x7fdc: b'\x11\x7f\xdc', + 0x7fdd: b'\x11\x7f\xdd', + 0x7fde: b'\x11\x7f\xde', + 0x7fdf: b'\x11\x7f\xdf', + 0x7fe0: b'\x11\x7f\xe0', + 0x7fe1: b'\x11\x7f\xe1', + 0x7fe2: b'\x11\x7f\xe2', + 0x7fe3: b'\x11\x7f\xe3', + 0x7fe4: b'\x11\x7f\xe4', + 0x7fe5: b'\x11\x7f\xe5', + 0x7fe6: b'\x11\x7f\xe6', + 0x7fe7: b'\x11\x7f\xe7', + 0x7fe8: b'\x11\x7f\xe8', + 0x7fe9: b'\x11\x7f\xe9', + 0x7fea: b'\x11\x7f\xea', + 0x7feb: b'\x11\x7f\xeb', + 0x7fec: b'\x11\x7f\xec', + 0x7fed: b'\x11\x7f\xed', + 0x7fee: b'\x11\x7f\xee', + 0x7fef: b'\x11\x7f\xef', + 0x7ff0: b'\x11\x7f\xf0', + 0x7ff1: b'\x11\x7f\xf1', + 0x7ff2: b'\x11\x7f\xf2', + 0x7ff3: b'\x11\x7f\xf3', + 0x7ff4: b'\x11\x7f\xf4', + 0x7ff5: b'\x11\x7f\xf5', + 0x7ff6: b'\x11\x7f\xf6', + 0x7ff7: b'\x11\x7f\xf7', + 0x7ff8: b'\x11\x7f\xf8', + 0x7ff9: b'\x11\x7f\xf9', + 0x7ffa: b'\x11\x7f\xfa', + 0x7ffb: b'\x11\x7f\xfb', + 0x7ffc: b'\x11\x7f\xfc', + 0x7ffd: b'\x11\x7f\xfd', + 0x7ffe: b'\x11\x7f\xfe', + 0x7fff: b'\x11\x7f\xff', + 0xff80: b'\x10\x80\x92', + 0xff81: b'\x10\x81\x92', + 0xff82: b'\x10\x82\x92', + 0xff83: b'\x10\x83\x92', + 0xff84: b'\x10\x84\x92', + 0xff85: b'\x10\x85\x92', + 0xff86: b'\x10\x86\x92', + 0xff87: b'\x10\x87\x92', + 0xff88: b'\x10\x88\x92', + 0xff89: b'\x10\x89\x92', + 0xff8a: b'\x10\x8a\x92', + 0xff8b: b'\x10\x8b\x92', + 0xff8c: b'\x10\x8c\x92', + 0xff8d: b'\x10\x8d\x92', + 0xff8e: b'\x10\x8e\x92', + 0xff8f: b'\x10\x8f\x92', + 0xff90: b'\x10\x90\x92', + 0xff91: b'\x10\x91\x92', + 0xff92: b'\x10\x92\x92', + 0xff93: b'\x10\x93\x92', + 0xff94: b'\x10\x94\x92', + 0xff95: b'\x10\x95\x92', + 0xff96: b'\x10\x96\x92', + 0xff97: b'\x10\x97\x92', + 0xff98: b'\x10\x98\x92', + 0xff99: b'\x10\x99\x92', + 0xff9a: b'\x10\x9a\x92', + 0xff9b: b'\x10\x9b\x92', + 0xff9c: b'\x10\x9c\x92', + 0xff9d: b'\x10\x9d\x92', + 0xff9e: b'\x10\x9e\x92', + 0xff9f: b'\x10\x9f\x92', + 0xffa0: b'\x10\xa0\x92', + 0xffa1: b'\x10\xa1\x92', + 0xffa2: b'\x10\xa2\x92', + 0xffa3: b'\x10\xa3\x92', + 0xffa4: b'\x10\xa4\x92', + 0xffa5: b'\x10\xa5\x92', + 0xffa6: b'\x10\xa6\x92', + 0xffa7: b'\x10\xa7\x92', + 0xffa8: b'\x10\xa8\x92', + 0xffa9: b'\x10\xa9\x92', + 0xffaa: b'\x10\xaa\x92', + 0xffab: b'\x10\xab\x92', + 0xffac: b'\x10\xac\x92', + 0xffad: b'\x10\xad\x92', + 0xffae: b'\x10\xae\x92', + 0xffaf: b'\x10\xaf\x92', + 0xffb0: b'\x10\xb0\x92', + 0xffb1: b'\x10\xb1\x92', + 0xffb2: b'\x10\xb2\x92', + 0xffb3: b'\x10\xb3\x92', + 0xffb4: b'\x10\xb4\x92', + 0xffb5: b'\x10\xb5\x92', + 0xffb6: b'\x10\xb6\x92', + 0xffb7: b'\x10\xb7\x92', + 0xffb8: b'\x10\xb8\x92', + 0xffb9: b'\x10\xb9\x92', + 0xffba: b'\x10\xba\x92', + 0xffbb: b'\x10\xbb\x92', + 0xffbc: b'\x10\xbc\x92', + 0xffbd: b'\x10\xbd\x92', + 0xffbe: b'\x10\xbe\x92', + 0xffbf: b'\x10\xbf\x92', + 0xffc0: b'\x10\xc0\x92', + 0xffc1: b'\x10\xc1\x92', + 0xffc2: b'\x10\xc2\x92', + 0xffc3: b'\x10\xc3\x92', + 0xffc4: b'\x10\xc4\x92', + 0xffc5: b'\x10\xc5\x92', + 0xffc6: b'\x10\xc6\x92', + 0xffc7: b'\x10\xc7\x92', + 0xffc8: b'\x10\xc8\x92', + 0xffc9: b'\x10\xc9\x92', + 0xffca: b'\x10\xca\x92', + 0xffcb: b'\x10\xcb\x92', + 0xffcc: b'\x10\xcc\x92', + 0xffcd: b'\x10\xcd\x92', + 0xffce: b'\x10\xce\x92', + 0xffcf: b'\x10\xcf\x92', + 0xffd0: b'\x10\xd0\x92', + 0xffd1: b'\x10\xd1\x92', + 0xffd2: b'\x10\xd2\x92', + 0xffd3: b'\x10\xd3\x92', + 0xffd4: b'\x10\xd4\x92', + 0xffd5: b'\x10\xd5\x92', + 0xffd6: b'\x10\xd6\x92', + 0xffd7: b'\x10\xd7\x92', + 0xffd8: b'\x10\xd8\x92', + 0xffd9: b'\x10\xd9\x92', + 0xffda: b'\x10\xda\x92', + 0xffdb: b'\x10\xdb\x92', + 0xffdc: b'\x10\xdc\x92', + 0xffdd: b'\x10\xdd\x92', + 0xffde: b'\x10\xde\x92', + 0xffdf: b'\x10\xdf\x92', + 0xffe0: b'\x10\xe0\x92', + 0xffe1: b'\x10\xe1\x92', + 0xffe2: b'\x10\xe2\x92', + 0xffe3: b'\x10\xe3\x92', + 0xffe4: b'\x10\xe4\x92', + 0xffe5: b'\x10\xe5\x92', + 0xffe6: b'\x10\xe6\x92', + 0xffe7: b'\x10\xe7\x92', + 0xffe8: b'\x10\xe8\x92', + 0xffe9: b'\x10\xe9\x92', + 0xffea: b'\x10\xea\x92', + 0xffeb: b'\x10\xeb\x92', + 0xffec: b'\x10\xec\x92', + 0xffed: b'\x10\xed\x92', + 0xffee: b'\x10\xee\x92', + 0xffef: b'\x10\xef\x92', + 0xfff0: b'\x10\xf0\x92', + 0xfff1: b'\x10\xf1\x92', + 0xfff2: b'\x10\xf2\x92', + 0xfff3: b'\x10\xf3\x92', + 0xfff4: b'\x10\xf4\x92', + 0xfff5: b'\x10\xf5\x92', + 0xfff6: b'\x10\xf6\x92', + 0xfff7: b'\x10\xf7\x92', + 0xfff8: b'\x10\xf8\x92', + 0xfff9: b'\x10\xf9\x92', + 0xfffa: b'\x10\xfa\x92', + 0xfffb: b'\x10\xfb\x92', + 0xfffc: b'\x10\xfc\x92', + 0xfffd: b'\x10\xfd\x92', + 0xfffe: b'\x10\xfe\x92', + 0xffff: b'\x02\x92', + 0x7ffffff: b'\x02\x08|', + 0xfffffff: b'\x02\x07|', + 0x1fffffff: b'\x02\x06|', + 0x3fffffff: b'\x02\x05|', + 0x7fffffff: b'\x02\x04|', +} +LONGS = { + -0x80: b'\x10\x80\x85', + -0x7f: b'\x10\x81\x85', + -0x7e: b'\x10\x82\x85', + -0x7d: b'\x10\x83\x85', + -0x7c: b'\x10\x84\x85', + -0x7b: b'\x10\x85\x85', + -0x7a: b'\x10\x86\x85', + -0x79: b'\x10\x87\x85', + -0x78: b'\x10\x88\x85', + -0x77: b'\x10\x89\x85', + -0x76: b'\x10\x8a\x85', + -0x75: b'\x10\x8b\x85', + -0x74: b'\x10\x8c\x85', + -0x73: b'\x10\x8d\x85', + -0x72: b'\x10\x8e\x85', + -0x71: b'\x10\x8f\x85', + -0x70: b'\x10\x90\x85', + -0x6f: b'\x10\x91\x85', + -0x6e: b'\x10\x92\x85', + -0x6d: b'\x10\x93\x85', + -0x6c: b'\x10\x94\x85', + -0x6b: b'\x10\x95\x85', + -0x6a: b'\x10\x96\x85', + -0x69: b'\x10\x97\x85', + -0x68: b'\x10\x98\x85', + -0x67: b'\x10\x99\x85', + -0x66: b'\x10\x9a\x85', + -0x65: b'\x10\x9b\x85', + -0x64: b'\x10\x9c\x85', + -0x63: b'\x10\x9d\x85', + -0x62: b'\x10\x9e\x85', + -0x61: b'\x10\x9f\x85', + -0x60: b'\x10\xa0\x85', + -0x5f: b'\x10\xa1\x85', + -0x5e: b'\x10\xa2\x85', + -0x5d: b'\x10\xa3\x85', + -0x5c: b'\x10\xa4\x85', + -0x5b: b'\x10\xa5\x85', + -0x5a: b'\x10\xa6\x85', + -0x59: b'\x10\xa7\x85', + -0x58: b'\x10\xa8\x85', + -0x57: b'\x10\xa9\x85', + -0x56: b'\x10\xaa\x85', + -0x55: b'\x10\xab\x85', + -0x54: b'\x10\xac\x85', + -0x53: b'\x10\xad\x85', + -0x52: b'\x10\xae\x85', + -0x51: b'\x10\xaf\x85', + -0x50: b'\x10\xb0\x85', + -0x4f: b'\x10\xb1\x85', + -0x4e: b'\x10\xb2\x85', + -0x4d: b'\x10\xb3\x85', + -0x4c: b'\x10\xb4\x85', + -0x4b: b'\x10\xb5\x85', + -0x4a: b'\x10\xb6\x85', + -0x49: b'\x10\xb7\x85', + -0x48: b'\x10\xb8\x85', + -0x47: b'\x10\xb9\x85', + -0x46: b'\x10\xba\x85', + -0x45: b'\x10\xbb\x85', + -0x44: b'\x10\xbc\x85', + -0x43: b'\x10\xbd\x85', + -0x42: b'\x10\xbe\x85', + -0x41: b'\x10\xbf\x85', + -0x40: b'\x10\xc0\x85', + -0x3f: b'\x10\xc1\x85', + -0x3e: b'\x10\xc2\x85', + -0x3d: b'\x10\xc3\x85', + -0x3c: b'\x10\xc4\x85', + -0x3b: b'\x10\xc5\x85', + -0x3a: b'\x10\xc6\x85', + -0x39: b'\x10\xc7\x85', + -0x38: b'\x10\xc8\x85', + -0x37: b'\x10\xc9\x85', + -0x36: b'\x10\xca\x85', + -0x35: b'\x10\xcb\x85', + -0x34: b'\x10\xcc\x85', + -0x33: b'\x10\xcd\x85', + -0x32: b'\x10\xce\x85', + -0x31: b'\x10\xcf\x85', + -0x30: b'\x10\xd0\x85', + -0x2f: b'\x10\xd1\x85', + -0x2e: b'\x10\xd2\x85', + -0x2d: b'\x10\xd3\x85', + -0x2c: b'\x10\xd4\x85', + -0x2b: b'\x10\xd5\x85', + -0x2a: b'\x10\xd6\x85', + -0x29: b'\x10\xd7\x85', + -0x28: b'\x10\xd8\x85', + -0x27: b'\x10\xd9\x85', + -0x26: b'\x10\xda\x85', + -0x25: b'\x10\xdb\x85', + -0x24: b'\x10\xdc\x85', + -0x23: b'\x10\xdd\x85', + -0x22: b'\x10\xde\x85', + -0x21: b'\x10\xdf\x85', + -0x20: b'\x10\xe0\x85', + -0x1f: b'\x10\xe1\x85', + -0x1e: b'\x10\xe2\x85', + -0x1d: b'\x10\xe3\x85', + -0x1c: b'\x10\xe4\x85', + -0x1b: b'\x10\xe5\x85', + -0x1a: b'\x10\xe6\x85', + -0x19: b'\x10\xe7\x85', + -0x18: b'\x10\xe8\x85', + -0x17: b'\x10\xe9\x85', + -0x16: b'\x10\xea\x85', + -0x15: b'\x10\xeb\x85', + -0x14: b'\x10\xec\x85', + -0x13: b'\x10\xed\x85', + -0x12: b'\x10\xee\x85', + -0x11: b'\x10\xef\x85', + -0x10: b'\x10\xf0\x85', + -0xf: b'\x10\xf1\x85', + -0xe: b'\x10\xf2\x85', + -0xd: b'\x10\xf3\x85', + -0xc: b'\x10\xf4\x85', + -0xb: b'\x10\xf5\x85', + -0xa: b'\x10\xf6\x85', + -0x9: b'\x10\xf7\x85', + -0x8: b'\x10\xf8\x85', + -0x7: b'\x10\xf9\x85', + -0x6: b'\x10\xfa\x85', + -0x5: b'\x10\xfb\x85', + -0x4: b'\x10\xfc\x85', + -0x3: b'\x10\xfd\x85', + -0x2: b'\x10\xfe\x85', + -0x1: b'\x02\x85', + 0x0: b'\t', + 0x1: b'\n', + 0x2: b'\x05\x85', + 0x3: b'\x06\x85', + 0x4: b'\x07\x85', + 0x5: b'\x08\x85', + 0x6: b'\x10\x06\x85', + 0x7: b'\x10\x07\x85', + 0x8: b'\x10\x08\x85', + 0x9: b'\x10\t\x85', + 0xa: b'\x10\n\x85', + 0xb: b'\x10\x0b\x85', + 0xc: b'\x10\x0c\x85', + 0xd: b'\x10\r\x85', + 0xe: b'\x10\x0e\x85', + 0xf: b'\x10\x0f\x85', + 0x10: b'\x10\x10\x85', + 0x11: b'\x10\x11\x85', + 0x12: b'\x10\x12\x85', + 0x13: b'\x10\x13\x85', + 0x14: b'\x10\x14\x85', + 0x15: b'\x10\x15\x85', + 0x16: b'\x10\x16\x85', + 0x17: b'\x10\x17\x85', + 0x18: b'\x10\x18\x85', + 0x19: b'\x10\x19\x85', + 0x1a: b'\x10\x1a\x85', + 0x1b: b'\x10\x1b\x85', + 0x1c: b'\x10\x1c\x85', + 0x1d: b'\x10\x1d\x85', + 0x1e: b'\x10\x1e\x85', + 0x1f: b'\x10\x1f\x85', + 0x20: b'\x10 \x85', + 0x21: b'\x10!\x85', + 0x22: b'\x10"\x85', + 0x23: b'\x10#\x85', + 0x24: b'\x10$\x85', + 0x25: b'\x10%\x85', + 0x26: b'\x10&\x85', + 0x27: b"\x10'\x85", + 0x28: b'\x10(\x85', + 0x29: b'\x10)\x85', + 0x2a: b'\x10*\x85', + 0x2b: b'\x10+\x85', + 0x2c: b'\x10,\x85', + 0x2d: b'\x10-\x85', + 0x2e: b'\x10.\x85', + 0x2f: b'\x10/\x85', + 0x30: b'\x100\x85', + 0x31: b'\x101\x85', + 0x32: b'\x102\x85', + 0x33: b'\x103\x85', + 0x34: b'\x104\x85', + 0x35: b'\x105\x85', + 0x36: b'\x106\x85', + 0x37: b'\x107\x85', + 0x38: b'\x108\x85', + 0x39: b'\x109\x85', + 0x3a: b'\x10:\x85', + 0x3b: b'\x10;\x85', + 0x3c: b'\x10<\x85', + 0x3d: b'\x10=\x85', + 0x3e: b'\x10>\x85', + 0x3f: b'\x10?\x85', + 0x40: b'\x10@\x85', + 0x41: b'\x10A\x85', + 0x42: b'\x10B\x85', + 0x43: b'\x10C\x85', + 0x44: b'\x10D\x85', + 0x45: b'\x10E\x85', + 0x46: b'\x10F\x85', + 0x47: b'\x10G\x85', + 0x48: b'\x10H\x85', + 0x49: b'\x10I\x85', + 0x4a: b'\x10J\x85', + 0x4b: b'\x10K\x85', + 0x4c: b'\x10L\x85', + 0x4d: b'\x10M\x85', + 0x4e: b'\x10N\x85', + 0x4f: b'\x10O\x85', + 0x50: b'\x10P\x85', + 0x51: b'\x10Q\x85', + 0x52: b'\x10R\x85', + 0x53: b'\x10S\x85', + 0x54: b'\x10T\x85', + 0x55: b'\x10U\x85', + 0x56: b'\x10V\x85', + 0x57: b'\x10W\x85', + 0x58: b'\x10X\x85', + 0x59: b'\x10Y\x85', + 0x5a: b'\x10Z\x85', + 0x5b: b'\x10[\x85', + 0x5c: b'\x10\\\x85', + 0x5d: b'\x10]\x85', + 0x5e: b'\x10^\x85', + 0x5f: b'\x10_\x85', + 0x60: b'\x10`\x85', + 0x61: b'\x10a\x85', + 0x62: b'\x10b\x85', + 0x63: b'\x10c\x85', + 0x64: b'\x10d\x85', + 0x65: b'\x10e\x85', + 0x66: b'\x10f\x85', + 0x67: b'\x10g\x85', + 0x68: b'\x10h\x85', + 0x69: b'\x10i\x85', + 0x6a: b'\x10j\x85', + 0x6b: b'\x10k\x85', + 0x6c: b'\x10l\x85', + 0x6d: b'\x10m\x85', + 0x6e: b'\x10n\x85', + 0x6f: b'\x10o\x85', + 0x70: b'\x10p\x85', + 0x71: b'\x10q\x85', + 0x72: b'\x10r\x85', + 0x73: b'\x10s\x85', + 0x74: b'\x10t\x85', + 0x75: b'\x10u\x85', + 0x76: b'\x10v\x85', + 0x77: b'\x10w\x85', + 0x78: b'\x10x\x85', + 0x79: b'\x10y\x85', + 0x7a: b'\x10z\x85', + 0x7b: b'\x10{\x85', + 0x7c: b'\x10|\x85', + 0x7d: b'\x10}\x85', + 0x7e: b'\x10~\x85', + 0x7f: b'\x10\x7f\x85', + 0xffff: b'\x02\x92\x85', +} +FLOATS = { + 0x0: b'\x0b', + 0x43ffff00: b'\x02\x92\x86', + 0x48800000: b'\x10 \x86', + 0x48820000: b'\x10A\x86', + 0x48840000: b'\x10!\x86', + 0x48860000: b'\x10C\x86', + 0x48880000: b'\x10"\x86', + 0x488a0000: b'\x10E\x86', + 0x488c0000: b'\x10#\x86', + 0x488e0000: b'\x10G\x86', + 0x48900000: b'\x10$\x86', + 0x48920000: b'\x10I\x86', + 0x48940000: b'\x10%\x86', + 0x48960000: b'\x10K\x86', + 0x48980000: b'\x10&\x86', + 0x489a0000: b'\x10M\x86', + 0x489c0000: b"\x10'\x86", + 0x489e0000: b'\x10O\x86', + 0x48a00000: b'\x10(\x86', + 0x48a20000: b'\x10Q\x86', + 0x48a40000: b'\x10)\x86', + 0x48a60000: b'\x10S\x86', + 0x48a80000: b'\x10*\x86', + 0x48aa0000: b'\x10U\x86', + 0x48ac0000: b'\x10+\x86', + 0x48ae0000: b'\x10W\x86', + 0x48b00000: b'\x10,\x86', + 0x48b20000: b'\x10Y\x86', + 0x48b40000: b'\x10-\x86', + 0x48b60000: b'\x10[\x86', + 0x48b80000: b'\x10.\x86', + 0x48ba0000: b'\x10]\x86', + 0x48bc0000: b'\x10/\x86', + 0x48be0000: b'\x10_\x86', + 0x48c00000: b'\x100\x86', + 0x48c20000: b'\x10a\x86', + 0x48c40000: b'\x101\x86', + 0x48c60000: b'\x10c\x86', + 0x48c80000: b'\x102\x86', + 0x48ca0000: b'\x10e\x86', + 0x48cc0000: b'\x103\x86', + 0x48ce0000: b'\x10g\x86', + 0x48d00000: b'\x104\x86', + 0x48d20000: b'\x10i\x86', + 0x48d40000: b'\x105\x86', + 0x48d60000: b'\x10k\x86', + 0x48d80000: b'\x106\x86', + 0x48da0000: b'\x10m\x86', + 0x48dc0000: b'\x107\x86', + 0x48de0000: b'\x10o\x86', + 0x48e00000: b'\x108\x86', + 0x48e20000: b'\x10q\x86', + 0x48e40000: b'\x109\x86', + 0x48e60000: b'\x10s\x86', + 0x48e80000: b'\x10:\x86', + 0x48ea0000: b'\x10u\x86', + 0x48ec0000: b'\x10;\x86', + 0x48ee0000: b'\x10w\x86', + 0x48f00000: b'\x10<\x86', + 0x48f20000: b'\x10y\x86', + 0x48f40000: b'\x10=\x86', + 0x48f60000: b'\x10{\x86', + 0x48f80000: b'\x10>\x86', + 0x48fa0000: b'\x10}\x86', + 0x48fc0000: b'\x10?\x86', + 0x48fe0000: b'\x10\x7f\x86', + 0x49800000: b'\x10\x08\x86', + 0x49880000: b'\x10\x11\x86', + 0x49900000: b'\x10\t\x86', + 0x49980000: b'\x10\x13\x86', + 0x49a00000: b'\x10\n\x86', + 0x49a80000: b'\x10\x15\x86', + 0x49b00000: b'\x10\x0b\x86', + 0x49b80000: b'\x10\x17\x86', + 0x49c00000: b'\x10\x0c\x86', + 0x49c80000: b'\x10\x19\x86', + 0x49d00000: b'\x10\r\x86', + 0x49d80000: b'\x10\x1b\x86', + 0x49e00000: b'\x10\x0e\x86', + 0x49e80000: b'\x10\x1d\x86', + 0x49f00000: b'\x10\x0f\x86', + 0x49f80000: b'\x10\x1f\x86', + 0x4a800000: b'\x05\x86', + 0x4aa00000: b'\x08\x86', + 0x4ac00000: b'\x06\x86', + 0x4ae00000: b'\x10\x07\x86', + 0x4b800000: b'\x0c', + 0x7f800000: b'\x0c\x0bn', + 0x80000000: b'\x0bv', + 0xc7800000: b'\x10\x80\x86', + 0xc8800000: b'\x10\xc0\x86', + 0xc8820000: b'\x10\xbf\x86', + 0xc8840000: b'\x10\xbe\x86', + 0xc8860000: b'\x10\xbd\x86', + 0xc8880000: b'\x10\xbc\x86', + 0xc88a0000: b'\x10\xbb\x86', + 0xc88c0000: b'\x10\xba\x86', + 0xc88e0000: b'\x10\xb9\x86', + 0xc8900000: b'\x10\xb8\x86', + 0xc8920000: b'\x10\xb7\x86', + 0xc8940000: b'\x10\xb6\x86', + 0xc8960000: b'\x10\xb5\x86', + 0xc8980000: b'\x10\xb4\x86', + 0xc89a0000: b'\x10\xb3\x86', + 0xc89c0000: b'\x10\xb2\x86', + 0xc89e0000: b'\x10\xb1\x86', + 0xc8a00000: b'\x10\xb0\x86', + 0xc8a20000: b'\x10\xaf\x86', + 0xc8a40000: b'\x10\xae\x86', + 0xc8a60000: b'\x10\xad\x86', + 0xc8a80000: b'\x10\xac\x86', + 0xc8aa0000: b'\x10\xab\x86', + 0xc8ac0000: b'\x10\xaa\x86', + 0xc8ae0000: b'\x10\xa9\x86', + 0xc8b00000: b'\x10\xa8\x86', + 0xc8b20000: b'\x10\xa7\x86', + 0xc8b40000: b'\x10\xa6\x86', + 0xc8b60000: b'\x10\xa5\x86', + 0xc8b80000: b'\x10\xa4\x86', + 0xc8ba0000: b'\x10\xa3\x86', + 0xc8bc0000: b'\x10\xa2\x86', + 0xc8be0000: b'\x10\xa1\x86', + 0xc8c00000: b'\x10\xa0\x86', + 0xc8c20000: b'\x10\x9f\x86', + 0xc8c40000: b'\x10\x9e\x86', + 0xc8c60000: b'\x10\x9d\x86', + 0xc8c80000: b'\x10\x9c\x86', + 0xc8ca0000: b'\x10\x9b\x86', + 0xc8cc0000: b'\x10\x9a\x86', + 0xc8ce0000: b'\x10\x99\x86', + 0xc8d00000: b'\x10\x98\x86', + 0xc8d20000: b'\x10\x97\x86', + 0xc8d40000: b'\x10\x96\x86', + 0xc8d60000: b'\x10\x95\x86', + 0xc8d80000: b'\x10\x94\x86', + 0xc8da0000: b'\x10\x93\x86', + 0xc8dc0000: b'\x10\x92\x86', + 0xc8de0000: b'\x10\x91\x86', + 0xc8e00000: b'\x10\x90\x86', + 0xc8e20000: b'\x10\x8f\x86', + 0xc8e40000: b'\x10\x8e\x86', + 0xc8e60000: b'\x10\x8d\x86', + 0xc8e80000: b'\x10\x8c\x86', + 0xc8ea0000: b'\x10\x8b\x86', + 0xc8ec0000: b'\x10\x8a\x86', + 0xc8ee0000: b'\x10\x89\x86', + 0xc8f00000: b'\x10\x88\x86', + 0xc8f20000: b'\x10\x87\x86', + 0xc8f40000: b'\x10\x86\x86', + 0xc8f60000: b'\x10\x85\x86', + 0xc8f80000: b'\x10\x84\x86', + 0xc8fa0000: b'\x10\x83\x86', + 0xc8fc0000: b'\x10\x82\x86', + 0xc8fe0000: b'\x10\x81\x86', + 0xc9800000: b'\x10\xf0\x86', + 0xc9880000: b'\x10\xef\x86', + 0xc9900000: b'\x10\xee\x86', + 0xc9980000: b'\x10\xed\x86', + 0xc9a00000: b'\x10\xec\x86', + 0xc9a80000: b'\x10\xeb\x86', + 0xc9b00000: b'\x10\xea\x86', + 0xc9b80000: b'\x10\xe9\x86', + 0xc9c00000: b'\x10\xe8\x86', + 0xc9c80000: b'\x10\xe7\x86', + 0xc9d00000: b'\x10\xe6\x86', + 0xc9d80000: b'\x10\xe5\x86', + 0xc9e00000: b'\x10\xe4\x86', + 0xc9e80000: b'\x10\xe3\x86', + 0xc9f00000: b'\x10\xe2\x86', + 0xc9f80000: b'\x10\xe1\x86', + 0xca800000: b'\x10\xfc\x86', + 0xcaa00000: b'\x10\xfb\x86', + 0xcac00000: b'\x10\xfa\x86', + 0xcae00000: b'\x10\xf9\x86', + 0xcb800000: b'\x02\x86', + 0xff800000: b'\x0cv\x0bn', + 0xffffffff: b'\x0b\x0bn', +} +DOUBLES = { + 0x0: b'\x0e', + 0x425fffe000000000: b'\x02\x92\x87', + 0x42d0000000000000: b'\x10@\x87', + 0x42d0400000000000: b'\x10A\x87', + 0x42d0800000000000: b'\x10B\x87', + 0x42d0c00000000000: b'\x10C\x87', + 0x42d1000000000000: b'\x10D\x87', + 0x42d1400000000000: b'\x10E\x87', + 0x42d1800000000000: b'\x10F\x87', + 0x42d1c00000000000: b'\x10G\x87', + 0x42d2000000000000: b'\x10H\x87', + 0x42d2400000000000: b'\x10I\x87', + 0x42d2800000000000: b'\x10J\x87', + 0x42d2c00000000000: b'\x10K\x87', + 0x42d3000000000000: b'\x10L\x87', + 0x42d3400000000000: b'\x10M\x87', + 0x42d3800000000000: b'\x10N\x87', + 0x42d3c00000000000: b'\x10O\x87', + 0x42d4000000000000: b'\x10P\x87', + 0x42d4400000000000: b'\x10Q\x87', + 0x42d4800000000000: b'\x10R\x87', + 0x42d4c00000000000: b'\x10S\x87', + 0x42d5000000000000: b'\x10T\x87', + 0x42d5400000000000: b'\x10U\x87', + 0x42d5800000000000: b'\x10V\x87', + 0x42d5c00000000000: b'\x10W\x87', + 0x42d6000000000000: b'\x10X\x87', + 0x42d6400000000000: b'\x10Y\x87', + 0x42d6800000000000: b'\x10Z\x87', + 0x42d6c00000000000: b'\x10[\x87', + 0x42d7000000000000: b'\x10\\\x87', + 0x42d7400000000000: b'\x10]\x87', + 0x42d7800000000000: b'\x10^\x87', + 0x42d7c00000000000: b'\x10_\x87', + 0x42d8000000000000: b'\x10`\x87', + 0x42d8400000000000: b'\x10a\x87', + 0x42d8800000000000: b'\x10b\x87', + 0x42d8c00000000000: b'\x10c\x87', + 0x42d9000000000000: b'\x10d\x87', + 0x42d9400000000000: b'\x10e\x87', + 0x42d9800000000000: b'\x10f\x87', + 0x42d9c00000000000: b'\x10g\x87', + 0x42da000000000000: b'\x10h\x87', + 0x42da400000000000: b'\x10i\x87', + 0x42da800000000000: b'\x10j\x87', + 0x42dac00000000000: b'\x10k\x87', + 0x42db000000000000: b'\x10l\x87', + 0x42db400000000000: b'\x10m\x87', + 0x42db800000000000: b'\x10n\x87', + 0x42dbc00000000000: b'\x10o\x87', + 0x42dc000000000000: b'\x10p\x87', + 0x42dc400000000000: b'\x10q\x87', + 0x42dc800000000000: b'\x10r\x87', + 0x42dcc00000000000: b'\x10s\x87', + 0x42dd000000000000: b'\x10t\x87', + 0x42dd400000000000: b'\x10u\x87', + 0x42dd800000000000: b'\x10v\x87', + 0x42ddc00000000000: b'\x10w\x87', + 0x42de000000000000: b'\x10x\x87', + 0x42de400000000000: b'\x10y\x87', + 0x42de800000000000: b'\x10z\x87', + 0x42dec00000000000: b'\x10{\x87', + 0x42df000000000000: b'\x10|\x87', + 0x42df400000000000: b'\x10}\x87', + 0x42df800000000000: b'\x10~\x87', + 0x42dfc00000000000: b'\x10\x7f\x87', + 0x42f0000000000000: b'\x10\x10\x87', + 0x42f0800000000000: b'\x10!\x87', + 0x42f1000000000000: b'\x10\x11\x87', + 0x42f1800000000000: b'\x10#\x87', + 0x42f2000000000000: b'\x10\x12\x87', + 0x42f2800000000000: b'\x10%\x87', + 0x42f3000000000000: b'\x10\x13\x87', + 0x42f3800000000000: b"\x10'\x87", + 0x42f4000000000000: b'\x10\x14\x87', + 0x42f4800000000000: b'\x10)\x87', + 0x42f5000000000000: b'\x10\x15\x87', + 0x42f5800000000000: b'\x10+\x87', + 0x42f6000000000000: b'\x10\x16\x87', + 0x42f6800000000000: b'\x10-\x87', + 0x42f7000000000000: b'\x10\x17\x87', + 0x42f7800000000000: b'\x10/\x87', + 0x42f8000000000000: b'\x10\x18\x87', + 0x42f8800000000000: b'\x101\x87', + 0x42f9000000000000: b'\x10\x19\x87', + 0x42f9800000000000: b'\x103\x87', + 0x42fa000000000000: b'\x10\x1a\x87', + 0x42fa800000000000: b'\x105\x87', + 0x42fb000000000000: b'\x10\x1b\x87', + 0x42fb800000000000: b'\x107\x87', + 0x42fc000000000000: b'\x10\x1c\x87', + 0x42fc800000000000: b'\x109\x87', + 0x42fd000000000000: b'\x10\x1d\x87', + 0x42fd800000000000: b'\x10;\x87', + 0x42fe000000000000: b'\x10\x1e\x87', + 0x42fe800000000000: b'\x10=\x87', + 0x42ff000000000000: b'\x10\x1f\x87', + 0x42ff800000000000: b'\x10?\x87', + 0x4310000000000000: b'\x07\x87', + 0x4312000000000000: b'\x10\t\x87', + 0x4314000000000000: b'\x08\x87', + 0x4316000000000000: b'\x10\x0b\x87', + 0x4318000000000000: b'\x10\x06\x87', + 0x431a000000000000: b'\x10\r\x87', + 0x431c000000000000: b'\x10\x07\x87', + 0x431e000000000000: b'\x10\x0f\x87', + 0x4330000000000000: b'\x0f', + 0x4338000000000000: b'\x06\x87', + 0x7ff0000000000000: b'\x0f\x0eo', + 0x8000000000000000: b'\x0ew', + 0xc2d0000000000000: b'\x10\x80\x87', + 0xc2d0400000000000: b'\x10\xbf\x87', + 0xc2d0800000000000: b'\x10\xbe\x87', + 0xc2d0c00000000000: b'\x10\xbd\x87', + 0xc2d1000000000000: b'\x10\xbc\x87', + 0xc2d1400000000000: b'\x10\xbb\x87', + 0xc2d1800000000000: b'\x10\xba\x87', + 0xc2d1c00000000000: b'\x10\xb9\x87', + 0xc2d2000000000000: b'\x10\xb8\x87', + 0xc2d2400000000000: b'\x10\xb7\x87', + 0xc2d2800000000000: b'\x10\xb6\x87', + 0xc2d2c00000000000: b'\x10\xb5\x87', + 0xc2d3000000000000: b'\x10\xb4\x87', + 0xc2d3400000000000: b'\x10\xb3\x87', + 0xc2d3800000000000: b'\x10\xb2\x87', + 0xc2d3c00000000000: b'\x10\xb1\x87', + 0xc2d4000000000000: b'\x10\xb0\x87', + 0xc2d4400000000000: b'\x10\xaf\x87', + 0xc2d4800000000000: b'\x10\xae\x87', + 0xc2d4c00000000000: b'\x10\xad\x87', + 0xc2d5000000000000: b'\x10\xac\x87', + 0xc2d5400000000000: b'\x10\xab\x87', + 0xc2d5800000000000: b'\x10\xaa\x87', + 0xc2d5c00000000000: b'\x10\xa9\x87', + 0xc2d6000000000000: b'\x10\xa8\x87', + 0xc2d6400000000000: b'\x10\xa7\x87', + 0xc2d6800000000000: b'\x10\xa6\x87', + 0xc2d6c00000000000: b'\x10\xa5\x87', + 0xc2d7000000000000: b'\x10\xa4\x87', + 0xc2d7400000000000: b'\x10\xa3\x87', + 0xc2d7800000000000: b'\x10\xa2\x87', + 0xc2d7c00000000000: b'\x10\xa1\x87', + 0xc2d8000000000000: b'\x10\xa0\x87', + 0xc2d8400000000000: b'\x10\x9f\x87', + 0xc2d8800000000000: b'\x10\x9e\x87', + 0xc2d8c00000000000: b'\x10\x9d\x87', + 0xc2d9000000000000: b'\x10\x9c\x87', + 0xc2d9400000000000: b'\x10\x9b\x87', + 0xc2d9800000000000: b'\x10\x9a\x87', + 0xc2d9c00000000000: b'\x10\x99\x87', + 0xc2da000000000000: b'\x10\x98\x87', + 0xc2da400000000000: b'\x10\x97\x87', + 0xc2da800000000000: b'\x10\x96\x87', + 0xc2dac00000000000: b'\x10\x95\x87', + 0xc2db000000000000: b'\x10\x94\x87', + 0xc2db400000000000: b'\x10\x93\x87', + 0xc2db800000000000: b'\x10\x92\x87', + 0xc2dbc00000000000: b'\x10\x91\x87', + 0xc2dc000000000000: b'\x10\x90\x87', + 0xc2dc400000000000: b'\x10\x8f\x87', + 0xc2dc800000000000: b'\x10\x8e\x87', + 0xc2dcc00000000000: b'\x10\x8d\x87', + 0xc2dd000000000000: b'\x10\x8c\x87', + 0xc2dd400000000000: b'\x10\x8b\x87', + 0xc2dd800000000000: b'\x10\x8a\x87', + 0xc2ddc00000000000: b'\x10\x89\x87', + 0xc2de000000000000: b'\x10\x88\x87', + 0xc2de400000000000: b'\x10\x87\x87', + 0xc2de800000000000: b'\x10\x86\x87', + 0xc2dec00000000000: b'\x10\x85\x87', + 0xc2df000000000000: b'\x10\x84\x87', + 0xc2df400000000000: b'\x10\x83\x87', + 0xc2df800000000000: b'\x10\x82\x87', + 0xc2dfc00000000000: b'\x10\x81\x87', + 0xc2f0000000000000: b'\x10\xe0\x87', + 0xc2f0800000000000: b'\x10\xdf\x87', + 0xc2f1000000000000: b'\x10\xde\x87', + 0xc2f1800000000000: b'\x10\xdd\x87', + 0xc2f2000000000000: b'\x10\xdc\x87', + 0xc2f2800000000000: b'\x10\xdb\x87', + 0xc2f3000000000000: b'\x10\xda\x87', + 0xc2f3800000000000: b'\x10\xd9\x87', + 0xc2f4000000000000: b'\x10\xd8\x87', + 0xc2f4800000000000: b'\x10\xd7\x87', + 0xc2f5000000000000: b'\x10\xd6\x87', + 0xc2f5800000000000: b'\x10\xd5\x87', + 0xc2f6000000000000: b'\x10\xd4\x87', + 0xc2f6800000000000: b'\x10\xd3\x87', + 0xc2f7000000000000: b'\x10\xd2\x87', + 0xc2f7800000000000: b'\x10\xd1\x87', + 0xc2f8000000000000: b'\x10\xd0\x87', + 0xc2f8800000000000: b'\x10\xcf\x87', + 0xc2f9000000000000: b'\x10\xce\x87', + 0xc2f9800000000000: b'\x10\xcd\x87', + 0xc2fa000000000000: b'\x10\xcc\x87', + 0xc2fa800000000000: b'\x10\xcb\x87', + 0xc2fb000000000000: b'\x10\xca\x87', + 0xc2fb800000000000: b'\x10\xc9\x87', + 0xc2fc000000000000: b'\x10\xc8\x87', + 0xc2fc800000000000: b'\x10\xc7\x87', + 0xc2fd000000000000: b'\x10\xc6\x87', + 0xc2fd800000000000: b'\x10\xc5\x87', + 0xc2fe000000000000: b'\x10\xc4\x87', + 0xc2fe800000000000: b'\x10\xc3\x87', + 0xc2ff000000000000: b'\x10\xc2\x87', + 0xc2ff800000000000: b'\x10\xc1\x87', + 0xc310000000000000: b'\x10\xf8\x87', + 0xc312000000000000: b'\x10\xf7\x87', + 0xc314000000000000: b'\x10\xf6\x87', + 0xc316000000000000: b'\x10\xf5\x87', + 0xc318000000000000: b'\x10\xf4\x87', + 0xc31a000000000000: b'\x10\xf3\x87', + 0xc31c000000000000: b'\x10\xf2\x87', + 0xc31e000000000000: b'\x10\xf1\x87', + 0xc330000000000000: b'\x02\x87', + 0xc338000000000000: b'\x10\xfd\x87', + 0xfff0000000000000: b'\x0fw\x0eo', + 0xffffffffffffffff: b'\x0e\x0eo', +} diff --git a/src/main/resources/enjarify-master/enjarify/jvm/error.py b/src/main/resources/enjarify-master/enjarify/jvm/error.py new file mode 100644 index 00000000..8c95bd9d --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/error.py @@ -0,0 +1,16 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# e.g. too many registers in a method, too many constant pool entries, code too long +class ClassfileLimitExceeded(Exception): pass diff --git a/src/main/resources/enjarify-master/enjarify/jvm/genmathops.py b/src/main/resources/enjarify-master/enjarify/jvm/genmathops.py new file mode 100644 index 00000000..e76f68fb --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/genmathops.py @@ -0,0 +1,65 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Generate mathops.py, the lookup tables giving information about dalvik math operations by opcode +if __name__ == "__main__": + unary = 'ineg inot lneg lnot fneg dneg i2l i2f i2d l2i l2f l2d f2i f2l f2d d2i d2l d2f i2b i2c i2s' + binary = 'iadd isub imul idiv irem iand ior ixor ishl ishr iushr ladd lsub lmul ldiv lrem land lor lxor lshl lshr lushr fadd fsub fmul fdiv frem dadd dsub dmul ddiv drem' + binary = binary + ' ' + binary + binlit = 'iadd isub imul idiv irem iand ior ixor ' + binlit = binlit + binlit + 'ishl ishr iushr' + stypes = dict(zip('ifldbcs', 'INT FLOAT LONG DOUBLE INT INT INT'.split())) + + print(''' +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Autogenerated by genmathops.py - do not edit''') + print('from . import jvmops') + print('from . import scalartypes as scalars') + + print('UNARY = {') + for i, code in enumerate(unary.split()): + code = code.replace('not','xor') + if '2' in code: + srct = stypes[code[0]] + destt = stypes[code[2]] + else: + srct = destt = stypes[code[0]] + print(' 0x{:02X}: (jvmops.{}, scalars.{}, scalars.{}),'.format(i + 0x7b, code.upper(), srct, destt)) + print('}') + + print('BINARY = {') + for i, code in enumerate(binary.split()): + st = stypes[code[0]] + # shift instructions have second arg an int even when operating on longs + st2 = 'INT' if 'sh' in code else st + print(' 0x{:02X}: (jvmops.{}, scalars.{}, scalars.{}),'.format(i + 0x90, code.upper(), st, st2)) + print('}') + + print('BINARY_LIT = {') + for i, code in enumerate(binlit.split()): + print(' 0x{:02X}: jvmops.{},'.format(i + 0xd0, code.upper())) + print('}') diff --git a/src/main/resources/enjarify-master/enjarify/jvm/ir.py b/src/main/resources/enjarify-master/enjarify/jvm/ir.py new file mode 100644 index 00000000..3a56fb70 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/ir.py @@ -0,0 +1,220 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import struct + +from .constants import calc +from .jvmops import * +from . import constantpool, error +from . import scalartypes as scalars + +# IR representation roughly corresponding to JVM bytecode instructions. Note that these +# may correspond to more than one instruction in the actual bytecode generated but they +# are useful logical units for the internal optimization passes. + +class JvmInstruction: + def __init__(self, bytecode=None): + self.bytecode = bytecode # None or bytestring + + def fallsthrough(self): return True + def targets(self): return [] + +# Used to mark locations in the IR instructions for various purposes. These are +# seperate IR 'instructions' since the optimization passes may remove or replace +# the other instructions. +class Label(JvmInstruction): + def __init__(self, id=None): + super().__init__(b'') + self.id = id # None or int + +_ilfdaOrd = [scalars.INT, scalars.LONG, scalars.FLOAT, scalars.DOUBLE, scalars.OBJ].index +class RegAccess(JvmInstruction): + def __init__(self, dreg, st, store): + super().__init__() + self.key = dreg, st + self.store = store + self.wide = scalars.iswide(st) + + @staticmethod + def raw(local, stype, store): + new = RegAccess(0, stype, store) + new.calcBytecode(local) + return new + + def calcBytecode(self, local): + assert self.bytecode is None + stype = self.key[1] + op_off = (ISTORE - ILOAD) if self.store else 0 + if local < 4: + self.bytecode = struct.pack('>B', ILOAD_0 + op_off + local + _ilfdaOrd(stype)*4) + elif local < 256: + self.bytecode = struct.pack('>BB', ILOAD + op_off + _ilfdaOrd(stype), local) + else: + self.bytecode = struct.pack('>BBH', WIDE, ILOAD + op_off + _ilfdaOrd(stype), local) + +class PrimConstant(JvmInstruction): + def __init__(self, st, val, pool=None): + super().__init__() + self.st = st + self.val = val = calc.normalize(st, val) + self.wide = scalars.iswide(st) + + # If pool is passed in, just grab an entry greedily, otherwise calculate + # a sequence of bytecode to generate the constant + if pool is not None: + self.bytecode = calc.lookupOnly(st, val) + if self.bytecode is None: + self._from_pool(pool) + if self.bytecode is None: + raise error.ClassfileLimitExceeded() + else: + self.bytecode = calc.calc(st, val) + + def cpool_key(self): + tag = { + scalars.INT: constantpool.CONSTANT_Integer, + scalars.FLOAT: constantpool.CONSTANT_Float, + scalars.DOUBLE: constantpool.CONSTANT_Double, + scalars.LONG: constantpool.CONSTANT_Long, + }[self.st] + return tag, self.val + + def _from_pool(self, pool): + index = pool.tryGet(self.cpool_key()) + if index is not None: + if scalars.iswide(self.st): + code = struct.pack('>BH', LDC2_W, index) + elif index >= 256: + code = struct.pack('>BH', LDC_W, index) + else: + code = struct.pack('>BB', LDC, index) + self.bytecode = code + + def fix_with_pool(self, pool): + if len(self.bytecode) > 2: + self._from_pool(pool) + +class OtherConstant(JvmInstruction): + wide = False # will be null, string or class - always single + +class LazyJumpBase(JvmInstruction): + def __init__(self, target): + super().__init__() + self.target = target + + def targets(self): return [self.target] + + def widenIfNecessary(self, labels, posd): + offset = posd[labels[self.target]] - posd[self] + if not -32768 <= offset < 32768: + self.min = self.max + return True + return False + +class Goto(LazyJumpBase): + def __init__(self, target): + super().__init__(target) + self.min = 3 + self.max = 5 # upper limit on length of bytecode + + def fallsthrough(self): return False + + def calcBytecode(self, posd, labels): + offset = posd[labels[self.target]] - posd[self] + if self.max == 3: + self.bytecode = struct.pack('>Bh', GOTO, offset) + else: + self.bytecode = struct.pack('>Bi', GOTO_W, offset) + +_ifOpposite = {} +for _op1, _op2 in [(IFEQ, IFNE), (IFLT, IFGE), (IFGT, IFLE), (IF_ICMPEQ, IF_ICMPNE), (IF_ICMPLT, IF_ICMPGE), (IF_ICMPGT, IF_ICMPLE), (IFNULL, IFNONNULL), (IF_ACMPEQ, IF_ACMPNE)]: + _ifOpposite[_op1] = _op2 + _ifOpposite[_op2] = _op1 +class If(LazyJumpBase): + def __init__(self, op, target): + super().__init__(target) + self.op = op + self.min = 3 + self.max = 8 # upper limit on length of bytecode + + # Unlike with goto, if instructions are limited to a 16 bit jump offset. + # Therefore, for larger jumps, we have to substitute a different sequence + # + # if x goto A + # B: whatever + # + # becomes + # + # if !x goto B + # goto A + # B: whatever + def calcBytecode(self, posd, labels): + if self.max == 3: + offset = posd[labels[self.target]] - posd[self] + self.bytecode = struct.pack('>Bh', self.op, offset) + else: + op = _ifOpposite[self.op] + offset = posd[labels[self.target]] - posd[self] - 3 + self.bytecode = struct.pack('>BhBi', op, 8, GOTO_W, offset) + +class Switch(JvmInstruction): + def __init__(self, default, jumps): + super().__init__() + self.default = default + self.jumps = jumps + + assert jumps + self.low = min(jumps) + self.high = max(jumps) + + table_count = self.high - self.low + 1 + table_size = 4*(table_count+1) + jump_size = 8*len(jumps) + + self.istable = jump_size > table_size + self.nopad_size = 9 + (table_size if self.istable else jump_size) + self.max = self.nopad_size + 3 + + def fallsthrough(self): return False + def targets(self): return sorted(set(self.jumps.values())) + [self.default] + + def calcBytecode(self, posd, labels): + pos = posd[self] + offset = posd[labels[self.default]] - pos + pad = (-pos-1) % 4 + + bytecode = bytearray() + if self.istable: + bytecode += bytes([TABLESWITCH] + [0]*pad) + bytecode += struct.pack('>iii', offset, self.low, self.high) + for k in range(self.low, self.high + 1): + target = self.jumps.get(k, self.default) + bytecode += struct.pack('>i', posd[labels[target]] - pos) + else: + bytecode += bytes([LOOKUPSWITCH] + [0]*pad) + bytecode += struct.pack('>iI', offset, len(self.jumps)) + for k, target in sorted(self.jumps.items()): + offset = posd[labels[target]] - pos + bytecode += struct.pack('>ii', k, offset) + self.bytecode = bytes(bytecode) + +_return_or_throw_bytecodes = {bytes([op]) for op in range(IRETURN, RETURN+1) } +_return_or_throw_bytecodes.add(bytes([ATHROW])) +class Other(JvmInstruction): + def fallsthrough(self): return self.bytecode not in _return_or_throw_bytecodes + +def Pop(): return Other(bytes([POP])) +def Pop2(): return Other(bytes([POP2])) +def Dup(): return Other(bytes([DUP])) +def Dup2(): return Other(bytes([DUP2])) diff --git a/src/main/resources/enjarify-master/enjarify/jvm/jvmops.py b/src/main/resources/enjarify-master/enjarify/jvm/jvmops.py new file mode 100644 index 00000000..d50f6be7 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/jvmops.py @@ -0,0 +1,216 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +NOP = 0x00 +ACONST_NULL = 0x01 +ICONST_M1 = 0x02 +ICONST_0 = 0x03 +ICONST_1 = 0x04 +ICONST_2 = 0x05 +ICONST_3 = 0x06 +ICONST_4 = 0x07 +ICONST_5 = 0x08 +LCONST_0 = 0x09 +LCONST_1 = 0x0A +FCONST_0 = 0x0B +FCONST_1 = 0x0C +FCONST_2 = 0x0D +DCONST_0 = 0x0E +DCONST_1 = 0x0F +BIPUSH = 0x10 +SIPUSH = 0x11 +LDC = 0x12 +LDC_W = 0x13 +LDC2_W = 0x14 +ILOAD = 0x15 +LLOAD = 0x16 +FLOAD = 0x17 +DLOAD = 0x18 +ALOAD = 0x19 +ILOAD_0 = 0x1A +ILOAD_1 = 0x1B +ILOAD_2 = 0x1C +ILOAD_3 = 0x1D +LLOAD_0 = 0x1E +LLOAD_1 = 0x1F +LLOAD_2 = 0x20 +LLOAD_3 = 0x21 +FLOAD_0 = 0x22 +FLOAD_1 = 0x23 +FLOAD_2 = 0x24 +FLOAD_3 = 0x25 +DLOAD_0 = 0x26 +DLOAD_1 = 0x27 +DLOAD_2 = 0x28 +DLOAD_3 = 0x29 +ALOAD_0 = 0x2A +ALOAD_1 = 0x2B +ALOAD_2 = 0x2C +ALOAD_3 = 0x2D +IALOAD = 0x2E +LALOAD = 0x2F +FALOAD = 0x30 +DALOAD = 0x31 +AALOAD = 0x32 +BALOAD = 0x33 +CALOAD = 0x34 +SALOAD = 0x35 +ISTORE = 0x36 +LSTORE = 0x37 +FSTORE = 0x38 +DSTORE = 0x39 +ASTORE = 0x3A +ISTORE_0 = 0x3B +ISTORE_1 = 0x3C +ISTORE_2 = 0x3D +ISTORE_3 = 0x3E +LSTORE_0 = 0x3F +LSTORE_1 = 0x40 +LSTORE_2 = 0x41 +LSTORE_3 = 0x42 +FSTORE_0 = 0x43 +FSTORE_1 = 0x44 +FSTORE_2 = 0x45 +FSTORE_3 = 0x46 +DSTORE_0 = 0x47 +DSTORE_1 = 0x48 +DSTORE_2 = 0x49 +DSTORE_3 = 0x4A +ASTORE_0 = 0x4B +ASTORE_1 = 0x4C +ASTORE_2 = 0x4D +ASTORE_3 = 0x4E +IASTORE = 0x4F +LASTORE = 0x50 +FASTORE = 0x51 +DASTORE = 0x52 +AASTORE = 0x53 +BASTORE = 0x54 +CASTORE = 0x55 +SASTORE = 0x56 +POP = 0x57 +POP2 = 0x58 +DUP = 0x59 +DUP_X1 = 0x5A +DUP_X2 = 0x5B +DUP2 = 0x5C +DUP2_X1 = 0x5D +DUP2_X2 = 0x5E +SWAP = 0x5F +IADD = 0x60 +LADD = 0x61 +FADD = 0x62 +DADD = 0x63 +ISUB = 0x64 +LSUB = 0x65 +FSUB = 0x66 +DSUB = 0x67 +IMUL = 0x68 +LMUL = 0x69 +FMUL = 0x6A +DMUL = 0x6B +IDIV = 0x6C +LDIV = 0x6D +FDIV = 0x6E +DDIV = 0x6F +IREM = 0x70 +LREM = 0x71 +FREM = 0x72 +DREM = 0x73 +INEG = 0x74 +LNEG = 0x75 +FNEG = 0x76 +DNEG = 0x77 +ISHL = 0x78 +LSHL = 0x79 +ISHR = 0x7A +LSHR = 0x7B +IUSHR = 0x7C +LUSHR = 0x7D +IAND = 0x7E +LAND = 0x7F +IOR = 0x80 +LOR = 0x81 +IXOR = 0x82 +LXOR = 0x83 +IINC = 0x84 +I2L = 0x85 +I2F = 0x86 +I2D = 0x87 +L2I = 0x88 +L2F = 0x89 +L2D = 0x8A +F2I = 0x8B +F2L = 0x8C +F2D = 0x8D +D2I = 0x8E +D2L = 0x8F +D2F = 0x90 +I2B = 0x91 +I2C = 0x92 +I2S = 0x93 +LCMP = 0x94 +FCMPL = 0x95 +FCMPG = 0x96 +DCMPL = 0x97 +DCMPG = 0x98 +IFEQ = 0x99 +IFNE = 0x9A +IFLT = 0x9B +IFGE = 0x9C +IFGT = 0x9D +IFLE = 0x9E +IF_ICMPEQ = 0x9F +IF_ICMPNE = 0xA0 +IF_ICMPLT = 0xA1 +IF_ICMPGE = 0xA2 +IF_ICMPGT = 0xA3 +IF_ICMPLE = 0xA4 +IF_ACMPEQ = 0xA5 +IF_ACMPNE = 0xA6 +GOTO = 0xA7 +JSR = 0xA8 +RET = 0xA9 +TABLESWITCH = 0xAA +LOOKUPSWITCH = 0xAB +IRETURN = 0xAC +LRETURN = 0xAD +FRETURN = 0xAE +DRETURN = 0xAF +ARETURN = 0xB0 +RETURN = 0xB1 +GETSTATIC = 0xB2 +PUTSTATIC = 0xB3 +GETFIELD = 0xB4 +PUTFIELD = 0xB5 +INVOKEVIRTUAL = 0xB6 +INVOKESPECIAL = 0xB7 +INVOKESTATIC = 0xB8 +INVOKEINTERFACE = 0xB9 +INVOKEDYNAMIC = 0xBA +NEW = 0xBB +NEWARRAY = 0xBC +ANEWARRAY = 0xBD +ARRAYLENGTH = 0xBE +ATHROW = 0xBF +CHECKCAST = 0xC0 +INSTANCEOF = 0xC1 +MONITORENTER = 0xC2 +MONITOREXIT = 0xC3 +WIDE = 0xC4 +MULTIANEWARRAY = 0xC5 +IFNULL = 0xC6 +IFNONNULL = 0xC7 +GOTO_W = 0xC8 +JSR_W = 0xC9 diff --git a/src/main/resources/enjarify-master/enjarify/jvm/mathops.py b/src/main/resources/enjarify-master/enjarify/jvm/mathops.py new file mode 100644 index 00000000..fa78bb8e --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/mathops.py @@ -0,0 +1,128 @@ + +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Autogenerated by genmathops.py - do not edit +from . import jvmops +from . import scalartypes as scalars +UNARY = { + 0x7B: (jvmops.INEG, scalars.INT, scalars.INT), + 0x7C: (jvmops.IXOR, scalars.INT, scalars.INT), + 0x7D: (jvmops.LNEG, scalars.LONG, scalars.LONG), + 0x7E: (jvmops.LXOR, scalars.LONG, scalars.LONG), + 0x7F: (jvmops.FNEG, scalars.FLOAT, scalars.FLOAT), + 0x80: (jvmops.DNEG, scalars.DOUBLE, scalars.DOUBLE), + 0x81: (jvmops.I2L, scalars.INT, scalars.LONG), + 0x82: (jvmops.I2F, scalars.INT, scalars.FLOAT), + 0x83: (jvmops.I2D, scalars.INT, scalars.DOUBLE), + 0x84: (jvmops.L2I, scalars.LONG, scalars.INT), + 0x85: (jvmops.L2F, scalars.LONG, scalars.FLOAT), + 0x86: (jvmops.L2D, scalars.LONG, scalars.DOUBLE), + 0x87: (jvmops.F2I, scalars.FLOAT, scalars.INT), + 0x88: (jvmops.F2L, scalars.FLOAT, scalars.LONG), + 0x89: (jvmops.F2D, scalars.FLOAT, scalars.DOUBLE), + 0x8A: (jvmops.D2I, scalars.DOUBLE, scalars.INT), + 0x8B: (jvmops.D2L, scalars.DOUBLE, scalars.LONG), + 0x8C: (jvmops.D2F, scalars.DOUBLE, scalars.FLOAT), + 0x8D: (jvmops.I2B, scalars.INT, scalars.INT), + 0x8E: (jvmops.I2C, scalars.INT, scalars.INT), + 0x8F: (jvmops.I2S, scalars.INT, scalars.INT), +} +BINARY = { + 0x90: (jvmops.IADD, scalars.INT, scalars.INT), + 0x91: (jvmops.ISUB, scalars.INT, scalars.INT), + 0x92: (jvmops.IMUL, scalars.INT, scalars.INT), + 0x93: (jvmops.IDIV, scalars.INT, scalars.INT), + 0x94: (jvmops.IREM, scalars.INT, scalars.INT), + 0x95: (jvmops.IAND, scalars.INT, scalars.INT), + 0x96: (jvmops.IOR, scalars.INT, scalars.INT), + 0x97: (jvmops.IXOR, scalars.INT, scalars.INT), + 0x98: (jvmops.ISHL, scalars.INT, scalars.INT), + 0x99: (jvmops.ISHR, scalars.INT, scalars.INT), + 0x9A: (jvmops.IUSHR, scalars.INT, scalars.INT), + 0x9B: (jvmops.LADD, scalars.LONG, scalars.LONG), + 0x9C: (jvmops.LSUB, scalars.LONG, scalars.LONG), + 0x9D: (jvmops.LMUL, scalars.LONG, scalars.LONG), + 0x9E: (jvmops.LDIV, scalars.LONG, scalars.LONG), + 0x9F: (jvmops.LREM, scalars.LONG, scalars.LONG), + 0xA0: (jvmops.LAND, scalars.LONG, scalars.LONG), + 0xA1: (jvmops.LOR, scalars.LONG, scalars.LONG), + 0xA2: (jvmops.LXOR, scalars.LONG, scalars.LONG), + 0xA3: (jvmops.LSHL, scalars.LONG, scalars.INT), + 0xA4: (jvmops.LSHR, scalars.LONG, scalars.INT), + 0xA5: (jvmops.LUSHR, scalars.LONG, scalars.INT), + 0xA6: (jvmops.FADD, scalars.FLOAT, scalars.FLOAT), + 0xA7: (jvmops.FSUB, scalars.FLOAT, scalars.FLOAT), + 0xA8: (jvmops.FMUL, scalars.FLOAT, scalars.FLOAT), + 0xA9: (jvmops.FDIV, scalars.FLOAT, scalars.FLOAT), + 0xAA: (jvmops.FREM, scalars.FLOAT, scalars.FLOAT), + 0xAB: (jvmops.DADD, scalars.DOUBLE, scalars.DOUBLE), + 0xAC: (jvmops.DSUB, scalars.DOUBLE, scalars.DOUBLE), + 0xAD: (jvmops.DMUL, scalars.DOUBLE, scalars.DOUBLE), + 0xAE: (jvmops.DDIV, scalars.DOUBLE, scalars.DOUBLE), + 0xAF: (jvmops.DREM, scalars.DOUBLE, scalars.DOUBLE), + 0xB0: (jvmops.IADD, scalars.INT, scalars.INT), + 0xB1: (jvmops.ISUB, scalars.INT, scalars.INT), + 0xB2: (jvmops.IMUL, scalars.INT, scalars.INT), + 0xB3: (jvmops.IDIV, scalars.INT, scalars.INT), + 0xB4: (jvmops.IREM, scalars.INT, scalars.INT), + 0xB5: (jvmops.IAND, scalars.INT, scalars.INT), + 0xB6: (jvmops.IOR, scalars.INT, scalars.INT), + 0xB7: (jvmops.IXOR, scalars.INT, scalars.INT), + 0xB8: (jvmops.ISHL, scalars.INT, scalars.INT), + 0xB9: (jvmops.ISHR, scalars.INT, scalars.INT), + 0xBA: (jvmops.IUSHR, scalars.INT, scalars.INT), + 0xBB: (jvmops.LADD, scalars.LONG, scalars.LONG), + 0xBC: (jvmops.LSUB, scalars.LONG, scalars.LONG), + 0xBD: (jvmops.LMUL, scalars.LONG, scalars.LONG), + 0xBE: (jvmops.LDIV, scalars.LONG, scalars.LONG), + 0xBF: (jvmops.LREM, scalars.LONG, scalars.LONG), + 0xC0: (jvmops.LAND, scalars.LONG, scalars.LONG), + 0xC1: (jvmops.LOR, scalars.LONG, scalars.LONG), + 0xC2: (jvmops.LXOR, scalars.LONG, scalars.LONG), + 0xC3: (jvmops.LSHL, scalars.LONG, scalars.INT), + 0xC4: (jvmops.LSHR, scalars.LONG, scalars.INT), + 0xC5: (jvmops.LUSHR, scalars.LONG, scalars.INT), + 0xC6: (jvmops.FADD, scalars.FLOAT, scalars.FLOAT), + 0xC7: (jvmops.FSUB, scalars.FLOAT, scalars.FLOAT), + 0xC8: (jvmops.FMUL, scalars.FLOAT, scalars.FLOAT), + 0xC9: (jvmops.FDIV, scalars.FLOAT, scalars.FLOAT), + 0xCA: (jvmops.FREM, scalars.FLOAT, scalars.FLOAT), + 0xCB: (jvmops.DADD, scalars.DOUBLE, scalars.DOUBLE), + 0xCC: (jvmops.DSUB, scalars.DOUBLE, scalars.DOUBLE), + 0xCD: (jvmops.DMUL, scalars.DOUBLE, scalars.DOUBLE), + 0xCE: (jvmops.DDIV, scalars.DOUBLE, scalars.DOUBLE), + 0xCF: (jvmops.DREM, scalars.DOUBLE, scalars.DOUBLE), +} +BINARY_LIT = { + 0xD0: jvmops.IADD, + 0xD1: jvmops.ISUB, + 0xD2: jvmops.IMUL, + 0xD3: jvmops.IDIV, + 0xD4: jvmops.IREM, + 0xD5: jvmops.IAND, + 0xD6: jvmops.IOR, + 0xD7: jvmops.IXOR, + 0xD8: jvmops.IADD, + 0xD9: jvmops.ISUB, + 0xDA: jvmops.IMUL, + 0xDB: jvmops.IDIV, + 0xDC: jvmops.IREM, + 0xDD: jvmops.IAND, + 0xDE: jvmops.IOR, + 0xDF: jvmops.IXOR, + 0xE0: jvmops.ISHL, + 0xE1: jvmops.ISHR, + 0xE2: jvmops.IUSHR, +} diff --git a/src/main/resources/enjarify-master/enjarify/jvm/optimization/__init__.py b/src/main/resources/enjarify-master/enjarify/jvm/optimization/__init__.py new file mode 100644 index 00000000..e7522b2c --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/optimization/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/src/main/resources/enjarify-master/enjarify/jvm/optimization/consts.py b/src/main/resources/enjarify-master/enjarify/jvm/optimization/consts.py new file mode 100644 index 00000000..60f77e73 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/optimization/consts.py @@ -0,0 +1,76 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import collections + +from .. import scalartypes as scalars +from .. import ir + +def allocateRequiredConstants(pool, long_irs): + # see comments in writebytecode.finishCodeAttrs + # We allocate the constants pretty much greedily. This is far from optimal, + # but it shouldn't be a big deal since this code is almost never required + # in the first place. In fact, there are no known real world classes that + # even come close to exhausting the constant pool. + narrow_pairs = collections.Counter() + wide_pairs = collections.Counter() + alt_lens = {} + for _ir in long_irs: + for ins in _ir.flat_instructions: + if isinstance(ins, ir.PrimConstant): + key = ins.cpool_key() + alt_lens[key] = len(ins.bytecode) + if scalars.iswide(ins.st): + if len(ins.bytecode) > 3: + wide_pairs[key] += 1 + else: + if len(ins.bytecode) > 2: + narrow_pairs[key] += 1 + + # see if already in the constant pool + for x in pool.vals: + del narrow_pairs[x] + del wide_pairs[x] + + # if we have enough space for all required constants, preferentially allocate + # most commonly used constants to first 255 slots + if pool.space() >= len(narrow_pairs) + 2*len(wide_pairs) and pool.lowspace() > 0: + # We can't use Counter.most_common here because it is nondeterminstic in + # the case of ties. + most_common = sorted(narrow_pairs, key=lambda p:(-narrow_pairs[p], p)) + for key in most_common[:pool.lowspace()]: + pool.insertDirectly(key, True) + del narrow_pairs[key] + + scores = {} + for p, count in narrow_pairs.items(): + scores[p] = (alt_lens[p] - 3) * count + for p, count in wide_pairs.items(): + scores[p] = (alt_lens[p] - 3) * count + + # sort by score + narrowq = sorted(narrow_pairs, key=lambda p:(scores[p], p)) + wideq = sorted(wide_pairs, key=lambda p:(scores[p], p)) + while pool.space() >= 1 and (narrowq or wideq): + if not narrowq and pool.space() < 2: + break + + wscore = sum(scores[p] for p in wideq[-1:]) + nscore = sum(scores[p] for p in narrowq[-2:]) + if pool.space() >= 2 and wscore > nscore and wscore > 0: + pool.insertDirectly(wideq.pop(), False) + elif nscore > 0: + pool.insertDirectly(narrowq.pop(), True) + else: + break diff --git a/src/main/resources/enjarify-master/enjarify/jvm/optimization/jumps.py b/src/main/resources/enjarify-master/enjarify/jvm/optimization/jumps.py new file mode 100644 index 00000000..d204fa98 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/optimization/jumps.py @@ -0,0 +1,100 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import struct + +from .. import ir, error +from ..jvmops import * +from . import options + +def _calcMinimumPositions(instrs): + posd = {} + pos = 0 + for ins in instrs: + posd[ins] = pos + if isinstance(ins, ir.LazyJumpBase): + pos += ins.min + elif isinstance(ins, ir.Switch): + pad = (-pos-1) % 4 + pos += pad + ins.nopad_size + else: + pos += len(ins.bytecode) + return posd, pos + +def optimizeJumps(irdata): + # For jump offsets of more than +-32767, a longer form of the jump instruction + # is required. This function finds the optimal jump widths by optimistically + # starting with everything narrow and then iteratively marking instructions + # as wide if their offset is too large (in rare cases, this can in turn cause + # other jumps to become wide, hence iterating until convergence) + instrs = irdata.flat_instructions + jump_instrs = [ins for ins in instrs if isinstance(ins, ir.LazyJumpBase)] + + while 1: + done = True + posd, _ = _calcMinimumPositions(instrs) + + for ins in jump_instrs: + if ins.min < ins.max and ins.widenIfNecessary(irdata.labels, posd): + done = False + if done: + break + + for ins in jump_instrs: + assert ins.min <= ins.max + ins.max = ins.min + +def createBytecode(irdata, opts): + instrs = irdata.flat_instructions + posd, end_pos = _calcMinimumPositions(instrs) + + bytecode = bytearray() + for ins in instrs: + if isinstance(ins, (ir.LazyJumpBase, ir.Switch)): + ins.calcBytecode(posd, irdata.labels) + bytecode += ins.bytecode + assert len(bytecode) == end_pos + + + if len(bytecode) > 65535: + # If code is too long and optimization is off, raise exception so we can + # retry with optimization. If it is still too long with optimization, + # don't raise an error, since a class with illegally long code is better + # than no output at all. + if opts is not options.ALL: + raise error.ClassfileLimitExceeded() + + + prev_instr_map = dict(zip(instrs[1:], instrs)) + packed_excepts = [] + for s, e, h, c in irdata.excepts: + # There appears to be a bug in the JVM where in rare cases, it throws + # the exception at the address of the instruction _before_ the instruction + # that actually caused the exception, triggering the wrong handler + # therefore we include the previous (IR) instruction too + # Note that this cannot cause an overlap because in that case the previous + # instruction would just be a label and hence not change anything + s = prev_instr_map.get(s, s) + + s_off = posd[s] + e_off = posd[e] + h_off = posd[h] + assert s_off <= e_off + if s_off < e_off: + packed_excepts.append(struct.pack('>HHHH', s_off, e_off, h_off, c)) + else: + print('Skipping zero width exception!') + assert 0 + + return bytes(bytecode), packed_excepts diff --git a/src/main/resources/enjarify-master/enjarify/jvm/optimization/options.py b/src/main/resources/enjarify-master/enjarify/jvm/optimization/options.py new file mode 100644 index 00000000..4e9bdf53 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/optimization/options.py @@ -0,0 +1,32 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +class Options: + def __init__(self, inline_consts=False, prune_store_loads=False, + copy_propagation=False, remove_unused_regs=False, dup2ize=False, + sort_registers=False, split_pool=False, delay_consts=False): + self.inline_consts = inline_consts + self.prune_store_loads = prune_store_loads + self.copy_propagation = copy_propagation + self.remove_unused_regs = remove_unused_regs + self.dup2ize = dup2ize + self.sort_registers = sort_registers + self.split_pool = split_pool + self.delay_consts = delay_consts + +NONE = Options() +# Options which make the generated code more readable for humans +PRETTY = Options(inline_consts=True, prune_store_loads=True, copy_propagation=True, remove_unused_regs=True) +ALL = Options(inline_consts=True, prune_store_loads=True, copy_propagation=True, remove_unused_regs=True, dup2ize=True, + sort_registers=True, split_pool=True, delay_consts=True) diff --git a/src/main/resources/enjarify-master/enjarify/jvm/optimization/registers.py b/src/main/resources/enjarify-master/enjarify/jvm/optimization/registers.py new file mode 100644 index 00000000..c3b0eca2 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/optimization/registers.py @@ -0,0 +1,231 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import collections + +from .. import ir +from .. import scalartypes as scalars +from ..jvmops import * + +# Copy propagation - when one register is moved to another, keep track and replace +# all loads with loads from the original register (as long as it hasn't since been +# overwritten). Note that stores won't be removed, since they may still be needed +# in some cases, but if they are unused, they'll be removed in a subsequent pass +# As usual, assume no iincs + +# A set of registers that currently are copies of each other. +class _CopySet: + def __init__(self, key): + self.root = key + self.set = {key} + self.q = [] # keep track of insertion order in case root is overwritten + + def add(self, key): + assert self.set + self.set.add(key) + self.q.append(key) + + def remove(self, key): + self.set.remove(key) + # Heuristic - use oldest element still in set as new root + while self.q and self.root not in self.set: + self.root = self.q.pop(0) + + def copy(self): + new = _CopySet(self.root) + new.set = self.set.copy() + new.q = self.q[:] + return new + +# Map registers to CopySets +class _CopySetsMap: + def __init__(self): + self.lookup = {} + + def _get(self, key): return self.lookup.setdefault(key, _CopySet(key)) + + def clobber(self, key): + self._get(key).remove(key) + del self.lookup[key] + + def move(self, dest, src): + # return false if the corresponding instructions should be removed + s_set = self._get(src) + d_set = self._get(dest) + if s_set is d_set: + # src and dest are copies of same value, so we can remove + return False + d_set.remove(dest) + s_set.add(dest) + self.lookup[dest] = s_set + return True + + def load(self, key): + return self._get(key).root + + def copy(self): + copies = {} + new = _CopySetsMap() + for k, v in self.lookup.items(): + if v not in copies: + copies[v] = v.copy() + new.lookup[k] = copies[v] + return new + +def copyPropagation(irdata): + instrs = irdata.flat_instructions + replace = {} + + single_pred_infos = {} + + prev = None + current = _CopySetsMap() + for instr in instrs: + # reset all info when control flow is merged + if instr in irdata.jump_targets: + # try to use info if this was a single predecessor forward jump + if prev and not prev.fallsthrough() and irdata.target_pred_counts.get(instr) == 1: + current = single_pred_infos.get(instr, _CopySetsMap()) + else: + current = _CopySetsMap() + + elif isinstance(instr, ir.RegAccess): + key = instr.key + if instr.store: + # check if previous instr was a load + if isinstance(prev, ir.RegAccess) and not prev.store: + if not current.move(dest=key, src=prev.key): + replace[prev] = [] + replace[instr] = [] + else: + current.clobber(key) + else: + root_key = current.load(key) + if key != root_key: + assert instr not in replace + # replace with load from root register instead + replace[instr] = [ir.RegAccess(root_key[0], root_key[1], False)] + + else: + for target in instr.targets(): + label = irdata.labels[target] + if irdata.target_pred_counts.get(label) == 1: + single_pred_infos[label] = current.copy() + + prev = instr + irdata.replaceInstrs(replace) + +def _isRemoveable(instr): + # can remove if load or const since we know there are no side effects + # note - instr may be None + if isinstance(instr, ir.RegAccess) and not instr.store: + return True + return isinstance(instr, (ir.PrimConstant, ir.OtherConstant)) + +def removeUnusedRegisters(irdata): + # Remove stores to registers that are not read from anywhere in the method + instrs = irdata.flat_instructions + used = set() + for instr in instrs: + if isinstance(instr, ir.RegAccess) and not instr.store: + used.add(instr.key) + + replace = {} + prev = None + for instr in instrs: + if isinstance(instr, ir.RegAccess) and instr.key not in used: + assert instr.store + # if prev instruction is load or const, just remove it and the store + # otherwise, replace the store with a pop + if _isRemoveable(prev): + replace[prev] = [] + replace[instr] = [] + else: + replace[instr] = [ir.Pop2() if instr.wide else ir.Pop()] + prev = instr + irdata.replaceInstrs(replace) + +# Allocate registers to JVM registers on a first come, first serve basis +# For simplicity, parameter registers are preserved as is +def simpleAllocateRegisters(irdata): + instrs = irdata.flat_instructions + regmap = {v:i for i,v in enumerate(irdata.initial_args)} + nextreg = len(irdata.initial_args) + + for instr in instrs: + if isinstance(instr, ir.RegAccess): + if instr.key not in regmap: + regmap[instr.key] = nextreg + nextreg += 1 + if instr.wide: + nextreg += 1 + instr.calcBytecode(regmap[instr.key]) + irdata.numregs = nextreg + +# Sort registers by number of uses so that more frequently used registers will +# end up in slots 0-3 or 4-255 and benefit from the shorter instruction forms +# For simplicity, parameter registers are still preserved as is with one exception +def sortAllocateRegisters(irdata): + instrs = irdata.flat_instructions + + use_counts = collections.Counter() + for instr in instrs: + if isinstance(instr, ir.RegAccess): + use_counts[instr.key] += 1 + + regs = irdata.initial_args[:] + rest = sorted(use_counts, key=lambda k:(-use_counts[k], k)) + for key in rest: + # If key is a param, it was already added at the beginning + if key not in irdata.initial_args: + regs.append(key) + if scalars.iswide(key[1]): + regs.append(None) + + # Sometimes the non-param regsisters are used more times than the param registers + # and it is beneificial to swap them (which requires inserting code at the + # beginning of the method to move the value if the param is not unused) + # This is very complicated to do in general, so the following code only does + # this in one specific circumstance which should nevertheless be sufficient + # to capture the majority of the benefit + # Specificially, it only swaps at most one register, and only in the case that + # it is nonwide and there is a nonwide parameter in the first 4 slots that + # it can be swapped with. Also, it doesn't bother to check if param is unused. + candidate_i = max(4, len(irdata.initial_args)) + # make sure candidate is valid, nonwide register + if len(regs) > candidate_i and regs[candidate_i] is not None: + candidate = regs[candidate_i] + if not scalars.iswide(candidate[1]) and use_counts[candidate] >= 3: + for i in range(min(4, len(irdata.initial_args))): + # make sure target is not wide + if regs[i] is None or regs[i+1] is None: + continue + + target = regs[i] + if use_counts[candidate] > use_counts[target] + 3: + # swap register assignments + regs[i], regs[candidate_i] = candidate, target + # add move instructions at beginning of method + load = ir.RegAccess.raw(i, target[1], False) + store = ir.RegAccess(target[0], target[1], True) + instrs = [load, store] + instrs + irdata.flat_instructions = instrs + break + + # Now generate bytecode from the selected register allocations + irdata.numregs = len(regs) + regmap = {v:i for i,v in enumerate(regs) if v is not None} + for instr in instrs: + if instr.bytecode is None and isinstance(instr, ir.RegAccess): + instr.calcBytecode(regmap[instr.key]) diff --git a/src/main/resources/enjarify-master/enjarify/jvm/optimization/stack.py b/src/main/resources/enjarify-master/enjarify/jvm/optimization/stack.py new file mode 100644 index 00000000..1a8fc396 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/optimization/stack.py @@ -0,0 +1,245 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .. import ir +from ..jvmops import * + +def visitLinearCode(irdata, visitor): + # Visit linear sections of code, pessimistically treating all exception + # handler ranges as jumps. + except_level = 0 + for instr in irdata.flat_instructions: + if instr in irdata.except_starts: + except_level += 1 + visitor.visitExceptionRange() + elif instr in irdata.except_ends: + except_level -= 1 + + if except_level > 0: + continue + + if instr in irdata.jump_targets or isinstance(instr, (ir.LazyJumpBase, ir.Switch)): + visitor.visitJumpTargetOrBranch(instr) + elif not instr.fallsthrough(): + visitor.visitReturn() + else: + visitor.visit(instr) + assert except_level == 0 + return visitor + +class NoExceptVisitorBase: + def visitExceptionRange(self): self.reset() + def visitJumpTargetOrBranch(self, instr): self.reset() + +class ConstInliner(NoExceptVisitorBase): + def __init__(self): + self.uses = {} + self.notmultiused = set() + self.current = {} + + def reset(self): + self.current = {} + + def visitReturn(self): + for key in self.current: + self.notmultiused.add(self.current[key]) + self.reset() + + def visit(self, instr): + if isinstance(instr, ir.RegAccess): + key = instr.key + if instr.store: + if key in self.current: + self.notmultiused.add(self.current[key]) + self.current[key] = instr + elif key in self.current: + # if currently used 0, mark it used once + # if used once already, mark it as multiused + if self.current[key] in self.uses: + del self.current[key] + else: + self.uses[self.current[key]] = instr + +def inlineConsts(irdata): + # Inline constants which are only used once or not at all. This only covers + # linear sections of code and pessimistically assumes everything is used + # when it reaches a jump or exception range. Essentially, this means that + # the value can only be considered unused if it is either overwritten by a + # store or reaches a return or throw before any jumps. + # As usual, assume no iinc. + instrs = irdata.flat_instructions + visitor = visitLinearCode(irdata, ConstInliner()) + + replace = {} + for ins1, ins2 in zip(instrs, instrs[1:]): + if ins2 in visitor.notmultiused and isinstance(ins1, (ir.PrimConstant, ir.OtherConstant)): + replace[ins1] = [] + replace[ins2] = [] + if ins2 in visitor.uses: + replace[visitor.uses[ins2]] = [ins1] + irdata.replaceInstrs(replace) + +class StoreLoadPruner(NoExceptVisitorBase): + def __init__(self): + self.current = {} + self.last = None + self.removed = set() + + def reset(self): + self.current = {} + self.last = None + + def visitReturn(self): + for pair in self.current.values(): + assert pair[0].store and not pair[1].store + self.removed.update(pair) + self.reset() + + def visit(self, instr): + if isinstance(instr, ir.RegAccess): + key = instr.key + if instr.store: + if key in self.current: + pair = self.current[key] + assert pair[0].store and not pair[1].store + self.removed.update(self.current.pop(key)) + self.last = instr + else: + self.current.pop(key, None) + if self.last and self.last.key == key: + self.current[key] = self.last, instr + self.last = None + elif not isinstance(instr, ir.Label): + self.last = None + +def pruneStoreLoads(irdata): + # Remove a store immediately followed by a load from the same register + # (potentially with a label in between) if it can be proven that this + # register isn't read again. As above, this only considers linear sections of code. + # Must not be run before dup2ize! + data = visitLinearCode(irdata, StoreLoadPruner()) + irdata.replaceInstrs({instr:[] for instr in data.removed}) + +# used by writeir too +def genDups(needed, needed_after): + # Generate a sequence of dup and dup2 instructions to duplicate the given + # value. This keeps up to 4 copies of the value on the stack. Thanks to dup2 + # this asymptotically takes only half a byte per access. + have = 1 + ele_count = needed + needed += needed_after + + for _ in range(ele_count): + cur = [] + if have < needed: + if have == 1 and needed >= 2: + cur.append(ir.Dup()) + have += 1 + if have == 2 and needed >= 4: + cur.append(ir.Dup2()) + have += 2 + have -= 1 + needed -= 1 + yield cur + assert have >= needed + # check if we have to pop at end + yield [ir.Pop() for _ in range(have-needed)] + +# Range of instruction indexes at which a given register is read (in linear code) +class UseRange: + def __init__(self, uses): + self.uses = uses + + def add(self, i): + self.uses.append(i) + + @property + def start(self): return self.uses[0] + @property + def end(self): return self.uses[-1] + + def subtract(self, other): + s, e = other.start, other.end + left = [i for i in self.uses if i < s] + right = [i for i in self.uses if i > e] + if len(left) >= 2: + yield UseRange(left) + if len(right) >= 2: + yield UseRange(right) + + def sortkey(self): return len(self.uses), self.uses[0] + +def makeRange(instr): + assert isinstance(instr, ir.RegAccess) and not instr.store + return UseRange([]) + +def dup2ize(irdata): + # This optimization replaces narrow registers which are frequently read at + # stack height 0 with a single read followed by the more efficient dup and + # dup2 instructions. This asymptotically uses only half a byte per access. + # For simplicity, instead of explicitly keeping track of which locations + # have stack height 0, we take advantage of the invariant that ranges of code + # corresponding to a single Dalvik instruction always begin with empty stack. + # These can be recognized by labels with a non-None id. + # This isn't true for move-result instructions, but in that case the range + # won't begin with a register load so it doesn't matter. + # Note that pruneStoreLoads breaks this invariant, so dup2ize must be run first. + # Also, for simplicity, we only keep at most one such value on the stack at + # a time (duplicated up to 4 times). + instrs = irdata.flat_instructions + + ranges = [] + current = {} + at_head = False + for i, instr in enumerate(instrs): + # if not linear section of bytecode, reset everything. Exceptions are ok + # since they clear the stack, but jumps obviously aren't. + if instr in irdata.jump_targets or isinstance(instr, (ir.If, ir.Switch)): + ranges.extend(current.values()) + current = {} + + if isinstance(instr, ir.RegAccess): + key = instr.key + if not instr.wide: + if instr.store: + if key in current: + ranges.append(current.pop(key)) + elif at_head: + current.setdefault(key, makeRange(instr)).add(i) + + at_head = isinstance(instr, ir.Label) and instr.id is not None + ranges.extend(current.values()) + ranges = [ur for ur in ranges if len(ur.uses) >= 2] + ranges.sort(key=UseRange.sortkey) + + # Greedily choose a set of disjoint ranges to dup2ize. + chosen = [] + while ranges: + best = ranges.pop() + chosen.append(best) + newranges = [] + for ur in ranges: + newranges.extend(ur.subtract(best)) + ranges = sorted(newranges, key=UseRange.sortkey) + + replace = {} + for ur in chosen: + gen = genDups(len(ur.uses), 0) + for pos in ur.uses: + ops = next(gen) + # remember to include initial load! + if pos == ur.start: + ops = [instrs[pos]] + ops + replace[instrs[pos]] = ops + irdata.replaceInstrs(replace) diff --git a/src/main/resources/enjarify-master/enjarify/jvm/scalartypes.py b/src/main/resources/enjarify-master/enjarify/jvm/scalartypes.py new file mode 100644 index 00000000..273d88ba --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/scalartypes.py @@ -0,0 +1,40 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Primative type inference +# In dalvik bytecode, constants are untyped, which effectively means a union type +# They can be zero (int/float/null), narrow (int/float) or wide (long/double) + +INVALID = 0 +INT = 1 << 0 +FLOAT = 1 << 1 +OBJ = 1 << 2 +LONG = 1 << 3 +DOUBLE = 1 << 4 + +ZERO = INT | FLOAT | OBJ +C32 = INT | FLOAT +C64 = LONG | DOUBLE +ALL = ZERO | C64 + +_descToScalar = dict(zip(map(ord, 'ZBCSIFJDL['), [INT, INT, INT, INT, INT, FLOAT, LONG, DOUBLE, OBJ, OBJ])) +def fromDesc(desc): + return _descToScalar[desc[0]] + +def iswide(st): + return st & C64 + +def paramTypes(method_id, static): + temp = method_id.getSpacedParamTypes(static) + return [(INVALID if desc is None else fromDesc(desc)) for desc in temp] diff --git a/src/main/resources/enjarify-master/enjarify/jvm/writebytecode.py b/src/main/resources/enjarify-master/enjarify/jvm/writebytecode.py new file mode 100644 index 00000000..ca9e1abc --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/writebytecode.py @@ -0,0 +1,99 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from ..byteio import Writer +from . import writeir, ir +from .optimization import registers, jumps, stack, consts + +def getCodeIR(pool, method, opts): + if method.code is not None: + irdata = writeir.writeBytecode(pool, method, opts) + + if opts.inline_consts: + stack.inlineConsts(irdata) + + if opts.copy_propagation: + registers.copyPropagation(irdata) + + if opts.remove_unused_regs: + registers.removeUnusedRegisters(irdata) + + if opts.dup2ize: + stack.dup2ize(irdata) + + if opts.prune_store_loads: + stack.pruneStoreLoads(irdata) + if opts.remove_unused_regs: + registers.removeUnusedRegisters(irdata) + + if opts.sort_registers: + registers.sortAllocateRegisters(irdata) + else: + registers.simpleAllocateRegisters(irdata) + return irdata + return None + +def finishCodeAttrs(pool, code_irs, opts): + code_irs = [x for x in code_irs if x is not None] + # if we have any code, make sure to reserve pool slot for attr name + if code_irs: + pool.utf8(b"Code") + + if opts.delay_consts: + # In the rare case where the class references too many constants to fit in + # the constant pool, we can workaround this by replacing primative constants + # e.g. ints, longs, floats, and doubles, with a sequence of bytecode instructions + # to generate that constant. This obviously increases the size of the method's + # bytecode, so we ideally only want to do it to constants in short methods. + + # First off, we find which methods are potentially too long. If a method + # will be under 65536 bytes even with all constants replaced, then it + # will be ok no matter what we do. + long_irs = [irw for irw in code_irs if irw.calcUpperBound() >= 65536] + + # Now allocate constants used by potentially long methods + if long_irs: + consts.allocateRequiredConstants(pool, long_irs) + + # If there's space left in the constant pool, allocate constants used by short methods + for _ir in code_irs: + for ins in _ir.flat_instructions: + if isinstance(ins, ir.PrimConstant): + ins.fix_with_pool(pool) + + return {irdata.method: writeCodeAttributeTail(pool, irdata, opts=opts) for irdata in code_irs} + +def writeCodeAttributeTail(pool, irdata, opts): + method = irdata.method + jumps.optimizeJumps(irdata) + bytecode, excepts = jumps.createBytecode(irdata, opts) + + stream = Writer() + # For simplicity, don't bother calculating the actual maximum stack height + # of the generated code. Instead, just use a value that will always be high + # enough. Note that just setting this to 65535 is a bad idea since it tends + # to cause StackOverflowErrors under default JVM memory settings + stream.u16(300) # stack + stream.u16(irdata.numregs) # locals + + stream.u32(len(bytecode)) + stream.write(bytecode) + + # exceptions + stream.u16(len(excepts)) + stream.write(b''.join(excepts)) + + # attributes + stream.u16(0) + return stream diff --git a/src/main/resources/enjarify-master/enjarify/jvm/writeclass.py b/src/main/resources/enjarify-master/enjarify/jvm/writeclass.py new file mode 100644 index 00000000..de5499c9 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/writeclass.py @@ -0,0 +1,125 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .. import flags +from ..byteio import Writer +from . import constantpool, writebytecode, error +from .optimization import options + +def writeField(pool, stream, field): + stream.u16(field.access & flags.FIELD_FLAGS) + stream.u16(pool.utf8(field.id.name)) + stream.u16(pool.utf8(field.id.desc)) + if field.constant_value is not None: + stream.u16(1) + stream.u16(pool.utf8(b"ConstantValue")) + stream.u32(2) + + ctype, val = field.constant_value + # Ignore dalvik constant type and use actual field type instead + index = { + b'Z': pool.int, + b'B': pool.int, + b'S': pool.int, + b'C': pool.int, + b'I': pool.int, + b'F': pool.float, + b'J': pool.long, + b'D': pool.double, + b'Ljava/lang/String;': pool.string, + b'Ljava/lang/Class;': pool.class_, + }[field.id.desc](val) + stream.u16(index) + else: + stream.u16(0) # no attributes + +def writeMethod(pool, stream, method, code_attr_data): + stream.u16(method.access & flags.METHOD_FLAGS) + stream.u16(pool.utf8(method.id.name)) + stream.u16(pool.utf8(method.id.desc)) + + if code_attr_data is not None: + code_attr_data = code_attr_data.toBytes() + stream.u16(1) + stream.u16(pool.utf8(b"Code")) + stream.u32(len(code_attr_data)) + stream.write(code_attr_data) + else: + stream.u16(0) # no attributes + +def writeMethods(pool, stream, methods, opts): + code_irs = [] + for method in methods: + code_irs.append(writebytecode.getCodeIR(pool, method, opts=opts)) + code_attrs = writebytecode.finishCodeAttrs(pool, code_irs, opts=opts) + + stream.u16(len(methods)) + for method in methods: + writeMethod(pool, stream, method, code_attrs.get(method)) + +def classFileAfterPool(cls, opts): + stream = Writer() + if opts.split_pool: + pool = constantpool.SplitConstantPool() + else: + pool = constantpool.SimpleConstantPool() + + cls.parseData() + access = cls.access & flags.CLASS_FLAGS + if not access & flags.ACC_INTERFACE: + # Not necessary for correctness, but this works around a bug in dx + access |= flags.ACC_SUPER + + stream.u16(access) # access + stream.u16(pool.class_(cls.name)) # this + super_ = pool.class_(cls.super) if cls.super is not None else 0 + stream.u16(super_) # super + + # interfaces + stream.u16(len(cls.interfaces)) + for interface in cls.interfaces: + stream.u16(pool.class_(interface)) + + # fields + stream.u16(len(cls.data.fields)) + for field in cls.data.fields: + writeField(pool, stream, field) + + # methods + writeMethods(pool, stream, cls.data.methods, opts=opts) + + # attributes + stream.u16(0) + return pool, stream + +def toClassFile(cls, opts): + stream = Writer() + stream.u32(0xCAFEBABE) + # bytecode version 49.0 + stream.u16(0) + stream.u16(49) + + # Optimistically try translating without optimization to speed things up + # if the resulting code is too big, retry with optimization + try: + pool, rest_stream = classFileAfterPool(cls, opts=opts) + except error.ClassfileLimitExceeded: + # print('Retrying {} with optimization enabled'.format(cls.name)) + pool, rest_stream = classFileAfterPool(cls, opts=options.ALL) + + # write constant pool + pool.write(stream) + # write rest of file + stream.write(rest_stream.toBytes()) + return stream.toBytes() diff --git a/src/main/resources/enjarify-master/enjarify/jvm/writeir.py b/src/main/resources/enjarify-master/enjarify/jvm/writeir.py new file mode 100644 index 00000000..92c474eb --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/jvm/writeir.py @@ -0,0 +1,630 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import collections, struct +from functools import partial + +from . import ir +from .. import flags, dalvik +from .jvmops import * +from . import arraytypes as arrays +from . import scalartypes as scalars +from . import mathops +from .optimization import stack +from .. import util +from ..typeinference import typeinference + +# Code for converting dalvik bytecode to intermediate representation +# effectively this is just Java bytecode instructions with some abstractions for +# later optimization + +_ilfdaOrd = [scalars.INT, scalars.LONG, scalars.FLOAT, scalars.DOUBLE, scalars.OBJ].index +_newArrayCodes = {('['+t).encode(): v for t, v in zip('ZCFDBSIJ', range(4, 12))} +_arrStoreOps = {t.encode(): v for t, v in zip('IJFD BCS', range(IASTORE, SASTORE+1))} +_arrLoadOps = {t.encode(): v for t, v in zip('IJFD BCS', range(IALOAD, SALOAD+1))} +_arrStoreOps[b'Z'] = BASTORE +_arrLoadOps[b'Z'] = BALOAD + +# For generating IR instructions corresponding to a single Dalvik instruction +class IRBlock: + def __init__(self, parent, pos): + self.type_data = parent.types[pos] + self.pool = parent.pool + self.delay_consts = parent.opts.delay_consts + self.pos = pos + self.instructions = [ir.Label(pos)] + + def add(self, jvm_instr): + self.instructions.append(jvm_instr) + + def _other(self, bytecode): + self.add(ir.Other(bytecode=bytecode)) + + def u8(self, op): self._other(struct.pack('>B', op)) + def u8u8(self, op, x): self._other(struct.pack('>BB', op, x)) + def u8u16(self, op, x): self._other(struct.pack('>BH', op, x)) + # wide non iinc + def u8u8u16(self, op, op2, x): self._other(struct.pack('>BBH', op, op2, x)) + # invokeinterface + def u8u16u8u8(self, op, x, y, z): self._other(struct.pack('>BHBB', op, x, y, z)) + + def ldc(self, index): + if index < 256: + self.add(ir.OtherConstant(bytecode=bytes([LDC, index]))) + else: + self.add(ir.OtherConstant(bytecode=struct.pack('>BH', LDC_W, index))) + + def load(self, reg, stype, desc=None, clsname=None): + # if we know the register to be 0/null, don't bother loading + if self.type_data.arrs[reg] == arrays.NULL: + self.const(0, stype) + else: + self.add(ir.RegAccess(reg, stype, store=False)) + # cast to appropriate type if tainted + if stype == scalars.OBJ and self.type_data.tainted[reg]: + assert desc is None or clsname is None + if clsname is None: + # remember to handle arrays - also fallthrough if desc is None + clsname = desc[1:-1] if (desc and desc.startswith(b'L')) else desc + if clsname is not None and clsname != b'java/lang/Object': + self.u8u16(CHECKCAST, self.pool.class_(clsname)) + + def loadAsArray(self, reg): + at = self.type_data.arrs[reg] + if at == arrays.NULL: + self.const_null() + else: + self.add(ir.RegAccess(reg, scalars.OBJ, store=False)) + if self.type_data.tainted[reg]: + if at == arrays.INVALID: + # needs to be some type of object array, so just cast to Object[] + self.u8u16(CHECKCAST, self.pool.class_(b'[Ljava/lang/Object;')) + else: + # note - will throw if actual type is boolean[] but there's not + # much we can do in this case + self.u8u16(CHECKCAST, self.pool.class_(at)) + + def store(self, reg, stype): + self.add(ir.RegAccess(reg, stype, store=True)) + + def return_(self, stype=None): + if stype is None: + self.u8(RETURN) + else: + self.u8(IRETURN + _ilfdaOrd(stype)) + + def const(self, val, stype): + assert (1<<64) > val >= 0 + if stype == scalars.OBJ: + assert val == 0 + self.const_null() + else: + # If constant pool is simple, assume we're in non-opt mode and only use + # the constant pool for generating constants instead of calculating + # bytecode sequences for them. If we're in opt mode, pass None for pool + # to generate bytecode instead + pool = None if self.delay_consts else self.pool + self.add(ir.PrimConstant(stype, val, pool=pool)) + + def const_null(self): + self.add(ir.OtherConstant(bytecode=bytes([ACONST_NULL]))) + + def fillarraysub(self, op, cbs, pop=True): + gen = stack.genDups(len(cbs), 0 if pop else 1) + for i, cb in enumerate(cbs): + for instr in next(gen): + self.add(instr) + self.const(i, scalars.INT) + cb() + self.u8(op) + # may need to pop at end + for instr in next(gen): + self.add(instr) + + def newarray(self, desc): + if desc in _newArrayCodes: + self.u8u8(NEWARRAY, _newArrayCodes[desc]) + else: + # can be either multidim array or object array descriptor + desc = desc[1:] + if desc.startswith(b'L'): + desc = desc[1:-1] + self.u8u16(ANEWARRAY, self.pool.class_(desc)) + + def fillarraydata(self, op, stype, vals): + self.fillarraysub(op, [partial(self.const, val, stype) for val in vals]) + + def cast(self, dex, reg, index): + self.load(reg, scalars.OBJ) + self.u8u16(CHECKCAST, self.pool.class_(dex.clsType(index))) + self.store(reg, scalars.OBJ) + + def goto(self, target): + self.add(ir.Goto(target)) + + def if_(self, op, target): + self.add(ir.If(op, target)) + + def switch(self, default, jumps): + jumps = {util.s32(k):v for k,v in jumps.items() if v != default} + if jumps: + self.add(ir.Switch(default, jumps)) + else: + self.goto(default) + + def generateExceptLabels(self): + s_ind = 0 + e_ind = len(self.instructions) + # assume only Other instructions can throw + while s_ind < e_ind and not isinstance(self.instructions[s_ind], ir.Other): + s_ind += 1 + while s_ind < e_ind and not isinstance(self.instructions[e_ind-1], ir.Other): + e_ind -= 1 + + assert s_ind < e_ind + start_lbl, end_lbl = ir.Label(), ir.Label() + self.instructions.insert(s_ind, start_lbl) + self.instructions.insert(e_ind+1, end_lbl) + return start_lbl, end_lbl + +class IRWriter: + def __init__(self, pool, method, types, opts): + self.pool = pool + self.method = method + self.types = types + self.opts = opts + + self.iblocks = {} + + self.flat_instructions = None + self.excepts = [] + self.labels = {} + self.initial_args = None + self.exception_redirects = {} + + self.except_starts = set() + self.except_ends = set() + self.jump_targets = set() + # used to detect jump targets with a unique predecessor + self.target_pred_counts = collections.defaultdict(int) + + self.numregs = None # will be set once registers are allocated (see registers.py) + + def calcInitialArgs(self, nregs, scalar_ptypes): + self.initial_args = args = [] + regoff = nregs - len(scalar_ptypes) + for i, st in enumerate(scalar_ptypes): + if st == scalars.INVALID: + args.append(None) + else: + args.append((i + regoff, st)) + + def addExceptionRedirect(self, target): + return self.exception_redirects.setdefault(target, ir.Label()) + + def createBlock(self, instr): + block = IRBlock(self, instr.pos) + self.iblocks[block.pos] = block + self.labels[block.pos] = block.instructions[0] + return block + + def flatten(self): + instructions = [] + for pos in sorted(self.iblocks): + if pos in self.exception_redirects: + # check if we can put handler pop in front of block + if instructions and not instructions[-1].fallsthrough(): + instructions.append(self.exception_redirects.pop(pos)) + instructions.append(ir.Pop()) + # if not, leave it in dict to be redirected later + # now add instructions for actual block + instructions += self.iblocks[pos].instructions + + # exception handler pops that couldn't be placed inline + # in this case, just put them at the end with a goto back to the handler + for target in sorted(self.exception_redirects): + instructions.append(self.exception_redirects[target]) + instructions.append(ir.Pop()) + instructions.append(ir.Goto(target)) + + self.flat_instructions = instructions + self.iblocks = self.exception_redirects = None + + def replaceInstrs(self, replace): + if replace: + instructions = [] + for instr in self.flat_instructions: + instructions.extend(replace.get(instr, [instr])) + self.flat_instructions = instructions + assert len(set(instructions)) == len(instructions) + + def calcUpperBound(self): + # Get an uppper bound on the size of the bytecode + size = 0 + for ins in self.flat_instructions: + if ins.bytecode is None: + size += ins.max + else: + size += len(ins.bytecode) + return size + +################################################################################ +def visitNop(method, dex, instr_d, type_data, block, instr): + pass + +def visitMove(method, dex, instr_d, type_data, block, instr): + for st in (scalars.INT, scalars.OBJ, scalars.FLOAT): + if st & type_data.prims[instr.args[1]]: + block.load(instr.args[1], st) + block.store(instr.args[0], st) + +def visitMoveWide(method, dex, instr_d, type_data, block, instr): + for st in (scalars.LONG, scalars.DOUBLE): + if st & type_data.prims[instr.args[1]]: + block.load(instr.args[1], st) + block.store(instr.args[0], st) + +def visitMoveResult(method, dex, instr_d, type_data, block, instr): + st = scalars.fromDesc(instr.prev_result) + block.store(instr.args[0], st) + +def visitReturn(method, dex, instr_d, type_data, block, instr): + if method.id.return_type == b'V': + block.return_() + else: + st = scalars.fromDesc(method.id.return_type) + block.load(instr.args[0], st, desc=method.id.return_type) + block.return_(st) + +def visitConst32(method, dex, instr_d, type_data, block, instr): + val = instr.args[1] % (1<<32) + block.const(val, scalars.INT) + block.store(instr.args[0], scalars.INT) + block.const(val, scalars.FLOAT) + block.store(instr.args[0], scalars.FLOAT) + if not val: + block.const_null() + block.store(instr.args[0], scalars.OBJ) + +def visitConst64(method, dex, instr_d, type_data, block, instr): + val = instr.args[1] % (1<<64) + block.const(val, scalars.LONG) + block.store(instr.args[0], scalars.LONG) + block.const(val, scalars.DOUBLE) + block.store(instr.args[0], scalars.DOUBLE) + +def visitConstString(method, dex, instr_d, type_data, block, instr): + val = dex.string(instr.args[1]) + block.ldc(block.pool.string(val)) + block.store(instr.args[0], scalars.OBJ) + +def visitConstClass(method, dex, instr_d, type_data, block, instr): + # Could use dex.type here since the JVM doesn't care, but this is cleaner + val = dex.clsType(instr.args[1]) + block.ldc(block.pool.class_(val)) + block.store(instr.args[0], scalars.OBJ) + +def visitMonitorEnter(method, dex, instr_d, type_data, block, instr): + block.load(instr.args[0], scalars.OBJ) + block.u8(MONITORENTER) + +def visitMonitorExit(method, dex, instr_d, type_data, block, instr): + block.load(instr.args[0], scalars.OBJ) + block.u8(MONITOREXIT) + +def visitCheckCast(method, dex, instr_d, type_data, block, instr): + block.cast(dex, instr.args[0], instr.args[1]) + +def visitInstanceOf(method, dex, instr_d, type_data, block, instr): + block.load(instr.args[1], scalars.OBJ) + block.u8u16(INSTANCEOF, block.pool.class_(dex.clsType(instr.args[2]))) + block.store(instr.args[0], scalars.INT) + +def visitArrayLen(method, dex, instr_d, type_data, block, instr): + block.loadAsArray(instr.args[1]) + block.u8(ARRAYLENGTH) + block.store(instr.args[0], scalars.INT) + +def visitNewInstance(method, dex, instr_d, type_data, block, instr): + block.u8u16(NEW, block.pool.class_(dex.clsType(instr.args[1]))) + block.store(instr.args[0], scalars.OBJ) + +def visitNewArray(method, dex, instr_d, type_data, block, instr): + block.load(instr.args[1], scalars.INT) + block.newarray(dex.type(instr.args[2])) + block.store(instr.args[0], scalars.OBJ) + +def visitFilledNewArray(method, dex, instr_d, type_data, block, instr): + regs = instr.args[1] + block.const(len(regs), scalars.INT) + block.newarray(dex.type(instr.args[0])) + st, elet = arrays.eletPair(arrays.fromDesc(dex.type(instr.args[0]))) + op = _arrStoreOps.get(elet, AASTORE) + cbs = [partial(block.load, reg, st) for reg in regs] + # if not followed by move-result, don't leave it on the stack + mustpop = instr_d.get(instr.pos2).type != dalvik.MoveResult + block.fillarraysub(op, cbs, pop=mustpop) + +def visitFillArrayData(method, dex, instr_d, type_data, block, instr): + width, arrdata = instr_d[instr.args[1]].fillarrdata + at = type_data.arrs[instr.args[0]] + + block.loadAsArray(instr.args[0]) + if at is arrays.NULL: + block.u8(ATHROW) + else: + if len(arrdata) == 0: + # fill-array-data throws a NPE if array is null even when + # there is 0 data, so we need to add an instruction that + # throws a NPE in this case + block.u8(ARRAYLENGTH) + block.add(ir.Pop()) + else: + st, elet = arrays.eletPair(at) + # check if we need to sign extend + if elet == b'B' or elet == b'Z': + arrdata = [util.signExtend(x, 8) & 0xFFFFFFFF for x in arrdata] + elif elet == b'S': + arrdata = [util.signExtend(x, 16) & 0xFFFFFFFF for x in arrdata] + block.fillarraydata(_arrStoreOps.get(elet, AASTORE), st, arrdata) + +def visitThrow(method, dex, instr_d, type_data, block, instr): + block.load(instr.args[0], scalars.OBJ, clsname=b'java/lang/Throwable') + block.u8(ATHROW) + +def visitGoto(method, dex, instr_d, type_data, block, instr): + block.goto(instr.args[0]) + +def visitSwitch(method, dex, instr_d, type_data, block, instr): + block.load(instr.args[0], scalars.INT) + switchdata = instr_d[instr.args[1]].switchdata + default = instr.pos2 + jumps = {k:(offset + instr.pos) % (1<<32) for k, offset in switchdata.items()} + block.switch(default, jumps) + +def visitCmp(method, dex, instr_d, type_data, block, instr): + op = [FCMPL, FCMPG, DCMPL, DCMPG, LCMP][instr.opcode - 0x2d] + st = [scalars.FLOAT, scalars.FLOAT, scalars.DOUBLE, scalars.DOUBLE, scalars.LONG][instr.opcode - 0x2d] + block.load(instr.args[1], st) + block.load(instr.args[2], st) + block.u8(op) + block.store(instr.args[0], scalars.INT) + +def visitIf(method, dex, instr_d, type_data, block, instr): + st = type_data.prims[instr.args[0]] & type_data.prims[instr.args[1]] + if st & scalars.INT: + block.load(instr.args[0], scalars.INT) + block.load(instr.args[1], scalars.INT) + op = [IF_ICMPEQ, IF_ICMPNE, IF_ICMPLT, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE][instr.opcode - 0x32] + else: + block.load(instr.args[0], scalars.OBJ) + block.load(instr.args[1], scalars.OBJ) + op = [IF_ACMPEQ, IF_ACMPNE][instr.opcode - 0x32] + block.if_(op, instr.args[2]) + +def visitIfZ(method, dex, instr_d, type_data, block, instr): + if type_data.prims[instr.args[0]] & scalars.INT: + block.load(instr.args[0], scalars.INT) + op = [IFEQ, IFNE, IFLT, IFGE, IFGT, IFLE][instr.opcode - 0x38] + else: + block.load(instr.args[0], scalars.OBJ) + op = [IFNULL, IFNONNULL][instr.opcode - 0x38] + block.if_(op, instr.args[1]) + +def visitArrayGet(method, dex, instr_d, type_data, block, instr): + at = type_data.arrs[instr.args[1]] + if at is arrays.NULL: + block.const_null() + block.u8(ATHROW) + else: + block.loadAsArray(instr.args[1]) + block.load(instr.args[2], scalars.INT) + st, elet = arrays.eletPair(at) + block.u8(_arrLoadOps.get(elet, AALOAD)) + block.store(instr.args[0], st) + +def visitArrayPut(method, dex, instr_d, type_data, block, instr): + at = type_data.arrs[instr.args[1]] + if at is arrays.NULL: + block.const_null() + block.u8(ATHROW) + else: + block.loadAsArray(instr.args[1]) + block.load(instr.args[2], scalars.INT) + st, elet = arrays.eletPair(at) + block.load(instr.args[0], st) + block.u8(_arrStoreOps.get(elet, AASTORE)) + +def visitInstanceGet(method, dex, instr_d, type_data, block, instr): + field_id = dex.field_id(instr.args[2]) + st = scalars.fromDesc(field_id.desc) + block.load(instr.args[1], scalars.OBJ, clsname=field_id.cname) + block.u8u16(GETFIELD, block.pool.field(field_id.triple())) + block.store(instr.args[0], st) + +def visitInstancePut(method, dex, instr_d, type_data, block, instr): + field_id = dex.field_id(instr.args[2]) + st = scalars.fromDesc(field_id.desc) + block.load(instr.args[1], scalars.OBJ, clsname=field_id.cname) + block.load(instr.args[0], st, desc=field_id.desc) + block.u8u16(PUTFIELD, block.pool.field(field_id.triple())) + +def visitStaticGet(method, dex, instr_d, type_data, block, instr): + field_id = dex.field_id(instr.args[1]) + st = scalars.fromDesc(field_id.desc) + block.u8u16(GETSTATIC, block.pool.field(field_id.triple())) + block.store(instr.args[0], st) + +def visitStaticPut(method, dex, instr_d, type_data, block, instr): + field_id = dex.field_id(instr.args[1]) + st = scalars.fromDesc(field_id.desc) + block.load(instr.args[0], st, desc=field_id.desc) + block.u8u16(PUTSTATIC, block.pool.field(field_id.triple())) + +def visitInvoke(method, dex, instr_d, type_data, block, instr): + isstatic = instr.type == dalvik.InvokeStatic + + called_id = dex.method_id(instr.args[0]) + sts = scalars.paramTypes(called_id, static=isstatic) + descs = called_id.getSpacedParamTypes(isstatic=isstatic) + assert len(sts) == len(instr.args[1]) == len(descs) + + for st, desc, reg in zip(sts, descs, instr.args[1]): + if st != scalars.INVALID: # skip long/double tops + block.load(reg, st, desc=desc) + op = { + dalvik.InvokeVirtual: INVOKEVIRTUAL, + dalvik.InvokeSuper: INVOKESPECIAL, + dalvik.InvokeDirect: INVOKESPECIAL, + dalvik.InvokeStatic: INVOKESTATIC, + dalvik.InvokeInterface: INVOKEINTERFACE, + }[instr.type] + + if instr.type == dalvik.InvokeInterface: + block.u8u16u8u8(op, block.pool.imethod(called_id.triple()), len(descs), 0) + else: + block.u8u16(op, block.pool.method(called_id.triple())) + + # check if we need to pop result instead of leaving on stack + if instr_d.get(instr.pos2).type != dalvik.MoveResult: + if called_id.return_type != b'V': + st = scalars.fromDesc(called_id.return_type) + block.add(ir.Pop2() if scalars.iswide(st) else ir.Pop()) + +def visitUnaryOp(method, dex, instr_d, type_data, block, instr): + op, srct, destt = mathops.UNARY[instr.opcode] + block.load(instr.args[1], srct) + # *not requires special handling since there's no direct Java equivalent. Instead we have to do x ^ -1 + if op == IXOR: + block.u8(ICONST_M1) + elif op == LXOR: + block.u8(ICONST_M1) + block.u8(I2L) + + block.u8(op) + block.store(instr.args[0], destt) + +def visitBinaryOp(method, dex, instr_d, type_data, block, instr): + op, st, st2 = mathops.BINARY[instr.opcode] + # index arguments as negative so it works for regular and 2addr forms + block.load(instr.args[-2], st) + block.load(instr.args[-1], st2) + block.u8(op) + block.store(instr.args[0], st) + +def visitBinaryOpConst(method, dex, instr_d, type_data, block, instr): + op = mathops.BINARY_LIT[instr.opcode] + if op == ISUB: # rsub + block.const(instr.args[2] % (1<<32), scalars.INT) + block.load(instr.args[1], scalars.INT) + else: + block.load(instr.args[1], scalars.INT) + block.const(instr.args[2] % (1<<32), scalars.INT) + block.u8(op) + block.store(instr.args[0], scalars.INT) +################################################################################ +VISIT_FUNCS = { + dalvik.Nop: visitNop, + dalvik.Move: visitMove, + dalvik.MoveWide: visitMoveWide, + dalvik.MoveResult: visitMoveResult, + dalvik.Return: visitReturn, + dalvik.Const32: visitConst32, + dalvik.Const64: visitConst64, + dalvik.ConstString: visitConstString, + dalvik.ConstClass: visitConstClass, + dalvik.MonitorEnter: visitMonitorEnter, + dalvik.MonitorExit: visitMonitorExit, + dalvik.CheckCast: visitCheckCast, + dalvik.InstanceOf: visitInstanceOf, + dalvik.ArrayLen: visitArrayLen, + dalvik.NewInstance: visitNewInstance, + dalvik.NewArray: visitNewArray, + dalvik.FilledNewArray: visitFilledNewArray, + dalvik.FillArrayData: visitFillArrayData, + dalvik.Throw: visitThrow, + dalvik.Goto: visitGoto, + dalvik.Switch: visitSwitch, + dalvik.Cmp: visitCmp, + dalvik.If: visitIf, + dalvik.IfZ: visitIfZ, + + dalvik.ArrayGet: visitArrayGet, + dalvik.ArrayPut: visitArrayPut, + dalvik.InstanceGet: visitInstanceGet, + dalvik.InstancePut: visitInstancePut, + dalvik.StaticGet: visitStaticGet, + dalvik.StaticPut: visitStaticPut, + + dalvik.InvokeVirtual: visitInvoke, + dalvik.InvokeSuper: visitInvoke, + dalvik.InvokeDirect: visitInvoke, + dalvik.InvokeStatic: visitInvoke, + dalvik.InvokeInterface: visitInvoke, + + dalvik.UnaryOp: visitUnaryOp, + dalvik.BinaryOp: visitBinaryOp, + dalvik.BinaryOpConst: visitBinaryOpConst, +} + +def writeBytecode(pool, method, opts): + dex = method.dex + code = method.code + instr_d = {instr.pos: instr for instr in code.bytecode} + types, all_handlers = typeinference.doInference(dex, method, code, code.bytecode, instr_d) + + scalar_ptypes = scalars.paramTypes(method.id, static=(method.access & flags.ACC_STATIC)) + + writer = IRWriter(pool, method, types, opts) + writer.calcInitialArgs(code.nregs, scalar_ptypes) + + for instr in code.bytecode: + if instr.pos not in types: # skip unreachable instructions + continue + type_data = types[instr.pos] + block = writer.createBlock(instr) + VISIT_FUNCS[instr.type](method, dex, instr_d, type_data, block, instr) + + for instr in sorted(all_handlers, key=lambda instr: instr.pos): + assert all_handlers[instr] + if instr.pos not in types: # skip unreachable instructions + continue + + start, end = writer.iblocks[instr.pos].generateExceptLabels() + writer.except_starts.add(start) + writer.except_ends.add(end) + + for ctype, handler_pos in all_handlers[instr]: + # If handler doesn't use the caught exception, we need to redirect to a pop instead + if instr_d.get(handler_pos).type != dalvik.MoveResult: + target = writer.addExceptionRedirect(handler_pos) + else: + target = writer.labels[handler_pos] + writer.jump_targets.add(target) + writer.target_pred_counts[target] += 1 + + # When catching Throwable, we can use the special index 0 instead, + # potentially saving a constant pool entry or two + jctype = 0 if ctype == b'java/lang/Throwable' else pool.class_(ctype) + writer.excepts.append((start, end, target, jctype)) + writer.flatten() + + # find jump targets (in addition to exception handler targets) + for instr in writer.flat_instructions: + for target in instr.targets(): + label = writer.labels[target] + writer.jump_targets.add(label) + writer.target_pred_counts[label] += 1 + + return writer diff --git a/src/main/resources/enjarify-master/enjarify/main.py b/src/main/resources/enjarify-master/enjarify/main.py new file mode 100644 index 00000000..e4197fe6 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/main.py @@ -0,0 +1,107 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import zipfile, traceback, argparse, collections + +from . import parsedex +from .jvm import writeclass +from .mutf8 import decode +from .jvm.optimization import options + +def read(fname, mode='rb'): + with open(fname, mode) as f: + return f.read() + +def translate(data, opts, classes=None, errors=None, allowErrors=True): + dex = parsedex.DexFile(data) + classes = collections.OrderedDict() if classes is None else classes + errors = collections.OrderedDict() if errors is None else errors + + for cls in dex.classes: + unicode_name = decode(cls.name) + '.class' + if unicode_name in classes or unicode_name in errors: + print('Warning, duplicate class name', unicode_name) + continue + + try: + class_data = writeclass.toClassFile(cls, opts) + classes[unicode_name] = class_data + except Exception: + if not allowErrors: + raise + errors[unicode_name] = traceback.format_exc() + + if not (len(classes) + len(errors)) % 1000: + print(len(classes) + len(errors), 'classes processed') + return classes, errors + +def writeToJar(fname, classes): + with zipfile.ZipFile(fname, 'w') as out: + for unicode_name, data in classes.items(): + # Don't bother compressing small files + compress_type = zipfile.ZIP_DEFLATED if len(data) > 10000 else zipfile.ZIP_STORED + info = zipfile.ZipInfo(unicode_name) + info.external_attr = 0o775 << 16 # set Unix file permissions + out.writestr(info, data, compress_type=compress_type) + +def main(): + parser = argparse.ArgumentParser(prog='enjarify', description='Translates Dalvik bytecode (.dex or .apk) to Java bytecode (.jar)') + parser.add_argument('inputfile') + parser.add_argument('-o', '--output', help='Output .jar file. Default is [input-filename]-enjarify.jar.') + parser.add_argument('-f', '--force', action='store_true', help='Force overwrite. If output file already exists, this option is required to overwrite.') + parser.add_argument('--fast', action='store_true', help='Speed up translation at the expense of generated bytecode being less readable.') + args = parser.parse_args() + + dexs = [] + if args.inputfile.lower().endswith('.apk'): + with zipfile.ZipFile(args.inputfile, 'r') as z: + for name in z.namelist(): + if name.startswith('classes') and name.endswith('.dex'): + dexs.append(z.read(name)) + else: + dexs.append(read(args.inputfile)) + + # Exclusive mode requires 3.3+, so provide helpful error in this case + if not args.force: + try: + FileExistsError + except NameError: + print('Overwrite protection requires Python 3.3+. Either pass -f or --force, or upgrade to a more recent version of Python. If you are using Pypy3 2.4, you need to switch to a nightly build or build from source. Or just pass -f.') + return + + # Might as well open the output file early so we can detect existing file error + # before going to the trouble of translating everything + outname = args.output or args.inputfile.rpartition('/')[-1].rpartition('.')[0] + '-enjarify.jar' + try: + outfile = open(outname, mode=('wb' if args.force else 'xb')) + except FileExistsError: + print('Error, output file already exists and --force was not specified.') + print('To overwrite the output file, pass -f or --force.') + return + + opts = options.NONE if args.fast else options.PRETTY + classes = collections.OrderedDict() + errors = collections.OrderedDict() + for data in dexs: + translate(data, opts=opts, classes=classes, errors=errors) + writeToJar(outfile, classes) + outfile.close() + print('Output written to', outname) + + for name, error in sorted(errors.items()): + print(name, error) + print('{} classes translated successfully, {} classes had errors'.format(len(classes), len(errors))) + +if __name__ == "__main__": + main() diff --git a/src/main/resources/enjarify-master/enjarify/mutf8.py b/src/main/resources/enjarify-master/enjarify/mutf8.py new file mode 100644 index 00000000..cf555496 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/mutf8.py @@ -0,0 +1,52 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Unfortunately, there's no easy way to decode Modified UTF8 in Python, so we +# have to write a custom decoder. This one is error tolerant and will decode +# anything resembling mutf8. + +def _decode(b): + # decode arbitrary utf8 codepoints, tolerating surrogate pairs, nonstandard encodings, etc. + for x in b: + if x < 128: + yield x + else: + # figure out how many bytes + extra = 0 + for i in range(6, 0, -1): + if x & (1<> 5 + + if vtype == 0x1c: # ARRAY + size = stream.uleb128() + return [encodedValue(dex, stream) for _ in range(size)] + if vtype == 0x1d: # ANNOTATION + # We don't actually care about annotations but still need to read it to + # find out how much data is taken up + stream.uleb128() + for _ in range(stream.uleb128()): + stream.uleb128() + encodedValue(dex, stream) + return None + if vtype == 0x1e: # NULL + return None + + # For the rest, we just return it as unsigned integers without recording type + # extended to either u32 or u64 depending on int/float or long/double + if vtype == 0x1f: # BOOLEAN + return b'I', varg + # the rest are an int encoded into varg + 1 bytes in some way + size = varg + 1 + val = sum(stream.u8() << (i*8) for i in range(size)) + + if vtype == 0x00: # BYTE + return b'I', signExtend(val, 8) % (1<<32) + if vtype == 0x02: # SHORT + return b'I', signExtend(val, 16) % (1<<32) + if vtype == 0x03: # CHAR + return b'I', val + if vtype == 0x04: # INT + return b'I', val + + if vtype == 0x06: # LONG + return b'J', val + + # floats are 0 extended to the right + if vtype == 0x10: # FLOAT + return b'F', val << (32 - size * 8) + if vtype == 0x11: # DOUBLE + return b'D', val << (64 - size * 8) + + if vtype == 0x17: # STRING + return b'Ljava/lang/String;', dex.string(val) + if vtype == 0x18: # TYPE + return b'Ljava/lang/Class;', dex.clsType(val) + +class MFIdMixin: + def triple(self): return self.cname, self.name, self.desc + +class FieldId(MFIdMixin): + def __init__(self, dex, field_idx): + stream = dex.stream(dex.field_ids.off + field_idx * 8) + self.cname = dex.clsType(stream.u16()) + self.desc = dex.type(stream.u16()) + self.name = dex.string(stream.u32()) + +class Field: + def __init__(self, dex, field_idx, access): + self.id = FieldId(dex, field_idx) + self.access = access + self.constant_value = None # will be set later + +class MethodId(MFIdMixin): + def __init__(self, dex, method_idx): + stream = dex.stream(dex.method_ids.off + method_idx * 8) + self.cname = dex.clsType(stream.u16()) + proto_idx = stream.u16() + self.name = dex.string(stream.u32()) + + stream2 = dex.stream(dex.proto_ids.off + proto_idx * 12) + shorty_idx, return_idx, parameters_off = stream2.u32(), stream2.u32(), stream2.u32() + self.return_type = dex.type(return_idx) + self.param_types = typeList(dex, parameters_off) + + # rearrange things to Java format + parts = [b'('] + self.param_types + [b')', self.return_type] + self.desc = b''.join(parts) + + def getSpacedParamTypes(self, isstatic): + results = [] + if not isstatic: + if self.cname.startswith(b'['): + results.append(self.cname) + else: + results.append(b'L' + self.cname + b';') + + for ptype in self.param_types: + results.append(ptype) + if ptype == b'J' or ptype == b'D': + results.append(None) + return results + +class TryItem: + def __init__(self, stream): + self.start, self.count, self.handler_off = stream.u32(), stream.u16(), stream.u16() + self.end = self.start + self.count + self.catches = None # to be filled in later + + def finish(self, dex, list_off): + stream = dex.stream(list_off + self.handler_off) + size = stream.sleb128() + self.catches = results = [] + for _ in range(abs(size)): + results.append((dex.clsType(stream.uleb128()), stream.uleb128())) + if size <= 0: + results.append((b'java/lang/Throwable', stream.uleb128())) + +class CodeItem: + def __init__(self, dex, offset): + stream = dex.stream(offset) + self.nregs = registers_size = stream.u16() + ins_size = stream.u16() + outs_size = stream.u16() + tries_size = stream.u16() + debug_off = stream.u32() + self.insns_size = stream.u32() + insns_start_pos = stream.pos + insns = [stream.u16() for _ in range(self.insns_size)] + if tries_size and self.insns_size & 1: + stream.u16() # padding + self.tries = [TryItem(stream) for _ in range(tries_size)] + self.list_off = stream.pos + for item in self.tries: + item.finish(dex, self.list_off) + + catch_addrs = set() + for tryi in self.tries: + catch_addrs.update(t[1] for t in tryi.catches) + self.bytecode = parseBytecode(dex, insns_start_pos, insns, catch_addrs) + +class Method: + def __init__(self, dex, method_idx, access, code_off): + self.dex = dex + self.id = MethodId(dex, method_idx) + self.access = access + self.code_off = code_off + self.code = CodeItem(dex, code_off) if code_off else None + +class ClassData: + def __init__(self, dex, offset): + self.fields = [] + self.methods = [] + # for offset 0, leave dummy data with no fields or methods + if offset != 0: + self._parse(dex, dex.stream(offset)) + + def _parse(self, dex, stream): + numstatic = stream.uleb128() + numinstance = stream.uleb128() + numdirect = stream.uleb128() + numvirtual = stream.uleb128() + + fields = self.fields + for num in (numstatic, numinstance): + field_idx = 0 + for i in range(num): + field_idx += stream.uleb128() + fields.append(Field(dex, field_idx, stream.uleb128())) + + methods = self.methods + for num in (numdirect, numvirtual): + method_idx = 0 + for i in range(num): + method_idx += stream.uleb128() + methods.append(Method(dex, method_idx, stream.uleb128(), stream.uleb128())) + +class DexClass: + def __init__(self, dex, base_off, i): + self.dex = dex + st = dex.stream(base_off + i*32) + + self.name = dex.clsType(st.u32()) + self.access = st.u32() + super_ = st.u32() + self.super = dex.clsType(super_) if super_ != NO_INDEX else None + self.interfaces = typeList(dex, st.u32(), parseClsDesc=True) + _ = st.u32() + _ = st.u32() + self.data_off = st.u32() + self.data = None # parse data lazily in parseData() + self.constant_values_off = st.u32() + + def parseData(self): + if self.data is None: + self.data = ClassData(self.dex, self.data_off) + if self.constant_values_off: + stream = self.dex.stream(self.constant_values_off) + for field in self.data.fields[:stream.uleb128()]: + field.constant_value = encodedValue(self.dex, stream) + +class SizeOff: + def __init__(self, stream): + self.size = stream.u32() + self.off = stream.u32() + +class DexFile: + def __init__(self, data): + self.raw = data + stream = Reader(data) + + # parse header + stream.read(36) + if stream.u32() != 0x70: + print('Warning, unexpected header size!') + if stream.u32() != 0x12345678: + print('Warning, unexpected endianess tag!') + + self.link = SizeOff(stream) + self.map_off = stream.u32() + self.string_ids = SizeOff(stream) + self.type_ids = SizeOff(stream) + self.proto_ids = SizeOff(stream) + self.field_ids = SizeOff(stream) + self.method_ids = SizeOff(stream) + self.class_defs = SizeOff(stream) + self.data = SizeOff(stream) + + defs = self.class_defs + self.classes = [] + for i in range(defs.size): + self.classes.append(DexClass(self, defs.off, i)) + + def stream(self, offset): return Reader(self.raw, offset) + + def string(self, i): + data_off = self.stream(self.string_ids.off + i*4).u32() + stream = self.stream(data_off) + stream.uleb128() # ignore decoded length + return stream.readCStr() + + def type(self, i): + if 0 <= i < NO_INDEX: + str_idx = self.stream(self.type_ids.off + i*4).u32() + return self.string(str_idx) + + def clsType(self, i): + # Can be either class _name_ or array _descriptor_ + desc = self.type(i) + if desc.startswith(b'['): + return desc + elif desc.startswith(b'L'): + return desc[1:-1] + + def field_id(self, i): return FieldId(self, i) + def method_id(self, i): return MethodId(self, i) diff --git a/src/main/resources/enjarify-master/enjarify/treelist.py b/src/main/resources/enjarify-master/enjarify/treelist.py new file mode 100644 index 00000000..817dd5d2 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/treelist.py @@ -0,0 +1,119 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# The first SIZE elements are stored directly, the rest are stored in one of SPLIT subtrees +SIZE = 16 +SPLIT = 16 + +# This class represents a list as a persistent n-ary tree +# This has much slower access and updates than a real list but has the advantage +# of sharing memory with previous versions of the list when only a few elements +# are changed. See http://en.wikipedia.org/wiki/Persistent_data_structure#Trees +# Also, default values are not stored, so this is good for sparse arrays +class TreeList: + def __init__(self, default, func, data=None): + self.default = default + self.func = func + self.data = data or _TreeListSub(default) + + def __getitem__(self, i): + return self.data[i] + + def __setitem__(self, i, val): + self.data = self.data.set(i, val) + + def copy(self): + return TreeList(self.default, self.func, self.data) + + def merge(self, other): + assert self.func is other.func + self.data = _TreeListSub.merge(self.data, other.data, self.func) + + +class _TreeListSub: + def __init__(self, default, direct=None, children=None): + self.default = default + if direct is None: + self.direct = [self.default]*SIZE + self.children = [None]*SPLIT # Subtrees allocated lazily + else: + self.direct = direct + self.children = children + + def __getitem__(self, i): + assert i >= 0 + if i < SIZE: + return self.direct[i] + + i -= SIZE + i, ci = divmod(i, SPLIT) + child = self.children[ci] + + if child is None: + return self.default + return child[i] + + def set(self, i, val): + assert i >= 0 + if i < SIZE: + if self.direct[i] == val: + return self + + temp = self.direct[:] + temp[i] = val + return _TreeListSub(self.default, temp, self.children) + + i -= SIZE + i, ci = divmod(i, SPLIT) + child = self.children[ci] + + if child is None: + if val == self.default: + return self + child = _TreeListSub(self.default).set(i, val) + else: + if val == child[i]: + return self + child = child.set(i, val) + + temp = self.children[:] + temp[ci] = child + return _TreeListSub(self.default, self.direct, temp) + + @staticmethod + def merge(left, right, func): + # Effectively computes [func(x, y) for x, y in zip(left, right)] + # Assume func(x, x) == x + if left is right: + return left + + if left is None: + left, right = right, left + + default = left.default + merge = _TreeListSub.merge + if right is None: + direct = [func(x, default) for x in left.direct] + children = [merge(child, None, func) for child in left.children] + if direct == left.direct and children == left.children: + return left + return _TreeListSub(default, direct, children) + + direct = [func(x, y) for x, y in zip(left.direct, right.direct)] + children = [merge(c1, c2, func) for c1, c2 in zip(left.children, right.children)] + if direct == left.direct and children == left.children: + return left + if direct == right.direct and children == right.children: + return right + return _TreeListSub(default, direct, children) diff --git a/src/main/resources/enjarify-master/enjarify/typeinference/__init__.py b/src/main/resources/enjarify-master/enjarify/typeinference/__init__.py new file mode 100644 index 00000000..e7522b2c --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/typeinference/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/src/main/resources/enjarify-master/enjarify/typeinference/typeinference.py b/src/main/resources/enjarify-master/enjarify/typeinference/typeinference.py new file mode 100644 index 00000000..fcd84df7 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/typeinference/typeinference.py @@ -0,0 +1,292 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import collections, operator + +from ..jvm import arraytypes as arrays +from ..jvm import scalartypes as scalars +from ..jvm import mathops, jvmops +from ..treelist import TreeList +from .. import flags, dalvik + + +# The two main things we need type inference for are determining the types of +# primative values and arrays. Luckily, we don't care about actual classes in +# these cases, we just need to know whether it is int,float,reference, etc. to +# generate the correct bytecode instructions, which are typed in Java. +# +# One additional problem is that ART's implicit casts narrow the type instead of +# replacing it like regular checkcasts do. This means that there is no way to +# replicate the behavior in Java using normal casts unless you know which class +# is a subclass of another and which classes are interfaces. However, we want to +# be able to translate code without knowing about every other class that could be +# referenced by the application, so we make do with a hack. +# +# Variables subjected to implicit casting are marked as tainted. Whenever a +# tained value is used, it is explcitly checkcasted to the expected type. This +# isn't ideal since it will incorrectly throw in the cast of bad interface casts, +# but it's the best we can do without requiring knowledge of the whole inheritance +# hierarchy. + +class TypeInfo: + def __init__(self, prims, arrs, tainted): + # copy on write + self.prims = prims + self.arrs = arrs + self.tainted = tainted + + def _copy(self): return TypeInfo(self.prims.copy(), self.arrs.copy(), self.tainted.copy()) + def _get(self, reg): return self.prims[reg], self.arrs[reg], self.tainted[reg] + + def _set(self, reg, st, at, taint=False): + self.prims[reg] = st + self.arrs[reg] = at + self.tainted[reg] = taint + return self + + def move(self, src, dest, wide): + new = self._copy()._set(dest, *self._get(src)) + if wide: + new._set(dest+1, *self._get(src+1)) + return new + + def assign(self, reg, st, at=arrays.INVALID, taint=False): + assert st is not None + return self._copy()._set(reg, st, at, taint) + + def assign2(self, reg, st): + assert st is not None + at = arrays.INVALID + return self._copy()._set(reg, st, at)._set(reg+1, scalars.INVALID, at) + + def assignFromDesc(self, reg, desc): + st = scalars.fromDesc(desc) + at = arrays.fromDesc(desc) + if scalars.iswide(st): + return self.assign2(reg, st) + else: + return self.assign(reg, st, at) + + def isSame(self, other): + return (self.prims.data is other.prims.data and + self.arrs.data is other.arrs.data and + self.tainted.data is other.tainted.data) + +def merge(old, new): + temp = old._copy() + temp.prims.merge(new.prims) + temp.arrs.merge(new.arrs) + temp.tainted.merge(new.tainted) + return old if old.isSame(temp) else temp + +def fromParams(method, num_regs): + isstatic = method.access & flags.ACC_STATIC + full_ptypes = method.id.getSpacedParamTypes(isstatic) + offset = num_regs - len(full_ptypes) + + prims = TreeList(scalars.INVALID, operator.__and__) + arrs = TreeList(arrays.INVALID, arrays.merge) + tainted = TreeList(False, operator.__or__) + + for i, desc in enumerate(full_ptypes): + if desc is not None: + prims[offset + i] = scalars.fromDesc(desc) + arrs[offset + i] = arrays.fromDesc(desc) + return TypeInfo(prims, arrs, tainted) + +_MATH_THROW_OPS = [jvmops.IDIV, jvmops.IREM, jvmops.LDIV, jvmops.LREM] +def pruneHandlers(all_handlers): + result = collections.defaultdict(list) + for instr, handlers in all_handlers.items(): + if not instr.type in dalvik.PRUNED_THROW_TYPES: + continue + # if math op, make sure it is int div/rem + if instr.type == dalvik.BinaryOp: + if mathops.BINARY[instr.opcode][0] not in _MATH_THROW_OPS: + continue + elif instr.type == dalvik.BinaryOpConst: + if mathops.BINARY_LIT[instr.opcode] not in _MATH_THROW_OPS: + continue + + types = set() + for ctype, handler in handlers: + # if multiple handlers with same catch type, only include the first + if ctype not in types: + result[instr].append((ctype, handler)) + types.add(ctype) + # stop as soon as we reach a catch all handler + if ctype == b'java/lang/Throwable': + break + return dict(result) + +################################################################################ +# Lots of instructions just return an object or int for type inference purposes +# so we have a single function for these cases +def visitRetObj(dex, instr, cur): + return cur.assign(instr.args[0], scalars.OBJ) +def visitRetInt(dex, instr, cur): + return cur.assign(instr.args[0], scalars.INT) + +# Instruction specific callbacks +def visitMove(dex, instr, cur): + return cur.move(instr.args[1], instr.args[0], wide=False) +def visitMoveWide(dex, instr, cur): + return cur.move(instr.args[1], instr.args[0], wide=True) +def visitMoveResult(dex, instr, cur): + return cur.assignFromDesc(instr.args[0], instr.prev_result) +def visitConst32(dex, instr, cur): + val = instr.args[1] % (1<<32) + if val == 0: + return cur.assign(instr.args[0], scalars.ZERO, arrays.NULL) + else: + return cur.assign(instr.args[0], scalars.C32) +def visitConst64(dex, instr, cur): + return cur.assign2(instr.args[0], scalars.C64) +def visitCheckCast(dex, instr, cur): + at = arrays.fromDesc(dex.type(instr.args[1])) + at = arrays.narrow(cur.arrs[instr.args[0]], at) + return cur.assign(instr.args[0], scalars.OBJ, at) +def visitNewArray(dex, instr, cur): + at = arrays.fromDesc(dex.type(instr.args[2])) + return cur.assign(instr.args[0], scalars.OBJ, at) +def visitArrayGet(dex, instr, cur): + arr_at = cur.arrs[instr.args[1]] + if arr_at is arrays.NULL: + # This is unreachable, so use (ALL, NULL), which can be merged with anything + return cur.assign(instr.args[0], scalars.ALL, arrays.NULL) + else: + st, at = arrays.eletPair(arr_at) + return cur.assign(instr.args[0], st, at) +def visitInstanceGet(dex, instr, cur): + field_id = dex.field_id(instr.args[2]) + return cur.assignFromDesc(instr.args[0], field_id.desc) +def visitStaticGet(dex, instr, cur): + field_id = dex.field_id(instr.args[1]) + return cur.assignFromDesc(instr.args[0], field_id.desc) + +def visitUnaryOp(dex, instr, cur): + _, _, st = mathops.UNARY[instr.opcode] + if scalars.iswide(st): + return cur.assign2(instr.args[0], st) + else: + return cur.assign(instr.args[0], st) + +def visitBinaryOp(dex, instr, cur): + _, st, _ = mathops.BINARY[instr.opcode] + if scalars.iswide(st): + return cur.assign2(instr.args[0], st) + else: + return cur.assign(instr.args[0], st) + +FUNCS = { + dalvik.ConstString: visitRetObj, + dalvik.ConstClass: visitRetObj, + dalvik.NewInstance: visitRetObj, + dalvik.InstanceOf: visitRetInt, + dalvik.ArrayLen: visitRetInt, + dalvik.Cmp: visitRetInt, + dalvik.BinaryOpConst: visitRetInt, + + dalvik.Move: visitMove, + dalvik.MoveWide: visitMoveWide, + dalvik.MoveResult: visitMoveResult, + dalvik.Const32: visitConst32, + dalvik.Const64: visitConst64, + dalvik.CheckCast: visitCheckCast, + dalvik.NewArray: visitNewArray, + dalvik.ArrayGet: visitArrayGet, + dalvik.InstanceGet: visitInstanceGet, + dalvik.StaticGet: visitStaticGet, + dalvik.UnaryOp: visitUnaryOp, + dalvik.BinaryOp: visitBinaryOp, +} + +CONTROL_FLOW_OPS = {dalvik.Goto, dalvik.If, dalvik.IfZ, dalvik.Switch} + +def doInference(dex, method, code, bytecode, instr_d): + # get exception handlers + all_handlers = collections.defaultdict(list) + for tryi in code.tries: + for instr in code.bytecode: + if tryi.start < instr.pos2 and tryi.end > instr.pos: + all_handlers[instr] += tryi.catches + all_handlers = pruneHandlers(all_handlers) + + types = {} + types[0] = fromParams(method, code.nregs) + dirty = {0} + + def doMerge(pos, new): + # prevent infinite loops + if pos not in instr_d: + return + + if pos in types: + old = types[pos] + new = merge(old, new) + if new is not old: + types[pos] = new + dirty.add(pos) + else: + types[pos] = new + dirty.add(pos) + + while dirty: # iterate until convergence + for instr in bytecode: + if instr.pos not in dirty: + continue + + dirty.remove(instr.pos) + cur = types[instr.pos] + itype = instr.type + if itype in FUNCS: + after = FUNCS[itype](dex, instr, cur) + elif itype in CONTROL_FLOW_OPS: + # control flow - none of these are in FUNCS + result = after = after2 = cur + if instr.implicit_casts is not None: + desc_ind, regs = instr.implicit_casts + for reg in regs: + st = cur.prims[reg] # could != OBJ if null + at = arrays.narrow(cur.arrs[reg], arrays.fromDesc(dex.type(desc_ind))) + result = result.assign(reg, st, at, taint=True) + # merge into branch if op = if-nez else merge into fallthrough + if instr.opcode == 0x39: + after2 = result + else: + after = result + + if instr.type == dalvik.Goto: + doMerge(instr.args[0], after2) + elif instr.type == dalvik.If: + doMerge(instr.args[2], after2) + elif instr.type == dalvik.IfZ: + doMerge(instr.args[1], after2) + elif instr.type == dalvik.Switch: + switchdata = instr_d[instr.args[1]].switchdata + for offset in switchdata.values(): + target = (instr.pos + offset) % (1<<32) + doMerge(target, cur) + else: + after = cur + + # these instructions don't fallthrough + if instr.type not in (dalvik.Return, dalvik.Throw, dalvik.Goto): + doMerge(instr.pos2, after) + + # exception handlers + if instr in all_handlers: + for ctype, handler in all_handlers[instr]: + doMerge(handler, cur) + return types, all_handlers diff --git a/src/main/resources/enjarify-master/enjarify/util.py b/src/main/resources/enjarify-master/enjarify/util.py new file mode 100644 index 00000000..9b7cce87 --- /dev/null +++ b/src/main/resources/enjarify-master/enjarify/util.py @@ -0,0 +1,43 @@ +# Copyright 2015 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +def keysToRanges(d, limit): + starts = sorted(d) + for s, e in zip(starts, starts[1:] + [limit]): + for k in range(s, e): + d[k] = d[s] + return d + +def signExtend(val, size): + if val & (1 << (size-1)): + val -= (1 << size) + return val + +def s16(val): + val %= 1 << 16 + if val >= 1 << 15: + val -= 1 << 16 + return val + +def s32(val): + val %= 1 << 32 + if val >= 1 << 31: + val -= 1 << 32 + return val + +def s64(val): + val %= 1 << 64 + if val >= 1 << 63: + val -= 1 << 64 + return val