From a4b452de6aeebe7a9a086d8f5dd5d0c05ab3d384 Mon Sep 17 00:00:00 2001 From: Nico Mexis Date: Wed, 31 Mar 2021 11:48:14 +0200 Subject: [PATCH] Include Krakatau and enjarify resources directly --- libs/Krakatau-11.jar | Bin 289664 -> 0 bytes libs/enjarify-3.jar | Bin 373085 -> 0 bytes pom.xml | 27 +- .../resources/Krakatau-master/.editorconfig | 8 + .../resources/Krakatau-master/.gitattributes | 2 + src/main/resources/Krakatau-master/.gitignore | 5 + .../Documentation/assembler.txt | 295 + .../Documentation/changelog.txt | 12 + .../Krakatau-master/Krakatau/__init__.py | 0 .../Krakatau/assembler/__init__.py | 0 .../Krakatau/assembler/assembly.py | 246 + .../Krakatau/assembler/codes.py | 12 + .../Krakatau/assembler/disassembly.py | 843 + .../Krakatau/assembler/flags.py | 43 + .../Krakatau/assembler/instructions.py | 18 + .../Krakatau/assembler/parse.py | 1026 + .../Krakatau/assembler/pool.py | 259 + .../Krakatau/assembler/token_regexes.py | 45 + .../Krakatau/assembler/tokenize.py | 113 + .../Krakatau/assembler/writer.py | 138 + .../Krakatau/attributes_raw.py | 21 + .../Krakatau-master/Krakatau/bytecode.py | 217 + .../Krakatau-master/Krakatau/classfile.py | 107 + .../Krakatau/classfileformat/__init__.py | 0 .../Krakatau/classfileformat/classdata.py | 116 + .../Krakatau/classfileformat/mutf8.py | 28 + .../Krakatau/classfileformat/reader.py | 47 + .../Krakatau-master/Krakatau/constant_pool.py | 103 + .../Krakatau-master/Krakatau/environment.py | 110 + .../Krakatau-master/Krakatau/error.py | 12 + .../Krakatau-master/Krakatau/field.py | 29 + .../Krakatau-master/Krakatau/floatutil.py | 81 + .../Krakatau-master/Krakatau/graph_util.py | 68 + .../Krakatau-master/Krakatau/java/__init__.py | 0 .../Krakatau-master/Krakatau/java/ast.py | 734 + .../Krakatau-master/Krakatau/java/ast2.py | 138 + .../Krakatau-master/Krakatau/java/astgen.py | 322 + .../Krakatau-master/Krakatau/java/boolize.py | 179 + .../Krakatau-master/Krakatau/java/cfg.py | 227 + .../Krakatau/java/graphproxy.py | 127 + .../Krakatau/java/javaclass.py | 70 + .../Krakatau/java/javamethod.py | 886 + .../Krakatau/java/mergevariables.py | 285 + .../Krakatau-master/Krakatau/java/reserved.py | 55 + .../Krakatau-master/Krakatau/java/setree.py | 63 + .../Krakatau/java/stringescape.py | 27 + .../Krakatau/java/structuring.py | 1254 + .../Krakatau-master/Krakatau/java/throws.py | 48 + .../Krakatau-master/Krakatau/java/visitor.py | 14 + .../Krakatau-master/Krakatau/method.py | 115 + .../Krakatau-master/Krakatau/namegen.py | 18 + .../Krakatau-master/Krakatau/opnames.py | 65 + .../Krakatau-master/Krakatau/script_util.py | 191 + .../Krakatau-master/Krakatau/ssa/__init__.py | 1 + .../Krakatau/ssa/blockmaker.py | 360 + .../Krakatau/ssa/blockmakerfuncs.py | 461 + .../Krakatau/ssa/constraints/__init__.py | 66 + .../Krakatau/ssa/constraints/float_c.py | 59 + .../Krakatau/ssa/constraints/int_c.py | 48 + .../Krakatau/ssa/constraints/mixin.py | 6 + .../Krakatau/ssa/constraints/obj_c.py | 123 + .../Krakatau/ssa/exceptionset.py | 207 + .../Krakatau/ssa/excepttypes.py | 11 + .../Krakatau/ssa/functionbase.py | 9 + .../Krakatau-master/Krakatau/ssa/graph.py | 764 + .../Krakatau-master/Krakatau/ssa/mixin.py | 6 + .../Krakatau-master/Krakatau/ssa/objtypes.py | 126 + .../Krakatau/ssa/ssa_jumps/__init__.py | 10 + .../Krakatau/ssa/ssa_jumps/base.py | 18 + .../Krakatau/ssa/ssa_jumps/exit.py | 9 + .../Krakatau/ssa/ssa_jumps/goto.py | 17 + .../Krakatau/ssa/ssa_jumps/ifcmp.py | 101 + .../Krakatau/ssa/ssa_jumps/onexception.py | 59 + .../Krakatau/ssa/ssa_jumps/placeholder.py | 5 + .../Krakatau/ssa/ssa_jumps/switch.py | 86 + .../Krakatau/ssa/ssa_ops/__init__.py | 16 + .../Krakatau/ssa/ssa_ops/array.py | 79 + .../Krakatau/ssa/ssa_ops/base.py | 30 + .../Krakatau/ssa/ssa_ops/bitwise_util.py | 54 + .../Krakatau/ssa/ssa_ops/checkcast.py | 40 + .../Krakatau/ssa/ssa_ops/convert.py | 8 + .../Krakatau/ssa/ssa_ops/fieldaccess.py | 62 + .../Krakatau/ssa/ssa_ops/fmath.py | 40 + .../Krakatau/ssa/ssa_ops/imath.py | 208 + .../Krakatau/ssa/ssa_ops/invoke.py | 87 + .../Krakatau/ssa/ssa_ops/monitor.py | 21 + .../Krakatau/ssa/ssa_ops/new.py | 68 + .../Krakatau/ssa/ssa_ops/phi.py | 46 + .../Krakatau/ssa/ssa_ops/throw.py | 25 + .../Krakatau/ssa/ssa_ops/truncate.py | 37 + .../Krakatau/ssa/ssa_ops/tryreturn.py | 12 + .../Krakatau-master/Krakatau/ssa/ssa_types.py | 77 + .../Krakatau-master/Krakatau/ssa/subproc.py | 59 + .../Krakatau-master/Krakatau/util/__init__.py | 0 .../Krakatau-master/Krakatau/util/thunk.py | 7 + .../Krakatau/verifier/__init__.py | 0 .../Krakatau/verifier/descriptors.py | 85 + .../Krakatau/verifier/inference_verifier.py | 508 + .../Krakatau/verifier/verifier_types.py | 141 + .../resources/Krakatau-master/LICENSE.TXT | 2 +- src/main/resources/Krakatau-master/README.TXT | 134 + .../resources/Krakatau-master/assemble.py | 44 + .../resources/Krakatau-master/decompile.py | 158 + .../resources/Krakatau-master/disassemble.py | 75 + .../Krakatau-master/examples/exceptions.j | 36 + .../Krakatau-master/examples/hello.j | 12 + .../Krakatau-master/examples/input.j | 21 + .../Krakatau-master/examples/invokedynamic.j | 59 + .../resources/Krakatau-master/examples/loop.j | 26 + .../Krakatau-master/examples/minimal.j | 2 + .../examples/multipleclasses.j | 10 + src/main/resources/Krakatau-master/pylintrc | 302 + .../resources/Krakatau-master/runtests.py | 310 + .../Krakatau-master/tests/__init__.py | 1 + .../tests/assembler/bad/adjacentframes.j | 14 + .../tests/assembler/bad/badcircularcp.j | 8 + .../tests/assembler/bad/badcircularcp2.j | 10 + .../tests/assembler/bad/badescapes1.j | 3 + .../tests/assembler/bad/badescapes2.j | 3 + .../tests/assembler/bad/badescapes3.j | 3 + .../tests/assembler/bad/badescapes4.j | 3 + .../tests/assembler/bad/badescapes5.j | 3 + .../tests/assembler/bad/badescapes6.j | 3 + .../tests/assembler/bad/badintlitval.j | 4 + .../tests/assembler/bad/badlonglitval.j | 4 + .../tests/assembler/bad/badmhcode.j | 4 + .../tests/assembler/bad/badnestedcp.j | 21 + .../tests/assembler/bad/badrawref.j | 4 + .../tests/assembler/bad/badstring.j | 3 + .../tests/assembler/bad/badversion.j | 4 + .../tests/assembler/bad/bscpmixup.j | 5 + .../tests/assembler/bad/bscpmixup2.j | 5 + .../tests/assembler/bad/bscpmixup3.j | 5 + .../tests/assembler/bad/bscpmixup4.j | 5 + .../tests/assembler/bad/const0.j | 4 + .../tests/assembler/bad/constnospace.j | 4 + .../tests/assembler/bad/duplicatelabels.j | 12 + .../tests/assembler/bad/duplookupswitchkey.j | 17 + .../tests/assembler/bad/duprawdef.j | 6 + .../tests/assembler/bad/dupsymdef.j | 6 + .../tests/assembler/bad/emptytable.j | 12 + .../tests/assembler/bad/evenscpdouble.j | 14 + .../tests/assembler/bad/exhaustbs.j | 11 + .../tests/assembler/bad/exhaustcp_impbs.j | 111 + .../tests/assembler/bad/exhaustcp_impsmt.j | 113 + .../tests/assembler/bad/invalidarraycode.j | 10 + .../tests/assembler/bad/jumptoofar.j | 16 + .../tests/assembler/bad/lbloutsidecode.j | 9 + .../tests/assembler/bad/ldc256.j | 10 + .../tests/assembler/bad/longstring.j | 6 + .../tests/assembler/bad/missingmethod.j | 12 + .../tests/assembler/bad/name0.j | 3 + .../tests/assembler/bad/nametoolong.j | 4 + .../tests/assembler/bad/noconstrhs.j | 6 + .../tests/assembler/bad/nonllabel.j | 10 + .../tests/assembler/bad/nosuper.j | 2 + .../tests/assembler/bad/oddscpdouble.j | 14 + .../tests/assembler/bad/rawalias.j | 5 + .../assembler/bad/stackframe_offset_toobig.j | 78 + .../tests/assembler/bad/strictfp.j | 9 + .../tests/assembler/bad/toomanyldcs.j | 12 + .../tests/assembler/bad/undefinedref.j | 10 + .../tests/assembler/bad/undeflabel.j | 10 + .../tests/assembler/bad/verticaltab.j | 2 + .../tests/assembler/bad/widenop.j | 10 + .../tests/assembler/bad/widerawdefconflict.j | 6 + .../tests/assembler/good/LambdaTest.j | 40 + .../tests/assembler/good/bs0.j | 5 + .../tests/assembler/good/floatliterals.j | 40 + .../tests/assembler/good/invokeinterface.j | 33 + .../tests/assembler/good/jasminfield.j | 12 + .../tests/assembler/good/jasminmethod.j | 12 + .../tests/assembler/good/ldcs.j | 13 + .../tests/assembler/good/ldcs2.j | 16 + .../tests/assembler/good/ldcs3.j | 15 + .../tests/assembler/good/ldcs_plus.j | 39 + .../tests/assembler/good/longsymrefchain.j | 9 + .../tests/assembler/good/module.j | 10 + .../tests/assembler/good/nans.j | 75 + .../tests/assembler/good/oddscpdouble2.j | 17 + .../tests/assembler/good/strictfp.j | 9 + .../tests/decompiler/__init__.py | 35 + .../decompiler/classes/ArgumentTypes.class | Bin 0 -> 2130 bytes .../tests/decompiler/classes/ArrayTest.class | Bin 0 -> 1135 bytes .../decompiler/classes/BadInnerTest.class | Bin 0 -> 339 bytes .../decompiler/classes/BoolizeTest.class | Bin 0 -> 370 bytes .../decompiler/classes/ClinitFlagsTest.class | Bin 0 -> 177 bytes .../decompiler/classes/ConditionalTest.class | Bin 0 -> 1180 bytes .../decompiler/classes/ControlFlow.class | Bin 0 -> 1377 bytes .../tests/decompiler/classes/DoubleEdge.class | Bin 0 -> 279 bytes .../decompiler/classes/DuplicateInit.class | Bin 0 -> 660 bytes .../classes/ExceptionHandlers.class | Bin 0 -> 1689 bytes .../decompiler/classes/ExprInlining.class | Bin 0 -> 5674 bytes .../tests/decompiler/classes/JSRTests.class | Bin 0 -> 997 bytes .../classes/LClassLiteralTest.class | Bin 0 -> 920 bytes .../classes/NonexistentCheckcast.class | Bin 0 -> 151 bytes .../decompiler/classes/NullInference.class | Bin 0 -> 561 bytes .../decompiler/classes/OddsAndEnds.class | Bin 0 -> 2091 bytes .../decompiler/classes/OldVersionTest.class | Bin 0 -> 285 bytes .../decompiler/classes/SamSunTests.class | Bin 0 -> 1223 bytes .../classes/StaticInitializer.class | Bin 0 -> 460 bytes .../decompiler/classes/SwapLoopTest.class | Bin 0 -> 422 bytes .../tests/decompiler/classes/Switch.class | Bin 0 -> 580 bytes .../decompiler/classes/Synchronized.class | Bin 0 -> 423 bytes .../decompiler/classes/TryCatchTest.class | Bin 0 -> 2254 bytes .../decompiler/classes/TryWithResources.class | Bin 0 -> 20267 bytes .../decompiler/classes/UnicodeTest.class | Bin 0 -> 601 bytes .../tests/decompiler/classes/WhileLoops.class | Bin 0 -> 1022 bytes .../tests/decompiler/classes/floattest.class | Bin 0 -> 1298 bytes .../tests/decompiler/classes/splitnew.class | Bin 0 -> 432 bytes .../decompiler/source/ArgumentTypes.java | 81 + .../tests/decompiler/source/ArrayTest.java | 41 + .../tests/decompiler/source/BadInnerTest.j | 16 + .../tests/decompiler/source/BoolizeTest.java | 17 + .../tests/decompiler/source/ClinitFlagsTest.j | 18 + .../decompiler/source/ConditionalTest.java | 112 + .../tests/decompiler/source/ControlFlow.j | 273 + .../tests/decompiler/source/DoubleEdge.j | 19 + .../tests/decompiler/source/DuplicateInit.j | 112 + .../decompiler/source/ExceptionHandlers.j | 269 + .../tests/decompiler/source/ExprInlining.java | 6 + .../tests/decompiler/source/JSRTests.j | 243 + .../decompiler/source/LClassLiteralTest.j | 73 + .../decompiler/source/NonexistentCheckcast.j | 12 + .../decompiler/source/NullInference.java | 27 + .../tests/decompiler/source/OddsAndEnds.java | 76 + .../tests/decompiler/source/OldVersionTest.j | 14 + .../tests/decompiler/source/SamSunTests.j | 168 + .../decompiler/source/StaticInitializer.java | 16 + .../tests/decompiler/source/SwapLoopTest.j | 45 + .../tests/decompiler/source/Switch.java | 48 + .../tests/decompiler/source/Synchronized.java | 19 + .../tests/decompiler/source/TryCatchTest.java | 128 + .../decompiler/source/TryWithResources.java | 60 + .../tests/decompiler/source/UnicodeTest.java | 15 + .../tests/decompiler/source/WhileLoops.java | 97 + .../tests/decompiler/source/floattest.java | 58 + .../tests/decompiler/source/splitnew.java | 15 + .../tests/disassembler/__init__.py | 19 + .../disassembler/classes/AnachAttrBadCP.class | Bin 0 -> 301 bytes .../classes/AnachAttrBadLowLbl.class | Bin 0 -> 334 bytes .../classes/AnachAttrExtraData.class | Bin 0 -> 332 bytes .../classes/AnachAttrStackMapExtra.class | Bin 0 -> 331 bytes .../classes/AnachAttrStackMapLbl.class | Bin 0 -> 324 bytes .../classes/AnachAttrStackMapTruncated.class | Bin 0 -> 324 bytes .../classes/AnachAttrStackMapTwice.class | Bin 0 -> 339 bytes .../classes/AnachAttrStackMapVTCode.class | Bin 0 -> 328 bytes .../classes/AnachAttrTruncated.class | Bin 0 -> 316 bytes .../disassembler/classes/AnnotationsTest.jar | Bin 0 -> 4659 bytes .../classes/LineNumbersTest.class | Bin 0 -> 1699 bytes .../classes/MethodParametersTest.jar | Bin 0 -> 2042 bytes .../tests/disassembler/classes/Primes.class | Bin 0 -> 1350 bytes .../disassembler/classes/SelfInner.class | Bin 0 -> 437 bytes .../disassembler/source/AnachAttrBadCP.j | 17 + .../disassembler/source/AnachAttrBadLowLbl.j | 19 + .../disassembler/source/AnachAttrExtraData.j | 16 + .../source/AnachAttrStackMapExtra.j | 25 + .../source/AnachAttrStackMapLbl.j | 23 + .../source/AnachAttrStackMapTruncated.j | 25 + .../source/AnachAttrStackMapTwice.j | 26 + .../source/AnachAttrStackMapVTCode.j | 25 + .../disassembler/source/AnachAttrTruncated.j | 16 + .../disassembler/source/AnnotationsTest.java | 96 + .../disassembler/source/LineNumbersTest.java | 25 + .../source/MethodParametersTest.java | 29 + .../tests/disassembler/source/Primes.java | 27 + .../tests/disassembler/source/SelfInner.j | 39 + .../tests/roundtrip/classes/module-info.class | Bin 0 -> 183 bytes .../enjarify-master/CONTRIBUTING.txt | 24 + .../resources/enjarify-master/LICENSE.txt | 2 +- src/main/resources/enjarify-master/README.md | 62 + src/main/resources/enjarify-master/debug.py | 3 + .../resources/enjarify-master/enjarify.bat | 18 + .../resources/enjarify-master/enjarify.sh | 43 + .../enjarify-master/enjarify/__init__.py | 13 + .../enjarify-master/enjarify/byteio.py | 80 + .../enjarify-master/enjarify/dalvik.py | 219 + .../enjarify-master/enjarify/dalvikformats.py | 163 + .../enjarify-master/enjarify/flags.py | 40 + .../enjarify-master/enjarify/jvm/__init__.py | 13 + .../enjarify/jvm/arraytypes.py | 55 + .../enjarify/jvm/constantpool.py | 189 + .../enjarify/jvm/constants/__init__.py | 13 + .../enjarify/jvm/constants/calc.py | 191 + .../enjarify/jvm/constants/genlookup.py | 162 + .../enjarify/jvm/constants/lookup.py | 66347 ++++++++++++++++ .../enjarify-master/enjarify/jvm/error.py | 16 + .../enjarify/jvm/genmathops.py | 65 + .../enjarify-master/enjarify/jvm/ir.py | 220 + .../enjarify-master/enjarify/jvm/jvmops.py | 216 + .../enjarify-master/enjarify/jvm/mathops.py | 128 + .../enjarify/jvm/optimization/__init__.py | 13 + .../enjarify/jvm/optimization/consts.py | 76 + .../enjarify/jvm/optimization/jumps.py | 100 + .../enjarify/jvm/optimization/options.py | 32 + .../enjarify/jvm/optimization/registers.py | 231 + .../enjarify/jvm/optimization/stack.py | 245 + .../enjarify/jvm/scalartypes.py | 40 + .../enjarify/jvm/writebytecode.py | 99 + .../enjarify/jvm/writeclass.py | 125 + .../enjarify-master/enjarify/jvm/writeir.py | 630 + .../enjarify-master/enjarify/main.py | 107 + .../enjarify-master/enjarify/mutf8.py | 52 + .../enjarify-master/enjarify/parsedex.py | 276 + .../enjarify-master/enjarify/treelist.py | 119 + .../enjarify/typeinference/__init__.py | 13 + .../enjarify/typeinference/typeinference.py | 292 + .../enjarify-master/enjarify/util.py | 43 + 308 files changed, 88612 insertions(+), 19 deletions(-) delete mode 100644 libs/Krakatau-11.jar delete mode 100644 libs/enjarify-3.jar create mode 100644 src/main/resources/Krakatau-master/.editorconfig create mode 100644 src/main/resources/Krakatau-master/.gitattributes create mode 100644 src/main/resources/Krakatau-master/.gitignore create mode 100644 src/main/resources/Krakatau-master/Documentation/assembler.txt create mode 100644 src/main/resources/Krakatau-master/Documentation/changelog.txt create mode 100644 src/main/resources/Krakatau-master/Krakatau/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/assembly.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/codes.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/disassembly.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/flags.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/instructions.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/parse.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/pool.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/token_regexes.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/tokenize.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/assembler/writer.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/attributes_raw.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/bytecode.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/classfile.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/classfileformat/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/classfileformat/classdata.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/classfileformat/mutf8.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/classfileformat/reader.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/constant_pool.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/environment.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/error.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/field.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/floatutil.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/graph_util.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/ast.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/ast2.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/astgen.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/boolize.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/cfg.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/graphproxy.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/javaclass.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/javamethod.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/mergevariables.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/reserved.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/setree.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/stringescape.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/structuring.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/throws.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/java/visitor.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/method.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/namegen.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/opnames.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/script_util.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/blockmaker.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/blockmakerfuncs.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/constraints/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/constraints/float_c.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/constraints/int_c.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/constraints/mixin.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/constraints/obj_c.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/exceptionset.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/excepttypes.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/functionbase.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/graph.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/mixin.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/objtypes.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/base.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/exit.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/goto.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/ifcmp.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/onexception.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/placeholder.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_jumps/switch.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/array.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/base.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/bitwise_util.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/checkcast.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/convert.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/fieldaccess.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/fmath.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/imath.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/invoke.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/monitor.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/new.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/phi.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/throw.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/truncate.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_ops/tryreturn.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/ssa_types.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/ssa/subproc.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/util/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/util/thunk.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/verifier/__init__.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/verifier/descriptors.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/verifier/inference_verifier.py create mode 100644 src/main/resources/Krakatau-master/Krakatau/verifier/verifier_types.py rename libs/krakata-license.txt => src/main/resources/Krakatau-master/LICENSE.TXT (99%) create mode 100644 src/main/resources/Krakatau-master/README.TXT create mode 100644 src/main/resources/Krakatau-master/assemble.py create mode 100644 src/main/resources/Krakatau-master/decompile.py create mode 100644 src/main/resources/Krakatau-master/disassemble.py create mode 100644 src/main/resources/Krakatau-master/examples/exceptions.j create mode 100644 src/main/resources/Krakatau-master/examples/hello.j create mode 100644 src/main/resources/Krakatau-master/examples/input.j create mode 100644 src/main/resources/Krakatau-master/examples/invokedynamic.j create mode 100644 src/main/resources/Krakatau-master/examples/loop.j create mode 100644 src/main/resources/Krakatau-master/examples/minimal.j create mode 100644 src/main/resources/Krakatau-master/examples/multipleclasses.j create mode 100644 src/main/resources/Krakatau-master/pylintrc create mode 100644 src/main/resources/Krakatau-master/runtests.py create mode 100644 src/main/resources/Krakatau-master/tests/__init__.py create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/adjacentframes.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badcircularcp2.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badescapes1.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badescapes2.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badescapes3.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badescapes4.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badescapes5.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badescapes6.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badintlitval.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badlonglitval.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badmhcode.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badnestedcp.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badrawref.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badstring.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/badversion.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup2.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup3.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/bscpmixup4.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/const0.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/constnospace.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/duplicatelabels.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/duplookupswitchkey.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/duprawdef.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/dupsymdef.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/emptytable.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/evenscpdouble.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/exhaustbs.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impbs.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/exhaustcp_impsmt.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/invalidarraycode.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/jumptoofar.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/lbloutsidecode.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/ldc256.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/longstring.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/missingmethod.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/name0.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/nametoolong.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/noconstrhs.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/nonllabel.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/nosuper.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/oddscpdouble.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/rawalias.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/stackframe_offset_toobig.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/strictfp.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/toomanyldcs.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/undefinedref.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/undeflabel.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/verticaltab.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/widenop.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/bad/widerawdefconflict.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/LambdaTest.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/bs0.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/floatliterals.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/invokeinterface.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/jasminfield.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/jasminmethod.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/ldcs.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/ldcs2.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/ldcs3.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/ldcs_plus.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/longsymrefchain.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/module.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/nans.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/oddscpdouble2.j create mode 100644 src/main/resources/Krakatau-master/tests/assembler/good/strictfp.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/__init__.py create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ArgumentTypes.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ArrayTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/BadInnerTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/BoolizeTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ClinitFlagsTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ConditionalTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ControlFlow.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/DoubleEdge.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/DuplicateInit.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ExceptionHandlers.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/ExprInlining.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/JSRTests.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/LClassLiteralTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/NonexistentCheckcast.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/NullInference.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/OddsAndEnds.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/OldVersionTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/SamSunTests.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/StaticInitializer.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/SwapLoopTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/Switch.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/Synchronized.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/TryCatchTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/TryWithResources.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/UnicodeTest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/WhileLoops.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/floattest.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/classes/splitnew.class create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ArgumentTypes.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ArrayTest.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/BadInnerTest.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/BoolizeTest.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ClinitFlagsTest.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ConditionalTest.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ControlFlow.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/DoubleEdge.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/DuplicateInit.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ExceptionHandlers.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/ExprInlining.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/JSRTests.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/LClassLiteralTest.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/NonexistentCheckcast.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/NullInference.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/OddsAndEnds.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/OldVersionTest.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/SamSunTests.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/StaticInitializer.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/SwapLoopTest.j create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/Switch.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/Synchronized.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/TryCatchTest.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/TryWithResources.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/UnicodeTest.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/WhileLoops.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/floattest.java create mode 100644 src/main/resources/Krakatau-master/tests/decompiler/source/splitnew.java create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/__init__.py create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadCP.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrBadLowLbl.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrExtraData.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapExtra.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapLbl.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTruncated.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapTwice.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrStackMapVTCode.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnachAttrTruncated.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/AnnotationsTest.jar create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/LineNumbersTest.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/MethodParametersTest.jar create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/Primes.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/classes/SelfInner.class create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadCP.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrBadLowLbl.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrExtraData.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapExtra.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapLbl.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTruncated.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapTwice.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrStackMapVTCode.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnachAttrTruncated.j create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/AnnotationsTest.java create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/LineNumbersTest.java create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/MethodParametersTest.java create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/Primes.java create mode 100644 src/main/resources/Krakatau-master/tests/disassembler/source/SelfInner.j create mode 100644 src/main/resources/Krakatau-master/tests/roundtrip/classes/module-info.class create mode 100644 src/main/resources/enjarify-master/CONTRIBUTING.txt rename libs/enjarif-license.txt => src/main/resources/enjarify-master/LICENSE.txt (99%) create mode 100644 src/main/resources/enjarify-master/README.md create mode 100644 src/main/resources/enjarify-master/debug.py create mode 100644 src/main/resources/enjarify-master/enjarify.bat create mode 100644 src/main/resources/enjarify-master/enjarify.sh create mode 100644 src/main/resources/enjarify-master/enjarify/__init__.py create mode 100644 src/main/resources/enjarify-master/enjarify/byteio.py create mode 100644 src/main/resources/enjarify-master/enjarify/dalvik.py create mode 100644 src/main/resources/enjarify-master/enjarify/dalvikformats.py create mode 100644 src/main/resources/enjarify-master/enjarify/flags.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/__init__.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/arraytypes.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/constantpool.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/constants/__init__.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/constants/calc.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/constants/genlookup.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/constants/lookup.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/error.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/genmathops.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/ir.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/jvmops.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/mathops.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/optimization/__init__.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/optimization/consts.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/optimization/jumps.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/optimization/options.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/optimization/registers.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/optimization/stack.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/scalartypes.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/writebytecode.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/writeclass.py create mode 100644 src/main/resources/enjarify-master/enjarify/jvm/writeir.py create mode 100644 src/main/resources/enjarify-master/enjarify/main.py create mode 100644 src/main/resources/enjarify-master/enjarify/mutf8.py create mode 100644 src/main/resources/enjarify-master/enjarify/parsedex.py create mode 100644 src/main/resources/enjarify-master/enjarify/treelist.py create mode 100644 src/main/resources/enjarify-master/enjarify/typeinference/__init__.py create mode 100644 src/main/resources/enjarify-master/enjarify/typeinference/typeinference.py create mode 100644 src/main/resources/enjarify-master/enjarify/util.py diff --git a/libs/Krakatau-11.jar b/libs/Krakatau-11.jar deleted file mode 100644 index 47cee1236c7b89656ca5ddd96659dfd2f37dff20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 289664 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

EKKx7+&I0Oqa_j;TPNd(ynGvOvJl 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%0AsFtoCn^OSaJbRTkymJZ$|7EJow*At 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 GbN&ZsCie;e diff --git a/libs/enjarify-3.jar b/libs/enjarify-3.jar deleted file mode 100644 index a0bb48b6e4b7e3e9e061195ec8ba6af3f011d5de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373085 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%0Di4k3q!BOU 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

9{+Ruw>n+VSn2L?NZyvFeYs`MqRB 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

Rrc{t~8^W~a{N}(bp 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 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 0000000000000000000000000000000000000000..b645be5b489267bc93051b8a0438d0d753e9d925 GIT binary patch literal 2130 zcmah}+fy556#p%IC0*K32$YMq^-_|>aH~Zn6eaPNils`#Ch@{T78(pm8WI$5)oTBM z`o@bdePG7%0ex6@Y-RMx8UGXi3H6-pCRrxTbY|zA^L^*{{l0U~p7Z_v?{7x{CUGx- zFlJR;4PXv0t9V7lyoz`L3T8DVSij2RH5RX{c!P0o29U%x7HaR3*v!op;+%I-Br(~&vkR9Gt3 z1t_!mV!k>jKnzEg1xSff&LXvC=8L4lnMjgVGLm7Hh$IAD3NLJ$JLY)7EN+Z1u5Mau z)mX&0wN$O-iyJWkec^2THeaHKv)Ong8y7Hk43fBIR+g;WHLJL0#UlR0-Zd2Eda1;b z#OuM*VoHEqrVFcXn9N>Z7AXACNs$ubcwmhbmUTp62X; z##DT%<0X8>izr(!vUQoQ7+Vu;&9L}d$Md+NV;WZ|uU16w^+IP( zYz@UMm#tz>K-B+>y!y7E@G46^HB7D8)>JKbZ@As-c4GWQM|UfuWU*>(@ZVE%)>?fC zMjjKJcY^pe>c3^PP@~DAF{0k^@y1J~f@M-SsymEWq?vmhv3G=s^;P$Di=5`r_ZyaW zx2qQQmsqON0EFDicp|8rmbpbNJ@qV)Z}Yfh>O(|RO*7GH^6y(Km3IXg{=~iU zNcyVY*h=!jq42f#(#C7tT6Fc$$^Xmq>N(3Qr<(0Da_lu|%%$&QuR(B;-m);gx;Y2?BTTW2Ri6;ARf?;vD^*Oq6~qb3~|cAX&Yx|4T-Fvjqa(x57uk|N_vp$>JrtT*hAg??oMgockL=jQI@X(>yq+ARz#-WA`6$TaeR`~<2 ztYS;K#6?V5La|}vM_JxZ29i{{>Aro>xsN`#`_JEBrvOG_sOZHAN0cKLMjQzhI+7~x zAjNT4?4v5u7*jDWmU|fExUZrI6Dl4E&qJ~FAfsYZU{m7oh+~@Lv4STYGYXz6m{ssh z!5qhPju#A}DZ5~M(+pBHw$32Wx?2`)JEmP==#1vF+va;S<(P$h%J7PIAwMZ-(p%SM zh(znqm5ps{)2pD3VRb+-np=#mYq*J9l)OIotm76ebHlMF8M<;lV!J8BD%z%Ff2u$n z^BNYg$njD`7E2t<8dk8%&|d3u?OoCRAm{=bBrP?(!fTR))FNViQNJ?{0~jJ=g*zZ( zrWgXbMd2T2XsP9{D!|ZMb1f7+D{mD^$a%|g+p0z_0arcQEsSbpMTcuff)URdk zkfhaseb07MmCSn#+LmSQuDKUi8fh4{uS~3NzW($tv~DcHz;{JKhwj(#D*Pz%W`dhy z#ta?N`m}x}^wVSQrGEef!NdchwU17%v@_w2{{%ZG0|*oOwhx~}Mu>dh`3VA99z2H> zSkgmrBO&XC9!$##;|JtK8Nm`lWa(8)52dAqafGI2@+C`9BuZ#HgH}c}d9PerSIcN2y!8xiWwggn524B@=r{roo*fuii+VUlfPV5gCcyC(-*AX))V@MbZP33`gc#z+VG+_@387PkGW0*n^#;oD|0p*u GDfkC>z4y%k literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..724287e438c7f54964f11ff4f88b7aef4b87ed5c GIT binary patch literal 339 zcmY*Vu};G<5Pe4rZbE?4lCoxOC8V%-K%!G6B#=NXOxMOrQzbU44T#Sw0|Nsez()a> zc1h2J-<{v{ySty?uWtaCIPYMOFuLX}DU8u8cah8*_-(;{zThOc#&D9^D?+>C!Vm_- zr<*0ea$2&<(|f-vOgbV!=2uC;$5#dByoY+hgqG>(Rq-5u`lT?P>R35bR3jLi{ oxBn=_Ae>YitYaP6#SKxFYzcYt1mA zymNj^DkB4jO>$0VUS^3MBLlMrNL&D++CM2PHMxY5f!`Ud#4RT=y*MPbxP(EFfsug; qXdMHP-9D)C zkCjBn2unu!1!FoAIxgzCq$8_rB^Oyj&=FY~DmWI!tuKW(YI%nmC2i8ZMi-f~y)PO{91yg=-8`45Ut>SAy?RpNVN) zH*p3Lru_^941)|q5^9o#{8F})yyIdbD%W)c%ztEqgxgp&_=N0 zLADUNK?W4bhK#c|ETP^#|~q7wcB=@akM$8Zu|-u481kf|1{^G%2y$TB_FuXKEK2ck1Qv9$w*YpSdeC@!d! zsSJV|)XI@MyYC(O0|F);`6d7@W`wp8wx%u3>Q6_NXX(+qn~Bz!TX$mmtJhIA0DsI7 zQB6ce30>BhrHMmTRWU=3YI0P3Ms;f$M<_IxQ9~gpyr`66F;_jVl~GH)Q7@y8qd}4H zDxrt46TUt4p^BZUEHYt_Z1YP(;w7^wJXP46su2oV1(kc>WE^jkw07T!YUq|>n!+@H)9f@c{Rh0OwbRvj;;K;7 Udua3n3Hbxjih*Q?KSA#O1#_U%4FCWD literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..db9d8df4fd893cd3a298500a1c84fb6461228cb1 GIT binary patch literal 1377 zcmZ`&-ERz06#w1*y4&rj@y%M=YO%XYDe9x@Yqhe7ijT6XWHarK?y@`6%-mHTRNAa( z;*kdrBu(%_SPjy6@F1Q%h`+)kk&syD&aCWKY9?pSz2}_Y`Q3BQosYj?&te+aA z`WSo#EoU$+j}D!eUJ&Si=z5mosu=KLd{rC6Y;bH1*#DD`-J0@d-1L)vQC7rCpbNv7rRRl3MWDtYwaC z!+D*dxn@0CEDY;bziAaT(RXb`9}_u~8WXNXoGuz7SJ3O6Z8c}o$mrJwieli>VY6st z?7FB(Eh>@MY&)UZH3p7N3Sx*;VPn*EktfbMT^Sg@td9t17H$nWv-6aUq#@~Afn%$J zE$AftRV`oC2QE>q(POc?zMe2?mJCg`V@M0fP6gYsgCR)C1|^oJ5|y)AREta+LLb#F z1-r1DhLF)m=sGZLoNsP*lvP-dg1sPWzf+n!`$3L_3ijgwv6)3d)w;O3Wf7=;yw`1^ z7ZfbTG6f0e%vsIO%B!hhIabUGb{j_5AYmH9GV}d;bDVB1g9q~QqJhLmdq3?yppjmn z6bN*CyM3HLM4;sRT=KTYQ?orOZ&zvtfin0Eg3r;AE+gdYnn7b3N-FHR`v?ss+@7xd zD1qIBH+*rb$Mc}_>#^hknk$vcZ+A&|nD!)*5`6DVz|SAyTQgYT=4^WQ4hyF%-@&m6 zSxi7BeFc;Bm3jh;9s4AfRQDj;B#Emh9gd*vPPMAt#9Se3M>rhzkGaQL;Y5KVK))5R zCi^rv4Zr#&eg5L3%J-?Kjz1{d>1JWu+}<#Myo{CV&A0yJo?f*@JvhZm9+r-$Bk6M| zQ;{91;Mfxfd!N2uxgzqfq$E=tiR}B3+VVdbGUTtv$#px4kMg`!)%kJcyCGvpU?xI7SfIF+e`43r6shQ zWe^5yq-e4`^#`TAt40ZJb|VZ{=>OB(21_K^rxj6Z@?f|Td^=nC$DqLpdn7S2U9EW8 z%)Jm_HOpD)ujje9q+89_n5BnsNMHYk-XhhG>OiMcGcglAyC z45_vV6vLFey?!8$ML86zRo>8@K($uA8r@f-rp)3N+<1G$@i2=~EXUhI1_jJ!aR)OD z*1JIOSHzJfiM!?1IHnmg!Jdkg>V_eM>Bi;86DA*yv}|+Sw{aKu82BNX>X2XxZi3}? z{XjPKfMsGJ4x;j#IFlfyXxo^>JXMdn@mmv4|yx^z%Rk`en>l^=fhO!GBhX zw(~cfRi$N1c5F=Hwv7o)G7LcmqpF0FlA<0;n&FM6vM)Lt@@-eD23;hY9(Kc!d(}M* zgND$uN>IeqilQd9Q5VhB0u4G10~{7Toe2*aWWg{(e^ml7=zL+G!#+o@M>*e+!X-xi zo%PM4-_OJNgfYYaxN?TEACx-Mx89#&{4?@fr7v*kJEbV7DD`q(wnR3JVslhy<^(z4 vVI=vA!l~~VL-B4xNRzl076)X&ED6mMqCrJ-=4Gn@bS%C0H^RsL$`+A8ZsJw z&|qlTr9s!w#lXhNPLZ73M@YkAdtDGVI1Iz6(= z(9@0UX(Gglm0HSiOD){(^^!%iMA7}%FYhGk^jz=0%kkQUAP>o$Y(D0~w5&kY<&W{&bu zoydR9Yx(h0yAqNj10xvaiHTS=bCa8F+iCbK__1Lvl zP-T@F$8*AS3>`UMwQXxc+JC{cjxo&e(XTqDa8Ac0e@yU40kpyHRPG?~soZlq=J`yL z-0}0pQ&xVTR$TSSD&U->kb%#R~21tF^3S1v9+FluiG6rOPMHhNtQsgkb z4Z)``V2*YaS{NwbYhkE`{Vg2YkoT&*vZ0-<# zz}zW(x7i`QW-8?Aw@DNLh02^2eoPQk=*FBB??Y5}KHpD0zixOr*#}8JS4=Mk2c0GSS~M(U~t2<)rdqseC{x@0Q9npHS&T^jLQjk=A#O%cS%i*v elpH9Lb&}pGX#6i!D&Hf8Y5$`<`U(#d>G%XgLtKRb literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..edf8476b77bde6d575be548b05e6892c6eb89351 GIT binary patch literal 5674 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 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..ca628d6aec7a8120505834b2159a31a520979e33 GIT binary patch literal 920 zcmd^-U279T6o#M4*KF3+wv(hA#L#imYf_4o#OCuDO(0QIy|Gm{l~I zx!jGN{b<)pZj~!6x+pHXoMSAt1T35{Gy84*fNbqaaJ+5;@QF$2mV*BWy4szX>gAewN zpqOa_@@EYt1mA zymNj^Dmw!^BLj1JNg5-A078|2QdVkm2_u7uUw&R{MP_kHYF>$RMrv|)a$<1_10xVJ j0qtS{(wq#;3@kvJ70450-~vJh23E!c3~U=g@(c_BA@3jM literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..b5e8ecc975b35fd160d60a88dd40a89f088499e4 GIT binary patch literal 561 zcmZuuO;5r=6r6?X0-}Nlet&zYRYK%sqA^k9!32Q>;z3UZ7Az@SQi|d);*1AOJcyo5 z{87fY8buR(c(Z+P-n29O_Wt+;U>BPqgb?MJ;)rof2N6etVsuEL+KE#U1P#-Y3<>=zQ#WtSlx@mds^GbntnDjW=(JN7P0w;(aE*FT=m##%S!7P^_M{L+I4Qtk}Wuv!dS)%!}3rl+qUhzV@XfA zKkFQ;VXR?Yl?{e*#W|Bz;R;zMJCWgbu2dIg?@z06*YZSz5^&lyh<`b@oK&9ddSqId zjs0(ff7=YasYo_urRkR{nYjL6V)R=mJGVI*&r_YU71dM0+28Nc-bfIOth-B|El6=8vA3Qmr^G+WDf^CA{=YE_n+)p}l OSo~CrkfKJPCFKu_R)M7e literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..fe4fe30895f6436de5c1848d8ebbe8c5d698801d GIT binary patch literal 2091 zcmah~+fy556#s3q;oB@r3n{ls7}MA`A%G~gROQkFg5_4K;UczG7qXDWB%5Y8SiIC& zwVlrR=nKv`)3>}hW9vg2bu>6QcJzN?eDYO2U$P;IWhxWC@8q1{xqRoAKmPvVX8_OR zj*Mq9#4s$wfe|;(Zl?zWLQnZOs}i!s4o);PNX~^01ZC6B|W&OR$Px)|(RGN)m(&*T~CyBtORe zj;p4%U`!<}Ew!$$Q8b65DcI&i(ESSf@SK1nmAGe(#D)SLn+)$Nh#}69P+%Y_py8qx ziy1w>Wg``foKSEMFA8X@sFp$-OY58pW2!0-3FCAmS_ z&9L1J9q0E7;q+p9ukdT;&q84_y(n|1FAMOmmf`#NGW+*4``;G!3k6QoN%Z}UOqnPK zk+$?$-)JhOZqMo_xij#dfX4sE$8bZzHr^+#L+T;GTTvK~siw&jJaJ=9OIo@?ndrwE z1s~u;ete|h1q?9UCy$E#m7UZpU|@R@?oaa%zBd?aFyCL$Awh*{&k zWJQ2GMlG%{#NyxVq7InYSu6fTqR=%k`*b3t+{5j?pNH z!AU+Cb!sxHB_aZPt0$n`;Z;LX(^+KSOZra~Pd!O2Sw_hq4Mp&AAla{(q4Gphz@<4U z_8D(6dXi-n8%{v5X1dEd)%7^265Ha*onIGl@_*jVhmofp8Wtc$RWn-JU{q$>C#6xTOcAw*64A8e!a=$Mhd%PLN(|Dv@1=(~-Met);5;X`ioP$u zM&oxNDt*_#mCC{8smp^6cRzyL>$sJLt1&e4BczpwaC_t&>isz=ojEl4J8!QNnZpr+ zFPGf9X>`xpZf}xXC%N4u+qID*V zy1CGdr#+O%anDmBXMY|Yob)!MGmoe9@a1uWGyHixBa-Hd({nPM$EgS8xs|eV25poA z9?O6oOPqeBcnVbKkT@KA1SV!7Iy>&!#E5qXZ5=yc-YnYfyRjn+h4_qa(K{d#Tc)o^ zvtXS&kXp!sLIhV4I|f{#U7XG#@C`YEB=Ie7yKX1fyf_LyIK*F{L$HK$^F3yxe1vik ps+sI`@!W7IPZ4FOl-j$X#b%?sY;-4~>C;_Q$fL*BDN#i=;9tQo4GaJP literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..0f0e35285cf0f99167602d0da2b9c2628e854b5c GIT binary patch literal 285 zcmY+8JC4FY5Jao_4L0V#Cf>~;Kt2E=2>}vFAP9&CJVHie53&a&j8{2*d6a>c$u^kTG)lIE-h$A0yPh(uVu3s%Zw{8= zzao(drtG(zQZgQRD5B(`0739ZN^A4IG^q}M%5VtnXWwT;ph6J)M~7w>zx#$VS?|=w zGKz;PYA!s~8G2|!MW{`5xKL>pnPjdqE71DjeMJSnz;EH>F$9N|V>Nkex-OhQlw0l@ Ijo+sMcb$+!KL7v# literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..51792d1b56a0ffcc319570e4d1edf2c9bd4c196f GIT binary patch literal 1223 zcmZ8fX;TwH5Pd_Ag>?bt6f`0N5`q{3Z}7kff~Le`5h{gM)UZroakEQpCMy0RkMawC z07^>nn^pcOwPzVFXDU6L>DN8|Uia@m-+llX#AG#|RAa)xxPiwE@e+4^hL-d~evQB3 zS&#cGSzCs#zcSJ{NB&%}EKJ0ZQ|6H}W6C^K<^e;mc;|?9=?4Cs2;HLVaP|GNEXvc~ zaz1dlSGFaW!oYn4_e|7bqy{%}%ft|d4Gc2G{7Q*zx^IfXa{Z#~yHezXU|qd%jiKJ* zWjPy6`BH>M?og(zfvYCkafRWGa!!On>6p9UL<(u`+ozJJlp*&Rxby45g>HuP<-ij;E}hls;`6}oj(!!-n_Ufqw+4DG^x!hXDH-He zc{mn^e1qgl_bucYPXDi^g+62$lB0^<{fI7!+js;UKaf!&2N;^u$NDk7v?d%G^`k!u zsYut$I)U$0!ch1!%VkhLWeTvl{u?SEs`ga?+ZlDuzAU@__Lxc%M4YME){5+ zCOT=9;xzt14ebPyAcpj>6DDn-Ia7GGgX$gB&|&W26dl&4!V{bx)9^tJPwk>E&*uAo zp?Vkf`OW@9Y#XP);>_X}8a4@>pgB*VF$yQKb$Fc)uZn%qsap>dC~1qKZ_W8l|5O9oC^8@q^G* zVH+3hOl;^UQqPzQ)l?d&{8mkcx}X!Jb%Le_gl#AMr2LI}~GB%sF@NJ?GB7^ZEV$0pJ)185mekBacD`MU)h5DA+VmHsCO@9-S^j zwi$&J$wS%U!PM8t%@|S*5ej+2pt-dUgWim8e4-H-Aw$W%Iv?^oUJrOUsJG= z%tk+$`z%<<8rZV1jU5BK7WPn4P*t$ckZVgWMZZOl2p)(Bf6QS2_q^y0{k~jEweKg= zAJIV3lnTXo01?$M>2*mn_(+tL~5(PB6?sn(-@A>B|cH$QfM^(T8 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..a552645b8f9cd294d7c8527c307b9044a9443420 GIT binary patch literal 422 zcmZutO-sW-6r62Rw~1TZ8e2cB*P2VP*B*Nk3JR5au%N3hB_&^&t>Q28Yy}Yy{s4cG zC-o)m!GP>O7Us>Hoq3<%?;ik;u+Ly>m1+id%uwyeQL1I6M>3cxgBTX|L+M8htIJnqn(ixhpK~&P0pMs^VgLXD literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..255044981dcc955df516ed35d74e316f12036af2 GIT binary patch literal 580 zcmZutO-lk%6g|(G96zQ~ODkU=8ZOL@wRUKcDn{sv`GpMuypXid?Vcg)j- z==b|Qa$LrGEd<*r$v_K+-iEFzO*N#np`M|Kb- q6}rzbn0~wEr?~2Y+eNaPmP;$2z$~He8ll`t#ZBmG|6aT?XM6!52x+1K literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..babff25485b9176f982b4b5c08883050de31a22e GIT binary patch literal 423 zcmY*VOG^S#7(Le+y=qfAzRK)DJ7*N6wbG`QU?dnqv}x4AM#h=2>0zt>O=}GbS{UT6 z9~B*YAYQoleD|F1ari#J-lhN!uop)Z3FVQW7$kIwWDF^!XF~I2?NXV1hR$mdf&RW%C6=0%FSTtc)g0z(y#(eWAnH`YN4NA4*ff; z?b;GK4O_@dY-`xTu7K7Yc^%50^I&%c5{sgfcHiynfQEl<-A$f^hx?kufV&_Rv|UBmILw7CEv! E-!OktCjbBd literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..7a384debab6b18c2ce81e80fba12ad90aa984287 GIT binary patch literal 2254 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 IPdCN(|E;YNtN;K2 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..c75619a7b263b196986c8d992227f6e598be37b8 GIT binary patch literal 601 zcmZuuOG^S_6g{7h=HZyHEPI;vaB3s1lQu#S1O=9x0-0=z5gkLvuw9#=UE6jAE!^6J zo|HkYTJ#@kFaCq*jtV8U`R?O<_uPB#efzq90x$zvgn&LC0RjCO5W!x^Lo)xbR(%`ODcn{{9Y+Dumlyx zG+i_17_9PCl8|_QlRj{%)NA$SWPu?hFRtoZnzAcu(U_h3kKUG3G@YSWUi*uhqiFRIK3WyJWm)_5XT4~Og_E97e*yqlyHfGZPS;b&tV8TNrtwx zlXv`E3_^TljzOIAmTiKZ<>VQ9;t!|StSu|yTKQ~Z*57dQ*%VI`Ry;4*LQ>uFqjSV9 z$6Hp>g>DrZbO{L+moX+Gsp1N*^5L3_lQ0;DT8Cs@*Unn*?Tu_9XXpL9+e`Mk?|69? zF)nn13td++jvFc_5LM9$UBxLx8I<`|$F-+DZ+(+NYe~*LTCy z@KG-PV_b6!of;waIlhft6y!;eSap>n*v#^In@(C>0z_m!W>ZprMQNd+4C8RUF@=)9Syu z40R%xuwW1b(*+7NWtUfTr$uxH#88Xq|DQ?DMo=6Gl=zAoh@5tx0kTQ1AM{z_*l@J!Fe8JF07mY>I(SD^~qF$>1Xb9pj+-}iS literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..cefe3d9c4ea14d710495b79f22dea664800c7d23 GIT binary patch literal 1298 zcmZ`(-ERz06#w1XyEC(EwyWDIgNTm^+ZOfBXxU|}l+tROijPF5Yq7d^#f;Af`VTa` z`Di4(@FEi3q!JH!_T*piA4oj#LjCT{QiPk_bI$$!&N*|=y(jbj`|CFVHen=*EOsZ5 zL{2Z{332I#+-$fK$YW0uUD&Hc!9b6mkH1Y$&__k=Q=(Ui{fa-J=RUu%Z+_hWLf(D{ z$O$l&5^BlXlRKs?h$ym8=KIng^n&v^B=y-(p@z&&KRGt6pcttDfr|4lb9g=em?zYB=zUl0 zWZ;m2et~qc;`x4`zh}%3E_+3O!t5?q!u%GtV5@~rtT%Aj!VwHu7{pN}h6EC4RYgI` z4=k+1dW(%yY(%@_hb?SIyTJUpN(RO*lvMhbf0RcwbS&382U%~xs!QI*Kf;G^_(6$K ztagP-TB8>K^zRZdE~)SeuR&&e!n?_yh*WRes9eDZ&+;J*IA}vV1Uh)quok9jfwrl- z4K=$7H5;OKIB;|RE%al1#3gg^k|?+F)J)AeLA?DH#7i156WER&5v{c%jwX)5dC@-& zEnTcbvk~jdX2)G=Bkt;sbadY}r(rne43thg=Dmk7`2>aje;@@8-x?-X)KBiM@9~;Q{FvZ$D+x< zipwmfqm3n}+@zbdvDCF3swMZP8ZCsU`;Qu@TMy9OC`@yt-^guU3u|n3E!Ay!QbsbO zRTqtFM8{K@nPt41c~N-^NZ43Tr0Fgp^#TGeS)TWt|OgU!`lxh4EO=%_2}gQ literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..16ba827ebe38754243b9355b6649a75476e4a621 GIT binary patch literal 432 zcmZutJx{_=6g{^sJg5ah1iz~2R&Z!=MO>UrnrK2oVw|crq=bG%s>a>L(LZ3^oOOUi z6MlgI$5p&fObCf@I4Aeq&+|UN-^TzN*w&FjUSLs&facn8+Pq>a^;8JX02l&3!RXkrJN}2N_ACW&A>V~ z1WW^)*pg5sWCn5HPeSjOP?&WcpZC0rgiyBr+cH<$z8fT7z*k1svSC{9NA?Myl<;Am z8#D=}-`VprLBz7C&wl0>O}Dchwrd^LI@p2W50g&;NsEjN92J>~IaMElUS%E+Fp&F8 xx1d2~twBzG+%oT#$rEyBI!--LzFweyKsl|edn2gM8?@aaQcULK5b5bC`~asAUAX`N literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..b4e69beb88c498f93eccf18b5e034e3c6b685724 GIT binary patch literal 301 zcmY+9u}%U(5Qe`Ma5+2?!Nb}PtFxy<5-W+AOK7ZC*qleWJ##K5K9&>~7CwLvWgLzM zs>#lL^Uc4%f8RgA4VO*&nn-h@sOKhgivHl~ereuKyfQA06JKU79bV65J}wqE;EYa- z7AJ}z$x>(hy0n^hNXV%|zY6bH;)w=(nuq75o%>4DtK?Y`Pq(D_t;sdLkaN0k^!5QU$C)`X@7LV>QGN~d&Z0@g@H0Bb5Pc)ya(D_J9@chPn6smxB1)&x#KgvGJT`FTZr2>6k)Nf7g@r%BA7vbl z#DLq(&YSl!neU&^F97E_ZlY%p8ypep1!s=X>pxu0`Gu35-88wAGIP`6>AlV`{KN)m zqtikQdxZAbrMX||{MyRQPYe!1gxDvTCsj$VZgGFZ?B;Q9Q>o0lRYc~K+Z9t&EEfjd z5Qm5eHUBKCT}!t~Lqca`z2!n|u?4L|2+_!KIva_U<5wy9l7$Ju-ybK~K~0YUD2zH9 cT6eXJ6>n$_-eDs8K=WhKa9(o2{gIz*3ZolnDwou~P9cz*BjtKu=Kb4bg_ zry(>aR>#lRy1dhoNfZYG0Zl=bPGgPp>J7H6ZlYNd+qG3^9gr5`?TYC#5}heJ0Y|ij zO7UWyb|c*-4TaWLx#hwp+0JPbB6LT&j-N)>&i_k}BO?ThRpm^VCnhqSvPZ@J0fahL cYHsek?abY4Zu;-2wtV36_Q%2Da_P~4U)yang$I*Hs;U~TAfjU&L8YY?56%u($G!2_iy_DluT?96;w+o z;gV1u3J324UcB-+vIbWkJd_D$p&E(QtJyiRdLGYhAP1}ZAs|frmpxN6EXM|Q57(#> zGRaC*dz7A&x`gUUx%E7{`CZ;VkT;2!gG4SgqR9NNhElU~H_0b%Kj~1;*>Kw6L)70emRq2PB3q zCf_mtYv$+o>l-*>-=nYTY4#Mg)Wn&hKe)S?nP(FwCYy$1H;=RF@aR_V&+~iRV25^- zCcdIIb|!kfG{udXBv!K>5YSTSLO3oFt=?cm>S{8xky}Z1R|at&UN4d2VNI&(2JF&N zRP!e%+%>ff8Yr#UcbVq&SN&haVA}9o*&OH25&mUrIOdkLM literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..46eec597539017e480fad63b1c88f55287b74174 GIT binary patch literal 328 zcmY+AyG{Z@6o$VMaDZJDLBLWI3#>NQG!k2lCJ-8{VV&UO-U1_ukEMl$g%99E8P9?y zP@UU<%lZEK`~oiNRq1Lvnqx&dF;S}M_8)HMW@Uodq_be;7EwAITukJCojuwbhcxTd z@f3}bGvV{C$;W0ITg`!wPeY+|;ka0|I{huFyXoA9ZY|Yb8$?-fUm(T9nncs~IijT~ zWiL*+8|p4-plEJ|dtEx4?5s8>irz3a;nUE$#ec}jxX7>YmPP8sr26mZminM7{o5Z3L8z+}Jop7NJxnP8 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..6c8e9ec6f0bcbd7149460d3fc3d1488ad65a1a06 GIT binary patch literal 316 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 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..71b6a4ff3d59e06cad9e64de12592663f5f991d6 GIT binary patch literal 2042 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 Xw7-X?8cu4x(^xTum7lPxzE$`MX+#bd literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..2999cdd2d37ff4fa57ef5ee9c69dfc60df9e6f2f GIT binary patch literal 437 zcmY*V%TB^T6g@+WwY3WJsG?wE;sU|~bt%yeXktR535gq51B^{cnKA8PbnlnAajgp$ zF8Ba{#eYyQB~eHwcV^Dq^O*bj{V@e_ggpzDWR)4r5f3DTSH0~F`2%l+T>6c!jsod7 zYd7@XQUl>&3)?nw$U9ia27`MkrHEP~k7E%t7#B)06uN30^+j9s#{T)E7BUW$w6N(S zgDit}Pog>`vto6@>#8>teVusalLUckT+ccwgy16!o{IvCWTM8JxO3`qQ 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 0000000000000000000000000000000000000000..c65c9decc813d0c79c22052e7542f289060b7ddc GIT binary patch literal 183 zcmXYqOA5k35JX?+Ym8qq2k-)pAh>Yn1w6zAC!nYUCc5@qE@Xl=K}^EVvoH2LWI)F7PhIQ>8J!%( literal 0 HcmV?d00001 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